Introduction
What Botscent is, what its two halves do, and what it does not do.
Botscent tells your site if an AI agent, not a person, is browsing it, and which agent. If the evidence shows which agent it is, Botscent names it.
{ type: 'agent', agent_name: 'claude-chrome', reasons: ['claude.marker.active'] }Two halves
Botscent has two halves. Both return the same verdict.
- The server half reads the headers of one request. It runs in your server or at the edge, in TypeScript or Python.
- The page half watches the page for evidence of an agent. It is a script of about 5 KB gzipped.
Most sites install both halves. An agent that signs or declares its requests shows itself to the server half. An agent that works in a person's own browser shows itself to the page half only.
What it is not
- It does not prove that a person is present.
humanmeans that Botscent saw no agent evidence. - It does not block anything. Your code decides what to do with the verdict.
- It does not detect automation built to look like a person.
- It does not call a service. The server half makes no outbound request, and the page half makes no network request.