Part of #11
Summary
Implement TraceDiscovery for Claude Code. Reads trace history from ~/.claude/ JSONL files.
Storage Details
| Aspect |
Detail |
| Storage path |
~/.claude (overridable via env var) |
| Detection |
.claude, .claude/settings.json |
| History file |
~/.claude/history.jsonl |
| Project sessions |
~/.claude/projects/<project_hash>/<session_id>.jsonl |
| Format |
JSONL — one JSON object per line |
Event Parsing
- Roles:
user, assistant
- Tool events: blocks with
type: "tool_use", type: "tool_result", linked via tool_use_id
- Thinking: extended thinking blocks
Notes
Claude Code already has a real-time AgentHook in hooks/claude_code.rs. This discovery adapter enables:
- Backfilling traces from before Atomic was installed
- Post-record hook matching (find which trace was active during a recording)
Acceptance Criteria
Estimated Effort
0.5-1 day
Part of #11
Summary
Implement
TraceDiscoveryfor Claude Code. Reads trace history from~/.claude/JSONL files.Storage Details
~/.claude(overridable via env var).claude,.claude/settings.json~/.claude/history.jsonl~/.claude/projects/<project_hash>/<session_id>.jsonlEvent Parsing
user,assistanttype: "tool_use",type: "tool_result", linked viatool_use_idNotes
Claude Code already has a real-time
AgentHookinhooks/claude_code.rs. This discovery adapter enables:Acceptance Criteria
list_traces()enumerates sessions from~/.claude/projects/read_events()parses JSONL intoDiscoveredEvents with correct typestool_name,tool_call_id, and are classifiableEstimated Effort
0.5-1 day