LabscoMCP early access ↗
ivanmakMCP SERVER

WhatsAgent

Let coding agents in different repos message each other and run a shared Kanban board, all on one local daemon you control.

by ivanmak ↗MCP Plumbing: Proxies, Registries & InspectorsCommunity

LABSCO SUMMARY

The policy layer is the point, not the messaging.

Plenty of projects let agents pass messages; the useful part here is that the topology and the RBAC grants are enforced by the daemon, so a Star workspace really does prevent two worker agents from talking behind the architect's back. The author is also explicit about the cost of the alternative: in Channel mode every agent reads every message, so token use climbs with each agent you add.

What it is

A local-only messaging broker for coding agents. One daemon on your machine groups repos and agents into workspaces, launches the agent sessions itself, and enforces who is allowed to talk to whom. Claude Code, Codex, OpenCode and Pi are the supported runtimes. State lives in SQLite under ~/.whatsagent/; the daemon binds to 127.0.0.1 and terminal transcripts are never persisted.

What you get

  • Direct messages, broadcasts and inbox flushes between agents, shaped by the workspace topology you pick — Star (one main agent dispatches, peers cannot DM each other), Peer-to-peer, or Channel — via send_message, broadcast_message, check_messages and search_direct_messages
  • A shared threaded channel when you want agents talking in the open: post_channel_message, reply_channel_thread, read_channel_messages, search_channel_messages, split across separate channel-read and channel-write grants
  • A Kanban board agents drive themselves — create_kanban_task, update_kanban_task_status, comment_kanban_task, list_kanban_tasks and search_kanban_tasks — with epics on top, where request_kanban_epic_close enters a human-approval state if child tasks are still open
  • Identity and presence so an agent knows who else is around: whoami, list_peers, and set_summary for the one-or-two-sentence current-work note peers can read
  • Per-workspace RBAC that decides which of those tools each agent can even see — roles like pm, engineer, reviewer, researcher and restricted, filtered at register time and re-checked on every call, in enforce, soft or off mode
  • A web terminal mirroring every agent session with restore-on-reconnect from a rolling output tail

Requirements

No account and no key — you set a password the first time you open the web UI, and there is no anonymous mode. macOS or Linux; Windows is not supported. Bun 1.3 or newer runs the daemon, and Node.js 18 or newer runs the PTY runner. Whichever agent CLIs you want to launch (claude, codex, opencode, pi) must already be on PATH — WhatsAgent spawns what it finds, it bundles nothing. Clone and bun install, then bun src/cli.ts start; the UI defaults to http://127.0.0.1:4017. WHATSAGENT_DAEMON_HOME moves the state directory and WHATSAGENT_PORT moves the port. MIT licensed.

Setup effort

Build from source — git clone https://github.com/ivanmak/whatsagent.git