Goal
Make Throughline usable with Codex sessions, not only Claude Code hooks.
Today Throughline works through Claude Code lifecycle hooks (SessionStart, Stop, UserPromptSubmit) and Claude transcript JSONL. Codex can read existing Throughline memory through an external adapter, but Codex sessions themselves are not yet captured, resumed, or handed off by Throughline.
Desired Outcome
Codex should become a first-class Throughline source alongside Claude Code.
Scope
- Define a Codex session lifecycle adapter.
- Map Codex App Server events/turns into Throughline L1/L2/L3 storage.
- Store Codex session id, turn id, project path, model, timestamps, and source metadata.
- Support Codex assistant/user text as L2 bodies.
- Support Codex tool/event output as L3 details where available.
- Design a Codex equivalent of
/tl handoff baton or an explicit handoff CLI/API.
- Provide a way for Codex-sidecar or Codex CLI integrations to request resume context.
- Keep Claude Code behavior stable and avoid coupling Throughline solely to Codex.
Non-goals
- Do not make Codex support depend on
codex-sidecar internals unless there is a stable adapter contract.
- Do not silently reuse Claude transcript parsing for Codex event streams.
- Do not auto-inherit memory without explicit user intent.
Acceptance Criteria
- Throughline can ingest at least one Codex session/turn from a documented event format.
- Codex-origin sessions appear in
throughline status or an equivalent diagnostic view.
- Resume context can be generated for Codex-origin sessions.
- Claude Code hook behavior remains covered by existing tests.
- Failure modes are explicit; no hidden fallback to Claude-only behavior.
Related
codex-sidecar can initially read Throughline DB as context, but full Codex support belongs in this Throughline repository.
- Codex App Server emits newline-delimited JSON events; adapter design should treat that as a distinct source format.
Goal
Make Throughline usable with Codex sessions, not only Claude Code hooks.
Today Throughline works through Claude Code lifecycle hooks (
SessionStart,Stop,UserPromptSubmit) and Claude transcript JSONL. Codex can read existing Throughline memory through an external adapter, but Codex sessions themselves are not yet captured, resumed, or handed off by Throughline.Desired Outcome
Codex should become a first-class Throughline source alongside Claude Code.
Scope
/tlhandoff baton or an explicit handoff CLI/API.Non-goals
codex-sidecarinternals unless there is a stable adapter contract.Acceptance Criteria
throughline statusor an equivalent diagnostic view.Related
codex-sidecarcan initially read Throughline DB as context, but full Codex support belongs in this Throughline repository.