Skip to content

Agents

The orchestrator, the agents it dispatches, and the helper it delegates through.

Open Claude Code on the workspace node and every repository is a subdirectory beneath it, so one orchestrator can put a real agent — with its own terminal — on each of them. When it splits the work up, each teammate is a full Claude Code session you can read, interrupt and answer.

Three kinds of terminal

The orchestrator
Runs at the workspace root, with every repository as a subdirectory beneath it. ⇧⌘T starts it or focuses the one already running.
A per-repo agent
Spawned by the orchestrator or by you, with one repository as its working directory. Right-click a repository chip or its row in the sidebar.
A plain shell
No agent at all. ⌘T opens one at the workspace root; the same right-click menu opens one in a repository.

How it delegates

Meshvy puts a meshvy helper on the orchestrator’s PATH. It is the whole interface between an agent and the board, and it is the same one you could run yourself in any terminal in the workspace.

CommandWhat it does
meshvy spawn <repo> "<task>"start an agent there; prints an agent id
meshvy wait <id>block until it finishes, print what it reported
meshvy send <id> "<message>"type a follow-up into its terminal
meshvy context <id>read what another agent has been doing
meshvy statusevery agent on the board and its state
meshvy listthe repositories this workspace holds

Why not Claude’s own Agent tool

It is deliberately avoided for this. Its sub-agents run inside the parent process, with no pid and no pty, so there is nothing a terminal can attach to and you cannot watch or steer them. If one gets used anyway it still appears on the board as a card read out of the parent’s transcript, so no work is invisible — it is just not something you can type into.

Knowing what an agent is doing

Status comes from the agent itself, not from reading its screen. Every session Meshvy starts is handed hooks that report what it is doing, so a node carries a strip under its header with the tool in flight, the permission it is blocked on, or the first line of what it said when it finished.

An agent that needs you is marked unread — a dot on its header and in the sidebar, a count on the Dock icon, and a notification if you turn them on. ⌥⌘N walks you through whoever is waiting.

Model, effort and permission mode

All three sit in one menu: on the pill in the toolbar, and on every agent card. Whatever you pick is what the next agent starts with, and it is remembered for next time.

On a card it also retunes that session where the CLI allows it. /model and /effort take effect straight away. The permission mode is fixed at launch — ⇧⇥ cycles it inside the session, or restart the agent from the same menu.

on the orchestrator's PATH
$ meshvy spawn api "add the refunds endpoint"
agent_7f21 started in api