The Claude Agent SDK is the harness behind Claude Code, published so you can build your own agent on the same loop: gather context, act, check the result, repeat. It gives you the tool loop, file and shell tools, subagents, MCP support, sessions you can resume or fork, and hooks at fixed points in the loop.
Hooks and subagents are the two features that matter for evaluation. A hook is a callback at a named point, such as before a tool call or after one. That is where a check or a trace emit attaches without touching the agent's prompt. A subagent runs in its own context and returns a result to the main loop, so it is a natural unit to grade on its own instead of through whatever the main agent finally says.
Telemetry is OpenTelemetry, turned on with CLAUDE_CODE_ENABLE_TELEMETRY and pointed with the standard OTEL exporter variables. Metrics and events are the settled part: tokens and cost per session, and an event for each prompt, response, API request, API error, tool result, and tool decision. Spans are still behind a beta flag, and their names are Claude Code's own rather than the OpenTelemetry GenAI ones, so anything reading them has to map them first.
17 questions
Answered, plainly.
Two ways to run Tessary.
Tessary is an open-source agent reliability platform. Cloud and self-hosted run the same workflow on the OpenTelemetry traces your agent already emits.
Tessary Cloud
We host it for you. Send your first trace with nothing to deploy and no model key.
- traces
- 10,000 per calendar month
- stored trace data
- 1 GB
- retention
- 30 days
- model credit
- $10, one-time, for triage and root-cause analysis
- credit card
- not required
Self-hosted Tessary
Run the open-source code on your own infrastructure with one command. Add your own model key for triage and root-cause analysis.
Self-host Tessary for me by following https://github.com/tessaryai/tessary/blob/main/setup.md
docker compose -f oci://docker.io/tessaryai/tessary:compose up -d -y