BotD 2.0.0
NOT RUN
No result yet.
Latest completed check; this card is not a continuous monitor.
BotD checks automation signatures. Agent or Human adds live evidence changes, expiry, and analytics history—and can use BotD as an optional evidence source.
Use BotD alone when you need a browser automation check. Choose Agent or Human when your product needs to follow evidence over time, observe cooperative host or tool activity, and preserve that context in analytics.
No accuracy victory claimed. We have not established higher detection accuracy than BotD. Interaction heuristics are experimental; declarations and tool use do not authenticate an AI agent. Free, MIT-licensed, client-side detection is shared ground.
| Capability | BotD 2.0.0 | Agent or Human 0.8 |
|---|---|---|
| Automation signatures | Broader browser/runtime detector set | Core signals; optionally incorporates BotD |
| Result | Bot detected or not detected, with bot kind | Qualified segments, reasons, and explicit uncertainty |
| Changes over time | You manage recollection and comparison | State and assessment events; evidence expiry |
| Session history | You build it | Bounded transitions and wall-clock time by segment |
| Agent cooperation | No host-handoff or WebMCP wrapper in the inspected API | Host declarations and instrumented tool-use evidence |
| Behavior | Browser/environment inspection | Optional, uncalibrated mouse and interaction heuristics |
| Data sent by default | npm build has optional sampled installation telemetry | Core sends nothing; comparison disables BotD telemetry |
Sources: BotD API, detectors, our API contracts. BotD exposes per-detector results too. Not detected never proves human.
The left result is an independent BotD check. On request, its output also becomes expiring evidence in the monitor on the right. No raw BotD components are exported. BotD is loaded from this site only after you press the button, with monitoring: false. Its optional checks may inspect user-agent and browser properties; our core does not parse user agents.
BotD has not been loaded.
NOT RUN
No result yet.
Latest completed check; this card is not a continuous monitor.
CHECKING
Positive BotD evidence is heuristic automation evidence, never an AI identity. A negative result never declares a human. Provider evidence expires after 60 seconds unless refreshed.
Browse this page or run the comparison. The history records changes locally. Counts include changes even after older entries leave the bounded display. Time includes idle and background time, not engagement.
No transitions yet.
An unchanged browser environment can contain new evidence: your host explicitly starts an agent action, releases it, or a WebMCP tool executes. You need timestamps, listeners, expiry, and the exposure-time segment to interpret what follows.
The automated test suite covers those transitions, negative BotD results, provider failure, stale-result expiry, and cleanup. These are contract tests, not human-versus-agent accuracy benchmarks.
Read the integration and evaluation guide ↗import { load } from '@fingerprintjs/botd';
import { createSessionMonitor, connectBotD,
createSessionHistory } from 'agent-or-human';
const monitor = createSessionMonitor();
const history = createSessionHistory(monitor);
const detector = await load({ monitoring: false });
const botd = connectBotD(monitor, detector);
await botd.refresh(); // recollects; evidence expires after 60 seconds
monitor.addEventListener('statechange', event => {
console.log(event.previousState, event.state);
});
console.log(history.getSummary());
// On unmount: history.stop(); botd.stop(); monitor.stop();