Skip to main content
Trace an agent built on @anthropic-ai/claude-agent-sdk by wrapping it with trace() from runagain. Every run, tool call, token and cost is streamed to your project.

Install

npm i runagain @anthropic-ai/claude-agent-sdk
pnpm add runagain @anthropic-ai/claude-agent-sdk
yarn add runagain @anthropic-ai/claude-agent-sdk
bun add runagain @anthropic-ai/claude-agent-sdk

Configure

.env.local
RUNAGAIN_API_KEY=sk_…
RUNAGAIN_INGEST_URL=https://ingest.runagain.ai

Wrap your agent

agent.ts
import { query } from "@anthropic-ai/claude-agent-sdk";
import { trace } from "runagain";

// trace() streams every run, tool call, token and cost to RunAgain.
export const runAgent = trace(
  (prompt: string) =>
    query({ prompt, options: { model: "claude-opus-4-8", maxTurns: 5 } }),
  { name: "support-bot" },
);

Run

npx runagain eval --watch --loops 5
Open your project’s Traces page to see the runs stream in.
Prefer to let your coding agent wire this up? Paste this into Claude Code or Cursor: “Integrate RunAgain into this Claude Agent SDK project — install runagain, wrap my query() calls with trace(), and read RUNAGAIN_API_KEY/RUNAGAIN_INGEST_URL from env. Keep my agent logic unchanged.”