One command reads the access log you already have. It shows which AI crawlers, search bots, and agents hit you, what they took, what that cost, and who ignored your robots.txt. No install on your servers, no signup, and the log never leaves your machine.
npx agentborder analyze --sample
60 seconds with the bundled demo log. Then point it at your own: npx agentborder analyze ./access.log
Press run. The calendar starts at this month, at today's bot levels. Then it starts moving, slowly at first, then faster, with bot growth paced to measured rates. The humans stay constant. The bots do not.
The growth is measured, not imagined. AI traffic to US retail sites grew 4,700% year over year (Adobe). Wikimedia reported crawler bandwidth up 50% in a year. Read the Docs found AI crawlers pulling 73 TB in a single month before anyone noticed. Once the calendar starts moving, the demo is a projection built on those rates, and it says so on screen.
They buy, book, write, and pay on their own now. Impressive, and new in a way that matters: a purchase no human made, a review no human wrote, scraping at machine speed. Old bot playbooks assume bots only read. And the population keeps growing, AI traffic to US retail sites was up 4,700% year over year (Adobe).
Whatever you decide to do about it, allow, block, charge, or defend, every option starts the same way: knowing which agents are on your site and what they are doing. That part takes one command.
Terminal summary in 60 seconds. Full html report with every judgment traced to a source. This is real output from the bundled sample log.
Every bot named and grouped: training crawlers, AI search, assistants, agents, SEO tools, unknown automation. 51 documented bots, cross-checked against the community ai.robots.txt list.
dataset versioned, sources includedYour robots.txt is parsed per RFC 9309 and checked against what each bot actually requested. Violations are counted per bot, not guessed.
basis: RFC 9309Bot bandwidth converted with your host's published unit price. The formula is printed next to the number, with the source. Estimates say they are estimates.
Vercel, Netlify, CloudFront presetsPeak requests per minute per bot, 404 crawl waste, and POST attempts by bots. The patterns that take sites down or fill them with spam.
computed from your log timestampsThe report ends with a config generated from your own traffic. It starts in monitor mode, which blocks nothing and records what would happen.
you review every line before enforcingRun it again with --compare and see what changed: bot share, violations, new bots that showed up since last time.
--card makes a shareable summary imageThe same package includes middleware. Three lines, zero dependencies. It starts in monitor mode and blocks nothing until you turn enforcement on, starting at 1% of bot traffic.
const { createAgentborder } = require('agentborder');
app.use(createAgentborder(config)); // monitor mode{ "category": "ai-search",
"action": "product.read", "effect": "allow" }
{ "category": "ai-crawler",
"action": "*", "effect": "block" }AGENTBORDER_MODE=enforce AGENTBORDER_ENFORCE_PERCENT=1
The standards and data this tool is built on.
Citations, not endorsements. Every catalog entry ships with its source URL and retrieval date, so you can check each one.
npx agentborder analyze ./access.log --robots ./robots.txt