Agents drift.
Before your users do.
The behavioral verification layer your observability stack is missing.
Fingerprint execution shape — tools, call graphs, errorstool sequences, call graphs, error patterns
Block regressions before merge — gate every PRpolicy-gated on every PR
Privacy-safe by default — structure only, no contentcaptures execution structure, never prompts or responses
Every agent. Every run.
One view.
Fleet-wide visibility
Health scores, drift status, and error rates — every agent, one screen.




Included with Pro · Hosted at app.spooled.ai
Same code. Different behavior.
We catch behavioral drift.
Behavioral fingerprinting
Every agent run produces a structural fingerprint from its execution shape — which tools ran, in what order, how many times. 3D similarity scoring catches drift that output evals miss.
Learn more →Built-in drift signals
Latency spikes, tool changes, retry explosions, token usage spikes, schema drift — detected automatically. Zero assertions to write.
Learn more →Privacy-safe by default
Spooled analyzes execution structure, not call content. Prompts, responses, and tool payloads are stripped at the SDK level before storage. See our privacy architecture for exactly what is and isn't transmitted.
Learn more →CI-native
GitHub Action drops into your pipeline. Policy YAML gates merges. Every PR gets a behavioral diff, inline signal annotations, and a Spooled Score.
Learn more →Three steps. Zero assertions.
One line instruments your agent. Spooled captures tool sequences, timing, and decision patterns — not content.
import spooled spooled.init("my_agent") # That's it. Runs normally.
Generate behavioral fingerprints. Commit them to git alongside your code.
$ spooled ci update-baseline \ --from .spooled/traces/ \ --out baselines/ \ --min-runs 3
Run in CI on every PR. Spooled compares execution shapes and blocks regressions.
$ spooled ci run \ --suite tests/agents/ \ --baseline baselines/ my_agent: MATCH (score: 97) ✓ RESULT: PASS ✓
Other tools watch what your agent said.
We watch what it did.
Spooled
Observability tools
The kind of drift Spooled catches.
Sanctions check silently dropped
API schema renamed a field. Agent stopped detecting international operations. Still recommended 'proceed' on a sanctioned entity. Spooled caught it.
Customer response vanished
KB refresh added a fraud policy. Agent started escalating fraud tickets without sending the acknowledgment response. Customers got silence.
Approval rate drifted +10pp
One 'reduce friction' prompt note shifted the portfolio from 30% to 40% approvals. Every individual decision was defensible. The aggregate wasn't.
Retry path appeared
Primary provider went flaky. Agent retried and succeeded — but the retry path was a new fingerprint. Spooled named the shift before latency metrics noticed.
One price. Everything included.
Free is fully featured locally. Pro adds production observability, dashboards, and team collaboration.
7-day free trial · Content-blind · Cancel anytime · No partial-month refunds
Free
$0freeFull-featured locally. No credit card, no backend required.
- ✓Unlimited agents and traces
- ✓Behavioral fingerprinting and diffing
- ✓Baselines, policy engine, merge blocking
- ✓Full PR comments and GitHub annotations
- ✓Hash chain verification
- ✓All local CLI commands
Pro
$99/monthProduction observability. Dashboard, alerts, audit trail, team access.
- ✓7-day free trial
- ✓Everything in Free
- ✓Backend trace ingest from staging/production
- ✓Hosted dashboard with fleet view
- ✓Drift detection on every trace
- ✓Webhook drift alerts (Slack-compatible)
- ✓Audit log with 90-day retention
- ✓Up to 10 API keys
Larger team? hello@spooled.ai