Show HN: Ctx – a /resume that works across Claude Code and Codex
TL;DR Highlight
Binding chats into workstreams lets you resume and branch Claude Code and Codex context locally.
Who Should Read
A developer who switches between Claude Code and Codex and is tired of re-explaining context in every new session
Core Mechanics
- One workstream holds both chats
- ctx binds a Claude conversation ID and a Codex conversation ID to one workstream.
- Each internal ctx session is tied to the exact conversation it came from.
- No jumping to the newest chat
- Later pulls stay on the bound conversation.
- They never switch to the most recent chat on disk.
- Branch to split context
- ctx branch seeds a new workstream from another one's current saved state.
- It shares no future transcript pulls and doesn't hijack the source conversation.
- Local SQLite only
- No API keys or hosted service; just SQLite and local files.
- Saved workstreams, sessions and entries are indexed for fast ctx search.
- Pin and exclude control loads
- Pinned entries always load, even in compressed mode.
- Excluded entries stay searchable but aren't passed to the model.
- -pull decides whether history is included
- ctx start feature-audit --pull imports the current conversation's existing context.
- Without --pull, it records from that point only and doesn't backfill.
Community Reactions
- Thinking doesn't carry over, one comment argues
- A commenter said neither vendor exposes raw thinking tokens, so they can't be ported.
- Cross-agent resume thus keeps the visible transcript but loses the reasoning, they argued.
- Prompt caching objection
- One commenter noted caching doesn't work across models and asked how this beats handing a PR to another harness for review.
- Another asked how tool/MCP calls and sub-agent results are normalized across providers.
- Experience: rarely using /resume
- One commenter said they never resume, since they finish a change, document it, and start a new session.
- Another asked for a /last command to resume the latest session.
- Requests for sharing and a similar tool
- Commenters asked about export/import and sharing streams with remote users.
- One pointed to a similar tool, hydra (github.com/saadnvd1/hydra).
How to Apply
- Install ctx on a sample repo
- Today, git clone it, run ./setup.sh, and run ctx start my-stream --pull in a small project.
- In Claude Code, use /ctx start my-stream --pull.
- Use resume across sessions
- When alternating Claude Code and Codex on one feature, continue with ctx resume <name>.
- Add --compress if token cost matters.
- Branch for experiments
- When trying two designs, split with ctx branch source new-name.
- Later chats don't mix.
- Prune noisy entries with ctx curate
- For long workstreams, open ctx curate, pin key entries with p, and exclude noise with x.
- Original Claude/Codex chats are not modified.
Try It
# Run in a terminal (in Claude Code start with /ctx; in Codex/terminal use ctx)
git clone https://github.com/dchu917/ctx.git
cd ctx
./setup.sh
ctx start feature-audit --pull
ctx list --this-repo
ctx search dataset download
ctx resume feature-audit --compress
ctx branch feature-audit feature-audit-v2
ctx curate feature-auditTerminology
Related Papers
Show HN: Corgi, a helpful {agent, terminal} multiplexer
A tmux-like terminal tool that shows the status of all your AI agents at a glance
Ask HN: If the models are so good, why doesn't OpenAI just start 100 companies?
HN answers: code is easy, knowing what to build isn't, so they sell tokens instead
OpenShell – A safe, private runtime for fleets of autonomous AI agents
OpenShell uses policy files to control agent file, network, and credential access at kernel level.
Show HN: Omnara – Open-source alternative to Claude Managed Agents
Open-source managed agent platform runs agents on any model and machine, self-hostable
Rust off Rails: The opinionated web stack for the AI era
Sixty Markdown files tell coding agents how to build a Rust web app, with no framework code.
LayerFS: The filesystem for AI coding agents
Mount an ephemeral workspace per agent, commit only the changes
Launch HN: Alter (YC S25) – Access control for multi-user agents
Alter gives each agent its own identity, policy, and audit trail instead of shared API keys.
Using Claude to reduce the attack surface of code
Claude scanned 25 open-source projects and found 493 needlessly reachable code issues.