Spatial board for Claude Code, Codex, Cursor and opencode. One card is one conversation: start agents into any project folder, drag the cards wherever they make sense, and see at a glance who is working, who finished, and who is waiting for you.
** Download AgentBoard.dmg** Β·
agentboard siteΒ· macOS 13+ Β· MIT
Start an agent in a secondβ pick a folder, type the task. It runs in the background as a tile; no terminal window opens.** A card turns amber the moment an agent needs you**β the header counts how many are waiting, so you stop finding out forty minutes later.** Answer from the board**β reply straight from the card; open the live terminal only when you want to watch.** Nothing piles up**β cards survive reboots and resume with one click, removing a card never deletes history, and your desktop stays clean.** Three skins**β terminal phosphor, macOS glass, Soviet retro console, each with a night mode.
Everything runs locally: the board reads the CLIs' own logs and talks to tmux on your machine. No account, no telemetry. The UI speaks English and Russian.
- macOS 13+ (Apple Silicon)
- Any of: Claude Code,Codex CLI,Cursor CLI,opencode
That's it β the app is self-contained (bundles its own Python runtime and tmux), signed and notarized. No Homebrew, no Xcode tools.
** Download AgentBoard.dmg**, drag to Applications, open. The dock icon shows a badge with how many agents are waiting for you.
Alternative: install from source (curl | sh) #
curl -fsSL https://raw.githubusercontent.com/mikky-a/agentboard/main/install.sh | sh
This clones the repo into ~/.agentboard
, sets up start-on-login (launchd),
installs tmux if missing (via Homebrew), builds AgentBoard.app with your
Xcode Command Line Tools into ~/Applications
and opens it; without swiftc
it falls back to the browser at http://localhost:8787
. Updates ride on
git pull
β re-run the same command anytime.
Prefer to run things by hand?
git clone https://github.com/mikky-a/agentboard.git
cd agentboard
python3 agentboard.py # server β http://localhost:8787
./build_app.sh # native app (optional)
Open the board in a browser. If status hooks are not installed yet, a banner
appears in the top bar β click it once. It idempotently adds lifecycle hooks
for every CLI you have installed (backing up your originals as
*.agentboard-bak
): ~/.claude/settings.json
, ~/.codex/hooks.json
,
~/.cursor/hooks.json
(plus a Shell(tee)
allowlist entry β Cursor's CLI
ignores hook permission responses), and an opencode plugin in
~/.config/opencode/plugins/
. Restart any live agent sessions after installing; Codex will ask to trust the new hooks β choose "Trust all and continue". When you create an agent from the board, the folder is pre-trusted in the CLI's own config (Claude / Codex / Cursor), so agents don't silently stall on first-run "do you trust this directory?" dialogs.
π’ working Β· π‘ waiting for you (blinks + sound) Β· βͺ idle Β· π΅ d
Statuses come from the CLIs' own lifecycle hooks (e.g. the PermissionRequest
event) writing to ~/.claude/agent-status/<tmux-session>
β no fragile parsing of terminal output.
install.sh
builds it automatically; to rebuild by hand: ./build_app.sh
(swiftc + icon β AgentBoard.app). The dock badge shows how many agents are waiting for you β the board lives in the Dock, not in a browser tab.
The board checks GitHub Releases once a day; when a new version is out, a
badge appears in the top bar β one click runs git pull
and restarts the
server. (Installed via install.sh
/ git clone
β that's what makes the pull possible.)
AGENTBOARD_DIRS
β colon-separated list of folders to scan for projects in the "οΌ agent" picker (default:~/Documents/dev:~/Documents
). Any other folder is always reachable via the native "other folderβ¦" dialog.
agentboard.py
β server (Python stdlib, localhost:8787)index.html
β the whole UIskins/
β macOS and Soviet themes on top of the base terminal oneboard.json
β your board state (created on first run, not in the repo)app/
+build_app.sh
β native wrapper (Swift + WKWebView)
- Resume for d Codex / Cursor / opencode cards (Claude only for now)
- Homebrew tap
- Windows/Linux support
MIT