simul n. A chess exhibition where one player walks a ring of boards and moves wherever someone's waiting.
One player, many boards.
Simul is a small Mac app for running Claude Code, Codex, OpenCode and plain shells side by side, each in a real Ghostty terminal. When an agent finishes or asks you something, its card lights up, and you go make your move.
› Make the checkout tests pass again
● Reading tests/checkout.spec.ts
● The price fixture still uses the old currency format
What's in it
- Real terminals
- Each session is a Ghostty terminal running the agent's own CLI, with your login, config and MCP servers. Fonts and colors come from your Ghostty config.
- Who needs you
- A light circles a working agent's tile. A badge, and a macOS notification, when it finishes or asks something. The menu bar counts who's waiting.
- Resume
- Reopening a session continues that exact conversation (
claude --resume <id>,codex resume <id>), not whichever was last in the folder. - Folders, sleep
- Group related sessions with ⇧⌘N or by dragging. Put one to sleep to stop it; selecting it wakes it where it left off.
- Limits
- Claude's and Codex's usage windows at the bottom of the sidebar, asked of the CLIs themselves.
- Keys
- ⌘1…⌘9 switch, ⌃⇥ back to the last one, ⌘N new, ⌘B sidebar, ⌘W close.
- Nothing else
- No account, no analytics, no API keys. Your session list is one JSON file in
~/Library/Application Support/Simul.
Build it
There's no signed download yet. Building takes a few minutes with Apple's Command Line Tools, no Xcode. macOS 14+, Apple Silicon.
$ git clone --recursive https://github.com/bernatixer/simul.sh && cd simul.sh # Zig 0.16.0, the exact version Ghostty needs $ curl -fsSL https://ziglang.org/download/0.16.0/zig-aarch64-macos-0.16.0.tar.xz | tar xJ -C Vendor $ mv Vendor/zig-aarch64-macos-0.16.0 Vendor/zig $ scripts/build-ghostty.sh && scripts/build-app.sh && scripts/install.sh