When this is NOT what you want
- You need long-term observability with dashboards. Use Phoenix, Langfuse, Helicone, or an OTel collector. agenttap is for the debug loop, not the production dashboard.
- You need a proxy that fronts every call from every process. agenttap is in-process per client.
- You are on an SDK that does not use httpx under the hood. The transport hook does not apply.
Install
pip install agenttap
Repo: https://github.com/MukundaKatta/agenttap
Sibling libraries
| Library |
Role |
| agentsnap |
Snapshot tests for agent runs |
| cachebench |
Per-call prompt-cache hit ratio + cost saved |
| llmfleet |
Pool requests from many coroutines into provider Batch APIs |
| agentguard |
Egress allowlist for tool calls |
| agenttrace |
Cost + latency per run |
agenttap is the debug-loop tool. The others are production tools. They compose: tap a call in development, snap it in CI, trace it in production.
What's next
I want to add a small TapServer adapter that exports captured calls as OpenTelemetry spans, so the same calls you tap in development can flow into the same dashboard you use in production. I also want a "compare against a saved JSON" assertion so you can pin the wire shape in a test.
If you have ever lost an afternoon to a phantom SDK change, you already know why this exists.