Coding Agent Trajectory Visualizer turns local Claude Code and Codex session logs into a searchable, readable record of what the agent did: prompts, final answers, intermediate reasoning messages, tools, results, compactions, subagents, context growth, and personal usage patterns.
Claude Code and Codex sessions can both be viewed. Full API Capture is an optional Claude Code feature and is off by default.
Open Trajectory Visualizer from the VS Code Activity Bar. The Trajectory Explorer can organize sessions by time or project path, and search across prompts, responses, tools, file names, and errors.

Useful sidebar commands:
Timeline is the default session view. The header summarizes the model, duration, Turns, tool calls, token use, estimated cost, and captured API calls. The controls can search Prompt, Response, or All text; filter by date; reverse order; collapse expanded content; reset the view; and page through long sessions.
Select a Turn header to load it. Long Turns are loaded only when opened, so large sessions do not create every detail in the page at once. Images attached to Claude Code or Codex prompts appear as bounded thumbnails inside the User message; select a thumbnail to inspect the original image full screen. Image bytes follow the same on-demand Turn loading path.

Model, effort, output-token, context, cache, stop-reason, and API-captured badges stay beside the response that produced them. Date separators and idle-gap markers make resumed or multi-day sessions easier to follow.


Turn #, Call # in turn, and its session-wide API Call #. Open in API Capture keeps that identity.Views links several visualizations to one playhead and one movable context window.

Tool-use blocks are chronological. Selecting a group keeps the surrounding history visible with a mask; selecting one exact block can reveal its matching tool call or result in Timeline.
The Phase map groups consecutive activity with fixed rules:

replacement_history. Codex stores the generated compaction summary as encrypted content, so the extension labels its presence and size but cannot display summary text that is not present in the local log. Each long readable value has its own full-screen reader.This makes it possible to check what the agent retained, what it summarized, and whether important instructions survived compression.
API Capture is optional and starts Off. Click the VS Code status-bar item Capture: Off to turn it on; click Capture: On · N calls to turn it off. The switch is shared by every VS Code window.
When capture turns on, new terminals receive the managed ANTHROPIC_BASE_URL automatically. A Claude Code process that was already running keeps its old environment, so restart that process or reload its VS Code window before expecting its calls to appear. A custom ANTHROPIC_BASE_URL is never overwritten.
How to verify capture:
Captured files are stored under ~/.claude/recorder/captures/ on the machine where the extension host runs. Codex API Capture is not available in this proxy setup; Codex Timeline, Views, Compare, Replay, Harness, Memory, and Dashboard still work.

API calls are grouped chronologically by Turn; a Turn with many calls uses ten calls per page. Each call displays:
Turn # and Call # in turn.API Call # / total.Timeline intentionally previews only the message slice for that Turn. API Capture is the authoritative place for the complete cumulative request. Large arrays are paged, long values use bounded scroll regions, and eligible values have their own Read full screen action.
Inside API Capture:
These two views require Claude API Capture data.
Compare is designed for controlled comparisons. Session choices show provider/company logo, model, effort, and project tags so differences in the result are visible before playback.

Replay presents the same trajectory as a chat-like sequence rather than a dense analysis page.

The session Harness tab answers which supporting configuration shaped this run.

The dedicated Memory tab shows the instruction and memory files available to this session.

Use Trajectory: Open Agent Setup for the cross-session library of Memory, Skills, Hooks, and MCP. It is the convenient place to inspect the files and integrations that apply beyond one session.
Run Trajectory: Open Usage Dashboard from the sidebar calendar icon or Command Palette. It summarizes Sessions, active days, streaks, Turns, prompts, tool calls, output tokens, estimated Claude cost, Runtime Rank, achievements, response times, model/effort usage, hourly habits, and frequent words.
Tables sort only on meaningful metric columns; a chevron appears after a sortable heading is selected. Runtime Rank is based on recorded work time, with progressively larger level requirements.

--resume <id> for Claude Code or resume <id> for Codex); the long command is not printed beside the button.The session header provides:
~/.claude/recorder/exports/.Timeline, API calls, Request Messages, System Prompt versions, Memory, Skills, Hooks, MCP, and Subagents use pagination or bounded readers where needed. Previous, page number, and Next stay together so navigation does not require moving across the full page width.
Use Refresh Trajectories, switch between time and path grouping, then search for a phrase from the prompt or response. Remember that Remote SSH sessions live on the remote extension host.
Restart the Claude Code process that was already running when capture was enabled. Confirm the status-bar count increases. If the status bar says Custom endpoint, clear the custom ANTHROPIC_BASE_URL before using the managed capture proxy.
Open only the level you need. Turn bodies, inline API details, Memory, and Harness are loaded on demand. Use section collapse, pagination, bounded readers, and Read full screen rather than expanding every nested value.
%USERPROFILE%\.claude\recorder\exports\~/.claude/recorder/exports/