RayTrace

OBSERVABILITY FOR CODING AGENTS

See what your coding agent did.
Understand what changed.

Bring prompts, tool calls, reported results, and costs into one local dashboard. RayTrace CLI is now open source. Install it, inspect the code, and make it yours.

Local-firstOpen-source CLIMIT licensed
raytrace / session inspectorEXAMPLE
SESSION / 0013 events

“Fix the failing authentication test.”

01
Context received INPUT

src/auth.ts · tests/auth.test.ts

expect(session.expiresAt)
  .toBeGreaterThan(Date.now());
02
Tool call proposed INTENT

Bash

$ npm test -- auth
03
Process observed EVIDENCE

gVisor exec checkpoint · process exit

npm test -- authexit 0
[ ] A proposal and an observed process are different facts.
NOW OPEN SOURCE

RayTrace CLI is live. The local recorder and dashboard, free to use and MIT licensed.

Explore the code on GitHub ↗
THE QUESTIONS BEHIND EVERY TRACE

What did it see? / What did it try? / What actually ran? / What would change?

01 / INSPECT

A trace you can
take apart.

A final answer only tells part of the story. RayTrace connects prompts, context, tool calls, and runtime evidence so you can inspect the steps that led there.

TRACE ANATOMY

Illustrative example.
No live agent is connected.

MODEL INPUTauth-fix / step 01

Start with what the model saw.

Inspect the input snapshot for a model request: the prompt, tool definitions, prior results, and file excerpts included in its context.

context / tests/auth.test.ts
// Excerpt included in the model request
test('session has not expired', () => {
  expect(session.expiresAt)
    .toBeGreaterThan(Date.now());
});

A file in the repository is not necessarily a file the model saw.

02 / EXPERIMENT

Change one thing.
Follow a new branch.

Was a piece of context useful? Select a step, edit or remove what the agent saw, and compare the continuation with the original run.

The sandbox continuation below is an advanced development workflow. The CLI release focuses on local capture and inspection. View release scope →

CAPTURED STEPOriginal contextPrompt + tool results + files
BASELINEKeep context unchangedRepeat the same step
FORKEdit context or project filesContinue in a separate sandbox
COMPAREWhat changed?Tool calls · answers · file diffs · checks
A

Replay a decision

The selected-step lab compares original and edited context across repeated model responses. Repeat rates describe observed behavior; they do not recover private reasoning.

B

Continue from a snapshot

For eligible sandboxed Claude Code sessions, Playground restores the project before a step and runs a fork. Compare file changes, steps, and an optional check command.

C

Compare against a baseline

Models can vary even when nothing changes. Playground can interleave edited runs with unchanged runs, so you can examine that variation alongside your experiment.

KNOW THE BOUNDARY Forks need a recorded sandbox session with snapshots. Decision replays and Codex continuations have different setup and provider requirements.

03 / UNDER THE HOOD

Local capture.
Connected evidence.

The CLI records Claude Code transcripts through a hook and Codex model exchanges through a local proxy. A bundled dashboard reads your local trace history.

>_
Claude Code / CodexSession hook / model traffic
transcripts / model exchanges
⌁
RayTrace recorder + dashboard127.0.0.1:8797
LOCAL
Codex routing OpenRouter*
captured exchanges
▤
SQLite evidence store~/.raytrace/evidence.db
inspect locally
◫
Bundled dashboard127.0.0.1:8797

* OpenRouter is required for the CLI’s Codex launcher and optional generated summaries. Basic Claude Code recording uses a local hook and its usual model connection.

STORAGE

Keep the history close.

Trace data stays in a local SQLite database. Content-addressed payloads reuse repeated context instead of storing the same history for every request.

ADVANCED DEVELOPMENT

Observe beyond the transcript.

Outside the packaged CLI, a gVisor sandbox inside a Lima Linux VM can independently collect process-start and exit events. Read the sandbox requirements →

EVIDENCE BOUNDARY

Observed execution ≠ correctness.

A process starting or exiting successfully does not prove the task was done correctly. Missing evidence means unknown. RayTrace does not reconstruct private chain of thought.

04 / GET STARTED

Your agent.
Your machine.
Your trace.

Install the CLI, set up Claude Code capture, and inspect your first session. The recorder and dashboard start together.

REQUIRESNode.js 22.13+ · npm · Claude Code or Codex

Built for experimentation. RayTrace is an early prototype for local debugging and evaluation. Captured prompts and file contents can be sensitive; the local services do not yet provide authentication or encryption at rest.

RAYTRACE CLI
  1. Install the open-source CLInpm install -g @raytrace-cli/cli
  2. Configure capture and start RayTraceraytrace setup
  3. Use Claude Code, then inspect your sessionraytrace open
npm install -g @raytrace-cli/cli
raytrace setup
raytrace open
Using Codex?

Add your OpenRouter key during setup, then run raytrace codex in your project. Model requests use OpenRouter and provider billing.

Codex setup instructions →

BUILD WITH US

Bring a real agent workflow.
Help shape RayTrace.

Work with the early prototype on the debugging and evaluation questions that matter to your team.

Design Partner