{"_id":"@brightdata/cli","_rev":"19-facf24301186804f1dc5a5de916265ec","name":"@brightdata/cli","dist-tags":{"latest":"0.3.7"},"versions":{"0.1.0":{"name":"@brightdata/cli","version":"0.1.0","keywords":["brightdata","bright-data","cli","web-scraping","scraper","serp","data-extraction","proxy","unlocker","dataset"],"author":{"name":"Bright Data"},"license":"ISC","_id":"@brightdata/cli@0.1.0","maintainers":[{"name":"brd-cholpon","email":"cholpon@brightdata.com"},{"name":"brightdata.com","email":"npm@brightdata.com"},{"name":"brd-josh","email":"josh@brightdata.com"},{"name":"brd-vadim","email":"vadim@brightdata.com"},{"name":"maksimd","email":"maksimd@brightdata.com"},{"name":"brd-artems","email":"artems@brightdata.com"}],"homepage":"https://brightdata.com","bugs":{"url":"https://github.com/brightdata/brightdata-cli/issues"},"bin":{"bdata":"dist/index.js","brightdata":"dist/index.js"},"dist":{"shasum":"0f30b85b3bf03a1bdf897d3df34d62f48e3f5e7f","tarball":"https://registry.npmjs.org/@brightdata/cli/-/cli-0.1.0.tgz","fileCount":170,"integrity":"sha512-VbhgdzppP1ErQi66daUgjjdK8Q0fWQ9Geb/ugxQSyy5DyKhKu2jb6/Puky7B5V/c6U0X1gghum2zKIx1PftQrw==","signatures":[{"sig":"MEYCIQDVLoSvghoFF4fLg759oCdL3gsISLLXnfx6I67e/jMLvgIhAL0OAlV3fnQblCB1Aw/Rz2F3CCai6tw+k3qkV1MoKezM","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":419096},"main":"dist/index.js","types":"./dist/index.d.ts","engines":{"node":">=18.0.0"},"gitHead":"799aade82a30fb048fac63ce87c11290b771262f","scripts":{"dev":"tsc --watch","test":"vitest run","build":"tsc","clean":"rm -rf dist","start":"node dist/index.js","test:watch":"vitest","type-check":"tsc --noEmit","publish-beta":"npm publish --tag beta","publish-prod":"npm publish --access public","prepublishOnly":"pnpm run build"},"_npmUser":{"name":"brd-cholpon","email":"cholpon@brightdata.com"},"repository":{"url":"git+https://github.com/brightdata/brightdata-cli.git","type":"git"},"_npmVersion":"10.5.0","description":"Command-line interface for Bright Data. Scrape, search, extract structured data, and automate browsers directly from your terminal.","directories":{},"_nodeVersion":"20.12.1","dependencies":{"open":"^11.0.0","commander":"^14.0.2","picocolors":"^1.1.1","xdg-basedir":"^5.1.0","@clack/prompts":"^1.1.0","@inquirer/prompts":"^8.2.1"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.12.1","devDependencies":{"vitest":"^4.0.0","typescript":"^5.0.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.1.0_1773826056509_0.6938063497401548","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@brightdata/cli","version":"0.1.1","keywords":["brightdata","bright-data","cli","web-scraping","scraper","serp","data-extraction","proxy","unlocker","dataset"],"author":{"name":"Bright Data"},"license":"ISC","_id":"@brightdata/cli@0.1.1","maintainers":[{"name":"brd-cholpon","email":"cholpon@brightdata.com"},{"name":"brightdata.com","email":"npm@brightdata.com"},{"name":"brd-josh","email":"josh@brightdata.com"},{"name":"brd-vadim","email":"vadim@brightdata.com"},{"name":"maksimd","email":"maksimd@brightdata.com"},{"name":"brd-artems","email":"artems@brightdata.com"}],"homepage":"https://brightdata.com","bugs":{"url":"https://github.com/brightdata/cli/issues"},"bin":{"bdata":"dist/index.js","brightdata":"dist/index.js"},"dist":{"shasum":"6eb298bc04e076e3dd6aa33822ce2a16808c2a44","tarball":"https://registry.npmjs.org/@brightdata/cli/-/cli-0.1.1.tgz","fileCount":170,"integrity":"sha512-UsheMi4YENd8Om0Wlfp3KrSAgk8Rh53SOAJv4sDld+4pTKdEkCLz/IjhZfLAq7eYTkH0dH8Oa7Xye+zQzOzKWQ==","signatures":[{"sig":"MEUCIQDNXSf/2zku9DTVYRbTK66p0/kyomTE5Vdog4QNrItApAIgC44jqtSACUb9kQz1lR0edl5y4JaDw/jXZKsAkZGROYY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":419074},"main":"dist/index.js","types":"./dist/index.d.ts","engines":{"node":">=18.0.0"},"gitHead":"799aade82a30fb048fac63ce87c11290b771262f","scripts":{"dev":"tsc --watch","test":"vitest run","build":"tsc","clean":"rm -rf dist","start":"node dist/index.js","test:watch":"vitest","type-check":"tsc --noEmit","publish-beta":"npm publish --tag beta","publish-prod":"npm publish --access public","prepublishOnly":"pnpm run build"},"_npmUser":{"name":"brd-cholpon","email":"cholpon@brightdata.com"},"repository":{"url":"git+https://github.com/brightdata/cli.git","type":"git"},"_npmVersion":"10.5.0","description":"Command-line interface for Bright Data. Scrape, search, extract structured data, and automate browsers directly from your terminal.","directories":{},"_nodeVersion":"20.12.1","dependencies":{"open":"^11.0.0","commander":"^14.0.2","picocolors":"^1.1.1","xdg-basedir":"^5.1.0","@clack/prompts":"^1.1.0","@inquirer/prompts":"^8.2.1"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.12.1","devDependencies":{"vitest":"^4.0.0","typescript":"^5.0.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.1.1_1773840487388_0.41641737603691786","host":"s3://npm-registry-packages-npm-production"}},"0.1.2":{"name":"@brightdata/cli","version":"0.1.2","keywords":["brightdata","bright-data","cli","web-scraping","scraper","serp","data-extraction","proxy","unlocker","dataset"],"author":{"name":"Bright Data"},"license":"ISC","_id":"@brightdata/cli@0.1.2","maintainers":[{"name":"brd-cholpon","email":"cholpon@brightdata.com"},{"name":"brightdata.com","email":"npm@brightdata.com"},{"name":"brd-josh","email":"josh@brightdata.com"},{"name":"brd-vadim","email":"vadim@brightdata.com"},{"name":"maksimd","email":"maksimd@brightdata.com"},{"name":"brd-artems","email":"artems@brightdata.com"}],"homepage":"https://brightdata.com","bugs":{"url":"https://github.com/brightdata/cli/issues"},"bin":{"bdata":"dist/index.js","brightdata":"dist/index.js"},"dist":{"shasum":"8d1809d149693c0b567d251483e575059d6e5bbe","tarball":"https://registry.npmjs.org/@brightdata/cli/-/cli-0.1.2.tgz","fileCount":170,"integrity":"sha512-e68zuQ4JxH+FOGed2W5jf2hX0PxILm51MCrD16CKpPaoUTGuH1h17EvbkBSxmdoEGmlz06dv8UAwfu1ypLHeYw==","signatures":[{"sig":"MEQCIQDvQEfLZI+y88u2g0ZKWjDmIRPLbftiSHJuxVYb7m+AKwIffZazMgrbDPUly6lkMEaoUnEqFvSitiLGJYt7A4VNSQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@brightdata%2fcli@0.1.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":419052},"main":"dist/index.js","types":"./dist/index.d.ts","engines":{"node":">=20.0.0"},"gitHead":"46d859bb722dcfd19fbe02c5c0168a1dd233311e","scripts":{"dev":"tsc --watch","test":"vitest run","build":"tsc","clean":"rm -rf dist","start":"node dist/index.js","test:watch":"vitest","type-check":"tsc --noEmit","publish-beta":"npm publish --tag beta","publish-prod":"npm publish --access public","prepublishOnly":"pnpm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:096184c5-2d89-485c-a29c-c44e41b2fa72"}},"repository":{"url":"git+https://github.com/brightdata/cli.git","type":"git"},"_npmVersion":"11.9.0","description":"Command-line interface for Bright Data. Scrape, search, extract structured data, and automate browsers directly from your terminal.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"open":"^11.0.0","commander":"^14.0.2","picocolors":"^1.1.1","xdg-basedir":"^5.1.0","@clack/prompts":"^1.1.0","@inquirer/prompts":"^8.2.1"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.12.1","devDependencies":{"vitest":"^4.0.0","typescript":"^5.0.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.1.2_1773851303948_0.8731188999228456","host":"s3://npm-registry-packages-npm-production"}},"0.1.3":{"name":"@brightdata/cli","version":"0.1.3","keywords":["brightdata","bright-data","cli","web-scraping","scraper","serp","data-extraction","proxy","unlocker","dataset"],"author":{"name":"Bright Data"},"license":"MIT","_id":"@brightdata/cli@0.1.3","maintainers":[{"name":"brd-cholpon","email":"cholpon@brightdata.com"},{"name":"brightdata.com","email":"npm@brightdata.com"},{"name":"brd-josh","email":"josh@brightdata.com"},{"name":"brd-vadim","email":"vadim@brightdata.com"},{"name":"maksimd","email":"maksimd@brightdata.com"},{"name":"brd-artems","email":"artems@brightdata.com"}],"homepage":"https://brightdata.com","bugs":{"url":"https://github.com/brightdata/cli/issues"},"bin":{"bdata":"dist/index.js","brightdata":"dist/index.js"},"dist":{"shasum":"a9a7d3f2167669b62b671a5f7f081f4e69341ccc","tarball":"https://registry.npmjs.org/@brightdata/cli/-/cli-0.1.3.tgz","fileCount":171,"integrity":"sha512-PW+b/5qCnMrVR1/OVzHUbLnxhF65FJEkmdIBW3QAhR5PzMXGNu8Akd8G24hPoenZg89NeCHw6PwtliGEjmksSA==","signatures":[{"sig":"MEYCIQD33qDPDkQxclG4aD6nFnq5UEn6cvoi0NYqPLS45UMIAwIhAPS+xlnCIekZ9W7WRxJQhNsE8Umr/4Qrsm6zZbUm1kcm","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@brightdata%2fcli@0.1.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":422629},"main":"dist/index.js","types":"./dist/index.d.ts","engines":{"node":">=20.0.0"},"gitHead":"9b9b27644733005e47dd03b10a70873bddc2cb92","scripts":{"dev":"tsc --watch","test":"vitest run","build":"tsc","clean":"rm -rf dist","start":"node dist/index.js","test:watch":"vitest","type-check":"tsc --noEmit","publish-beta":"npm publish --tag beta","publish-prod":"npm publish --access public","prepublishOnly":"pnpm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:096184c5-2d89-485c-a29c-c44e41b2fa72"}},"repository":{"url":"git+https://github.com/brightdata/cli.git","type":"git"},"_npmVersion":"11.9.0","description":"Command-line interface for Bright Data. Scrape, search, extract structured data, and automate browsers directly from your terminal.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"open":"^11.0.0","commander":"^14.0.2","picocolors":"^1.1.1","xdg-basedir":"^5.1.0","@clack/prompts":"^1.1.0","@inquirer/prompts":"^8.2.1"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.12.1","devDependencies":{"vitest":"^4.0.0","typescript":"^5.0.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.1.3_1773905129343_0.8295041391444384","host":"s3://npm-registry-packages-npm-production"}},"0.1.4":{"name":"@brightdata/cli","version":"0.1.4","keywords":["brightdata","bright-data","cli","web-scraping","scraper","serp","data-extraction","proxy","unlocker","dataset"],"author":{"name":"Bright Data"},"license":"MIT","_id":"@brightdata/cli@0.1.4","maintainers":[{"name":"brd-cholpon","email":"cholpon@brightdata.com"},{"name":"brightdata.com","email":"npm@brightdata.com"},{"name":"brd-josh","email":"josh@brightdata.com"},{"name":"brd-vadim","email":"vadim@brightdata.com"},{"name":"maksimd","email":"maksimd@brightdata.com"},{"name":"brd-artems","email":"artems@brightdata.com"}],"homepage":"https://brightdata.com","bugs":{"url":"https://github.com/brightdata/cli/issues"},"bin":{"bdata":"dist/index.js","brightdata":"dist/index.js"},"dist":{"shasum":"9c2d617beeffb9101c77fb18264243a2341c107c","tarball":"https://registry.npmjs.org/@brightdata/cli/-/cli-0.1.4.tgz","fileCount":187,"integrity":"sha512-VxceZRQWvTA7X2aniRNQlfAYgitvWFdAq7K2Dogi3/0bkyn+JcHcjDxN3TcL4RXIa3kw1L68wkLQgDR57gEs0g==","signatures":[{"sig":"MEYCIQCOC/sWuRIvwNGyOcE7tDZDwLdRmulcxeb3ytBDFA+ZkwIhAIEOlCVJWO2EZeDjiTXj2Pl4E4nLnKb3jQ8zgBsrCFmj","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@brightdata%2fcli@0.1.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":476337},"main":"dist/index.js","types":"./dist/index.d.ts","engines":{"node":">=20.0.0"},"gitHead":"384aba878a7af874d8e33d7bb5488942f025a48c","scripts":{"dev":"tsc --watch","test":"vitest run","build":"tsc","clean":"rm -rf dist","start":"node dist/index.js","test:watch":"vitest","type-check":"tsc --noEmit","publish-beta":"npm publish --tag beta","publish-prod":"npm publish --access public","prepublishOnly":"pnpm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:096184c5-2d89-485c-a29c-c44e41b2fa72"}},"repository":{"url":"git+https://github.com/brightdata/cli.git","type":"git"},"_npmVersion":"11.9.0","description":"Command-line interface for Bright Data. Scrape, search, extract structured data, and automate browsers directly from your terminal.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"open":"^11.0.0","commander":"^14.0.2","picocolors":"^1.1.1","xdg-basedir":"^5.1.0","@clack/prompts":"^1.1.0","@inquirer/prompts":"^8.2.1"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.12.1","devDependencies":{"vitest":"^4.0.0","typescript":"^5.0.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.1.4_1774264395741_0.40764578567180876","host":"s3://npm-registry-packages-npm-production"}},"0.1.5":{"name":"@brightdata/cli","version":"0.1.5","keywords":["brightdata","bright-data","cli","web-scraping","scraper","serp","data-extraction","proxy","unlocker","dataset"],"author":{"name":"Bright Data"},"license":"MIT","_id":"@brightdata/cli@0.1.5","maintainers":[{"name":"brd-cholpon","email":"cholpon@brightdata.com"},{"name":"brightdata.com","email":"npm@brightdata.com"},{"name":"brd-josh","email":"josh@brightdata.com"},{"name":"brd-vadim","email":"vadim@brightdata.com"},{"name":"maksimd","email":"maksimd@brightdata.com"},{"name":"brd-artems","email":"artems@brightdata.com"}],"homepage":"https://brightdata.com","bugs":{"url":"https://github.com/brightdata/cli/issues"},"bin":{"bdata":"dist/index.js","brightdata":"dist/index.js"},"dist":{"shasum":"02b7a69dd0c0e0c6dc62b29bbfeccae69bd39611","tarball":"https://registry.npmjs.org/@brightdata/cli/-/cli-0.1.5.tgz","fileCount":259,"integrity":"sha512-Dx9FmyeDcD0BuepN3JX72k8bvr0csLB8xuKb5ExSSnjP4m299rnYipvRvBhU7DKnbEvUJ304710QD2tWYCcLgg==","signatures":[{"sig":"MEUCIQCsHr1XhBVGIkcRQtqkoTKIrmx05babcr5y3BekRnkoIgIgHmR5YzlcAwtjCx3i0/1gmvziXyWuaT0OKoEcKkbEXxc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@brightdata%2fcli@0.1.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":869990},"main":"dist/index.js","types":"./dist/index.d.ts","engines":{"node":">=20.0.0"},"gitHead":"5cad86348ef5bdc14546d076db978e57dfaaa733","scripts":{"dev":"tsc --watch","test":"vitest run","build":"tsc","clean":"rm -rf dist","start":"node dist/index.js","test:watch":"vitest","type-check":"tsc --noEmit","publish-beta":"npm publish --tag beta","publish-prod":"npm publish --access public","prepublishOnly":"pnpm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:096184c5-2d89-485c-a29c-c44e41b2fa72"}},"repository":{"url":"git+https://github.com/brightdata/cli.git","type":"git"},"_npmVersion":"11.9.0","description":"Command-line interface for Bright Data. Scrape, search, extract structured data, and automate browsers directly from your terminal.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"open":"^11.0.0","commander":"^14.0.2","picocolors":"^1.1.1","xdg-basedir":"^5.1.0","@clack/prompts":"^1.1.0","playwright-core":"^1.58.2","@inquirer/prompts":"^8.2.1"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.12.1","devDependencies":{"vitest":"^4.0.0","typescript":"^5.0.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.1.5_1774540841226_0.8028898292394702","host":"s3://npm-registry-packages-npm-production"}},"0.1.6":{"name":"@brightdata/cli","version":"0.1.6","keywords":["brightdata","bright-data","cli","web-scraping","scraper","serp","data-extraction","proxy","unlocker","dataset"],"author":{"name":"Bright Data"},"license":"MIT","_id":"@brightdata/cli@0.1.6","maintainers":[{"name":"meirk-brd","email":"meirk@brightdata.com"},{"name":"brd-cholpon","email":"cholpon@brightdata.com"},{"name":"brightdata.com","email":"npm@brightdata.com"},{"name":"brd-josh","email":"josh@brightdata.com"},{"name":"brd-vadim","email":"vadim@brightdata.com"},{"name":"maksimd","email":"maksimd@brightdata.com"},{"name":"brd-artems","email":"artems@brightdata.com"}],"homepage":"https://brightdata.com","bugs":{"url":"https://github.com/brightdata/cli/issues"},"bin":{"bdata":"dist/index.js","brightdata":"dist/index.js"},"dist":{"shasum":"71ec48101e20698788363bd013ea18ac4fb206db","tarball":"https://registry.npmjs.org/@brightdata/cli/-/cli-0.1.6.tgz","fileCount":259,"integrity":"sha512-ZCsAEda+G1NNfl29popKs+oJCE/k7NV9/TCsWgJW0Qu7bqM62eYpdV5MC7pPUQ/TcdK/eicc1szgi16IDeewkQ==","signatures":[{"sig":"MEYCIQDQORJ+Sd5haIxPt3EC+kaG2FrBNBeTE3CcZbEIjhFTnQIhAJls7M10zWBQYjjwGF+2WC4aGCYglayxObsQTPo+1mZH","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@brightdata%2fcli@0.1.6","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":876791},"main":"dist/index.js","types":"./dist/index.d.ts","engines":{"node":">=20.0.0"},"gitHead":"f8a0fe1554bbc85170a0882afc5cb9970483fb06","scripts":{"dev":"tsc --watch","test":"vitest run","build":"tsc","clean":"rm -rf dist","start":"node dist/index.js","test:watch":"vitest","type-check":"tsc --noEmit","publish-beta":"npm publish --tag beta","publish-prod":"npm publish --access public","prepublishOnly":"pnpm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:096184c5-2d89-485c-a29c-c44e41b2fa72"}},"repository":{"url":"git+https://github.com/brightdata/cli.git","type":"git"},"_npmVersion":"11.9.0","description":"Command-line interface for Bright Data. Scrape, search, extract structured data, and automate browsers directly from your terminal.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"open":"^11.0.0","commander":"^14.0.2","picocolors":"^1.1.1","xdg-basedir":"^5.1.0","@clack/prompts":"^1.1.0","playwright-core":"^1.58.2","@inquirer/prompts":"^8.2.1"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.12.1","devDependencies":{"vitest":"^4.0.0","typescript":"^5.0.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.1.6_1774963718986_0.4152131452403729","host":"s3://npm-registry-packages-npm-production"}},"0.1.7":{"name":"@brightdata/cli","version":"0.1.7","keywords":["brightdata","bright-data","cli","web-scraping","scraper","serp","data-extraction","proxy","unlocker","dataset"],"author":{"name":"Bright Data"},"license":"MIT","_id":"@brightdata/cli@0.1.7","maintainers":[{"name":"meirk-brd","email":"meirk@brightdata.com"},{"name":"brd-cholpon","email":"cholpon@brightdata.com"},{"name":"brightdata.com","email":"npm@brightdata.com"},{"name":"brd-josh","email":"josh@brightdata.com"},{"name":"brd-vadim","email":"vadim@brightdata.com"},{"name":"maksimd","email":"maksimd@brightdata.com"},{"name":"brd-artems","email":"artems@brightdata.com"}],"homepage":"https://brightdata.com","bugs":{"url":"https://github.com/brightdata/cli/issues"},"bin":{"bdata":"dist/index.js","brightdata":"dist/index.js"},"dist":{"shasum":"3e13173e97db871344aea15fffff8eb2411f2db6","tarball":"https://registry.npmjs.org/@brightdata/cli/-/cli-0.1.7.tgz","fileCount":271,"integrity":"sha512-5G76l2N7dgpmxj2DjVKw5jgQOJbx1DEgpZdsi5SH4q3VpOSVtQc5LGMjL80+wn6NDyELrjdcVqsFdJXmU41CTQ==","signatures":[{"sig":"MEUCICOvbyep+klwo6jTfxY+yyoJ+cLQkDPIS9kO9zKS24uYAiEAhgWJqmff17XPVciiicb05v7yvS8MrKX2A9rUZMaqw3o=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@brightdata%2fcli@0.1.7","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":914436},"main":"dist/index.js","types":"./dist/index.d.ts","engines":{"node":">=20.0.0"},"gitHead":"2ab3bbdc60115d32df6c81af643f449ba7582b15","scripts":{"dev":"tsc --watch","test":"vitest run","build":"tsc","clean":"rm -rf dist","start":"node dist/index.js","test:watch":"vitest","type-check":"tsc --noEmit","publish-beta":"npm publish --tag beta","publish-prod":"npm publish --access public","prepublishOnly":"pnpm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:096184c5-2d89-485c-a29c-c44e41b2fa72"}},"repository":{"url":"git+https://github.com/brightdata/cli.git","type":"git"},"_npmVersion":"11.11.0","description":"Command-line interface for Bright Data. Scrape, search, extract structured data, and automate browsers directly from your terminal.","directories":{},"_nodeVersion":"24.14.1","dependencies":{"open":"^11.0.0","commander":"^14.0.2","picocolors":"^1.1.1","xdg-basedir":"^5.1.0","@clack/prompts":"^1.1.0","playwright-core":"^1.58.2","@inquirer/prompts":"^8.2.1"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.12.1","devDependencies":{"vitest":"^4.0.0","typescript":"^5.0.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.1.7_1775377150323_0.036540239944264474","host":"s3://npm-registry-packages-npm-production"}},"0.1.8":{"name":"@brightdata/cli","version":"0.1.8","keywords":["brightdata","bright-data","cli","web-scraping","scraper","serp","data-extraction","proxy","unlocker","dataset"],"author":{"name":"Bright Data"},"license":"MIT","_id":"@brightdata/cli@0.1.8","maintainers":[{"name":"meirk-brd","email":"meirk@brightdata.com"},{"name":"brd-cholpon","email":"cholpon@brightdata.com"},{"name":"brightdata.com","email":"npm@brightdata.com"},{"name":"brd-josh","email":"josh@brightdata.com"},{"name":"brd-vadim","email":"vadim@brightdata.com"},{"name":"maksimd","email":"maksimd@brightdata.com"},{"name":"brd-artems","email":"artems@brightdata.com"}],"homepage":"https://brightdata.com","bugs":{"url":"https://github.com/brightdata/cli/issues"},"bin":{"bdata":"dist/index.js","brightdata":"dist/index.js"},"dist":{"shasum":"c20477665270ba4275ea6b68e437d0018dfadada","tarball":"https://registry.npmjs.org/@brightdata/cli/-/cli-0.1.8.tgz","fileCount":271,"integrity":"sha512-AGGecs2QUDwcK+0yFc8polxQpdj8A3I+rs/8Z8FYlhRbv7Cy7f7p/UVfNJP73tYp4TTUSDFHzKwff0ahDwLV2Q==","signatures":[{"sig":"MEUCIQC46or7BpInYU4pm/VlQSLC0L9XSIHTFKtrXggOqWRakAIgRzk58mSouPf9zTMn45l5oJYXOsnjtc7TaZPJtZJwi38=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@brightdata%2fcli@0.1.8","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":914818},"main":"dist/index.js","types":"./dist/index.d.ts","engines":{"node":">=20.0.0"},"gitHead":"19242af8b99ddc022dceeeccb5bbdb27ad91ae83","scripts":{"dev":"tsc --watch","test":"vitest run","build":"tsc","clean":"rm -rf dist","start":"node dist/index.js","test:watch":"vitest","type-check":"tsc --noEmit","publish-beta":"npm publish --tag beta","publish-prod":"npm publish --access public","prepublishOnly":"pnpm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:096184c5-2d89-485c-a29c-c44e41b2fa72"}},"repository":{"url":"git+https://github.com/brightdata/cli.git","type":"git"},"_npmVersion":"11.11.0","description":"Command-line interface for Bright Data. Scrape, search, extract structured data, and automate browsers directly from your terminal.","directories":{},"_nodeVersion":"24.14.1","dependencies":{"open":"^11.0.0","commander":"^14.0.2","picocolors":"^1.1.1","xdg-basedir":"^5.1.0","@clack/prompts":"^1.1.0","playwright-core":"^1.58.2","@inquirer/prompts":"^8.2.1"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.12.1","devDependencies":{"vitest":"^4.0.0","typescript":"^5.0.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.1.8_1775390170311_0.3448337755154902","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"@brightdata/cli","version":"0.2.0","keywords":["brightdata","bright-data","cli","web-scraping","scraper","serp","data-extraction","proxy","unlocker","dataset"],"author":{"name":"Bright Data"},"license":"MIT","_id":"@brightdata/cli@0.2.0","maintainers":[{"name":"meirk-brd","email":"meirk@brightdata.com"},{"name":"brd-cholpon","email":"cholpon@brightdata.com"},{"name":"brightdata.com","email":"npm@brightdata.com"},{"name":"brd-josh","email":"josh@brightdata.com"},{"name":"brd-vadim","email":"vadim@brightdata.com"},{"name":"maksimd","email":"maksimd@brightdata.com"},{"name":"brd-artems","email":"artems@brightdata.com"}],"homepage":"https://brightdata.com","bugs":{"url":"https://github.com/brightdata/cli/issues"},"bin":{"bdata":"dist/index.js","brightdata":"dist/index.js"},"dist":{"shasum":"ea8cb1e29ba19108d61d938d2b3ee6fa4f89076a","tarball":"https://registry.npmjs.org/@brightdata/cli/-/cli-0.2.0.tgz","fileCount":283,"integrity":"sha512-35BfdA/ZZ9r0H9D7Fnd57Zyp3wCmQs0D5v1SQsVKC7uUcnGV0GciWOIS/VYOSdhakck/graVfYQxAjB/jZaUGg==","signatures":[{"sig":"MEUCIQCtx5mvo7RTNP2/6d1y208brZiQDahYBvaqgXxaiGRPvwIgWZq0Z2qmuXTwNeNoKG1zLGf6hv5x2IWS9S2SD7ww5OU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@brightdata%2fcli@0.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1012510},"main":"dist/index.js","types":"./dist/index.d.ts","engines":{"node":">=20.0.0"},"gitHead":"fadfc2b6c617a2a231e947fd7c6ce0faca7e414d","scripts":{"dev":"tsc --watch","test":"vitest run","build":"tsc","clean":"rm -rf dist","start":"node dist/index.js","test:watch":"vitest","type-check":"tsc --noEmit","publish-beta":"npm publish --tag beta","publish-prod":"npm publish --access public","prepublishOnly":"pnpm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:096184c5-2d89-485c-a29c-c44e41b2fa72"}},"repository":{"url":"git+https://github.com/brightdata/cli.git","type":"git"},"_npmVersion":"11.11.0","description":"Command-line interface for Bright Data. Scrape, search, extract structured data, and automate browsers directly from your terminal.","directories":{},"_nodeVersion":"24.14.1","dependencies":{"open":"^11.0.0","commander":"^14.0.2","picocolors":"^1.1.1","xdg-basedir":"^5.1.0","@clack/prompts":"^1.1.0","playwright-core":"^1.58.2","@inquirer/prompts":"^8.2.1"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.12.1","devDependencies":{"vitest":"^4.0.0","typescript":"^5.0.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.2.0_1778681211619_0.8257860469844924","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"@brightdata/cli","version":"0.3.0","keywords":["brightdata","bright-data","cli","web-scraping","scraper","serp","data-extraction","proxy","unlocker","dataset"],"author":{"name":"Bright Data"},"license":"MIT","_id":"@brightdata/cli@0.3.0","maintainers":[{"name":"meirk-brd","email":"meirk@brightdata.com"},{"name":"brd-cholpon","email":"cholpon@brightdata.com"},{"name":"brightdata.com","email":"npm@brightdata.com"},{"name":"brd-josh","email":"josh@brightdata.com"},{"name":"brd-vadim","email":"vadim@brightdata.com"},{"name":"maksimd","email":"maksimd@brightdata.com"},{"name":"brd-artems","email":"artems@brightdata.com"}],"homepage":"https://brightdata.com","bugs":{"url":"https://github.com/brightdata/cli/issues"},"bin":{"bdata":"dist/index.js","brightdata":"dist/index.js"},"dist":{"shasum":"7be13fd91ac500134e1f65e25b5e2124a2cbe2e0","tarball":"https://registry.npmjs.org/@brightdata/cli/-/cli-0.3.0.tgz","fileCount":303,"integrity":"sha512-t7naLQphlvbWpxbTeNpE02nb6KIEX2eeMx3AU/JmF09sIfh9z+0N/FPaCtgq7MN7PeEvCIHzir01PPueyrhwEA==","signatures":[{"sig":"MEUCIQCatCmFndieDckuaqpzE26tQ8v7KaxfshRGi4/D5ZAKcAIgFxZSd7+H8CdEmXUx/k+aI36Yb9ZUBlw+I9EvDuXqv1U=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@brightdata%2fcli@0.3.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1161382},"main":"dist/index.js","types":"./dist/index.d.ts","engines":{"node":">=20.0.0"},"gitHead":"a6716102b9a680448d6b87382d7e4324ed9808d3","scripts":{"dev":"tsc --watch","test":"vitest run","build":"tsc","clean":"rm -rf dist","start":"node dist/index.js","test:watch":"vitest","type-check":"tsc --noEmit","publish-beta":"npm publish --tag beta","publish-prod":"npm publish --access public","prepublishOnly":"pnpm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:096184c5-2d89-485c-a29c-c44e41b2fa72"}},"repository":{"url":"git+https://github.com/brightdata/cli.git","type":"git"},"_npmVersion":"11.12.1","description":"Command-line interface for Bright Data. Scrape, search, extract structured data, and automate browsers directly from your terminal.","directories":{},"_nodeVersion":"24.15.0","dependencies":{"open":"^11.0.0","commander":"^14.0.2","picocolors":"^1.1.1","xdg-basedir":"^5.1.0","@clack/prompts":"^1.1.0","playwright-core":"^1.58.2","@inquirer/prompts":"^8.2.1"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.12.1","devDependencies":{"vitest":"^4.0.0","typescript":"^5.0.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.3.0_1779867202796_0.8576655091394141","host":"s3://npm-registry-packages-npm-production"}},"0.3.1":{"name":"@brightdata/cli","version":"0.3.1","keywords":["brightdata","bright-data","cli","web-scraping","scraper","serp","data-extraction","proxy","unlocker","dataset"],"author":{"name":"Bright Data"},"license":"MIT","_id":"@brightdata/cli@0.3.1","maintainers":[{"name":"meirk-brd","email":"meirk@brightdata.com"},{"name":"brd-cholpon","email":"cholpon@brightdata.com"},{"name":"brightdata.com","email":"npm@brightdata.com"},{"name":"brd-josh","email":"josh@brightdata.com"},{"name":"brd-vadim","email":"vadim@brightdata.com"},{"name":"maksimd","email":"maksimd@brightdata.com"},{"name":"brd-artems","email":"artems@brightdata.com"}],"homepage":"https://brightdata.com","bugs":{"url":"https://github.com/brightdata/cli/issues"},"bin":{"bdata":"dist/index.js","brightdata":"dist/index.js"},"dist":{"shasum":"d85593aa89e0439fd094453ea4ee573fbc55c07b","tarball":"https://registry.npmjs.org/@brightdata/cli/-/cli-0.3.1.tgz","fileCount":303,"integrity":"sha512-83XRAV/JssdJdzLR7znt5bhXS4JlXzKR+0wJSVunxNqecMLqugJvXh/tz4D4zBziMVVq83dKPfH66fAO/EHdzQ==","signatures":[{"sig":"MEYCIQDt3t+igwLPNg/E7+gYyWKsitlChByPIm4yPQpSQebkQAIhAOX3Jn3NePy3xhZFGWnu0qyRPRrRTivXygP0ciX29FnL","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@brightdata%2fcli@0.3.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1259067},"main":"dist/index.js","types":"./dist/index.d.ts","engines":{"node":">=20.0.0"},"gitHead":"5f3b1381b96b6770771c52b405c1e5a8bd3b4c9c","scripts":{"dev":"tsc --watch","test":"vitest run","build":"tsc","clean":"rm -rf dist","start":"node dist/index.js","test:watch":"vitest","type-check":"tsc --noEmit","publish-beta":"npm publish --tag beta","publish-prod":"npm publish --access public","prepublishOnly":"pnpm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:096184c5-2d89-485c-a29c-c44e41b2fa72"}},"repository":{"url":"git+https://github.com/brightdata/cli.git","type":"git"},"_npmVersion":"11.12.1","description":"Command-line interface for Bright Data. Scrape, search, extract structured data, and automate browsers directly from your terminal.","directories":{},"_nodeVersion":"24.15.0","dependencies":{"open":"^11.0.0","commander":"^14.0.2","picocolors":"^1.1.1","xdg-basedir":"^5.1.0","@clack/prompts":"^1.1.0","playwright-core":"^1.58.2","@inquirer/prompts":"^8.2.1"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.12.1","devDependencies":{"vitest":"^4.0.0","typescript":"^5.0.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.3.1_1779957131863_0.12220162057030226","host":"s3://npm-registry-packages-npm-production"}},"0.3.2":{"name":"@brightdata/cli","version":"0.3.2","keywords":["brightdata","bright-data","cli","web-scraping","scraper","serp","data-extraction","proxy","unlocker","dataset"],"author":{"name":"Bright Data"},"license":"MIT","_id":"@brightdata/cli@0.3.2","maintainers":[{"name":"meirk-brd","email":"meirk@brightdata.com"},{"name":"brd-cholpon","email":"cholpon@brightdata.com"},{"name":"brightdata.com","email":"npm@brightdata.com"},{"name":"brd-josh","email":"josh@brightdata.com"},{"name":"brd-vadim","email":"vadim@brightdata.com"},{"name":"maksimd","email":"maksimd@brightdata.com"},{"name":"brd-artems","email":"artems@brightdata.com"}],"homepage":"https://brightdata.com","bugs":{"url":"https://github.com/brightdata/cli/issues"},"bin":{"bdata":"dist/index.js","brightdata":"dist/index.js"},"dist":{"shasum":"e163bd567fef8b3856035f41e4537197d4646497","tarball":"https://registry.npmjs.org/@brightdata/cli/-/cli-0.3.2.tgz","fileCount":311,"integrity":"sha512-OR/8arzYfw34sS2lvnokhfdrMuUTW7iwzOPQfUOH7Ui1+FzdYsTzmlnDwevXIhkQKy6QYo0+o1P+d+xFR3uO1g==","signatures":[{"sig":"MEUCIQD9IL8tpS//7f2mVo+2+d5213nqP1sXM3ZK2JneRAIsiAIgLmfuJ3DyySV8kst7+25O7+6OwkvsjvzT+Tpg82coVFw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@brightdata%2fcli@0.3.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1279059},"main":"dist/index.js","types":"./dist/index.d.ts","engines":{"node":">=20.0.0"},"gitHead":"bd80aae708654e28071e21d485c194e59807ec2d","scripts":{"dev":"tsc --watch","test":"vitest run","build":"tsc","clean":"rm -rf dist","start":"node dist/index.js","test:watch":"vitest","type-check":"tsc --noEmit","publish-beta":"npm publish --tag beta","publish-prod":"npm publish --access public","prepublishOnly":"pnpm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:096184c5-2d89-485c-a29c-c44e41b2fa72"}},"repository":{"url":"git+https://github.com/brightdata/cli.git","type":"git"},"_npmVersion":"11.13.0","description":"Command-line interface for Bright Data. Scrape, search, extract structured data, and automate browsers directly from your terminal.","directories":{},"_nodeVersion":"24.16.0","dependencies":{"open":"^11.0.0","commander":"^14.0.2","picocolors":"^1.1.1","xdg-basedir":"^5.1.0","@clack/prompts":"^1.1.0","playwright-core":"^1.58.2","@inquirer/prompts":"^8.2.1"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.12.1","devDependencies":{"vitest":"^4.0.0","typescript":"^5.0.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.3.2_1781601657197_0.006397185338823164","host":"s3://npm-registry-packages-npm-production"}},"0.3.3":{"name":"@brightdata/cli","version":"0.3.3","keywords":["brightdata","bright-data","cli","web-scraping","scraper","serp","data-extraction","proxy","unlocker","dataset"],"author":{"name":"Bright Data"},"license":"MIT","_id":"@brightdata/cli@0.3.3","maintainers":[{"name":"meirk-brd","email":"meirk@brightdata.com"},{"name":"brd-cholpon","email":"cholpon@brightdata.com"},{"name":"brightdata.com","email":"npm@brightdata.com"},{"name":"brd-josh","email":"josh@brightdata.com"},{"name":"brd-vadim","email":"vadim@brightdata.com"},{"name":"maksimd","email":"maksimd@brightdata.com"},{"name":"brd-artems","email":"artems@brightdata.com"}],"homepage":"https://brightdata.com","bugs":{"url":"https://github.com/brightdata/cli/issues"},"bin":{"bdata":"dist/index.js","brightdata":"dist/index.js"},"dist":{"shasum":"1337123ffd5edbfc4d3c187f0e8fe4bf78c5bfa9","tarball":"https://registry.npmjs.org/@brightdata/cli/-/cli-0.3.3.tgz","fileCount":311,"integrity":"sha512-7L5eRrQC9e6Z3Ww5Q7UG7HKneAujA7Kj7YwJwUSNa/iqyvA2lQ14+bEqs+sjDeigcMObgMGYD47Fz/GcMQw07w==","signatures":[{"sig":"MEUCIQDphBjK56/W/lh7e2yFTIhoQ+usHRz9dU3jzcSO+pLNegIgOgel0po2i8RiDzi0l9XAt3J7I3MdtxRcpWNlV4Q3c4g=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@brightdata%2fcli@0.3.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1314595},"main":"dist/index.js","types":"./dist/index.d.ts","engines":{"node":">=20.0.0"},"gitHead":"bf4c160703df32ae028c138715cee0afddf37e96","scripts":{"dev":"tsc --watch","test":"vitest run","build":"tsc","clean":"rm -rf dist","start":"node dist/index.js","test:watch":"vitest","type-check":"tsc --noEmit","publish-beta":"npm publish --tag beta","publish-prod":"npm publish --access public","prepublishOnly":"pnpm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:096184c5-2d89-485c-a29c-c44e41b2fa72"}},"repository":{"url":"git+https://github.com/brightdata/cli.git","type":"git"},"_npmVersion":"11.16.0","description":"Command-line interface for Bright Data. Scrape, search, extract structured data, and automate browsers directly from your terminal.","directories":{},"_nodeVersion":"24.18.0","dependencies":{"open":"^11.0.0","commander":"^14.0.2","picocolors":"^1.1.1","xdg-basedir":"^5.1.0","@clack/prompts":"^1.1.0","playwright-core":"^1.58.2","@inquirer/prompts":"^8.2.1"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.12.1","devDependencies":{"vitest":"^4.0.0","typescript":"^5.0.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.3.3_1785165021585_0.9148755660378987","host":"s3://npm-registry-packages-npm-production"}},"0.3.4":{"name":"@brightdata/cli","version":"0.3.4","keywords":["brightdata","bright-data","cli","web-scraping","scraper","serp","data-extraction","proxy","unlocker","dataset"],"author":{"name":"Bright Data"},"license":"MIT","_id":"@brightdata/cli@0.3.4","maintainers":[{"name":"meirk-brd","email":"meirk@brightdata.com"},{"name":"brd-cholpon","email":"cholpon@brightdata.com"},{"name":"brightdata.com","email":"npm@brightdata.com"},{"name":"brd-josh","email":"josh@brightdata.com"},{"name":"brd-vadim","email":"vadim@brightdata.com"},{"name":"maksimd","email":"maksimd@brightdata.com"},{"name":"brd-artems","email":"artems@brightdata.com"}],"homepage":"https://brightdata.com","bugs":{"url":"https://github.com/brightdata/cli/issues"},"bin":{"bdata":"dist/index.js","brightdata":"dist/index.js"},"dist":{"shasum":"c37f1a8c78ed75138442b001c66eda929744570c","tarball":"https://registry.npmjs.org/@brightdata/cli/-/cli-0.3.4.tgz","fileCount":323,"integrity":"sha512-RLhKQb/jje0VjYWRLlY9kG8xurOn0TVxE2aM0UNrtrdFf4oc1rAPU9NH8YqHYbct237EjO7iQ7aEtEbSy72DZw==","signatures":[{"sig":"MEUCIBX0M7TovjhfwXbjwnbxM3Ro0XvYTOD01fb0v6+X82mIAiEAxQ3Nc8tveJqXHivrYRBwIHZ11Pnbix5YXwdl9qNf+e0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@brightdata%2fcli@0.3.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1344947},"main":"dist/index.js","types":"./dist/index.d.ts","engines":{"node":">=20.0.0"},"gitHead":"00052495cc8713765e4546f6814e8e4c432ab2f6","scripts":{"dev":"tsc --watch","test":"vitest run","build":"tsc","clean":"rm -rf dist","start":"node dist/index.js","test:watch":"vitest","type-check":"tsc --noEmit","publish-beta":"npm publish --tag beta","publish-prod":"npm publish --access public","prepublishOnly":"pnpm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:096184c5-2d89-485c-a29c-c44e41b2fa72"}},"repository":{"url":"git+https://github.com/brightdata/cli.git","type":"git"},"_npmVersion":"11.16.0","description":"Command-line interface for Bright Data. Scrape, search, extract structured data, and automate browsers directly from your terminal.","directories":{},"_nodeVersion":"24.18.0","dependencies":{"open":"^11.0.0","commander":"^14.0.2","picocolors":"^1.1.1","xdg-basedir":"^5.1.0","@clack/prompts":"^1.1.0","playwright-core":"^1.58.2","@inquirer/prompts":"^8.2.1"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.12.1","devDependencies":{"vitest":"^4.0.0","typescript":"^5.0.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.3.4_1786565056740_0.9071151384253753","host":"s3://npm-registry-packages-npm-production"}},"0.3.5":{"name":"@brightdata/cli","version":"0.3.5","keywords":["brightdata","bright-data","cli","web-scraping","scraper","serp","data-extraction","proxy","unlocker","dataset"],"author":{"name":"Bright Data"},"license":"MIT","_id":"@brightdata/cli@0.3.5","maintainers":[{"name":"meirk-brd","email":"meirk@brightdata.com"},{"name":"brd-cholpon","email":"cholpon@brightdata.com"},{"name":"brightdata.com","email":"npm@brightdata.com"},{"name":"brd-josh","email":"josh@brightdata.com"},{"name":"brd-vadim","email":"vadim@brightdata.com"},{"name":"maksimd","email":"maksimd@brightdata.com"},{"name":"brd-artems","email":"artems@brightdata.com"}],"homepage":"https://brightdata.com","bugs":{"url":"https://github.com/brightdata/cli/issues"},"bin":{"bdata":"dist/index.js","brightdata":"dist/index.js"},"dist":{"shasum":"7f621bf2d5b9666e5fad92d188bafd705c6bcb3b","tarball":"https://registry.npmjs.org/@brightdata/cli/-/cli-0.3.5.tgz","fileCount":323,"integrity":"sha512-GTcUEBqO8YxICtLGm81e1fcyz/17V701gyvJVN5gWOhQcjTMQpjI8YOYNjhYaybQpfaLkQIQWQJ+DJMdeEEMkg==","signatures":[{"sig":"MEUCIQDQeAgiM87JEluybGWw96c+tGavGLTgLWfy4w8xVD2unwIgSEcfYDxPVlxoMoM9bEsfabsuijN80XSJPKn4gu/EAM0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@brightdata%2fcli@0.3.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1350372},"main":"dist/index.js","types":"./dist/index.d.ts","engines":{"node":">=20.0.0"},"gitHead":"3074dc71b12f0665e35c67da103b28314992ef77","scripts":{"dev":"tsc --watch","test":"vitest run","build":"tsc","clean":"rm -rf dist","start":"node dist/index.js","test:watch":"vitest","type-check":"tsc --noEmit","publish-beta":"npm publish --tag beta","publish-prod":"npm publish --access public","prepublishOnly":"pnpm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:096184c5-2d89-485c-a29c-c44e41b2fa72"}},"repository":{"url":"git+https://github.com/brightdata/cli.git","type":"git"},"_npmVersion":"11.17.0","description":"Command-line interface for Bright Data. Scrape, search, extract structured data, and automate browsers directly from your terminal.","directories":{},"_nodeVersion":"24.19.0","dependencies":{"open":"^11.0.0","commander":"^14.0.2","picocolors":"^1.1.1","xdg-basedir":"^5.1.0","@clack/prompts":"^1.1.0","playwright-core":"^1.58.2","@inquirer/prompts":"^8.2.1"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.12.1","devDependencies":{"vitest":"^4.0.0","typescript":"^5.0.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.3.5_1786958117248_0.30058922964681867","host":"s3://npm-registry-packages-npm-production"}},"0.3.6":{"name":"@brightdata/cli","version":"0.3.6","keywords":["brightdata","bright-data","cli","web-scraping","scraper","serp","data-extraction","proxy","unlocker","dataset"],"author":{"name":"Bright Data"},"license":"MIT","_id":"@brightdata/cli@0.3.6","maintainers":[{"name":"meirk-brd","email":"meirk@brightdata.com"},{"name":"brd-cholpon","email":"cholpon@brightdata.com"},{"name":"brightdata.com","email":"npm@brightdata.com"},{"name":"brd-josh","email":"josh@brightdata.com"},{"name":"brd-vadim","email":"vadim@brightdata.com"},{"name":"maksimd","email":"maksimd@brightdata.com"},{"name":"brd-artems","email":"artems@brightdata.com"}],"homepage":"https://brightdata.com","bugs":{"url":"https://github.com/brightdata/cli/issues"},"bin":{"bdata":"dist/index.js","brightdata":"dist/index.js"},"dist":{"shasum":"ec2dc61cc8c3292055bb830d15742d5fd2c80ae8","tarball":"https://registry.npmjs.org/@brightdata/cli/-/cli-0.3.6.tgz","fileCount":323,"integrity":"sha512-SAWnURatSjXQqHDM0kbwzNZ5j5uvquytl2thLnzUrjM7VjsABDed2RoaoOv607htPtS5ZpHN6YgsmIwwgwdtvg==","signatures":[{"sig":"MEQCIDqUgqw6V2oiiNAbKXVtWT9+P4FZu2RnwoHAUyLbRDe4AiBd5K0lHnA70CvIgbDgeMhtmE3rzuBu7LlpK6cAvL/pOQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@brightdata%2fcli@0.3.6","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1362520},"main":"dist/index.js","types":"./dist/index.d.ts","engines":{"node":">=20.0.0"},"gitHead":"b00cd57e459ec9556f12881552bb14cf6a42061b","scripts":{"dev":"tsc --watch","test":"vitest run","build":"tsc","clean":"rm -rf dist","start":"node dist/index.js","test:watch":"vitest","type-check":"tsc --noEmit","publish-beta":"npm publish --tag beta","publish-prod":"npm publish --access public","prepublishOnly":"pnpm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:096184c5-2d89-485c-a29c-c44e41b2fa72"}},"repository":{"url":"git+https://github.com/brightdata/cli.git","type":"git"},"_npmVersion":"11.19.0","description":"Command-line interface for Bright Data. Scrape, search, extract structured data, and automate browsers directly from your terminal.","directories":{},"_nodeVersion":"24.20.0","dependencies":{"open":"^11.0.0","commander":"^14.0.2","picocolors":"^1.1.1","xdg-basedir":"^5.1.0","@clack/prompts":"^1.1.0","playwright-core":"^1.58.2","@inquirer/prompts":"^8.2.1"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.12.1","devDependencies":{"vitest":"^4.0.0","typescript":"^5.0.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.3.6_1789044021901_0.3206381886091414","host":"s3://npm-registry-packages-npm-production"}},"0.3.7":{"_id":"@brightdata/cli@0.3.7","bin":{"bdata":"dist/index.js","brightdata":"dist/index.js"},"bugs":{"url":"https://github.com/brightdata/cli/issues"},"dist":{"shasum":"c01a8e55c2466ca13b728dc144f0a8bd06e78f5b","tarball":"https://registry.npmjs.org/@brightdata/cli/-/cli-0.3.7.tgz","fileCount":327,"integrity":"sha512-YiuKZRXCaXeYRknAjtlHQCRAa78PJZ57BZ+NOK++N0w90T2KsIgvaporyLtWO/eNfuk9LCJ3Q/gxGdJORFYvgQ==","signatures":[{"sig":"MEUCIQCQyhxuAU1nAJ6GsDqq67E7oC253Nurosrto0zikI0uzAIgI7g8KJ8vYlT+BlPFYU9JhbxN75uIVga9pc5utEzCwAs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIBW0LM23NFQbFVLzfb8VMe3SoP8O8Mzzc7alr70npXfWAiEA9khRwqOUXnM/2uZSfE3gYKLEu15LuQx7W1cbkNQhPds="}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@brightdata%2fcli@0.3.7","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1388973},"main":"dist/index.js","name":"@brightdata/cli","types":"./dist/index.d.ts","author":{"name":"Bright Data"},"engines":{"node":">=20.0.0"},"gitHead":"2a869eb96c2e3e0277c58d3a480a7a7b3a03a305","license":"MIT","scripts":{"dev":"tsc --watch","test":"vitest run","build":"tsc","clean":"rm -rf dist","start":"node dist/index.js","test:watch":"vitest","type-check":"tsc --noEmit","publish-beta":"npm publish --tag beta","publish-prod":"npm publish --access public","prepublishOnly":"pnpm run build"},"version":"0.3.7","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:096184c5-2d89-485c-a29c-c44e41b2fa72"}},"homepage":"https://brightdata.com","keywords":["brightdata","bright-data","cli","web-scraping","scraper","serp","data-extraction","proxy","unlocker","dataset"],"repository":{"url":"git+https://github.com/brightdata/cli.git","type":"git"},"_npmVersion":"11.19.0","description":"Command-line interface for Bright Data. Scrape, search, extract structured data, and automate browsers directly from your terminal.","directories":{},"maintainers":[{"name":"meirk-brd","email":"meirk@brightdata.com"},{"name":"brd-cholpon","email":"cholpon@brightdata.com"},{"name":"brightdata.com","email":"npm@brightdata.com"},{"name":"brd-josh","email":"josh@brightdata.com"},{"name":"brd-vadim","email":"vadim@brightdata.com"},{"name":"maksimd","email":"maksimd@brightdata.com"},{"name":"brd-artems","email":"artems@brightdata.com"}],"_nodeVersion":"24.20.0","dependencies":{"open":"^11.0.0","commander":"^14.0.2","csv-parse":"^7.0.2","picocolors":"^1.1.1","xdg-basedir":"^5.1.0","csv-stringify":"^6.8.3","@clack/prompts":"^1.1.0","playwright-core":"^1.58.2","@inquirer/prompts":"^8.2.1"},"_hasShrinkwrap":false,"packageManager":"pnpm@10.12.1","devDependencies":{"vitest":"^4.0.0","typescript":"^5.0.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/cli_0.3.7_1789575927570_0.7272832933119944"}}},"time":{"created":"2026-03-18T09:27:36.378Z","modified":"2026-09-16T16:25:28.145Z","0.1.0":"2026-03-18T09:27:36.656Z","0.1.1":"2026-03-18T13:28:07.556Z","0.1.2":"2026-03-18T16:28:24.137Z","0.1.3":"2026-03-19T07:25:29.547Z","0.1.4":"2026-03-23T11:13:15.907Z","0.1.5":"2026-03-26T16:00:41.476Z","0.1.6":"2026-03-31T13:28:39.201Z","0.1.7":"2026-04-05T08:19:10.546Z","0.1.8":"2026-04-05T11:56:10.461Z","0.2.0":"2026-05-13T14:06:51.829Z","0.3.0":"2026-05-27T07:33:22.968Z","0.3.1":"2026-05-28T08:32:12.007Z","0.3.2":"2026-06-16T09:20:57.354Z","0.3.3":"2026-07-27T15:10:21.783Z","0.3.4":"2026-08-12T20:04:16.931Z","0.3.5":"2026-08-17T09:15:17.376Z","0.3.6":"2026-09-10T12:40:22.085Z","0.3.7":"2026-09-16T16:25:27.670Z"},"bugs":{"url":"https://github.com/brightdata/cli/issues"},"author":{"name":"Bright Data"},"license":"MIT","homepage":"https://brightdata.com","keywords":["brightdata","bright-data","cli","web-scraping","scraper","serp","data-extraction","proxy","unlocker","dataset"],"repository":{"url":"git+https://github.com/brightdata/cli.git","type":"git"},"description":"Command-line interface for Bright Data. Scrape, search, extract structured data, and automate browsers directly from your terminal.","maintainers":[{"name":"meirk-brd","email":"meirk@brightdata.com"},{"name":"brd-cholpon","email":"cholpon@brightdata.com"},{"name":"brightdata.com","email":"npm@brightdata.com"},{"name":"brd-josh","email":"josh@brightdata.com"},{"name":"brd-vadim","email":"vadim@brightdata.com"},{"name":"maksimd","email":"maksimd@brightdata.com"},{"name":"brd-artems","email":"artems@brightdata.com"}],"readme":"<p align=\"center\">\n  <img src=\"https://raw.githubusercontent.com/brightdata/cli/main/assets/banner.gif\" alt=\"Bright Data CLI\" width=\"800\" />\n</p>\n\n<h1 align=\"center\">Bright Data CLI</h1>\n\n<p align=\"center\">\n  Scrape, search, and extract structured web data — directly from your terminal.\n</p>\n\n<p align=\"center\">\n  <a href=\"https://www.npmjs.com/package/%40brightdata%2Fcli\"><img src=\"https://img.shields.io/npm/v/%40brightdata%2Fcli?color=black&label=npm\" alt=\"npm version\" /></a>\n  <img src=\"https://img.shields.io/badge/node-%3E%3D20-black\" alt=\"node requirement\" />\n  <img src=\"https://img.shields.io/badge/license-MIT-black\" alt=\"license\" />\n</p>\n\n---\n\n## Overview\n\n`@brightdata/cli` is the official npm package for the [Bright Data](https://brightdata.com) CLI. It installs the `brightdata` command (with `bdata` as a shorthand alias) for access to the full Bright Data API surface:\n\n| Command | What it does |\n|---|---|\n| `brightdata scrape` | Scrape any URL — bypasses CAPTCHAs, JS rendering, anti-bot protections |\n| `brightdata search` | Google / Bing / Yandex search with structured JSON output |\n| `brightdata discover` | AI-powered web discovery - find and rank results by intent with optional full-page content |\n| `brightdata scraper create` | Build a Bright Data scraper from a natural-language description using AI |\n| `brightdata scraper run` | Run a Bright Data scraper on a URL and return the data |\n| `brightdata scraper heal` | Fix an existing scraper in place via AI self-healing (stops at an approval gate) |\n| `brightdata scraper approve` | Approve (or reject) a self-healing fix that is awaiting approval |\n| `brightdata pipelines` | Extract structured data from 40+ platforms (Amazon, LinkedIn, TikTok…) |\n| `brightdata browser` | Control a real browser via Bright Data's Scraping Browser — navigate, snapshot, click, type, and more |\n| `brightdata zones` | List and inspect your Bright Data proxy zones |\n| `brightdata budget` | View account balance and per-zone cost & bandwidth |\n| `brightdata skill` | Install Bright Data AI agent skills into your coding agent |\n| `brightdata add mcp` | Add the Bright Data MCP server to Claude Code, Cursor, or Codex |\n| `brightdata config` | Manage CLI configuration |\n| `brightdata init` | Interactive setup wizard |\n\n---\n\n## Table of Contents\n\n- [Installation](#installation)\n- [Quick Start](#quick-start)\n- [Authentication](#authentication)\n- [Free Tier](#free-tier)\n- [Commands](#commands)\n  - [init](#init)\n  - [scrape](#scrape)\n  - [search](#search)\n  - [discover](#discover)\n  - [scraper create](#scraper-create)\n  - [scraper run](#scraper-run)\n  - [scraper heal](#scraper-heal)\n  - [scraper approve](#scraper-approve)\n  - [pipelines](#pipelines)\n  - [browser](#browser)\n  - [status](#status)\n  - [zones](#zones)\n  - [budget](#budget)\n  - [skill](#skill)\n  - [add mcp](#add-mcp)\n  - [config](#config)\n  - [login / logout](#login--logout)\n- [Configuration](#configuration)\n- [Environment Variables](#environment-variables)\n- [Output Modes](#output-modes)\n- [Pipe-Friendly Usage](#pipe-friendly-usage)\n- [Dataset Types Reference](#dataset-types-reference)\n- [Troubleshooting](#troubleshooting)\n\n---\n\n## Installation\n\n> **Requires [Node.js](https://nodejs.org/) ≥ 20**\n\n### macOS / Linux\n\n```bash\ncurl -fsSL https://cli.brightdata.com/install.sh | sh\n```\n\n### Windows\n\n```powershell\nnpm install -g @brightdata/cli\n```\n\n### Or install manually on any platform\n\n```bash\nnpm install -g @brightdata/cli\n```\n\nYou can also run without installing:\n\n```bash\nnpx --yes --package @brightdata/cli brightdata <command>\n```\n\n---\n\n## Quick Start\n\n```bash\n# 1. Run the interactive setup wizard\nbrightdata init\n\n# 2. Scrape a page as markdown\nbrightdata scrape https://example.com\n\n# 3. Search Google\nbrightdata search \"web scraping best practices\"\n\n# 4. Extract a LinkedIn profile\nbrightdata pipelines linkedin_person_profile \"https://linkedin.com/in/username\"\n\n# 5. Check your account balance\nbrightdata budget\n\n# 6. Install the Bright Data MCP server into your coding agent\nbrightdata add mcp\n```\n\n---\n\n## Authentication\n\nGet your API key from [brightdata.com/cp/setting/users](https://brightdata.com/cp/setting/users).\n\n```bash\n# Interactive — opens browser, saves key automatically\nbrightdata login\n\n# Via GitHub CLI — no browser needed (requires gh)\nbrightdata login --github\n\n# Non-interactive — pass key directly\nbrightdata login --api-key <your-api-key>\n\n# Environment variable — no login required\nexport BRIGHTDATA_API_KEY=your-api-key\n```\n\nOn first login the CLI checks for required zones (`cli_unlocker`, `cli_browser`) and creates them automatically if missing.\n\n```bash\n# Clear saved credentials\nbrightdata logout\n```\n\n`brightdata add mcp` uses the API key stored by `brightdata login`. It does not currently read `BRIGHTDATA_API_KEY` or the global `--api-key` flag, so log in first before using it.\n\n---\n\n## Free Tier\n\nEvery new Bright Data account includes a recurring monthly free tier — no credit card or commitment required to start. See the [Free Tier docs](https://docs.brightdata.com/general/account/billing-and-pricing/free-tier) for full details.\n\n**5,000 free credits per month** (≈ $7.50), renewing on the 1st of each month. Unused credits don't roll over.\n\nThese credits cover the products most CLI commands use:\n\n| Product | CLI commands | Credit cost |\n|---|---|---|\n| **Unlocker API** | `scrape` | 1 credit / request |\n| **SERP API** | `search` | 1 credit / request |\n| **Web Scraper API** | `pipelines` | 1 credit / request |\n| **Scraper Studio** | `scraper create` / `run` / `heal` | 1 credit / page load (shared pool, not per record) |\n\n**Not** included in the monthly free credits: proxy products (Datacenter, ISP, Residential) and the **Browser API** (`brightdata browser`). These get a separate one-time **$2 trial** (valid 7 days), plus a **$5 bonus** when you add a payment method (valid 30 days).\n\n> Adding a credit card is a verification step only — you are not charged unless your free credits are exhausted **and** you have funds deposited. Accounts on custom pay-as-you-go or pre-commit subscription plans don't receive the recurring monthly free credits.\n\nCheck your remaining balance any time with [`brightdata budget`](#budget).\n\n---\n\n## Commands\n\n### `init`\n\nInteractive setup wizard. The recommended way to get started.\n\n```bash\nbrightdata init\n```\n\nWalks through: API key detection → zone selection → default output format → quick-start examples.\n\n| Flag | Description |\n|---|---|\n| `--skip-auth` | Skip the authentication step |\n| `-k, --api-key <key>` | Provide API key directly |\n\n---\n\n### `scrape`\n\nScrape any URL using Bright Data's Web Unlocker. Handles CAPTCHAs, JavaScript rendering, and anti-bot protections automatically.\n\n```bash\nbrightdata scrape <url> [options]\n```\n\n| Flag | Description |\n|---|---|\n| `-f, --format <fmt>` | `markdown` · `html` · `screenshot` · `json` (default: `markdown`) |\n| `--country <code>` | Geo-target by ISO country code (e.g. `us`, `de`, `jp`) |\n| `--zone <name>` | Web Unlocker zone name |\n| `--mobile` | Use a mobile user agent |\n| `--async` | Submit async job, return a snapshot ID |\n| `-o, --output <path>` | Write output to file |\n| `--json` / `--pretty` | JSON output (raw / indented) |\n| `-k, --api-key <key>` | Override API key |\n\n**Examples**\n\n```bash\n# Scrape as markdown (default)\nbrightdata scrape https://news.ycombinator.com\n\n# Scrape as raw HTML\nbrightdata scrape https://example.com -f html\n\n# US geo-targeting, save to file\nbrightdata scrape https://amazon.com -f json --country us -o product.json\n\n# Pipe to a markdown viewer\nbrightdata scrape https://docs.github.com | glow -\n\n# Async — returns a snapshot ID you can poll with `status`\nbrightdata scrape https://example.com --async\n```\n\n---\n\n### `search`\n\nSearch Google, Bing, or Yandex via Bright Data's SERP API. Google results include structured data (organic results, ads, people-also-ask, related searches).\n\n```bash\nbrightdata search <query> [options]\n```\n\n| Flag | Description |\n|---|---|\n| `--engine <name>` | `google` · `bing` · `yandex` (default: `google`) |\n| `--country <code>` | Localized results (e.g. `us`, `de`) |\n| `--language <code>` | Language code (e.g. `en`, `fr`) |\n| `--page <n>` | Page number, 0-indexed (default: `0`) |\n| `--type <type>` | `web` · `news` · `images` · `shopping` (default: `web`) |\n| `--device <type>` | `desktop` · `mobile` |\n| `--zone <name>` | SERP zone name |\n| `-o, --output <path>` | Write output to file |\n| `--json` / `--pretty` | JSON output (raw / indented) |\n| `-k, --api-key <key>` | Override API key |\n\n**Examples**\n\n```bash\n# Formatted table output (default)\nbrightdata search \"typescript best practices\"\n\n# German localized results\nbrightdata search \"restaurants berlin\" --country de --language de\n\n# News search\nbrightdata search \"AI regulation\" --type news\n\n# Page 2 of results\nbrightdata search \"web scraping\" --page 1\n\n# Extract just the URLs\nbrightdata search \"open source scraping\" --json | jq -r '.organic[].link'\n\n# Search Bing\nbrightdata search \"bright data pricing\" --engine bing\n```\n\n---\n\n### `discover`\n\nAI-powered web discovery. Submit a query with optional intent, and Bright Data finds, ranks, and optionally extracts full-page content for each result.\n\n```bash\nbrightdata discover <query> [options]\n```\n\n| Flag | Description |\n|---|---|\n| `--intent <text>` | AI intent to evaluate and rank result relevance |\n| `--country <code>` | ISO country code (default: `US`) |\n| `--city <name>` | City for localized results (e.g. `\"New York\"`) |\n| `--language <code>` | Language code (default: `en`) |\n| `--num-results <n>` | Number of results to return |\n| `--filter-keywords <words>` | Comma-separated keywords that must appear in results |\n| `--include-content` | Include full page content in each result |\n| `--no-remove-duplicates` | Keep duplicate results |\n| `--start-date <date>` | Only content updated from date (`YYYY-MM-DD`) |\n| `--end-date <date>` | Only content updated until date (`YYYY-MM-DD`) |\n| `--timeout <seconds>` | Polling timeout (default: `600`) |\n| `-o, --output <path>` | Write output to file |\n| `--json` / `--pretty` | JSON output (raw / indented) |\n| `-k, --api-key <key>` | Override API key |\n\n**Examples**\n\n```bash\n# Basic discovery — table output\nbrightdata discover \"AI trends\"\n\n# With AI intent for relevance ranking\nbrightdata discover \"AI trends\" \\\n  --intent \"Prioritize institutional reports for VC research\"\n\n# Include full page content as markdown\nbrightdata discover \"AI trends\" --include-content --num-results 5\n\n# Geo-targeted with date range\nbrightdata discover \"best restaurants\" --country US --city \"New York\" \\\n  --start-date 2025-01-01 --end-date 2025-12-31\n\n# Filter results by keywords\nbrightdata discover \"generative AI SaaS\" --filter-keywords \"revenue,SaaS\"\n\n# JSON output to file\nbrightdata discover \"AI trends\" --num-results 10 --pretty -o results.json\n\n# Pipe-friendly — redirected stdout outputs JSON automatically\nbrightdata discover \"AI trends\" --include-content --num-results 3 > results.json\n```\n\n---\n\n### `scraper create`\n\nBuild a Bright Data scraper from a natural-language description using AI.\n\n```bash\nbrightdata scraper create <url> <description> [options]\n```\n\n| Flag | Description |\n|---|---|\n| `--name <name>` | Scraper template name (default: `cli-scraper-<timestamp>`) |\n| `--deliver-webhook <url>` | Webhook URL for the deliver stub (default: `https://example.com/webhook`) |\n| `--timeout <seconds>` | Polling timeout in seconds (default: `600`) |\n| `--max-retries <n>` | Max retries on the AI-Flow concurrent-job cap 429 (default: `4`). See below. |\n| `--no-retry` | Fail immediately on 429 instead of waiting. Same as `--max-retries 0`. |\n| `-o, --output <path>` | Write the JSON envelope to a file (see below) |\n| `--json` / `--pretty` | JSON output (raw / indented) |\n| `--legacy-output` | Write the pre-v0.3 bare AI-progress payload to `-o` instead of the envelope. Migration only. |\n| `--timing` | Show request timing |\n| `-k, --api-key <key>` | Override API key |\n\n> **Note:** The scraper is created with a placeholder webhook delivery target (`https://example.com/webhook`). You can reconfigure the actual delivery endpoint in the [Bright Data web UI](https://brightdata.com/cp/scrapers) after creation.\n\n#### Output envelope (`-o create.json`)\n\nEvery termination path — success or failure — writes the same JSON envelope shape:\n\n```json\n{\n  \"collector_id\":    \"c_mp7x8a9b2c0d1e2f\",\n  \"name\":            \"my-product-scraper\",\n  \"status\":          \"done\",\n  \"completed_steps\": [\"prepare_intent_analyzer\", \"planner\", \"...\"],\n  \"view_url\":        \"https://brightdata.com/cp/scrapers/c_mp7x8a9b2c0d1e2f\",\n  \"created_at\":      \"2026-05-18T07:28:30Z\"\n}\n```\n\nOn failure paths the envelope adds an `error` field and the `status` reflects the failure category (`ai_trigger_failed`, `failed`, `poll_failed`). The `collector_id` and `view_url` are still present so you can recover or inspect the half-built scraper.\n\nThis makes the documented chain in [recipes.md](https://github.com/brightdata/skills/blob/main/skills/scraper-studio/references/recipes.md) work as written:\n\n```bash\nbrightdata scraper create https://example.com/product/1 \"...\" \\\n    -o create.json\nCOLLECTOR_ID=$(jq -r '.collector_id' create.json)\nbrightdata scraper run \"$COLLECTOR_ID\" https://example.com/product/2\n```\n\n> The file format follows the `-o` extension, so `.json` is written compact (ideal for `jq`). Use `--pretty` for indented JSON on stdout when you omit `-o`.\n\nUse `--legacy-output` if you have an existing script that depended on the pre-v0.3 bare-progress shape; the flag is supported for one minor version while you migrate.\n\n#### Concurrent-job cap & auto-backoff\n\nThe Bright Data AI Flow caps concurrent `scraper create` generations per account (currently 3). If you exceed it, the API returns `429 Cannot run more than N jobs in parallel`. The CLI handles this automatically: it waits with exponential backoff + jitter and retries up to `--max-retries` times (default 4). During the wait the CLI prints status lines so you know it isn't hung:\n\n```\nTriggering AI generation...\nHit AI-Flow concurrent-job cap (429). Waiting 32s before retry 1/4...\nHit AI-Flow concurrent-job cap (429). Waiting 67s before retry 2/4...\nGenerating scraper...\n```\n\nIf the cap is still hit after all retries, the CLI exits with a stderr note pointing at the half-built collector's dashboard URL so you can inspect or delete it manually (Bright Data does not yet expose programmatic collector deletion).\n\nUse `--no-retry` if you want the old fail-fast behavior — typically for scripts that prefer to handle backoff themselves.\n\n**Examples**\n\n```bash\n# Build a scraper for a product page\nbrightdata scraper create https://example.com/product/1 \\\n    \"Extract title, price, and image URL from this product page\"\n\n# Name the scraper and save the envelope to a file\nbrightdata scraper create https://example.com/product/1 \\\n    \"Extract title, price, and image URL from this product page\" \\\n    --name my-product-scraper -o create.json\n\n# Capture the collector_id for chaining\nCOLLECTOR_ID=$(jq -r '.collector_id' create.json)\n\n# Fan out 10 parallel creates — the CLI serialises automatically via 429 backoff\nfor url in $(cat urls.txt); do\n    brightdata scraper create \"$url\" \"Extract title, price, ...\" \\\n        --name \"scraper-$(basename $url)\" &\ndone; wait\n\n# Disable the auto-backoff (fail fast on 429)\nbrightdata scraper create https://example.com/product/1 \\\n    \"Extract title, price, and image URL from this product page\" \\\n    --no-retry\n\n# Use a custom webhook delivery URL\nbrightdata scraper create https://example.com/product/1 \\\n    \"Extract title, price, and image URL from this product page\" \\\n    --deliver-webhook https://my-app.com/ingest\n```\n\n---\n\n### `scraper run`\n\nRun a scraper (built with `scraper create` or in the web UI) against one or more URLs and get the extracted data.\n\n```bash\nbrightdata scraper run <collector_id> [url] [options]\n```\n\nProvide URLs in exactly one of three ways:\n\n- Positional `<url>` — single URL (legacy form, unchanged).\n- `--urls <u1,u2,...>` — comma-separated list.\n- `--input-file <path>` — file with one URL per line, **or** a JSON array of URL strings, **or** a JSON array of `{\"url\": \"...\"}` objects.\n\n| Flag | Description |\n|---|---|\n| `--urls <list>` | Comma-separated list of URLs (multi-URL batch path) |\n| `--input-file <path>` | File with URLs (txt one-per-line, or JSON array) |\n| `--sync` | Use the synchronous `/dca/crawl` endpoint (single-URL only, server-side cap of 25–50s) |\n| `--sync-timeout <seconds>` | Sync-mode server timeout, `25`–`50` (default: `50`) |\n| `--timeout <seconds>` | Polling timeout (default: `600` single-URL, `3600` batch) |\n| `--name <name>` | Human-readable job name |\n| `--version <version>` | Scraper version (e.g. `dev`) |\n| `-o, --output <path>` | Write output to file |\n| `--json` / `--pretty` | JSON output (raw / indented) |\n| `--timing` | Show request timing |\n| `-k, --api-key <key>` | Override API key |\n\n**Routing**\n\n- **Single URL** (positional, or one entry via `--urls` / `--input-file`) → async flow: `/dca/trigger_immediate` → poll `/dca/get_result`. Use `--sync` for `/dca/crawl` (one-shot, 25–50s).\n- **Multiple URLs** (`--urls` / `--input-file` with 2+ entries) → single POST to `/dca/trigger` with an array body, one `collection_id`, polled via `/dca/dataset`. This mirrors the canonical batch shape used by the reference SDKs ([`triggerWithUrls`](https://github.com/brightdata/bright-data-scraper-studio-nodejs-project) / [`trigger_with_urls`](https://github.com/brightdata/bright-data-scraper-studio-python-project)). `--sync` is incompatible with multi-URL — `/dca/crawl` accepts only a single URL.\n\nIf a single URL expands to more pages than the realtime job limit allows (paginated listings, infinite scroll), the CLI automatically falls back to the batch endpoint and prints a one-line notice. No flag required.\n\n**Examples**\n\n```bash\n# Default: async + poll until results arrive\nbrightdata scraper run c_mp3tuab31lswoxvpws https://www.amazon.com/dp/B08N5WRWNW\n\n# Save pretty-printed results to a file\nbrightdata scraper run c_mp3tuab31lswoxvpws https://www.amazon.com/dp/B08N5WRWNW \\\n    --pretty -o product.json\n\n# Sync mode for fast pages\nbrightdata scraper run c_mp3tuab31lswoxvpws https://example.com/p/1 --sync\n\n# Sync with a shorter server timeout and a job name\nbrightdata scraper run c_mp3tuab31lswoxvpws https://example.com/p/1 \\\n    --sync --sync-timeout 30 --name first-test\n\n# Multi-URL batch — one API call, one snapshot, one merged result array\nbrightdata scraper run c_mp3tuab31lswoxvpws \\\n    --urls \"https://example.com/p/1,https://example.com/p/2,https://example.com/p/3\" \\\n    --pretty -o products.json\n\n# Multi-URL from a file (one URL per line; # comments and blank lines skipped)\nbrightdata scraper run c_mp3tuab31lswoxvpws --input-file urls.txt -o products.json\n\n# Multi-URL from a JSON array\necho '[\"https://example.com/p/1\",\"https://example.com/p/2\"]' > urls.json\nbrightdata scraper run c_mp3tuab31lswoxvpws --input-file urls.json\n```\n\n---\n\n### `scraper heal`\n\nFix an existing scraper **in place** when it ran but returned wrong, empty, or partial data. The `collector_id` stays the same — the scraper is improved, not replaced. This is the maintenance twin of `scraper create`: it triggers Bright Data's AI self-healing flow (`POST /dca/collectors/{id}/refactor_template`), then polls progress.\n\n```bash\nbrightdata scraper heal <collector_id> \"<prompt>\" [options]\n```\n\n**You are the detector.** The CLI never decides on its own that a scraper is broken — you inspect the run output and decide. The `<prompt>` is required (max 1000 chars); name exactly what is wrong and what the correct output should be. Vague prompts produce vague heals.\n\n| Flag | Description |\n|---|---|\n| `--url <url>` | Verify target woven into the success `next_step` hint (not sent to the heal call) |\n| `--auto-approve` | When the heal hits the approval gate, approve it automatically and poll through to `done` (default: stop and let you review) |\n| `--timeout <seconds>` | Polling timeout (default: `600`) |\n| `--max-retries <n>` | Max retries on the AI-Flow concurrent-job-cap `429` (default: `4`) |\n| `--no-retry` | Fail immediately on `429` instead of waiting through the cap |\n| `-o, --output <path>` | Write output to file |\n| `--json` / `--pretty` | JSON output (raw / indented) |\n| `--legacy-output` | Emit the bare AI-progress payload instead of the envelope |\n| `--timing` | Show request timing |\n| `-k, --api-key <key>` | Override API key |\n\n**The approval gate**\n\nSelf-healing is human-in-the-loop. Without `--auto-approve`, `heal` runs the fix and then **stops at an approval gate** rather than committing it, exiting `0` with a `status: \"awaiting_approval\"` envelope:\n\n```json\n{\n  \"collector_id\": \"c_mp3tuab31lswoxvpws\",\n  \"status\":       \"awaiting_approval\",\n  \"prompt\":       \"Price returns null — the selector moved …\",\n  \"preview_result\": [ { \"title\": \"…\", \"price\": { \"value\": 51.77, \"currency\": \"GBP\" } }, … ],\n  \"diff_summary\": \"proposed template has 1 step(s) — review at view_url\",\n  \"view_url\":     \"https://brightdata.com/cp/scrapers/c_mp3tuab31lswoxvpws\",\n  \"next_step\":    \"bdata scraper approve c_mp3tuab31lswoxvpws --url https://example.com/product/1\"\n}\n```\n\n`preview_result` shows the sample rows the fixed scraper would produce — review them, then run the `next_step` (`scraper approve`) to commit. `awaiting_approval` is **not** a failure; it means the fix is ready and waiting for your decision. A failed heal (`429` cap exhausted, timeout, terminal `failed`) is **non-destructive** — the existing scraper is unchanged and still works as before.\n\n**Examples**\n\n```bash\n# Heal a scraper, stop at the gate, and get a ready-to-run verify command back\nbrightdata scraper heal c_mp3tuab31lswoxvpws \\\n    \"The price field returns null — the selector moved into a span with \\\n     data-testid. Capture price and currency again.\" \\\n    --url https://example.com/product/1 --pretty -o heal.json\n\n# Fully autonomous: heal and approve in one command (no manual review)\nbrightdata scraper heal c_mp3tuab31lswoxvpws \\\n    \"Reviews stopped extracting after the page redesign\" --auto-approve\n```\n\n---\n\n### `scraper approve`\n\nCommit (or reject) a self-healing fix that `scraper heal` left **awaiting approval**. Calls `POST /dca/collectors/{id}/resume_automation_job`, then polls the refactor job to `done`.\n\n```bash\nbrightdata scraper approve <collector_id> [options]\n```\n\n| Flag | Description |\n|---|---|\n| `--reject` | Reject the proposed fix instead of approving it |\n| `--url <url>` | Verify target woven into the success `next_step` hint |\n| `--timeout <seconds>` | Polling timeout (default: `600`) |\n| `-o, --output <path>` | Write output to file |\n| `--json` / `--pretty` | JSON output (raw / indented) |\n| `--legacy-output` | Emit the bare AI-progress payload instead of the envelope |\n| `--timing` | Show request timing |\n| `-k, --api-key <key>` | Override API key |\n\nOn success the job advances to `status: \"done\"` and the envelope hands back a `next_step` = `scraper run <id> <url>` so you can verify the committed fix. `--reject` discards the proposed fix (`status: \"rejected\"`) — re-run `scraper heal` with a sharper prompt to try again. If a heal needs multiple approvals, `approve` may stop at `awaiting_approval` again — just run it once more.\n\n**The self-healing loop**\n\n```bash\n# 1. Run and inspect the data\nbrightdata scraper run c_mp3tuab31lswoxvpws https://example.com/product/1 --json -o out.json\n\n# 2. If the data is wrong, heal (stops at the approval gate)\nbrightdata scraper heal c_mp3tuab31lswoxvpws \\\n    \"Price returns null — the selector moved; capture price + currency.\" \\\n    --url https://example.com/product/1 --pretty -o heal.json\n\n# 3. Review heal.json's preview_result, then approve\nbrightdata scraper approve c_mp3tuab31lswoxvpws \\\n    --url https://example.com/product/1 --pretty -o approve.json\n\n# 4. Verify the committed fix\nbrightdata scraper run c_mp3tuab31lswoxvpws https://example.com/product/1 --pretty\n```\n\n---\n\n### `pipelines`\n\nExtract structured data from 40+ platforms using Bright Data's Web Scraper API. Triggers an async collection job, polls until ready, and returns results.\n\n```bash\nbrightdata pipelines <type> [params...] [options]\n```\n\n| Flag | Description |\n|---|---|\n| `--format <fmt>` | `json` · `csv` · `ndjson` · `jsonl` (default: `json`) |\n| `--timeout <seconds>` | Polling timeout (default: `600`) |\n| `-o, --output <path>` | Write output to file |\n| `--json` / `--pretty` | JSON output (raw / indented) |\n| `-k, --api-key <key>` | Override API key |\n\n```bash\n# List all available dataset types\nbrightdata pipelines list\n```\n\n**Examples**\n\n```bash\n# LinkedIn profile\nbrightdata pipelines linkedin_person_profile \"https://linkedin.com/in/username\"\n\n# Amazon product → CSV\nbrightdata pipelines amazon_product \"https://amazon.com/dp/B09V3KXJPB\" \\\n  --format csv -o product.csv\n\n# Instagram profile\nbrightdata pipelines instagram_profiles \"https://instagram.com/username\"\n\n# Amazon search by keyword\nbrightdata pipelines amazon_product_search \"laptop\" \"https://amazon.com\"\n\n# Google Maps reviews\nbrightdata pipelines google_maps_reviews \"https://maps.google.com/...\" 7\n\n# YouTube comments (top 50)\nbrightdata pipelines youtube_comments \"https://youtube.com/watch?v=...\" 50\n```\n\nSee [Dataset Types Reference](#dataset-types-reference) for the full list.\n\n---\n\n### `browser`\n\nControl a real browser session powered by [Bright Data's Scraping Browser](https://brightdata.com/products/scraping-browser). A lightweight local daemon holds the browser connection open between commands, giving you persistent state without reconnecting on every call.\n\n```bash\nbrightdata browser open <url>              # Start a session and navigate\nbrightdata browser snapshot                # Get an accessibility tree of the page\nbrightdata browser screenshot [path]       # Take a PNG screenshot\nbrightdata browser click <ref>             # Click an element\nbrightdata browser type <ref> <text>       # Type into an element\nbrightdata browser fill <ref> <value>      # Fill a form field\nbrightdata browser select <ref> <value>    # Select a dropdown option\nbrightdata browser check <ref>             # Check a checkbox / radio\nbrightdata browser uncheck <ref>           # Uncheck a checkbox\nbrightdata browser hover <ref>             # Hover over an element\nbrightdata browser scroll                  # Scroll the page\nbrightdata browser get text [selector]     # Get text content\nbrightdata browser get html [selector]     # Get HTML content\nbrightdata browser back                    # Navigate back\nbrightdata browser forward                 # Navigate forward\nbrightdata browser reload                  # Reload the page\nbrightdata browser network                 # Show captured network requests\nbrightdata browser cookies                 # Show cookies\nbrightdata browser status                  # Show session state\nbrightdata browser sessions                # List all active sessions\nbrightdata browser close                   # Close session and stop daemon\n```\n\n**Global flags** (work with every subcommand)\n\n| Flag | Description |\n|---|---|\n| `--session <name>` | Session name — run multiple isolated sessions in parallel (default: `default`) |\n| `--country <code>` | Geo-target by ISO country code (e.g. `us`, `de`). On `open`, changing country reconnects the browser |\n| `--zone <name>` | Scraping Browser zone (default: `cli_browser`) |\n| `--timeout <ms>` | IPC command timeout in milliseconds (default: `30000`) |\n| `--idle-timeout <ms>` | Daemon auto-shutdown after idle (default: `600000` = 10 min) |\n| `--json` / `--pretty` | JSON output |\n| `-o, --output <path>` | Write output to file |\n| `-k, --api-key <key>` | Override API key |\n\n---\n\n#### `browser open <url>`\n\nNavigate to a URL. Starts the daemon and browser session automatically if not already running.\n\n```bash\nbrightdata browser open https://example.com\nbrightdata browser open https://amazon.com --country us --session shop\n```\n\n| Flag | Description |\n|---|---|\n| `--country <code>` | Geo-targeting. Reconnects the browser if the country changes on an existing session |\n| `--zone <name>` | Browser zone name |\n| `--idle-timeout <ms>` | Daemon idle timeout for this session |\n\n---\n\n#### `browser snapshot`\n\nCapture the page as a text accessibility tree. This is the primary way AI agents read page content — far more token-efficient than raw HTML.\n\n```bash\nbrightdata browser snapshot\nbrightdata browser snapshot --compact          # Interactive elements + ancestors only\nbrightdata browser snapshot --interactive      # Interactive elements as a flat list\nbrightdata browser snapshot --depth 3          # Limit tree depth\nbrightdata browser snapshot --selector \"main\"  # Scope to a CSS subtree\nbrightdata browser snapshot --wrap             # Wrap output in AI-safe content boundaries\n```\n\n**Output format:**\n```\nPage: Example Domain\nURL: https://example.com\n\n- heading \"Example Domain\" [level=1]\n- paragraph \"This domain is for use in illustrative examples.\"\n- link \"More information...\" [ref=e1]\n```\n\nEach interactive element gets a `ref` (e.g. `e1`, `e2`) that you pass to `click`, `type`, `fill`, etc.\n\n| Flag | Description |\n|---|---|\n| `--compact` | Only interactive elements and their ancestors (70–90% fewer tokens) |\n| `--interactive` | Only interactive elements, as a flat list |\n| `--depth <n>` | Limit tree depth to a non-negative integer |\n| `--selector <sel>` | Scope snapshot to elements matching a CSS selector |\n| `--wrap` | Wrap output in `--- BRIGHTDATA_BROWSER_CONTENT ... ---` boundaries (useful for AI agent prompt injection safety) |\n\n---\n\n#### `browser screenshot [path]`\n\nCapture a PNG screenshot of the current viewport.\n\n```bash\nbrightdata browser screenshot\nbrightdata browser screenshot ./result.png\nbrightdata browser screenshot --full-page -o page.png\nbrightdata browser screenshot --base64\n```\n\n| Flag | Description |\n|---|---|\n| `[path]` | Where to save the PNG (default: temp directory) |\n| `--full-page` | Capture the full scrollable page, not just the viewport |\n| `--base64` | Output base64-encoded PNG data instead of saving to a file |\n\n---\n\n#### `browser click <ref>`\n\nClick an element by its snapshot ref.\n\n```bash\nbrightdata browser click e3\nbrightdata browser click e3 --session shop\n```\n\n---\n\n#### `browser type <ref> <text>`\n\nType text into an element. Clears the field first by default.\n\n```bash\nbrightdata browser type e5 \"search query\"\nbrightdata browser type e5 \" more text\" --append   # Append to existing value\nbrightdata browser type e5 \"search query\" --submit  # Press Enter after typing\n```\n\n| Flag | Description |\n|---|---|\n| `--append` | Append to existing value using key-by-key simulation |\n| `--submit` | Press Enter after typing |\n\n---\n\n#### `browser fill <ref> <value>`\n\nFill a form field directly (no keyboard simulation). Use `type` if you need to trigger `keydown`/`keyup` events.\n\n```bash\nbrightdata browser fill e2 \"user@example.com\"\n```\n\n---\n\n#### `browser select <ref> <value>`\n\nSelect a dropdown option by its visible label.\n\n```bash\nbrightdata browser select e4 \"United States\"\n```\n\n---\n\n#### `browser check <ref>` / `browser uncheck <ref>`\n\nCheck or uncheck a checkbox or radio button.\n\n```bash\nbrightdata browser check e7\nbrightdata browser uncheck e7\n```\n\n---\n\n#### `browser hover <ref>`\n\nHover the mouse over an element (triggers hover states, tooltips, dropdowns).\n\n```bash\nbrightdata browser hover e2\n```\n\n---\n\n#### `browser scroll`\n\nScroll the viewport or scroll an element into view.\n\n```bash\nbrightdata browser scroll                        # Scroll down 300px (default)\nbrightdata browser scroll --direction up\nbrightdata browser scroll --direction down --distance 600\nbrightdata browser scroll --ref e10              # Scroll element e10 into view\n```\n\n| Flag | Description |\n|---|---|\n| `--direction <dir>` | `up`, `down`, `left`, `right` (default: `down`) |\n| `--distance <px>` | Pixels to scroll (default: `300`) |\n| `--ref <ref>` | Scroll this element into view instead of the viewport |\n\n---\n\n#### `browser get text [selector]`\n\nGet the text content of the page or a scoped element.\n\n```bash\nbrightdata browser get text           # Full page text\nbrightdata browser get text \"h1\"      # Text of the first h1\nbrightdata browser get text \"#price\"  # Text inside #price\n```\n\n---\n\n#### `browser get html [selector]`\n\nGet the HTML of the page or a scoped element.\n\n```bash\nbrightdata browser get html              # Full page outer HTML\nbrightdata browser get html \".product\"   # innerHTML of .product\nbrightdata browser get html --pretty     # JSON output with selector field\n```\n\n---\n\n#### `browser network`\n\nShow HTTP requests captured since the last navigation.\n\n```bash\nbrightdata browser network\nbrightdata browser network --json\n```\n\n**Example output:**\n```\nNetwork Requests (5 total):\n[GET] https://example.com/ => [200]\n[GET] https://example.com/style.css => [200]\n[POST] https://api.example.com/track => [204]\n```\n\n---\n\n#### `browser cookies`\n\nShow cookies for the active session.\n\n```bash\nbrightdata browser cookies\nbrightdata browser cookies --pretty\n```\n\n---\n\n#### `browser status`\n\nShow the current state of a browser session.\n\n```bash\nbrightdata browser status\nbrightdata browser status --session shop --pretty\n```\n\n---\n\n#### `browser sessions`\n\nList all active browser daemon sessions.\n\n```bash\nbrightdata browser sessions\nbrightdata browser sessions --pretty\n```\n\n---\n\n#### `browser close`\n\nClose a session and stop its daemon.\n\n```bash\nbrightdata browser close                   # Close the default session\nbrightdata browser close --session shop    # Close a named session\nbrightdata browser close --all             # Close all active sessions\n```\n\n---\n\n**Example: AI agent workflow**\n\n```bash\n# Open a US-targeted session\nbrightdata browser open https://example.com --country us\n\n# Read the page structure (compact for token efficiency)\nbrightdata browser snapshot --compact\n\n# Interact using refs from the snapshot\nbrightdata browser click e3\nbrightdata browser type e5 \"search query\" --submit\n\n# Get updated snapshot after interaction\nbrightdata browser snapshot --compact\n\n# Save a screenshot for visual verification\nbrightdata browser screenshot ./result.png\n\n# Done\nbrightdata browser close\n```\n\n**Example: multi-session comparison**\n\n```bash\nbrightdata browser open https://amazon.com --session us --country us\nbrightdata browser open https://amazon.com --session de --country de\n\nbrightdata browser snapshot --session us --json > us.json\nbrightdata browser snapshot --session de --json > de.json\n\nbrightdata browser close --all\n```\n\n---\n\n### `status`\n\nCheck the status of an async snapshot job (returned by `--async` or `pipelines`).\n\n```bash\nbrightdata status <job-id> [options]\n```\n\n| Flag | Description |\n|---|---|\n| `--wait` | Poll until the job completes |\n| `--timeout <seconds>` | Polling timeout (default: `600`) |\n| `-o, --output <path>` | Write output to file |\n| `--json` / `--pretty` | JSON output (raw / indented) |\n| `-k, --api-key <key>` | Override API key |\n\n```bash\n# Check current status\nbrightdata status s_abc123xyz\n\n# Block until complete\nbrightdata status s_abc123xyz --wait --pretty\n\n# Custom timeout (5 minutes)\nbrightdata status s_abc123xyz --wait --timeout 300\n```\n\n---\n\n### `zones`\n\nList and inspect your Bright Data proxy zones.\n\n```bash\nbrightdata zones               # List all active zones\nbrightdata zones info <name>   # Show full details for a zone\n```\n\n```bash\n# Export all zones as JSON\nbrightdata zones --json -o zones.json\n\n# Inspect a specific zone\nbrightdata zones info my_unlocker_zone --pretty\n```\n\n---\n\n### `budget`\n\nView your account balance and per-zone cost and bandwidth usage. Read-only — no writes to the API.\n\n```bash\nbrightdata budget                     # Show account balance (quick view)\nbrightdata budget balance             # Account balance + pending charges\nbrightdata budget zones               # Cost & bandwidth table for all zones\nbrightdata budget zone <name>         # Detailed cost & bandwidth for one zone\n```\n\n| Flag | Description |\n|---|---|\n| `--from <datetime>` | Start of date range (e.g. `2024-01-01T00:00:00`) |\n| `--to <datetime>` | End of date range |\n| `--json` / `--pretty` | JSON output (raw / indented) |\n| `-k, --api-key <key>` | Override API key |\n\n```bash\n# Current account balance\nbrightdata budget\n\n# Zone costs for January 2024\nbrightdata budget zones --from 2024-01-01T00:00:00 --to 2024-02-01T00:00:00\n\n# Detailed view of a specific zone\nbrightdata budget zone my_unlocker_zone\n```\n\n---\n\n### `skill`\n\nInstall Bright Data AI agent skills into your coding agent (Claude Code, Cursor, Copilot, etc.). Skills provide your agent with context and instructions for using Bright Data APIs effectively.\n\n```bash\nbrightdata skill add              # Interactive picker — choose skill + agent\nbrightdata skill add <name>       # Install a specific skill directly\nbrightdata skill list             # List all available Bright Data skills\n```\n\n**Available skills**\n\n| Skill | Description |\n|---|---|\n| `search` | Search Google and get structured JSON results |\n| `scrape` | Scrape any webpage as clean markdown with bot bypass |\n| `data-feeds` | Extract structured data from 40+ websites |\n| `bright-data-mcp` | Orchestrate 60+ Bright Data MCP tools |\n| `bright-data-best-practices` | Reference knowledge base for writing Bright Data code |\n\n```bash\n# Interactive — select skills and choose which agents to install to\nbrightdata skill add\n\n# Install the scrape skill directly\nbrightdata skill add scrape\n\n# See what's available\nbrightdata skill list\n```\n\n---\n\n### `add mcp`\n\nWrite a Bright Data MCP server entry into Claude Code, Cursor, or Codex config files using the API key already stored by `brightdata login`.\n\n```bash\nbrightdata add mcp                               # Interactive agent + scope prompts\nbrightdata add mcp --agent claude-code --global\nbrightdata add mcp --agent claude-code,cursor --project\nbrightdata add mcp --agent codex --global\n```\n\n| Flag | Description |\n|---|---|\n| `--agent <agents>` | Comma-separated targets: `claude-code,cursor,codex` |\n| `--global` | Install to the agent's global config file |\n| `--project` | Install to the current project's config file |\n\n**Config targets**\n\n| Agent | Global path | Project path |\n|---|---|---|\n| Claude Code | `~/.claude.json` | `.claude/settings.json` |\n| Cursor | `~/.cursor/mcp.json` | `.cursor/mcp.json` |\n| Codex | `$CODEX_HOME/mcp.json` or `~/.codex/mcp.json` | Not supported |\n\nThe command writes the MCP server under `mcpServers[\"bright-data\"]`:\n\n```json\n{\n  \"mcpServers\": {\n    \"bright-data\": {\n      \"command\": \"npx\",\n      \"args\": [\"@brightdata/mcp\"],\n      \"env\": {\n        \"API_TOKEN\": \"<stored-api-key>\"\n      }\n    }\n  }\n}\n```\n\nBehavior notes:\n- Existing config is preserved; only `mcpServers[\"bright-data\"]` is added or replaced.\n- If the target config contains invalid JSON, the CLI warns and offers to overwrite it in interactive mode.\n- In non-interactive mode, pass both `--agent` and the appropriate scope flag to skip prompts.\n\n---\n\n### `config`\n\nView and manage CLI configuration.\n\n```bash\nbrightdata config                              # Show all config\nbrightdata config get <key>                    # Get a single value\nbrightdata config set <key> <value>            # Set a value\n```\n\n| Key | Description |\n|---|---|\n| `default_zone_unlocker` | Default zone for `scrape` and `search` |\n| `default_zone_serp` | Default zone for `search` (overrides unlocker zone) |\n| `default_format` | Default output format: `markdown` or `json` |\n| `api_url` | Override the Bright Data API base URL |\n\n```bash\nbrightdata config set default_zone_unlocker my_zone\nbrightdata config set default_format json\n```\n\n---\n\n### `login` / `logout`\n\n```bash\nbrightdata login                      # Interactive login\nbrightdata login --api-key <key>      # Non-interactive\nbrightdata logout                     # Clear saved credentials\n```\n\n---\n\n## Configuration\n\nConfig is stored in an OS-appropriate location:\n\n| OS | Path |\n|---|---|\n| macOS | `~/Library/Application Support/brightdata-cli/` |\n| Linux | `~/.config/brightdata-cli/` |\n| Windows | `%APPDATA%\\brightdata-cli\\` |\n\nTwo files are stored:\n- `credentials.json` — API key\n- `config.json` — zones, output format, preferences\n\n**Priority order** (highest → lowest):\n\n```\nCLI flags  →  Environment variables  →  config.json  →  Defaults\n```\n\n---\n\n## Environment Variables\n\n| Variable | Description |\n|---|---|\n| `BRIGHTDATA_API_KEY` | API key (overrides stored credentials) |\n| `BRIGHTDATA_UNLOCKER_ZONE` | Default Web Unlocker zone |\n| `BRIGHTDATA_SERP_ZONE` | Default SERP zone |\n| `BRIGHTDATA_POLLING_TIMEOUT` | Default polling timeout in seconds |\n| `BRIGHTDATA_BROWSER_ZONE` | Default Scraping Browser zone (default: `cli_browser`) |\n| `BRIGHTDATA_DAEMON_DIR` | Override the directory used for browser daemon socket, PID, and authentication token files |\n\n```bash\nBRIGHTDATA_API_KEY=xxx BRIGHTDATA_UNLOCKER_ZONE=my_zone \\\n  brightdata scrape https://example.com\n```\n\n---\n\n## Output Modes\n\nEvery command supports:\n\n| Mode | Flag | Behavior |\n|---|---|---|\n| Human-readable | *(default)* | Formatted table or markdown, with colors |\n| JSON | `--json` | Compact JSON to stdout |\n| Pretty JSON | `--pretty` | Indented JSON to stdout |\n| File | `-o <path>` | Write to file; format inferred from extension |\n\n**Auto-detected file formats:**\n\n| Extension | Format |\n|---|---|\n| `.json` | JSON |\n| `.md` | Markdown |\n| `.html` | HTML |\n| `.csv` | CSV |\n\n---\n\n## Pipe-Friendly Usage\n\nWhen stdout is not a TTY, colors and spinners are automatically disabled. Errors go to `stderr`, data to `stdout`.\n\n```bash\n# Extract URLs from search results\nbrightdata search \"nodejs tutorials\" --json | jq -r '.organic[].link'\n\n# Scrape and view with a markdown reader\nbrightdata scrape https://docs.github.com | glow -\n\n# Save scraped content to a file\nbrightdata scrape https://example.com -f markdown > page.md\n\n# Amazon product data as CSV\nbrightdata pipelines amazon_product \"https://amazon.com/dp/xxx\" --format csv > product.csv\n\n# Chain search → scrape\nbrightdata search \"top open source projects\" --json \\\n  | jq -r '.organic[0].link' \\\n  | xargs brightdata scrape\n```\n\n---\n\n## Dataset Types Reference\n\n```bash\nbrightdata pipelines list   # See all types in your terminal\n```\n\n### E-Commerce\n\n| Type | Platform |\n|---|---|\n| `amazon_product` | Amazon product page |\n| `amazon_product_reviews` | Amazon reviews |\n| `amazon_product_search` | Amazon search results |\n| `walmart_product` | Walmart product page |\n| `walmart_seller` | Walmart seller profile |\n| `ebay_product` | eBay listing |\n| `bestbuy_products` | Best Buy |\n| `etsy_products` | Etsy |\n| `homedepot_products` | Home Depot |\n| `zara_products` | Zara |\n| `google_shopping` | Google Shopping |\n\n### Professional Networks\n\n| Type | Platform |\n|---|---|\n| `linkedin_person_profile` | LinkedIn person |\n| `linkedin_company_profile` | LinkedIn company |\n| `linkedin_job_listings` | LinkedIn jobs |\n| `linkedin_posts` | LinkedIn posts |\n| `linkedin_people_search` | LinkedIn people search |\n| `crunchbase_company` | Crunchbase |\n| `zoominfo_company_profile` | ZoomInfo |\n\n### Social Media\n\n| Type | Platform |\n|---|---|\n| `instagram_profiles` | Instagram profiles |\n| `instagram_posts` | Instagram posts |\n| `instagram_reels` | Instagram reels |\n| `instagram_comments` | Instagram comments |\n| `facebook_posts` | Facebook posts |\n| `facebook_marketplace_listings` | Facebook Marketplace |\n| `facebook_company_reviews` | Facebook reviews |\n| `facebook_events` | Facebook events |\n| `tiktok_profiles` | TikTok profiles |\n| `tiktok_posts` | TikTok posts |\n| `tiktok_shop` | TikTok shop |\n| `tiktok_comments` | TikTok comments |\n| `x_posts` | X (Twitter) posts |\n| `youtube_profiles` | YouTube channels |\n| `youtube_videos` | YouTube videos |\n| `youtube_comments` | YouTube comments |\n| `reddit_posts` | Reddit posts |\n\n### Other\n\n| Type | Platform |\n|---|---|\n| `google_maps_reviews` | Google Maps reviews |\n| `google_play_store` | Google Play |\n| `apple_app_store` | Apple App Store |\n| `reuter_news` | Reuters news |\n| `github_repository_file` | GitHub repository files |\n| `yahoo_finance_business` | Yahoo Finance |\n| `zillow_properties_listing` | Zillow |\n| `booking_hotel_listings` | Booking.com |\n\n---\n\n## Troubleshooting\n\n**`Error: No Web Unlocker zone specified`**\n```bash\nbrightdata config set default_zone_unlocker <your-zone-name>\n# or\nexport BRIGHTDATA_UNLOCKER_ZONE=<your-zone-name>\n```\n\n**`Error: Invalid or expired API key`**\n```bash\nbrightdata login\n```\n\n**`Error: Access denied`**\n\nCheck zone permissions in the [Bright Data control panel](https://brightdata.com/cp).\n\n**`Error: Rate limit exceeded`**\n\nWait a moment and retry. Use `--async` for large jobs to avoid timeouts.\n\n**Async job is too slow**\n```bash\nbrightdata pipelines amazon_product <url> --timeout 1200\n# or\nexport BRIGHTDATA_POLLING_TIMEOUT=1200\n```\n\n**`No active browser session \"default\"`**\n```bash\n# Start a session first\nbrightdata browser open https://example.com\n```\n\n**Browser daemon won't start**\n```bash\n# Check if a stale socket file exists and clear it\nbrightdata browser close\n# Then retry\nbrightdata browser open https://example.com\n```\n\n**Element ref not found after interaction**\n\nRefs are re-assigned on every `snapshot` call. If you navigate or click (which may cause the page to change), take a fresh snapshot before using refs again:\n```bash\nbrightdata browser click e3\nbrightdata browser snapshot --compact   # refresh refs\nbrightdata browser type e5 \"text\"\n```\n\n**Garbled output in non-interactive terminal**\n\nColors and spinners are disabled automatically when not in a TTY. If you still see ANSI codes, add `| cat` at the end of your command.\n\n---\n\n## Links\n\n- [Bright Data Website](https://brightdata.com)\n- [Control Panel](https://brightdata.com/cp)\n- [API Key Settings](https://brightdata.com/cp/setting/users)\n- [API Reference](https://docs.brightdata.com/api-reference)\n- [Report an Issue](https://github.com/brightdata/cli/issues)\n\n---\n\n<p align=\"center\">\n  <sub>© Bright Data · ISC License</sub>\n</p>\n","readmeFilename":"README.md"}