{"_id":"@tiny-fish/cli","_rev":"309-e20c1a0409bf7286501bb06fbb82ea62","name":"@tiny-fish/cli","dist-tags":{"next":"0.49.1-next.393","latest":"0.49.0"},"versions":{"0.1.0":{"name":"@tiny-fish/cli","version":"0.1.0","_id":"@tiny-fish/cli@0.1.0","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"6ad86d9758893ee7497ea6d37a34dab04ff7cce3","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.1.0.tgz","fileCount":19,"integrity":"sha512-l2YPrhfpDGueDZXYRVFrcedeUobbeNL3Ms9DUI2BIq98xLuMZiFhNy1yo9qjWRXwtjyACzV5x+uIP0owRBYx+w==","signatures":[{"sig":"MEYCIQCv4eDUNmoTVx+/Y1Z4/3YRkABXo4kNmm/QgLfvWwjz1QIhAP3Ai81eHMA9sRFmqjlSlJJcu0NkLU0OmNqODEv5JXnd","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":32879},"type":"module","engines":{"node":">=24.0.0"},"scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","prepack":"npm run build","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","test:integration":"vitest --run --config vitest.integration.config.ts"},"_npmUser":{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},"_npmVersion":"11.9.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"25.6.1","dependencies":{"globals":"^17.4.0","commander":"^12.0.0"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.0.0","vitest":"^3.0.0","prettier":"^3.0.0","typescript":"^5.0.0","@types/node":"^20.0.0","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.1.0_1773690751601_0.9454602839672328","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@tiny-fish/cli","version":"0.1.1","_id":"@tiny-fish/cli@0.1.1","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"5e951b47883c64f2448b1f1a7ce3804ea65e3c50","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.1.1.tgz","fileCount":19,"integrity":"sha512-XmtxfZ+iFFWx3W8UfnAbr/Y+VEyKF2QMQ4wJ+WVLdswP6mkJwGyVbrEMmh3LHpWhvWnyCiICWHYSgUW53kXlwg==","signatures":[{"sig":"MEYCIQDpAFqM2aVORl9Byk7Kw3nXoA11FXM9qhyq2N9ci8mTygIhAPuUbjutgn2ETI3JZE5PL/LygkPh4Ohie3Pn62hMjgbz","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":34769},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"dc827922f8acadae5714c3b655e5f0fd34abb7cf","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"vitest --run --config vitest.integration.config.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"_npmVersion":"11.9.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.14.0","dependencies":{"globals":"^17.4.0","commander":"^12.0.0"},"publishConfig":{"access":"restricted","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.0.0","vitest":"^3.0.0","prettier":"^3.0.0","typescript":"^5.0.0","@types/node":"^20.0.0","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.1.1_1773727778115_0.008902962505778378","host":"s3://npm-registry-packages-npm-production"}},"0.1.2":{"name":"@tiny-fish/cli","version":"0.1.2","_id":"@tiny-fish/cli@0.1.2","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"f9495783c9b381cd2d5f081ab9c6a08eb8c572ed","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.1.2.tgz","fileCount":19,"integrity":"sha512-vk65mD/UKEDmp780qo7gvIHD+e18K7ptGr+l/59/T4cVh2I/HNmbGgPuOQ0ZvkKorblovm3JLoamTQi/a2L9eA==","signatures":[{"sig":"MEUCIQC9Bx5LbOkNPEO0RMncw+bRs3mm67czNLi+2hFmXYLt/AIgZ2ZSa5SW1l0UBXI2+jgoosktLExMRGif98dwy3EJHxo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":37110},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"6d8c0e93caedfc4faaf80d11c641598fb05098d8","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"vitest --run --config vitest.integration.config.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"_npmVersion":"11.9.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.14.0","dependencies":{"globals":"^17.4.0","commander":"^12.0.0"},"publishConfig":{"access":"restricted","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.0.0","vitest":"^3.0.0","prettier":"^3.0.0","typescript":"^5.0.0","@types/node":"^20.0.0","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.1.2_1773788562453_0.7072055421088299","host":"s3://npm-registry-packages-npm-production"}},"0.1.2-next.15":{"name":"@tiny-fish/cli","version":"0.1.2-next.15","_id":"@tiny-fish/cli@0.1.2-next.15","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"172ac94496fa00649f420fcca779f65b349a3300","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.1.2-next.15.tgz","fileCount":19,"integrity":"sha512-l8fg2jB/0ksrT9lQS46JYDFOacAmqdCBHqTCiQR/BNJoXTyVnnamBo41Ejof52zkSi8KUcIit2byHKQx2Y2ZDQ==","signatures":[{"sig":"MEYCIQC43Q1uNhOGPAMxFeQ0xY4GpfuBUA7tYxMEaOxeRRakrQIhAKQNIvOYtwGUfr51NFzE+o6bZVxu3kbM/CExS/1ovs3P","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":37087},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"ce8f9764739b4413407d480dcf9237e8abf0c992","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"vitest --run --config vitest.integration.config.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"_npmVersion":"11.9.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.14.0","dependencies":{"globals":"^17.4.0","commander":"^12.0.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.0.0","vitest":"^3.0.0","prettier":"^3.0.0","typescript":"^5.0.0","@types/node":"^20.0.0","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.1.2-next.15_1773866171139_0.5106113218557014","host":"s3://npm-registry-packages-npm-production"}},"0.1.2-next.16":{"name":"@tiny-fish/cli","version":"0.1.2-next.16","_id":"@tiny-fish/cli@0.1.2-next.16","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"4463dde32093f6e9dacdcd9d2332b1e87fec336d","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.1.2-next.16.tgz","fileCount":20,"integrity":"sha512-TkKbr6VkCCdrM7/a3walIen03Ne9xw/Fuo3qdEetqNgQ8fIM0YCjzRRuiUgual4Gpfsx5rLIJFZ3re8i6z5NdA==","signatures":[{"sig":"MEUCIHJPwKzAqUtebVCIGXl7pnRymehBcl7mfUyGAXR9KmmtAiEAu2IkrKDaSj2VKI3rguMqCxb4UTtWoTzn3OKbwC9IL/A=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":39021},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"dd5e9b7269dd31ff1a830d84df5567062e660f92","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"vitest --run --config vitest.integration.config.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"_npmVersion":"11.9.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.14.0","dependencies":{"globals":"^17.4.0","commander":"^12.0.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^9.0.0","vitest":"^3.0.0","prettier":"^3.0.0","typescript":"^5.0.0","@types/node":"^20.0.0","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.1.2-next.16_1773875354552_0.29001112671429796","host":"s3://npm-registry-packages-npm-production"}},"0.1.3-next.17":{"name":"@tiny-fish/cli","version":"0.1.3-next.17","_id":"@tiny-fish/cli@0.1.3-next.17","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"a9ff8e7162ff7a071a5fee877dce69ef76414db2","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.1.3-next.17.tgz","fileCount":20,"integrity":"sha512-MfFdM+l24CK0Qcp+gjWX0C6RXcSKlzBImk/60qvd06JpUgDPgLyIYEdxKwXEsAV0FjrnS+3o29jNQCtI4tE7KA==","signatures":[{"sig":"MEUCIQCkTjZJ5AMR6yyI+nTxBEM62UEasQQEemuVk+7VbFvc9gIgbtaoSZeUf/2HWztPZ4+yizXVCThi0hu+8egyJyW+SOg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":39482},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"16c5922b9ada0d14bbf213822b7ddf0c328cb31d","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"vitest --run --config vitest.integration.config.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"_npmVersion":"11.9.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.14.0","dependencies":{"globals":"^17.4.0","commander":"^12.0.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^9.0.0","vitest":"^3.0.0","prettier":"^3.0.0","typescript":"^5.0.0","@types/node":"^20.0.0","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.1.3-next.17_1773890883521_0.4332316761448938","host":"s3://npm-registry-packages-npm-production"}},"0.1.3-next.18":{"name":"@tiny-fish/cli","version":"0.1.3-next.18","_id":"@tiny-fish/cli@0.1.3-next.18","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"549af424539a9040fce207b406243ae2e4b9156d","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.1.3-next.18.tgz","fileCount":20,"integrity":"sha512-prQtuj+InQfJD5dj5yKwJeb6eiuPRGI9MKqPxAV12WpjYrvrAV+n2yDq5yRL2GK0fEZCWTFYKC4+62Vo00cqMA==","signatures":[{"sig":"MEUCIQDDWQuFyEytKbrMPNj/qCYLr/nN1UvwQe3MOxUWd6WYBQIgFEzkp8A3038NH70VoVhzj0EdTfEjtcbQXRf0J85RI8E=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":39482},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"11489f591f382ed9a074899d26995a9275f14b47","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"vitest --run --config vitest.integration.config.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"_npmVersion":"11.9.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.14.0","dependencies":{"globals":"^17.4.0","commander":"^12.0.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^9.0.0","vitest":"^3.0.0","prettier":"^3.0.0","typescript":"^5.0.0","@types/node":"^20.0.0","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.1.3-next.18_1773945502700_0.10507814007775074","host":"s3://npm-registry-packages-npm-production"}},"0.1.3-next.20":{"name":"@tiny-fish/cli","version":"0.1.3-next.20","_id":"@tiny-fish/cli@0.1.3-next.20","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"f3ee85b6b86c7f753b42ad5587f84500c92df4b0","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.1.3-next.20.tgz","fileCount":20,"integrity":"sha512-fByi4KEQCF7p+J6pWe9kA+tBCHu/ztjNcwIdqmge/M8AeTVLqBIY3RF71R+yoZaD19+CHqj+W5zEYvXS+lPilg==","signatures":[{"sig":"MEUCIQDMTJ7bMNU5YEIVgFtSOc6sXjg+Kt7csi8PE1/40RqVHAIgCQZFUBQuqDH9fo0hfDBkZxgkD4qcHtsBB58QzWs8HRA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":39482},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"577a9f60d19317c1339af48d4dc5ff94a07ecf2b","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"vitest --run --config vitest.integration.config.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"_npmVersion":"11.9.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.14.0","dependencies":{"globals":"^17.4.0","commander":"^12.0.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^9.0.0","vitest":"^3.0.0","prettier":"^3.0.0","typescript":"^5.0.0","@types/node":"^20.0.0","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.1.3-next.20_1773952994153_0.23229782014446276","host":"s3://npm-registry-packages-npm-production"}},"0.1.3-next.22":{"name":"@tiny-fish/cli","version":"0.1.3-next.22","_id":"@tiny-fish/cli@0.1.3-next.22","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"08d72dac2713bde746d51ca381df3ace4c57df1f","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.1.3-next.22.tgz","fileCount":20,"integrity":"sha512-jVwgsVlonXAUWNg9aX03eByqh/v1iQhk12LCghS8wX2BKVWJj0BOMN8WhrDqMKLABeS0+S7RRfKc0F6+/ORPgw==","signatures":[{"sig":"MEQCICKjoWvvzz0nC4JR0WbQks1CJglb8kQRYOxgaVRleHCqAiBGxuL+kGDgfxZtHo+fYTgX8NCbczIM7XcHIfQ6k/yoPw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":39482},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"ea8c5f941981659866a120480cce17d921fa5e43","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"vitest --run --config vitest.integration.config.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"_npmVersion":"11.9.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.14.0","dependencies":{"globals":"^17.4.0","commander":"^12.0.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^9.0.0","vitest":"^3.0.0","prettier":"^3.0.0","typescript":"^5.0.0","@types/node":"^20.0.0","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.1.3-next.22_1773953504080_0.5012962899167723","host":"s3://npm-registry-packages-npm-production"}},"0.1.3":{"name":"@tiny-fish/cli","version":"0.1.3","_id":"@tiny-fish/cli@0.1.3","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"63cf8a1b8ca7895078ad9e1b26e7b0a339da8f11","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.1.3.tgz","fileCount":20,"integrity":"sha512-lLfRT4RJXU67Ojf1NF5Gs9mPlwK//9ulYfQpb41Dvo8Lztsg/kbgiA3wJO0qThcSafhUkjQkWdVhSvKtfU4g+g==","signatures":[{"sig":"MEUCIGZpLDy49V7ogD4JhjeW3qeYencoh6puLTri4qtOWdk3AiEAk76TOYuw7e0JX4GOtV/KfHKv/OZdDIqSSsd8lmbQqMQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":39477},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"ea8c5f941981659866a120480cce17d921fa5e43","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"vitest --run --config vitest.integration.config.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"_npmVersion":"11.9.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.14.0","dependencies":{"globals":"^17.4.0","commander":"^12.0.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.0.0","vitest":"^3.0.0","prettier":"^3.0.0","typescript":"^5.0.0","@types/node":"^20.0.0","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.1.3_1773953822843_0.3364971392299456","host":"s3://npm-registry-packages-npm-production"}},"0.1.3-next.26":{"name":"@tiny-fish/cli","version":"0.1.3-next.26","_id":"@tiny-fish/cli@0.1.3-next.26","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"d13ececd65f8100f388d4dcad6813846f1b96193","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.1.3-next.26.tgz","fileCount":20,"integrity":"sha512-BawrUNGOJT9SmBSTJTmyPl0fskUFC/xzt/dg8YQ4hCcOgUT7KcPWG1C0mMD75HBhK3NKHweLb0RZxurUAYLyLA==","signatures":[{"sig":"MEYCIQDXuc9jU2U6q1CJTxcfFhRrgExD/MWBcQ6OG38hHGYnoQIhAMDHcDB4sx/Uex++PCclaOCPckFZ4s5JoFD3t8FWxB6H","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":39482},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"6ad792a95781422e24f936b4be7fc3d04ade34c9","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"vitest --run --config vitest.integration.config.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"_npmVersion":"11.9.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.14.0","dependencies":{"globals":"^17.4.0","commander":"^12.0.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^9.0.0","vitest":"^3.0.0","prettier":"^3.0.0","typescript":"^5.0.0","@types/node":"^20.0.0","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.1.3-next.26_1774386822528_0.752162718489708","host":"s3://npm-registry-packages-npm-production"}},"0.1.3-next.27":{"name":"@tiny-fish/cli","version":"0.1.3-next.27","_id":"@tiny-fish/cli@0.1.3-next.27","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"c3f7a9a61438eb169f0993ea9e90d03cad7c70b2","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.1.3-next.27.tgz","fileCount":24,"integrity":"sha512-EYIW4zFyJJjRjetxnUYIRp+XqA2ebCZQVJn1YQVqCYzyePJ2KuH5kiJDWeR8VKxtaiIQS/uMtB5MlLnv5fEPeQ==","signatures":[{"sig":"MEUCIQDnEI+B2LetnfMh3ygNURSrGXjITJvRUXI2aBPLqctOYAIgZatiW8Wb4N9CogM7d7exFrFSd5JSMWjray6h/PsIUlo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":53337},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"bf5464c51559add42ca1bab56e6b7aeaa2ad13f8","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"vitest --run --config vitest.integration.config.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"_npmVersion":"11.9.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.14.0","dependencies":{"globals":"^17.4.0","commander":"^12.0.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^9.0.0","vitest":"^3.0.0","prettier":"^3.0.0","typescript":"^5.0.0","@types/node":"^20.0.0","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.1.3-next.27_1774398555011_0.9836279143327467","host":"s3://npm-registry-packages-npm-production"}},"0.1.3-next.29":{"name":"@tiny-fish/cli","version":"0.1.3-next.29","_id":"@tiny-fish/cli@0.1.3-next.29","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"1717214501856a81190fce4e6a72f2177522b917","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.1.3-next.29.tgz","fileCount":24,"integrity":"sha512-wDybl2CL7NrVwvGClz513VzYgJJ+vcc5lFZ28d9z11XauYM+J1jtOvapLrVEJdk7u6Q836nUUOJIN0u/DxeLRA==","signatures":[{"sig":"MEQCIAZfWzOuLCvBsXRIwZT4DGX40U9cPyL4s/8iG5cbo2lWAiA/hqUywGrZSdolVOwZSWVgxjaJyIMkAmMukD4Q0VHnMw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":53337},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"126308205987e05518bcd5fd7dcf8f56076e0d7f","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"vitest --run --config vitest.integration.config.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"_npmVersion":"11.9.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.14.0","dependencies":{"globals":"^17.4.0","commander":"^12.0.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^9.0.0","vitest":"^3.0.0","prettier":"^3.0.0","typescript":"^5.0.0","@types/node":"^20.0.0","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.1.3-next.29_1774474724250_0.10765272707164386","host":"s3://npm-registry-packages-npm-production"}},"0.1.3-next.30":{"name":"@tiny-fish/cli","version":"0.1.3-next.30","_id":"@tiny-fish/cli@0.1.3-next.30","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"7eea71c6791ce8941a3a4fa1ec61a721b8fc6af0","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.1.3-next.30.tgz","fileCount":24,"integrity":"sha512-fxlfLwOjkIvgHR1QLEv4heEqspVqbNWZQUxwgCRaaMTsgG2WxQzepyPyshLNCQrMyO1Mtkq3/qCjOcGEuPwT+w==","signatures":[{"sig":"MEQCIEyxzLuVRalJKKsQENG8dFwjUsBfyUHJskuU2Mnva884AiApHasyrhmdeZu0W+xxU2BvQeDDtckB4KqsYjECLokQkg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":53337},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"13a0d15599683bafb6bd3532b9547158969c363b","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"vitest --run --config vitest.integration.config.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"_npmVersion":"11.9.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.14.0","dependencies":{"globals":"^17.4.0","commander":"^12.0.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^9.0.0","vitest":"^3.0.0","prettier":"^3.0.0","typescript":"^5.0.0","@types/node":"^20.0.0","@typescript-eslint/parser":"^8.0.0","@typescript-eslint/eslint-plugin":"^8.0.0"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.1.3-next.30_1774476303652_0.39478047413453","host":"s3://npm-registry-packages-npm-production"}},"0.1.3-next.31":{"name":"@tiny-fish/cli","version":"0.1.3-next.31","_id":"@tiny-fish/cli@0.1.3-next.31","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"46c175ad1d3ce2f62440b046ad3cd76857aab4fa","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.1.3-next.31.tgz","fileCount":24,"integrity":"sha512-BvHrfjOqFVYx1X+LugxrlreivXMW6iLtmKACrlHI9Gg4WkLAsPtyVuEqUu2kBJxiKtjNNdICzcfU+LxYNIeqDQ==","signatures":[{"sig":"MEYCIQDjFMHAiJDxfhVFXCvuGz7/pqiyL9xL05+++BgAcSvnywIhALErLOGVM7n31eC8TtHkuo+BxvaiVq1f/KCQWvKz5ZHf","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":53502},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"6ba4d5cde1b356175a3fe0528e920d1c0287f5de","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"vitest --run --config vitest.integration.config.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"brace-expansion":"5.0.5"},"_npmVersion":"11.9.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.14.0","dependencies":{"globals":"^17.4.0","commander":"^12.0.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^3.0.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.1.3-next.31_1774553541998_0.8775792446815756","host":"s3://npm-registry-packages-npm-production"}},"0.1.3-next.32":{"name":"@tiny-fish/cli","version":"0.1.3-next.32","_id":"@tiny-fish/cli@0.1.3-next.32","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"466b49ac5dd748ebdd3fb90bf42560b7437cddc4","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.1.3-next.32.tgz","fileCount":24,"integrity":"sha512-+82N9merFaAGD+fYPSp1qHQIz1L5TUA0KpdvC3kuLxaQO51geeGEVJO84hQt3YnyNKVf784AruXBHYMy2n9HsA==","signatures":[{"sig":"MEUCIQDOOJqwU1mRKw3NwPuzsBwomQDpk4MEwwR/w7koNLwKngIgbTGYsdc9tgu79nrpjNsfXBxmRZwUJWznIdG3K2AAmLU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":48802},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"ae1fa6e4c3473ba2200efb672d4c02ac33484565","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"vitest --run --config vitest.integration.config.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"brace-expansion":"5.0.5"},"_npmVersion":"11.9.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.14.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","@tiny-fish/sdk":"^0.0.7"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^3.0.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.1.3-next.32_1775090311201_0.43548368360297185","host":"s3://npm-registry-packages-npm-production"}},"0.1.3-next.34":{"name":"@tiny-fish/cli","version":"0.1.3-next.34","_id":"@tiny-fish/cli@0.1.3-next.34","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"ffd56c76915a391b3b3c0376ce81f9818d300b7c","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.1.3-next.34.tgz","fileCount":24,"integrity":"sha512-7FyeBFK3Df5ry+i2JRPIUHLKDVBN513BTeC4MJTv+Efp3cMqfIHaczYOCbcU4Iw5t8dysXRY1lkvymSdkcRzYQ==","signatures":[{"sig":"MEUCIHBXlbMMAj2mxiU/9Ucu2hHrS396Bjj30c1kq3qEAW1QAiEA9Qx03yfV8dUTtNaw/9hb57+lzkjF8bePuAhRAeK8cdA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":48820},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"a61005623775a94603b8447ab071c9584be073a7","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"vitest --run --config vitest.integration.config.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"brace-expansion":"5.0.5"},"_npmVersion":"11.11.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.14.1","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","@tiny-fish/sdk":"^0.0.7"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^3.0.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.1.3-next.34_1775154827883_0.27665701758082895","host":"s3://npm-registry-packages-npm-production"}},"0.1.4-next.35":{"name":"@tiny-fish/cli","version":"0.1.4-next.35","_id":"@tiny-fish/cli@0.1.4-next.35","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"498230426a0ae079417a06ebf62660d1ac2736be","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.1.4-next.35.tgz","fileCount":24,"integrity":"sha512-ARtht0oCdRaHouUwep1Oy2hlIIfEPlw8F0mEyUSr4EsCAtxjZ8jhd1mmF3ykHbL+UgT9w/gJ4q3VUvwaF4CGdQ==","signatures":[{"sig":"MEYCIQCj+cF7HYa07ubREh+i7P1I5fDxa1S7+0wOP9BUH7gXygIhAIDd86lBb6V3TMMbWiBd8aWZJOPZ8j4oxnoCjVQy77bc","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":48820},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"74a549e5421725491f3e33caaca6138a77379074","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"vitest --run --config vitest.integration.config.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"brace-expansion":"5.0.5"},"_npmVersion":"11.11.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.14.1","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","@tiny-fish/sdk":"^0.0.7"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^3.0.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.1.4-next.35_1775172180185_0.17185610407769802","host":"s3://npm-registry-packages-npm-production"}},"0.1.4-next.37":{"name":"@tiny-fish/cli","version":"0.1.4-next.37","_id":"@tiny-fish/cli@0.1.4-next.37","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"6c9eb7210ce4cf5511cc3dcf0a37c9e0b60d630b","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.1.4-next.37.tgz","fileCount":24,"integrity":"sha512-1QaPFsjUC8WfZ8NEBJqYuvyAGwsoMU/PLWs++EzukKT8LApS6d8DPcRBsnBinwBq7BW76jHsheZcg4JnOhocYg==","signatures":[{"sig":"MEYCIQDFRuJfzR3H7jJq3HZyfG2iIbiabXyfDH+AxxWbtS3ZTAIhAPlARZ9dV/Txg4tyoyrhYMes9hyxSP/XS1dH3KIDNX1d","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":48820},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"180ef58a733177ebee721a5751daa603ea09fba9","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"vitest --run --config vitest.integration.config.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"brace-expansion":"5.0.5"},"_npmVersion":"11.9.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.14.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","@tiny-fish/sdk":"^0.0.7"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^3.0.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.1.4-next.37_1775176980202_0.718502662483268","host":"s3://npm-registry-packages-npm-production"}},"0.1.4":{"name":"@tiny-fish/cli","version":"0.1.4","_id":"@tiny-fish/cli@0.1.4","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"011e826c18e0ca8f1cacabe6382717e8ee8e0460","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.1.4.tgz","fileCount":24,"integrity":"sha512-4gHmlTsxvjuwvbBSnNVpw9wGJ4V4332o0p4JdQLnJc11N8jvT0+/crnyvaMbt4M9Wyr/7eLBbPmcO4GSPM8l+Q==","signatures":[{"sig":"MEQCIEOAMXJbNRB2aSsKURfo7q9UKingpvEFSlD494zi2JYQAiBckJawPKNI9Q8NHV9a8l8fqkBgH2PZ3wY6+DdUHZ5C3w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":48812},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"180ef58a733177ebee721a5751daa603ea09fba9","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"vitest --run --config vitest.integration.config.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"brace-expansion":"5.0.5"},"_npmVersion":"11.11.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.14.1","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","@tiny-fish/sdk":"^0.0.7"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.1.0","vitest":"^3.0.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.1.4_1775177208413_0.24181470861112486","host":"s3://npm-registry-packages-npm-production"}},"0.1.4-next.39":{"name":"@tiny-fish/cli","version":"0.1.4-next.39","_id":"@tiny-fish/cli@0.1.4-next.39","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"bc39f7a4577386a7bee67d1361b584379d41ea21","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.1.4-next.39.tgz","fileCount":26,"integrity":"sha512-E9Ek80+PbT/Ntcze3JIMp3PlwLKkSgLG/zFIu7wRIGmWQWzMStCJ2DPmIJ1feHxVUzqxiUEIgM4Yj9lDS09+rg==","signatures":[{"sig":"MEUCIATMQ44u5qzNfpX/UGIRHUPxkvnINF67qhho7vD+zj4SAiEAy3EuMXc8lmd0zQPYh1lvh1XfOvdnPhCltIDiYjgHkQw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":51414},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"db91875f41e5cc9633bba85fd1680072ee8516cf","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"vitest --run --config vitest.integration.config.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"brace-expansion":"5.0.5"},"_npmVersion":"11.11.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.14.1","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","@tiny-fish/sdk":"^0.0.7"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^3.0.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.1.4-next.39_1775249593720_0.9030573006920795","host":"s3://npm-registry-packages-npm-production"}},"0.1.4-next.40":{"name":"@tiny-fish/cli","version":"0.1.4-next.40","_id":"@tiny-fish/cli@0.1.4-next.40","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"b3bca20f6fd27deec6a653512919d8a6e4695f68","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.1.4-next.40.tgz","fileCount":28,"integrity":"sha512-36ftavJGI+k9woD0pq79rmolYyk10f0FFdDNXfHtlhQvvRwnkBPfWy0mjK7R0EeZ9ZZ78X047c0/11V3JBS7HA==","signatures":[{"sig":"MEUCIAJdW01zpbuewFrLIH7/frt3YULEgFYhpMtHAQswLJWFAiEA9kqgqjpx9I0IcIZ0NDDXdSj1YaRqw1O4Mitud5BE2NQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":57001},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"23c6788109efd05cc9e86f864ce7b6bfd2fce44d","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"brace-expansion":"5.0.5"},"_npmVersion":"11.11.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.14.1","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","@tiny-fish/sdk":"^0.0.7"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^3.0.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.1.4-next.40_1775253213802_0.30196249988369117","host":"s3://npm-registry-packages-npm-production"}},"0.1.4-next.41":{"name":"@tiny-fish/cli","version":"0.1.4-next.41","_id":"@tiny-fish/cli@0.1.4-next.41","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"05f0fc33ae4bdf99bd80c281577b071a1e4f4400","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.1.4-next.41.tgz","fileCount":28,"integrity":"sha512-MvXilgWOsYoIhyjSnN09u/X55ldeCc8e84tatPTs6mAaCXj7mmlS9Mql53iunr+ZWbAsQPDcBXW73ItD2/FElw==","signatures":[{"sig":"MEUCIQDiKJH/s3ssQm7Ug4G3kKXHRKUE0WsyGU2Ys2HQLDOygwIgVmQy86Da2suohCfJBvVfPYLE+NMydgD2yOKrLSxpg/o=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":57022},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"f9df63eb614d836220afb685ea3ebb01f54ae449","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"vite":"7.3.2","brace-expansion":"5.0.5"},"_npmVersion":"11.11.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.14.1","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","@tiny-fish/sdk":"^0.0.7"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^3.0.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.1.4-next.41_1775502831459_0.16515450759852413","host":"s3://npm-registry-packages-npm-production"}},"0.1.4-next.43":{"name":"@tiny-fish/cli","version":"0.1.4-next.43","_id":"@tiny-fish/cli@0.1.4-next.43","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"e17ebbaedfe9461293913b3b06114bb299488c14","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.1.4-next.43.tgz","fileCount":30,"integrity":"sha512-WKMqJhu2Y820EuzZw6fTuIUy9W3bPO4fg1Gn5hwGIVyK7zhudCagBks1u1Amd6OyKk8Dwh8S0ebKRc6XKQc0YQ==","signatures":[{"sig":"MEQCIDl0ABFKP/CKRHiA1tPJIzdIkXF+28J8jwNhSe7/0OQZAiBk2AWye2eBW9PPwt1P7oIjYYshvvnMlGRMEulx5hD7Cg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":59645},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"332f6fcc759aea8735250ddef70d434fca24b0f5","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"vite":"7.3.2","brace-expansion":"5.0.5"},"_npmVersion":"11.11.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.14.1","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","@tiny-fish/sdk":"^0.0.7"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^3.0.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.1.4-next.43_1775506521612_0.5914453074050856","host":"s3://npm-registry-packages-npm-production"}},"0.1.5-next.44":{"name":"@tiny-fish/cli","version":"0.1.5-next.44","_id":"@tiny-fish/cli@0.1.5-next.44","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"1c8e8b88bc6d27ae8e683d46465d7f0f4d3614f3","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.1.5-next.44.tgz","fileCount":30,"integrity":"sha512-83uBRGecSR/LLKeILJced4i4ox7PxQvf+kn8k6f1CUH3uhkg2whlQoBpWzQZeS1fBTJ5bqqFkb/qY+/rj/OWbQ==","signatures":[{"sig":"MEYCIQDp7QXNCeJyOLpO7n/jHixyHuW31NAXD+L+Dzb6FrdkDAIhANEYNFrKZrhuQK29jjdCc2zpFLlVzEc83+xM/YTFhwhq","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":59645},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"7da7525b182fa1130446375fbaab8c46b41a8feb","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"vite":"7.3.2","brace-expansion":"5.0.5"},"_npmVersion":"11.11.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.14.1","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","@tiny-fish/sdk":"^0.0.7"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^3.0.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.1.5-next.44_1775511198573_0.06273232038493615","host":"s3://npm-registry-packages-npm-production"}},"0.1.5":{"name":"@tiny-fish/cli","version":"0.1.5","_id":"@tiny-fish/cli@0.1.5","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"45d497e72c2964af8dc1a0a6acb3ecc581262a28","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.1.5.tgz","fileCount":30,"integrity":"sha512-RXTjTCyHLmtpaC9QApw2foIc+9DuRyQD2eYSy3pJyOWe9Ln8sQq+MCO316MhUkrgipzmXhv8V//LW5snipG9qQ==","signatures":[{"sig":"MEUCIA5qdkU88HNnLXGQpuVBauTzaEoB79KPYVZfc+3np0ESAiEA7Z1R+oi7PQ9CrybcRJGtI27FtrBImJos65iCpccTJgM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":59637},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"7da7525b182fa1130446375fbaab8c46b41a8feb","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"vite":"7.3.2","brace-expansion":"5.0.5"},"_npmVersion":"11.11.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.14.1","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","@tiny-fish/sdk":"^0.0.7"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.1.0","vitest":"^3.0.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.1.5_1775512074937_0.1487841055331589","host":"s3://npm-registry-packages-npm-production"}},"0.1.5-next.47":{"name":"@tiny-fish/cli","version":"0.1.5-next.47","_id":"@tiny-fish/cli@0.1.5-next.47","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"1f6b2199e8d33b88dd4c302cdd54a6684ebf6d70","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.1.5-next.47.tgz","fileCount":30,"integrity":"sha512-WRnBE1OpJVCmMlKTOaySwQZ+Z7WitDFAtPaeqMJ9SY+3q86Kx4RqturLt//KYC4OaUKsUqF8ZxdOy65xZpju+Q==","signatures":[{"sig":"MEUCIG7YcccjbtY3bV3iKY+YmrSpDmrPocUrNc9Kvutzva9YAiEAlLq73+IxxHpjZ0c/IZ9vobXsk4QFBfqVYPhkcrkbQXw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":62729},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"7176d4f1134ec4129bc0f90302cf3045e4e41750","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"vite":"7.3.2","brace-expansion":"5.0.5"},"_npmVersion":"11.11.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.14.1","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","@tiny-fish/sdk":"^0.0.7"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^3.0.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.1.5-next.47_1776977095079_0.44789443080916014","host":"s3://npm-registry-packages-npm-production"}},"0.1.5-next.48":{"name":"@tiny-fish/cli","version":"0.1.5-next.48","_id":"@tiny-fish/cli@0.1.5-next.48","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"93f45bac4f7e1009055a73531967829329f28ec2","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.1.5-next.48.tgz","fileCount":30,"integrity":"sha512-xgxKi/hu+wEGa4ml/UoVUJlJbRkobT41drv5q97bA/fOXNov5aUlgnZMpKSN9oYuV+mpRiRqMRU8ynEqeaJygg==","signatures":[{"sig":"MEQCIDsB7Mlxv6f1AqJVxvqmpCKOYIt7tni5wg2svmJnPuPeAiA/uWcgK3/r7r1vwbJTRSuzEjWElj57/tTF5Ise6wXuxQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":62754},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"027515fbf8441cecde92440b73bcb93aa3205e79","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"vite":"7.3.2","postcss":"8.5.10","brace-expansion":"5.0.5"},"_npmVersion":"11.11.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.14.1","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","@tiny-fish/sdk":"^0.0.7"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^3.0.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.1.5-next.48_1777051095888_0.7021770011850237","host":"s3://npm-registry-packages-npm-production"}},"0.1.5-next.50":{"name":"@tiny-fish/cli","version":"0.1.5-next.50","_id":"@tiny-fish/cli@0.1.5-next.50","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"866c74fe289db8a0c5cc920ccdb343142f421ebe","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.1.5-next.50.tgz","fileCount":30,"integrity":"sha512-3vKD1in2WJIgwQtaBlb+T0EdnxYTBf8AYZlVVTZVlLpmdPj3etyvT66kk1RxBV3ExidmjOnhG09e1znK/zZDkQ==","signatures":[{"sig":"MEYCIQDMyJhkpH0GhjhbcYHI4evcSnTV5ATUhNzQ+w7vZ0YrogIhAPS+VNBDIIPdYEvMSTN2xHx42/wduwINz1TnN1fdgRKK","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":77449},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"1ce860b772dec96d05925478267d2e79bd00a7a6","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"vite":"7.3.2","postcss":"8.5.10","brace-expansion":"5.0.5"},"_npmVersion":"11.11.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.14.1","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","@tiny-fish/sdk":"^0.0.7"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^3.0.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.1.5-next.50_1778103794523_0.5009912253180824","host":"s3://npm-registry-packages-npm-production"}},"0.1.6":{"name":"@tiny-fish/cli","version":"0.1.6","_id":"@tiny-fish/cli@0.1.6","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"30ac4045babb5cdb852177f0d47b9d8a2a0a733f","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.1.6.tgz","fileCount":34,"integrity":"sha512-0rpi8XywJN7J/JquUxwf8++cvxNsbmhg+BoMlw0VIArQjC1L7P0opgTnB5GYYKKSYNRiOFM2G+Sn8SN3EH4uMQ==","signatures":[{"sig":"MEUCIQCb22A4VDZkN/YCrM/Wr3ilkfI3m5WyxMTSN4hWf0X5OwIgJYwCopEC2CfVkglfqG6VrKMUukyzgAJUs0EngbKNW+I=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":92943},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"499d38679a3da352af951a8db70112e479ba8386","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"vite":"7.3.2","postcss":"8.5.10","brace-expansion":"5.0.5"},"_npmVersion":"11.11.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.14.1","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","@tiny-fish/sdk":"^0.0.7"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.1.0","vitest":"^3.0.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.1.6_1778110357672_0.0941717679348304","host":"s3://npm-registry-packages-npm-production"}},"0.1.6-next.57":{"name":"@tiny-fish/cli","version":"0.1.6-next.57","_id":"@tiny-fish/cli@0.1.6-next.57","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"582465ae968f08fd0a9a256676c133b7ce505803","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.1.6-next.57.tgz","fileCount":34,"integrity":"sha512-LCZu9zhcIuf2XngBtv/JZWBUbPLoX3/lYIXmR1zn2m3voj1QmHRMfdbsBeyKpNF8bce4yLXpZWHOSr4DsAnLgw==","signatures":[{"sig":"MEUCIQC6esLWHAj0pgr3KQK+OKPRRaQ6KMqtKTpji2b0ZinSFwIgF0UZY7zvvEZAJ0y4ImbpBFnpwsmxVVvSDa+CKNXaTEY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":92952},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"b68223bb0149a41b1e6828f06b8420c134409b58","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"vite":"7.3.2","postcss":"8.5.10","brace-expansion":"^5.0.6"},"_npmVersion":"11.13.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.16.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","@tiny-fish/sdk":"^0.0.7"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.1.6-next.57_1780333289028_0.4242664846687685","host":"s3://npm-registry-packages-npm-production"}},"0.1.6-next.58":{"name":"@tiny-fish/cli","version":"0.1.6-next.58","_id":"@tiny-fish/cli@0.1.6-next.58","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"781ed7c40f5a48ea6f5936bb21523b2199280592","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.1.6-next.58.tgz","fileCount":34,"integrity":"sha512-B0Yd/nKZLDutE0EmqVy05iXnJzT+jb0goNqdPj9SA2QJtsKSiaL30ah39+1jFIm7O8p692CWDhxfyIC8QQk+zw==","signatures":[{"sig":"MEYCIQDYxdoIpUJpfgeCck54g5+JnZ1uryT1DcQ5ql/uiqkhsAIhAMRgNJ4ewT17tqTHgP2Jq+KNuqwhpX2MBGRs2j2i22N7","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":93821},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"1420e5aa94b1ddc54db374e7ec434eaa32e86503","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"vite":"7.3.2","postcss":"8.5.10","brace-expansion":"^5.0.6"},"_npmVersion":"11.13.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.16.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","@tiny-fish/sdk":"^0.0.7"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.1.6-next.58_1780941822218_0.02291654739425808","host":"s3://npm-registry-packages-npm-production"}},"0.1.7":{"name":"@tiny-fish/cli","version":"0.1.7","_id":"@tiny-fish/cli@0.1.7","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"4c4b37f652b0deecac642d1632e235b05f38f9fe","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.1.7.tgz","fileCount":34,"integrity":"sha512-MamYiDO4e6ZW7g2wOxs8glNnrmHha8n9F9CzBx39ajxh0En8ch+VtzDNxqIX9/fJx8X5/bahFtRaTetWiGKCMg==","signatures":[{"sig":"MEUCIFVBtFoPxI5SRpmLiDPG+wCzT2D9jNj2vl/4xhRzT5sxAiEAvIQQiDhEz0EI1P6Ul3FdpZ9VajOH6xGbVFRspFP778k=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":93813},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"15cd54cbf16dd2628902d813a78846e018f3aab5","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"vite":"7.3.2","postcss":"8.5.10","brace-expansion":"^5.0.6"},"_npmVersion":"11.13.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.16.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","@tiny-fish/sdk":"^0.0.7"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.1.7_1780943252964_0.664136322258297","host":"s3://npm-registry-packages-npm-production"}},"0.1.7-next.61":{"name":"@tiny-fish/cli","version":"0.1.7-next.61","_id":"@tiny-fish/cli@0.1.7-next.61","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"4b552a6f7b9be1315b1a345c9a94e6beba429674","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.1.7-next.61.tgz","fileCount":34,"integrity":"sha512-gBgc/rkBmOkNkaYuzDDYhcwUbTdPqBHyIsi57vijoyvymQvhsAmbIahhc2B1y1XdODi598SIv+AQVGCePcplHA==","signatures":[{"sig":"MEUCIFstggZlpZMhLibw/rv34/8Ct59m45uWRsGNHTkNiP3uAiEAxUDVDvwJ0B+JDCxfAixoSIagIQYxPNucJcR4KmXi/+Q=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":93821},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"3bb8164361755e843d02ff90fa7d9aa2ca875889","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"vite":"7.3.2","postcss":"8.5.10","brace-expansion":"^5.0.6"},"_npmVersion":"11.13.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.16.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","@tiny-fish/sdk":"^0.0.7"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.1.7-next.61_1781119613918_0.04630592288783131","host":"s3://npm-registry-packages-npm-production"}},"0.1.7-next.62":{"name":"@tiny-fish/cli","version":"0.1.7-next.62","_id":"@tiny-fish/cli@0.1.7-next.62","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"b71add04eb8d9c7e5806717efc7bd122642d3ba8","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.1.7-next.62.tgz","fileCount":34,"integrity":"sha512-uyBa1RfrSYwz6At5oGgNYzE/wjHoMYPoGEyNOzsBz4xBpyXAobufiuKXl9CmxWF4cN/EfWvAEp7eaG3NDJ2SZQ==","signatures":[{"sig":"MEQCIGXFGWtAVb59K067VfpRYEOvjHQ/GnxwEmv6vhXfCRuOAiBvdHYn4Tid+ZYPJa8OWEL/hnV7iVnFeeQ2hys643xyUw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":93846},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"acf848dbacbc5b0c2ce83c6276d351506a4570f4","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"vite":"7.3.2","esbuild":"0.28.1","postcss":"8.5.10","brace-expansion":"^5.0.6"},"_npmVersion":"11.13.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.16.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","@tiny-fish/sdk":"^0.0.7"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.1.7-next.62_1781301950415_0.4524680836024544","host":"s3://npm-registry-packages-npm-production"}},"0.1.7-next.63":{"name":"@tiny-fish/cli","version":"0.1.7-next.63","_id":"@tiny-fish/cli@0.1.7-next.63","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"8b6964a2236d3350c7f759f17d32573f178bedd2","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.1.7-next.63.tgz","fileCount":34,"integrity":"sha512-I4Ip8lmZnB7itlFpJO02kb8JJYSNkG8lcwQ8df4fGpanXzjavsoor9/9O6l9COEiHvzIuDf//WwIiUg8vE440g==","signatures":[{"sig":"MEUCIBdFGGZe9X0U3BIycQEL1fiRX7S/YXgm1VeFpjhuVdrUAiEA5sM9vaKl6oRihh12gTTr0bSYEWa/ysbsR0m/MTHrn8c=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":93846},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"0830991259e6e4ff865698d91134a42125598258","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"vite":"7.3.2","esbuild":"0.28.1","postcss":"8.5.10","brace-expansion":"^5.0.6"},"_npmVersion":"11.13.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.16.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","@tiny-fish/sdk":"^0.0.7"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.1.7-next.63_1781302786181_0.719902561494868","host":"s3://npm-registry-packages-npm-production"}},"0.1.7-next.64":{"name":"@tiny-fish/cli","version":"0.1.7-next.64","_id":"@tiny-fish/cli@0.1.7-next.64","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"125cacef22b55951db2e2a81d6daca1b42a61cb2","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.1.7-next.64.tgz","fileCount":34,"integrity":"sha512-NClv0eEZoVjNJw2q390qCdqCyVbuQFdQnPUTToYhxmMIg39r74oLrwy/XxKzC813tK3jlKiLOv3vXSt1hO7n5A==","signatures":[{"sig":"MEUCIQDk87KLY9qymVNQf2jGRidS4Y5isP1QFaB2iJY+EGk7IgIgV0ArQwHQ46DKFgEBg6p9J6XE7/cb9kLmP/A52H9TkN4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":93846},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"659df7d43a7fe0fac3e5980b908aff5284c57cb9","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"vite":"7.3.5","esbuild":"0.28.1","postcss":"8.5.10","brace-expansion":"^5.0.6"},"_npmVersion":"11.13.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.16.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","@tiny-fish/sdk":"^0.0.7"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.1.7-next.64_1781546942759_0.5404025542427076","host":"s3://npm-registry-packages-npm-production"}},"0.1.7-next.65":{"name":"@tiny-fish/cli","version":"0.1.7-next.65","_id":"@tiny-fish/cli@0.1.7-next.65","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"6f0eaa096641922072a5eedb03c06593db34ba6c","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.1.7-next.65.tgz","fileCount":34,"integrity":"sha512-0auLLckOCvt4qInNXaSZnNLGysfzGwOiCcvUKS2ljM0toDLRUN0QfAi78ZKxLIUnti7G4HmTWta6XejVoHsc4w==","signatures":[{"sig":"MEQCIGB53g4V8bAv8XiMDorDxG/mO55daNLxIvonBqxClsCWAiBkWs4W0wwdfrs02bQwVfZXtMfakp8x5DGzBwFF9qm0YQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":93846},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"39f16d874b0adf671685ef8087bcdb105a57cd54","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"vite":"7.3.5","esbuild":"0.28.1","postcss":"8.5.10","brace-expansion":"^5.0.6"},"_npmVersion":"11.13.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.16.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","@tiny-fish/sdk":"^0.0.7"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.1.7-next.65_1781551073561_0.2938901158367846","host":"s3://npm-registry-packages-npm-production"}},"0.1.7-next.66":{"name":"@tiny-fish/cli","version":"0.1.7-next.66","_id":"@tiny-fish/cli@0.1.7-next.66","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"f29568f8d38b797599ccabcb86bd6d45fcf68339","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.1.7-next.66.tgz","fileCount":34,"integrity":"sha512-X3UEYTczeDpDLO+RyQIdZuSj7l7aC73GIhShyWz72irtfTS13i7lu1os9ZOLG+AMTleIJEMMkDmWlkeX+FJxXA==","signatures":[{"sig":"MEUCIHlpW7kAGmTpC5R2tcBD2gzz2rGysIJ5k6HVcF09+qgAAiEA8bV7oq2cC2cxu+SqNuo9jre8zHKYWdHe58BroVAOdtQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":94692},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"f379668948546ac511c9b6d97faed64c919f72da","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"vite":"7.3.5","esbuild":"0.28.1","postcss":"8.5.10","brace-expansion":"^5.0.6"},"_npmVersion":"11.13.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.16.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","@tiny-fish/sdk":"^0.0.7"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.1.7-next.66_1781638748440_0.9779441871631487","host":"s3://npm-registry-packages-npm-production"}},"0.1.7-next.67":{"name":"@tiny-fish/cli","version":"0.1.7-next.67","_id":"@tiny-fish/cli@0.1.7-next.67","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"8cf4da840d437a4c5e24a813b4c5bde0bfe899a3","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.1.7-next.67.tgz","fileCount":36,"integrity":"sha512-vlKDnXF7ACGsdHgh2JQhK/d2VIwLbgOYzeJ8BFFenpMiSgEbtuJpL3+F7kgl/ENsuUlpZ66nFCYQWNP5wSJN+Q==","signatures":[{"sig":"MEQCICwK6TrJCnDwLxjjQ+x5ae9pUSB15tUS0CU5MXTGxY3uAiB0dvDtI87rw13EiAc9ppyPZ+LeHOXA8WHdux+SDlxZCA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":103737},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"688009c8bb75cdd7f5432ab51f6dac92a0f49176","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7","vite":"7.3.5","esbuild":"0.28.1","postcss":"8.5.10","brace-expansion":"^5.0.6"},"_npmVersion":"11.13.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.16.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","@tiny-fish/sdk":"^0.0.7","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.1.7-next.67_1782186291343_0.938183566395675","host":"s3://npm-registry-packages-npm-production"}},"0.1.8":{"name":"@tiny-fish/cli","version":"0.1.8","_id":"@tiny-fish/cli@0.1.8","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"56298d2317e2180e7f7754c90f064cc88a4725df","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.1.8.tgz","fileCount":36,"integrity":"sha512-nDziw7ny89bsE/sAg5srTu6gGP72X3SK02yxMLiS/mvEoht0fhtq03km3iilrcAHl93A0sWyDTjC6OyAqO87Mw==","signatures":[{"sig":"MEYCIQCSp6DDSPvV32lacwIEul6EMV7ns2y4kwKsGB1MGD73vgIhAJ725h/RXkdicw+CBkKweNui/CU900/AYBdcNyZ1Bnt7","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":103729},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"a295fde6412fe4e4653f03aa479a9d2d834d6d01","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7","vite":"7.3.5","esbuild":"0.28.1","postcss":"8.5.10","brace-expansion":"^5.0.6"},"_npmVersion":"11.13.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.16.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","@tiny-fish/sdk":"^0.0.7","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.1.8_1782187912590_0.27588387321184626","host":"s3://npm-registry-packages-npm-production"}},"0.1.8-next.70":{"name":"@tiny-fish/cli","version":"0.1.8-next.70","_id":"@tiny-fish/cli@0.1.8-next.70","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"778daff6e8106c054ee49ab55aac65262f40bdae","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.1.8-next.70.tgz","fileCount":36,"integrity":"sha512-E57c/MFsvmfS7/MMDhcX7B5Kj1OVuQmwZ7OyTz72XppwpqY8t3aqMAVmyjsa0TLy69DQlurFXqNqe41tiIvntQ==","signatures":[{"sig":"MEQCIAQ2emmDtY6ELqUyZtVJjENaPPHjb9TuPmwB3rVHidvrAiAe1dRZmvuImWPXMl7cxy8vDTlbJuEiqGdRjeROWJPl8Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":111374},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"927a1143f6b2c86514a2ec035e864051afb69eb7","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7","vite":"7.3.5","esbuild":"0.28.1","postcss":"8.5.10","brace-expansion":"^5.0.6"},"_npmVersion":"11.13.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.16.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","@tiny-fish/sdk":"^0.0.7","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.1.8-next.70_1782256995517_0.8352786025789642","host":"s3://npm-registry-packages-npm-production"}},"0.1.8-next.71":{"name":"@tiny-fish/cli","version":"0.1.8-next.71","_id":"@tiny-fish/cli@0.1.8-next.71","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"23ab0308cca91a3dfe913d19064fa65612404e5b","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.1.8-next.71.tgz","fileCount":38,"integrity":"sha512-iuZuwxTel8LmaX7oT8PTOsDi1huY6Kjbow7W/BLpushwmqV+w+WnKVyiocTTI52LJIFxAM8+0LcO1CbBGYgp1Q==","signatures":[{"sig":"MEUCIFZCs6q8IUZWAHmCF0Wd72htmd8zdA5gEnhzLBEbKmugAiEAzsqRLj+RW5QBTpHz+hEib8qCoWzk3XaHjUKaaqkpfQc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":126024},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"a98daf7634c85a99cf55c014169257374c09b0a6","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7","vite":"7.3.5","esbuild":"0.28.1","postcss":"8.5.10","brace-expansion":"^5.0.6"},"_npmVersion":"11.13.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.17.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","@tiny-fish/sdk":"^0.0.7","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.1.8-next.71_1782508807589_0.9189254400917777","host":"s3://npm-registry-packages-npm-production"}},"0.1.8-next.72":{"name":"@tiny-fish/cli","version":"0.1.8-next.72","_id":"@tiny-fish/cli@0.1.8-next.72","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"e262f81242ae829e42c9a8fa90bf6deddb1c7ba3","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.1.8-next.72.tgz","fileCount":38,"integrity":"sha512-xzp7p870/AMnBGSEnB19NterX4ObS5dk493pOv4hNLMcXXVPPo8iUIhz7Musqjt0xuP/LqqPZUvHIdzk2lzueQ==","signatures":[{"sig":"MEUCIDfNUBJ2paotbFC08ZzpWoyka/kN2WnCoIl6vCxYYNfpAiEAxJZKCfHZRkXDiliSPxdf2rY68zHhDbo1xk1K8YgXV1U=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":127449},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"fae1ad5d616bcf2611c438747a99ea5710820330","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7","vite":"7.3.5","esbuild":"0.28.1","postcss":"8.5.10","brace-expansion":"^5.0.6"},"_npmVersion":"11.13.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.17.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","@tiny-fish/sdk":"^0.0.7","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.1.8-next.72_1782515921209_0.680643963444254","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"@tiny-fish/cli","version":"0.2.0","_id":"@tiny-fish/cli@0.2.0","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"20488f76faf7754df7afeaf0a91c16638b972e45","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.2.0.tgz","fileCount":38,"integrity":"sha512-O0iDsNnFdwdUQHcA7atNbeWEX6JNDrJ2Tibun7a0f/rYxjAtT1VC1iWrlLTuLBAJmKSK6YCdl4/Ip59C/39fvQ==","signatures":[{"sig":"MEYCIQDXVfXX7pblQuoM9qvmR9J0rD9WHi0ZMdQfi9nbSRx1zgIhANHsEnlmgHougTIOfM3BQLrNhR4ArZkAnGXmK3OFfB/h","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":127441},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"0fa885f122323edb08b17f5f089c7e1deee62f5d","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7","vite":"7.3.5","esbuild":"0.28.1","postcss":"8.5.10","brace-expansion":"^5.0.6"},"_npmVersion":"11.13.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.17.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","@tiny-fish/sdk":"^0.0.7","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.2.0_1782516844663_0.9382006130778313","host":"s3://npm-registry-packages-npm-production"}},"0.2.0-next.77":{"name":"@tiny-fish/cli","version":"0.2.0-next.77","_id":"@tiny-fish/cli@0.2.0-next.77","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"d6e839d018c2136da0f0dcb7d2dcd4b3bf71e8c6","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.2.0-next.77.tgz","fileCount":38,"integrity":"sha512-ey5J0Swys9/tSa0/RqmOe9pKpn9YGT4rud5wcaAvMppUsW6AsqdPwm/Wh5MS+QGRGJ21gaida8tK84TG/vK2Gw==","signatures":[{"sig":"MEQCIA8kTykLgRVu2redyfCCG+Zz4gwsKAxoimTJlf9LqJgpAiA2R1zYFJpdYqa9PsjTebpYSa89B8wkFVJGjs48Q068PA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":128787},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"49e6696b34c4022a17d2161f5b55fc54829db859","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7","vite":"7.3.5","esbuild":"0.28.1","postcss":"8.5.10","brace-expansion":"^5.0.6"},"_npmVersion":"11.16.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","@tiny-fish/sdk":"^0.0.11","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.2.0-next.77_1783455510360_0.40597538813210376","host":"s3://npm-registry-packages-npm-production"}},"0.2.0-next.78":{"name":"@tiny-fish/cli","version":"0.2.0-next.78","_id":"@tiny-fish/cli@0.2.0-next.78","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"4a93f5259c72a7ad37eb2b6f16b60575c7e211d2","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.2.0-next.78.tgz","fileCount":38,"integrity":"sha512-nJ7gp/jLD60V4Q6sYyE46/TcUKqgCUKAfTTceDi4svlGrhqlx/C9WfxwsvpYeMg3tGUiNeX7PCySVyKKdDA6RA==","signatures":[{"sig":"MEQCIBIvo9JGPmzRaMVXgrsCeVo+CGUTDV2y7OVUgrf46+hFAiAKFGL1jKD4X8PwxN999NxHUIiOLmbWqI/sZ1Dg90l0xQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":128787},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"c7ffdcba9927059bf0c8950199635b17d8f31511","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7","vite":"7.3.5","esbuild":"0.28.1","postcss":"8.5.10","brace-expansion":"^5.0.7"},"_npmVersion":"11.16.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","@tiny-fish/sdk":"^0.0.11","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.2.0-next.78_1784582324910_0.9346447665126822","host":"s3://npm-registry-packages-npm-production"}},"0.2.0-next.79":{"name":"@tiny-fish/cli","version":"0.2.0-next.79","_id":"@tiny-fish/cli@0.2.0-next.79","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"ca8de5698f9c1727b4a907fb12c54599a5d61093","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.2.0-next.79.tgz","fileCount":40,"integrity":"sha512-x5zxJ/PPaHVhZt8cebkFs8X0rT5vZhZvphaEYTosNzEFa71CUXft7xt7Ym+qlRBOIfDPmCoyWuTO3Im+c6ZjGw==","signatures":[{"sig":"MEQCIFojT51Mzak650fzJFzK3RNf2dNjFsMia1zVJRHph7jBAiByxaS2C44/l+r98Kum4Zw39QTxmOnf+iwP1+oMwPikUg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":134252},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"6540c5a2bf153620cac54c3da9b433d5a9dfb900","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7","vite":"7.3.5","esbuild":"0.28.1","postcss":"8.5.10","brace-expansion":"^5.0.7"},"_npmVersion":"11.16.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.0.11","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.2.0-next.79_1784582722793_0.3995929029810308","host":"s3://npm-registry-packages-npm-production"}},"0.2.0-next.80":{"name":"@tiny-fish/cli","version":"0.2.0-next.80","_id":"@tiny-fish/cli@0.2.0-next.80","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"3dc13b87cb02e1e6be48defe4498c29b32a113a6","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.2.0-next.80.tgz","fileCount":40,"integrity":"sha512-f3TO7RO5EwQ1JpWhc1wmYIReHWBPbLbMKrpDLcC1LpHUbtQ1q+wKH5E2sanZ+0STt3XB84ialQywbg5d8EDGBw==","signatures":[{"sig":"MEUCICeWJojHQayAf9mv5WzGt1tbadVl3MRVkA2iNeKrOknGAiEAyzpSc7u22+VKMPfDWh1XX0FPqU+SfZvtlYz/4pkhwMM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":134257},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"d0733dfc8f5852350b420f513495fab8eede15fd","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.20","vite":"7.3.5","esbuild":"0.28.1","postcss":"8.5.10","brace-expansion":"^5.0.7"},"_npmVersion":"11.16.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.0.11","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.2.0-next.80_1784587024048_0.5211462944565075","host":"s3://npm-registry-packages-npm-production"}},"0.2.1-next.81":{"name":"@tiny-fish/cli","version":"0.2.1-next.81","_id":"@tiny-fish/cli@0.2.1-next.81","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"0ec024709ab4862d5c7b0834167100f933984301","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.2.1-next.81.tgz","fileCount":40,"integrity":"sha512-zl4OPWv2hENXHMnujdWkRNYnA+52dcrkMeFQxD7/kYXNNOYIEqeTd9BwRKeRnkZx3gLlw9Cjl/vVjEA/MbqyvA==","signatures":[{"sig":"MEUCIQD6JUMrGE4aSpvIzfTCbaeOhuWKyFg3bY5hC5ZdeIOFpwIgZA14EKue+tNFUw7u8RBseWftAmzinYx3sryvJH596T0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":134257},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"090a378f4666a8e45742b1938a000246a10efdbb","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.20","vite":"7.3.5","esbuild":"0.28.1","postcss":"8.5.10","brace-expansion":"^5.0.7"},"_npmVersion":"11.16.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.0.11","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.2.1-next.81_1784587272195_0.34268261698557767","host":"s3://npm-registry-packages-npm-production"}},"0.2.1":{"name":"@tiny-fish/cli","version":"0.2.1","_id":"@tiny-fish/cli@0.2.1","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"61eada004301dadf44293f6f833d3b7f76276e0b","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.2.1.tgz","fileCount":40,"integrity":"sha512-g1JG6IITT4jgs5/2KQBv997qPKLdOC7/MhyOu1OXA6ITe5JkTx86eBBp0Ab7L8m8Wyy/roWwQuUPz+YDkYDW5Q==","signatures":[{"sig":"MEUCIQDdQSzp9APfhM27tIBrW1TzvNfw0Ops7QNQ1RvZxb+DpQIgIOi2npwXqLGjftnRuUK9LSuO97Lcsaxl9G6dYhAUAfc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":134249},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"090a378f4666a8e45742b1938a000246a10efdbb","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.20","vite":"7.3.5","esbuild":"0.28.1","postcss":"8.5.10","brace-expansion":"^5.0.7"},"_npmVersion":"11.16.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.0.11","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.2.1_1784587452023_0.5432421821611888","host":"s3://npm-registry-packages-npm-production"}},"0.2.1-next.83":{"name":"@tiny-fish/cli","version":"0.2.1-next.83","_id":"@tiny-fish/cli@0.2.1-next.83","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"1842b4de88d78c0fbac4dff62f527794aae7b9a8","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.2.1-next.83.tgz","fileCount":40,"integrity":"sha512-dNHg86QEtxqHBBygPwH643lSYe7PVphwGOF8TYzU05tAU5a2M/8s9jeEYPSFnRZT9TzMhWfYBnN9eLYlthRcfA==","signatures":[{"sig":"MEYCIQD4SQf+EPU+ZoC+v9zhaoHxO98Reos8FgZar3pQPoMR8gIhAKR0bVFkN6Dtcuf+QJGNCaPKXVWvq4+09ZSLX6XXatfY","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":136883},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"9f10b98689bcbcda33ccc3b03418ea00e1149565","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.20","vite":"7.3.5","esbuild":"0.28.1","postcss":"8.5.10","brace-expansion":"^5.0.7"},"_npmVersion":"11.16.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.0.11","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.2.1-next.83_1784671685455_0.05783343405919217","host":"s3://npm-registry-packages-npm-production"}},"0.2.2":{"name":"@tiny-fish/cli","version":"0.2.2","_id":"@tiny-fish/cli@0.2.2","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"eebd8450a68856e626bcad6741b3945c9d17ad5c","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.2.2.tgz","fileCount":40,"integrity":"sha512-Ej3i+U8i/QwGfFZAp3DwUc3OxH8zbGK+410VNwgbBPVGfz9ue2UUaphuiNY5rVdB+Tzi1MpXJTFUs6/FstMPUg==","signatures":[{"sig":"MEUCIQDm5ce73Nq0vHOmxoHwmOW1UyRscTFUJnCNmQtpFKYo5gIgVoOOoonaU0eJ3988SlnBw1rH2eyaQtTeGKNlDdCsFys=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":136875},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"c3f254a9d22840f9a81a6bea538142820a3781a7","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.20","vite":"7.3.5","esbuild":"0.28.1","postcss":"8.5.10","brace-expansion":"^5.0.7"},"_npmVersion":"11.16.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.0.11","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.2.2_1784672199407_0.24094838089263004","host":"s3://npm-registry-packages-npm-production"}},"0.3.1-next.87":{"name":"@tiny-fish/cli","version":"0.3.1-next.87","_id":"@tiny-fish/cli@0.3.1-next.87","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"1ba8c190f0b928351d06efa37c89ded21fd7f380","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.3.1-next.87.tgz","fileCount":40,"integrity":"sha512-u1BaGqTG/UHo2KNKholalHCJY11kAVz3/0eAJ3Wvcf9oAI/zgJWXKEOKVsasxjqc8J3vi7Zgdx9q++8JdaVYrA==","signatures":[{"sig":"MEQCIDy9Ir3tkWCOvPNpDuu5p1yfIY6LgAAxMZJ4/6TivJvjAiBvyDXNoDjUWonwoieroJaxWDY4Wy9VplGe7xHGP2/yiw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":139380},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"34b599512b7275bb716530980e43ab9b433a6e34","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.20","vite":"7.3.5","esbuild":"0.28.1","postcss":"8.5.10","brace-expansion":"^5.0.7"},"_npmVersion":"11.16.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.0.11","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.3.1-next.87_1784746686762_0.7531770064118843","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"@tiny-fish/cli","version":"0.3.0","_id":"@tiny-fish/cli@0.3.0","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"aea62b65e46c907f6e450cd46250c00e2b038683","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.3.0.tgz","fileCount":40,"integrity":"sha512-BW0WISWX+2wYeeT/DovsbpoVOnA+bbT7XlPjHvB7FK0ICNytOrIx5nl2cOyUBGRfkaERq4mda1NSl7xw46MdRA==","signatures":[{"sig":"MEUCIHBq2CSJRZ2L8G+Hppqw2BEYLe7p+nH7zAiiZRddqZ3NAiEA8euS16/125MEvhPrt4wulrbt1x8XL/eeKnTtktCaLCg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":139372},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"34b599512b7275bb716530980e43ab9b433a6e34","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.20","vite":"7.3.5","esbuild":"0.28.1","postcss":"8.5.10","brace-expansion":"^5.0.7"},"_npmVersion":"11.16.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.0.11","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.3.0_1784746733300_0.038771039806678065","host":"s3://npm-registry-packages-npm-production"}},"0.3.1-next.89":{"name":"@tiny-fish/cli","version":"0.3.1-next.89","_id":"@tiny-fish/cli@0.3.1-next.89","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"0dabdc2f258f428fcd1198e1bdc8cf6cd299183f","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.3.1-next.89.tgz","fileCount":40,"integrity":"sha512-TT1YUBbx613S8CJr7EuG0+kCqV+kWKUigxcKWrZ2aXZ9+mqPmPh499XFkMi59whHKem92a7HJjZqPw0T098i0Q==","signatures":[{"sig":"MEUCIQDWkO8UQzGujDYd2seuas62PgKdRC/Fkae0YFCjkRYenQIgNlP6i6znTWsPu3H2QEzAi01uIThuUA+junchBHFHhAc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":139795},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"6c2079f52872f9c9472cde8ec95d70280f25defa","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.20","vite":"7.3.5","esbuild":"0.28.1","postcss":"8.5.10","brace-expansion":"^5.0.7"},"_npmVersion":"11.16.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.0.11","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.3.1-next.89_1784756510081_0.3142650083005689","host":"s3://npm-registry-packages-npm-production"}},"0.4.1-next.90":{"name":"@tiny-fish/cli","version":"0.4.1-next.90","_id":"@tiny-fish/cli@0.4.1-next.90","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"bbe41da1566a1101d6e56dfd551cdeb663e1e475","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.4.1-next.90.tgz","fileCount":40,"integrity":"sha512-53NRhtBp3Sk0yfl9PmPhrr2aRfMMHSXsV7mYG+HszabJaGmAQhogFgqxmczsFvKkJloMeOm/acSGBbX7fnYDVw==","signatures":[{"sig":"MEQCIBuswqNBIUCGQQJ9jjn58LNziOftDKvz2xjhDaA+e3tHAiASqvHI0csQClSMedyL6KM2Xxv6+D2rW+2K0i7DCvyC3A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":139795},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"e4bd7b9facc91cdb9a17b3022beb2f185edeff92","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.20","vite":"7.3.5","esbuild":"0.28.1","postcss":"8.5.10","brace-expansion":"^5.0.7"},"_npmVersion":"11.16.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.0.11","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.4.1-next.90_1784766431012_0.6174476666755138","host":"s3://npm-registry-packages-npm-production"}},"0.4.0":{"name":"@tiny-fish/cli","version":"0.4.0","_id":"@tiny-fish/cli@0.4.0","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"2a9439019c898a7feb89c4fe074f9ebabcfc2a98","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.4.0.tgz","fileCount":40,"integrity":"sha512-jBan+TfmMarr/Yzq4PnhYgKKHs1ONivnaM7yUssFeaV3dKz+nmpWnPwMXu6BKl4E7IBJPl+/qrykQDAXqEcf2g==","signatures":[{"sig":"MEYCIQChbItQB+C1Uek4N5hikWTxlmdqw8VjplfQo8iRV1IF5gIhAPQ0YqhG7mNdUEyQ2ZZUzXJy7+HKtHC5YCzKezNd8PBv","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":139787},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"e4bd7b9facc91cdb9a17b3022beb2f185edeff92","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.20","vite":"7.3.5","esbuild":"0.28.1","postcss":"8.5.10","brace-expansion":"^5.0.7"},"_npmVersion":"11.16.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.0.11","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.4.0_1784766492033_0.1944933402777318","host":"s3://npm-registry-packages-npm-production"}},"0.4.1-next.92":{"name":"@tiny-fish/cli","version":"0.4.1-next.92","_id":"@tiny-fish/cli@0.4.1-next.92","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"26b8d17d44949221f882559d2116ffaecc9790e5","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.4.1-next.92.tgz","fileCount":40,"integrity":"sha512-YGBN8f80H4/AfFD9aZV3/di3I6EVJp0EpdsFS3RNPdbAW7vo/jljpprX5woYGn+5d+qw1twMUgnOsyMpu3J5qA==","signatures":[{"sig":"MEQCIEeO8iFfRnWcYrsXiUJx4xHa+Lo2L14Em7kclVjy7ew3AiBujlPbyXGhyr2m+9dj368YpQlXoohPTdM/KOc7k2ynHw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":139795},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"8b8b87f0ba73537136402d47ab7a8152d631330b","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.20","vite":"7.3.5","esbuild":"0.28.1","postcss":"8.5.12","brace-expansion":"^5.0.7"},"_npmVersion":"11.16.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.0.11","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.4.1-next.92_1784822197917_0.4922116104654244","host":"s3://npm-registry-packages-npm-production"}},"0.4.1-next.93":{"name":"@tiny-fish/cli","version":"0.4.1-next.93","_id":"@tiny-fish/cli@0.4.1-next.93","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"65b2c7eeecd9bc9f00726f2be38d541bfaf2b180","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.4.1-next.93.tgz","fileCount":40,"integrity":"sha512-1a/FUbxeJuKR2o9lbW8YCd8KaldOoNmmPtVa6BWHSpufAkX+QILKR/KfWlMNM9znS26nnj2fGNO65wa0qnc53g==","signatures":[{"sig":"MEQCIFjFNyqT0fT7xw3nDEjMogTi3s/Ws+SeKdHYc5gyQqeRAiBPPcmRU7w0Ap4Lgp3puzfylwcbrmLdZONkRyHrpAEKMQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":143989},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"16c06a187e88ba299acdbf4373ab6f3c252d1758","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.20","vite":"7.3.5","esbuild":"0.28.1","postcss":"8.5.12","brace-expansion":"^5.0.7"},"_npmVersion":"11.16.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.0.11","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.4.1-next.93_1784830956357_0.3162133613553759","host":"s3://npm-registry-packages-npm-production"}},"0.5.1-next.94":{"name":"@tiny-fish/cli","version":"0.5.1-next.94","_id":"@tiny-fish/cli@0.5.1-next.94","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"155aba2422e88062d2c0b54190b5a6915677ad47","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.5.1-next.94.tgz","fileCount":40,"integrity":"sha512-ET9IzwMADmczDaJal/fKZCqJDqXBmZXKtp/XmOG1BnIZrvQoI+zGE2aHKMF1m5f1Rrayj+pvoP+V6h4EEmgdFw==","signatures":[{"sig":"MEUCIBeF48uM367xwADFJOCkQpF0GsY0ssALAmYLMD5a5KZHAiEAnEHYwosEGZB2sG4nrwuWQpoKloe364cscZgtfLSOP00=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":143989},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"cc4ceaa6d493ef7fc33942ebf43e1a7833f3ed67","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.20","vite":"7.3.5","esbuild":"0.28.1","postcss":"8.5.12","brace-expansion":"^5.0.7"},"_npmVersion":"11.16.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.0.11","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.5.1-next.94_1784832938859_0.8512543755532744","host":"s3://npm-registry-packages-npm-production"}},"0.5.0":{"name":"@tiny-fish/cli","version":"0.5.0","_id":"@tiny-fish/cli@0.5.0","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"204c1c7973eb4f59525099d5134f55a0e4583d07","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.5.0.tgz","fileCount":40,"integrity":"sha512-j1yzIqladErA4tvzbNqVjGtMx+KH8njy0sHr4MrfSwyMxr18QTZB3vWai8ZoSpmXPnV7ettOvoR3EATG1QnneA==","signatures":[{"sig":"MEQCIDCz1qSD/tUGKgnM1RWszK3SXKTAdKlEpN1oRMKy4y0OAiBCHOkgfsmNtBi/jMWVqbSEveoWnQ9wVUZz0AUFEshg7Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":143981},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"cc4ceaa6d493ef7fc33942ebf43e1a7833f3ed67","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.20","vite":"7.3.5","esbuild":"0.28.1","postcss":"8.5.12","brace-expansion":"^5.0.7"},"_npmVersion":"11.16.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.0.11","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.5.0_1784832957966_0.6792691166911689","host":"s3://npm-registry-packages-npm-production"}},"0.5.1-next.96":{"name":"@tiny-fish/cli","version":"0.5.1-next.96","_id":"@tiny-fish/cli@0.5.1-next.96","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"10e51872330e389c01a510cd20d92412b18f24d7","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.5.1-next.96.tgz","fileCount":40,"integrity":"sha512-ImVhZ5KsU2ISiVEC6TVHnTJGrqNwRLCfg7kz/8Uo2lD3LjHI9wk8ufCUX23fBssnweK8+zva8afmcpJy5UhwZA==","signatures":[{"sig":"MEYCIQCM8yqyIJ4JV37CYZGfkLfvryob9HjR0VBvVy+w5EEKLgIhAPc2++qS4cunoPGt5RzPot42OF8MHnVom126ID31z80W","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":143991},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"237d89ee694c1ab3671fa8f21bde38b7bdbf7f17","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","esbuild":"0.28.1","postcss":">=8.5.18","brace-expansion":"^5.0.7"},"_npmVersion":"11.16.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.0.11","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.5.1-next.96_1784912497469_0.9648703902540829","host":"s3://npm-registry-packages-npm-production"}},"0.5.1-next.97":{"name":"@tiny-fish/cli","version":"0.5.1-next.97","_id":"@tiny-fish/cli@0.5.1-next.97","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"4b02b187df53a9db77567506d99638098242947b","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.5.1-next.97.tgz","fileCount":40,"integrity":"sha512-C6jQAs4Fd1eo7rCzfl5i3kXNDTpZ5sYKDHFgT4dSizk+UOL/nfZnh+adikFSzWwTNcn8wrPkdbp4FeSLGmdpFg==","signatures":[{"sig":"MEQCIFcLqO1gkTHU2WgTgdGNWAMggX9AQluVjfYf9A2oXedaAiBVrsAkYt73YDxx+BeJnu6ocwDTyCZz8vwxlcg/NKYJuw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":143991},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"f2c7710ef71416b91f1c88c67c40d8e60013a65c","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","esbuild":"0.28.1","postcss":">=8.5.18","brace-expansion":"^5.0.8"},"_npmVersion":"11.16.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.0.11","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.5.1-next.97_1784933349842_0.008357628222260383","host":"s3://npm-registry-packages-npm-production"}},"0.5.1-next.98":{"name":"@tiny-fish/cli","version":"0.5.1-next.98","_id":"@tiny-fish/cli@0.5.1-next.98","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"ece56a5ffe9355367e77dc612509a076cae9afa2","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.5.1-next.98.tgz","fileCount":40,"integrity":"sha512-ebTEi7OQqw+ny66I1/RMObaefYG+kK7K85z4buhdgX1R2j4aUUUdlRbcMeX/iwgEWMuUZBAT5pmfKjEqH5EcAA==","signatures":[{"sig":"MEQCIFdmAAk0D2EcKaGq+NG9aOpWHjp3q75dhn68KPxjA9ywAiAdYzNVTlnX7tBryQ5dzqn9G2jefVHT7Sieg/x5LvIaCQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":143991},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"ab2ad2496c42f216011c798eb4c630e4baac2ec8","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","esbuild":"0.28.1","postcss":">=8.5.18","brace-expansion":"^5.0.8"},"_npmVersion":"11.16.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.0.11","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.5.1-next.98_1785179828134_0.7135966700670546","host":"s3://npm-registry-packages-npm-production"}},"0.6.1-next.99":{"name":"@tiny-fish/cli","version":"0.6.1-next.99","_id":"@tiny-fish/cli@0.6.1-next.99","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"9c8f56ebff383c33eba674421bd98b68cc334952","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.6.1-next.99.tgz","fileCount":40,"integrity":"sha512-W3VosFM/m7b+UUBzJt82TIgFcF6Dqd1PQz34eLzMvvnhIpcJZAXr0JMJh/4/xSiaEW+FYEufOmXXsjsnix5s8Q==","signatures":[{"sig":"MEUCID4If+7B3Ok8Vuob4D5r/kSAxi7nbY8Pm2Km5U1wT/OrAiEAi3x/UaAbijH1z8kbT247xechIu/GEvolqKQ2UBhxvgA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":143991},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"4ad329c9bb28c90580fe88831676f1fa0f07cf9f","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","esbuild":"0.28.1","postcss":">=8.5.18","brace-expansion":"^5.0.8"},"_npmVersion":"11.16.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.0.11","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.6.1-next.99_1785192800793_0.5243755639827019","host":"s3://npm-registry-packages-npm-production"}},"0.6.0":{"name":"@tiny-fish/cli","version":"0.6.0","_id":"@tiny-fish/cli@0.6.0","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"d77a1d0ad9996450a5885b84b917c2d6cb973892","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.6.0.tgz","fileCount":40,"integrity":"sha512-ZXzm5oiSgd9X16ErlZjDE0GOBmqvMytuxj4ojEhSOWcnxlg0WiMX6hg9tQ31eg2RY74HZM3ixywDHWr7CnJP0A==","signatures":[{"sig":"MEUCIQC5LVTLvgmKuoBA77vxM/QoG9hqheas1SazTjC9YyYglQIgXWWheEyqgKrwJE99MxnMlKKDIp73yETeN+QvzIciwLo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":143983},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"4ad329c9bb28c90580fe88831676f1fa0f07cf9f","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","esbuild":"0.28.1","postcss":">=8.5.18","brace-expansion":"^5.0.8"},"_npmVersion":"11.16.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.0.11","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.6.0_1785192809682_0.8723327703405332","host":"s3://npm-registry-packages-npm-production"}},"0.6.1-next.101":{"name":"@tiny-fish/cli","version":"0.6.1-next.101","_id":"@tiny-fish/cli@0.6.1-next.101","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"daecd7e78db1c682721f79a330b1cd3e862d5e09","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.6.1-next.101.tgz","fileCount":40,"integrity":"sha512-BcN4fU0FZWS8ToJdZPije6LlafuEcQuvNcmPu3/12iQmpfMBCtOe72vFLgATxpGfhLOSrzqaa9Wp+3FiLz3/yA==","signatures":[{"sig":"MEYCIQDjpz4RsVvNmkt0iLb3gBiGyuaaslJmq2p663ubf+d6SAIhAJV1wZbGUq1IEd1IRw8vXCwxfXpbwR4xRhkFYzs+Vn10","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":144347},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"9ff96ca217cd7c0181302fffcc12aa6e18723c7f","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","esbuild":"0.28.1","postcss":">=8.5.18","brace-expansion":"^5.0.8"},"_npmVersion":"11.16.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.0.11","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.6.1-next.101_1785193625960_0.15704311520582026","host":"s3://npm-registry-packages-npm-production"}},"0.6.2-next.102":{"name":"@tiny-fish/cli","version":"0.6.2-next.102","_id":"@tiny-fish/cli@0.6.2-next.102","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"e39792f277c1fb39a6490b632bb4841fbc219eb9","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.6.2-next.102.tgz","fileCount":40,"integrity":"sha512-/A/+2EK9t4FIJ/zKx/bj1ZUXqLlH3wMd8IRbrXbYmhsXcbOw+sddGtUGlpTD/00I9lfniKwXtJYRF1uO2ZMi2w==","signatures":[{"sig":"MEUCIQDZ07PlCda8VH2Ej4YwbydOqCh9KdbFAnOjID2rtAkqGwIgNDMBsdCraqjxpc7/hEKNhrzUCCjEYr2NS8a/hNCDWGw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":144347},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"258f05bff145272594b5ba728a89295285fb7291","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","esbuild":"0.28.1","postcss":">=8.5.18","brace-expansion":"^5.0.8"},"_npmVersion":"11.16.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.0.11","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.6.2-next.102_1785196480969_0.14663123970809222","host":"s3://npm-registry-packages-npm-production"}},"0.6.1":{"name":"@tiny-fish/cli","version":"0.6.1","_id":"@tiny-fish/cli@0.6.1","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"6127b3e947d3d78977de004091ff4e93d5dbf9ed","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.6.1.tgz","fileCount":40,"integrity":"sha512-j9FXArseORUAuZw3RDSjR4jaYRwJvisr8IbihLuJBbngMwh/OPYXts2XX21va0ODXk6ebZyYarufQkXezNr7hw==","signatures":[{"sig":"MEYCIQDLauJpVzvM+3e3wsPs+WnbxQY/vXrCxKsSKvelp3QyogIhAOeR7sFWr50sbJtU0vGbHjGebECdwSKhHlvM/BIBDTm6","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":144338},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"258f05bff145272594b5ba728a89295285fb7291","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","esbuild":"0.28.1","postcss":">=8.5.18","brace-expansion":"^5.0.8"},"_npmVersion":"11.16.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.0.11","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.6.1_1785196692432_0.13125445366714716","host":"s3://npm-registry-packages-npm-production"}},"0.6.2-next.104":{"name":"@tiny-fish/cli","version":"0.6.2-next.104","_id":"@tiny-fish/cli@0.6.2-next.104","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"44a2e724aadfdd2d2c328f5fbcc75f55128abab5","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.6.2-next.104.tgz","fileCount":40,"integrity":"sha512-s+ZjBqE6Nzt7JHSK8aOlgVWWF4fHQLZRvCVPOd5wrmNXmHN1TmiqkPgTiZ5Rlfi8NpaKT9hXXQI5cfOZJLXlZA==","signatures":[{"sig":"MEYCIQCYJdHhFYy+JOwG4pMCuH63+noDLt07nnRG42jnR+XBDAIhAJ2+KIeFZB4zRlPZpZcmtWXuMhsAOdU/e2MyQ5p+5BZ9","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":147368},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"a86d4922862e8a838bf2d0901d55f657edaece89","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","esbuild":"0.28.1","postcss":">=8.5.18","brace-expansion":"^5.0.8"},"_npmVersion":"11.16.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.0.11","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.6.2-next.104_1785358377081_0.6759430957758628","host":"s3://npm-registry-packages-npm-production"}},"0.6.2-next.105":{"name":"@tiny-fish/cli","version":"0.6.2-next.105","_id":"@tiny-fish/cli@0.6.2-next.105","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"4945560a4b13ef6be93bf937390117748c40e694","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.6.2-next.105.tgz","fileCount":42,"integrity":"sha512-Oxljbl12S6/UFUZ617EAlOqSemz4cmDJh/MB/rncnbwAWVOFUmS4ju9PRsVkmHYN+6Bs8ukPDCxW7RFRlDLeRQ==","signatures":[{"sig":"MEYCIQCk2M2lPFt0fLi/1YZST9NNNGiCOR8+4mADGlgOTz3GiwIhAOp1MtVhifDyTgDK7EwxQR0PrEyGGeLH5HZkYtYSxpfp","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":158828},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"1107d7dfa67467a26aa00381b9aad282b3c3be1e","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","esbuild":"0.28.1","postcss":">=8.5.18","brace-expansion":"^5.0.8"},"_npmVersion":"11.16.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.0.11","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.6.2-next.105_1785360789529_0.8377362058604063","host":"s3://npm-registry-packages-npm-production"}},"0.6.2-next.106":{"name":"@tiny-fish/cli","version":"0.6.2-next.106","_id":"@tiny-fish/cli@0.6.2-next.106","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"ceaa5268ac0db76aa4a18e9bf6ad4ef1dc9e1902","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.6.2-next.106.tgz","fileCount":42,"integrity":"sha512-ch9YgY1XZj61++ftCjTI8EP7Yd3xbf6W3S8+kPNL04XJ609LgeG/LfirYjAoL8/dFa5KJgGflY5yULdgNTPe0Q==","signatures":[{"sig":"MEUCIQCIyIkrkf8HUF3hwIupfwAGfctIIG3eEMMYtuFkhxQPRQIgUOgV6CAcAj7t2Vt+wd0VtgVYIcN1zfiIBCK7gaBSpCU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":159459},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"81d6f40d096719042886b8e65ee70a6457e75a10","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","esbuild":"0.28.1","postcss":">=8.5.18","brace-expansion":"^5.0.8"},"_npmVersion":"11.16.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.0.11","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.6.2-next.106_1785362980123_0.5105510233666155","host":"s3://npm-registry-packages-npm-production"}},"0.6.2-next.107":{"name":"@tiny-fish/cli","version":"0.6.2-next.107","_id":"@tiny-fish/cli@0.6.2-next.107","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"9e1e5209c917311876a905ad0fb7a516674ae750","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.6.2-next.107.tgz","fileCount":42,"integrity":"sha512-0ItmiJRJqFBnDJdJiiIMrkDAESqpuMvqRFlVesrMzOsARxD769Gx1vqmaxrK6mPgK10pi7tuuT+EVIoRZy68sQ==","signatures":[{"sig":"MEUCIQC3343nS+opQmHEvlRaGrbRR8RtIFkFD2ABYtTElBid4wIgUGcEHhifc6CyeDEYQ8bV7v5b2U9clN3jG+M9JbfkQX4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":165424},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"fa0720ee2fa482d33fc0dff7f12c50041ea9eba6","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","esbuild":"0.28.1","postcss":">=8.5.18","brace-expansion":"^5.0.8"},"_npmVersion":"11.16.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.0.11","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.6.2-next.107_1785364187322_0.4470786888879206","host":"s3://npm-registry-packages-npm-production"}},"0.7.1-next.108":{"name":"@tiny-fish/cli","version":"0.7.1-next.108","_id":"@tiny-fish/cli@0.7.1-next.108","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"d0aa5222608dbc3fd2f35a714b3105165ffd4aa5","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.7.1-next.108.tgz","fileCount":42,"integrity":"sha512-W0BZypWx2bSx1J2Eml9q+6YSMYXgWkSqD7GVpUhArcAW+29HR4Th+OfJUU3bLDik5o3jXbbgMnbbBdVHF4e4og==","signatures":[{"sig":"MEUCIQCzMDW1YxDBTfzJa/D0fnO1CHjOfDct7gCDTNO01jjcAgIgYco/XeXY7TqTC+5sYSsewtlujNrt2YGDrHH2mVRvGhc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":165424},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"e6a4228f4058769f2fd8537ca12de4fac8e1c837","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","esbuild":"0.28.1","postcss":">=8.5.18","brace-expansion":"^5.0.8"},"_npmVersion":"11.16.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.0.11","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.7.1-next.108_1785364397188_0.3409469816096966","host":"s3://npm-registry-packages-npm-production"}},"0.7.0":{"name":"@tiny-fish/cli","version":"0.7.0","_id":"@tiny-fish/cli@0.7.0","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"b5e8403fc62d91ea4b9933f1942f0a18129466df","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.7.0.tgz","fileCount":42,"integrity":"sha512-DBqSSRG2rFQJsLeogByDJHfsQ+c2Yvc76GiA0iA7PHF+6GhLll5N1DUg56iJb+40jxvoRv2m4njxgxRn/KbE1g==","signatures":[{"sig":"MEYCIQDvu2z8sijV2l6l1OOyeOasWhcSyOTgptFX7s7CXd2c7gIhAKQeYw9EORvpDbdD4k6vKax+v2uMRgMPDkFoPE00oGiR","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":165415},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"e6a4228f4058769f2fd8537ca12de4fac8e1c837","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","esbuild":"0.28.1","postcss":">=8.5.18","brace-expansion":"^5.0.8"},"_npmVersion":"11.16.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.0.11","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.7.0_1785364432506_0.2991170191952697","host":"s3://npm-registry-packages-npm-production"}},"0.7.1-next.110":{"name":"@tiny-fish/cli","version":"0.7.1-next.110","_id":"@tiny-fish/cli@0.7.1-next.110","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"9f768a256af9d090736ecd931b6e2281914f5a5a","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.7.1-next.110.tgz","fileCount":42,"integrity":"sha512-gCgoLd4W03gyH6RHslmF21OJ3b6aR0g3Kup0JlRnLAtpsau+1QiI8kzAGjUh5LbGvxydTy6GpZ/gY1pZvvjv/g==","signatures":[{"sig":"MEUCIGuFa4OT0Bka9mHGuNe11j8+Z36RiKyfKbnDW5hOQJo/AiEA2U7xLrsh97iK5fVrBrJm/xIdG97wli07kUZvXGZwsxU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":165425},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"f51d3bb609302a7caeb2a3048e35f1382310f2d8","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","esbuild":"0.28.1","postcss":">=8.5.18","brace-expansion":"^5.0.8"},"_npmVersion":"11.16.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.0.11","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.7.1-next.110_1785447897148_0.5057654813426575","host":"s3://npm-registry-packages-npm-production"}},"0.7.2-next.111":{"name":"@tiny-fish/cli","version":"0.7.2-next.111","_id":"@tiny-fish/cli@0.7.2-next.111","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"0b903d88f09613afc188cdada08d78311073f7a0","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.7.2-next.111.tgz","fileCount":42,"integrity":"sha512-vzzE0dGmA6ozt6lw06qijlrj/PZWgUXnpzo9+gL1qjfqXMt7gIwRWZl0TpYuufaUJUlvTrGUmOmQOu6aORQATg==","signatures":[{"sig":"MEUCIQCeIkeolhb4/ggR101F//Qh0zFAMMDbc7xTnak9O+CxwQIgS8DhbrjTobXBXii2oRmEL+MVT19cnujEgmLVnOnwLOc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":165516},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"27751dcfe7092fb51568bbf30438a58f75c4ddf8","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","esbuild":"0.28.1","postcss":">=8.5.18","brace-expansion":"^5.0.8"},"_npmVersion":"11.16.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.0.11","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.7.2-next.111_1785451885906_0.541261452015724","host":"s3://npm-registry-packages-npm-production"}},"0.7.1":{"name":"@tiny-fish/cli","version":"0.7.1","_id":"@tiny-fish/cli@0.7.1","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"e2a9f15d3082da678375a664db0beb8f46d8f183","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.7.1.tgz","fileCount":42,"integrity":"sha512-hemyVrzRe2Y+wrjahONWBPw4KnAVzbuuqtpLRV8WdyTkx/9pjcOTEhQWIJYYby28L+Q6BLfVh4WGsi/2PixnLg==","signatures":[{"sig":"MEQCIClAmWeysgup4dC98qJS/HtPzsTfnJ5RTIgh8TlG1E9WAiA66T6fRpiU35gqgZCyN2W2gWgzPj+x34J/z+9TLG+pGw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":165507},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"27751dcfe7092fb51568bbf30438a58f75c4ddf8","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","esbuild":"0.28.1","postcss":">=8.5.18","brace-expansion":"^5.0.8"},"_npmVersion":"11.16.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.0.11","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.7.1_1785452748579_0.430302479940071","host":"s3://npm-registry-packages-npm-production"}},"0.7.2-next.114":{"name":"@tiny-fish/cli","version":"0.7.2-next.114","_id":"@tiny-fish/cli@0.7.2-next.114","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"2fa093802251cbeee1007c80f60a6d4a7c65647a","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.7.2-next.114.tgz","fileCount":42,"integrity":"sha512-VvrvbzCYhaLZAAMd1ry5MJ7OUan5MELLdVnbp6XHpSLkZyZx5JvOHSPt9pwNJcEFRiqIJJnyYAPvff0F9sadMg==","signatures":[{"sig":"MEQCIGS1oF3vfgwf9EnFtCz5Kk5jbaPYjn1ex71qf5ZPSAgFAiBlBHE5NYZ2d+xGYP2Z0T+36rEe4grP1NWyZ8a1+JqGdQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":165516},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"84fc42c46f92c7ae20e05aaae31e46a52c174475","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","esbuild":"0.28.1","postcss":">=8.5.18","brace-expansion":"^5.0.9"},"_npmVersion":"11.16.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.0.11","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.7.2-next.114_1785777301478_0.8268783616867419","host":"s3://npm-registry-packages-npm-production"}},"0.7.2-next.115":{"name":"@tiny-fish/cli","version":"0.7.2-next.115","_id":"@tiny-fish/cli@0.7.2-next.115","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"e401f35b8bbb44ee7e63426f02517930e1a38e72","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.7.2-next.115.tgz","fileCount":42,"integrity":"sha512-bGMHXtLeSRQ2b5/a0onCH0pC7CoGe0oo1G8cI2NMbBTohat7PTK6I2QYDX1DA4Evw8bRjWtnJlfJSWDWv6nS8g==","signatures":[{"sig":"MEYCIQDQJvaLsQ9OlBYKMSzLF0UnQ+w7uI9yd22QbqjxlgOngAIhAJK3TaA5ajODh3FCwRXiNFK8kO+qVa6yxgUpR4u8NwYU","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":165516},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"391d45f63e304fe7ca17466eadb8a9ead8e4bc4d","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","esbuild":"0.28.1","postcss":">=8.5.23","brace-expansion":"^5.0.9"},"_npmVersion":"11.16.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.0.11","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.7.2-next.115_1785780048828_0.13009926022145213","host":"s3://npm-registry-packages-npm-production"}},"0.7.2-next.116":{"name":"@tiny-fish/cli","version":"0.7.2-next.116","_id":"@tiny-fish/cli@0.7.2-next.116","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"6a38e7e3bad6e3f7544cbf26f9088385ec987142","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.7.2-next.116.tgz","fileCount":44,"integrity":"sha512-IKBb2TDwCLq5TCsqanTbtwEQd3S8sflhw9kR9j0puI3aHStRR1gCKxuZ++VcBpDAobTfqsEbpXmZ0oyCkAB58Q==","signatures":[{"sig":"MEUCIHmjRSRMUObFqJ70R29hOI4Ly+h41mvqd9ye5ZZ+kt5LAiEAkirjNzJNxlixiKFykATmKdVkBao6lvK46URsFdT5Ovg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":169048},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"0744f2b8177603eade7cab030c8aec32e001cecc","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","esbuild":"0.28.1","postcss":">=8.5.23","brace-expansion":"^5.0.9"},"_npmVersion":"11.16.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.0.11","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.7.2-next.116_1785787533734_0.6913855553031294","host":"s3://npm-registry-packages-npm-production"}},"0.7.2-next.118":{"name":"@tiny-fish/cli","version":"0.7.2-next.118","_id":"@tiny-fish/cli@0.7.2-next.118","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"309325ad1e9d2d729617df08cb119745ae2c055e","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.7.2-next.118.tgz","fileCount":44,"integrity":"sha512-GGXPzBlxCV6iGNute3r9GBd39Q1OmFJhetzs2WusA5+I+PSPvRfNLZKnlW44vY/ukqumkMsQ/w0MfvbRd4eI4g==","signatures":[{"sig":"MEUCIQDJdxgNPB9z8aQti4J/mI/ZE3bEfeE3tGoXmd2NHGGolQIgCu+sEhhjMpuQsbqV9D7gaFnSzL88n5pYHx5ZocbpkW8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":169078},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"b0a2f776267b853d831241653f7719a355dec92d","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.16.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.0.11","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.7.2-next.118_1785789415507_0.0840896065885568","host":"s3://npm-registry-packages-npm-production"}},"0.8.0":{"name":"@tiny-fish/cli","version":"0.8.0","_id":"@tiny-fish/cli@0.8.0","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"4004d6ec03dd8a44c64fa9e8603a2ad1f3eda168","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.8.0.tgz","fileCount":44,"integrity":"sha512-43SnY8hP0XhIZ3QSP6G40ZuMwvy29pPYKUhG0euSJ1RHe8h1oND1FxgcS9gpcj/ek/OaEAhTdoSP0Ucxdghr/Q==","signatures":[{"sig":"MEQCIEoC2ms4SrjsSGtGZUcD1C2tEE08N0SzoBHtgl6TLEuQAiA5NuzEvTFDuwUwWkcCjdzXolm/d9u6NGXyDxzdLsvAyA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":169069},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"fef5275dbdf944ca6a0be3f6776dd3a556f4c5e9","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.16.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.0.11","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.8.0_1785861239584_0.948701995509583","host":"s3://npm-registry-packages-npm-production"}},"0.8.1-next.119":{"name":"@tiny-fish/cli","version":"0.8.1-next.119","_id":"@tiny-fish/cli@0.8.1-next.119","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"8536ce93d609feb9a1b20d1f1c69879140c7b96d","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.8.1-next.119.tgz","fileCount":44,"integrity":"sha512-YF1lQfrSXDqeaksVdKtWb6zjlb5Imjt0dLwb63XOhavfdz3kHGXqRQcCkpiKXXhG6bRcUmeuP0Al4s6Lo4JKdw==","signatures":[{"sig":"MEYCIQDK0UErqV+loNQkvwf9ACQoixgtGpluERMWIdizXrbW3wIhAIgmh2WYamHxwadBCDfU38Mp7zAStHTJHp3l6fUaIZnI","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":169078},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"fef5275dbdf944ca6a0be3f6776dd3a556f4c5e9","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.16.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.0.11","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.8.1-next.119_1785861249271_0.9123818162238482","host":"s3://npm-registry-packages-npm-production"}},"0.8.1-next.121":{"name":"@tiny-fish/cli","version":"0.8.1-next.121","_id":"@tiny-fish/cli@0.8.1-next.121","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"175eefdc15e3b36be76e9f4599fef47cae1cd719","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.8.1-next.121.tgz","fileCount":44,"integrity":"sha512-GttcrcwG5MF+5XmNw/DZa5giFfui0cdtKvO0tCfxTq4anDkTY8nlAdoDSUPROYbzV/aXvXEjIbO7bb8ukSpyyA==","signatures":[{"sig":"MEUCIQDzaWsVVT/fqcJjtO36HbrrZel47zo8dsWgeZcmzishMgIgNtJ8bYYnOGAQ/W1ajlXmz0CcHyim5uAXZ3XTIrJ/pJs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":170504},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"bb001fcefb5284bedbd633c7a338b4bcb793bc5f","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.16.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.0.11","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.8.1-next.121_1785864367375_0.8028336966011729","host":"s3://npm-registry-packages-npm-production"}},"0.9.1-next.122":{"name":"@tiny-fish/cli","version":"0.9.1-next.122","_id":"@tiny-fish/cli@0.9.1-next.122","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"b6511739cae53ee05265ce838f16ee5c6620f6e4","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.9.1-next.122.tgz","fileCount":44,"integrity":"sha512-WVTN8mzSxvjOkze/00Cjt0hNg1RaKgVVJdbBiRceGXeQ1He5CtqFtRNPdUFFoCSBF1wC2HAqj1D37gvN9TNl8w==","signatures":[{"sig":"MEQCIFkvv3F9xNil58f7jvPUAu3XMVS1E6Slg1rXW1+pt9JQAiA0ifKLfJAzRgOvlCC+1hyqb2/W9aYg7OTr0Tv0+lawag==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":170504},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"2e35e444a51d55456a9ebcbb076710517c8246da","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.16.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.0.11","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.9.1-next.122_1785868041922_0.14702784042938277","host":"s3://npm-registry-packages-npm-production"}},"0.9.0":{"name":"@tiny-fish/cli","version":"0.9.0","_id":"@tiny-fish/cli@0.9.0","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"36c580a2bdce981803d15793619b8bf47939acc7","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.9.0.tgz","fileCount":44,"integrity":"sha512-7WDME7TuoXnzE2mttQGnF3y3IWOZ62DEbHAYDS/gzHbdpQkiw0n5UGbCkmj0ZvQw9nkA8eKOGhnD+A90CP9hQQ==","signatures":[{"sig":"MEYCIQC/oJ+CWYgihAQsZpRzCm8UfnVKbu1/kOHhGttLDRijXgIhAPKsCiVYE6QtBHohPvDYfliz6WvHbVAh4o7Y7xccM9lr","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":170495},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"2e35e444a51d55456a9ebcbb076710517c8246da","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.16.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.0.11","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.9.0_1785868164621_0.30510037046544825","host":"s3://npm-registry-packages-npm-production"}},"0.9.1-next.124":{"name":"@tiny-fish/cli","version":"0.9.1-next.124","_id":"@tiny-fish/cli@0.9.1-next.124","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"4b37e0b3217d1c4ffc5ef89e53432b44a72ca00e","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.9.1-next.124.tgz","fileCount":44,"integrity":"sha512-CFMkO5idunLsdkfxRFCOoZps8tnDqf5e4B3t7ulAxYUoRnPjdQKajJF+jroUVYHrBtxrX6smTnQtgwNEoRiqqQ==","signatures":[{"sig":"MEYCIQC4JmSEJYPujG3VoU8FLU1SiuAiiJdVcHHf8qURdBNSGAIhAJPngPRhjZO1Gs/y6g3mrWgkbJ1tQM7HTnAQEwucigdQ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":170842},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"813b4dfec7a72f1f0771237798c63a1708cb5cee","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.16.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.0.11","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.9.1-next.124_1785879058561_0.08568795181211741","host":"s3://npm-registry-packages-npm-production"}},"0.10.1-next.128":{"name":"@tiny-fish/cli","version":"0.10.1-next.128","_id":"@tiny-fish/cli@0.10.1-next.128","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"7652fbd47363382bc5d2302ef9edfb044e4f198e","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.10.1-next.128.tgz","fileCount":44,"integrity":"sha512-bT7ieoyuJRyIwddCAvA+Pdj8eD0sxb3HiEHQzeUjNnAx4yIQ8icwlYgixkzkpvUgL5MaEwks7IaNmju9rqUqjw==","signatures":[{"sig":"MEUCIQCU+NuwJCya8rZzsLUR8dfO0+cWPqFf+xKwmoO/9QoDiAIgFHQOMd0dX9W1ICBDqubrwXVlvTIsQjJGMc3QHrfARkk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":174589},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"65276283fd17f71dabdaf6edfe15e57d2355e95f","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.16.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.2.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.10.1-next.128_1785880456094_0.6900999821921152","host":"s3://npm-registry-packages-npm-production"}},"0.10.2-next.129":{"name":"@tiny-fish/cli","version":"0.10.2-next.129","_id":"@tiny-fish/cli@0.10.2-next.129","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"b16c1ad30bf0b528f42f7bce5eb8bb7c9a396b77","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.10.2-next.129.tgz","fileCount":44,"integrity":"sha512-hTFfiV4k6nbpdBNPPCj5wCIXSS/QGvIvb51Ox3BREGiJz6f/YxzMfA7GC/dz+qLDGmJdph/j47zaPrkvzmQjAg==","signatures":[{"sig":"MEQCIHcjV1XUQmtBR/OsmbIMuAjSEehyJ1QfPVd5sZ9BVXkKAiAU0d6LfYYErM3P1bkIcIqekKVSxtIFOXSE/wFoPgCheQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":174589},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"f373ec13e87ed4501f078f360024f40894bf8ae7","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.16.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.2.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.10.2-next.129_1785880964584_0.09640493006835715","host":"s3://npm-registry-packages-npm-production"}},"0.10.1":{"name":"@tiny-fish/cli","version":"0.10.1","_id":"@tiny-fish/cli@0.10.1","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"13a560ca29012921b7aab5d83c931b8584c509c7","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.10.1.tgz","fileCount":44,"integrity":"sha512-X5Sd5XbDcOdMgKvUlS0Agl7qI2MVSxgaNFVtGKww+xhotIXrNXOIUOtDv1P5NDhaubsXFlOXHPL9TGpduVEDYw==","signatures":[{"sig":"MEYCIQD0LiceSvfy4xtjeJG7w3w0VY/+fMWgtMt/NPFG8EgH0gIhAIHBCoXkobUiqRt1zPNi4rDv4G4f0cDTbNRRQJ2bWfmj","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":174580},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"f373ec13e87ed4501f078f360024f40894bf8ae7","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.16.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.2.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.10.1_1785880970802_0.28767029754120554","host":"s3://npm-registry-packages-npm-production"}},"0.10.2-next.131":{"name":"@tiny-fish/cli","version":"0.10.2-next.131","_id":"@tiny-fish/cli@0.10.2-next.131","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"213d0ae953563c8729c60751e272345e95e09cb3","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.10.2-next.131.tgz","fileCount":44,"integrity":"sha512-/8S+yQhwSQPQ3PGtEkG3/7o7+rrW2IMLS4rr9nbWBEWVk/nSKtqdAW0F1HphjDGBJkp1xQaBzWaUqUuciWUV+Q==","signatures":[{"sig":"MEQCICy6n32CGmGcv9XTiBaG9WMoh4aP+HbFNO6TKdeNk1FhAiBO9BTYaTLVT6DM42mPffttxZsTZP2yCIycgYVSdwogCQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":179539},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"13082c11a6d672c598947aa0932c4b00d8f9b3b4","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.16.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.2.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.10.2-next.131_1786001216177_0.6028467186284554","host":"s3://npm-registry-packages-npm-production"}},"0.11.1-next.132":{"name":"@tiny-fish/cli","version":"0.11.1-next.132","_id":"@tiny-fish/cli@0.11.1-next.132","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"c2c433522f3ca4f27848ba2062143dca7addf330","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.11.1-next.132.tgz","fileCount":44,"integrity":"sha512-UOLiNx5EGA76uA4fKAkcuvpMYfZYQSVD2dg3Oa2WoNeMUAIETXLJOo75Y286wAI6ShdwShKelMoHze80YB7htQ==","signatures":[{"sig":"MEUCIHDmTuYgmrYr6vvve4NQSohR/0KBDCqWldkpr5F3NBBSAiEA1z3f+/gtOKQPZQzKXrS6igDTPZ/UHHStwTPZ6AAV4ug=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":179539},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"f507241d34a678d9398197f3d4d434027eec84ea","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.16.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.2.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.11.1-next.132_1786027840001_0.4223233180688528","host":"s3://npm-registry-packages-npm-production"}},"0.11.0":{"name":"@tiny-fish/cli","version":"0.11.0","_id":"@tiny-fish/cli@0.11.0","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"298f49a2cfce50490c2ac95c17f87ec522d485cd","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.11.0.tgz","fileCount":44,"integrity":"sha512-3oTur6OEcNa05NtO2cQySeny4ssm121rm8uL0kWX6X+pqtx89NaexYL9Nmhs3Nf9mQ6YFprcdMhbX7Rq0ABKvg==","signatures":[{"sig":"MEYCIQCXmQ95i9nbkjnXOhvEVqwKw+smZNmpBnbPE6SKn7K/cQIhAN2MVdvXQZwD+hzOSmZLvcB/dQUfEiK8cQE9fNdIsxnX","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":179530},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"f507241d34a678d9398197f3d4d434027eec84ea","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.16.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.2.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.11.0_1786027846531_0.09367592669294811","host":"s3://npm-registry-packages-npm-production"}},"0.12.1-next.135":{"name":"@tiny-fish/cli","version":"0.12.1-next.135","_id":"@tiny-fish/cli@0.12.1-next.135","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"803af3b032232b6bbb5cedef4ad0a0d13f74f9d5","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.12.1-next.135.tgz","fileCount":46,"integrity":"sha512-j1/XtVuPcUYVuOY0xKfOzVfODQotY3XqczCdpmY9NYnTgui0cSXzI+rE548fbzFK1k/bVka5lokCnQQWMXNmVw==","signatures":[{"sig":"MEQCIGE8OXJCtd74DGS76PD7efgNY7P7WzDB8ASzfeUK+siSAiAd43QIl5ex8hnk99fVNN3bk9SvjVadJIRYsHieHf2Uqg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":188447},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"34c3907e79571d216f04df706938b018c5321139","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.16.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.2.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.12.1-next.135_1786060964144_0.9598109015796128","host":"s3://npm-registry-packages-npm-production"}},"0.12.0":{"name":"@tiny-fish/cli","version":"0.12.0","_id":"@tiny-fish/cli@0.12.0","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"1c5b8aa7d564407442902119bafd9bdad2242b36","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.12.0.tgz","fileCount":46,"integrity":"sha512-Vs9FK7DsUHYTPfnj9Ks5SE5X3JumCGZJdpemJTuhhmB7RLYTyAvQfoDsXBX+fCDd6yz85slv+y7n3J4nVSQqQg==","signatures":[{"sig":"MEUCIH/l+Y2c8SK1iPfzpNt/faiKM9inW2BcrdiuY900fOBaAiEAoWh/tFFTEqmMTE8qwr2vAafSqEKTO0Cle9vB6PuVffM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":188438},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"34c3907e79571d216f04df706938b018c5321139","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.16.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.2.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.12.0_1786119692287_0.4547523925106258","host":"s3://npm-registry-packages-npm-production"}},"0.12.1-next.137":{"name":"@tiny-fish/cli","version":"0.12.1-next.137","_id":"@tiny-fish/cli@0.12.1-next.137","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"494261315464a2b531013ec9a4c02412125d3ca4","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.12.1-next.137.tgz","fileCount":48,"integrity":"sha512-qVCHnkikp1Jwh+edW3WWHM2aG8UfRUNHoIy6DBqODTM71xeFMNrifU8+dCYoOd8NH/VImWEQHkPC9TGpbWLF/g==","signatures":[{"sig":"MEUCIQCFhDx5wFNYlEEJ77cJjOIGY5dIEHOdUSCoTjTdUIRDIwIgGpiIPZcpfxHc7zvmUGGpDH7AGBG1vUsM0dBavwrt+gg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":196821},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"12d7a6f952b729e02b9ef30bee1bec5aa4259987","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.16.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.2.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.12.1-next.137_1786120399358_0.7607218378456893","host":"s3://npm-registry-packages-npm-production"}},"0.12.1-next.138":{"name":"@tiny-fish/cli","version":"0.12.1-next.138","_id":"@tiny-fish/cli@0.12.1-next.138","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"0a67d278fbae58f3fe72af94fb2f2a1827d67b26","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.12.1-next.138.tgz","fileCount":56,"integrity":"sha512-bY0ifrMEI13qDnIq06yOjGuop7GT258i4ohAbat1O/x4/bsGD5rHC0E87XZS09e+JcVs4L2dTYOmobRVH1mMjQ==","signatures":[{"sig":"MEYCIQDaIkU/xm9yygYJnh3kuk9zFEqpUhP2BStS9/O4H1BZgAIhAIlUSIPi2JxlY5rJANQyJ+uv5BeD7A4yLy0Ag/NBJYTn","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":210314},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"ce07a39371ed7944246022f607ec2db40cc17056","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.16.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.2.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.12.1-next.138_1786122148496_0.6369799730128385","host":"s3://npm-registry-packages-npm-production"}},"0.12.1-next.139":{"name":"@tiny-fish/cli","version":"0.12.1-next.139","_id":"@tiny-fish/cli@0.12.1-next.139","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"c9f0b3c96c2809e24a444a77c46496bb890f30c8","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.12.1-next.139.tgz","fileCount":58,"integrity":"sha512-TWbvhsnTlVYyoaj90uXPAzUnwqlsFCAJZHcuLCTTGBywv/fheX9k2tSn5L9BWiLN8EEaMWlh+jaUmwd982krsg==","signatures":[{"sig":"MEQCIEZFGRMTDioa/m/ADhnDk8V3KiH2ARyHtA/61c/62bWTAiByhfQ6S8mkuGRaZGOrKTpkHzZ+LPLEJ/cIQPRsRcFBqg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":230302},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"12b9cb968a023d340c1cdcb799fce9ebddfde55c","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.16.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.2.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.12.1-next.139_1786128406317_0.9067614539146984","host":"s3://npm-registry-packages-npm-production"}},"0.12.1-next.142":{"name":"@tiny-fish/cli","version":"0.12.1-next.142","_id":"@tiny-fish/cli@0.12.1-next.142","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"1b9e9bc1eff36e6ae5991cad2793a2797c88320f","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.12.1-next.142.tgz","fileCount":56,"integrity":"sha512-7cO5dTcbtwsrDXkklFV9EunaDwSrmVxvu3k9lPVvaADI75Ipa/oW2TBbCM2irZC9olphVsWkBjcdn/EblaWdTQ==","signatures":[{"sig":"MEQCIFZM6HQ1RX2V3HpX+BRhXRKUnLFekdKnm8A+yQYzf+wrAiAsJ1CxCn7E9qi0t+x9VXPdu+3+F5FrMON6kxNSwN9yYQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":225635},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"29c71e4e0ef64c0d00ae8f068c724cccf4f672b7","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.16.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.3.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.12.1-next.142_1786139531355_0.21439432483410736","host":"s3://npm-registry-packages-npm-production"}},"0.12.1-next.143":{"name":"@tiny-fish/cli","version":"0.12.1-next.143","_id":"@tiny-fish/cli@0.12.1-next.143","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"7f0e5799819eefef9f74640918df8d2082523ff4","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.12.1-next.143.tgz","fileCount":58,"integrity":"sha512-K8zqOPxqmG7JJOWkwkFmaz6JKhiwrNV7TyHE2Rym24w33UB/0umgamEZa3xn2crKCgAb2/M+SEoo/aAgfk2vxA==","signatures":[{"sig":"MEQCIBCOOkxkYBjBaPwrR20DQlq1tAiq1SFORlDtjnd9cXEkAiA7dG+40ja8RJRr49qm+Y9fHE4YPqnH9Ys5SOm2UD+FmA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":229387},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"cf3944078a5365af795f1e0e7d3565380748b13a","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.16.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.3.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.12.1-next.143_1786139970270_0.7036945732199933","host":"s3://npm-registry-packages-npm-production"}},"0.12.1-next.144":{"name":"@tiny-fish/cli","version":"0.12.1-next.144","_id":"@tiny-fish/cli@0.12.1-next.144","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"53e3dced82545a9a2ec636973eebbfbd12bee4e3","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.12.1-next.144.tgz","fileCount":58,"integrity":"sha512-IWKZnTnVuXE/98D77UdYRpKrhZc9kbI57HDrv1uJ2yXdtDzr32IgZmpA2xhHSvsyvRhi/gLEFnfj4jPAeAlnQw==","signatures":[{"sig":"MEYCIQDy3PbTD+JNAfS6/El5Ab8nYnBu36b0kpdUqt7ynGRNSgIhAK5SBZ1KJ/LAQjo6W8hsNJS59R/IuBDEJ14uDFIkj3w1","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":229633},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"369fba17b8b5d42a4f2547c36a642645ea951d53","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.16.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.3.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.12.1-next.144_1786140694474_0.8519263761853004","host":"s3://npm-registry-packages-npm-production"}},"0.13.1-next.145":{"name":"@tiny-fish/cli","version":"0.13.1-next.145","_id":"@tiny-fish/cli@0.13.1-next.145","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"e214e180a3f5f976823d1baa6985a0890d9bcc0e","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.13.1-next.145.tgz","fileCount":58,"integrity":"sha512-/AYz7k7u6lkwF/sq+1AViJtGJLjxnMPEOfG3Sk6Mgfgd8pvENd21RTw2lD1T4pTG4p0ytLiMIXgwSK+QSkFEyA==","signatures":[{"sig":"MEUCIQC+ZzMj0cCF++z8rRh7Oli53c+Vcqu56rKAvHF/Zw7yZQIgVKNA9N1EKIS2UJPYZ1RmPwLPQ+9pT+GMSokb1T4iayQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":229633},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"99b66ab6bfffe7da1e663bb77454adc9c25bc2e5","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.16.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.3.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.13.1-next.145_1786141588998_0.5300678662754219","host":"s3://npm-registry-packages-npm-production"}},"0.13.0":{"name":"@tiny-fish/cli","version":"0.13.0","_id":"@tiny-fish/cli@0.13.0","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"dc61d1df8876a07f13275f0694d9adb194e53421","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.13.0.tgz","fileCount":58,"integrity":"sha512-KmVDY6jPxyv5DJ/YQunN/pS8YuGA3j1ctXTbOjo/aRJinYNiD3tUPpCsrk3mFrxxxXTFelv2htYrIcWFU9TeyA==","signatures":[{"sig":"MEYCIQDu1DCqpQrgJexEC9i6AD2BZN86LZnqK8NqEoAVFHdDwQIhAL9jnwE2W9/lNBmLF/iw+myIlGf8If//RvXNBJ8n7Jib","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":229624},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"99b66ab6bfffe7da1e663bb77454adc9c25bc2e5","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.16.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.3.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.13.0_1786141620255_0.0497139240376836","host":"s3://npm-registry-packages-npm-production"}},"0.13.1-next.147":{"name":"@tiny-fish/cli","version":"0.13.1-next.147","_id":"@tiny-fish/cli@0.13.1-next.147","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"21ecf9da16223607777dfede930242092a9a516d","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.13.1-next.147.tgz","fileCount":58,"integrity":"sha512-0J06UIpOgIwg/3BQMN2olNhMQucbBVcXLLcWJE/k+mRJHYRHLF/W2qU+EBbGIQLag93h5kCeakHPVok5zumv7A==","signatures":[{"sig":"MEUCIQDcnt837is+frrrQCX0QknlTGNeji5BOjDuktG7fJAcOgIgDY3T9bjTw0riOnwbNRneq//oa1LWzZQiQOITWV0RecQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":229857},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"6abb79393f9d330369b808e2a43375e10657eade","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.16.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.3.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.13.1-next.147_1786141824892_0.8998443851111038","host":"s3://npm-registry-packages-npm-production"}},"0.13.1-next.148":{"name":"@tiny-fish/cli","version":"0.13.1-next.148","_id":"@tiny-fish/cli@0.13.1-next.148","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"36a563444602ed7b9f70da7b77d36341396ead95","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.13.1-next.148.tgz","fileCount":58,"integrity":"sha512-Mp/xnXJg4vRJj9qycqsuakCafKAk7IlFVs9wAoaEVszkFmDY4HHgEnUSX65rxesmalRV88+foPGtVfXbgaWIvA==","signatures":[{"sig":"MEUCIB31xPPDK0pl7dlYcnpAasO4IohhoYtqjTh+Mgg6fgwgAiEAqPOfpZh1B6g+sdKGK6YDAmy7gqa+YddvIgx8sGeBzMo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":233025},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"0bf22f8ae8560b2c82e7a4d22725deddacdeaba4","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.16.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.3.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.13.1-next.148_1786381296122_0.18888987207078123","host":"s3://npm-registry-packages-npm-production"}},"0.13.1-next.149":{"name":"@tiny-fish/cli","version":"0.13.1-next.149","_id":"@tiny-fish/cli@0.13.1-next.149","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"3d500b20df6085e29769171db999a98b48dd3008","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.13.1-next.149.tgz","fileCount":58,"integrity":"sha512-FJeLIVrxLY8huIK+CIweyLLh2C08sjuvHcOxLtV8pFTY29Tf6R2GhKJBL8QXpfLKaP2qW+lxp5LSeVIyn5Y8Ww==","signatures":[{"sig":"MEQCID/achDFKHF+yZKzdvX0DF9EFYWIN8XiyoDROpBttVfAAiAuLv6U65lOZVwa1uk5q5tM1WlBr7DcuR3U6ck34TNF/A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":233083},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"f17923b974449e669f154b920b874790bdc66c9c","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.16.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.3.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.13.1-next.149_1786393178176_0.8819580351757974","host":"s3://npm-registry-packages-npm-production"}},"0.13.1-next.150":{"name":"@tiny-fish/cli","version":"0.13.1-next.150","_id":"@tiny-fish/cli@0.13.1-next.150","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"5f4fc88d63757b438074293a5a2bcdb4700ac9d6","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.13.1-next.150.tgz","fileCount":60,"integrity":"sha512-d38dWrWgNDG+hPn1anTfgPvuW1BE8S9bueiqTLH3iOOipgNwfj6DKfnOz7KfP4Kd7H7jNquzh/lHrP5wCuuBcQ==","signatures":[{"sig":"MEQCIEkLtvSS3qjal2jBsQRC0pTTslJKDq92WBMEsxtFJYMgAiAd/GlaCsAwiUtp+BdA6oRGNaeFxDh7TFVbVS0PX1KDjg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":238691},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"db658aa4888e63c05c238bf22ddf01cec8d5941e","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.16.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.3.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.13.1-next.150_1786394978904_0.15447531733238007","host":"s3://npm-registry-packages-npm-production"}},"0.14.1-next.151":{"name":"@tiny-fish/cli","version":"0.14.1-next.151","_id":"@tiny-fish/cli@0.14.1-next.151","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"91bf3082f19bb181488af0a16a146861ee67e9a9","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.14.1-next.151.tgz","fileCount":60,"integrity":"sha512-iw4QFywFEavRhlZdHU0wjZW8cpGjfghVob8of0x0K+tlOT78BVoLV/C1akKjBc8qyYzzfBz94G/3OGP8jLwE+w==","signatures":[{"sig":"MEUCICpP5PU1Y8xKm1Cxn/5ELRhJ/tE1PhLmIZQ3KoH0kgMnAiEAltluDrh9nXWP+05cmQx5T7ibDyBTA/n1EOtp/dKdnlc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":238691},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"2f8df5d0ff008c350d869792359a84823f53183b","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.16.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.3.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.14.1-next.151_1786398773362_0.42411561903546424","host":"s3://npm-registry-packages-npm-production"}},"0.14.0":{"name":"@tiny-fish/cli","version":"0.14.0","_id":"@tiny-fish/cli@0.14.0","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"9c17040e586d97d40511f3ed5dba6d39196b85cb","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.14.0.tgz","fileCount":60,"integrity":"sha512-qtmL0csRInrLUOWE9qMFBoaskJHV5pIoQR6mFdUOA8gVf/LHx+uHiWCIM8/pSfwUQp+zBICpkbIkAewHU/v0xQ==","signatures":[{"sig":"MEUCIQCc97x66PrazePFdvgqvRDo5BPFy3/ocegOSZtmw69qbAIgf+0tOja9tUXgP3wTaYtPBgNMQhSR5jvjjUoODFk1pT4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":238682},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"2f8df5d0ff008c350d869792359a84823f53183b","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.16.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.3.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.14.0_1786398859059_0.7834534841156391","host":"s3://npm-registry-packages-npm-production"}},"0.14.1-next.154":{"name":"@tiny-fish/cli","version":"0.14.1-next.154","_id":"@tiny-fish/cli@0.14.1-next.154","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"fd1a91512cdcca90d059ca90633f6867d83b729a","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.14.1-next.154.tgz","fileCount":60,"integrity":"sha512-XxKsGOU3YqsDvmk9kFxLZUkjazLNwrh30blGzcF6n59o+JSrH97ic+f/VbJbomHqFSHWLY0enHM4cODlHcxpwg==","signatures":[{"sig":"MEUCIB+84WqpfHtN/rSZnCeyRBTLomaORanu0mHQf6nbtRMMAiEAjOy8G4MYYv1j+bVAT2WZZNXjzprW5xVxt6Z/dVuD1ao=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":241809},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"c3c3e5be5c58cd430d007a976833d5ae5cb0bd6b","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.16.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.3.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.14.1-next.154_1786405779189_0.5981907815527827","host":"s3://npm-registry-packages-npm-production"}},"0.15.1-next.158":{"name":"@tiny-fish/cli","version":"0.15.1-next.158","_id":"@tiny-fish/cli@0.15.1-next.158","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"859304ae292df67358c323a23b8f398811d3a09e","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.15.1-next.158.tgz","fileCount":62,"integrity":"sha512-xtnT8QNwwg7o5ZiCjyOvANrQ/uSpW0zAXUqvbV43tOZgv75WUy2eMb7+DXK6KHkXaIxvcfwQiKyUidJ94pP3iw==","signatures":[{"sig":"MEYCIQDOUC0Bdmb3TAF9WM0baB6kglB2pua4s2ewquft8sEinwIhAJGJwEqI2kACBY+PdmeJjg5fSEr3dSt7Xx4vxWw0xA9Z","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":257053},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"bbc984648cf6d747adbec715a6f05518ae2f20fe","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.16.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.3.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.15.1-next.158_1786477430283_0.23718718260164673","host":"s3://npm-registry-packages-npm-production"}},"0.15.1-next.159":{"name":"@tiny-fish/cli","version":"0.15.1-next.159","_id":"@tiny-fish/cli@0.15.1-next.159","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"da11ccb39194999a7fb7402e46a45605e5a4761e","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.15.1-next.159.tgz","fileCount":64,"integrity":"sha512-F4Ql/pfcew6NntMN6OLdW+a28h1yjnmEyXrEO+9/eqeR2uJZvZ9FihjbKN9wTx0PLn4ZjYPnYJsPIQ6RPE7ifg==","signatures":[{"sig":"MEYCIQCHgco3JJpGVhuYzwZPAdLCTadTNNeSDZosN8srbEjUeAIhAJWCxBjWYHcp6YCDsbA30WA5uUlkoiLgSKeYsW2rNuou","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":263674},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"6b528c7a91b0503c1c6b9e2ddd3f9bb7918f8ad2","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.16.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.3.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.15.1-next.159_1786477673017_0.19652454562724508","host":"s3://npm-registry-packages-npm-production"}},"0.15.1-next.160":{"name":"@tiny-fish/cli","version":"0.15.1-next.160","_id":"@tiny-fish/cli@0.15.1-next.160","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"df36d8456aef776b0f1a91270eb9e5c63f0cc735","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.15.1-next.160.tgz","fileCount":66,"integrity":"sha512-EOYxtlxN2TbM+DDHCkVkUDmsOP37XWioRkgMuj1rPNXUiAxVAZpbKvoz7w3kggG7iKY58Rnu3Gd8oY6iKQBSyA==","signatures":[{"sig":"MEYCIQDZVzygSfuC3WSYerNg3iDMyXfMh3UByZhqisfvMljkyAIhANFfAyHRZLn8tKiZ2BrQ+lKsy+zi82UHtJyFVPpV5IML","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":274859},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"3d6d91af385598007e6997c5929b80a3728d2ee2","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.16.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.3.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.15.1-next.160_1786478035508_0.6170266851298056","host":"s3://npm-registry-packages-npm-production"}},"0.15.1-next.161":{"name":"@tiny-fish/cli","version":"0.15.1-next.161","_id":"@tiny-fish/cli@0.15.1-next.161","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"a9459e04ac6a3cee3496a9932a6c20626d732655","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.15.1-next.161.tgz","fileCount":66,"integrity":"sha512-peryubOY8/6b9WT5oTuvHqBjlV5LabviEe9RrTKwYaW3M1lO3Pe+YIU58JvFhdviCgHswhGnFm+VBxldY5ocEA==","signatures":[{"sig":"MEQCIEQn/dwnGDnJjBNQDkbSxAwTWSFvLIcwbpcmS/M03Fx7AiBmP3c3xkY+3mr54wGoRi/ZjgnQTxl0ioXmH5RZnj6w6Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":279236},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"85808bfa80b166bbaf798cf44aee287aef5de0e6","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.16.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.3.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.15.1-next.161_1786478327351_0.5873590407618527","host":"s3://npm-registry-packages-npm-production"}},"0.16.1-next.163":{"name":"@tiny-fish/cli","version":"0.16.1-next.163","_id":"@tiny-fish/cli@0.16.1-next.163","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"b7805d7174d39afa24d6d6f838554132cdd8d3e1","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.16.1-next.163.tgz","fileCount":66,"integrity":"sha512-aCpucUj+6mDdDyT2Uh/WAc58nwarvAac/SPKNZEU8R3HTxw2KCFRe5FqhNrJbWrA/nvan9VlWuWvgpW23Vsjcg==","signatures":[{"sig":"MEYCIQDHGn7oA/1DQcAJN7tjCR4oSJZSVlKxUmBKJ/Me9udHLwIhANOmpEHR6ZkR4clvRPKJV/clJzqZCc68hOhEOyGLRLPv","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":283958},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"7ac1cb83f6d432c118fd4f1a88fef3ed2e823668","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.16.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.4.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.16.1-next.163_1786480330617_0.5636986864934173","host":"s3://npm-registry-packages-npm-production"}},"0.16.0":{"name":"@tiny-fish/cli","version":"0.16.0","_id":"@tiny-fish/cli@0.16.0","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"de4eac3ea0cb235691ed8ec234e5aa1eb0645fb2","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.16.0.tgz","fileCount":66,"integrity":"sha512-E5+Ohqq38RfKcfQdDyRpjOLXAbDtw+dGlf7G1s0z+7dAaJX3IQJw7qpJXFEwse3eOrIDZsQ3usq4sXQurCbmPA==","signatures":[{"sig":"MEUCIC2FeVWUrlkFbzfOei3Kh8+ME7zOJPIIM1TCYHG2LY+fAiEA4vdle59jtux8LCUKpzxFqrllXzRdWPzW3AFosxDbgEY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":283949},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"7ac1cb83f6d432c118fd4f1a88fef3ed2e823668","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.4.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.16.0_1786480375268_0.5692833062524547","host":"s3://npm-registry-packages-npm-production"}},"0.16.1-next.165":{"name":"@tiny-fish/cli","version":"0.16.1-next.165","_id":"@tiny-fish/cli@0.16.1-next.165","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"feb17a2e7eeea13a36ca7066ac7cb82eedb7303f","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.16.1-next.165.tgz","fileCount":66,"integrity":"sha512-AXfICQf8Zp/WtXv6VuO9cmEKagSv9G5MJimXEQkwrC+b5Qq5Sv+HhYZv1N37nOoFcSVZsAmifUNLtbtn7Y5PHg==","signatures":[{"sig":"MEYCIQCUa+yftPxPiCcZsqsZhFoQrPPvtuTXu7Xh4DNMDgS6AgIhALirjzjH0M5BdM3yi7P6e5V/QNsKCkfbrQ565P+w9NNE","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":285433},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"67a0dd55d5e0330cab46f7a1bca82d22d7e2ff70","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.16.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.4.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.16.1-next.165_1786488413574_0.9171846868944689","host":"s3://npm-registry-packages-npm-production"}},"0.17.1-next.166":{"name":"@tiny-fish/cli","version":"0.17.1-next.166","_id":"@tiny-fish/cli@0.17.1-next.166","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"60ff6d881911d11c155543022643ec995c1235c0","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.17.1-next.166.tgz","fileCount":66,"integrity":"sha512-wpSocvW5hfT9dNbcZggsZ4FMyWRccYuKvcVzvo/cL8Bgz2EV55DDgVuFJbyJOG5ovA4YLFnQ2c2ozcvmGChejg==","signatures":[{"sig":"MEQCIGccZ6lnG2GwuYfbvQ9C/KmTB7o2MP/egsSB+xcjLa03AiBjmLJyXmzDfpE5vC/3eX2+DCpvGlKz9B0lcaOyJIQmKw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":285433},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"ceeca8c6b7d44f2a006776176ea16198e8c25176","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.16.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.4.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.17.1-next.166_1786491693785_0.1214687950619","host":"s3://npm-registry-packages-npm-production"}},"0.17.0":{"name":"@tiny-fish/cli","version":"0.17.0","_id":"@tiny-fish/cli@0.17.0","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"f6ae1064c0e7fe9c6a65adf185dc15bff749446c","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.17.0.tgz","fileCount":66,"integrity":"sha512-+eJ4gjVN7h7VeKBGiJR7vj0AXSIr4jrkpJeCbpanmpnNmNdiCndiiPq9f+MG1sT2nJy7cLxn/aBCJ+hRk+dzQw==","signatures":[{"sig":"MEYCIQDs886u+0bZdXVsK0evX7PB4DTsl9LepGP357OVd1KPEgIhAOppHmzrMP1/HjYuabnjYGWWDHN68Mw66OIGmyFLPhWT","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":285424},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"ceeca8c6b7d44f2a006776176ea16198e8c25176","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.4.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.17.0_1786491705462_0.02777597103115137","host":"s3://npm-registry-packages-npm-production"}},"0.17.1-next.168":{"name":"@tiny-fish/cli","version":"0.17.1-next.168","_id":"@tiny-fish/cli@0.17.1-next.168","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"432f2901f00f1a8977bd181dd862d098b3822052","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.17.1-next.168.tgz","fileCount":68,"integrity":"sha512-iIgpy8S+HQl8X3jZ62luoqqQGl/QICd8aH+TvuxEZrK99xH2NJKTX6MI9eiXBZAeqbw3EJXKFxebopw/0ahbSQ==","signatures":[{"sig":"MEQCIGYtRlMQHvDbTFoMKkfQ4mlJAdydroBCZWfZId693vIqAiBVTa6Da7YUd37L5f22a3yOtPLs4uYorykJjrVHgdsPsQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":288268},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"7e4be35bc275bbb101401691be61ccc4e2a57dd8","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.16.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.4.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.17.1-next.168_1786557801914_0.840726534406294","host":"s3://npm-registry-packages-npm-production"}},"0.17.1-next.169":{"name":"@tiny-fish/cli","version":"0.17.1-next.169","_id":"@tiny-fish/cli@0.17.1-next.169","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"bc50b2225e70bb93c929183b60a17084bf4b2812","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.17.1-next.169.tgz","fileCount":68,"integrity":"sha512-u3yTzXEO8d6kUu9lBt3Bt0EbbsDqgvd2HYkYjkcYY065qHlGicjkaM5D6+GbsjtXvyVr+N41qrXMazVVez94rQ==","signatures":[{"sig":"MEUCIQCyDIKkSdLEMtjPWBqZi6edI1yotDT8EIMwaUcjd1sqywIgYLvAvMgD5gaHhd5NFNDCJMoC7JQzWapvA7BMaYSk7R4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":288268},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"ddd078cefa13dc3bf744ca7394a8b1dfe0d21178","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.16.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.4.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.17.1-next.169_1786587881952_0.21580859839910227","host":"s3://npm-registry-packages-npm-production"}},"0.18.1-next.170":{"name":"@tiny-fish/cli","version":"0.18.1-next.170","_id":"@tiny-fish/cli@0.18.1-next.170","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"98054aedaecba39ab932be29ccedd66fe548e89e","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.18.1-next.170.tgz","fileCount":68,"integrity":"sha512-FLKmkFT+8MTvipsX+VQhsX+tc/Srd1GKLLm/7/J+d8G6i04uV+gUQDMgQsE5Ib6EZuN7TDTxsTcwUB7N0JGHOw==","signatures":[{"sig":"MEYCIQCn8gmFiXYbaCPd8k/46HtjGzm+Jveoe7YPULlqtVy5awIhAMLpy8B29STSenEukY+9qv9bFgUmJGGFiK7eg66DeebG","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":288268},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"ad7a22d9eb1ecbef45e0a9426379729f01355fe7","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.16.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.4.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.18.1-next.170_1786588726858_0.15973298038067574","host":"s3://npm-registry-packages-npm-production"}},"0.18.0":{"name":"@tiny-fish/cli","version":"0.18.0","_id":"@tiny-fish/cli@0.18.0","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"326192c93a12a99c93d3ae0b2a361b9c884a0d17","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.18.0.tgz","fileCount":68,"integrity":"sha512-K8IgdorenmmD1SQi+on5+1tqYL3YSA8FpXDwj05oFQWrog4SQ6yVKd1AIY2svUO1T36AYKFem9Uih6V1YO48mw==","signatures":[{"sig":"MEYCIQC0ycakeMKNE8/zMOy5WLHOukZ2RfC7dQW8MZzBBvgR+QIhAJ+xFLLmNglGlXp6Oi4y4/YT15bI580KQ5rFBU5cMlrm","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":288259},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"ad7a22d9eb1ecbef45e0a9426379729f01355fe7","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.16.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.4.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.18.0_1786588743189_0.7410941914388731","host":"s3://npm-registry-packages-npm-production"}},"0.18.1-next.172":{"name":"@tiny-fish/cli","version":"0.18.1-next.172","_id":"@tiny-fish/cli@0.18.1-next.172","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"f0888ae07496393d9bb021de2ed862eee111773c","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.18.1-next.172.tgz","fileCount":70,"integrity":"sha512-YCRR+Q35TD2jX6YpRBlPNactw8BBGvp++smIqeRJqvklvhu/6yEmM2TgIXfxE3+1RAIDB65AvASo8w/3Fhj4Xg==","signatures":[{"sig":"MEQCIGYDDofhgoTC2wzwaT/bevQ89FdwKS6ww4b9IqIXal89AiAxR4oqNGKX2bDg4PzSrc7X0PMe71tbMetnuoXCNUU91w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":290213},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"9be599e79276ccd069fb453225c9649a347867b0","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.16.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.4.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.18.1-next.172_1786641689535_0.43205533204051205","host":"s3://npm-registry-packages-npm-production"}},"0.18.1-next.173":{"name":"@tiny-fish/cli","version":"0.18.1-next.173","_id":"@tiny-fish/cli@0.18.1-next.173","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"4e84b83525e1bca572d6880186141e421b82cb19","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.18.1-next.173.tgz","fileCount":70,"integrity":"sha512-GsCUBMsWzKdDGwXqmKllosCW6Xm63mjGIaXXNpbHdPZDD+GYji6jXs2HPukmfxKWNvTv4HHltURPAYz81AO6TA==","signatures":[{"sig":"MEUCIQCFIK1s1NfYQaqimjXvMxaSTQhR9xcT9i+ziSjZ8f82QgIgEjWHxe3xa9XEamGBrWXQXKqtvwb7rDT10ul+wxU8lKE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":294317},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"564b85d2db437d6fc038518205f9d0eb26db8d26","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.4.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.18.1-next.173_1786645509178_0.6654087976627736","host":"s3://npm-registry-packages-npm-production"}},"0.18.1-next.174":{"name":"@tiny-fish/cli","version":"0.18.1-next.174","_id":"@tiny-fish/cli@0.18.1-next.174","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"ed7f9ff39ab7a288304b57406fa395014460e590","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.18.1-next.174.tgz","fileCount":70,"integrity":"sha512-5ebE1QDKWQ0SuinCWxawHCSgmIoZHUJjdqMStGXaX2saQAChiQbCoLEUhjBZdgcS59I/8Ul8/9UzIhw6qGncgA==","signatures":[{"sig":"MEQCIBMeVOHHxxaxcpZO+qoLLixQYcJxB5HMjjoXrXHZsFN7AiAjTpUhZlOb9v5Qr7G54tyilCaCOb+PR+xf91aQhTvfjg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":295743},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"171f7de2e22d5d044cf6a7bcfea3165f34742184","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.16.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.4.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.18.1-next.174_1786652879191_0.7485609553189205","host":"s3://npm-registry-packages-npm-production"}},"0.19.0":{"name":"@tiny-fish/cli","version":"0.19.0","_id":"@tiny-fish/cli@0.19.0","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"ccfeb0c13b3ef2b6638e783d35f4e50822b71f70","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.19.0.tgz","fileCount":70,"integrity":"sha512-K3DPACP2xpoZqj7xCnb4EJWun9JlRDD+4Kvk1VuMowuDUmKRJ/i5Y45DDPDjnqH3kQqOObHbht1ghFxqA7dMCw==","signatures":[{"sig":"MEQCIDKtG8Y/WQCyo0trzb8tMHbN3b1UPBuxU2hu37QIBmBQAiA/7/KX/Umw6w3zmG7Isnz2vBg9d+o+jjZ0li9wrfXGtw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":295734},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"946d077803089abb4feadf00c7756b0648feb895","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.4.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.19.0_1786657841453_0.816129475294487","host":"s3://npm-registry-packages-npm-production"}},"0.19.1-next.175":{"name":"@tiny-fish/cli","version":"0.19.1-next.175","_id":"@tiny-fish/cli@0.19.1-next.175","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"ddd9a39412a774796d1f37e637be6cc621a672c6","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.19.1-next.175.tgz","fileCount":70,"integrity":"sha512-mMTu65JD5ENrW8vayaRyqeslkraLLmZSAXUXm13TUVGK6mEP+NlStUgSiAD6mQWnOjYv+1mBTB/X/g5WRZ9INg==","signatures":[{"sig":"MEUCIQDDzv1kBn8cCv3o7t3hpq0RmJuz1XMo9eBcn25v8fb9PwIgfRJeU/2134I2FY07IqxL2VDbUkMu5M8VYW6l0ljvQS4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":295743},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"946d077803089abb4feadf00c7756b0648feb895","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.16.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.4.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.19.1-next.175_1786657860929_0.42072488614687975","host":"s3://npm-registry-packages-npm-production"}},"0.19.1-next.177":{"name":"@tiny-fish/cli","version":"0.19.1-next.177","_id":"@tiny-fish/cli@0.19.1-next.177","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"c55fc35bf9e32adfef77963691d506d0b9482233","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.19.1-next.177.tgz","fileCount":72,"integrity":"sha512-OmPGCSkjWHDdghy/+ibO+Gfwk4KPU09Q3OOhu518ebB3D6Z1x1oGAIBdhi2x/VdgWsyVUorHH9+at1zgcfEoJw==","signatures":[{"sig":"MEUCIEMlPdYWBei1TZUkNFiGuCI2kLQ0IBZy0K0QiAp6Ti9sAiEA+f5zbxJBQOKOt4tQ1NXMlp+WPbG4vCci4QI2MP2Ma5I=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":299161},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"2bee6973cfab5b5a155ea840e3e41de3c2292a69","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.4.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.19.1-next.177_1786724755999_0.7502587257980713","host":"s3://npm-registry-packages-npm-production"}},"0.19.1-next.178":{"name":"@tiny-fish/cli","version":"0.19.1-next.178","_id":"@tiny-fish/cli@0.19.1-next.178","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"21dd5b7ba5d7c13338723b0bf063a4a120ef66ff","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.19.1-next.178.tgz","fileCount":74,"integrity":"sha512-xCJGWIb+AIIkqpjEBplSQ8BipUavzrNCCrNRW2hXjgekYlnFF22UzzqeaBmy/HTNJCV/sJ6DJPZ+vGuNWNtIkg==","signatures":[{"sig":"MEYCIQCF/HUkfDpLWaM3hMQT7+l2y3T3hQs8XlXr9tiSEzNMAwIhAL3EsINVge7eAOOd4HzKcnd7eDvmc0msDfNW7oPbWEiJ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":300978},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"b49d3d9fa6e023970671b80371416f2172483b61","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.4.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.19.1-next.178_1786725172002_0.5144592195956217","host":"s3://npm-registry-packages-npm-production"}},"0.19.1-next.179":{"name":"@tiny-fish/cli","version":"0.19.1-next.179","_id":"@tiny-fish/cli@0.19.1-next.179","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"61de813c078cc63e1528a23169fb79c4561aef94","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.19.1-next.179.tgz","fileCount":76,"integrity":"sha512-dUN1oIrci4TMV3SxyftpehDKXWcTD5T8nC+63UDPefnZzjcNBovEMq2xnGv6n4/IlJUtbO2uqJKXCXRhbc0WtQ==","signatures":[{"sig":"MEQCIB66xmtEdSeHtH3F2auW4Ku5Z16R73FA/gTQ6LlNqlomAiBLYe0/G3hvho8pS+/8mSGMicy2QiOG5AV5Y5jzZv7HRw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":303366},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"a335120cc787fb16e2f797b0ea859fbbd155f8bc","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.4.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.19.1-next.179_1786726538348_0.9552333174475955","host":"s3://npm-registry-packages-npm-production"}},"0.19.1-next.180":{"name":"@tiny-fish/cli","version":"0.19.1-next.180","_id":"@tiny-fish/cli@0.19.1-next.180","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"6682e98f4b13c674be39252b36c3deee2d0606de","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.19.1-next.180.tgz","fileCount":76,"integrity":"sha512-0ihdI04ZmIBxVYvnS/LMgY8ch4vxosu0qoRazK0dkLMfqi6JDApJq6s5W554S4KmEVDlwYbH5t24cOzfZntioA==","signatures":[{"sig":"MEUCIQCL73EwrxADvTSvq4DC16ea2cpDO7udyb2gkU8O40QxpwIgd2r+Ysk6AkzELIbylQ9Wur5S/4G1rIbnnVpeQQFYJuI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":303468},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"be4ba1849905ac7820fefcde2cb8a2dc523bcdd0","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.4.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.19.1-next.180_1786732649007_0.44472811264250023","host":"s3://npm-registry-packages-npm-production"}},"0.19.1-next.181":{"name":"@tiny-fish/cli","version":"0.19.1-next.181","_id":"@tiny-fish/cli@0.19.1-next.181","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"12026715c32e53c34c79e9ec2e80897ba7b99425","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.19.1-next.181.tgz","fileCount":76,"integrity":"sha512-QTN/ABSX+Gp27+vj5J3JGwDiJKlYPgSUiughBjJZFu4zrVY5pICPbG1DjOEVytf6EB2RKEKcKMoyQvFQUv6GpQ==","signatures":[{"sig":"MEYCIQC+Jl4byFNaMjZii0lOe8yyli/+NbLBwYx30b2Wgg7v0AIhAPS4fDCIApNFEUdaXsF8MvJNJoUqHSZkZ+F4xgEK4Rjj","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":304693},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"cea5e9210ed86f3e4f78b28537a6c40cd769272e","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.4.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.19.1-next.181_1786735364090_0.8442931860298162","host":"s3://npm-registry-packages-npm-production"}},"0.20.1":{"name":"@tiny-fish/cli","version":"0.20.1","_id":"@tiny-fish/cli@0.20.1","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"ccd5dff7247bd9dbe5ebc5d8a03f251a09f5b7d6","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.20.1.tgz","fileCount":76,"integrity":"sha512-CodpjTGJ3kWAx1tApjh9XfYDr1mNZAQLSkqrXVDis95fZk8V51pHHm1OuJjUpinFrSdpg+3MhyyMZPQduSoN3w==","signatures":[{"sig":"MEQCIHaRhAH3BdO60C4OIc6i3TTQ2pCnpn4zW2LM+NKyfbt2AiABmVarFhr3C4Q7yMbNJ0/YuVFIC8VznZCUsTHio7IpvQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":304906},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"90b4f938fe4ebd4b1ba4cf6f70b4f325bf377028","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.4.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.20.1_1786983477766_0.5161753149381805","host":"s3://npm-registry-packages-npm-production"}},"0.20.2-next.190":{"name":"@tiny-fish/cli","version":"0.20.2-next.190","_id":"@tiny-fish/cli@0.20.2-next.190","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"ca9345450196415b9743f87d430d2341b60bbf25","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.20.2-next.190.tgz","fileCount":78,"integrity":"sha512-KcFsmKdavKkLdTsvP2ymMD2qnxDhrorVBXJhDrnqCGp6PRZ4Pg2a0xm3zOXw85zpX2FItZtUyZtYBmoyj3R0wQ==","signatures":[{"sig":"MEUCIQCECQdxjApiKu8Owk+jUqxJGxremHGFFU9clCRY5Jj4nwIgKIrmkfrLrESWz1TdKK1ojMTv9tY1lXbocQhljKU3siQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":312994},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"81f3b163b769b2cb0aca8701d72fc4303891e540","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.4.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.20.2-next.190_1786996083258_0.23903207091254686","host":"s3://npm-registry-packages-npm-production"}},"0.21.1-next.194":{"name":"@tiny-fish/cli","version":"0.21.1-next.194","_id":"@tiny-fish/cli@0.21.1-next.194","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"acddf965e7008cda6f6c1087ecc44d8824f4189a","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.21.1-next.194.tgz","fileCount":78,"integrity":"sha512-jy5h9x4PQhou1+h+fbb3esY2SDgXuTdyflFNr95KybhA9U8qMg139nEm8bmM8CTlLplybUd3rdlymd7olrwSUQ==","signatures":[{"sig":"MEUCIQCE5i/tQjueQpYztWwctQSMJFK3zMgza9QuwS3rcNy1QQIgMBizBq89utq+fLjOoiwQQGk5QCyULMT/hRhT2Dq3nJ4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":319318},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"5e264310e915900bd207c27aec7b222351335d73","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.4.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.21.1-next.194_1786998518802_0.6328439680003117","host":"s3://npm-registry-packages-npm-production"}},"0.21.1-next.195":{"name":"@tiny-fish/cli","version":"0.21.1-next.195","_id":"@tiny-fish/cli@0.21.1-next.195","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"8d4cc12e6083249e407d461dd3d88b1b73f13cb2","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.21.1-next.195.tgz","fileCount":78,"integrity":"sha512-L2q5XNRZPb5a4DHeT96eqaQIXkuthN2FBre1K2T0OYR8XWvElUOZs9wLucMSqhZkneM6JU66KE/Cu9bshFMBZA==","signatures":[{"sig":"MEUCIC63DGwHsEOAsPFEdGPYX2L0YFBvjApVc6Y4hpLXmLKUAiEAr/pmpUhVdT3JYl8uLfTbHX8Qstd5jfqb4hWXOR+sOOc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":323154},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"0f5a5ac18dcf59f9b49301f6523be5ee914be6ba","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.4.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.21.1-next.195_1786998955240_0.787954982520009","host":"s3://npm-registry-packages-npm-production"}},"0.21.1-next.196":{"name":"@tiny-fish/cli","version":"0.21.1-next.196","_id":"@tiny-fish/cli@0.21.1-next.196","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"9e234ddab05b13f59c73cbb849c9c3317631d3c8","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.21.1-next.196.tgz","fileCount":78,"integrity":"sha512-CyNzjcfI997tpvZcirBj1v+XK9cz7L+PnhSntDwz6F1LNB0MByuzJZbna4+FVadDtEQbAWpjh0OfRhYz+Rnz5Q==","signatures":[{"sig":"MEUCIFw7Vomh/ONgFqGjGLyMV5VT8z+js1UzzutZJ/NWfZMhAiEA2MGMxNCrwX6rapz92Hp6y+5ets3EbLKyxTsoRDAiWuU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":325657},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"fbe4a348a5146ebaf5438e280c5d83ad99101064","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.4.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.21.1-next.196_1786999129411_0.976947703355507","host":"s3://npm-registry-packages-npm-production"}},"0.21.1-next.197":{"name":"@tiny-fish/cli","version":"0.21.1-next.197","_id":"@tiny-fish/cli@0.21.1-next.197","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"45ec9b507aa4200a21c052307ff20dffadc59d10","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.21.1-next.197.tgz","fileCount":78,"integrity":"sha512-Z+FNJLgxyfqqqvoTehppqznnf6MsY5TwGTV3E76hpllTnYsKTvS7o7ZmRfPQfj6WEKjqsXGXNPTEcKpk6L2b8Q==","signatures":[{"sig":"MEUCIQDLBR9Q69ydPhehKXqoTGAZKdmb1jhS7fNDPBdhcLlSIQIgBY/fA5UnpXU8EDnxgxzZqxH8eKWWpaE27j4gPOUxt7s=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":328824},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"7f993b02ee967e87ccee7defdb629a490525d653","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.4.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.21.1-next.197_1786999389362_0.17520129621701264","host":"s3://npm-registry-packages-npm-production"}},"0.22.1-next.198":{"name":"@tiny-fish/cli","version":"0.22.1-next.198","_id":"@tiny-fish/cli@0.22.1-next.198","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"9f48e767f3ac96ae8370073a63960b456ee38b07","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.22.1-next.198.tgz","fileCount":78,"integrity":"sha512-HBmfRWH3A3EPN4MbK+JAp+Vbaw+uuOXSpNbZ2CT3nWQ/KmNyBftcxuNaJ57KKKue516jMYxviceQBmXWuN6KnQ==","signatures":[{"sig":"MEYCIQD3D4icKSZv33E1pSQVPjntQ9oGnj6zeVG32ScPtfSHwgIhAOwnDyfDemUZbKOtU+T9gG2LvBgc0jUp1Jg3SHo4PC5U","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":328824},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"e2d0cdb1c061203d95c801b42a182503a790cbcf","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.4.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.22.1-next.198_1786999712472_0.6408773384805078","host":"s3://npm-registry-packages-npm-production"}},"0.22.0":{"name":"@tiny-fish/cli","version":"0.22.0","_id":"@tiny-fish/cli@0.22.0","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"bce1b814bca0e21cea11c0a94af68496f076e5ac","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.22.0.tgz","fileCount":78,"integrity":"sha512-uXTbWphekrzmA34cGdd+o4wi93tZ8mhsq2/eAuSuwhOuq5e3nrfYed9Nn1Zb9ChoILwXwoi/sqTEUOwq5Pko2w==","signatures":[{"sig":"MEUCIDmAQjC87B612Cw3bYp0YkC14mbsSRWGdQcMIbRht0L1AiEA0K4p06EnJsYXAywbyjDNiKzILRcYPQgL7MCh2a3usF0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":328815},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"e2d0cdb1c061203d95c801b42a182503a790cbcf","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.4.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.22.0_1786999750715_0.4886656735629371","host":"s3://npm-registry-packages-npm-production"}},"0.22.1-next.200":{"name":"@tiny-fish/cli","version":"0.22.1-next.200","_id":"@tiny-fish/cli@0.22.1-next.200","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"274d0d2658a6f6106c77a5c572df03b6446bf487","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.22.1-next.200.tgz","fileCount":78,"integrity":"sha512-MKQ9uN3LPWSPtS7BLOQz7+QDBkY60Pa1K/kXsv0j5yLC7Fq8jGVGXsRoQycmcjpm/AzuCEYoj8nqME8upY19Kg==","signatures":[{"sig":"MEYCIQCYzN1IiJeShCZe+zb1NRUfnl4gIcx9Wi/kSNzpLg1LcgIhAJUClEyX8oJtWXSJp5MZu9NhvgeoznGaLj5vrHqwm6El","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":333007},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"d8f3772a86679263f69f602e6a2a975bb2eda85e","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.4.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.22.1-next.200_1787000167419_0.07814784311316059","host":"s3://npm-registry-packages-npm-production"}},"0.23.1-next.201":{"name":"@tiny-fish/cli","version":"0.23.1-next.201","_id":"@tiny-fish/cli@0.23.1-next.201","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"7382c91258ae1c9f116cb1e9e0e3e178f8dfeabb","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.23.1-next.201.tgz","fileCount":78,"integrity":"sha512-6uDSJgkNjenuLoiobfRNyy9z5vKUQ+uN8/La+H7kz4QfwG/PKu7L3InTePFxHIAM2Tap2UA0p/G/BS4vjtZabg==","signatures":[{"sig":"MEUCIQDMKtnrHvKuSp1XXr8h9HmyA4wxeoPYyo5yB9v8NCRWRQIgbJg6YEpT87GKtCTcrlc5/hwuhWdJClEU7vmeX+DoyTI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":333007},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"9f237f2957cb9a0825deae3192ff60533bc889ef","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.4.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.23.1-next.201_1787002083136_0.08209570141677736","host":"s3://npm-registry-packages-npm-production"}},"0.23.0":{"name":"@tiny-fish/cli","version":"0.23.0","_id":"@tiny-fish/cli@0.23.0","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"9d45a0186eb024bc4add94738f25a627825b3321","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.23.0.tgz","fileCount":78,"integrity":"sha512-uprkQro3T1O827vX2e4IDE8dVZuBm2oQgxxGiXbsNS5CmbSpzMYesD35nfimcrf7GSa0KaiTVYKQEJBLeWW9AQ==","signatures":[{"sig":"MEUCIQC9V9dJfArnRDRK41VPM5RfUEBDNYeb3I1nkE8X8DJJKwIgWTNXAlLMg/UreVFyZlQ/WcuKzB1W83u5ZUzNMd3pr4s=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":332998},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"9f237f2957cb9a0825deae3192ff60533bc889ef","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.4.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.23.0_1787002138006_0.8764673519767188","host":"s3://npm-registry-packages-npm-production"}},"0.23.1-next.203":{"name":"@tiny-fish/cli","version":"0.23.1-next.203","_id":"@tiny-fish/cli@0.23.1-next.203","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"e0a5f834caec60cf6cf08eae661b67f5d4ca15a1","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.23.1-next.203.tgz","fileCount":78,"integrity":"sha512-98UVEojFyCC0FccjBXdJ8HUiY//rK5gIYIy3TXykAtZZ/FqTvYmQs1n8B6rDNjuQ5N+U81bi+4EkEgWho1jEFQ==","signatures":[{"sig":"MEUCIE485jXSJ56INShFyHROVK1IBfaVwy/FC4TJt3De2KltAiEA2poUV0OluhqFrK78IrPUhsD8nGbnxsK3L148cE2BViw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":341118},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"1ec839ed578811d6fea859a8240bd1a9c89086e0","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.4.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.23.1-next.203_1787072869479_0.7364843680354745","host":"s3://npm-registry-packages-npm-production"}},"0.23.1-next.204":{"name":"@tiny-fish/cli","version":"0.23.1-next.204","_id":"@tiny-fish/cli@0.23.1-next.204","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"ce73e8100fb908f6dbf567d5fcba1ba5947dbb7c","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.23.1-next.204.tgz","fileCount":78,"integrity":"sha512-aydvaSgVVztaAVkW4+mzLfjAkTacadNTO4/cD80t/eSaPB7//WPHo0l+6RrranMYXtjHMFyyhDvRjjsYnZtElg==","signatures":[{"sig":"MEUCIFRjDbnoz/Xp9UXyYvXRg03OIlsL/tB4YjS5wRwAxHVtAiEAymwVBykGqsi7H2JG+30G8GzYbepflkBqa3TpzSSTboA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":341118},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"cf47a09da187141f660033442b9ba7d3924ebd2f","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.23.1-next.204_1787081083307_0.13193281590307815","host":"s3://npm-registry-packages-npm-production"}},"0.23.1-next.205":{"name":"@tiny-fish/cli","version":"0.23.1-next.205","_id":"@tiny-fish/cli@0.23.1-next.205","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"f58670147d363f01a765b8738cf742668c4bccf7","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.23.1-next.205.tgz","fileCount":78,"integrity":"sha512-f2v68ygusgnk1VQZY2niK4wWngLqhjtLCRMIfWarevlOIvm4LqL4iTCsI9RzzKgA0+KzDAKKLcpRzstbQ5y4VQ==","signatures":[{"sig":"MEUCIBtfWVct3BCwfxvp2pkmExy95xgIC9MjZrIpPIqDoEwDAiEAizXSgu+6OhMFTNMSK9+p8c5GCww8EPuvxhZQkK5Id3A=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":345088},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"4e66781a560980348d26bf9815ae32949677e588","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.23.1-next.205_1787081740240_0.9112417562811921","host":"s3://npm-registry-packages-npm-production"}},"0.23.1-next.206":{"name":"@tiny-fish/cli","version":"0.23.1-next.206","_id":"@tiny-fish/cli@0.23.1-next.206","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"1a13a791f86099bfb7eec011cc2ffb64bf2c32f2","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.23.1-next.206.tgz","fileCount":78,"integrity":"sha512-8jcPhS8K9Q/SlZ5rukMSJKjYDv/4X2jHjeyTaIF4m8X8zD7Ex6vO8A6DY8JqG2H83e/heZvxIrWtB2GsI3gclA==","signatures":[{"sig":"MEQCIAmHvlWgohjE7vlDvkso2KL/ob0Nru59IK7pB76p8a60AiAB8sWj+Ex877BDAkQKahnDLiTca7m9lw3GKhSfDZmAvA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":344353},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"1408b8afc7ece5579025749a523eea4d64dcbc42","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.23.1-next.206_1787088653513_0.9394481393509504","host":"s3://npm-registry-packages-npm-production"}},"0.23.1-next.207":{"name":"@tiny-fish/cli","version":"0.23.1-next.207","_id":"@tiny-fish/cli@0.23.1-next.207","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"8e4b1a98708634013bff80352eb2fe12f7d4e7b2","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.23.1-next.207.tgz","fileCount":78,"integrity":"sha512-6TwWXi7VNVb5rVRdGx2jpvx9EtmpomAWbip5OzyMqLfRTb4mX8VzIjiTOZxnbgUNSHKGS/OLyZyFBOOrQWBRwA==","signatures":[{"sig":"MEUCIDxLz5D4ts1iAaqBiEgxdhsx10dEB8rnSPcWQ8MDv+GaAiEAqAjlqD2fi+IgOVeKfUTWt7aY2hVVkXvcDrrzLfg9Ic8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":344672},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"645617aed6e5c584ef3468b36d1eb365af35d7e0","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.23.1-next.207_1787089711415_0.13801213034630289","host":"s3://npm-registry-packages-npm-production"}},"0.24.1-next.208":{"name":"@tiny-fish/cli","version":"0.24.1-next.208","_id":"@tiny-fish/cli@0.24.1-next.208","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"c1376535403027c7e29b59ee1079e99f2157c7b2","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.24.1-next.208.tgz","fileCount":78,"integrity":"sha512-OlEq2rWpJ32trDHQK9KsItq4VdDRBhfjrlwnVjwo0vb9o52DTemPHtRzPJHIIQYpeQSjEM7EvOeymCAFk0p1RQ==","signatures":[{"sig":"MEUCIQDLGMjHkWUCNL7UntIdItv49wMx6rM8zrEoUYwt3/wLTQIgYHK6UqsZpnvezDBT5Y0RCMDv4FA8yySCa7q0SXykro4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":344672},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"836f7320e5952d8a5eec4b3fd92da638ea821df8","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.24.1-next.208_1787090085552_0.4135453125284998","host":"s3://npm-registry-packages-npm-production"}},"0.24.0":{"name":"@tiny-fish/cli","version":"0.24.0","_id":"@tiny-fish/cli@0.24.0","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"470d7c66d2c563942ca26a064c8bbc5aa585f071","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.24.0.tgz","fileCount":78,"integrity":"sha512-OlGFM2WrA9CXm5l+PGuHbnebgdhdyVTzXBTSIueIv+aiZrEa0UFBWRki8PVyatqERa3SSznMr69TdPGsNeagCw==","signatures":[{"sig":"MEYCIQDCg4bLf1hoW9BqS+gYFkN9FYLQVPJugX4F9JN9fiHo3wIhAJbhFgCZ643GQhnb8/W5uVXJ1CbVo0bzwZge2ZiSWu62","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":344663},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"836f7320e5952d8a5eec4b3fd92da638ea821df8","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.24.0_1787090121617_0.5883747301223146","host":"s3://npm-registry-packages-npm-production"}},"0.24.1-next.211":{"name":"@tiny-fish/cli","version":"0.24.1-next.211","_id":"@tiny-fish/cli@0.24.1-next.211","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"b755ea0f5bbf4dea8a18a8180072aa81edbf7da7","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.24.1-next.211.tgz","fileCount":82,"integrity":"sha512-G4nqopTuQ6Pyuqc65eGcf2sIVIVV5Vof5lz2wE07dS3JwsoUkMQNaZSJFGppydqc4/kZq4XhNFAEWlEAZVwLhA==","signatures":[{"sig":"MEUCIQDWnkS6Y6cHvEJ3wuj9nZ3UbYH0m8FQRXP+SVvMEEvgVwIgQr2RMW7OixeYoJXsqHURWvw5fJLYtHsPaQNkpPA+kxc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":353124},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"8be42126471c424344c617f46ce688d1a463ae99","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.24.1-next.211_1787091858468_0.6851451953994971","host":"s3://npm-registry-packages-npm-production"}},"0.24.1-next.212":{"name":"@tiny-fish/cli","version":"0.24.1-next.212","_id":"@tiny-fish/cli@0.24.1-next.212","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"fe17a83358d54b420fed1d89184ff2e4b2a9a4f0","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.24.1-next.212.tgz","fileCount":82,"integrity":"sha512-wFVxp+ZTmggaDc9eygjs5BGp2kHuDETWB0nwWmvAUusg5gG/8g+6o9W9gzNpc5Dob4xlZUeMY309RfE5yMKcsw==","signatures":[{"sig":"MEQCIBEJaDbwTWuWQbjzJfcJ1748kFJs7TZENL7oXAbNe+WEAiBdWZ07VP+WijEd+bxHK7tqmHMGi9F63gqbVSBuQcLzkw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":354367},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"4b24770b5f802818924bdaf5f34a89585b304b04","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.24.1-next.212_1787093786476_0.7131371259117485","host":"s3://npm-registry-packages-npm-production"}},"0.24.1-next.213":{"name":"@tiny-fish/cli","version":"0.24.1-next.213","_id":"@tiny-fish/cli@0.24.1-next.213","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"75feecb678d4558273f83952a6dab8841b86b11b","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.24.1-next.213.tgz","fileCount":82,"integrity":"sha512-CbJIR1XTFgZl3EE4jAQ5rjUV4N2Puhsri39Zz13/IKF03taDXtiRzABKUAQOtQPg7oe67MTLXuWUvjZEtTQUZQ==","signatures":[{"sig":"MEUCIGIGT6rtK4kgkH8F7PMkuYsXBXADl4S5EDodKwr39qWhAiEA20aGbsSs4X2UJF7eAOYqR8HnjuBPrOelsJyNccvAGb4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":355829},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"f3e19726a55a7461040c74de8394efd6a7e14f79","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.24.1-next.213_1787094042159_0.44639997903586526","host":"s3://npm-registry-packages-npm-production"}},"0.25.1-next.214":{"name":"@tiny-fish/cli","version":"0.25.1-next.214","_id":"@tiny-fish/cli@0.25.1-next.214","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"2deda115317d7f48dc35037baea89789856ec2f7","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.25.1-next.214.tgz","fileCount":82,"integrity":"sha512-PhTZkA+IQBHzna46sgJ6zp1YkqXH/8RVZK4pUOC+HdZx8+GkmZ42euoL01vfdb+7XjKO0kUl5d3goVO/Ih8qqA==","signatures":[{"sig":"MEUCIH+HGcSC8hJInYnDttCghk/Dur/FbXnBeLLyj2LvdHxvAiEA8xnhuOtAIC4l0i89b1ukuV+UkltRBHOhZ8jgKXrLrqE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":355829},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"0b87edcbaf6bf2603fc7f4ff8f4d89e75d49209b","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.25.1-next.214_1787094372347_0.597820213070297","host":"s3://npm-registry-packages-npm-production"}},"0.25.0":{"name":"@tiny-fish/cli","version":"0.25.0","_id":"@tiny-fish/cli@0.25.0","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"3a23db973c11ffe64d3cd833c3b3675db509d323","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.25.0.tgz","fileCount":82,"integrity":"sha512-z3BbWlVJchB1X+/8JU9dg3Ev1EPNbcLUCOa0bB/dcv28pozIicyyc2MnNfrSjhFtEnn/f8zs93EiFJqt33Ccfw==","signatures":[{"sig":"MEUCIQCIj7TxaFdbqmCDgqxiRSoJLYiwJ+OVAEVfLNhrCpgT5wIgf34U6DeGVJHFgPMSuC2IM1rffUP76/qfkVKawS94ank=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":355820},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"0b87edcbaf6bf2603fc7f4ff8f4d89e75d49209b","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.25.0_1787094396079_0.15789605750087432","host":"s3://npm-registry-packages-npm-production"}},"0.25.1-next.216":{"name":"@tiny-fish/cli","version":"0.25.1-next.216","_id":"@tiny-fish/cli@0.25.1-next.216","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"afbe714592c50d42eefbf7f3daeb6a7bc9545b78","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.25.1-next.216.tgz","fileCount":82,"integrity":"sha512-gq4dQhFOdaRJeRWFe2h7onvwtwqsiZx4emKkU4YmgWGm+Iliv6nm2URL3em9YobVUegl0r7lF5mLlB/9wPtYpQ==","signatures":[{"sig":"MEYCIQDvBNwm+Xt55f4zm10LnSy49PlbA/gwonpxMIVlRX3lNwIhAOhMQiTa8pwEk6MFp5MRbXNal5XLS4XHAO/oJAW9lzSE","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":358430},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"b75f0422e44342b020fad9d2f58b27146e1b3fd2","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","which":"^2.0.2","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.25.1-next.216_1787096500527_0.4442326921220263","host":"s3://npm-registry-packages-npm-production"}},"0.25.1":{"name":"@tiny-fish/cli","version":"0.25.1","_id":"@tiny-fish/cli@0.25.1","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"1aded8ceabbac1a91629e74686e758e461aa0800","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.25.1.tgz","fileCount":82,"integrity":"sha512-nNGEps3NnyYfs8Ne5iKcwAVCU3BJaHcVo/VbZG9ywLxONRa2sniCp1wT0Zw7KO1dmIHhxP17Bi9Oju94lFoydQ==","signatures":[{"sig":"MEQCICcC47ocRT/AGFy/eQfTi5cxgUiDTY8FMmspjDmh6traAiBPDy5yLFxAiXlPxmPZg6FaCv5+iMM2uz5/7kGouP+BVA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":357235},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"cb1ec91b1dd8622903d56f45562309b9f1618284","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","which":"^2.0.2","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.25.1_1787099369740_0.09393266968155478","host":"s3://npm-registry-packages-npm-production"}},"0.25.2-next.220":{"name":"@tiny-fish/cli","version":"0.25.2-next.220","_id":"@tiny-fish/cli@0.25.2-next.220","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"192916553d178de8f3b98d2bf1545f10ecd3a1bf","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.25.2-next.220.tgz","fileCount":82,"integrity":"sha512-+Isq0VBmE3l3CpMy4dlF+b9Vf7V+wHDxZ6289pboXiS0jhvH/XODOPzYyvo+lRMH3bk/KWoPBSSQp4CqtY25jQ==","signatures":[{"sig":"MEUCIQCYuRUMqMDOJkBtqyaUItWDeQ2+YTBg68FytQXchFQiAAIgdiHs+gxvlE1ZIZsW1fXbC7OcG830hzTvMmnGD/kExAw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":357719},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"4920f884610e0969f8ac15d6d01d2ff18f9ae1dd","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","which":"^2.0.2","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.25.2-next.220_1787161259315_0.3163374905118308","host":"s3://npm-registry-packages-npm-production"}},"0.25.2-next.221":{"name":"@tiny-fish/cli","version":"0.25.2-next.221","_id":"@tiny-fish/cli@0.25.2-next.221","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"a78559544cd035c0a007193455b7310b04dc5044","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.25.2-next.221.tgz","fileCount":84,"integrity":"sha512-Y1Vn8RpfgJtIrUDQH4BJn7J0pqsu/+aA27NNk1IQobs4aKanLyES/ifTLaojtvADoC7zc7eHiDnXppJF4zwq7Q==","signatures":[{"sig":"MEUCIEvYeIZuIk95PF2OL6TTToKObovCn0jKSU1xgYdCqzu0AiEA8Ocu8x3R1k52Gw3LblGTpAVb1LAHRZE3hP4yScOrwqM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":367711},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"346648a81b3aa130118bed80c4e1c49b0cb5c958","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","which":"^2.0.2","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.25.2-next.221_1787162710217_0.8985981064182431","host":"s3://npm-registry-packages-npm-production"}},"0.25.2-next.222":{"name":"@tiny-fish/cli","version":"0.25.2-next.222","_id":"@tiny-fish/cli@0.25.2-next.222","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"174c9c782846332ef28cb9b9f75ecdd516b0ef6e","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.25.2-next.222.tgz","fileCount":84,"integrity":"sha512-F047K5v2HFb4GX2NB/764aORd32y0uMmkPy1yhdX/zKA97RuS7/ybuJ147yRMQKZuFkkG7FjvlLc2LFoevRiSw==","signatures":[{"sig":"MEUCIDMqs347jh+ae2aUalSeOMKaQrrQ9kw1sj3F9dDpiqwEAiEA8v0KTzbCsi0vVqEziIHM4YRSn2pO8puKJwTY3c2ifjg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":368048},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"f0d7f65efa19b22264686b0185609771465d6362","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","which":"^2.0.2","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.25.2-next.222_1787165700691_0.5632645740496236","host":"s3://npm-registry-packages-npm-production"}},"0.26.1-next.223":{"name":"@tiny-fish/cli","version":"0.26.1-next.223","_id":"@tiny-fish/cli@0.26.1-next.223","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"2224bd6598c6f224f10a7a1395e9ac852fbf387c","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.26.1-next.223.tgz","fileCount":84,"integrity":"sha512-YlzTetj/zkUl4h/l7cIcVDuAWif+REpGG+JT9XAXdDfRNuRQafmfwq6f+A9gP3bzfYj/B7ccYkDP38ii4GbwiA==","signatures":[{"sig":"MEUCIQCBwHbxGN5oGM1przHiuKK1DRx2T74sK/FE5xsL0TimBgIgYUisi53uG/ho1MB5sedC4nygngngVWUHoYRK77dEmTQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":368048},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"b97af612836cb9a3124ad3afcefabff0a0f7092b","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","which":"^2.0.2","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.26.1-next.223_1787166017740_0.5051766760647907","host":"s3://npm-registry-packages-npm-production"}},"0.26.0":{"name":"@tiny-fish/cli","version":"0.26.0","_id":"@tiny-fish/cli@0.26.0","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"8e7c5646cf2d2b140f361170c3cecb8cf0b58f7b","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.26.0.tgz","fileCount":84,"integrity":"sha512-kuL0Ua8hK+oANkkmnxTXo4/vo6RZG3pKjwwCYVL33jzuTrkBuRZK0pNKvuw3eTs1YbVviHR3i+gcjwwVpiiNqQ==","signatures":[{"sig":"MEQCIDTm6ojY9Qq8gZZGwu0b40XiNXb5V9YpGTowtLpZw1tAAiBbG/YDOoGVfe5aGiAwsgDeKb4CSUp/IKmaexSa+5t3hw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":368039},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"b97af612836cb9a3124ad3afcefabff0a0f7092b","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","which":"^2.0.2","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.26.0_1787166081839_0.5907661120936143","host":"s3://npm-registry-packages-npm-production"}},"0.26.1-next.225":{"name":"@tiny-fish/cli","version":"0.26.1-next.225","_id":"@tiny-fish/cli@0.26.1-next.225","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"b0b34794a59536c4a83a97988dbcb3520a551624","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.26.1-next.225.tgz","fileCount":84,"integrity":"sha512-RVtBOwkXlDSXZkiq5lIp4GGzzGyEpgLNkUPhzGNkDww2gTjH3a8SUco2ja2Y7/4mFBqawefq5l2xqLLQmly6ow==","signatures":[{"sig":"MEUCIQCf+rosLhLAnYxbrQkFHuCy5I1pK3WPBj+xCaXSrPQIOAIgQEJ31VkoU7bk2QHUTJdvlv2bRmZO02PTUCo3jyujGss=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":368135},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"0f65efc32997c8d7b41b00cbc59e58ab70d9b0f7","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","which":"^2.0.2","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.26.1-next.225_1787168915429_0.44324682685427264","host":"s3://npm-registry-packages-npm-production"}},"0.26.1-next.226":{"name":"@tiny-fish/cli","version":"0.26.1-next.226","_id":"@tiny-fish/cli@0.26.1-next.226","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"52b8349f6e8f9bd6e78120eae32e51a8e4b988c5","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.26.1-next.226.tgz","fileCount":84,"integrity":"sha512-C/WpQblqZPL+/R0EaZRjwx1Tb87y2XPBVVJ067KEkIONhELux/C4V1DFEQuT3VLsW1L/2G685doPEze2XDIqMA==","signatures":[{"sig":"MEQCIEGQUFAA4QVi71NsJ37EZbvAgQ5h5nlWYasBEsfR+btjAiB77ksvj9xkclMwEKg9VVxYggTZNH3VPXThYvTJWqdpsw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":369443},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"a4f4312856517c8ea6a28882900a71b8c106c251","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","which":"^2.0.2","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.26.1-next.226_1787173657223_0.9497574509919264","host":"s3://npm-registry-packages-npm-production"}},"0.26.1-next.227":{"name":"@tiny-fish/cli","version":"0.26.1-next.227","_id":"@tiny-fish/cli@0.26.1-next.227","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"f6769e9333e7aa06356de36803fb0d4cd56ba674","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.26.1-next.227.tgz","fileCount":84,"integrity":"sha512-j9UJoZ1PlYjs6YORsHXpN5/NyEghO/AKz568QtudaPVPr/6d5rFCjSSreuhmqf7jNuocPe4VQBYW9q3/4fX1rw==","signatures":[{"sig":"MEUCIFr9t2A/OlFJyJJWjbjKSPv14cjqBvAvEcuIqPPUuQReAiEA0TbT9u94HyoSp6JV1CP00FRbjoxWPL7czBrLXl4ETMw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":372548},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"77797d4529b94cbf7ba28f99591d7fd04c7d4906","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","which":"^2.0.2","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.26.1-next.227_1787174257211_0.4980008734646719","host":"s3://npm-registry-packages-npm-production"}},"0.27.0":{"name":"@tiny-fish/cli","version":"0.27.0","_id":"@tiny-fish/cli@0.27.0","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"c73ea10987692cc297f4f4dbb26394dca45ed90f","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.27.0.tgz","fileCount":84,"integrity":"sha512-PG0bexQ4+WV9kTikm7gt5wunD6hxisnc8ry3BrU0rTFofcZuPHaTtOU1hyF4vTSHBs0b10vXh2Qh7Qjo4PMoVw==","signatures":[{"sig":"MEQCID4UixLbtSU1iwx3Jrle7qMuOS0BfRaTzrEzYVbnbgeqAiBIT3v56a374eVCXkTEELzpMWaE33fHDqDnBNSXanMYNQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":372539},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"2244e2a0ca474b08fed625268cb08b84b781bf13","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","which":"^2.0.2","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.27.0_1787174563608_0.7160389197085517","host":"s3://npm-registry-packages-npm-production"}},"0.27.1-next.228":{"name":"@tiny-fish/cli","version":"0.27.1-next.228","_id":"@tiny-fish/cli@0.27.1-next.228","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"916f745c54c7f9cb308130c7c118270e94b1f845","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.27.1-next.228.tgz","fileCount":84,"integrity":"sha512-bpSr5ozVXFhk1+lulIzKhKqu4IA27n7WAvAoBEPprJk8FQawHA3J46+swYcUMrWaPaSdH1qjaRD1NUR/H9xiaQ==","signatures":[{"sig":"MEUCIFJU2YCHZjyf9ZfJ9LH86Osj8nEMlHYn7OXKAaWOJqYoAiEAl1uh1bxGa/4yTBi9bQDun2RfAs45fx5DJSI3Oh6b57s=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":372548},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"2244e2a0ca474b08fed625268cb08b84b781bf13","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","which":"^2.0.2","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.27.1-next.228_1787174580130_0.579585604712376","host":"s3://npm-registry-packages-npm-production"}},"0.27.1-next.230":{"name":"@tiny-fish/cli","version":"0.27.1-next.230","_id":"@tiny-fish/cli@0.27.1-next.230","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"1518d53d50d05a7329d386830ced702f528178a4","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.27.1-next.230.tgz","fileCount":84,"integrity":"sha512-nnf4mxen3oNx2Mnuk4sFZcW/Uki5SKpp7l8FBOTC2UEfzKE6u1vLgCCEYPmr+kJY43LyzRKWwzwvDfxjOhR5fA==","signatures":[{"sig":"MEQCIESpyrAm0N0KnU3WEcz+A6cG6b2Lu8LGczo1ib7tTeM1AiBlx11LSZawghjzd6AsB6/0W6RDOgMhn1cNTlNUiAyqeg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":372860},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"6703776bcf657dc0272ab1e049ed15eac2b799b6","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","which":"^2.0.2","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.27.1-next.230_1787176416230_0.8697613702546871","host":"s3://npm-registry-packages-npm-production"}},"0.28.1-next.233":{"name":"@tiny-fish/cli","version":"0.28.1-next.233","_id":"@tiny-fish/cli@0.28.1-next.233","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"69e6ad90342f84ce3675a2b5b2e6b3bc83ce0e5a","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.28.1-next.233.tgz","fileCount":84,"integrity":"sha512-YhaQLlpoPppMwCxacpM+LcBkviqo2g17wyhgQqHG7Zcrn2fOJpYikeQJhZxz9vHk24wNhQmZO9I673VLPeV61g==","signatures":[{"sig":"MEQCID33juviBLf1vLFt7iUa1U15aP2+sTqFuXsGmZ5o12IJAiBbYW1FGG9DW7TtfltP9vs3cGVtjm0+wG6W6w7g6iBwcQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":374892},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"fe3aefeecca7ada6d7750de50774e991c6d976c6","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","which":"^2.0.2","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.28.1-next.233_1787183241345_0.29669993427287555","host":"s3://npm-registry-packages-npm-production"}},"0.28.1":{"name":"@tiny-fish/cli","version":"0.28.1","_id":"@tiny-fish/cli@0.28.1","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"03ea4d671fa700a1af87f2defc0588e04c47122c","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.28.1.tgz","fileCount":84,"integrity":"sha512-mEk57KzjL3sB0YgZnsLK78hv0J4RFHjAXcVDoa2KApVHz4K7fdCmIyKkGc42NI9nqNJOpx7YVozS9+nRCxzbzw==","signatures":[{"sig":"MEUCIQDAoZQ6EXbUt5+vC9oPDbo4nsbBiv1MaK4IOzwI94hvFQIgFp5nUQUocgh3NtrTvEfMaPw+klwO6I3UXGtwCOx0lBg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":374883},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"29802fcf7bf685d668373b127c90a142f4924707","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","which":"^2.0.2","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.28.1_1787184119210_0.39255207514103074","host":"s3://npm-registry-packages-npm-production"}},"0.28.2-next.236":{"name":"@tiny-fish/cli","version":"0.28.2-next.236","_id":"@tiny-fish/cli@0.28.2-next.236","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"fdec29ff22171d1684f5c2162bfade38bb4ad038","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.28.2-next.236.tgz","fileCount":84,"integrity":"sha512-5ULr5C3T5HDXoK2u8SFr2zr1wHVUAIpqiXaEL5yXRjz2gZkqcDFeXj1KfE2wVx8CJUqWTm2ToHjooNb6UVxABg==","signatures":[{"sig":"MEQCIE3Vib77wLRWfknY8k3k8KJiznPjMAz//mgqwk2eAuz1AiAIln00QlPwAu5c8OJNpLVFv1aiDA8qKC95TXB1m6tAMg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":379178},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"dacf89d93ca95ff7d054caf14399684fedcf69d4","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","which":"^2.0.2","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.28.2-next.236_1787259251749_0.00537307563556455","host":"s3://npm-registry-packages-npm-production"}},"0.29.1-next.237":{"name":"@tiny-fish/cli","version":"0.29.1-next.237","_id":"@tiny-fish/cli@0.29.1-next.237","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"73ebcd0aa2456e2115da3f66b95a04c02f985fe6","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.29.1-next.237.tgz","fileCount":84,"integrity":"sha512-ApXrKCsDWaRx35FZzyTfd/0gS6FBk2wOmnZFSxC/jaPbN+1JcLiDc1jUdxI2V6g5aacKMYkrEDBxissjzn3qwA==","signatures":[{"sig":"MEYCIQDe+MZ8Vb6p2Ofj1wW/XfW7WnnelxA/fpXwAOZ31S8fWwIhANQmfOWaip2Sl3LZWdlcO6ToRHO1MzyImAxWGd/pkXMM","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":379181},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"64bb4a5966b2e0214f03f96da6235516803e6ad4","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","which":"^2.0.2","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.29.1-next.237_1787259938105_0.8588094553132957","host":"s3://npm-registry-packages-npm-production"}},"0.29.0":{"name":"@tiny-fish/cli","version":"0.29.0","_id":"@tiny-fish/cli@0.29.0","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"4ddfb0830109e05e81c0a9df92cde18f60efba86","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.29.0.tgz","fileCount":84,"integrity":"sha512-xOEvGga9h+F0KcT103+zOH0KI1aiFJYhM98MHL2Zwj2cKrcqzIUh/nvsWSY6aL7DPQgQ4XJAFuQMGKhcm3nzwQ==","signatures":[{"sig":"MEUCIQCly11kPYzVp2JA2kTAHETPFFBOfQzGRH4KT//1N4k4iQIgTrpgmT1u7twLb9FbyunXanjxwfH1SB2EKFn5AkmAuzQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":379172},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"64bb4a5966b2e0214f03f96da6235516803e6ad4","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","which":"^2.0.2","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.29.0_1787259952490_0.9752445325576802","host":"s3://npm-registry-packages-npm-production"}},"0.29.1-next.239":{"name":"@tiny-fish/cli","version":"0.29.1-next.239","_id":"@tiny-fish/cli@0.29.1-next.239","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"ccdc6ed00ce8c0f5a29d8f5bc8eb773de699af89","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.29.1-next.239.tgz","fileCount":84,"integrity":"sha512-DhFl2WvEvPALQtkk1mXg3mHAWTzLH9Ua8OqqG0i0DDXiwxY+DBt3GjTtl3U8Ic1SMK+tUMbtDu1tg/V+aKcSsA==","signatures":[{"sig":"MEUCIEwSrlVd754juHD6m7EqX4ouCGVosdR9/eZ/BCpphdYyAiEA1JQE8IBTsUARnbBZb74I2YcpbG0IQW9vy/DWExigmXE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":380297},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"a07269f999b21286bc01afa579e025dfaf7944c9","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","which":"^2.0.2","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.29.1-next.239_1787262670913_0.46162414294760934","host":"s3://npm-registry-packages-npm-production"}},"0.29.1-next.240":{"name":"@tiny-fish/cli","version":"0.29.1-next.240","_id":"@tiny-fish/cli@0.29.1-next.240","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"1f89667adbe87b8a134379fef1305c7e79a942bc","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.29.1-next.240.tgz","fileCount":84,"integrity":"sha512-mT5Tn8iMm48uIKeGq0MLxkUL1MiMgseNW/oCiw/g7W5ZvGNlA3aAo5Su0ZKXFzT4I53WlrdqAsgp6niJ7AMegw==","signatures":[{"sig":"MEUCIC4ulAP30tPjYEr4JGGjiMk4a9kNHlEtQey7Fl75987ZAiEA8/C0iiN9MHYb7krBUF3OwWZFjO3D2klHtaPCdjVrVM8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":381576},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"a7a8ac40bece144f564c070b94a45b1489b52eb2","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","which":"^2.0.2","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.29.1-next.240_1787329073789_0.036701623037625586","host":"s3://npm-registry-packages-npm-production"}},"0.29.1-next.241":{"name":"@tiny-fish/cli","version":"0.29.1-next.241","_id":"@tiny-fish/cli@0.29.1-next.241","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"72487da27ef791c2249b75c65f575452c28e4138","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.29.1-next.241.tgz","fileCount":84,"integrity":"sha512-92ET3YZxvtJE3G6kTdg9EgdDeNIsdAfEPQdj5RKHMdCxMQJ1qothYFDv41h0ex406iiwRVTkh0SA6BiD/i4Fdg==","signatures":[{"sig":"MEYCIQCaRJtxSbMb3JaOEh7a1Oy4WfkeIs81uxdBoasE7u5F2AIhAMK6bdN6H0JMQTYUL+baxzF4/XVaESr2NarXSmWixhjz","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":382293},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"ac3f4279902d4c4281e9a6d240bbaa81b223a04b","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","which":"^2.0.2","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.29.1-next.241_1787329907504_0.7870149215117892","host":"s3://npm-registry-packages-npm-production"}},"0.29.1-next.242":{"name":"@tiny-fish/cli","version":"0.29.1-next.242","_id":"@tiny-fish/cli@0.29.1-next.242","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"f28fed6519ab3ccab25e2cca14f2e8f5b4f49399","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.29.1-next.242.tgz","fileCount":84,"integrity":"sha512-Oia7e6w7prsSxVPC5yrO6YEEJbnMAYvEwA/DG8rCtw44DID2F0L/ApTWu4JxrKOadatucB/pevjff1yrM88CjA==","signatures":[{"sig":"MEUCIQDzA13vnUpiZhTdE9i7lCNvbeJCokCmN25fgYkAlDgnoAIga6MyGYDIS5UNpTYL9DCeFFTuwBzuNLycWUSbpWsA2hY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":384447},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"d12fe2647fc038adc7524c0dee1bdc4df4536d10","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","which":"^2.0.2","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.29.1-next.242_1787343430440_0.273200898492747","host":"s3://npm-registry-packages-npm-production"}},"0.29.2-next.243":{"name":"@tiny-fish/cli","version":"0.29.2-next.243","_id":"@tiny-fish/cli@0.29.2-next.243","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"44a53fd79a7890fee62c13d63ab38b40d6047a9f","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.29.2-next.243.tgz","fileCount":84,"integrity":"sha512-wCi8AvEDNs/UW793TGlWZPfS7ujr8B49++ZLHSX4fTDfBl7vTMMtG4m0D21z5I+5TknNlXlg8GYECeSuBXMDYA==","signatures":[{"sig":"MEQCIGyZlGSn1Fxljn+z2+1ip0GX2BKCmy3SAj2Yy4PmInOPAiBdLiNaht4OCDTLAXeQKdFOrfESc4SwqGgjRi376ZksDw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":384447},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"121ad1ad949ae3d3a3a93400447192bdece70cfb","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","which":"^2.0.2","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.29.2-next.243_1787343910487_0.33253275810773775","host":"s3://npm-registry-packages-npm-production"}},"0.29.1":{"name":"@tiny-fish/cli","version":"0.29.1","_id":"@tiny-fish/cli@0.29.1","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"b8d0cab307e0e6222913b9ac86ecc9880e33e4dd","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.29.1.tgz","fileCount":84,"integrity":"sha512-Fcn7XiexyVUWXwd4hTHYvHlhPQZiOUAvRnG06v4WKW8TyP2nBTaw4rPLXNT0TCDOwb7sAg7FOcYXU9DpKT+VLg==","signatures":[{"sig":"MEQCIF4/gPseRCAmI5bu+Bd25A9OWRYWGiJ2TxG3ptf6alqvAiAUIjADtQ3F3wSpWwr6xaeY/FR3azYgsf9o+ze1ktT7Hg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":384438},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"121ad1ad949ae3d3a3a93400447192bdece70cfb","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","which":"^2.0.2","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0","chrome-cookies-secure":"^3.0.2"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.29.1_1787343915207_0.7104925678846452","host":"s3://npm-registry-packages-npm-production"}},"0.29.2-next.246":{"name":"@tiny-fish/cli","version":"0.29.2-next.246","_id":"@tiny-fish/cli@0.29.2-next.246","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"908045f24912f68ab5b9107a8d3b677d7752c6be","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.29.2-next.246.tgz","fileCount":86,"integrity":"sha512-bop1Jt8cSog66cKRxLkss7DxnjMYuc7h/7oVK8FhQeLNpLfa9ppzlcNyOFKNCyyw8EezIwZJ/dzZc6By/o1vmg==","signatures":[{"sig":"MEYCIQDk7pIvTYJacL4i3/YdYLGIM6pPKmw4Sx4x8bJG14PIzQIhAPCakn6XJE5YMn3aLAGHpC3debv7xUOzWOo92heLmrYo","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":396471},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"0c752fa4235ef0a5c0e36af99179a833c617a992","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","tldts":"^6.1.86","which":"^2.0.2","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.29.2-next.246_1787600753211_0.20984703315746778","host":"s3://npm-registry-packages-npm-production"}},"0.30.1-next.247":{"name":"@tiny-fish/cli","version":"0.30.1-next.247","_id":"@tiny-fish/cli@0.30.1-next.247","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"2a932c2c4895bbce46647a36986dd91363ed3e44","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.30.1-next.247.tgz","fileCount":86,"integrity":"sha512-4LZM9fJM8Yk6sVQcxLGk8dqf7vLsXaT29yZ9KNsNMlu6VGOm/kAf7kwP6oVh5an7a6BDoo35/oas8kjNpv/Fqg==","signatures":[{"sig":"MEQCIEPitGRV30ypNT7RCVz9VDWgpk4dK3QxV3+P6iVF6xHOAiAW/Qjj19Xc3BVvmxbigwvFb8v2U3L3erZnatA3HSfMRg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":396471},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"186f6a3a60717e040f66d31b6885b591aae91d13","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","tldts":"^6.1.86","which":"^2.0.2","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.30.1-next.247_1787673357834_0.6472734552947639","host":"s3://npm-registry-packages-npm-production"}},"0.30.0":{"name":"@tiny-fish/cli","version":"0.30.0","_id":"@tiny-fish/cli@0.30.0","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"025bb16d1f7f8d3991d94e335e8a93577b226511","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.30.0.tgz","fileCount":86,"integrity":"sha512-+QFycIRBdDdYU9qVLBM4JOdCiyZcUCZ9OeX+taCgg+v78kI8vCtNCstbmZEWkEaxvcPoql9czM8a7Zx40I+EiA==","signatures":[{"sig":"MEUCIH6w03Wzw8v3gLEMMLYol2T9627HCTB9JUrK/+0RoVJ8AiEA1daK8Kcvza3dxfvhMaeIsMh6OvXbpgyM8PWLEE8HxkM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":396462},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"186f6a3a60717e040f66d31b6885b591aae91d13","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","tldts":"^6.1.86","which":"^2.0.2","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.30.0_1787673378777_0.22477790086684757","host":"s3://npm-registry-packages-npm-production"}},"0.30.1-next.249":{"name":"@tiny-fish/cli","version":"0.30.1-next.249","_id":"@tiny-fish/cli@0.30.1-next.249","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"2f8abc31664c6b08062727b8681cbe0764349228","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.30.1-next.249.tgz","fileCount":88,"integrity":"sha512-CccSjOhPLtlUW8UtlfJZkUVFO3I5on/sRiXoleUUL6lqNtyjC+0lZFXaAT2FUGI/aVKceEMb5vxmJEHqX+YLsA==","signatures":[{"sig":"MEQCIGizja3AoovZn8m6roILHM+JZEY7GBkki2VVtO2l4KtrAiAtFwCcGcMwQs1N+IYdVgOmG1pxoxf0wEhiMddTGcq0IQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":404543},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"059e96aef6f4e3c3557fffd4d40a6c39fbcfe50b","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","tldts":"^6.1.86","which":"^2.0.2","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.30.1-next.249_1787675055529_0.7678625021736598","host":"s3://npm-registry-packages-npm-production"}},"0.30.1-next.250":{"name":"@tiny-fish/cli","version":"0.30.1-next.250","_id":"@tiny-fish/cli@0.30.1-next.250","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"50a592db47bc6ffa97923fe12e541e1fda915ded","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.30.1-next.250.tgz","fileCount":88,"integrity":"sha512-4p7RPBrZCxWLTrokmtZoUBJ2hi+Kw2k8yaZlce4mPBLJX0eoIHj760DrrpyJ6JkXqWv77v8DhNX+iLU5mz0JGg==","signatures":[{"sig":"MEQCIDhQF9CY0qYrRLNT3pELPfOi2Tcju/TsGy95s6/xCazbAiBle7Qch+Zo99FosaHQAH21IRCFqYWcb4+zcEDj83Z4EA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":406100},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"fa9ec48ed25fc1f9642a3f170eaf2913e55738f3","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","tldts":"^6.1.86","which":"^2.0.2","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.30.1-next.250_1787677248109_0.48809558038105494","host":"s3://npm-registry-packages-npm-production"}},"0.30.1-next.251":{"name":"@tiny-fish/cli","version":"0.30.1-next.251","_id":"@tiny-fish/cli@0.30.1-next.251","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"4865584db728a84804c428b6dae48d9105bbeef9","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.30.1-next.251.tgz","fileCount":88,"integrity":"sha512-CHSVnUxB8VvYTCTD9N8tXV5vsTZuj5dlCGT4IzA2BIhWpBaE0FbdMTc92dfjG12d/wl/gQX/S24U9Mu1bMki4w==","signatures":[{"sig":"MEUCIQCEvel/8cB9aCpjfRUeh1b7mCXDga5CXJAToDCWrgoyAQIgZM1ZZ/v7i3m5n2RateFSdIQc0743GfFHAvkb7nJOR4o=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":406506},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"f54953e8ba9e24b39083aefb6a5c81ed7e5c5646","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","tldts":"^6.1.86","which":"^2.0.2","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.30.1-next.251_1787677743235_0.19386624325828627","host":"s3://npm-registry-packages-npm-production"}},"0.30.1-next.252":{"name":"@tiny-fish/cli","version":"0.30.1-next.252","_id":"@tiny-fish/cli@0.30.1-next.252","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"4637abfe67c66316fb7d32f02cc06891a9a3ebf7","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.30.1-next.252.tgz","fileCount":88,"integrity":"sha512-ZDA18VaTr2AwDcL0XA+X8fERi833Jl9JfvGhNVwlKheFOZ2DMIdT5+rh763a4aPabdJ7Z5nxUDAjkvgDpQ3J5A==","signatures":[{"sig":"MEUCIEaO6JYzf5C9cv0FCvIzEPXLad5NprTWH0R6br7QtLqwAiEAgZPxqGZ85ipd9qAQZxuOM27Bt8oYr7wKDkO9oFMLu8k=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":413856},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"48f635372658426755744bf10f250e0fe1b51cc8","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","tldts":"^6.1.86","which":"^2.0.2","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.30.1-next.252_1787679493762_0.3373344938342966","host":"s3://npm-registry-packages-npm-production"}},"0.30.1-next.253":{"name":"@tiny-fish/cli","version":"0.30.1-next.253","_id":"@tiny-fish/cli@0.30.1-next.253","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"2af61d380e6c5b90ea42f445f539b742920578ca","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.30.1-next.253.tgz","fileCount":88,"integrity":"sha512-b9T1HWtwTQ7L32i2RR1bSoedBkq8eyzi/00zCi+rbjJr8V7+rIaAuTDkf/O24RzUr63jtP94sMCU8CpVhiw04Q==","signatures":[{"sig":"MEUCIQDVyOPh7k0KxYIB5sv8syOF1MNKHdM9fb0k3l7gMBIB9gIgY8pLRhn3MOgjk5Nk03+UtCW4ttAFjZLVvctKq40xUbU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":417393},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"b39d5aa8c51be50facdced427e708a8f860e721b","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","tldts":"^6.1.86","which":"^2.0.2","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.30.1-next.253_1787680503495_0.914097134470502","host":"s3://npm-registry-packages-npm-production"}},"0.30.2-next.254":{"name":"@tiny-fish/cli","version":"0.30.2-next.254","_id":"@tiny-fish/cli@0.30.2-next.254","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"81fbf3e8fee4478133a2218f20023dadf8983f57","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.30.2-next.254.tgz","fileCount":88,"integrity":"sha512-4rks3SLZaiERvP/ekmeEeMwz09csE85RKIxmjc3bcADZ17w1oV5sycm2EiV0Xp3eWe0s4kogTI9myKYMk8YlLA==","signatures":[{"sig":"MEYCIQC2SyQmoLoiopSwlEsDgankM24q1SJL613O6XaCV0OLwQIhAJL6A7J0KFAxNVkw2NKzguAC6PRHEw5ie8VSZv5Am6j7","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":417393},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"51eb92447ab9b6b9f9d44be2e5c85dffcfce1191","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","tldts":"^6.1.86","which":"^2.0.2","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.30.2-next.254_1787682233684_0.1166821292073903","host":"s3://npm-registry-packages-npm-production"}},"0.30.1":{"name":"@tiny-fish/cli","version":"0.30.1","_id":"@tiny-fish/cli@0.30.1","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"10085e882bf75a87fc78506ae762bdbee6ae5f51","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.30.1.tgz","fileCount":88,"integrity":"sha512-gpm/ihwGFXDKZwAU0Xfst5L994YqdWjrLrq8ZXsRnCCsfYtANbw8CDEmZ/NrFydXsoO2pW0lJ7lXjw8eWTdeMg==","signatures":[{"sig":"MEUCIQDXrUiFk5kly/p7GxPQ9DknHjDBEI7W6jEj4YezXyYYSQIgYfgsApHNo80ZHY/HK9rzzZrfNEOULbm6xFeq34j/Mec=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":417384},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"51eb92447ab9b6b9f9d44be2e5c85dffcfce1191","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","tldts":"^6.1.86","which":"^2.0.2","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.30.1_1787682335950_0.200442522861628","host":"s3://npm-registry-packages-npm-production"}},"0.30.2-next.256":{"name":"@tiny-fish/cli","version":"0.30.2-next.256","_id":"@tiny-fish/cli@0.30.2-next.256","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"e9cbc6f26ce2f08b9d3ac19b06b6cb3b4e16a0ac","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.30.2-next.256.tgz","fileCount":90,"integrity":"sha512-pTLJ7duAC14lD56+KIaKNbOHwzhn60RovzEefgX6ihw6FfB7GqCBeMq95837IQN+tbUtM1TD317Ffx6m9Mxbiw==","signatures":[{"sig":"MEUCIQCAZuDSLMVZSvlKymhSRjBKEIBkneuSFt3AoXmLwYuvQQIgGDOoTYDdou3naHpwZF196g0mGLFn+4PkdwVe9qcrlLo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":422176},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"ebb1296fd30d32ce9d0a36722c11fefba39c05b5","scripts":{"lint":"eslint src tests","test":"vitest --run","build":"tsc","format":"prettier --write src tests","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","tldts":"^6.1.86","which":"^2.0.2","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.1.0","vitest":"^4.1.0","prettier":"^3.0.0","@eslint/js":"^10.0.1","typescript":"^5.0.0","@types/node":"^20.0.0","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6","@typescript-eslint/parser":"^8.57.2","@typescript-eslint/eslint-plugin":"^8.57.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.30.2-next.256_1787683772496_0.7967798537406527","host":"s3://npm-registry-packages-npm-production"}},"0.30.2-next.257":{"name":"@tiny-fish/cli","version":"0.30.2-next.257","_id":"@tiny-fish/cli@0.30.2-next.257","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"f6d8f89d910c3993a2f25c4e9efafd20a00a70fa","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.30.2-next.257.tgz","fileCount":90,"integrity":"sha512-Zl1WbfBn5aQb0g4bmv0TVfchmUXgrUWGP4V1lePojEalIQTh/Ja6c3FoG80MTLVtJxTipcnkCFK3JsxTlII2Ag==","signatures":[{"sig":"MEUCIQCOKJM5GT89e7KN0Kh4eEHxCSaQMfO36nZAnoU543znAQIgMv6NpD7y5CyjbOZmrZHVnSGPkJ/KEg2F2UI8bVYUjZ4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":422428},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"7feca6ecb0d680a63480ee093b12a2cea1aca2b1","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","tldts":"^6.1.86","which":"^2.0.2","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.0","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.30.2-next.257_1787686485889_0.8014359601562806","host":"s3://npm-registry-packages-npm-production"}},"0.30.2-next.258":{"name":"@tiny-fish/cli","version":"0.30.2-next.258","_id":"@tiny-fish/cli@0.30.2-next.258","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"e7239737a4854a16fbcf541c3c67058e852ea10d","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.30.2-next.258.tgz","fileCount":90,"integrity":"sha512-vGf2QJPpQp3I+P7pc47AFe9mCxSP4Amy3OTwM1YRjkKHiu56g0+yGjKdBD/yqZAMQ9I05/6leM0T1PxoMT5Bdw==","signatures":[{"sig":"MEQCIDmqfeNe5nshLGw+WrkR82ZRoKDw9CDcDPGdjcP6CRJKAiBntzlbkYM6ubX5rSl10COeEEDj182qyw6Y3HRRdzKqNw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":422919},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"0f7f7faad3d077359d4e525d9e56b5fdbef17158","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","tldts":"^6.1.86","which":"^2.0.2","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.0","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.30.2-next.258_1787687251769_0.09995799819968232","host":"s3://npm-registry-packages-npm-production"}},"0.30.2-next.259":{"name":"@tiny-fish/cli","version":"0.30.2-next.259","_id":"@tiny-fish/cli@0.30.2-next.259","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"caa1ce3fda294f009b11adfa06422dd3f3a2a25e","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.30.2-next.259.tgz","fileCount":90,"integrity":"sha512-6lvZs+v7T1/I/7eERJZ2MGX/4uNfZYKvHinSmNrgYYpEhlI0Au9/HXTWeUgNqBoE6QOlRUHxTkMImSC1Kk4buA==","signatures":[{"sig":"MEUCIBkaydFYNece7Z4RR+2/XElf/iQfei8yC9TVVIV3mCadAiEAgcxuIVcEtP/M/RMyTYI1y3kT/Kdut128+1QYsD5sC7U=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":422919},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"9cb5f06a478ccb499f542cfdbba829faf9d55334","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","tldts":"^6.1.86","which":"^2.0.2","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.0","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.30.2-next.259_1787687769769_0.14453708577016555","host":"s3://npm-registry-packages-npm-production"}},"0.30.2-next.264":{"name":"@tiny-fish/cli","version":"0.30.2-next.264","_id":"@tiny-fish/cli@0.30.2-next.264","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"dc1dcab6a91c709500a31ab1ec11a46020380f6a","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.30.2-next.264.tgz","fileCount":94,"integrity":"sha512-JY8XVHh+fIyZWUMzENDoC8WYm9X8+xGOTDczqGZy0DrZKjVSf5qoTU4QnXC0r/S1JAgcE0hr6Qusm4lt6QUJGg==","signatures":[{"sig":"MEYCIQCRJNDrGfmrhzpDqWxHyhcsFcIu2rs+lDdKaAO0UbHy/AIhALWvujoajxq7TbSSy2U3ci/0YkV/vFuapsP16e0ZH8rj","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":437645},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"d84f633ba52ba460214c3a33ef60f9f189134fa3","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.0","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.30.2-next.264_1787693691444_0.40490576147759416","host":"s3://npm-registry-packages-npm-production"}},"0.30.2-next.265":{"name":"@tiny-fish/cli","version":"0.30.2-next.265","_id":"@tiny-fish/cli@0.30.2-next.265","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"483cdd9a7f9fb3007c4fc7230240cb8934e1915b","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.30.2-next.265.tgz","fileCount":94,"integrity":"sha512-5SLXvALuvMQcn0F5nHFvpql3CmvyN+4Mzbm7Fp8B6dvZd2jBzzS201hDZAMlHbMxz4iOaawBdv+PmEmowrVuCg==","signatures":[{"sig":"MEUCICC3tLlnExxe8LmXhTU8y7YWwwGwmDaaWQRVCTJPjTTAAiEA0cD+KL9fFd2vA7QEovbb+FtJ7lkKedj/w8D5HTug8Kk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":437393},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"9385af187fbae6dc8772b233124d8d16e149317c","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.0","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.30.2-next.265_1787694146277_0.42404772122659273","host":"s3://npm-registry-packages-npm-production"}},"0.30.2-next.266":{"name":"@tiny-fish/cli","version":"0.30.2-next.266","_id":"@tiny-fish/cli@0.30.2-next.266","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"a2eacb029e0dae011cd9858118ea73d12810cad0","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.30.2-next.266.tgz","fileCount":94,"integrity":"sha512-oakRggKO7BLnYpQFExso0zfBvnPbIbjQ39LvLQEuNbt4i+UHrI/MPW3pSD/a2YBmQZRHLUsaKEen2llwtukzdw==","signatures":[{"sig":"MEYCIQDom4fmFK4YOTsZKaXgCm5asxm3+k81rhRR4JkJ6obR0QIhALfs5C1cLNbF9Iwf9GWZxa7MaK4nfbJ726j3KhKr0WNb","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":440319},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"8fba1c86e647c0f0af038cf23782bc2c38e4216e","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.0","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.30.2-next.266_1787694430360_0.11049638345546398","host":"s3://npm-registry-packages-npm-production"}},"0.30.2-next.267":{"name":"@tiny-fish/cli","version":"0.30.2-next.267","_id":"@tiny-fish/cli@0.30.2-next.267","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"9296471a44c0945b8acc941a9683e45ecde535fc","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.30.2-next.267.tgz","fileCount":94,"integrity":"sha512-B1i6j+rOkDevO8ETD8J5diX8Urc1O030/BCdxeTDcrNoHu23R0URH73v01Fmreitet7HOnIqCot+YkwxYpB3Sg==","signatures":[{"sig":"MEYCIQDTFiSzOYnx9OUwxM6wyvU+rT+3kUuNGkhMJ7S7jBrO8QIhANTU5UGikMJCFvW3bXOn+hLLak2tQmAuNzvEnfPT2YS0","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":441146},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"765ecbd34a8478ee8353dfd5e44edc1a54bd47e7","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.0","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.30.2-next.267_1787694823430_0.8474011893708573","host":"s3://npm-registry-packages-npm-production"}},"0.30.2-next.268":{"name":"@tiny-fish/cli","version":"0.30.2-next.268","_id":"@tiny-fish/cli@0.30.2-next.268","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"3d28cacd4f0a72ad7b721ba4aaf657cc787d6a43","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.30.2-next.268.tgz","fileCount":94,"integrity":"sha512-YL0ltpUWr6XBR9FLHHJct0BDRTidkabBTsmG0u0IJozSiy7X0N8oz+ZvgGuv3xmMnU01RC/hYbxwYxuBf4kAWg==","signatures":[{"sig":"MEQCICd6H0SolBwHQvpaJcDhze99cDwsYuKlB3ezDv4CsfLYAiAZJv16btc/8XjEa/WxAhk1rvq6fyqTk9FOXSloWIpQoA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":443937},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"70813f134c528c73c00bb57f70bd1b017d75b840","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.0","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.30.2-next.268_1787695145253_0.8255273423102281","host":"s3://npm-registry-packages-npm-production"}},"0.31.1-next.269":{"name":"@tiny-fish/cli","version":"0.31.1-next.269","_id":"@tiny-fish/cli@0.31.1-next.269","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"75529014f6f123a492a4eb37ebfd066cfc1973b9","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.31.1-next.269.tgz","fileCount":94,"integrity":"sha512-pbDXealauwwzKgmc9MuJhAt+EKcI9TGMVIWGoMFl9V0UfLMYR2tmuRDrs4wolIhkfcjRHuY1VmTH7RomCq2+Dg==","signatures":[{"sig":"MEUCIGpqaI8Syakw/bfG+lB6TM8RMtfvQi+ePME7IiaFIwW0AiEAup1MjQAJRqbrd4tNJHgdAPSrBV5j9ylcr7TlP70bCcs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":443937},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"c47f2a8c972751005e5cf469ae3d3e13ec82a792","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.0","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.31.1-next.269_1787696400550_0.6720833206356689","host":"s3://npm-registry-packages-npm-production"}},"0.31.0":{"name":"@tiny-fish/cli","version":"0.31.0","_id":"@tiny-fish/cli@0.31.0","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"d7b9471f88d8f687f567dfb12de964de8c09cba9","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.31.0.tgz","fileCount":94,"integrity":"sha512-ol4K7LEFJjC7tfrT0zoIM2iSwFKkUDYrbFO7YkDPOeZhzAnh1ZJYsDf/vUzMGc6cLk12KW5MRTv+GWF6xBTdzw==","signatures":[{"sig":"MEUCID6W9uEV/twmT2rzinBazS4wVoCgU6CeyFEZDP+g/3O2AiEAiujwx/4pI1qM2er2NlTelspuiSBckdWHwmHMTGZJgqM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":443928},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"c47f2a8c972751005e5cf469ae3d3e13ec82a792","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.0","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.31.0_1787696403796_0.12399380943878135","host":"s3://npm-registry-packages-npm-production"}},"0.31.1-next.271":{"name":"@tiny-fish/cli","version":"0.31.1-next.271","_id":"@tiny-fish/cli@0.31.1-next.271","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"fae45f531856fdb26a3cfbc0ab9b3fb503a262f9","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.31.1-next.271.tgz","fileCount":100,"integrity":"sha512-p8WzT/61RqTMs9Z+V4XcS5ST9/RTHWstDBdhcfUQSAHvk3MEguF3xJf/NSexH9CC3YFAXD3uQDtM0ez/r7D0uQ==","signatures":[{"sig":"MEUCIGjjix6FPPHvHEENHiPTUNeOtGvU19AsTaEWO4eIOF4qAiEAgIXGjpUQeKp4AaJ17gxk2AfqSvqWxC3HKW17SaFBqx0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":447573},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"1ba45790975b6d9deb3ac5d500f9a36e4b319546","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.0","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.31.1-next.271_1787699168045_0.721681097041893","host":"s3://npm-registry-packages-npm-production"}},"0.31.1-next.272":{"name":"@tiny-fish/cli","version":"0.31.1-next.272","_id":"@tiny-fish/cli@0.31.1-next.272","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"0eefc431615e34aeeee5931acfb0a5585daea9c4","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.31.1-next.272.tgz","fileCount":100,"integrity":"sha512-I6ugx6VMtKOMQ86lYQoKUQXNSN31DGd78V3IUebEJe5X5XavibP/QDrsA9zvkxCbRz0r0uIhK8AcWd4y8QY+dQ==","signatures":[{"sig":"MEYCIQDC2wstsUaRlEw1GnECovOH0IEWMTTYM5s9hjUSPdTWnAIhAOyeCN/1ZQSWZsLQ3QTfRK7j9RssQEtKeetDGGzughZu","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":449545},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"346a0db137fa2b22df6555d42505731100417e59","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.0","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.31.1-next.272_1787699523494_0.8598783164817771","host":"s3://npm-registry-packages-npm-production"}},"0.32.1-next.273":{"name":"@tiny-fish/cli","version":"0.32.1-next.273","_id":"@tiny-fish/cli@0.32.1-next.273","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"b396217f277c9a5c95f37785d2f0d48afc821941","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.32.1-next.273.tgz","fileCount":100,"integrity":"sha512-Itq7VPNh2jK3yrf1bjtXCDi3bKeqKAI7TYc4nNvdzm5cuI/9rxWnz4ZMx6LVvgpBIS7Kh67yUWFpnrmtVLX26g==","signatures":[{"sig":"MEUCIHmzY2ci9i5/PZvvpZuq/uibvOnT2jph0nZ/0qBHVJnbAiEA/EwQpPvgzeF9MaMrAtGX8eoQLja4z4TZFUp6TMbn3xw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":449545},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"ba9cf03e1929bf4d576eb410f507cd878ac8df78","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.0","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.32.1-next.273_1787704753181_0.8491632865820022","host":"s3://npm-registry-packages-npm-production"}},"0.32.0":{"name":"@tiny-fish/cli","version":"0.32.0","_id":"@tiny-fish/cli@0.32.0","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"c9fab610b61627cf057e13f3161b3d49bea88831","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.32.0.tgz","fileCount":100,"integrity":"sha512-yEXDQpssbMcFv+uWOwyjiDieEuKMatqgUJy05SGzeKJIC68TlAxVu1XaKS44qQIA82EUb3fHqZdV8C1OlRt+0Q==","signatures":[{"sig":"MEUCIFcrKNFr+Fu6b6M/3gsY8NJ7uYdk1QrYkDLdWQj35327AiEA4xQuGn1nXcdWmSrNaG+seYjArZUGAp7fwrOhCWet9tI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":449536},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"ba9cf03e1929bf4d576eb410f507cd878ac8df78","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.0","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.32.0_1787704778893_0.6048665325148326","host":"s3://npm-registry-packages-npm-production"}},"0.32.1-next.275":{"name":"@tiny-fish/cli","version":"0.32.1-next.275","_id":"@tiny-fish/cli@0.32.1-next.275","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"c9e32e426be903a20688292c49bbc0cc9e736c7c","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.32.1-next.275.tgz","fileCount":100,"integrity":"sha512-d3WY7GVxsJcw6T5TVL2+VUDGnm5SdjZrnI/Xr4s4KFY3/irHY84+Pm2WcUoSTuWHoMZI2TBoXUuZRR32O1hv0w==","signatures":[{"sig":"MEUCIQDV/3eevOJ98MyfG2TM+5RPbOEjPi3DJLjpz/UJnvzR9QIgBaE08sKqRcwvgIBAg3JKToN9QamvgGLLjpnesQP9wig=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":450464},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"82240eca5fb63fc3a4bb80fa43c96bba6572fe74","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.0","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.32.1-next.275_1787781462213_0.5932759063222721","host":"s3://npm-registry-packages-npm-production"}},"0.32.1-next.276":{"name":"@tiny-fish/cli","version":"0.32.1-next.276","_id":"@tiny-fish/cli@0.32.1-next.276","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"f5fd029c27cbe321572c2f53199cc5567a8cbc36","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.32.1-next.276.tgz","fileCount":100,"integrity":"sha512-aY6uF0yhvLRlWljXw/SWoayD1iieHNraYMgFJ0hqv9/bnCHJsPt+2U7gjYoOlv+Zb6kh2/KL+flwMJGfqRHPgQ==","signatures":[{"sig":"MEYCIQDXari1Xv0OhpQEDvwve1lLOH63Edx6sO7x/zxTHiPQkQIhAI4GM7qCOYtB7r0vYS1SEq7advgs/Eum1x7+CyY0ALod","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":452686},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"4eb046057a0e0836b5497b0c604d9964b9392aba","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.0","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.32.1-next.276_1787785866725_0.02605368128447849","host":"s3://npm-registry-packages-npm-production"}},"0.33.1-next.277":{"name":"@tiny-fish/cli","version":"0.33.1-next.277","_id":"@tiny-fish/cli@0.33.1-next.277","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"7f87095c16f2f25a60091b462dbb5c735e9b01a4","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.33.1-next.277.tgz","fileCount":100,"integrity":"sha512-TtxOXyTzGEj/mKNtNUBcqMRdyynqkskMr1HQPvEo84l5AZxzJNShNtS6gmVq3pLHue5G7wG5zVlAnehgL0nf7g==","signatures":[{"sig":"MEUCIQCGV5p8UkfB+7WNP+qOpUxh+UbuJ+SuEjJ7ouNrEwp7aQIgIu8Sz2oS+NcfwcEVhrnGIb1HPWQJpeY0qRI/f5H5cuQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":452686},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"3fab2a1546d6654673b5a84b65fcf626734e114f","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.0","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.33.1-next.277_1787789603935_0.5045886197145415","host":"s3://npm-registry-packages-npm-production"}},"0.33.0":{"name":"@tiny-fish/cli","version":"0.33.0","_id":"@tiny-fish/cli@0.33.0","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"bc7a3f5933ef486091100133ec986581d96a8182","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.33.0.tgz","fileCount":100,"integrity":"sha512-eXWqyCVsSU4LKjpF0+ImXWnPDbSlCsL4XtlHmQcpqjc/iGSopBDSn2IhqCA3CLR75d1Um3B1c25IA4c6IIxQ4Q==","signatures":[{"sig":"MEUCIC09CkIh66TmnQ26AKTEUXaj2WeL478i6zoRP1D7cvYsAiEAmeVXYGuN/Qpzc5eFVuY+FOWjjHs1CbjjoTwlUH3k4EQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":452677},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"3fab2a1546d6654673b5a84b65fcf626734e114f","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.0","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.33.0_1787789626460_0.5262977824519526","host":"s3://npm-registry-packages-npm-production"}},"0.33.1-next.279":{"name":"@tiny-fish/cli","version":"0.33.1-next.279","_id":"@tiny-fish/cli@0.33.1-next.279","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"2b4f3b3374e03763012f6b7666e4fcb8a7dc7d1d","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.33.1-next.279.tgz","fileCount":100,"integrity":"sha512-GbVtwfWq6tH8GhlcpXboIwfHkeAG2UUZQzD3t90dgJAt6Fa1QH2mTp9oX2T/FVA5lbymTLFYVhzBHuY0HTK9Ng==","signatures":[{"sig":"MEUCIQCLu8rVXd6aeR7SQxC2N89ML3BGojSWT1B+8gDbN3qagwIgFW/LQakev2VoH5o8bpm394XULW99w+pWNC0NyeMUifc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":456103},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"09d98bad50026db03471fddf64e3f8978e1a7481","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.0","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.33.1-next.279_1787852513258_0.3796984403298995","host":"s3://npm-registry-packages-npm-production"}},"0.33.1-next.280":{"name":"@tiny-fish/cli","version":"0.33.1-next.280","_id":"@tiny-fish/cli@0.33.1-next.280","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"852566a06994be788e168782c0565e7d3879de5b","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.33.1-next.280.tgz","fileCount":100,"integrity":"sha512-eIXrjW5L+rY26EpUusnofAm/X//LsjxzRHqsF8FsfwS5o88OuhrzkvD0vTBj30Zh4OLdne0n8f84mwuWGZPlEg==","signatures":[{"sig":"MEQCIANgQ2eapLIefpErW4WGcWp8fZJTyeTIjjugjmOnxheGAiAGxlmCBNLnkVCAXSLW2DIROVmPJeyuxRvqyv81d/lUkg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":456671},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"1672d98f920c609c703181c42d98db9375ba8ea1","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.0","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.33.1-next.280_1787861689042_0.2106627047608296","host":"s3://npm-registry-packages-npm-production"}},"0.33.1-next.281":{"name":"@tiny-fish/cli","version":"0.33.1-next.281","_id":"@tiny-fish/cli@0.33.1-next.281","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"f692df2e5f074d808127e5b797591a03ce6c465c","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.33.1-next.281.tgz","fileCount":100,"integrity":"sha512-NQ8H9yrMTU/2uJEZwzJFQb+ARbPwMjcz7G2ScQhU6ZSEbxX68NiP/Zgb7pdS7VXRjA7WpTkeJZmDSVslUu0pFw==","signatures":[{"sig":"MEYCIQDAxcO6768PctJ+H9Tw5kJcFIC8HQIBskYkExggzdz6PAIhAKS6wNTkyZbjAp38fZUxb5rpmk0IPviShPrPn4fiL+4w","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":459420},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"0a20c2cad5b8c2bbf4e95ff0959c37674bdeb1b3","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.0","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.33.1-next.281_1787870903961_0.8493143597793649","host":"s3://npm-registry-packages-npm-production"}},"0.34.1-next.282":{"name":"@tiny-fish/cli","version":"0.34.1-next.282","_id":"@tiny-fish/cli@0.34.1-next.282","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"c1f2b899490417ff50e847eed55b98810fd88dbc","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.34.1-next.282.tgz","fileCount":100,"integrity":"sha512-M2mfcrnejNNJvSbZMvh2M9hViIngy4BV0IvUPdlvrZQCLrgg3WZSm9DaJ9qZmY33iA/d4lO9b7+10TjO0NagjA==","signatures":[{"sig":"MEUCID/41upMZ4zA40VtU1Qu0hvDzMOSMcdEK+/xLIRsCT8YAiEA7Gzt/BF3CJciDukKw5AQE0MEOSrhvuzX/MKmYCv4XD0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":459420},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"552ce11ef67aac0f271676fc53684413dfe670e7","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.0","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.34.1-next.282_1787874385298_0.037408487489120734","host":"s3://npm-registry-packages-npm-production"}},"0.34.0":{"name":"@tiny-fish/cli","version":"0.34.0","_id":"@tiny-fish/cli@0.34.0","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"1835a397be609312adc2f9f35a07589e8c10767f","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.34.0.tgz","fileCount":100,"integrity":"sha512-9G9NG00g5pR11/5LXlMTd0skFnBg8kO2hzydyena9Zvxy9QDRXi24hOPKaTI5HZMZusJ3yjMNYipcbOnOcrctQ==","signatures":[{"sig":"MEUCIDVac7AevstxNGbz3M8oR9R5PMGo3T1eT1XpnyYgzJ3rAiEA05DDr4ON+6JHQTFhNViVpZyLL+xgpmj8ARvAeoSxF8U=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":459411},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"552ce11ef67aac0f271676fc53684413dfe670e7","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.0","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.34.0_1787874440363_0.6110327323957441","host":"s3://npm-registry-packages-npm-production"}},"0.34.1-next.284":{"name":"@tiny-fish/cli","version":"0.34.1-next.284","_id":"@tiny-fish/cli@0.34.1-next.284","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"766d887e406f38ae5fddb70fe55337a9a069c35c","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.34.1-next.284.tgz","fileCount":102,"integrity":"sha512-eeK87R5yGK/ONVdU37soRZPCx8Tji4/t0DaKd9o9nhggn5ANPW1hjTK+/BDlydCVi3Nw1aREdU4OD7Z2YEp6YQ==","signatures":[{"sig":"MEQCIBAE+6rnMdPL2fVbpNDKadwPLQu9U53L0X/MeRRQsr4KAiAC90f0hkZx1tTDa2uaWJH2N/zuWk3kaaztnde6EKrCTw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":465894},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"5b5dae70de5890064265eb8602e672ef111793be","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.0","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.34.1-next.284_1787958178287_0.7560284116906568","host":"s3://npm-registry-packages-npm-production"}},"0.34.1-next.285":{"name":"@tiny-fish/cli","version":"0.34.1-next.285","_id":"@tiny-fish/cli@0.34.1-next.285","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"74907c9b7daec64278484764a9591b5b4daa8200","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.34.1-next.285.tgz","fileCount":102,"integrity":"sha512-34vfb8UhO8ZjKpoN/8AYt+dHTLFdjS/7x4M/DkMojxuosFIjRxDGRwU7i+4STUbYTiu6o7zhcBDoSqBnbAoJ6Q==","signatures":[{"sig":"MEQCIDZq1nbTONmT54aS9by+0QDE4DcLo6Ah+47YxyrdrfdnAiAkcxSGjvjkuGAgqM0g3Ozv4Z2FZXqtlALGh6M9gqZE6A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":467182},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"052955cde17c7db8ec14ac285aac46f744a1032a","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.0","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.34.1-next.285_1787958602641_0.5218830475178133","host":"s3://npm-registry-packages-npm-production"}},"0.34.1-next.286":{"name":"@tiny-fish/cli","version":"0.34.1-next.286","_id":"@tiny-fish/cli@0.34.1-next.286","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"1679835ada3ef7b0c754ae4d0b34beeba00c2cb4","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.34.1-next.286.tgz","fileCount":102,"integrity":"sha512-KU7sdQf474RuQlTxgE8id4oLSCWtLfREVshpn1kLr1AxjdBbY3v1MWrrstmtwiHVAHvfEjfTqD8fAD41qLtu5Q==","signatures":[{"sig":"MEYCIQDDCjsxZm2NhC+PsDdTOtCexOVSmc6NDs2vE6shW5VpGwIhAJ2OAloj9hp7TRdQWlA/zAmLESt2ZHRqGdJXTbdBEGpl","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":469908},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"a15571d652341412979cb6e8e261342dd8945603","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.0","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.34.1-next.286_1787959706022_0.20972674091165588","host":"s3://npm-registry-packages-npm-production"}},"0.34.1-next.287":{"name":"@tiny-fish/cli","version":"0.34.1-next.287","_id":"@tiny-fish/cli@0.34.1-next.287","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"d1fbc35ea127fdb6312f63c62a32d09375abb066","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.34.1-next.287.tgz","fileCount":102,"integrity":"sha512-r5ZLqUIjHAJK8FNRcLOMBo6iaj8mezYhHXcJ8YSNrIEpoBqmfiXEf2hkluAf9aG1oPEpWdlSajEYCzoGMDFqzg==","signatures":[{"sig":"MEUCIQChzJus5Bt00sOuS8gDRSFfvvd9wzBFbdpCVR4jwrmc6wIgWn+bUA9Qd5BXsFOubwcKyXnIeluABv6RQpWmaVL1688=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":475822},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"fa8f17e5976553d83d37acf2056e50de03ee37fc","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.0","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.34.1-next.287_1787961998744_0.6954472595426504","host":"s3://npm-registry-packages-npm-production"}},"0.35.1-next.288":{"name":"@tiny-fish/cli","version":"0.35.1-next.288","_id":"@tiny-fish/cli@0.35.1-next.288","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"29a79a004cb49b36b827302cb17b1cad7ae2dcc2","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.35.1-next.288.tgz","fileCount":102,"integrity":"sha512-wg+tSt4OmDvxif7OdzJ3UHwY2fuoS/hQbIDBrVqtjz4OjjX/HE+HcnvVJYNqGv8cDAm0x8uG0Y1DxNv87nB4uw==","signatures":[{"sig":"MEYCIQCqPk94mJT8BK/Crw9Xo9Zs9SFEFsV/v324qcaqLEagjgIhAPV6FsqIKZnMfLY/EJJS3mJlGtLL8+V6XM5d6gH2pLzf","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":475822},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"03ea0515f452c3c9b2857ba15102f4bc5f26ee55","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.0","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.35.1-next.288_1787962175432_0.07246628044902259","host":"s3://npm-registry-packages-npm-production"}},"0.35.0":{"name":"@tiny-fish/cli","version":"0.35.0","_id":"@tiny-fish/cli@0.35.0","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"f8154c66bfd16e67f9d3e6ff3eca1396bbaa7fc5","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.35.0.tgz","fileCount":102,"integrity":"sha512-/9bN9DEtJITTQpH4eRjYm2d+vNAeb4SdfzGFoy2ZNvbgcgmVGvIw3wrkextH4q16MVFpc42Fup0cSdignvJVXQ==","signatures":[{"sig":"MEUCIQDCL3twOyxvzMsCbqiv6JafQxVdvBT9GZedDbTJEj5gzgIgGOzBDl6UEtJUshkMEZ+laXcD3CnMlrnMUrnC/wYThvQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":475813},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"03ea0515f452c3c9b2857ba15102f4bc5f26ee55","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.0","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.35.0_1787962211045_0.7984140265756432","host":"s3://npm-registry-packages-npm-production"}},"0.35.1-next.290":{"name":"@tiny-fish/cli","version":"0.35.1-next.290","_id":"@tiny-fish/cli@0.35.1-next.290","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"881c753a2f2483a2538fb43981eaee18737c61c9","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.35.1-next.290.tgz","fileCount":104,"integrity":"sha512-jYB3PnxR8dHdqe1hhi1Ws0X81EUpetzoeoPSn6P/STpgTC1uy6XDWhgeJsnca3ZulupdXhg14DdBurTQVIArSg==","signatures":[{"sig":"MEUCIEuk1z5sp1rb8z5WnhQdqzA24h1NorTUydxg0R0FnhfYAiEA1C1fZY6beMWf10YVYkSIwjEuOgFEwlY3L5qQWkraac4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":485856},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"b744ba79a7ac1c8bb8e341e51c69cc3f4fbde2ec","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.0","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.35.1-next.290_1788200833018_0.8240423443060176","host":"s3://npm-registry-packages-npm-production"}},"0.35.1-next.291":{"name":"@tiny-fish/cli","version":"0.35.1-next.291","_id":"@tiny-fish/cli@0.35.1-next.291","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"4f16d93c4b4e6c3899b9d3491d4e865bccbc5230","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.35.1-next.291.tgz","fileCount":104,"integrity":"sha512-q3L66TM4TYbnBBmLohk0hn/fUVRvdrtkUAQLJgu4g+sJeV3nKuffyOu9ze4mJZAd8WYseY8ZGyWnk4Y+eTzLpw==","signatures":[{"sig":"MEQCIAN3bvBLaEILe7g9ZnKYdv8vPgRUN+jR3f139m+pxyTZAiAwPccf1wqYEiUcJAmRNCiw+T49NFdmvFpO691zvO+Hqw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":485961},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"bc586fb048ec7b8ae4302681b3f67535a1f4f475","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.0","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.35.1-next.291_1788202178992_0.9046457055132437","host":"s3://npm-registry-packages-npm-production"}},"0.35.1-next.292":{"name":"@tiny-fish/cli","version":"0.35.1-next.292","_id":"@tiny-fish/cli@0.35.1-next.292","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"4d1728a610015b4658fc3b08915b8fc842b755aa","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.35.1-next.292.tgz","fileCount":104,"integrity":"sha512-w/aWfkggw6BHktQhrPVymyqNUrrNDmznXbORTFsbQOjoLgEtcKA9D1nBecKkY7V+VeKYDg5w9a2RB9XN8wfFvg==","signatures":[{"sig":"MEUCIDsKSPz927xmjVbmxv7PqhCdEO0Q+sd2bYJV07HZz7RVAiEArKNNKKt2fGuz9l4UrJ6jrNoqpefkjWiSj285voxbdIE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":482540},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"9560b45b89ff5147db2ba5f321066affc97be0db","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.0","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.35.1-next.292_1788203258076_0.1830295856507309","host":"s3://npm-registry-packages-npm-production"}},"0.36.1-next.293":{"name":"@tiny-fish/cli","version":"0.36.1-next.293","_id":"@tiny-fish/cli@0.36.1-next.293","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"529c4aec54e4b088e497fd1f45335d0b7d7b7fde","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.36.1-next.293.tgz","fileCount":104,"integrity":"sha512-SCaaQxSWbo7Odla5gpZalVuRlh1g2V3d8vF5QAWeab1ctDmn37vscnoFvoUIG5gzrcMpl3qX58tnraO0t76KNg==","signatures":[{"sig":"MEQCID+GUiH5g91Ued6lWXx1cQnfBsiWpCOSQUKeT0HQCUkqAiB4xr5rAYU7CQ+uz0xCi6d6Fzuju/+abyEhs58mNQab3g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":482540},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"330a6912c0279f57aaca494d86d998817fb29498","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.0","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.36.1-next.293_1788204756842_0.18522584597552405","host":"s3://npm-registry-packages-npm-production"}},"0.36.0":{"name":"@tiny-fish/cli","version":"0.36.0","_id":"@tiny-fish/cli@0.36.0","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"9a7884472b80b4ea7dc6e1e793f33b33a8ecdbc4","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.36.0.tgz","fileCount":104,"integrity":"sha512-TT2W7aKElh6CtCvWm7cL/89FPAPhuoHHOwAHjWkDGh0/bhJowacsBpv9e4kSC3wB0OcMMruUJMSK9FD/DvT4Jw==","signatures":[{"sig":"MEQCIGtrDvmJhZkgU2sjwFm4wmmPtSHVqi1Et9XwzBW5UfU9AiAx0Ye7dyy9OTfnvsGqkDvbktoOSZ5IHjEONsTScfUa2A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":482531},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"330a6912c0279f57aaca494d86d998817fb29498","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.0","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.36.0_1788204817433_0.36887191125569685","host":"s3://npm-registry-packages-npm-production"}},"0.36.1-next.295":{"name":"@tiny-fish/cli","version":"0.36.1-next.295","_id":"@tiny-fish/cli@0.36.1-next.295","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"4df2a4fe246c39afb613e9547f6cc047974657f5","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.36.1-next.295.tgz","fileCount":104,"integrity":"sha512-7YHLWQ7Kl6oJYBApLOfVYrFMSwKdvax/Mtnw4lhe1o6Pc5nJMmeO3x3XUeEwWIl8qphhTSEKSQilopDwjjEE+Q==","signatures":[{"sig":"MEUCIQDB2FfbyYRbbsNX+F3pCoALNu8y03Updnj27dZ5//mQqwIgGHJBBNSGPU7wnQx8E5ngmTEXNJdmrI7oJ3WpwwwYIhc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":488862},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"0b695d90e0f374b7cdef18e2da6c26db0c37ac2b","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.0","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.36.1-next.295_1788215346163_0.1379869065331072","host":"s3://npm-registry-packages-npm-production"}},"0.37.1-next.296":{"name":"@tiny-fish/cli","version":"0.37.1-next.296","_id":"@tiny-fish/cli@0.37.1-next.296","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"c02f43fef8b974547232f448aed10ac527f08383","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.37.1-next.296.tgz","fileCount":104,"integrity":"sha512-aufRMOXz2tWWc4x95YNpKWHfPGdyft0Y3Y91pIzzXzV/9tfQZPVbWvh1TKQunKFSe1a77jKr2P//obwY5qZkkg==","signatures":[{"sig":"MEUCIGjkMdFHh07vT82LodicMj+SsDZ1vV19GMLHvbn2Pjn3AiEApgSFbZ7rxHO7G0EEWLqmGmF3bPaJ/txg16v8n0e5KLY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":488862},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"8e72d76f73176ab9975224ec98cd16d03717181a","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.0","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.37.1-next.296_1788221296938_0.9287040805414533","host":"s3://npm-registry-packages-npm-production"}},"0.37.0":{"name":"@tiny-fish/cli","version":"0.37.0","_id":"@tiny-fish/cli@0.37.0","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"bb95d559e68362ace27ae0ca0acc8b3015609465","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.37.0.tgz","fileCount":104,"integrity":"sha512-rlYiTK3BmldXyAge0RnXXSl9MyCAnmW73sioao+5q4IpQ3TZhqwLeb7we/PVH1Fgoa7d/v7OMHL7RdDXSz+OIw==","signatures":[{"sig":"MEYCIQDwd14mUD3nlu4hEzeRGHFWpB2UtjaVysLUuFDHWt4PZgIhAPRNNIP8efILr301/YbKsPHE5KTyobCpr1v8uZAVS87f","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":488853},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"8e72d76f73176ab9975224ec98cd16d03717181a","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.0","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.37.0_1788221337847_0.23873791393287314","host":"s3://npm-registry-packages-npm-production"}},"0.37.1-next.298":{"name":"@tiny-fish/cli","version":"0.37.1-next.298","_id":"@tiny-fish/cli@0.37.1-next.298","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"f917f19c929423b66dd7e37d862a31eba7d4d4e5","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.37.1-next.298.tgz","fileCount":104,"integrity":"sha512-Ck1ODCXa9Y8mEbjhxyfrv6shRqXNotLpqTCj2oRA4PjejteVkpGhtr7ns/4Mq0VVU55iCcV0tVqR4Tz3K/jKLg==","signatures":[{"sig":"MEUCIGQLBrIIatcasRSdr4cGR8VCBnyri/Ui1ENPYm1MmlePAiEAodAYXTxEEVbx0gIJMJ4UDPaW9oEf1lrGG3h1Y5mP/BU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":489150},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"47af8b9c24ab23ae626bebeca4d19548c7b9d6e1","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.0","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.37.1-next.298_1788298959152_0.46366084529969154","host":"s3://npm-registry-packages-npm-production"}},"0.37.1-next.299":{"name":"@tiny-fish/cli","version":"0.37.1-next.299","_id":"@tiny-fish/cli@0.37.1-next.299","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"3f9dc1c4e3de377d201213445c292bf72bb9cdc0","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.37.1-next.299.tgz","fileCount":106,"integrity":"sha512-5F1Tb8kcuPQ8b+itgr/+9xk4wmjUBToYBAcmCnWHtXWBda1TTGElxpznRsAbB1JpWOmJYtBRepx6QrBHQryn8Q==","signatures":[{"sig":"MEUCID0kO1CThTXShq0QWQqcHd7ACL4wHD5BqC/9D960NC7uAiEAsEml4X5363g+IWmDX3HafwKJyuq+cd+H4/DCt4RGEDY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":491684},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"bb2e20c554674daba1934e27dc8d8f8a26e3240a","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.0","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.37.1-next.299_1788305943016_0.31871688421277566","host":"s3://npm-registry-packages-npm-production"}},"0.37.1-next.300":{"name":"@tiny-fish/cli","version":"0.37.1-next.300","_id":"@tiny-fish/cli@0.37.1-next.300","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"03bdb0712ca1047c7eebe6e573876fcd05362dd1","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.37.1-next.300.tgz","fileCount":106,"integrity":"sha512-d0i1rbOCGjBmQ+Orl1H8imfvZrUcjCa5UOEyL33KH/iGvBgcSAhQ6yEQtDFRXPffUw0+0/pxfVmtWg+rkp9gig==","signatures":[{"sig":"MEQCIDjkwE4CnVZWGNTOXoHIfbTucOtn7AUqZVVJYoXWNqCBAiBtM9HqYWGl54RAXEan7hG0GxzNI08+cbXIRPHmsr+ABw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":491814},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"6ed46214d023a9fd4f804ce871b68d03a8950441","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.0","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.37.1-next.300_1788307939202_0.6743563643951951","host":"s3://npm-registry-packages-npm-production"}},"0.37.1-next.301":{"name":"@tiny-fish/cli","version":"0.37.1-next.301","_id":"@tiny-fish/cli@0.37.1-next.301","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"17ea7a9748b12a32a76c455a1ada5b9fd0e99511","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.37.1-next.301.tgz","fileCount":112,"integrity":"sha512-UoQJQJloYZLbeO5xn/GC7E6hZXxyh8rhzec0/CKiTwnCEKSOBY2OOyHuEokqEKCRnsIpNB1uuaRWR4MPFJDzBA==","signatures":[{"sig":"MEYCIQCnZOsV77HhE6ciu4J4NUGXdN2k0feU5RCYIRBrsLTFGAIhAIA9gxj3e0lHVZUyg3KtHKbUfKA1fHrAn1twqCxUxN2Q","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":500243},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"2ee063e1e5d105f6c2e6077818246f64c00a32d5","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.0","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.37.1-next.301_1788368947793_0.24423047107159368","host":"s3://npm-registry-packages-npm-production"}},"0.37.1-next.302":{"name":"@tiny-fish/cli","version":"0.37.1-next.302","_id":"@tiny-fish/cli@0.37.1-next.302","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"7f913d80d265f8a3fadddf442c790885b54d5ed4","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.37.1-next.302.tgz","fileCount":114,"integrity":"sha512-mtBJqWAQGNrCEKPCjwNEsjeyV50xVniPvjg2asXqFPc8sJwLOLr6LgaxKu0xu8ToDyxIc8EOvygLxvV6t+dchg==","signatures":[{"sig":"MEUCIQDMTwl759QwbraF0+2GlEWkCTMg97gBpptE3zq7WOfLwAIgHdTFSwnRvwQfjWnNdc0UqV0FI8zvnmqihofhiDQ43lE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":510087},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"00576d6d545c07c4991b2822cff0b46ec8969897","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.0","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.37.1-next.302_1788370628817_0.00531350660813934","host":"s3://npm-registry-packages-npm-production"}},"0.38.1-next.303":{"name":"@tiny-fish/cli","version":"0.38.1-next.303","_id":"@tiny-fish/cli@0.38.1-next.303","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"188e16ba554f6ebc587f3aa41712f8fbac16f76a","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.38.1-next.303.tgz","fileCount":114,"integrity":"sha512-dfh8ABL947zHR2s4RyCqbNoadV07LU3lMbG6YHYkjxq3VwOwgnfxB8FHWVzjK3FdP1mB5tOSFJNAOsBJlmgTMQ==","signatures":[{"sig":"MEUCIG0HSgloAfZ8x2D+nWsi3FA0hgfkeWPX0Oo0C8dsQ6HIAiEAkswxojj2iFgOCSHaZaws1ZqIuVNwLJFnHh0W1o9QUGY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":510087},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"b4b731942cc352f1add926bab945986fd34e6a5d","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.0","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.38.1-next.303_1788373748962_0.5518107628316149","host":"s3://npm-registry-packages-npm-production"}},"0.38.0":{"name":"@tiny-fish/cli","version":"0.38.0","_id":"@tiny-fish/cli@0.38.0","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"d4feb1f8c0a883278d30d10d8677093bc024b932","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.38.0.tgz","fileCount":114,"integrity":"sha512-7jWToMY46YMyO1F3z9WpyvNAmTEOSJv8dVDmT22HfZ+WAM+AimK60T5/SGMPeB8S5F58xANBQ3dTGRRH4obsuA==","signatures":[{"sig":"MEYCIQCRM0fHyWxQ33Mnmy6bTnXTrCSDlFswJnkQHGg0XP6R6gIhAPhX+UulcFlCy/Ml2zpQhm1QwQrmxUW/Ona3iKENFYTG","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":510078},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"b4b731942cc352f1add926bab945986fd34e6a5d","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.0","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.38.0_1788373878565_0.5688514929719555","host":"s3://npm-registry-packages-npm-production"}},"0.38.1-next.305":{"name":"@tiny-fish/cli","version":"0.38.1-next.305","_id":"@tiny-fish/cli@0.38.1-next.305","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"633917055c2e222a4f4004be53c1d1091d0df800","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.38.1-next.305.tgz","fileCount":114,"integrity":"sha512-StzH2cepj0mhXjRZL5AISPoAvNJFu52BxgYcIg8pw2ykFkN1+wgiqfNY3bb4CAvGGc7Kby2ugQsp1cRv0Hw1Qg==","signatures":[{"sig":"MEUCIH5WWUNF5oYp9zNOehLNMaXa84+PDrIJFTIvOnneWiCBAiEAgBRi8dhBxXQP+y46yEduzXL92LXNc1bICMGcsTMvsbk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":512971},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"29d6400ba410b5c0a80f57c82f7183be3683cb97","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.19.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.20.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.0","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.38.1-next.305_1788375557335_0.504198444693629","host":"s3://npm-registry-packages-npm-production"}},"0.38.1-next.306":{"name":"@tiny-fish/cli","version":"0.38.1-next.306","_id":"@tiny-fish/cli@0.38.1-next.306","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"67832674631c7e2fbeee6f175147e55317d79c29","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.38.1-next.306.tgz","fileCount":114,"integrity":"sha512-9NHF4RIYgrIspy+y3gEJGjU6qzf9gf3Hz0kQMq6RXQPbCWYFq7ZvCt6MlVqJqWpJSmOVpeI6Ly+zJJoA9k4rzQ==","signatures":[{"sig":"MEUCIQCCHEBFD5Xb6QGGg/HQkTFpDwUiaUUZCyqzPyn22ta5TgIgHPAFXP6chlQ0ZAIicxiJQ1HRZbjjiqgeXZ5epyZmXww=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":512971},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"11071a4264a1537c1f902b0205b4fec3181e2a10","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.19.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.20.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.0","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.38.1-next.306_1788383589704_0.3776926557523004","host":"s3://npm-registry-packages-npm-production"}},"0.38.1-next.307":{"name":"@tiny-fish/cli","version":"0.38.1-next.307","_id":"@tiny-fish/cli@0.38.1-next.307","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"4d4a803f10e7e3b7c05507f739bd342191fcf785","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.38.1-next.307.tgz","fileCount":116,"integrity":"sha512-Skuicj0geXNnps7tz3fnm6QcC/d6EeCREXzDCHCttHRzq+72YfE7OpAovkpBFNwLIxAEimoWJiuDvvrNNo7spA==","signatures":[{"sig":"MEUCICqrt9IZVPvVok2jtlHhwa5I1yEruAxhLrYn/ybNzad/AiEAg2OqelKy7kO0EEpFt7pA6OUjM7iVsCdQTmQ+Dvfktw0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":514564},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"72ea15a3e9c7097ede2c0071c3cdf70ec34f635f","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.17.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.19.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.0","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.38.1-next.307_1788394642770_0.04794299006308189","host":"s3://npm-registry-packages-npm-production"}},"0.38.1-next.308":{"name":"@tiny-fish/cli","version":"0.38.1-next.308","_id":"@tiny-fish/cli@0.38.1-next.308","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"66b7df4fa2e07a099ba172d7e5756416d1cfc37a","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.38.1-next.308.tgz","fileCount":116,"integrity":"sha512-LsQx9wOHg5PUEg+nbtS5ur4b4CQWEGMIid/cst5otT1G7pjKrac4OkUouA+9JP7Uei1bZvyY4Fo++v457Oc2GQ==","signatures":[{"sig":"MEQCIGEgNN23N5o+lz3FlxRVgQ+5lBlPFVfh/a2hmgTfhVHaAiAxwTDdbrvvD9Wne9zRqzPQQE3WZoIERAzxd6SSNuFz/Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":517949},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"9eaf970f2283424acc2f6e99676e85ac1801eb37","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.19.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.20.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.0","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.38.1-next.308_1788395208514_0.7846430916567768","host":"s3://npm-registry-packages-npm-production"}},"0.39.1-next.309":{"name":"@tiny-fish/cli","version":"0.39.1-next.309","_id":"@tiny-fish/cli@0.39.1-next.309","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"9bee8ea702cdbde57ce65250304546670134b424","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.39.1-next.309.tgz","fileCount":116,"integrity":"sha512-pgfwOMXE6EeDH+JOEffDNuKDdiSkX6Sk+1GA/jJv5V8kYX/bt8Pb1zctXzO8strZrCUkmcxib0sDsUoqTHzcQg==","signatures":[{"sig":"MEQCIG66wfMIBqao9cjHM3QZmQ1ytSeCe2zHEGrjE/gphIwcAiANiLnjp+Thi73stLSsvHDvmkdjgjT7mMCy183FtL10EA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":517949},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"130df2fce07c986b2ebdbc33b612f2cf48390fb9","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.19.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.20.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.0","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.39.1-next.309_1788453810538_0.4140316254534011","host":"s3://npm-registry-packages-npm-production"}},"0.39.0":{"name":"@tiny-fish/cli","version":"0.39.0","_id":"@tiny-fish/cli@0.39.0","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"de2c44ee23976aa531bbb5db066e37b526e867ae","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.39.0.tgz","fileCount":116,"integrity":"sha512-1kkqiZOlfDzRF+r54Skyd8HOwIPf868bocTKNOmZL0R0rI1kmvyRPt+7CkdlhVhfasglHzmI4UlW8yQYybinJg==","signatures":[{"sig":"MEQCIG1l+n7eeiGgiibglQiC4mc9hzdjUVV425//JPOJqCxuAiAe98guUd4/NLSuFkwq/jQnq9DoodmgDRlrwGGAByGWsA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":517940},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"130df2fce07c986b2ebdbc33b612f2cf48390fb9","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.19.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.20.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","globals":"^17.4.0","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.0","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.39.0_1788456880421_0.2647816629173041","host":"s3://npm-registry-packages-npm-production"}},"0.39.1-next.311":{"name":"@tiny-fish/cli","version":"0.39.1-next.311","_id":"@tiny-fish/cli@0.39.1-next.311","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"a1bce0b58749a97d3e535256f4b9dd60d880412d","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.39.1-next.311.tgz","fileCount":116,"integrity":"sha512-ot7rv8QLd7Gsg4IoFmrvZb6T8FZUzxf1rSrr/JyCwKbM79vu1x+7TwEd7Ng9AEx0J3Jt1htic5/8IKcZPKRdtQ==","signatures":[{"sig":"MEUCIQCda3M285sEGowVYr8p61ubbnk3/nORMko9cv6lBZ5T5gIgAgGKSZR3qput7wDItRH7ZCi4ZRvR9DLOqd2Hs5VzmVk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":505817},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"7e9208669e79785bd5615717c8d0f8f52e299d83","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.19.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.20.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.0","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.39.1-next.311_1788462493567_0.6736445403926621","host":"s3://npm-registry-packages-npm-production"}},"0.40.0":{"name":"@tiny-fish/cli","version":"0.40.0","_id":"@tiny-fish/cli@0.40.0","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"9fd25094883b9ab6de19a167c0846c459c412176","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.40.0.tgz","fileCount":118,"integrity":"sha512-Xrg7t+HlnS18W+XeM/NAXFW5dK5iDM18hMI8XR9qVDKPZoCBAvLoVx7nTszQ/OwsObjvJEvZKDWoU9oDuAYXvA==","signatures":[{"sig":"MEQCIBmjXn7jl6cWZIdUNW5OJJJQgUMjFLH+OoyJZpjRCLNnAiAW9q2dfaHwNSf/4HetmKdFoKNtjV4pWXExe74PxiYJlg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":525815},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"82ad9a76314f41698d1afb1ff1d3d8bbed482804","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.19.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.20.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.0","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.40.0_1788481702413_0.30501781551848395","host":"s3://npm-registry-packages-npm-production"}},"0.40.1-next.317":{"name":"@tiny-fish/cli","version":"0.40.1-next.317","_id":"@tiny-fish/cli@0.40.1-next.317","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"a81adc7aee08a2c505366ecb50245e9e95a9aada","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.40.1-next.317.tgz","fileCount":118,"integrity":"sha512-cjjhx6WPCX0cLWtMl0l2amAuJc5lWmCw+ZmIEMcF6w2dYiig+fVsLK2KXu96kyPhZT3ogZgZbTBi3PQ6nkKP6A==","signatures":[{"sig":"MEUCIA3jcJBhpyxkCG1MZWwD7xxpspA47AiHcwEL6thtvEnHAiEA0QfuKDGnJlhBqVJgJL0JaAaok2oRabKCI/oOrV//VO4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":543662},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"3bdd1ed5294c85d80b1041ea8f777075ef5785d3","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.19.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.20.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.0","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.40.1-next.317_1788540541269_0.3855534170048327","host":"s3://npm-registry-packages-npm-production"}},"0.40.1-next.318":{"name":"@tiny-fish/cli","version":"0.40.1-next.318","_id":"@tiny-fish/cli@0.40.1-next.318","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"6d98a0235d609739f3c3cfde1ac57ecd31491134","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.40.1-next.318.tgz","fileCount":118,"integrity":"sha512-1e8KImej/SlUl3QGErsj8vm7o91VVWIXT7rFaHZOa4avZodSC6tZ2qllrcX5yUhzSowkDVM+LjL5AQiIBrvqGw==","signatures":[{"sig":"MEYCIQCeRUPebsXufoFJouoI04Hj6ktTTBXslNqwz2VkDODQhAIhAKigK/y5p3D9IIFfQ0LVgzlajY87/IlXeDLvPVNvnrSj","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":545628},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"5807989b246ce42952fb10c7c2b1cdeb8913e207","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.19.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.20.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.5.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.0","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.40.1-next.318_1788557171286_0.47830442484498037","host":"s3://npm-registry-packages-npm-production"}},"0.41.1-next.321":{"name":"@tiny-fish/cli","version":"0.41.1-next.321","_id":"@tiny-fish/cli@0.41.1-next.321","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"b7d165fc44dc33c4240aa2890c749be1af8368aa","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.41.1-next.321.tgz","fileCount":118,"integrity":"sha512-TRKvjiwc3bDkibMWF5mECIiGCM6R8EK/xgWgP1JkbziF1ACTC0NQF8DK4YMyW903DZE1DNkzEq3eCE05beUHaQ==","signatures":[{"sig":"MEYCIQDDJJzBk2bjQBRv1RhsMO/5hkADADJOLrbQ6mABPP9sWAIhAP9c8AQQIoKGLDEaenlSlUfi73dsO6Befo4nOYzmYVu0","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":545790},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"1790ef823d69668784e3b36ebac8b8a8ddd684bc","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.19.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.20.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.6.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.0","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.41.1-next.321_1788558596954_0.6905179500347973","host":"s3://npm-registry-packages-npm-production"}},"0.41.1-next.323":{"name":"@tiny-fish/cli","version":"0.41.1-next.323","_id":"@tiny-fish/cli@0.41.1-next.323","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"1a27fd3ae4e7557ef27865b9f731935cd4f0b8ac","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.41.1-next.323.tgz","fileCount":118,"integrity":"sha512-sEB3MtVnVxDKoBdkYN1+QUanVmSJgrPuDW6MPxnLG/gxJHDqgB/g7gQj9yKgs+tSqKqiQ5hifgH0btFiEzBF9A==","signatures":[{"sig":"MEQCIHMvCY4+li8PViVamAz7hv6DZv6as5ITrBjuH5rU4c9AAiBLfIvXHqSwRPyXryTHJsH63gGujuISgppUMRGFpfsGUw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":530888},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"e9ce027ed1800c71d2f2f23cda438c603c7ba863","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.19.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.20.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.6.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.0","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.41.1-next.323_1788559873919_0.013816021960888492","host":"s3://npm-registry-packages-npm-production"}},"0.41.2-next.324":{"name":"@tiny-fish/cli","version":"0.41.2-next.324","_id":"@tiny-fish/cli@0.41.2-next.324","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"1dfa423ec555ca8f22d362b1cda056411b133614","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.41.2-next.324.tgz","fileCount":118,"integrity":"sha512-Koc64gGVqf2z0k7qtLuw+Oyl02nrz/4CS6GhkYkXgyLkM7Ws3O2MgN/SFQNPxscOT3jNwp1O+9JvntMuE6xHsA==","signatures":[{"sig":"MEUCIQCgR0Fq2Iivq4Yp5Qo4F1OufT+HnXEZxnhsTwv3Xx89PAIgHJ7SqwwfmT5HUzGg+qaD0BV6UN6txckMwEvx26wZCic=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":530888},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"0ef316469374a6f621b029d06e72d5893f32ccc6","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.19.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.20.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.6.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.0","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.41.2-next.324_1788882675275_0.6276634216022581","host":"s3://npm-registry-packages-npm-production"}},"0.41.1":{"name":"@tiny-fish/cli","version":"0.41.1","_id":"@tiny-fish/cli@0.41.1","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"a15be6b84ef5e8a7f3e2865261a44b12f69d0856","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.41.1.tgz","fileCount":118,"integrity":"sha512-T6ORn9gFPn40iKZwecLKhGmvTrrubzqxHh0Qw+Cy8+dUq3kY9TcHQYJJ7YU5zIkgmA89m0NJfybAtYS+51uynQ==","signatures":[{"sig":"MEUCIQDEiDeHRrWqguauZaO4cGrz+Gq2MUx0Mj/ER5jqDYrPugIgUEiKOorvjnBnVPgegS9T2druYRZTFX8kvrtbTXZ66/0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":530879},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"0ef316469374a6f621b029d06e72d5893f32ccc6","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.19.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.20.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.6.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.0","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.41.1_1788882696407_0.3034160776161172","host":"s3://npm-registry-packages-npm-production"}},"0.41.2-next.326":{"name":"@tiny-fish/cli","version":"0.41.2-next.326","_id":"@tiny-fish/cli@0.41.2-next.326","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"84b41f7da77c1a903c4b59754358c825dd639563","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.41.2-next.326.tgz","fileCount":118,"integrity":"sha512-8IctdwddiDyHNrXbCclQTPKIxn9jUbYhhLRsLxctVuOPJUVYuoASSwpf12u2d+MqbjakMIJjdpvbFrmEWea+PA==","signatures":[{"sig":"MEUCIQDa6vXdYdjkZLXqesz1I6j6BABlV4chgklE2476c2eLpQIgP2Inq7UtQNEkuasCZ2ZLPj48u/U96+jBmVDFVRdaFrE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":530889},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"c88b877ce2a44bbaee71e3e11d52fd2e6cf2a9d7","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.19.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.20.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.6.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.11","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.41.2-next.326_1788907657396_0.17908175166032847","host":"s3://npm-registry-packages-npm-production"}},"0.41.2-next.327":{"name":"@tiny-fish/cli","version":"0.41.2-next.327","_id":"@tiny-fish/cli@0.41.2-next.327","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"a79ffe813d8a96b9c4fefa7563f2e4c374d04260","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.41.2-next.327.tgz","fileCount":118,"integrity":"sha512-LC9uhmXzQbY3Xv712LvKf2w16HxV6tBjxp5wIdpmUzecR6B7h088XpqCBgWqGXVBrY1yaG7lqMj3He7dncuZ3w==","signatures":[{"sig":"MEYCIQDAmR1jZqCCyABMmD4cI+fWQQgiuxzgEYiTZnMtcuaY7wIhAM8CykrIivD/b4v7yr5GpIuPSoBbVK1G7EOYlIVeWCZc","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":531316},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"d62b8f69d9a0c15986701413f9fd970348bfd861","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.19.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.20.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.6.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.11","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.41.2-next.327_1788985293816_0.461216389547185","host":"s3://npm-registry-packages-npm-production"}},"0.41.2-next.328":{"name":"@tiny-fish/cli","version":"0.41.2-next.328","_id":"@tiny-fish/cli@0.41.2-next.328","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"b93df3e8f918a890822c2add1f564b3296936633","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.41.2-next.328.tgz","fileCount":126,"integrity":"sha512-b2Kn9M8yst9uwhWHR5xD2LCfQZz8zdgd4LL6cPlzECehi1eXdJOKzWRAdvaPssn8Cq8LmYB2MAXinUtj/sdmkA==","signatures":[{"sig":"MEUCIQC43+m3O9ufYpTPMk+MZEfZs0kiOJLjN7d43+GRMIdXgAIgQqn97wtf7iHHea50FeZxqfz61AGvldJbhfCa5ilrdTs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":548120},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"1320c07638708ff05c1261b93ecae5f3f7154c88","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.19.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.20.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.6.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.11","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.41.2-next.328_1788990027046_0.07946549383202983","host":"s3://npm-registry-packages-npm-production"}},"0.41.2-next.329":{"name":"@tiny-fish/cli","version":"0.41.2-next.329","_id":"@tiny-fish/cli@0.41.2-next.329","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"a3ab198a98014b4089da7c6c90aff9bab0a91df6","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.41.2-next.329.tgz","fileCount":128,"integrity":"sha512-OF5Dm/z5QHzUF2lSHXJTbHwrJOKGpcxKmi3Ok4Np7f/i7wrsWhyiSsh1IqdIro+eIW1m5O7ol5afe/0KSLj//A==","signatures":[{"sig":"MEUCIQCehE/cWCH2x3RGPNA4KhUlTJ0PpJb+iKVbMGCoACme6wIgVY7e02zUrX1SLKI6END/H7NP5LjNPwpLLUNpI2kk1a8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":554785},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"6de1a5fda0e450d1357802c603271c0de38235ee","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.19.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.20.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.6.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.11","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.41.2-next.329_1788994894339_0.1925160476253387","host":"s3://npm-registry-packages-npm-production"}},"0.41.2-next.330":{"name":"@tiny-fish/cli","version":"0.41.2-next.330","_id":"@tiny-fish/cli@0.41.2-next.330","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"03e402eaec33557cc5b5aacbfd42109283c37480","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.41.2-next.330.tgz","fileCount":128,"integrity":"sha512-4gQXdKrHoNp4G+kjDIdSMM5XpXuJv+hNHa1BaXfkvE8USCj6kq3Fhk4XLFWu2vevJDL/RXV2FukNvXMK2cq7iw==","signatures":[{"sig":"MEUCIQDH3YHvld0HI5jFazFMUl0HAJSCsMdPrqDBvpA6R8QnXwIgDoqPwG+ECYkvW71oKwUaZ+kAdhfdJmOyXDOSXlhLuNo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":553954},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"3466ddf3972023a7452ba62caa910b6ac97b80b5","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.19.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.20.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.6.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.11","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.41.2-next.330_1788995594759_0.7190121281503163","host":"s3://npm-registry-packages-npm-production"}},"0.42.1-next.332":{"name":"@tiny-fish/cli","version":"0.42.1-next.332","_id":"@tiny-fish/cli@0.42.1-next.332","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"4408639e0a31515910176c9aa3c985489bd8fd85","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.42.1-next.332.tgz","fileCount":128,"integrity":"sha512-ZSRbE8Oaeys8avmyaQaG+R20NTb3Aoqr2V/fZlON00InwXFpkaCCp/aI7nOlpYvJlosEbmV+cdIcLmxa2ig0AA==","signatures":[{"sig":"MEUCIB1gVZc4FFZZ94NVZtUXsDFGocVDey4gf9MUmjGenxbaAiEA58CA3KXr1yKkddq20YH+e/ygniXLO/p26Ekw5GvxZFw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":554291},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"2aec2273a00130a99160a175baefdb5665b2692b","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.19.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.20.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.6.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.11","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.42.1-next.332_1788998812054_0.2509453138432267","host":"s3://npm-registry-packages-npm-production"}},"0.42.0":{"name":"@tiny-fish/cli","version":"0.42.0","_id":"@tiny-fish/cli@0.42.0","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"99b5fbc551bf6204f0c76084b7ef8f89db8fba13","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.42.0.tgz","fileCount":128,"integrity":"sha512-sA6VHtfZ/Ha+Nve8nUn6PsOM9rc/XEtztpEpLE6aKAYNv8maaRe3VTtSyYbqdjMvZ/8vHXxoCE/2Xxd8EJFbHw==","signatures":[{"sig":"MEUCIQDBdLIBwpb+Juy3cWIi2+e54hAZPRfPu9Ts1lGizGoFBgIgciqNgy242CZKBFRCD++qbxyGHOEJMn4M3tk+C82EWZ4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":554282},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"2aec2273a00130a99160a175baefdb5665b2692b","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.19.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.20.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.6.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.11","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.42.0_1788998983239_0.06805300964118643","host":"s3://npm-registry-packages-npm-production"}},"0.42.1-next.336":{"name":"@tiny-fish/cli","version":"0.42.1-next.336","_id":"@tiny-fish/cli@0.42.1-next.336","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"39e099a5338775b3fec6df06decdacff4e3f32a1","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.42.1-next.336.tgz","fileCount":128,"integrity":"sha512-swPTPJkGDkUZ7/NLCjqTuYf4WSLiCyk6C+PCj5MmwQpQP2Yqtn5LdM7phS/tXCza2XbfmCxgvJCKAbacwXOoYg==","signatures":[{"sig":"MEYCIQCeQuMie/txGuH+g2YOsqorTvKz063E82Z733DatxI4TwIhAPzUXgdZIDh5qgkNJhQ9i13p1/lO1O37Yoq1K7cqcZXg","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":551160},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"a202ff27d77498ae9e5f92c9d19f6ba97240085c","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.19.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.20.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.6.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.11","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.42.1-next.336_1789067665322_0.49571868834268007","host":"s3://npm-registry-packages-npm-production"}},"0.42.1":{"name":"@tiny-fish/cli","version":"0.42.1","_id":"@tiny-fish/cli@0.42.1","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"92788b33e6f2458e71bd3bb48a49ea146571fea5","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.42.1.tgz","fileCount":128,"integrity":"sha512-vg6HqIDZ3hW94RSGrpBxDtyi1LUY1ajfG6StGG4uyZcFe5t7YtIxJSO0E1NY9hCFMWd6Wyb+gfMXk8ZFk6vlTg==","signatures":[{"sig":"MEUCIDSvJU1/pUT8Wn61GHEqwPBW3md9LtCdxJM8MxI/k0ITAiEAnH6XdkvL8Z5NKmp/ElvbKg8np5aDYL+M4R5ScQBBSOA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":551151},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"b5e976f217cf912dcff3d9a56b7ea38fe8dbc96d","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.19.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.20.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.6.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.11","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.42.1_1789083782060_0.2901399367770723","host":"s3://npm-registry-packages-npm-production"}},"0.43.0":{"name":"@tiny-fish/cli","version":"0.43.0","_id":"@tiny-fish/cli@0.43.0","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"2ea9ab7f97195794fc07db48bc3cfe53bd6bb22f","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.43.0.tgz","fileCount":128,"integrity":"sha512-8UmajX8j6pg+7YxFpk2v3yh04J2/G3MahekkZoOw8UaIuUBYp8nVjmUnmMjjG68RZeyx0EIs+AAyPzY12EZs0w==","signatures":[{"sig":"MEUCIHZKqcbrvaLzGQchf/hRsAnPoFpEkCeiL3nhmUriCpqiAiEAugWgWoZ891r8gH/9gnMlBuNYG/GiAYTlHFpcyKklpKs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":552382},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"5c39717a5c9d1a43772f4e2f3dd2977a07a677f1","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.19.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.20.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.6.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.11","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.43.0_1789168248219_0.008563081477762857","host":"s3://npm-registry-packages-npm-production"}},"0.45.1-next.352":{"name":"@tiny-fish/cli","version":"0.45.1-next.352","_id":"@tiny-fish/cli@0.45.1-next.352","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"1dee0f8e1c4ff4fe0f23f447657b1242b45702f2","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.45.1-next.352.tgz","fileCount":128,"integrity":"sha512-ZshVLRS48qg9XX39y5btQLfvo2BPvKyXewoXvGoSnFOX0TC5HolCihzEGoABU69OrvIFUWOB8vyt8UW8doFKLQ==","signatures":[{"sig":"MEYCIQC5GKCfgM7nTK/9JMlNirSiVqFCDD6tU0n22wN1/xUMmgIhAK5gkOfspQxpdxnGw/GpgwtDUEIUF1OE//imex1VafM+","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":565887},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"e3c86c9195fdfde3f4f7a9d75c0a5dc4b378c28b","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.19.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.20.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.7.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.11","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.45.1-next.352_1789432940086_0.553588801425875","host":"s3://npm-registry-packages-npm-production"}},"0.45.1-next.350":{"name":"@tiny-fish/cli","version":"0.45.1-next.350","_id":"@tiny-fish/cli@0.45.1-next.350","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"f849b87153546c8a817957870d56409d373fe346","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.45.1-next.350.tgz","fileCount":128,"integrity":"sha512-B0m2oirAJLcLUIxCrbfo5Rc2O1JDT9u7yVCsv3XbGhCIB67I1doxJoTJj00npL//FjH3p1XK/sh2y4k2ySDsVQ==","signatures":[{"sig":"MEYCIQDH3VJ4oaj8VgHffO06AVw0JVtmmvVd1TptjqCdS1vDVgIhANU851aBFwgNPKEnwBCgHVX9oBWmCK7YHWwVT2A/fyPy","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":565887},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"4640a2501e2951d64b51badfd0b867baed71d9bb","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.19.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.20.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.7.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.11","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.45.1-next.350_1789490316787_0.8564734014820738","host":"s3://npm-registry-packages-npm-production"}},"0.44.0":{"name":"@tiny-fish/cli","version":"0.44.0","_id":"@tiny-fish/cli@0.44.0","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"e62e7cbe8e8c80163f0fe42ed2dd12e06be30429","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.44.0.tgz","fileCount":128,"integrity":"sha512-ooLDBEIOvT4Zkmdkca2Eo6+N68S2dYSRhG/K7m2mJni6UdzX/bPiXIIPXyYF6VsmUFpR7ZXPo5rhLHqzjvQEXg==","signatures":[{"sig":"MEQCIEyrfh27I/8dBnCzydk96nZMBjCuE8qRk/2G12WL8wulAiA+bCdUafGrvMzGIiPLK2ddbR9YQMY/99qiNRrcy1lSgw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":564756},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"d912d34966e138f5962fcbff30509aa468121163","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.19.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.20.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.7.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.11","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.44.0_1789491068506_0.2817172210055998","host":"s3://npm-registry-packages-npm-production"}},"0.45.0":{"name":"@tiny-fish/cli","version":"0.45.0","_id":"@tiny-fish/cli@0.45.0","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"9ae719a364d646ea2482de5387511337adbb9ebd","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.45.0.tgz","fileCount":128,"integrity":"sha512-WdIuY5YgPe4N/3T+mRGISKaZoiGXB4pRI/jnN7hmIloB2sRu1aSyD16YiggZr7fxhLSL3mhSxWJ4Od6LbQsJxw==","signatures":[{"sig":"MEUCID/hdJeqjpy3SC24xNxRMzc4Pw0cnCA9mA1YLxFBkJB0AiEAwl4BwP/AvZdx46be/B66IjDbgDsdceGIPGwaTCsrRgU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":565878},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"4640a2501e2951d64b51badfd0b867baed71d9bb","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.19.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.20.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.7.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.11","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.45.0_1789491368355_0.25496823538289637","host":"s3://npm-registry-packages-npm-production"}},"0.45.1-next.353":{"name":"@tiny-fish/cli","version":"0.45.1-next.353","_id":"@tiny-fish/cli@0.45.1-next.353","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"8b254fefde2fd96fcd4bce64d8bd2baa57b07eeb","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.45.1-next.353.tgz","fileCount":128,"integrity":"sha512-gQLE0+sDl+a9qo3oekXnMVEqOfaqC6DdAguhnpD2hPNNsTur4yJ/z5dscnnBBd0px9SVg1VPbzjOstSTUXPcag==","signatures":[{"sig":"MEUCIQDvwirMfn3Txg22tQ9UjkqKmSuLJYYQLeGtb84hxa2A7gIgN/86rFAGxmqsCt1opr3k8DukgO1AzqDdkkfGHL+QvD0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":566891},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"2fb67e19182bdee89de191b6b6fef8ae464c5dbe","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.19.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.20.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.7.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.11","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.45.1-next.353_1789576317612_0.2561549871401212","host":"s3://npm-registry-packages-npm-production"}},"0.45.1":{"name":"@tiny-fish/cli","version":"0.45.1","_id":"@tiny-fish/cli@0.45.1","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"6af2886d3aeab228c83c63e2ab1083fe87c19c6e","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.45.1.tgz","fileCount":128,"integrity":"sha512-NVgW3DU8w2QFLo6CA9AdkEinXfUsFIpUOq4Uh3i8Dyf65gURgn+lSdnMlcO+kYh/78W4RAytQlUBJwUz+oIcJA==","signatures":[{"sig":"MEUCIQCfB+z6corW4Fk2qe8MU/rzyWt6MK7b+CcqfHk0Kzm2LQIgDHeRngtz81ioNhrGnuRAZHtVyr2JoQNzFh0pjVSpXpA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":566882},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"23ea1d57ae2502368fe50119d78fcdd12769e6f8","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.19.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.20.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.7.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.11","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.45.1_1789579015084_0.7894848746584207","host":"s3://npm-registry-packages-npm-production"}},"0.45.2-next.354":{"name":"@tiny-fish/cli","version":"0.45.2-next.354","_id":"@tiny-fish/cli@0.45.2-next.354","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"9bcbde5118a496431765fca7dbcd76127637df8a","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.45.2-next.354.tgz","fileCount":128,"integrity":"sha512-JlSFfxF5qD3Q1yHGBQVNUwhDaYASk8preobgK+BQbK2LROEudE45hK578dQGpO1dkVQewiEhD4FyhvFDhiwSQg==","signatures":[{"sig":"MEQCIEi3Da/xj29rvxFoPQ989MQPpOXLevVXDzvlXzMbBxsNAiAsAl/u90hFUpRKuzCI2MkbPb7PJoCp/IjnVhBTaGC6MQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":566891},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"23ea1d57ae2502368fe50119d78fcdd12769e6f8","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.19.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.20.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.7.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.11","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.45.2-next.354_1789579021006_0.32502269204777967","host":"s3://npm-registry-packages-npm-production"}},"0.45.2-next.356":{"name":"@tiny-fish/cli","version":"0.45.2-next.356","_id":"@tiny-fish/cli@0.45.2-next.356","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"ec5515a8c987416feac2e07331025582024bd2ba","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.45.2-next.356.tgz","fileCount":138,"integrity":"sha512-SIH4wcZ95fBTaYkQOGONqFyn+eSLpKclBh0Q+Cju93rheaEdiTlTj44RnCLLhj7SG1H0PMoeurUcyr0VF4b+Zg==","signatures":[{"sig":"MEQCIAVTaZbNksk/xCg1NxiMRwdYumXDqie4t2fucbonPIFFAiAiD3n1iZtWYlUV0wWYJQWO5pXvVNuGCSL3refpHXPvlw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQCjfIE5Qm23Ug7QlwR4Dk6ec3XfsYPzKMsUr+Ev/ype0QIgYsmhVF4eQLmbAo0OU1qfi8I8lTaqfj9qruusJhf5x34=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":573278},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"6fe02fab815d10e6e7dca7cfafd1db2ed98ca159","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.19.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.20.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.7.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.11","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.45.2-next.356_1789761107199_0.5985860993235868","host":"s3://npm-registry-packages-npm-production"}},"0.45.2-next.357":{"name":"@tiny-fish/cli","version":"0.45.2-next.357","_id":"@tiny-fish/cli@0.45.2-next.357","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"c8b3aa452ea1332213a3b9aaba94e02d2edaf253","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.45.2-next.357.tgz","fileCount":140,"integrity":"sha512-JwoFXmVmqCR19ciwakB5O+juyURQmxDO8ms3Kxuq2Pgl/5mEJqWU2fQ+NJd9ZK0Q+JOPC1MJhXpqzJe2paV7jw==","signatures":[{"sig":"MEQCIGoZz6Vm96CMY5NYD4X+QqgtV+98LoYgnUrbUo5A/E6uAiAVQTZWrnzDRtVY5hxvQIXmHKXYY8Mb1wo0p9eJuGZ99g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIGU+uAmeYk8bu09JeXg6rKag7Uh/AlDvlwgFhVfocljeAiEAjpfyJuCWX5y4P5Sbr+g96AZkX/H3PU2GpIHzcpNw6MY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":581281},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"0164045743dc86a779ba7f40a9d6cda39515bda0","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.19.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.20.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.7.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.11","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.45.2-next.357_1789772112740_0.1916542252881035","host":"s3://npm-registry-packages-npm-production"}},"0.45.2-next.358":{"name":"@tiny-fish/cli","version":"0.45.2-next.358","_id":"@tiny-fish/cli@0.45.2-next.358","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"fe9825b2ac65d087f60077ea5b0d6872a887e669","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.45.2-next.358.tgz","fileCount":140,"integrity":"sha512-nKKxUkdISVOz4pD38Fp+uln6is8LCuv/qFaqgC+BXU5ItESc2TtdvbVsN2VqPADtslDxhevqH2S8XvTTYjUVPQ==","signatures":[{"sig":"MEUCIQC7LuRHAGF6uSdE1q0bIlQvDGzy/Vl9/TuiGOlreZONCwIgSjNsvP9qqLYuJvCKpWLh6/QSGBBEDXZc10SPQ3pTZ6A=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIH2OoCg4x5HHaeilFy3MNXTcB7+a1MVN0g46jAn6fR/IAiBWu/61WdKeQEz+2ZWfEvFV37TZ3ua22v3Ta681xxEilg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":581423},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"2915b3c2e7d6a9c56092d3795f75b4f78d526429","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.19.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.20.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.7.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.11","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.45.2-next.358_1789772997954_0.5509955668408713","host":"s3://npm-registry-packages-npm-production"}},"0.45.2-next.359":{"name":"@tiny-fish/cli","version":"0.45.2-next.359","_id":"@tiny-fish/cli@0.45.2-next.359","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"3a835ed3222a6fa11e9d08f0dfad46f2960aea3d","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.45.2-next.359.tgz","fileCount":142,"integrity":"sha512-c+JmHAkDNqFN8huYZGYa8kTEawE9pGL/MqGyiM/jz57JY2NzCF3D80xFFFmd1v7KnK5coHmHapL36qPHOkdMTA==","signatures":[{"sig":"MEUCIQCJ0AdSfEwkwbOi0HhOyqs8O1RJtgElPRZs/r/zUQR4uAIgMhzeGSRBj9TLW/RCP9vfSw3KffLoK+w+pErFWNd42ZY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIGxSMFXxPg6CNyJ5WxmfBc2xvxhd/b7CMAPH4e/2a96iAiEA1HHsNtqOLihB2Wd4TvLraPWCBGeDAV9q7JMS2XGzSXo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":587330},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"11ad8be9334ad256bef377630d16d06a744bf060","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.19.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.20.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.7.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.11","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.45.2-next.359_1789778397548_0.02226484253042904","host":"s3://npm-registry-packages-npm-production"}},"0.46.1-next.360":{"name":"@tiny-fish/cli","version":"0.46.1-next.360","_id":"@tiny-fish/cli@0.46.1-next.360","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"b0764e4d42b4630e03678509f1d8f1ef964a2994","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.46.1-next.360.tgz","fileCount":142,"integrity":"sha512-2cLzDQPRcJnyncbRweJ/hYIWynR069on582zVvOS8OFP2qB255ufVgS8qOM6Hk1Mk0/hg2RXTg1IquIy0bgjeQ==","signatures":[{"sig":"MEUCICLo3Ku4V5hn3tHIiy/lQC3OLDF0fh5TzAj/4I3lhj8RAiEA53USLLwYprqLJdCsJWtxAYsJzoZHD17l/RsXuuAocv8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIH1Eo2VsOGc4L3niVkt032WDi4ylPkqQnQAzgeOhH+fTAiAZ1tSazwUfkGH4tSS7G/KXopv1uwsbAO4iUgE0niCCMA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":587330},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"fcaeacf408d9d85bce8e5b391a4920d0220797c1","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.19.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.20.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.7.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.11","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.46.1-next.360_1789779218557_0.5354236158619581","host":"s3://npm-registry-packages-npm-production"}},"0.46.0":{"name":"@tiny-fish/cli","version":"0.46.0","_id":"@tiny-fish/cli@0.46.0","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"3c198a01b4233e4a22e749105ba2e6e2edaa658c","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.46.0.tgz","fileCount":142,"integrity":"sha512-PvBgWsunsHJjZwb58F9aZH8wZVj7wcCPpecL3GMmeCzHiQoD6Ug6G8cFwyd2vKdxCfnr8/9iD5u8KeJEj8e7Uw==","signatures":[{"sig":"MEUCIAe0EC5bUlMoNns66wHxIZR5YIC0wxh0MNDzaBhmWfTdAiEAzFIWHV4ayFOkjEIAp1nOMZ428cWBCq/Zjl8DDjQLwOw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQCpJ+r0bFX5/EYwz6sLz7xgPZd0HxLBj4s+YkaBukDQzgIhAP97cdyIX5XOuDa30wOwGFuNGIc7e4GgFMDF/wkeNBrb","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":587321},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"fcaeacf408d9d85bce8e5b391a4920d0220797c1","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.19.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.20.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.7.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.11","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.46.0_1789779234692_0.7655982918736541","host":"s3://npm-registry-packages-npm-production"}},"0.46.1-next.362":{"name":"@tiny-fish/cli","version":"0.46.1-next.362","_id":"@tiny-fish/cli@0.46.1-next.362","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"d180e3868043d60bc19622d459a4967a0a6ee972","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.46.1-next.362.tgz","fileCount":144,"integrity":"sha512-Nanam74fHrMJhEd0RQZixDa+AgnkvxSOM9WMXlkCB0iP//E0KUVCy+r7GCR3nMIw+Eh/cXD+mzDBBpd4+69UNg==","signatures":[{"sig":"MEUCIH0lyXWWKFRHFxIj7X7oZ7RGdfx48SHQJt2NJ6X1FL4gAiEA3KebiJvTP4vd607uCg/Iam10znL8KKf67WsXJ4XeX8Q=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQD10oFysXsi8y0jx7S1LkJblv9+cSKcSRm39engrEITowIgXpXQNeuMEVehDUhnNbBUl/eUdJZwr9srX/u9fxR9gr8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":589415},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"c2c1c704467794db31a4a65c21679a7c26220c8d","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.19.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.20.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.7.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.11","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.46.1-next.362_1790010461375_0.9570339149489993","host":"s3://npm-registry-packages-npm-production"}},"0.46.1-next.363":{"name":"@tiny-fish/cli","version":"0.46.1-next.363","_id":"@tiny-fish/cli@0.46.1-next.363","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"feb1bc857b40705d2ca40f5537390468333a859b","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.46.1-next.363.tgz","fileCount":144,"integrity":"sha512-QUBhHSBrc4C7j5ytrIscNmsWtoS5LwSdwKFYhgXZoMvAoVE1/8QlfkrVlFuM3iB4YNMrsYBqcOArW3FLu3tM2A==","signatures":[{"sig":"MEUCIQDCV8p+F2I5kf3OCEhDdxjiNVlbQF2gVhMMdLCoJqBOMAIgB81qtqo7xJ2F5rrU7GLcrnEykWQf+43LpdK12g75qEU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQCLhxx3rLozmuvy9KUtu5hRsTeOfTrzvwSOZDI0l70wwQIgZm+MMg+O20QbI9GJefa8wNRZ4MBZJ97FEeUaNHdr6JA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":591934},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"e820f7e35204e8c90a5889f4e0af16655c354f42","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.19.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.20.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.7.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.11","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.46.1-next.363_1790022476689_0.09022017741316635","host":"s3://npm-registry-packages-npm-production"}},"0.46.1":{"name":"@tiny-fish/cli","version":"0.46.1","_id":"@tiny-fish/cli@0.46.1","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"fca814f289861b06bf33bad57d63a5b005af1f1b","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.46.1.tgz","fileCount":144,"integrity":"sha512-pqP4tyb5de92pkF6yr3V2iDKINSXCT3L+44xESQycWTFclGEhFoSIQQVovcv4qkZmE+yxeKc2A2k+YcwQh0F/w==","signatures":[{"sig":"MEYCIQDc9Sy0LiE24zfolvw21nYoz3gM1DkSk56zHdQadcZpYgIhANAPmV9wUxXiHXcSWpIJaJ681RRsRQqHUuWgLuP4c7Vo","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQDOZN1GSjUQdn0Xshxb/GoaDuoZcUZATakTxCOCe0Vc0QIhALBimkBu1Sc2Nkyct3peb+pmNDArcpLp0FfnLCGgsHkc","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":591925},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"c80d95208f9c8c526d87a7c0d056c82ee58766ac","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.19.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.20.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.7.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.11","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.46.1_1790023332860_0.9079614184869846","host":"s3://npm-registry-packages-npm-production"}},"0.46.2-next.364":{"name":"@tiny-fish/cli","version":"0.46.2-next.364","_id":"@tiny-fish/cli@0.46.2-next.364","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"c32a56795ff3c6182b3936fef4d5426cf42d9e54","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.46.2-next.364.tgz","fileCount":144,"integrity":"sha512-wuF4yRxfU5r15oSCJp5vU4LlkumbOF7au4imuppVV7O2GRR3k4EBqqU7FhNCKpRAngH4MTfTp9crP4facpKrGg==","signatures":[{"sig":"MEYCIQCIVmVsPgdT0q4OLpIynTZp0a9P8D7JTF+7AdR+TTp6vAIhAOZhPpFPc2KTulFK/Hz23vkAhYuHcEo38YBNm4tTCMHn","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQDWduikOD59rFOvSTR1pTCZpJCK0L/S2sp5b4ObxNqoBgIgVOWHOtp/lS236j0orDmeXTkGZ2b7bgjgob0aoxxtf0Y=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":591934},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"c80d95208f9c8c526d87a7c0d056c82ee58766ac","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.1","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.19.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.20.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.7.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.11","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.46.2-next.364_1790023386062_0.6334014044096232","host":"s3://npm-registry-packages-npm-production"}},"0.46.2-next.366":{"name":"@tiny-fish/cli","version":"0.46.2-next.366","_id":"@tiny-fish/cli@0.46.2-next.366","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"c20035ab92c03e47af4869cdc94948e334931591","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.46.2-next.366.tgz","fileCount":144,"integrity":"sha512-fPOQbMdzqysD86C3UEHoC/18tuKum+6CxFupVKjg+Z+sCK/80SSmD1gEB7LQR2l8R/jDFVuVvps8J3zIAnP/nA==","signatures":[{"sig":"MEYCIQCUQhzLuJIQgeRUC0PVmr2wqLaVK+kinQ0cfgzuXKC6UwIhAJiD3oxCt1JtQoi5inuxh9XG0S4c+FBplEhTNdiosBWA","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQDxh/XJu//ftTJXWuWRKDXEriFNv/BmcxAQ0cUYNtOrpQIhAM5nnED4Mf6yQxtMDgcL0Y8tBZ8eAzuDnY1tlpyXgDZI","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":591934},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"abb92e7956cac4990afd8fa0c561e9a808f9dc47","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.2","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.19.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.20.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.7.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.11","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.46.2-next.366_1790023640079_0.24088531027012072","host":"s3://npm-registry-packages-npm-production"}},"0.46.2-next.367":{"name":"@tiny-fish/cli","version":"0.46.2-next.367","_id":"@tiny-fish/cli@0.46.2-next.367","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"285753be51914ae7bcfdf62c6474d6644d50fada","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.46.2-next.367.tgz","fileCount":144,"integrity":"sha512-pxBjKc6xs5lkQkihPaCZbkE1ksZHTNsksYEpQj7mAubVcA0klSsuZsByuSHIDbtSwAyEhuT4sptIEl+jxNUHAA==","signatures":[{"sig":"MEUCIQCA5eL+3cSMSRSsiWUXirfz0/us8qc9JncEq08xchNw7AIgGK0QTsFXPEO7R+abVWKXULpEtuW2mu64dqvmPsAmm3U=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQCwto3SemF9XAMpKKPShR/RiJbEqA4P9Z0lAnChJZtI2QIgXPeJ/fgCd1jAtfx4J5u9TmVxe00L+3bCkaYXogFMv2c=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":591934},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"37190e2f3d5f96ab36eaa7a55220b88df81623d5","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.5","nanoid":"^3.3.17","esbuild":"0.28.2","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.19.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.21.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.7.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.11","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.46.2-next.367_1790193325346_0.8844459186527747","host":"s3://npm-registry-packages-npm-production"}},"0.46.2-next.368":{"name":"@tiny-fish/cli","version":"0.46.2-next.368","_id":"@tiny-fish/cli@0.46.2-next.368","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"f570db4b7405d1ee8f2b639c3436b64a5fb011b7","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.46.2-next.368.tgz","fileCount":144,"integrity":"sha512-dLMZpSgtaKb3oFQWuDoMezyFkPPQmjLagM/kJjuMY4U6HU1hCDmNo4d/5bWq6nAU7IlSKKeKqODRGgdRjogGog==","signatures":[{"sig":"MEQCIBgg60UE8QhzIiZzEtxVkqRpe6OXWFSqI7x1on661XRhAiA5JRZFZ3u/AHLkL0F9eB5GkeqWL/vsPjzmYdYds+JfaA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIDFRSwG1cm3/U+LpozvwOI+HBr2HyjD6FBIKNXD/BbRnAiBYAZ4O+H3FrCz7913obeeWzlz0R1WCCRrFqskhpGoK5A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":591934},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"61d01ca3790aed73004392c83912a105cfcb654c","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.6","nanoid":"^3.3.17","esbuild":"0.28.2","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.19.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.21.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.7.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.11","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.46.2-next.368_1790197749416_0.7615404841419149","host":"s3://npm-registry-packages-npm-production"}},"0.46.2-next.369":{"name":"@tiny-fish/cli","version":"0.46.2-next.369","_id":"@tiny-fish/cli@0.46.2-next.369","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"0e980f937c4e8ad5b04710f0fd66b0b9303534fd","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.46.2-next.369.tgz","fileCount":144,"integrity":"sha512-ER8n69B32x8QqFDW3++5VLFWailVJw7HPc1Da2QMPUk+zpCxQIsqyN4Kest0f+x1tek12FoE3OinYrVDoi8EVA==","signatures":[{"sig":"MEUCIQD/Z5ZnDfBKndAHZ9fmWFhzo3L+UCKyiqTPa3BfCNus9QIgX5CXGvn57mQk9I7LQ0RcQAKfrcbUVkgnTWmU8WxA0Ss=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIE+TPrmTY7l++az67zZ3T964X2DQFkWXuBhPtO62Eo0MAiEAwIReO7WhSLUO715llq1hQDgHgc2AT3V/B5YvfFVUgso=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":591934},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"f7d2891584b3629827159deed07196257025b1d3","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.6","nanoid":"^3.3.17","esbuild":"0.28.2","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.19.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.21.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.7.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.11","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.46.2-next.369_1790376011385_0.03692685914709615","host":"s3://npm-registry-packages-npm-production"}},"0.46.2-next.370":{"name":"@tiny-fish/cli","version":"0.46.2-next.370","_id":"@tiny-fish/cli@0.46.2-next.370","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"0e97ea386f9ac50f963dc2978d2734c37c5c1e3c","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.46.2-next.370.tgz","fileCount":144,"integrity":"sha512-NM3citQIqOUAWgI87XP5PDNlRI//T8syAB6Il1csxHduu1rl20UGJhjcNqop/pi2Vdl/QovgGI+GaZ7wTpFWWA==","signatures":[{"sig":"MEUCIQCT6elf6OPxYagAGlf0gq49If03ZQdyi5uTwx5aI3BsewIgY1sfU0jBWCTs0KmQwyiNTZo23Q9weI/hoEE6a1ZA1XE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIGAp0TnA5/8wHSelR9aRQQCbsIyJQLljFLJWAEooASvmAiEAjBJ+xf0BOzqynTWxp6moti305myeMfB7ruOh/loHipY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":594308},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"f7333f82c9b8c366edf4656f2885ea98cdfc5def","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.6","nanoid":"^3.3.17","esbuild":"0.28.2","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.19.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.21.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.7.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.11","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.46.2-next.370_1790665221114_0.043806758061632145","host":"s3://npm-registry-packages-npm-production"}},"0.47.1-next.371":{"name":"@tiny-fish/cli","version":"0.47.1-next.371","_id":"@tiny-fish/cli@0.47.1-next.371","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"4ee57805e0dd9f7c86d7c3b481a923ebb0a65511","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.47.1-next.371.tgz","fileCount":144,"integrity":"sha512-kWH4j+rLpi5ePNDv6T2ggZUvx0vNBL/li5SZLDAex6zmHu9G7Q+SnWwdTaa/4+knW+PyM0/32AAbC4J+F58NXw==","signatures":[{"sig":"MEUCICNHQQ0opkPGaAk59BAQerHs3+6azCTtilmb6KMrLmMuAiEAm46k0XM2hY3pR61wNH8XVJsThM2RgBP1i6T0V2MHt0w=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIEM7WDi9oSSC4LdrzcO3GmBkQGUm7yueOTXiRyM9g9F3AiEAzRPasBD+CnbeKC6JmVNNAOijpbLeEzhTBZcEElxTFos=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":594308},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"6860d649b9b4e633a674424ecd2cae0b35562e5a","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.6","nanoid":"^3.3.17","esbuild":"0.28.2","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.19.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.21.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.7.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.11","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.47.1-next.371_1790698491797_0.3573530416116917","host":"s3://npm-registry-packages-npm-production"}},"0.47.0":{"name":"@tiny-fish/cli","version":"0.47.0","_id":"@tiny-fish/cli@0.47.0","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"4b9f5c6c5391b0bcb634f4f51c48daf7f10a998e","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.47.0.tgz","fileCount":144,"integrity":"sha512-Lk+Gn9WIuA8mUz85N2iOvqMBBfoYH1ukrxjSeztsM8HEhVysUM6sireYkm40TeXcn1t/4mIVAaTM9/ViZQaGXA==","signatures":[{"sig":"MEQCICxy7bYo8O/dYN01W9eY4NG36gp38zRvJ4xM2c8TN0iqAiBkqPPVBq0KhDWE/rqaaO2HDrBGotQGBBacUfnnUizOMg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQDE2ZpaV4NBgfHmFk2May4/vIwTxCHcjuagh0SbNb7AQwIgAqSIwa0MiTdAqL9A42sdS5+MPprdcNU6TiYjcY2PzUo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":594299},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"6860d649b9b4e633a674424ecd2cae0b35562e5a","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.6","nanoid":"^3.3.17","esbuild":"0.28.2","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.19.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.21.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.7.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.11","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.47.0_1790698662851_0.9836406910007058","host":"s3://npm-registry-packages-npm-production"}},"0.47.1-next.373":{"name":"@tiny-fish/cli","version":"0.47.1-next.373","_id":"@tiny-fish/cli@0.47.1-next.373","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"75353b80fd55fc3fe198df3d3b1195751a27f2ee","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.47.1-next.373.tgz","fileCount":144,"integrity":"sha512-ido+R1ozyqY0hcF7TdQS1gb42XaJzfYnwTABI9TlvP4SGjNR/CnCS9AbHKa3GUI7M+fk6b6KZjbaGYrq6E7TWg==","signatures":[{"sig":"MEUCIAGQt3h5vXxRB6KG1V4sJit2w6QOtoN9TKauKzza6xCNAiEA+Hu3oZJfJsYZCFg7HLA/miEawZ1eIXHtQVp0yzhSoSE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQD3wfd3DohvAknYQq26Qf6tL2mjAQuzq59w1uOwHinafgIgDA4VU0L3+Gj4TTKa6Cx3s9P8Ojy4zCh9f6F70MNgleE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":594308},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"5b294dc95a16fa9a1775ba21bd453f5b07d4cc6c","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.6","nanoid":"^3.3.17","esbuild":"0.28.2","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.19.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.21.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.8.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.11","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.47.1-next.373_1790704366668_0.3329855054474169","host":"s3://npm-registry-packages-npm-production"}},"0.47.1-next.374":{"name":"@tiny-fish/cli","version":"0.47.1-next.374","_id":"@tiny-fish/cli@0.47.1-next.374","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"54562e3a4aadb1f0857ac57ff6624ee1050fd052","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.47.1-next.374.tgz","fileCount":144,"integrity":"sha512-YudFNIOnQfGSTGNwmHmTdZmDFuYr24OyRidP/v+L5lRbZq8NSc7jVarcIw7M/kwxtiyNXhNJ9mT5kpZ7nS9Zcg==","signatures":[{"sig":"MEUCID2FgI9cjw95/SLSvI75inwlUOx4Dc/aiEJxIlKDYUPEAiEAoZD3GuRfOM5d294N5/v+SeB8sdoxXqZ1Nn5Cp9Xb04M=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIDcuaX6qoLoQrp3RLn4Ge3VTIaLfJT7gDBpI8UdIljrtAiEAwQmQZXgsW7/D/Rtz1MQBMDeZ1olTWJEdaxyYkDXak3Y=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":594878},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"00b48b42fe14226c0294cf47ca1ff972da567d78","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.6","nanoid":"^3.3.17","esbuild":"0.28.2","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.19.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.21.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.8.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.11","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.47.1-next.374_1790823636420_0.37596446531343863","host":"s3://npm-registry-packages-npm-production"}},"0.47.1":{"name":"@tiny-fish/cli","version":"0.47.1","_id":"@tiny-fish/cli@0.47.1","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"f3cfe0485c2d027356e3b2a1135472829c6302f1","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.47.1.tgz","fileCount":144,"integrity":"sha512-dtUx7yndWXU4DyExay/F+Rvd+ziSRYNsQgwS5UP8risoD/TPKBYnx5L9m57lIDu+XuWMJIN3WR86BzK32bzvRw==","signatures":[{"sig":"MEUCIDrK+W/MPar3Xm52G1h5QKmI6hfvGgrdl9sCeyOBfn0DAiEAgWat/Jy0JvqoNMWh5iW8w82DSAFOC7OzQWsJ5M6zNOY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQDk0s9TvgTgdrYXywvb8egWbWdEr9QJImLlChq1XobNMAIhAKVY6GrhLoWUqgpPlPKKeRdCKBHgf8wUe8Le6LMNoIHF","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":594869},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"d710edb8eb62bbcdbeaea6b25f224099c8431cac","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.6","nanoid":"^3.3.17","esbuild":"0.28.2","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.19.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.21.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.8.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.11","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.47.1_1790826176292_0.8673078873940903","host":"s3://npm-registry-packages-npm-production"}},"0.47.2-next.375":{"name":"@tiny-fish/cli","version":"0.47.2-next.375","_id":"@tiny-fish/cli@0.47.2-next.375","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"6e172e85d54b497d6c1d5ec714b2e14bfd8e5ba0","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.47.2-next.375.tgz","fileCount":144,"integrity":"sha512-KELPFuoKYgn9+Qa79UPaItqoqQ/TL+wf1/YNzzJ0WE/AHGTa7alTGwW8WwqGmHPB2unhVww6llCodeVsAu0blw==","signatures":[{"sig":"MEUCIQD5p/0ugAzL5/phQxkm4bw44p2wAfWT3oqaSSckvX/x+AIgNzQFggdQm3vocHljV3te2RFIXFR4OJk5CJ1iwPZ9uSs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIAkxqTpHdKRXDWqrR18KAUB6zMAzS1NQLXK6VlNYYk88AiAWThPKtMThGXzis6HeEzX+BN2D62wdMooGcciW7kWUyA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":594878},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"d710edb8eb62bbcdbeaea6b25f224099c8431cac","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.6","nanoid":"^3.3.17","esbuild":"0.28.2","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.19.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.21.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.8.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.11","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.47.2-next.375_1790826233731_0.12392853111119706","host":"s3://npm-registry-packages-npm-production"}},"0.47.2-next.377":{"name":"@tiny-fish/cli","version":"0.47.2-next.377","_id":"@tiny-fish/cli@0.47.2-next.377","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"9d0a6389224fa4a350076f9165db426632428394","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.47.2-next.377.tgz","fileCount":144,"integrity":"sha512-AlkJi2ND/iD0N9C4kOOg/gOsjENS06KuxXKK6TNmaUKL022JWnrI7GN+nvszy5W65u4tPoAKAXkif+oxLSwNuw==","signatures":[{"sig":"MEUCIAw6iLydThnX9pkhcau3SWLjVMLSNTkXmcnlgxu8UoQwAiEA6v5hMkG8dYkfQF4A3rfCQd+AsO2KXXLRWcnbUCp1sYw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQDFDnewmpZrDZAprhwkk3W0WV94yhts4Ay7OM2Pvm4nOgIhAI8s+v7oacVWvfJas67DxrtBx7/3wd9SjSzC70N11dZc","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":598966},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"450036e763f27b229ea5f3b1680d5d6024fa7a9e","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.6","nanoid":"^3.3.17","esbuild":"0.28.2","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.19.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.21.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.8.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.11","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.47.2-next.377_1790883598325_0.7830396853690613","host":"s3://npm-registry-packages-npm-production"}},"0.47.2":{"name":"@tiny-fish/cli","version":"0.47.2","_id":"@tiny-fish/cli@0.47.2","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"6e980192e505f2a26b60f5c01265d168b9d5a2dd","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.47.2.tgz","fileCount":144,"integrity":"sha512-gG8CGmUzd+BZSAunx4JqjgREOgp0upBnhjYaKRX9Ojksjb+8PiNzasSSkhA3C2p02brM+eX/4wyoqpRA7Kriiw==","signatures":[{"sig":"MEYCIQDXL3fltC1GEDG5LIbGGMURwFacYrcCzkitZSCWr3mMYAIhAMDB2qYRa0oQex+wIGyOaP4eo28SbtZGYQ1+kimDJWGX","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQCiCwYuSfYgjDRZta1gi+THYCFeQhyHcGceodfE1K43JwIgIyYeCsJShp1NGLz5zgCB19khfstYQW8n4G+3ABeg6jU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":598957},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"e122f9ddaeda9bf320485f7aece22cdf77e69da8","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.6","nanoid":"^3.3.17","esbuild":"0.28.2","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.19.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.21.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.8.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.11","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.47.2_1790887568750_0.5102856747040956","host":"s3://npm-registry-packages-npm-production"}},"0.47.3-next.378":{"name":"@tiny-fish/cli","version":"0.47.3-next.378","_id":"@tiny-fish/cli@0.47.3-next.378","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"5685946647de503b59a128e03eddb023b320b3d9","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.47.3-next.378.tgz","fileCount":144,"integrity":"sha512-ebOISHOIQLcxyv13zXOur5C+xz1Gm7Riv417g1j/OK0V4m1Djhr8zB8bUBpHgHQVagBn35C4zuIR4cuoT7cKIQ==","signatures":[{"sig":"MEYCIQCQAvEFni+fKM7t+Im0pHMwabldUFgMxgmRIIy8WHWquQIhALP97d1bFCzW2cHow/I3QObsdnrhWqYf9Vu/lV945MNR","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIEBRUQW0dGQ15imFTDCALb4FrVkSR4lSId29wC/kPW8TAiAYB3pNe24EaHHCox3RugpPcf0ooCdMX1FgVmR5t3TsFQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":598966},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"e122f9ddaeda9bf320485f7aece22cdf77e69da8","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.6","nanoid":"^3.3.17","esbuild":"0.28.2","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.19.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.21.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.8.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.11","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.47.3-next.378_1790887886482_0.9963283719516174","host":"s3://npm-registry-packages-npm-production"}},"0.47.3-next.380":{"name":"@tiny-fish/cli","version":"0.47.3-next.380","_id":"@tiny-fish/cli@0.47.3-next.380","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"673de32b3a62b73c68b12b316db491ed988f48c0","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.47.3-next.380.tgz","fileCount":144,"integrity":"sha512-vje7RTHm7KNiw1W4F3IRdrXrFlpE5hE2j51hf+WJKAbfRrfCqvNRD/fJWVVGZvhVPOGjNhX79qeYZsl92z3wvw==","signatures":[{"sig":"MEUCIQCAOBg1e/3Rg/9ubpkWpA7HirDYeXjrg3VEP0tZDDtiFwIgMEjxPkeoLyOqF69fEaZg+9sV06n55w9JKaYul1jEr+k=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIG94f1+RiONsVNSad+eA5blHHiBlku5pT3aFJHhDL236AiEAmcubtgxdAZQojvf4hbMAbbAFAYqTWCmPZn1nbHiMU/c=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":601080},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"333f03a1f229a95efe486856a64b4029c403aca9","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.6","nanoid":"^3.3.17","esbuild":"0.28.2","postcss":">=8.5.23","ip-address":">=10.3.1","brace-expansion":"^5.0.9"},"_npmVersion":"11.19.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.21.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.8.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.11","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.47.3-next.380_1790978781869_0.7194680886586633","host":"s3://npm-registry-packages-npm-production"}},"0.47.3-next.381":{"name":"@tiny-fish/cli","version":"0.47.3-next.381","_id":"@tiny-fish/cli@0.47.3-next.381","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"338e9cf11953fad77721d076afd03e15a546e2c6","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.47.3-next.381.tgz","fileCount":144,"integrity":"sha512-y8+hEEk8lS+RdDfDyOuAQ7uGEFdxZO0u04ab6kY6qbLMZiJCiQCh/ntbBBeGRS/j79NFw9PWggw8n15iJy8NHQ==","signatures":[{"sig":"MEQCIFrOMzwG/tV5ViO935mAPI79oviwKLguZu6CZ8d889BvAiAYMH3L7E0K9T8T8sYINui9UqSA50wAKB3gYeVGLifhiA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIGJx7QquDJn9b/mUg83ABhC0mwTithgUSq2F7UgEdAFxAiAXduEwc0mua6fOnvU6KB0JRK3aIXdytcCSUa0G3cv0Jg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":601137},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"db497055a4cddfaf5ee62e3c6b0a9a184a8ba749","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.6","nanoid":"^3.3.17","esbuild":"0.28.2","postcss":">=8.5.23","tinypool":"^2.1.2","ip-address":">=10.3.1","source-map-js":"^1.2.2","brace-expansion":"^5.0.9"},"_npmVersion":"11.19.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.21.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.8.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.11","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.47.3-next.381_1791248714685_0.5764302191869197","host":"s3://npm-registry-packages-npm-production"}},"0.47.3-next.382":{"name":"@tiny-fish/cli","version":"0.47.3-next.382","_id":"@tiny-fish/cli@0.47.3-next.382","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"9ea4db4ddaad918b6b78736000e4cb906e7f8b7a","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.47.3-next.382.tgz","fileCount":144,"integrity":"sha512-eEK5WHRTtz+i5EEY7mt8p2j2UZ4zPEwAPZpiVOIyE19jSdosgulsEzHAQTudR0oSiwRH5shdAweAN0U10UfJ+g==","signatures":[{"sig":"MEYCIQCnNhSFSPcRHLnV5pyD3V0sVvdg57ZaW9Um0vZdyrdvzAIhAJGpEUMKnq3lDSJ34tmVioaOY+U7Ox/R3X6q9ALFng0j","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQDWL1It031+Lt1HEPuX9Jq78cYGachTozvix1fjDviRyQIgC8WLtBY6JS+lTGFpy/a6/7kKq4v7lVk1Xa5uuPKhkZI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":603645},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"74b5746c2b2af914e36f2000e61f0388757b5d8a","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.6","nanoid":"^3.3.17","esbuild":"0.28.2","postcss":">=8.5.23","tinypool":"^2.1.2","ip-address":">=10.3.1","source-map-js":"^1.2.2","brace-expansion":"^5.0.9"},"_npmVersion":"11.19.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.21.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.8.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.11","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.47.3-next.382_1791313914776_0.9204605509126336","host":"s3://npm-registry-packages-npm-production"}},"0.48.1-next.383":{"name":"@tiny-fish/cli","version":"0.48.1-next.383","_id":"@tiny-fish/cli@0.48.1-next.383","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"275ffd68095f76f17ef883b41f11e32cfd7271f9","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.48.1-next.383.tgz","fileCount":144,"integrity":"sha512-s5gFq4vjO5PY5NyhlcnCa4ZTQ/RcSZ1fRHDuRFnDBPGwd3+2mQFqDEWy7U3SZNbzGOSWgAToX4lvPHc0U0lmkw==","signatures":[{"sig":"MEUCIQDASDClSwlCGCxIVCcxjdEK1xexNtcV/PYghuk0gwzPDgIgAW9So7RIMwxxVG0lMEaVa2xgK4IlZ/3hTkjVFU76qYg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIFcEsxBkz5CoVR7f/55tjLm+hz9+lKVwhfSSlSq3MlaqAiATogu7kv4fe3dlRfKXWJZkZo4dApNiAAottNlwbyO7ZA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":603645},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"1c80fb332e99666a40cd351563bdeac71d1755a8","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.6","nanoid":"^3.3.17","esbuild":"0.28.2","postcss":">=8.5.23","tinypool":"^2.1.2","ip-address":">=10.3.1","source-map-js":"^1.2.2","brace-expansion":"^5.0.9"},"_npmVersion":"11.19.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.21.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.8.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.11","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.48.1-next.383_1791319079579_0.8935931202746721","host":"s3://npm-registry-packages-npm-production"}},"0.48.0":{"name":"@tiny-fish/cli","version":"0.48.0","_id":"@tiny-fish/cli@0.48.0","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"c9b80f0a4a1831666b08fb602e61da104fdce7bc","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.48.0.tgz","fileCount":144,"integrity":"sha512-Fuf4l2Z4xl3S6OYlYovmp/oeJIR3UZL0xf9k4rZhjwpuH+o974XUSnK78S1j/oAoNrHWoehi+x+SO5OS0kkE2A==","signatures":[{"sig":"MEYCIQCYF+mP6CbArbo2kwJb/g6k64Z0YrDHmMpkHoksX7pogAIhAPLIIaObR7D3zFYQ8iuguyPOcKHPlIFm3lhp7oO4IshV","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIEVe3lttHI6B647+n3M8CB2iihQSYTXoVYyhRTYNfOYgAiBgivlMMEJXEoSV4dME/9f9SeII7uMTuKsWIhm7lBjBoQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":603636},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"1c80fb332e99666a40cd351563bdeac71d1755a8","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.6","nanoid":"^3.3.17","esbuild":"0.28.2","postcss":">=8.5.23","tinypool":"^2.1.2","ip-address":">=10.3.1","source-map-js":"^1.2.2","brace-expansion":"^5.0.9"},"_npmVersion":"11.19.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.21.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.8.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.11","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.48.0_1791319121262_0.7249134878681147","host":"s3://npm-registry-packages-npm-production"}},"0.48.1":{"name":"@tiny-fish/cli","version":"0.48.1","_id":"@tiny-fish/cli@0.48.1","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"6846f8e5756b00f817b6b865173423c11e20dfb8","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.48.1.tgz","fileCount":144,"integrity":"sha512-zHVAM3lKiD2t9faZo84OUfv83akAh5iZ/BzheuzbEN/ksXO7U7TTUwXj0K7lc1RUxrB4ZPprt/iu0uhTn/PieA==","signatures":[{"sig":"MEQCIDUfINJeohl3BXMq/Tj5JV33RGP7Jm729JgnXiuYWBuTAiA1HR5F7V1zcV9zcdksJuGr4F2UD+VMF9oNNKYpzsBNcQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQDwjbKZtjY9PZhuh4ICeJEMgOEZwH+74Jajn2G6BuPLDgIgFANbJiLbhqXY7QZT1IlyJ8eyQcNe2N1Dg9jro/N79Mo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":607297},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"2396093a094a5cdd713d018c366462c8ebf82d3f","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.6","nanoid":"^3.3.17","esbuild":"0.28.2","postcss":">=8.5.23","tinypool":"^2.1.2","ip-address":">=10.3.1","source-map-js":"^1.2.2","brace-expansion":"^5.0.9"},"_npmVersion":"11.19.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.21.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.8.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.11","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.48.1_1791332430864_0.33484055287103964","host":"s3://npm-registry-packages-npm-production"}},"0.48.2-next.386":{"name":"@tiny-fish/cli","version":"0.48.2-next.386","_id":"@tiny-fish/cli@0.48.2-next.386","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"7ba6ec218514e8a831818278d8b4dc23b50e4859","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.48.2-next.386.tgz","fileCount":144,"integrity":"sha512-H2fIJ0zzRxirK7zFD3n8Q9IqfCfEVK04BZBMiNupTLjFoJ4N6xWmzwpzO5xjG7acNfGRKBIEEstORXk0inTzCw==","signatures":[{"sig":"MEYCIQDM/yPwK7XHTeaoTXaoY4jzp5zkQiJ6DVo7/ZMWZXNNgQIhALH6+fUquQnToq8zOh2DJRaUxduD1yHJjtKzmd8c+zFZ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIBoN3qrgFLz18QOoEWW2gNCZglMGxeoKdUn5rqSGa59IAiEAiQR64L3p8Ac8bLrU/OT5iZv2kdBAYm0vHIdMKTDRjjY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":607306},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"2396093a094a5cdd713d018c366462c8ebf82d3f","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.6","nanoid":"^3.3.17","esbuild":"0.28.2","postcss":">=8.5.23","tinypool":"^2.1.2","ip-address":">=10.3.1","source-map-js":"^1.2.2","brace-expansion":"^5.0.9"},"_npmVersion":"11.19.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.21.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.8.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.11","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.48.2-next.386_1791332710813_0.30397326929328905","host":"s3://npm-registry-packages-npm-production"}},"0.48.2-next.388":{"name":"@tiny-fish/cli","version":"0.48.2-next.388","_id":"@tiny-fish/cli@0.48.2-next.388","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"73d084fa3b95cb78aeb12fa19f40608ac2873f50","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.48.2-next.388.tgz","fileCount":144,"integrity":"sha512-rXgA2OCO0p8KrUDDXz+l4b6pIbKMlgiXPFHhtKBT2Zlelf0YpW60FUioVNIhKU6/J3ReKpioIZfhIo7/9voqoA==","signatures":[{"sig":"MEQCIDQWYWPbH8jOMx/crMgwGuVg70baFArdAOXvxLNCWGCBAiBPU+VwV3gT0ZC8q144bsoiRe2Ld17Q0n1akw5btkcJKA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQDlUprIaOUV5H3nKbKckopHkuJkMyis6uqQomzfGVeG6QIgUllSTAH3SDPoyOE6FSNLqXReKcMbomI47iZr1MDWilg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":603201},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"f5795f0a0a33740c5aafadb69f2afca433e8bde2","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.6","nanoid":"^3.3.17","esbuild":"0.28.2","postcss":">=8.5.23","tinypool":"^2.1.2","ip-address":">=10.3.1","source-map-js":"^1.2.2","brace-expansion":"^5.0.9"},"_npmVersion":"11.19.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.21.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.8.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.11","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.48.2-next.388_1791485751171_0.9918992094031205","host":"s3://npm-registry-packages-npm-production"}},"0.48.3-next.389":{"name":"@tiny-fish/cli","version":"0.48.3-next.389","_id":"@tiny-fish/cli@0.48.3-next.389","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"0df2a201828c4474c810f818e6933b8c5f51cb73","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.48.3-next.389.tgz","fileCount":144,"integrity":"sha512-SAVTt1Ww4okH6msPaUXy6cT5m4wc1ikN9AQ6MAUk/XkSsLy7zAVK1riMMHARohqC7POAvDOJ4jIrpXuO8vGGdg==","signatures":[{"sig":"MEUCIHxc2oezhJuzhRusgeISVA1CJt9w1xtokv9VCxpczdu/AiEAzx0OfSjXmJvPpd1MAyQbPb5EIMgwgyTHFZR6DXs+6PI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIDDKwaOzXfJJKC2+JnD9vdwFvOHlQka2d3IwXnPuPUmMAiBxRJHyQtxfXD6PR+5wicbX5uFP/+23cYg+3SRI7MlF4Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":603201},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"a0e36ac42844166c162662aded925b07e8ad5423","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.6","nanoid":"^3.3.17","esbuild":"0.28.2","postcss":">=8.5.23","tinypool":"^2.1.2","ip-address":">=10.3.1","source-map-js":"^1.2.2","brace-expansion":"^5.0.9"},"_npmVersion":"11.19.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.21.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.8.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.11","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.48.3-next.389_1791487625000_0.3445874530230808","host":"s3://npm-registry-packages-npm-production"}},"0.48.2":{"name":"@tiny-fish/cli","version":"0.48.2","_id":"@tiny-fish/cli@0.48.2","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"5bce1d995cc5dfbbdf574f2f80fb063cbf590ed4","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.48.2.tgz","fileCount":144,"integrity":"sha512-beVlsfmM/l/DggjwIGXoCRG8pNNclffczcwbJAnSN6SQfmek00AJjzGG9r0oQMuPQr06Zt64FpwYN2l+dsMQsg==","signatures":[{"sig":"MEYCIQDQwBUuQZLh0eztLlValwzAZ6CDCr2QEN1sb0AJrb1+1AIhAJB008w7lLUVPn8ALnOFZmrkL+EF94LAfbFXAFcDchIY","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQDD6ztu7YoETLveuDHYqRwW7VQKJLobCuvx4E6ASXaHEwIgX8dEd/o7w2HwF5WfKcI8KXeERwI6uYJzw2C3azkwOCQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":603192},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"a0e36ac42844166c162662aded925b07e8ad5423","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.6","nanoid":"^3.3.17","esbuild":"0.28.2","postcss":">=8.5.23","tinypool":"^2.1.2","ip-address":">=10.3.1","source-map-js":"^1.2.2","brace-expansion":"^5.0.9"},"_npmVersion":"11.19.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.21.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.8.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.11","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.48.2_1791487688167_0.4781032759072903","host":"s3://npm-registry-packages-npm-production"}},"0.48.3-next.391":{"name":"@tiny-fish/cli","version":"0.48.3-next.391","_id":"@tiny-fish/cli@0.48.3-next.391","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"1fc5406a0c18ae25c4564827527247c2aa56f9af","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.48.3-next.391.tgz","fileCount":144,"integrity":"sha512-XInu6yzFmgXH55CuSCGGpBo564/Op6KZ62c2ukoxXoJx1j50oZoeFmb6eUyr3PRTsshb/2lk3heh3KZS/t78gw==","signatures":[{"sig":"MEYCIQDnbIUqEbmwjBFrp1XJKX1tpYWWHX6EDzWzcw/2KgbxJAIhAPtldtZE1B5C9L7Y8u8nStfvWw7EZ/bWu3M9vBP6PS3A","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQDOcYn04DH5CjAqFlI3Aj1/PB6+ll9COyPm8TDKQaonigIgA6B44K/ERcJyBeHnVzDCoWE51X50tW361KB+Omec4jY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":604098},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"55c6f99f31c0d025ce670fa937f2d8ac72640406","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.6","nanoid":"^3.3.17","esbuild":"0.28.2","postcss":">=8.5.23","tinypool":"^2.1.2","ip-address":">=10.3.1","source-map-js":"^1.2.2","brace-expansion":"^5.0.9"},"_npmVersion":"11.19.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.21.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.8.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.11","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.48.3-next.391_1791494470368_0.3324877998876694","host":"s3://npm-registry-packages-npm-production"}},"0.48.3-next.392":{"name":"@tiny-fish/cli","version":"0.48.3-next.392","_id":"@tiny-fish/cli@0.48.3-next.392","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"8b43a7580a80b873df7fd2c8c59ff7632b605fde","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.48.3-next.392.tgz","fileCount":148,"integrity":"sha512-9pIwNzXBgsXKVCDY019czO8y2Aj8zZV8xKQGaDTRQy0DfeULGR4fZYNAnEus7wmq+c94OyD/4eUMRkWCbcA22A==","signatures":[{"sig":"MEUCIQD8xO1bzZT51meAhyjpQtftUM+UaNt/sYQ0XTbo1RwvmwIgVeBXkv+XsDAp8iW1a6Gg7+XItPzWvZp9daGrtWt0Y9g=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIBIRntUicr+I3hKXnoqO5OS7ltIVm1YCNYj0DRLSV3hwAiBZidsjJ48yR2qOqBJUIw4oeEeWNjWgpIxvf1+59xvXXQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":630180},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"c07c4562dcba3dae28f5c6394298da6daf1fc3e7","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.6","nanoid":"^3.3.17","esbuild":"0.28.2","postcss":">=8.5.23","tinypool":"^2.1.2","ip-address":">=10.3.1","source-map-js":"^1.2.2","brace-expansion":"^5.0.9"},"_npmVersion":"11.19.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.21.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.8.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.11","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.48.3-next.392_1791500313861_0.4064942450067499","host":"s3://npm-registry-packages-npm-production"}},"0.49.0":{"name":"@tiny-fish/cli","version":"0.49.0","_id":"@tiny-fish/cli@0.49.0","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"eae14b0fac61191b939dd7c75562ed22d59cba33","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.49.0.tgz","fileCount":148,"integrity":"sha512-lgE5QIRaAAhOGBI5+JEL1nGBt9OqxlRY/liQ30xQMC0ACDzjJCPBGc+EgzBCNT8HYFjlPAokQHj9N3svs+N0Tw==","signatures":[{"sig":"MEYCIQC+0mlDNmUWlbbZtxPdWi02Ydyp6NA5vFfq6eAd8KMwoAIhALuiMkxzucYaYa0YqTODSlJbo5fRxQNQyAkptItGYV8t","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQDFh7bArruDrsxaL8pz/zsdW0/bICfQo1aRaZdu9vBi3QIgeLrfR+yQk8+vRIlJBv7YQS79hAX3rxq5q7+bh0FXftI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":630171},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"f00c70bb40c914ec38d4ce3227fce204cbb25afe","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.6","nanoid":"^3.3.17","esbuild":"0.28.2","postcss":">=8.5.23","tinypool":"^2.1.2","ip-address":">=10.3.1","source-map-js":"^1.2.2","brace-expansion":"^5.0.9"},"_npmVersion":"11.19.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"_nodeVersion":"24.21.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.8.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.11","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.49.0_1791502016881_0.32655207174696077","host":"s3://npm-registry-packages-npm-production"}},"0.49.1-next.393":{"_id":"@tiny-fish/cli@0.49.1-next.393","bin":{"tinyfish":"dist/index.js"},"dist":{"shasum":"3983db26d3a53f8f7c8df1e10588966d73c30774","tarball":"https://registry.npmjs.org/@tiny-fish/cli/-/cli-0.49.1-next.393.tgz","fileCount":148,"integrity":"sha512-1iHXvDI+DXwWeFlZUH+TmSlRERfvHhCX/3hV0P2IsAYyB+N65fCSU2Hnj0np7TExfUy+iY6ebCNYFUtrJTP4Gg==","signatures":[{"sig":"MEYCIQDPnFUR1VTvFdEZ9N/C37whXwtmbb9HIkQCnhgR6tJxJwIhALgtUTzv2V0MTWlIkTE3fi1J+8g1KoHr10ID6IJu+1Te","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIFD9MsXmvMdE3Dbz3/v71R3DVw7EnlQxmSQ5jZuAaRtuAiBr4loihmq0izg9aTQmYmcDpxALekw9fa4cZ+kw0JjFeg=="}],"unpackedSize":630180},"name":"@tiny-fish/cli","type":"module","engines":{"node":">=24.0.0"},"gitHead":"f00c70bb40c914ec38d4ce3227fce204cbb25afe","scripts":{"lint":"oxlint --config .oxlintrc.json","test":"vitest --run","build":"tsc","format":"oxfmt --write .","test:file":"vitest --run","test:watch":"vitest","type-check":"tsc --noEmit --project tsconfig.all.json","lint:budget":"bash ../../.github/scripts/oxlint-budget.sh sdk/cli","format:check":"oxfmt --check .","prepublishOnly":"npm run build","test:integration":"npm run test:integration:auth && npm run test:integration:api:fetch && npm run test:integration:api:browser && npm run test:integration:api:search && npm run test:integration:api:sync && npm run test:integration:api:stream && npm run test:integration:api:async && npm run test:integration:api:cancel && npm run test:integration:api:batch","test:integration:auth":"vitest --run --config vitest.integration.config.ts tests/auth.integration.test.ts","test:integration:api:sync":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --sync|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:async":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run --async returns a run id that can be fetched and listed|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:batch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"batch commands work end-to-end against the real API|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:fetch":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"fetch content get|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:cancel":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run cancel cancels an in-flight run|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:search":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"search query|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:stream":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"agent run streaming exits cleanly after COMPLETE|skips real API coverage when TINYFISH_API_KEY is not set\"","test:integration:api:browser":"vitest --run --passWithNoTests --config vitest.integration.config.ts tests/api.integration.test.ts --testNamePattern \"browser session create|skips real API coverage when TINYFISH_API_KEY is not set\""},"version":"0.49.1-next.393","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"127352dd-9714-49e8-a9e9-0365a8acf927"}},"overrides":{"tar":"^7.5.21","vite":"7.3.6","nanoid":"^3.3.17","esbuild":"0.28.2","postcss":">=8.5.23","tinypool":"^2.1.2","ip-address":">=10.3.1","source-map-js":"^1.2.2","brace-expansion":"^5.0.9"},"_npmVersion":"11.19.0","description":"TinyFish CLI — run web automations from your terminal","directories":{},"lint-staged":{"**/*.ts":["oxlint --fix --config .oxlintrc.json","oxfmt --write --no-error-on-unmatched-pattern"],"**/*.{json,md}":["oxfmt --write --no-error-on-unmatched-pattern"]},"maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"_nodeVersion":"24.21.0","dependencies":{"zod":"^4.3.6","yaml":"^2.9.0","tldts":"^6.1.86","which":"^2.0.2","commander":"^12.0.0","cross-spawn":"^7.0.6","@tiny-fish/sdk":"^0.8.0"},"publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"oxfmt":"^0.48.0","oxlint":"^1.63.0","vitest":"^4.1.11","typescript":"^5.0.0","@types/node":"^20.0.0","lint-staged":"^16.2.7","@types/which":"^2.0.2","@types/cross-spawn":"^6.0.6"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/cli_0.49.1-next.393_1791502024231_0.7257753841560233"}}},"time":{"created":"2026-03-16T19:52:31.194Z","modified":"2026-10-08T23:27:04.514Z","0.1.0":"2026-03-16T19:52:31.749Z","0.1.1":"2026-03-17T06:09:38.261Z","0.1.2":"2026-03-17T23:02:42.596Z","0.1.2-next.15":"2026-03-18T20:36:11.321Z","0.1.2-next.16":"2026-03-18T23:09:14.748Z","0.1.3-next.17":"2026-03-19T03:28:03.681Z","0.1.3-next.18":"2026-03-19T18:38:22.864Z","0.1.3-next.20":"2026-03-19T20:43:14.306Z","0.1.3-next.22":"2026-03-19T20:51:44.228Z","0.1.3":"2026-03-19T20:57:02.988Z","0.1.3-next.26":"2026-03-24T21:13:42.688Z","0.1.3-next.27":"2026-03-25T00:29:15.170Z","0.1.3-next.29":"2026-03-25T21:38:44.400Z","0.1.3-next.30":"2026-03-25T22:05:03.813Z","0.1.3-next.31":"2026-03-26T19:32:22.142Z","0.1.3-next.32":"2026-04-02T00:38:31.415Z","0.1.3-next.34":"2026-04-02T18:33:48.100Z","0.1.4-next.35":"2026-04-02T23:23:00.334Z","0.1.4-next.37":"2026-04-03T00:43:00.354Z","0.1.4":"2026-04-03T00:46:48.565Z","0.1.4-next.39":"2026-04-03T20:53:13.900Z","0.1.4-next.40":"2026-04-03T21:53:33.942Z","0.1.4-next.41":"2026-04-06T19:13:51.611Z","0.1.4-next.43":"2026-04-06T20:15:21.761Z","0.1.5-next.44":"2026-04-06T21:33:18.732Z","0.1.5":"2026-04-06T21:47:55.089Z","0.1.5-next.47":"2026-04-23T20:44:55.225Z","0.1.5-next.48":"2026-04-24T17:18:16.045Z","0.1.5-next.50":"2026-05-06T21:43:14.668Z","0.1.6":"2026-05-06T23:32:37.827Z","0.1.6-next.57":"2026-06-01T17:01:29.192Z","0.1.6-next.58":"2026-06-08T18:03:42.401Z","0.1.7":"2026-06-08T18:27:33.097Z","0.1.7-next.61":"2026-06-10T19:26:54.067Z","0.1.7-next.62":"2026-06-12T22:05:50.566Z","0.1.7-next.63":"2026-06-12T22:19:46.314Z","0.1.7-next.64":"2026-06-15T18:09:02.899Z","0.1.7-next.65":"2026-06-15T19:17:53.700Z","0.1.7-next.66":"2026-06-16T19:39:08.583Z","0.1.7-next.67":"2026-06-23T03:44:51.611Z","0.1.8":"2026-06-23T04:11:52.732Z","0.1.8-next.70":"2026-06-23T23:23:15.661Z","0.1.8-next.71":"2026-06-26T21:20:07.743Z","0.1.8-next.72":"2026-06-26T23:18:41.352Z","0.2.0":"2026-06-26T23:34:04.815Z","0.2.0-next.77":"2026-07-07T20:18:30.502Z","0.2.0-next.78":"2026-07-20T21:18:45.055Z","0.2.0-next.79":"2026-07-20T21:25:23.022Z","0.2.0-next.80":"2026-07-20T22:37:04.196Z","0.2.1-next.81":"2026-07-20T22:41:12.341Z","0.2.1":"2026-07-20T22:44:12.191Z","0.2.1-next.83":"2026-07-21T22:08:05.741Z","0.2.2":"2026-07-21T22:16:39.551Z","0.3.1-next.87":"2026-07-22T18:58:06.998Z","0.3.0":"2026-07-22T18:58:53.462Z","0.3.1-next.89":"2026-07-22T21:41:50.289Z","0.4.1-next.90":"2026-07-23T00:27:11.176Z","0.4.0":"2026-07-23T00:28:12.194Z","0.4.1-next.92":"2026-07-23T15:56:38.090Z","0.4.1-next.93":"2026-07-23T18:22:36.493Z","0.5.1-next.94":"2026-07-23T18:55:39.001Z","0.5.0":"2026-07-23T18:55:58.110Z","0.5.1-next.96":"2026-07-24T17:01:37.634Z","0.5.1-next.97":"2026-07-24T22:49:09.983Z","0.5.1-next.98":"2026-07-27T19:17:08.274Z","0.6.1-next.99":"2026-07-27T22:53:20.925Z","0.6.0":"2026-07-27T22:53:29.829Z","0.6.1-next.101":"2026-07-27T23:07:06.113Z","0.6.2-next.102":"2026-07-27T23:54:41.116Z","0.6.1":"2026-07-27T23:58:12.577Z","0.6.2-next.104":"2026-07-29T20:52:57.249Z","0.6.2-next.105":"2026-07-29T21:33:09.805Z","0.6.2-next.106":"2026-07-29T22:09:40.260Z","0.6.2-next.107":"2026-07-29T22:29:47.500Z","0.7.1-next.108":"2026-07-29T22:33:17.394Z","0.7.0":"2026-07-29T22:33:52.682Z","0.7.1-next.110":"2026-07-30T21:44:57.325Z","0.7.2-next.111":"2026-07-30T22:51:26.046Z","0.7.1":"2026-07-30T23:05:48.734Z","0.7.2-next.114":"2026-08-03T17:15:01.693Z","0.7.2-next.115":"2026-08-03T18:00:48.982Z","0.7.2-next.116":"2026-08-03T20:05:33.920Z","0.7.2-next.118":"2026-08-03T20:36:55.681Z","0.8.0":"2026-08-04T16:33:59.722Z","0.8.1-next.119":"2026-08-04T16:34:09.414Z","0.8.1-next.121":"2026-08-04T17:26:07.529Z","0.9.1-next.122":"2026-08-04T18:27:22.072Z","0.9.0":"2026-08-04T18:29:24.775Z","0.9.1-next.124":"2026-08-04T21:30:58.693Z","0.10.1-next.128":"2026-08-04T21:54:16.254Z","0.10.2-next.129":"2026-08-04T22:02:44.739Z","0.10.1":"2026-08-04T22:02:50.947Z","0.10.2-next.131":"2026-08-06T07:26:56.316Z","0.11.1-next.132":"2026-08-06T14:50:40.132Z","0.11.0":"2026-08-06T14:50:46.683Z","0.12.1-next.135":"2026-08-07T00:02:44.323Z","0.12.0":"2026-08-07T16:21:32.429Z","0.12.1-next.137":"2026-08-07T16:33:19.529Z","0.12.1-next.138":"2026-08-07T17:02:28.653Z","0.12.1-next.139":"2026-08-07T18:46:46.463Z","0.12.1-next.142":"2026-08-07T21:52:11.514Z","0.12.1-next.143":"2026-08-07T21:59:30.437Z","0.12.1-next.144":"2026-08-07T22:11:34.627Z","0.13.1-next.145":"2026-08-07T22:26:29.143Z","0.13.0":"2026-08-07T22:27:00.407Z","0.13.1-next.147":"2026-08-07T22:30:25.087Z","0.13.1-next.148":"2026-08-10T17:01:36.283Z","0.13.1-next.149":"2026-08-10T20:19:38.421Z","0.13.1-next.150":"2026-08-10T20:49:39.083Z","0.14.1-next.151":"2026-08-10T21:52:53.506Z","0.14.0":"2026-08-10T21:54:19.227Z","0.14.1-next.154":"2026-08-10T23:49:39.341Z","0.15.1-next.158":"2026-08-11T19:43:50.444Z","0.15.1-next.159":"2026-08-11T19:47:53.143Z","0.15.1-next.160":"2026-08-11T19:53:55.712Z","0.15.1-next.161":"2026-08-11T19:58:47.519Z","0.16.1-next.163":"2026-08-11T20:32:10.758Z","0.16.0":"2026-08-11T20:32:55.513Z","0.16.1-next.165":"2026-08-11T22:46:53.742Z","0.17.1-next.166":"2026-08-11T23:41:33.928Z","0.17.0":"2026-08-11T23:41:45.601Z","0.17.1-next.168":"2026-08-12T18:03:22.087Z","0.17.1-next.169":"2026-08-13T02:24:42.101Z","0.18.1-next.170":"2026-08-13T02:38:47.001Z","0.18.0":"2026-08-13T02:39:03.350Z","0.18.1-next.172":"2026-08-13T17:21:29.701Z","0.18.1-next.173":"2026-08-13T18:25:09.383Z","0.18.1-next.174":"2026-08-13T20:27:59.347Z","0.19.0":"2026-08-13T21:50:41.607Z","0.19.1-next.175":"2026-08-13T21:51:01.076Z","0.19.1-next.177":"2026-08-14T16:25:56.181Z","0.19.1-next.178":"2026-08-14T16:32:52.208Z","0.19.1-next.179":"2026-08-14T16:55:38.522Z","0.19.1-next.180":"2026-08-14T18:37:29.162Z","0.19.1-next.181":"2026-08-14T19:22:44.244Z","0.20.1":"2026-08-17T16:17:57.915Z","0.20.2-next.190":"2026-08-17T19:48:03.422Z","0.21.1-next.194":"2026-08-17T20:28:38.947Z","0.21.1-next.195":"2026-08-17T20:35:55.388Z","0.21.1-next.196":"2026-08-17T20:38:49.554Z","0.21.1-next.197":"2026-08-17T20:43:09.503Z","0.22.1-next.198":"2026-08-17T20:48:32.626Z","0.22.0":"2026-08-17T20:49:10.896Z","0.22.1-next.200":"2026-08-17T20:56:07.584Z","0.23.1-next.201":"2026-08-17T21:28:03.293Z","0.23.0":"2026-08-17T21:28:58.141Z","0.23.1-next.203":"2026-08-18T17:07:49.625Z","0.23.1-next.204":"2026-08-18T19:24:43.450Z","0.23.1-next.205":"2026-08-18T19:35:40.416Z","0.23.1-next.206":"2026-08-18T21:30:53.645Z","0.23.1-next.207":"2026-08-18T21:48:31.564Z","0.24.1-next.208":"2026-08-18T21:54:45.740Z","0.24.0":"2026-08-18T21:55:21.790Z","0.24.1-next.211":"2026-08-18T22:24:18.618Z","0.24.1-next.212":"2026-08-18T22:56:26.619Z","0.24.1-next.213":"2026-08-18T23:00:42.330Z","0.25.1-next.214":"2026-08-18T23:06:12.486Z","0.25.0":"2026-08-18T23:06:36.235Z","0.25.1-next.216":"2026-08-18T23:41:40.684Z","0.25.1":"2026-08-19T00:29:29.897Z","0.25.2-next.220":"2026-08-19T17:40:59.469Z","0.25.2-next.221":"2026-08-19T18:05:10.378Z","0.25.2-next.222":"2026-08-19T18:55:00.849Z","0.26.1-next.223":"2026-08-19T19:00:17.896Z","0.26.0":"2026-08-19T19:01:21.982Z","0.26.1-next.225":"2026-08-19T19:48:35.580Z","0.26.1-next.226":"2026-08-19T21:07:37.366Z","0.26.1-next.227":"2026-08-19T21:17:37.363Z","0.27.0":"2026-08-19T21:22:43.767Z","0.27.1-next.228":"2026-08-19T21:23:00.282Z","0.27.1-next.230":"2026-08-19T21:53:36.386Z","0.28.1-next.233":"2026-08-19T23:47:21.492Z","0.28.1":"2026-08-20T00:01:59.369Z","0.28.2-next.236":"2026-08-20T20:54:11.905Z","0.29.1-next.237":"2026-08-20T21:05:38.261Z","0.29.0":"2026-08-20T21:05:52.638Z","0.29.1-next.239":"2026-08-20T21:51:11.099Z","0.29.1-next.240":"2026-08-21T16:17:53.968Z","0.29.1-next.241":"2026-08-21T16:31:47.832Z","0.29.1-next.242":"2026-08-21T20:17:10.609Z","0.29.2-next.243":"2026-08-21T20:25:10.658Z","0.29.1":"2026-08-21T20:25:15.356Z","0.29.2-next.246":"2026-08-24T19:45:53.347Z","0.30.1-next.247":"2026-08-25T15:55:58.114Z","0.30.0":"2026-08-25T15:56:18.929Z","0.30.1-next.249":"2026-08-25T16:24:15.689Z","0.30.1-next.250":"2026-08-25T17:00:48.260Z","0.30.1-next.251":"2026-08-25T17:09:03.415Z","0.30.1-next.252":"2026-08-25T17:38:13.956Z","0.30.1-next.253":"2026-08-25T17:55:03.649Z","0.30.2-next.254":"2026-08-25T18:23:53.858Z","0.30.1":"2026-08-25T18:25:36.128Z","0.30.2-next.256":"2026-08-25T18:49:32.645Z","0.30.2-next.257":"2026-08-25T19:34:46.048Z","0.30.2-next.258":"2026-08-25T19:47:31.922Z","0.30.2-next.259":"2026-08-25T19:56:09.921Z","0.30.2-next.264":"2026-08-25T21:34:51.603Z","0.30.2-next.265":"2026-08-25T21:42:26.418Z","0.30.2-next.266":"2026-08-25T21:47:10.531Z","0.30.2-next.267":"2026-08-25T21:53:43.601Z","0.30.2-next.268":"2026-08-25T21:59:05.407Z","0.31.1-next.269":"2026-08-25T22:20:00.763Z","0.31.0":"2026-08-25T22:20:04.042Z","0.31.1-next.271":"2026-08-25T23:06:08.218Z","0.31.1-next.272":"2026-08-25T23:12:03.721Z","0.32.1-next.273":"2026-08-26T00:39:13.376Z","0.32.0":"2026-08-26T00:39:39.062Z","0.32.1-next.275":"2026-08-26T21:57:42.383Z","0.32.1-next.276":"2026-08-26T23:11:06.890Z","0.33.1-next.277":"2026-08-27T00:13:24.067Z","0.33.0":"2026-08-27T00:13:46.594Z","0.33.1-next.279":"2026-08-27T17:41:53.456Z","0.33.1-next.280":"2026-08-27T20:14:49.190Z","0.33.1-next.281":"2026-08-27T22:48:24.162Z","0.34.1-next.282":"2026-08-27T23:46:25.475Z","0.34.0":"2026-08-27T23:47:20.511Z","0.34.1-next.284":"2026-08-28T23:02:58.453Z","0.34.1-next.285":"2026-08-28T23:10:02.794Z","0.34.1-next.286":"2026-08-28T23:28:26.212Z","0.34.1-next.287":"2026-08-29T00:06:38.892Z","0.35.1-next.288":"2026-08-29T00:09:35.616Z","0.35.0":"2026-08-29T00:10:11.188Z","0.35.1-next.290":"2026-08-31T18:27:13.153Z","0.35.1-next.291":"2026-08-31T18:49:39.151Z","0.35.1-next.292":"2026-08-31T19:07:38.228Z","0.36.1-next.293":"2026-08-31T19:32:37.009Z","0.36.0":"2026-08-31T19:33:37.577Z","0.36.1-next.295":"2026-08-31T22:29:06.353Z","0.37.1-next.296":"2026-09-01T00:08:17.100Z","0.37.0":"2026-09-01T00:08:58.006Z","0.37.1-next.298":"2026-09-01T21:42:39.373Z","0.37.1-next.299":"2026-09-01T23:39:03.172Z","0.37.1-next.300":"2026-09-02T00:12:19.377Z","0.37.1-next.301":"2026-09-02T17:09:08.031Z","0.37.1-next.302":"2026-09-02T17:37:08.988Z","0.38.1-next.303":"2026-09-02T18:29:09.110Z","0.38.0":"2026-09-02T18:31:18.725Z","0.38.1-next.305":"2026-09-02T18:59:17.539Z","0.38.1-next.306":"2026-09-02T21:13:09.885Z","0.38.1-next.307":"2026-09-03T00:17:22.924Z","0.38.1-next.308":"2026-09-03T00:26:48.788Z","0.39.1-next.309":"2026-09-03T16:43:30.676Z","0.39.0":"2026-09-03T17:34:40.579Z","0.39.1-next.311":"2026-09-03T19:08:13.715Z","0.40.0":"2026-09-04T00:28:22.549Z","0.40.1-next.317":"2026-09-04T16:49:01.410Z","0.40.1-next.318":"2026-09-04T21:26:11.443Z","0.41.1-next.321":"2026-09-04T21:49:57.093Z","0.41.1-next.323":"2026-09-04T22:11:14.044Z","0.41.2-next.324":"2026-09-08T15:51:15.427Z","0.41.1":"2026-09-08T15:51:36.550Z","0.41.2-next.326":"2026-09-08T22:47:37.537Z","0.41.2-next.327":"2026-09-09T20:21:33.982Z","0.41.2-next.328":"2026-09-09T21:40:27.202Z","0.41.2-next.329":"2026-09-09T23:01:34.532Z","0.41.2-next.330":"2026-09-09T23:13:14.901Z","0.42.1-next.332":"2026-09-10T00:06:52.218Z","0.42.0":"2026-09-10T00:09:43.457Z","0.42.1-next.336":"2026-09-10T19:14:25.469Z","0.42.1":"2026-09-10T23:43:02.213Z","0.43.0":"2026-09-11T23:10:48.372Z","0.45.1-next.352":"2026-09-15T00:42:20.223Z","0.45.1-next.350":"2026-09-15T16:38:36.932Z","0.44.0":"2026-09-15T16:51:08.649Z","0.45.0":"2026-09-15T16:56:08.506Z","0.45.1-next.353":"2026-09-16T16:31:57.759Z","0.45.1":"2026-09-16T17:16:55.297Z","0.45.2-next.354":"2026-09-16T17:17:01.174Z","0.45.2-next.356":"2026-09-18T19:51:47.323Z","0.45.2-next.357":"2026-09-18T22:55:12.872Z","0.45.2-next.358":"2026-09-18T23:09:58.038Z","0.45.2-next.359":"2026-09-19T00:39:57.666Z","0.46.1-next.360":"2026-09-19T00:53:38.765Z","0.46.0":"2026-09-19T00:53:54.790Z","0.46.1-next.362":"2026-09-21T17:07:41.488Z","0.46.1-next.363":"2026-09-21T20:27:56.788Z","0.46.1":"2026-09-21T20:42:12.960Z","0.46.2-next.364":"2026-09-21T20:43:06.169Z","0.46.2-next.366":"2026-09-21T20:47:20.164Z","0.46.2-next.367":"2026-09-23T19:55:25.442Z","0.46.2-next.368":"2026-09-23T21:09:09.530Z","0.46.2-next.369":"2026-09-25T22:40:11.598Z","0.46.2-next.370":"2026-09-29T07:00:21.232Z","0.47.1-next.371":"2026-09-29T16:14:51.966Z","0.47.0":"2026-09-29T16:17:42.948Z","0.47.1-next.373":"2026-09-29T17:52:46.803Z","0.47.1-next.374":"2026-10-01T03:00:36.540Z","0.47.1":"2026-10-01T03:42:56.390Z","0.47.2-next.375":"2026-10-01T03:43:53.823Z","0.47.2-next.377":"2026-10-01T19:39:58.416Z","0.47.2":"2026-10-01T20:46:08.848Z","0.47.3-next.378":"2026-10-01T20:51:26.611Z","0.47.3-next.380":"2026-10-02T22:06:21.960Z","0.47.3-next.381":"2026-10-06T01:05:14.792Z","0.47.3-next.382":"2026-10-06T19:11:54.899Z","0.48.1-next.383":"2026-10-06T20:37:59.734Z","0.48.0":"2026-10-06T20:38:41.380Z","0.48.1":"2026-10-07T00:20:30.964Z","0.48.2-next.386":"2026-10-07T00:25:10.931Z","0.48.2-next.388":"2026-10-08T18:55:51.275Z","0.48.3-next.389":"2026-10-08T19:27:05.103Z","0.48.2":"2026-10-08T19:28:08.267Z","0.48.3-next.391":"2026-10-08T21:21:10.511Z","0.48.3-next.392":"2026-10-08T22:58:33.967Z","0.49.0":"2026-10-08T23:26:56.962Z","0.49.1-next.393":"2026-10-08T23:27:04.337Z"},"description":"TinyFish CLI — run web automations from your terminal","maintainers":[{"name":"tinyfish-agentql","email":"js-sdk-developers@tinyfish.io"},{"name":"tinyfish-npm-owner","email":"npm-owner@tinyfish.io"}],"readme":"","readmeFilename":""}