Focus Alt 1
Browser-style tabs, one thread at full size. A tab can hold two threads side by side, and forking opens the fork next to the original.
Ret is the desktop workbench for Codex and Claude Code. Start threads across every project, fork them, spread them out on a canvas, and clear whatever's waiting on you from one inbox.
On a bigger screen, the window above is the real app, and you can click around in it.
Switch from the title bar or with Alt 1–4. Every thread is the same live thread in each, so you can triage in one view and dig in in another.
Browser-style tabs, one thread at full size. A tab can hold two threads side by side, and forking opens the fork next to the original.
An infinite canvas of thread windows. Fork links, a minimap, and beacons on the edge pointing at anything off screen that needs you.
The project's files, Monaco editor tabs, and a thread beside them. Files the agent touched are marked, and open files reload as it edits.
Everything that wants you, across every project: needs you, ready to review, failed, working. j k to move, e to clear.
Code and Inbox can also live on the canvas as windows of their own, next to your threads.
When an agent wants to run a command, edit a file or get more access, it asks in the thread, and the Inbox and a notification tell you if you're looking elsewhere. Questions dock on top of the composer.
Fork the whole conversation, fork from any earlier turn, or select a passage and fork with it quoted. Put a fork in its own git worktree and parallel experiments never touch each other's files.
npm test -- auth429 with a Retry-After header once you're over.Codex and Claude Code get the same transcript, approvals, questions, Plan mode, forks, inbox and usage meters. A new thread's model menu lists both, so picking a model picks the agent.
codex app-server, the same JSON-RPC engine the Codex IDE extension uses. Models, tools, sandboxing, MCP servers and your ~/.codex/config.toml behave exactly as they do in the CLI.claude you installed (native installer, Homebrew, npm or bun) and runs it through Anthropic's Agent SDK. Your settings, CLAUDE.md files, hooks, skills and MCP servers apply as in the terminal.claude update.claude --resume picks them up.Enter steers the turn in flight. Ctrl Enter queues your message for after it, in a tray where you can push it in now, pull it back to edit, or drop it. Esc stops.
Shift Tab and the agent thinks it through first, asks what it needs, then proposes a plan you can implement with one click.
Threads from the agents' CLIs, VS Code extensions and desktop apps show up too, update live, and notify you when they finish.
Hover the edge of a transcript for a rail of its turns. Ticks spread out around the pointer so they stay easy to hit. Try it above.
Unpinned, it reads your pointer's motion: a quick throw toward the edge opens it before you arrive, while aiming at a button near the edge doesn't.
Plan limits for both agents slide up from the sidebar. One that's nearly used up shows even when you don't look.
Every thread adapts to its own size, not the screen's: a tiny window shows status, the last message and any approval buttons; a wide one can add a details panel with the plan, changed files, tokens and lineage.
Streaming events land once per animation frame in a copy-on-write store, and each transcript item re-renders only itself.
Turns you can't see skip layout, so a long thread costs what's on screen.
Pan, zoom and drag write straight to the DOM. None of them trigger a React render.
Threads nobody is looking at unsubscribe from the engine after three minutes.
No. Ret uses each agent's own sign-in. For Codex that's Codex's login (if the CLI is signed in, Ret is too), or you can sign in with ChatGPT from Ret. For Claude Code, sign-in happens in Claude Code itself, and Ret never reads or stores those credentials.
No. Ret downloads its own copy of Codex, verifies it, and keeps it current. On first launch it starts right away on any Codex you already have, then switches over once its own copy is ready. You can point it at a system install or a custom path in Settings instead.
Install Claude Code the usual way (native installer, Homebrew, npm or bun). Ret finds it and runs it unmodified; it never downloads or bundles Claude Code. If you'd rather use just one agent, turn the other off in Settings → Agents.
Yes. Your ~/.codex/config.toml, models, sandboxing and MCP servers apply to Codex exactly as in the CLI. Your Claude Code settings, CLAUDE.md files, hooks, skills and MCP servers apply as they do in the terminal.
Yes. Threads from the agents' CLIs, VS Code extensions and desktop apps show up in Ret's sidebar, with live transcripts while they run. Replying from Ret waits until another app's turn ends, so two processes never write to one thread. Claude threads Ret starts resume with claude --resume.
Windows (x64) and macOS (Apple Silicon and Intel; signed and notarized). On Linux you can build it from source; see the README on GitHub.
Yes, in beta: Ret for iPhone is on TestFlight. Pair it with Ret on your computer (Settings → Remote access → Pair a device) to follow its threads, answer approvals and questions, and start new threads, with a notification when a turn finishes or an agent needs you. The agents keep running on the computer; the phone runs none.
Ret checks for a new version every few hours, downloads it in the background, and asks before restarting into it. Choose Later and it installs the next time you quit.
No. Ret is an independent project. Codex and Claude Code are products of OpenAI and Anthropic; Ret runs the official versions you sign in to.
Bring your Codex and Claude Code sign-ins. Ret keeps itself and Codex up to date from here on.
Latest release · All releases · Build from source
The macOS builds are signed and notarized. Windows may show a SmartScreen prompt for a new app; choose More info → Run anyway.