{"_id":"@agent-infra/browser-search","_rev":"14-83f14fd6ae3c62157eeacdd125a7bf11","name":"@agent-infra/browser-search","dist-tags":{"beta":"0.0.3-beta.3","latest":"0.0.5"},"versions":{"0.0.1":{"name":"@agent-infra/browser-search","version":"0.0.1","_id":"@agent-infra/browser-search@0.0.1","maintainers":[{"name":"ulivz","email":"472590061@qq.com"},{"name":"ycjcl868","email":"45808948@qq.com"}],"dist":{"shasum":"66cde896f59efe84fd07d704ee8639564a35282f","tarball":"https://registry.npmjs.org/@agent-infra/browser-search/-/browser-search-0.0.1.tgz","fileCount":57,"integrity":"sha512-YTYXInertXAj47vMztmyV3tMJXcOmjmMNuAPvdyQXEbjlgOPS2mzrEv6iedmW4HI1Nu8TvSSuru6ddB/S3pTPw==","signatures":[{"sig":"MEQCIAizqeZNPiwHilp1gfRebc75YFfSfTGgIRnCIFEiNSsvAiBuiKxPt3RvIOlMBeuaaI3OrkaHvHakk42frmDO1EIXVg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":141270},"main":"dist/index.js","_from":"file:agent-infra-browser-search-0.0.1.tgz","types":"dist/index.d.ts","module":"dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"scripts":{"dev":"rslib build --watch","test":"vitest run","build":"rslib build","coverage":"vitest run --coverage","test:e2e":"vitest --config vitest.e2e.config.ts","benchmark":"ts-node examples/benchmark.ts","test:watch":"vitest"},"_npmUser":{"name":"ycjcl868","email":"45808948@qq.com"},"_resolved":"/private/var/folders/l5/0qm3ztc10szdj2_h13k2l8800000gn/T/96650892f089c83637c9846233a77908/agent-infra-browser-search-0.0.1.tgz","_integrity":"sha512-YTYXInertXAj47vMztmyV3tMJXcOmjmMNuAPvdyQXEbjlgOPS2mzrEv6iedmW4HI1Nu8TvSSuru6ddB/S3pTPw==","_npmVersion":"10.8.1","description":"<p>   <a href=\"https://npmjs.com/package/@agent-infra/browser-search?activeTab=readme\"><img src=\"https://img.shields.io/npm/v/@agent-infra/browser-search?style=flat-square&colorA=564341&colorB=EDED91\" alt=\"npm version\" /></a>   <a href=\"https://npmcharts.","directories":{},"_nodeVersion":"20.16.0","dependencies":{"@agent-infra/logger":"0.0.1-beta.1","@agent-infra/shared":"0.0.1","@agent-infra/browser":"0.0.1"},"_hasShrinkwrap":false,"devDependencies":{"rimraf":"4.1.0","vitest":"3.0.7","ts-node":"10.9.2","typescript":"4.9.4","@rslib/core":"0.5.3","@types/node":"20.14.8","@vitest/coverage-v8":"3.0.7"},"_npmOperationalInternal":{"tmp":"tmp/browser-search_0.0.1_1743474657504_0.5931352491438313","host":"s3://npm-registry-packages-npm-production"}},"0.0.2-beta.0":{"name":"@agent-infra/browser-search","version":"0.0.2-beta.0","_id":"@agent-infra/browser-search@0.0.2-beta.0","maintainers":[{"name":"ulivz","email":"472590061@qq.com"},{"name":"ycjcl868","email":"45808948@qq.com"}],"dist":{"shasum":"867b9095b08db2831e144a0e37e8a2df23bf87de","tarball":"https://registry.npmjs.org/@agent-infra/browser-search/-/browser-search-0.0.2-beta.0.tgz","fileCount":63,"integrity":"sha512-8Zz005L1aFo3NwSeBGiJZ4wVLS+U6kovIOK2t2WEZxthsffJ9diZYe1bpKO8hbEADVPPq7tvj6nlthtCBWA3rw==","signatures":[{"sig":"MEYCIQCaCwrEj3oVBXKxcjDbtFO1Fmrg3dxFSu9O+jUcWyeLvgIhAJ6MnZ/BEWC5a50TUchQoattyzd8wN26NpPHzvZCqby+","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":198354},"main":"dist/index.js","_from":"file:agent-infra-browser-search-0.0.2-beta.0.tgz","types":"dist/index.d.ts","module":"dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"scripts":{"dev":"rslib build --watch","test":"vitest run","build":"rslib build","coverage":"vitest run --coverage","test:e2e":"vitest --config vitest.e2e.config.ts","benchmark":"ts-node examples/benchmark.ts","test:watch":"vitest"},"_npmUser":{"name":"ycjcl868","email":"45808948@qq.com"},"_resolved":"/private/var/folders/l5/0qm3ztc10szdj2_h13k2l8800000gn/T/585ef257ebe151647d1aa0eacfacfe96/agent-infra-browser-search-0.0.2-beta.0.tgz","_integrity":"sha512-8Zz005L1aFo3NwSeBGiJZ4wVLS+U6kovIOK2t2WEZxthsffJ9diZYe1bpKO8hbEADVPPq7tvj6nlthtCBWA3rw==","_npmVersion":"10.8.1","description":"<p>   <a href=\"https://npmjs.com/package/@agent-infra/browser-search?activeTab=readme\"><img src=\"https://img.shields.io/npm/v/@agent-infra/browser-search?style=flat-square&colorA=564341&colorB=EDED91\" alt=\"npm version\" /></a>   <a href=\"https://npmcharts.","directories":{},"_nodeVersion":"20.16.0","dependencies":{"@agent-infra/logger":"0.0.1","@agent-infra/shared":"0.0.1","@agent-infra/browser":"0.0.3-beta.0"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rimraf":"4.1.0","vitest":"3.0.7","ts-node":"10.9.2","typescript":"4.9.4","@rslib/core":"0.5.3","@types/node":"20.14.8","@vitest/coverage-v8":"3.0.7"},"_npmOperationalInternal":{"tmp":"tmp/browser-search_0.0.2-beta.0_1746608604344_0.08607816209112773","host":"s3://npm-registry-packages-npm-production"}},"0.0.2":{"name":"@agent-infra/browser-search","version":"0.0.2","_id":"@agent-infra/browser-search@0.0.2","maintainers":[{"name":"ulivz","email":"472590061@qq.com"},{"name":"ycjcl868","email":"45808948@qq.com"}],"dist":{"shasum":"9d0cc302c487c2cf609127dd453e130cba445a1a","tarball":"https://registry.npmjs.org/@agent-infra/browser-search/-/browser-search-0.0.2.tgz","fileCount":63,"integrity":"sha512-BDE2Df8UC2onPLgzM8UO37dE0AFd/a7bI+hqvKNeLzJ9x4gFS1UPiDLImkW55PX8GYym5X+NuvVjBx137BFHIQ==","signatures":[{"sig":"MEUCIAJ0DEIYePl1O2xyN+wgiCMTlEnwctUjUsB0ozdq/k25AiEAiBEyPBDYlc7ov+6tbfxWYrXToUb8E8S1YM/Sx4s6xs8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":198340},"main":"dist/index.js","_from":"file:agent-infra-browser-search-0.0.2.tgz","types":"dist/index.d.ts","module":"dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"scripts":{"dev":"rslib build --watch","test":"vitest run","build":"rslib build","coverage":"vitest run --coverage","test:e2e":"vitest --config vitest.e2e.config.ts","benchmark":"ts-node examples/benchmark.ts","test:watch":"vitest"},"_npmUser":{"name":"ycjcl868","email":"45808948@qq.com"},"_resolved":"/private/var/folders/xj/zdqmfjv57hng5ll7fglkyffh0000gp/T/5828b46bb377a0655fe1366f00ae50de/agent-infra-browser-search-0.0.2.tgz","_integrity":"sha512-BDE2Df8UC2onPLgzM8UO37dE0AFd/a7bI+hqvKNeLzJ9x4gFS1UPiDLImkW55PX8GYym5X+NuvVjBx137BFHIQ==","_npmVersion":"10.9.2","description":"<p>   <a href=\"https://npmjs.com/package/@agent-infra/browser-search?activeTab=readme\"><img src=\"https://img.shields.io/npm/v/@agent-infra/browser-search?style=flat-square&colorA=564341&colorB=EDED91\" alt=\"npm version\" /></a>   <a href=\"https://npmcharts.","directories":{},"_nodeVersion":"22.15.0","dependencies":{"@agent-infra/logger":"0.0.1","@agent-infra/shared":"0.0.1","@agent-infra/browser":"0.1.0"},"_hasShrinkwrap":false,"devDependencies":{"rimraf":"4.1.0","vitest":"3.0.7","ts-node":"10.9.2","typescript":"4.9.4","@rslib/core":"0.5.3","@types/node":"20.14.8","@vitest/coverage-v8":"3.0.7"},"_npmOperationalInternal":{"tmp":"tmp/browser-search_0.0.2_1747647740100_0.48432436959734404","host":"s3://npm-registry-packages-npm-production"}},"0.0.3-beta.1":{"name":"@agent-infra/browser-search","version":"0.0.3-beta.1","_id":"@agent-infra/browser-search@0.0.3-beta.1","maintainers":[{"name":"ulivz","email":"472590061@qq.com"},{"name":"ycjcl868","email":"45808948@qq.com"}],"dist":{"shasum":"89e48b4ffe48fed8563774483988e29f32130fa5","tarball":"https://registry.npmjs.org/@agent-infra/browser-search/-/browser-search-0.0.3-beta.1.tgz","fileCount":63,"integrity":"sha512-9Si7KdL4JTrzPBYNp8OjFnSR7+G81JzBhiStyob5/aRdl5mIL7j75U40GqrycP54LmcoP7EJIs1ZSo/xDLaEWg==","signatures":[{"sig":"MEQCIDwjhcc3fo8cA8tVvnUfxNhUNZyY1j/UjqoP+gMt1fkzAiAW+INnSyxTLrha6YQ8097g8Ito+YHuRcVj99fkNNlpJA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":198277},"main":"dist/index.js","_from":"file:agent-infra-browser-search-0.0.3-beta.1.tgz","types":"dist/index.d.ts","module":"dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"03ed4dbdf0cb75b87bce334cba3245d07e2de1e5","scripts":{"dev":"rslib build --watch","test":"vitest run","build":"rslib build","coverage":"vitest run --coverage","test:e2e":"vitest --config vitest.e2e.config.ts","benchmark":"ts-node examples/benchmark.ts","test:watch":"vitest"},"_npmUser":{"name":"ulivz","email":"472590061@qq.com"},"_resolved":"/private/var/folders/m4/x5d1p2cn3s987pgtnj0yvyrr0000gn/T/6a451401b19d4b2143340836b681a61a/agent-infra-browser-search-0.0.3-beta.1.tgz","_integrity":"sha512-9Si7KdL4JTrzPBYNp8OjFnSR7+G81JzBhiStyob5/aRdl5mIL7j75U40GqrycP54LmcoP7EJIs1ZSo/xDLaEWg==","_npmVersion":"10.9.2","description":"<p>   <a href=\"https://npmjs.com/package/@agent-infra/browser-search?activeTab=readme\"><img src=\"https://img.shields.io/npm/v/@agent-infra/browser-search?style=flat-square&colorA=564341&colorB=EDED91\" alt=\"npm version\" /></a>   <a href=\"https://npmcharts.","directories":{},"_nodeVersion":"22.15.0","dependencies":{"@agent-infra/logger":"0.0.1","@agent-infra/shared":"0.0.1","@agent-infra/browser":"0.1.1-beta.0"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rimraf":"4.1.0","vitest":"3.0.7","ts-node":"10.9.2","typescript":"4.9.4","@rslib/core":"0.5.3","@types/node":"20.14.8","@vitest/coverage-v8":"3.0.7"},"_npmOperationalInternal":{"tmp":"tmp/browser-search_0.0.3-beta.1_1748446343294_0.6656786498618821","host":"s3://npm-registry-packages-npm-production"}},"0.0.3-beta.2":{"name":"@agent-infra/browser-search","version":"0.0.3-beta.2","_id":"@agent-infra/browser-search@0.0.3-beta.2","maintainers":[{"name":"ulivz","email":"472590061@qq.com"},{"name":"ycjcl868","email":"45808948@qq.com"}],"dist":{"shasum":"72808caba1143360f65eff72db891bd1efbc3135","tarball":"https://registry.npmjs.org/@agent-infra/browser-search/-/browser-search-0.0.3-beta.2.tgz","fileCount":63,"integrity":"sha512-189rbxc+Fa7L+zYl9QJasqz4plvgzfBdiFs4y7Ndnh17cqql9/NoB+3bF4AdXuNV9KXmKfEs+b8lgRmBX2ntlA==","signatures":[{"sig":"MEUCIAVS8ctWn7nlCMJU+9vBdMz4jAn+rxd2dvDDTj2jsCFmAiEAyCznlqGwbZdw1QPq/0DbqggLPttv1Cov/8xNuLju3oU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":198277},"main":"dist/index.js","_from":"file:agent-infra-browser-search-0.0.3-beta.2.tgz","types":"dist/index.d.ts","module":"dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"scripts":{"dev":"rslib build --watch","test":"vitest run","build":"rslib build","coverage":"vitest run --coverage","test:e2e":"vitest --config vitest.e2e.config.ts","benchmark":"ts-node examples/benchmark.ts","test:watch":"vitest"},"_npmUser":{"name":"ycjcl868","email":"45808948@qq.com"},"_resolved":"/private/var/folders/xj/zdqmfjv57hng5ll7fglkyffh0000gp/T/281cccd06fbcb7202809089c3acfe2fd/agent-infra-browser-search-0.0.3-beta.2.tgz","_integrity":"sha512-189rbxc+Fa7L+zYl9QJasqz4plvgzfBdiFs4y7Ndnh17cqql9/NoB+3bF4AdXuNV9KXmKfEs+b8lgRmBX2ntlA==","_npmVersion":"10.9.2","description":"<p>   <a href=\"https://npmjs.com/package/@agent-infra/browser-search?activeTab=readme\"><img src=\"https://img.shields.io/npm/v/@agent-infra/browser-search?style=flat-square&colorA=564341&colorB=EDED91\" alt=\"npm version\" /></a>   <a href=\"https://npmcharts.","directories":{},"_nodeVersion":"22.15.0","dependencies":{"@agent-infra/logger":"0.0.1","@agent-infra/shared":"0.0.1","@agent-infra/browser":"0.1.1-beta.1"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rimraf":"4.1.0","vitest":"3.0.7","ts-node":"10.9.2","typescript":"4.9.4","@rslib/core":"0.5.3","@types/node":"20.14.8","@vitest/coverage-v8":"3.0.7"},"_npmOperationalInternal":{"tmp":"tmp/browser-search_0.0.3-beta.2_1748450134935_0.3065368999270002","host":"s3://npm-registry-packages-npm-production"}},"0.0.3-beta.3":{"name":"@agent-infra/browser-search","version":"0.0.3-beta.3","_id":"@agent-infra/browser-search@0.0.3-beta.3","maintainers":[{"name":"ulivz","email":"472590061@qq.com"},{"name":"ycjcl868","email":"45808948@qq.com"}],"dist":{"shasum":"a26c330e29f118a55220d77e69b957e705f48c80","tarball":"https://registry.npmjs.org/@agent-infra/browser-search/-/browser-search-0.0.3-beta.3.tgz","fileCount":63,"integrity":"sha512-noUVcSw8Ca0dPg7oYBOh3R/WQMZ/FmeLmwIXDEeD0ydMSnLQR6zAz98W+nzzZIYDc6uvio56T1XFIriO3iyinQ==","signatures":[{"sig":"MEUCIQDa7E0Qf8SyneoIeGFYVMzgPOFr8PBsxSkkYa/MOC/u/wIgeWsDMhecCatfLtTHfm6kCd0TyoH1nrOWhh1OY4S8aQc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":198284},"main":"dist/index.js","_from":"file:agent-infra-browser-search-0.0.3-beta.3.tgz","types":"dist/index.d.ts","module":"dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"03ed4dbdf0cb75b87bce334cba3245d07e2de1e5","scripts":{"dev":"rslib build --watch","test":"vitest run","build":"rslib build","coverage":"vitest run --coverage","test:e2e":"vitest --config vitest.e2e.config.ts","benchmark":"ts-node examples/benchmark.ts","test:watch":"vitest"},"_npmUser":{"name":"ulivz","email":"472590061@qq.com"},"_resolved":"/private/var/folders/m4/x5d1p2cn3s987pgtnj0yvyrr0000gn/T/fa86e0bcee944fa23a27f1254bbcade2/agent-infra-browser-search-0.0.3-beta.3.tgz","_integrity":"sha512-noUVcSw8Ca0dPg7oYBOh3R/WQMZ/FmeLmwIXDEeD0ydMSnLQR6zAz98W+nzzZIYDc6uvio56T1XFIriO3iyinQ==","_npmVersion":"10.9.2","description":"<p>   <a href=\"https://npmjs.com/package/@agent-infra/browser-search?activeTab=readme\"><img src=\"https://img.shields.io/npm/v/@agent-infra/browser-search?style=flat-square&colorA=564341&colorB=EDED91\" alt=\"npm version\" /></a>   <a href=\"https://npmcharts.","directories":{},"_nodeVersion":"22.15.0","dependencies":{"@agent-infra/logger":"0.0.1","@agent-infra/shared":"0.0.2-beta.0","@agent-infra/browser":"0.1.1-beta.2"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rimraf":"4.1.0","vitest":"3.0.7","ts-node":"10.9.2","typescript":"4.9.4","@rslib/core":"0.5.3","@types/node":"20.14.8","@vitest/coverage-v8":"3.0.7"},"_npmOperationalInternal":{"tmp":"tmp/browser-search_0.0.3-beta.3_1748541109644_0.9374763763606586","host":"s3://npm-registry-packages-npm-production"}},"0.0.3":{"name":"@agent-infra/browser-search","version":"0.0.3","_id":"@agent-infra/browser-search@0.0.3","maintainers":[{"name":"ulivz","email":"472590061@qq.com"},{"name":"ycjcl868","email":"45808948@qq.com"}],"dist":{"shasum":"14f067f0b6d72a27c8cf4d75acd7355062608670","tarball":"https://registry.npmjs.org/@agent-infra/browser-search/-/browser-search-0.0.3.tgz","fileCount":63,"integrity":"sha512-VjzQmixDpG6t4KQqWEz/xDmh6IfhP4Qd3/hCIbdqX2ViixwB/Dcsx+m96WGrIjMio1oNcJAJg4SeJklcat4juA==","signatures":[{"sig":"MEYCIQDH7DDPLt43mM7sxAuh7lOnHjtJ7IxLyCLOLMHyJbVRVwIhALElcUlKQGT6hJdN8Sk3mbCqoheFAuG2FmPRpFMK1YGc","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":198263},"main":"dist/index.js","_from":"file:agent-infra-browser-search-0.0.3.tgz","types":"dist/index.d.ts","module":"dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"scripts":{"dev":"rslib build --watch","test":"vitest run","build":"rslib build","coverage":"vitest run --coverage","test:e2e":"vitest --config vitest.e2e.config.ts","benchmark":"ts-node examples/benchmark.ts","test:watch":"vitest"},"_npmUser":{"name":"ycjcl868","email":"45808948@qq.com"},"_resolved":"/private/var/folders/xj/zdqmfjv57hng5ll7fglkyffh0000gp/T/2bad9c05cba9c84289b43386410f0aa0/agent-infra-browser-search-0.0.3.tgz","_integrity":"sha512-VjzQmixDpG6t4KQqWEz/xDmh6IfhP4Qd3/hCIbdqX2ViixwB/Dcsx+m96WGrIjMio1oNcJAJg4SeJklcat4juA==","_npmVersion":"10.9.2","description":"<p>   <a href=\"https://npmjs.com/package/@agent-infra/browser-search?activeTab=readme\"><img src=\"https://img.shields.io/npm/v/@agent-infra/browser-search?style=flat-square&colorA=564341&colorB=EDED91\" alt=\"npm version\" /></a>   <a href=\"https://npmcharts.","directories":{},"_nodeVersion":"22.15.0","dependencies":{"@agent-infra/logger":"0.0.1","@agent-infra/shared":"0.0.2","@agent-infra/browser":"0.1.1"},"_hasShrinkwrap":false,"devDependencies":{"rimraf":"4.1.0","vitest":"3.0.7","ts-node":"10.9.2","typescript":"4.9.4","@rslib/core":"0.5.3","@types/node":"20.14.8","@vitest/coverage-v8":"3.0.7"},"_npmOperationalInternal":{"tmp":"tmp/browser-search_0.0.3_1749011083080_0.1705655160762869","host":"s3://npm-registry-packages-npm-production"}},"0.0.4":{"name":"@agent-infra/browser-search","version":"0.0.4","_id":"@agent-infra/browser-search@0.0.4","maintainers":[{"name":"ulivz","email":"472590061@qq.com"},{"name":"ycjcl868","email":"45808948@qq.com"}],"dist":{"shasum":"f48237e5fe6182469faf8eafacf9213dea969045","tarball":"https://registry.npmjs.org/@agent-infra/browser-search/-/browser-search-0.0.4.tgz","fileCount":62,"integrity":"sha512-neIy3zic06wyZRg1WJG3qQoJwC9eKvIo6zoSAnqOC2NxXENEEgBMUZIgo5PAoE4bjvXOWlGIHFn7G5+bo8emew==","signatures":[{"sig":"MEUCIQCj0pzEQiFy0Tt0R/UzwBGnEcCBcsH2t7Ocx6SPPHtmeQIgJfZxpCOb59OhWv2nc7GUUI1Vv9w/Tzjkaupi6dOzYIs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":188679},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"6784315a8af87a2c54f12527b6a80f94c0914954","scripts":{"dev":"rslib build --watch","test":"vitest run","build":"rslib build","prepare":"npm run build","coverage":"vitest run --coverage","test:e2e":"vitest --config vitest.e2e.config.ts","benchmark":"ts-node examples/benchmark.ts","test:watch":"vitest","prepublishOnly":"pnpm run build"},"_npmUser":{"name":"ulivz","actor":{"name":"ulivz","type":"user","email":"472590061@qq.com"},"email":"472590061@qq.com"},"_npmVersion":"11.4.2","description":"<p>   <a href=\"https://npmjs.com/package/@agent-infra/browser-search?activeTab=readme\"><img src=\"https://img.shields.io/npm/v/@agent-infra/browser-search?style=flat-square&colorA=564341&colorB=EDED91\" alt=\"npm version\" /></a>   <a href=\"https://npmcharts.","directories":{},"_nodeVersion":"22.15.0","dependencies":{"@agent-infra/logger":"workspace:*","@agent-infra/shared":"workspace:*","@agent-infra/browser":"workspace:*"},"_hasShrinkwrap":false,"devDependencies":{"rimraf":"4.1.0","vitest":"3.0.7","ts-node":"10.9.2","typescript":"4.9.4","@rslib/core":"0.5.3","@types/node":"20.14.8","@vitest/coverage-v8":"3.0.7"},"_npmOperationalInternal":{"tmp":"tmp/browser-search_0.0.4_1751018976143_0.9125941253035701","host":"s3://npm-registry-packages-npm-production"}},"0.0.5":{"name":"@agent-infra/browser-search","version":"0.0.5","_id":"@agent-infra/browser-search@0.0.5","maintainers":[{"name":"ulivz","email":"472590061@qq.com"},{"name":"ycjcl868","email":"45808948@qq.com"}],"dist":{"shasum":"736e083db7ba82a4c0ba4b2c2f6962302f98002b","tarball":"https://registry.npmjs.org/@agent-infra/browser-search/-/browser-search-0.0.5.tgz","fileCount":63,"integrity":"sha512-IbegEsjCtrbkSa4assFOWeRMFSJGzTpT0p4quICgmb/UI7kb3ZLeBZVp9LN0fvQSxIriZ3wwWICxyP8Go4MOLA==","signatures":[{"sig":"MEUCIGmOrYHQrBliYZiENkxIJTOknPTeS4yCTcuUHIJzeWmEAiEA/2ERnVN/9qD0sZavL0IG3mc2ERiTG2vKZ75qhyqyGUQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":199946},"main":"dist/index.js","_from":"file:agent-infra-browser-search-0.0.5.tgz","types":"dist/index.d.ts","module":"dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"21c55645a0de564c499133bc21e3c1cfe838ee69","scripts":{"dev":"rslib build --watch","test":"vitest run","build":"rslib build","coverage":"vitest run --coverage","test:e2e":"vitest --config vitest.e2e.config.ts","benchmark":"ts-node examples/benchmark.ts","test:watch":"vitest"},"_npmUser":{"name":"ulivz","actor":{"name":"ulivz","type":"user","email":"472590061@qq.com"},"email":"472590061@qq.com"},"_resolved":"/private/var/folders/m4/x5d1p2cn3s987pgtnj0yvyrr0000gn/T/401c8fbbf6a1da6c44242a2abd8614fc/agent-infra-browser-search-0.0.5.tgz","_integrity":"sha512-IbegEsjCtrbkSa4assFOWeRMFSJGzTpT0p4quICgmb/UI7kb3ZLeBZVp9LN0fvQSxIriZ3wwWICxyP8Go4MOLA==","_npmVersion":"11.4.2","description":"<p>   <a href=\"https://npmjs.com/package/@agent-infra/browser-search?activeTab=readme\"><img src=\"https://img.shields.io/npm/v/@agent-infra/browser-search?style=flat-square&colorA=564341&colorB=EDED91\" alt=\"npm version\" /></a>   <a href=\"https://npmcharts.","directories":{},"_nodeVersion":"22.15.0","dependencies":{"@agent-infra/logger":"0.0.1","@agent-infra/shared":"0.0.2","@agent-infra/browser":"0.1.1"},"_hasShrinkwrap":false,"devDependencies":{"rimraf":"4.1.0","vitest":"3.0.7","ts-node":"10.9.2","typescript":"4.9.4","@rslib/core":"0.5.3","@types/node":"20.14.8","@vitest/coverage-v8":"3.0.7"},"_npmOperationalInternal":{"tmp":"tmp/browser-search_0.0.5_1751019781408_0.504454369060253","host":"s3://npm-registry-packages-npm-production"}}},"time":{"created":"2025-04-01T02:30:57.380Z","modified":"2026-05-14T05:36:13.284Z","0.0.1":"2025-04-01T02:30:57.712Z","0.0.2-beta.0":"2025-05-07T09:03:24.523Z","0.0.2":"2025-05-19T09:42:20.265Z","0.0.3-beta.1":"2025-05-28T15:32:23.493Z","0.0.3-beta.2":"2025-05-28T16:35:35.173Z","0.0.3-beta.3":"2025-05-29T17:51:49.839Z","0.0.3":"2025-06-04T04:24:43.272Z","0.0.4":"2025-06-27T10:09:36.316Z","0.0.5":"2025-06-27T10:23:01.715Z"},"description":"<p>   <a href=\"https://npmjs.com/package/@agent-infra/browser-search?activeTab=readme\"><img src=\"https://img.shields.io/npm/v/@agent-infra/browser-search?style=flat-square&colorA=564341&colorB=EDED91\" alt=\"npm version\" /></a>   <a href=\"https://npmcharts.","maintainers":[{"email":"songhn233@gmail.com","name":"songhn"},{"email":"oanakiaja@gmail.com","name":"oanakiaja"},{"email":"472590061@qq.com","name":"ulivz"},{"email":"45808948@qq.com","name":"ycjcl868"},{"email":"skychx@hotmail.com","name":"skychx"},{"email":"zhaoqinghao@bytedance.com","name":"zhaoheh"},{"email":"chenjianpersonal@gmail.com","name":"chenjian-bzh"}],"readme":"# @agent-infra/browser-search\n\n<p>\n  <a href=\"https://npmjs.com/package/@agent-infra/browser-search?activeTab=readme\"><img src=\"https://img.shields.io/npm/v/@agent-infra/browser-search?style=flat-square&colorA=564341&colorB=EDED91\" alt=\"npm version\" /></a>\n  <a href=\"https://npmcharts.com/compare/@agent-infra/browser-search?minimal=true\"><img src=\"https://img.shields.io/npm/dm/@agent-infra/browser-search.svg?style=flat-square&colorA=564341&colorB=EDED91\" alt=\"downloads\" /></a>\n  <a href=\"https://nodejs.org/en/about/previous-releases\"><img src=\"https://img.shields.io/node/v/@agent-infra/browser-search.svg?style=flat-square&colorA=564341&colorB=EDED91\" alt=\"node version\"></a>\n  <a href=\"https://github.com/web-infra-dev/rsbuild/blob/main/LICENSE\"><img src=\"https://img.shields.io/badge/License-Apache%202.0-blue.svg?style=flat-square&colorA=564341&colorB=EDED91\" alt=\"license\" /></a>\n</p>\n\nEnglish | [简体中文](./README.zh-CN.md)\n\nA tiny stealth-mode web search and content extraction library built on top of Puppeteer, inspired by [EGOIST](https://github.com/egoist)'s [local-web-search](https://github.com/egoist/local-web-search).\n\n## Features\n\n- 🔍 **Multi-Engine Search** - Support for Google, Bing, and Baidu search engines\n- 📑 **Content Extraction** - Extract readable content from web pages using Readability\n- 🚀 **Concurrent Processing** - Built-in queue system for efficient parallel processing\n- 🛡️ **Stealth Mode** - Advanced browser fingerprint spoofing\n- 📝 **Markdown Output** - Automatically converts HTML content to clean Markdown\n- ⚡ **Performance Optimized** - Smart request interception for faster page loads\n\n## Installation\n\n```bash\nnpm install @agent-infra/browser-search\n# or\nyarn add @agent-infra/browser-search\n# or\npnpm add @agent-infra/browser-search\n```\n\n## Quick Start\n\n```typescript\nimport { BrowserSearch } from '@agent-infra/browser-search';\nimport { ConsoleLogger } from '@agent-infra/logger';\n\n// Create a logger (optional)\nconst logger = new ConsoleLogger('[BrowserSearch]');\n\n// Initialize the search client\nconst browserSearch = new BrowserSearch({\n  logger,\n  browserOptions: {\n    headless: true,\n  },\n});\n\n// Perform a search\nconst results = await browserSearch.perform({\n  query: 'climate change solutions',\n  count: 5,\n});\n\nconsole.log(`Found ${results.length} results`);\nresults.forEach((result) => {\n  console.log(`Title: ${result.title}`);\n  console.log(`URL: ${result.url}`);\n  console.log(`Content preview: ${result.content.substring(0, 150)}...`);\n});\n```\n\n## API Reference\n\n### BrowserSearch\n\n#### Constructor\n\n```typescript\nconstructor(config?: BrowserSearchConfig)\n```\n\nConfiguration options:\n\n```typescript\ninterface BrowserSearchConfig {\n  logger?: Logger; // Custom logger\n  browser?: BrowserInterface; // Custom browser instance\n}\n```\n\n#### perform(options)\n\nPerforms a search and extracts content from result pages.\n\n```typescript\nasync perform(options: BrowserSearchOptions): Promise<SearchResult[]>\n```\n\nSearch options:\n\n```typescript\ninterface BrowserSearchOptions {\n  query: string | string[]; // Search query or array of queries\n  count?: number; // Maximum results to fetch\n  concurrency?: number; // Concurrent requests (default: 15)\n  excludeDomains?: string[]; // Domains to exclude\n  truncate?: number; // Truncate content length\n  browserOptions?: {\n    headless?: boolean; // Run in headless mode\n    proxy?: string; // Proxy server\n    executablePath?: string; // Custom browser path\n    profilePath?: string; // Browser profile path\n  };\n}\n```\n\n#### Response Type\n\n```typescript\ninterface SearchResult {\n  title: string; // Page title\n  url: string; // Page URL\n  content: string; // Extracted content in Markdown format\n}\n```\n\n## Advanced Usage\n\n### Multiple Queries\n\n```typescript\nconst results = await browserSearch.perform({\n  query: ['renewable energy', 'solar power technology'],\n  count: 10, // Will fetch approximately 5 results per query\n  concurrency: 5,\n});\n```\n\n### Domain Exclusion\n\n```typescript\nconst results = await browserSearch.perform({\n  query: 'artificial intelligence',\n  excludeDomains: ['reddit.com', 'twitter.com', 'youtube.com'],\n  count: 10,\n});\n```\n\n### Content Truncation\n\n```typescript\nconst results = await browserSearch.perform({\n  query: 'machine learning',\n  count: 5,\n  truncate: 1000, // Limit content to 1000 characters\n});\n```\n\n### Using with Custom Browser Instance\n\n```typescript\nimport { ChromeBrowser } from '@agent-infra/browser';\nimport { BrowserSearch } from '@agent-infra/browser-search';\n\nconst browser = new ChromeBrowser({\n  // Custom browser configuration\n});\n\nconst browserSearch = new BrowserSearch({\n  browser,\n});\n\nconst results = await browserSearch.perform({\n  query: 'typescript best practices',\n});\n```\n\n## Examples\n\nSee [examples](./examples/).\n\n\n## Credits\n\nThanks to:\n\n- [EGOIST](https://github.com/egoist) for creating a great AI chatbot product [ChatWise](https://chatwise.app/) from which we draw a lot of inspiration for local-browser based search.\n- The [puppeteer](https://github.com/puppeteer/puppeteer) project which helps us operate the browser better.\n\n## License\n\nCopyright (c) 2025 ByteDance, Inc. and its affiliates.\n\nLicensed under the Apache License, Version 2.0.\n","readmeFilename":"README.md"}