Read-only Claude Code session picker for Codex. It lists the latest local Claude Code sessions, pages and searches history, and reads a selected conversation without importing it, so the work continues in the current Codex chat.
- Script-driven. All parsing, filtering, formatting, and pagination live in
resume_cc.py; the agent only runs commands and relays their output. - Token-lean. Compact text tables by default (about 0.5 KB for 10 rows) instead of
JSON that the model has to re-render;
outlineenables one-message drill-downs. - Read-only. Never writes to
~/.claudeor Codex state. No network, telemetry, packages, or persistent index.
Python 3.9+, standard library only.
I built this after running out of Claude Code tokens mid-task while I still had plenty of Codex/OpenAI tokens left. All I wanted was to switch agents and finish the work, but the Claude Code session was locked inside Claude Code, so the only option was re-explaining the context by hand. This skill removes that last step: point Codex at the local Claude Code transcripts and continue the conversation there.
It fits a setup I already use. I route models through a connector onto the Vercel AI Gateway, so Codex can drive different models side by side, but nothing here depends on Vercel — any provider that plugs into Codex works the same way.
I believe multi-model, multi-agent coding is where this is heading: the choice of model and the choice of agent shouldn't trap your work inside one tool. This is one small contribution to that direction — a step toward handing a task to whichever agent has the budget, capability, or context that fits. Hopefully we get there soon.
codex plugin marketplace add marcel-veselka/resume-cc
codex plugin add resume-cc@resume-ccThen invoke $resume-cc in a new thread. Without the plugin, symlink or copy
plugins/resume-cc/skills/resume-cc into <repo>/.agents/skills/resume-cc (project
scope) or ~/.codex/skills/resume-cc (user scope).
S=plugins/resume-cc/skills/resume-cc/scripts/resume_cc.py
python3 $S list --project . # newest 10 for this project
python3 $S list --all --query OAuth # search titles across projects
python3 $S list --all --query OAuth --full-text # search message text too
python3 $S list --offset 10 --before 1789000000 # next page
python3 $S outline SESSION_UUID # cheap per-message index
python3 $S context SESSION_UUID --offset 3 --limit 1 # read one message
python3 $S command SESSION_UUID # print native resume lineOutput is compact text by default; add --json (before or after the subcommand) for
the stable machine schema. list paginates newest-first with a --before snapshot,
outline indexes the latest branch with idx offsets that context accepts, and
context reads textual messages only (thinking, tool calls, and results are omitted).
See plugins/resume-cc/skills/resume-cc/reference/ for the full command, workflow, and
data-format notes.
| Path | Purpose |
|---|---|
.agents/plugins/marketplace.json |
Codex marketplace root for this repo |
plugins/resume-cc/.codex-plugin/plugin.json |
Codex plugin manifest |
plugins/resume-cc/skills/resume-cc/SKILL.md |
Short skill router |
plugins/resume-cc/skills/resume-cc/reference/ |
Commands, workflows, data format |
plugins/resume-cc/skills/resume-cc/scripts/resume_cc.py |
The reader CLI |
plugins/resume-cc/skills/resume-cc/tests/ |
Reader unit tests |
scripts/validate_manifests.py |
Plugin/marketplace manifest checks |
python3 -B -m unittest discover -s plugins/resume-cc/skills/resume-cc/tests -v
python3 scripts/validate_manifests.py
python3 -B -m unittest discover -s tests -vFixtures are synthetic and created under tmp/; never publish local session logs.
Research checked 2026-09-11. This is an independent implementation; no code was copied from these projects.
- Sessions Viewer (Tauri desktop, 348★): reads Claude Code, Codex, and other agents' sessions with search, resume, and HTML export.
- opcode (22.4k★): GUI app and toolkit for Claude Code with agents and session management.
- claude-code-transcripts (1.7k★): publishes Claude Code transcripts to HTML.
- claude-code-sessions: MCP server, web UI, and VS Code extension to browse, search, rename, and split sessions.
- claude-session-mcp: MCP server for cloning, archiving, and transferring sessions.
- bachajon/claude-sessions-skill: Claude Code plugin that pulls past sessions into the current one (macOS only).
- Corral: terminal handoff for Claude Code, Codex, OpenCode, and others.
- codex-claude-code-bridge: Codex plugin that runs Claude Code from Codex with context handoff and hooks.
How this differs: the alternatives are desktop GUIs, TUIs, MCP servers, or plugins
that run the other agent. resume-cc is a plain Codex skill over a small read-only CLI:
an agent-driven picker that continues Claude Code work inside the current Codex chat,
with no MCP process, no hooks, no GUI, and no writes to either session store.
MIT.