Observed since 20 Oct, 21:49 UTC
No superseded metadata states collected. Unchanged observations do not create new revisions.
Detect when your AI agents get dumber. Open-source quality drift monitoring.
Detect when your AI agents get dumber.
Open-source quality drift monitoring for AI agents. Track agent outputs over time, detect quality degradation, and get alerts before your agents go off the rails.
Live Demo | API Docs | Roadmap | Contributing
AI agents degrade over time. Context pollution, error accumulation, prompt drift, and model updates silently erode output quality. By the time you notice, your users already have.
pip install agentdrift
from agentdrift import track_agent
@track_agent("my-agent")
def my_agent(query: str) -> str:
return llm.call(query)
Check drift status:
agentdrift status
┌──────────────────────────────────────┐
│ Agent Drift Status │
├──────────┬──────────┬───────┬───────┤
│ Agent │ Status │ Score │ Change│
├──────────┼──────────┼───────┼───────┤
│ my-agent │ STABLE │ 0.847 │ +2.1% │
│ qa-bot │ DRIFTING │ 0.612 │-18.3% │
└──────────┴──────────┴───────┴───────┘
Agent Call → Log Trace → Score Quality → Detect Drift → Alert
↓
Dashboard / OTel Export
@track_agent decorator or manual tracker.log()POST /api/traces)@agentdrift/sdk for Node.js agentspip install agentdrift[postgres])pip install agentdrift[dashboard]
agentdrift serve # API server on :8888
cd web && npm run dev # Dashboard on :3000
from agentdrift import AgentTracker
tracker = AgentTracker("my-agent")
tracker.log(input=query, output=result, latency_ms=1200)
orchestrator = AgentTracker("orchestrator")
worker = AgentTracker("worker")
parent = orchestrator.log(input="plan task", output="delegating")
worker.log(input="subtask", output="result", parent_trace_id=parent.trace_id)
curl -X POST http://localhost:8888/api/traces \
-H "Content-Type: application/json" \
-d '{"agent_name": "my-agent", "input": "hello", "output": "world"}'
import { AgentDriftClient, AgentTracker } from "@agentdrift/sdk";
const client = new AgentDriftClient({ baseUrl: "http://localhost:8888" });
const tracker = new AgentTracker("my-agent", client);
await tracker.log({ input: "hello", output: "world" });
agentdrift test init my-agent --count 10 --min-score 0.8
agentdrift test run my-agent --module my_app:my_agent --threshold 0.7
agentdrift init --config # Generate agentdrift.toml
See examples/ for more integration patterns.
# Docker
docker compose up
# Kubernetes
helm install agentdrift chart/agentdrift/
# Vercel (dashboard only)
cd web && vercel
| Resource | Description |
|---|---|
| API Reference | REST API endpoints |
| Roadmap | Completed features & future plans |
| Contributing | Development setup & guidelines |
| Changelog | Release notes |
MIT
Download counts and popularity will appear here as the collector receives them.
| Version | Published | Direct dependencies | Open version |
|---|---|---|---|
| 0.4.3 | 12 Feb 2026 | 12 |
This describes our collected data; it is not a security assessment.
Observed since 20 Oct, 21:49 UTC
No superseded metadata states collected. Unchanged observations do not create new revisions.
package:716e3603dc6d1048d3cfb84ab1aa821d39b7ec6523828e41ee7f4bdea6d61392