Expand description
Codex session file parsing for Codex CLI JSONL files.
This module parses Codex CLI session files (JSONL format) to extract events as a data source alongside hooks and OTEL.
Codex session files provide rich data that hooks don’t:
- Token usage with cached and reasoning tokens
- Full tool call arguments and outputs
- User and agent messages
- Git context (branch, commit, repo)
Session files are located at:
~/.codex/sessions/YYYY/MM/DD/rollout-<timestamp>-<UUID>.jsonl
Structs§
- Codex
Session Entry - A single entry in a Codex session JSONL file.
- Codex
Session Parser - Parser for Codex CLI session JSONL files.
- Codex
Session Scanner - Orchestrates Codex session file scanning with storage integration.
- File
Position - Tracks file read position for incremental parsing.
- Function
Call Info - Information about a function call, tracked for enriching output events.
- GitInfo
- Git repository information.
- Parse
Result - Result of parsing a Codex session file.
- Scan
Result - Result of scanning a Codex session file.
- Session
Meta - Session metadata from the first entry.
- Token
Usage - Token counts.
- Token
Usage Info - Token usage information from token_count events.
- Turn
Context - Turn context information.
Functions§
- codex_
sessions_ dir - Get the Codex sessions directory path.
- extract_
session_ id_ from_ filename - Extract session ID from a Codex session filename.
- find_
session_ file - Find a Codex session file by session ID.
- list_
session_ files_ in_ dir - List all session files in a date directory.
- parse_
session_ meta - Parse session metadata from a session_meta entry.
Type Aliases§
- Function
Call Map - Map from call_id to function call info.