{"slug": "show-hn-oss-local-spatial-board-for-all-your-agents", "title": "Show HN: [OSS, local] Spatial Board for all your agents", "summary": "Developer Mikky A. released AgentBoard, a free, open-source macOS app that lets users manage multiple AI coding agents (Claude Code, Codex, Cursor, opencode) from a single spatial board, with each conversation as a draggable card. The app runs entirely locally, bundles its own Python runtime and tmux, supports macOS 13+ on Apple Silicon, and is available under the MIT license.", "body_md": "**Spatial board for Claude Code, Codex, Cursor and opencode.** One card is one\nconversation: start agents into any project folder, drag the cards wherever they\nmake sense, and see at a glance who is working, who finished, and who is waiting\nfor you.\n\n** Download AgentBoard.dmg** ·\n\n[agentboard site](https://mikky-a.github.io/agentboard/)· macOS 13+ · MIT\n\n**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.\n\nEverything 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.\n\n- macOS 13+ (Apple Silicon)\n- Any of:\n[Claude Code](https://claude.com/claude-code),[Codex CLI](https://github.com/openai/codex),[Cursor CLI](https://cursor.com/docs/cli),[opencode](https://opencode.ai)\n\nThat's it — the app is self-contained (bundles its own Python runtime and tmux), signed and notarized. No Homebrew, no Xcode tools.\n\n** Download AgentBoard.dmg**,\ndrag to Applications, open. The dock icon shows a badge with how many agents\nare waiting for you.\n\n## Alternative: install from source (curl | sh)\n\n```\ncurl -fsSL https://raw.githubusercontent.com/mikky-a/agentboard/main/install.sh | sh\n```\n\nThis clones the repo into `~/.agentboard`\n\n, sets up start-on-login (launchd),\ninstalls tmux if missing (via Homebrew), builds **AgentBoard.app** with your\nXcode Command Line Tools into `~/Applications`\n\nand opens it; without `swiftc`\n\nit falls back to the browser at `http://localhost:8787`\n\n. Updates ride on\n`git pull`\n\n— re-run the same command anytime.\n\nPrefer to run things by hand?\n\n```\ngit clone https://github.com/mikky-a/agentboard.git\ncd agentboard\npython3 agentboard.py        # server → http://localhost:8787\n./build_app.sh               # native app (optional)\n```\n\nOpen the board in a browser. If status hooks are not installed yet, a banner\nappears in the top bar — click it once. It idempotently adds lifecycle hooks\nfor every CLI you have installed (backing up your originals as\n`*.agentboard-bak`\n\n): `~/.claude/settings.json`\n\n, `~/.codex/hooks.json`\n\n,\n`~/.cursor/hooks.json`\n\n(plus a `Shell(tee)`\n\nallowlist entry — Cursor's CLI\nignores hook permission responses), and an opencode plugin in\n`~/.config/opencode/plugins/`\n\n. Restart any live agent sessions after\ninstalling; Codex will ask to trust the new hooks — choose \"Trust all and\ncontinue\". When you create an agent from the board, the folder is pre-trusted\nin the CLI's own config (Claude / Codex / Cursor), so agents don't silently\nstall on first-run \"do you trust this directory?\" dialogs.\n\n🟢 working · 🟡 waiting for you (blinks + sound) · ⚪ idle · 🔵 paused\n\nStatuses come from the CLIs' own lifecycle hooks (e.g. the `PermissionRequest`\n\nevent) writing to `~/.claude/agent-status/<tmux-session>`\n\n— no fragile parsing\nof terminal output.\n\n`install.sh`\n\nbuilds it automatically; to rebuild by hand: `./build_app.sh`\n\n(swiftc + icon → AgentBoard.app). The dock badge shows how many agents are\nwaiting for you — the board lives in the Dock, not in a browser tab.\n\nThe board checks GitHub Releases once a day; when a new version is out, a\nbadge appears in the top bar — one click runs `git pull`\n\nand restarts the\nserver. (Installed via `install.sh`\n\n/ `git clone`\n\n— that's what makes the\npull possible.)\n\n`AGENTBOARD_DIRS`\n\n— colon-separated list of folders to scan for projects in the \"＋ agent\" picker (default:`~/Documents/dev:~/Documents`\n\n). Any other folder is always reachable via the native \"other folder…\" dialog.\n\n`agentboard.py`\n\n— server (Python stdlib, localhost:8787)`index.html`\n\n— the whole UI`skins/`\n\n— macOS and Soviet themes on top of the base terminal one`board.json`\n\n— your board state (created on first run, not in the repo)`app/`\n\n+`build_app.sh`\n\n— native wrapper (Swift + WKWebView)\n\n- Resume for paused Codex / Cursor / opencode cards (Claude only for now)\n- Homebrew tap\n- Windows/Linux support\n\nMIT", "url": "https://wpnews.pro/news/show-hn-oss-local-spatial-board-for-all-your-agents", "canonical_source": "https://github.com/mikky-a/agentboard", "published_at": "2026-07-29 14:41:48+00:00", "updated_at": "2026-07-29 14:53:01.734887+00:00", "lang": "en", "topics": ["developer-tools", "ai-tools", "ai-agents"], "entities": ["AgentBoard", "Mikky A.", "Claude Code", "Codex CLI", "Cursor CLI", "opencode", "MIT"], "alternates": {"html": "https://wpnews.pro/news/show-hn-oss-local-spatial-board-for-all-your-agents", "markdown": "https://wpnews.pro/news/show-hn-oss-local-spatial-board-for-all-your-agents.md", "text": "https://wpnews.pro/news/show-hn-oss-local-spatial-board-for-all-your-agents.txt", "jsonld": "https://wpnews.pro/news/show-hn-oss-local-spatial-board-for-all-your-agents.jsonld"}}