{"_id":"@aiedx/fetchlens-core","_rev":"3-f92094fa4ee3f4d9ef81b5656eb7dbee","name":"@aiedx/fetchlens-core","dist-tags":{"latest":"0.1.2"},"versions":{"0.1.0":{"name":"@aiedx/fetchlens-core","version":"0.1.0","keywords":["ai","bot-detection","fetchlens","analytics","middleware","core"],"author":{"name":"AIEDX Private Limited"},"license":"SEE LICENSE IN LICENSE","_id":"@aiedx/fetchlens-core@0.1.0","maintainers":[{"name":"adssidhu86","email":"aiedx.org@gmail.com"}],"homepage":"https://fetchlens.ai","dist":{"shasum":"d165cc2dad158f63eac30fd3e5d4e21835e3d0b0","tarball":"https://registry.npmjs.org/@aiedx/fetchlens-core/-/fetchlens-core-0.1.0.tgz","fileCount":7,"integrity":"sha512-dJRpfpzlEkv4lWkgt1MSNrCNXNgecf1W15FrDHNRcb7r785+LvjoNSndA6z258w2XE2GFWS+fSR7y5Mg6JAxZg==","signatures":[{"sig":"MEYCIQDW0cP3dhJXZA+uR4eAQ0ESAKD4CYBW6G+4I+MPmooimwIhAJ2vFOyDmdhxkyIFBuxSJr6j/OKzXMXp6o5wrh7YuYnd","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":35504},"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":"8f30427882ac23ff5baca9d2b610fd1cd5f0ebc3","scripts":{"dev":"tsup src/index.ts --format cjs,esm --dts --watch","build":"tsup src/index.ts --format cjs,esm --dts --clean"},"_npmUser":{"name":"adssidhu86","email":"aiedx.org@gmail.com"},"_npmVersion":"10.7.0","description":"Shared bot detection, vuln scanning, and event helpers for FetchLens middleware packages","directories":{},"_nodeVersion":"22.2.0","_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","typescript":"^5.9.3"},"_npmOperationalInternal":{"tmp":"tmp/fetchlens-core_0.1.0_1776290017763_0.5364796684965738","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@aiedx/fetchlens-core","version":"0.1.1","keywords":["ai","bot-detection","fetchlens","analytics","middleware","core"],"author":{"name":"AIEDX Private Limited"},"license":"SEE LICENSE IN LICENSE","_id":"@aiedx/fetchlens-core@0.1.1","maintainers":[{"name":"adssidhu86","email":"aiedx.org@gmail.com"}],"homepage":"https://fetchlens.ai","dist":{"shasum":"584df253d80884c2b4f0f26a1c9f64fe7ef2f124","tarball":"https://registry.npmjs.org/@aiedx/fetchlens-core/-/fetchlens-core-0.1.1.tgz","fileCount":7,"integrity":"sha512-YAjdxDdzyNUP3JH5cCv7W7gw8cOh8G++AzvRCq1O7GPPLUi9TBMpJpzAq7d7DrWkUhhzvYKlbWuplcQ4cw+dDA==","signatures":[{"sig":"MEUCIErqugWpNb5wgvaKPczOEP7vIVhz+wJovtpiQGT81NkaAiEA6ft61bFbcLHEWSDuJn3ToNiEgEXB6T29Tl70+6LRucU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":27873},"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":"8f30427882ac23ff5baca9d2b610fd1cd5f0ebc3","scripts":{"dev":"tsup src/index.ts --format cjs,esm --dts --watch","build":"tsup src/index.ts --format cjs,esm --dts --clean"},"_npmUser":{"name":"adssidhu86","email":"aiedx.org@gmail.com"},"_npmVersion":"10.7.0","description":"Shared bot detection, vuln scanning, and event helpers for FetchLens middleware packages","directories":{},"_nodeVersion":"22.2.0","_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","typescript":"^5.9.3"},"_npmOperationalInternal":{"tmp":"tmp/fetchlens-core_0.1.1_1776290495207_0.02468416834520415","host":"s3://npm-registry-packages-npm-production"}},"0.1.2":{"name":"@aiedx/fetchlens-core","version":"0.1.2","description":"Shared bot detection, vuln scanning, and event helpers for FetchLens middleware packages","main":"./dist/index.js","module":"./dist/index.mjs","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"scripts":{"build":"tsup src/index.ts --format cjs,esm --dts --clean","dev":"tsup src/index.ts --format cjs,esm --dts --watch"},"devDependencies":{"tsup":"^8.5.1","typescript":"^5.9.3"},"keywords":["ai","bot-detection","fetchlens","analytics","middleware","core"],"author":{"name":"AIEDX Private Limited"},"license":"SEE LICENSE IN LICENSE","homepage":"https://fetchlens.ai","_id":"@aiedx/fetchlens-core@0.1.2","gitHead":"5839ca96e4f896ed071d101a1cf96bf69be985b9","_nodeVersion":"22.2.0","_npmVersion":"10.7.0","dist":{"integrity":"sha512-zj6JkFmVKVLQW8OykkuDK94qf0skD4jzTqjeQLL57LRbKTO4oTWxYzwJyHb5oaosP6HBOuJYlK6fLF7wWpGa/A==","shasum":"2337566be880b35ca323f89b4132aa26bbbf3669","tarball":"https://registry.npmjs.org/@aiedx/fetchlens-core/-/fetchlens-core-0.1.2.tgz","fileCount":7,"unpackedSize":33267,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIFtnRyeVAoqc7fjKYNCRiHOt6bocTY5gtSf7C7AZLto+AiEA27JfqeQOwblcGz1DJ8JtfN+ScAihAjWly8jiNqrRN+M="}]},"_npmUser":{"name":"adssidhu86","email":"aiedx.org@gmail.com"},"directories":{},"maintainers":[{"name":"adssidhu86","email":"aiedx.org@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/fetchlens-core_0.1.2_1776963377397_0.1353612223231624"},"_hasShrinkwrap":false}},"time":{"created":"2026-04-15T21:53:37.654Z","modified":"2026-04-23T16:56:17.677Z","0.1.0":"2026-04-15T21:53:37.927Z","0.1.1":"2026-04-15T22:01:35.380Z","0.1.2":"2026-04-23T16:56:17.552Z"},"author":{"name":"AIEDX Private Limited"},"license":"SEE LICENSE IN LICENSE","homepage":"https://fetchlens.ai","keywords":["ai","bot-detection","fetchlens","analytics","middleware","core"],"description":"Shared bot detection, vuln scanning, and event helpers for FetchLens middleware packages","maintainers":[{"name":"adssidhu86","email":"aiedx.org@gmail.com"}],"readme":"# @aiedx/fetchlens-core\n\nShared bot detection engine and utilities for FetchLens middleware packages.\n\nThis package is used internally by:\n- [`@aiedx/fetchlens-next`](https://www.npmjs.com/package/@aiedx/fetchlens-next) -- Next.js middleware\n- [`@aiedx/fetchlens-cloudflare`](https://www.npmjs.com/package/@aiedx/fetchlens-cloudflare) -- Cloudflare Workers & Pages middleware\n\n## What's included\n\n- **60+ bot signatures** across 3 tiers: AI bots, search/SEO bots, scrapers\n- **Vulnerability scan URL patterns** to block probes for `.php`, `/wp-admin`, `.env`, etc.\n- **Event helpers** for sending detection payloads to the FetchLens API\n- **TypeScript types** shared across all platform packages\n\n## Direct usage\n\nMost users should install a platform-specific package instead. But if you're building a custom integration:\n\n```typescript\nimport { detectBot, isVulnScan, AI_BOT_SIGNATURES } from '@aiedx/fetchlens-core'\n\nconst bot = detectBot(request.headers.get('user-agent') ?? '')\nif (bot) {\n  console.log(`Detected: ${bot.name} (${bot.provider}) [${bot.category}]`)\n}\n\nif (isVulnScan(new URL(request.url).pathname)) {\n  return new Response('Forbidden', { status: 403 })\n}\n```\n\n## License\n\nProprietary. Copyright (c) 2026 AIEDX Private Limited.\n","readmeFilename":"README.md"}