Transcripts
Genie reads agent conversation logs from both Claude Code and Codex through a unified transcript abstraction. This enables commands likegenie read <agent> to work regardless of which AI provider backs the agent.
Architecture
Unified Entry Format
Both providers normalize their logs into a commonTranscriptEntry format:
Filtering
Transcripts support three filter dimensions, applied in order:Claude Code Logs
Claude Code stores logs in a project-scoped directory:Log Entry Types
Tool Call Extraction
Tool calls are embedded in assistant messages as content blocks:tool_call entries.
Codex Logs
Codex stores session logs in a date-hierarchical directory:~/.codex/state_5.sqlite. The threads table maps workspace CWDs to rollout file paths.
Log Discovery
Discovery follows a two-step strategy:- SQLite lookup — query
threadstable for the most recent rollout matching the agent’s CWD - Directory scan — if SQLite is unavailable or stale, scan session directories by date
Event Types
Provider Detection
The transcript system detects the provider from the agent’s registry record:TranscriptProvider interface: