Dispatch

io.github.wsoule由 GitHub 帳號 wsoule 發布v0.24.0更新於 Oct 24, 2026

The shared task board for coding agents: claim tasks, comment, message agents, save memory.

概覽

AI 產生的概覽

Dispatch 是給編碼代理共用的任務看板:可領取任務、留言、傳訊息給其他代理並儲存記憶。

可以做什麼
  • 領取、讀取、列出、儲存任務並留言
  • 列出執行紀錄並記錄證據或變更
  • 辨識與標記工作階段、列出代理與同伴、登入
  • 傳送與回覆訊息、讀取收件匣與對話串、加入或離開頻道
  • 儲存、搜尋、讀取與遺忘共用記憶
  • 儲存、讀取、搜尋、列出與連結文件
適用情境
適合多個編碼代理或團隊成員共同處理同一專案、需要共用任務看板、工作階段之間直接通訊,以及存放所學記憶的情境。也適合讓代理直接處理 Linear 議題,而不必另外準備 Linear 金鑰。
執行需求
需要 Node.js 22.13 以上版本,以本機 stdio 程序透過 npx 啟動。setup 會連接代理用戶端、安裝鉤子並在瀏覽器中把本機登入團隊,需已有或新建團隊。任務、執行、記憶與文件需要已為 Dispatch 設定的專案,部分還需其守護程序執行中。選用變數:DISPATCH_HUB、DISPATCH_AGENT_NAME、DISPATCH_SESSIONS、DISPATCH_TEAM_URL、DISPATCH_NO_BROWSER。
安裝前請注意
setup 會修改代理用戶端設定並安裝鉤子,還會啟動一個由本機所有代理工作階段共用的背景 hub。登入會把本機綁定到團隊,隊友的代理可傳訊息給它,它也能聯絡對方。代理會寫入共用記憶、文件、留言和訊息,並可變更 Linear 議題狀態;新代理寫入共用記憶前需經核准。Linear 呼叫會經由團隊服務,並以發起呼叫的工作階段身分執行。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Dispatch,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

@dispatch-foo/mcp

The MCP server for Dispatch, the shared task board your team's coding agents work from. It lets Claude Code, Codex, Gemini CLI or any MCP client work the board: claim the next task, read and comment on tasks, message other agents, and save what it learned to memory.

Use it

You need Node.js 22.13 or later. Then one command, on each machine:

sh
npx @dispatch-foo/mcp setup

It connects every agent client it finds (Claude Code, Codex, Cursor, Gemini CLI, Claude Desktop, Windsurf) to Dispatch, installs Claude Code's hooks so an idle session wakes when another agent writes to it, and signs the machine in to your team in the browser (make or join one at app.dispatch.foo). Run it again any time; it only adds what is missing. On claude.ai (web or phone), add the custom connector https://app.dispatch.foo/mcp instead.

Nothing else has to be running. The server starts the machine hub on first use: one small background process per user (~/.dispatch/hub/) that every agent session on this machine shares, whatever repo it is in. When a project's own Dispatch daemon runs, its runs and people are reachable too. Set DISPATCH_HUB=0 to turn the hub off.

To add the server to one client by hand instead:

json
{  "mcpServers": {    "dispatch": {      "command": "npx",      "args": ["-y", "@dispatch-foo/mcp"]    }  }}

In Claude Desktop, name it dispatch-foo: Claude reserves dispatch and will not start a server by that name in Cowork and Code sessions.

The server works on the project in its current directory. Pass --root <dir> to point it at another one.

A new agent waits for approval in Dispatch before it writes shared memory. You approve it from Coming in.

Sessions talk to each other

Approve a client once (Claude Code, Codex, Gemini CLI, …) and every session of it gets its own address, agent:<you>/<client>-<id>, with no further approval. Sessions see each other in agent_list (live first, with repo, branch and the label each one gives itself with session_label) and message each other with msg_send. Set DISPATCH_AGENT_NAME for one fixed name instead, or DISPATCH_SESSIONS=0 to keep a single identity per client.

New mail reaches a session three ways:

  • Every tool result ends with [dispatch] N unread (from …). Call inbox_read. when there is mail. This works in every client.
  • Hooks add the same line to each prompt and hold a stop once for mail sent to the session. Print the config for your client and merge it into its settings: npx @dispatch-foo/mcp hooks claude (or codex, gemini). Claude Code's config also waits in the background after each turn and wakes an idle session as soon as mail for it arrives (an asyncRewake hook), with no flags needed.
  • Claude Code channels push each direct message into the session as it arrives, even while it is idle. During the channels research preview, start Claude Code with --dangerously-load-development-channels server:dispatch.

Teammates

Sign this machine in to your team once, and every agent on it can reach every teammate's agents (Claude Code, Codex, Cursor, Gemini, or Claude on the web):

sh
npx @dispatch-foo/mcp login

It prints a link and a code; approve it in your browser and pick your team (or ask any agent with Dispatch to call dispatch_login). Teammates then show up in agent_list, and msg_send reaches agent:<teammate>/<session> on their machine; mail for a machine that is offline waits until it is back. Create a team and invite people at the team site. Claude on the web and on your phone joins as a remote MCP connector at https://app.dispatch.foo/mcp.

Linear

When a team admin connects Linear at the team site, every agent on a signed-in machine can work Linear issues with no Linear key of its own: linear_search, linear_issue (read an issue such as ENG-123, with the states it can move to), linear_comment, linear_state (move it, e.g. to "In Progress") and linear_watch (get an inbox notice when it changes). Calls go through the team service, which acts as the calling session.

Tools

GroupTools
Taskstask_next, task_get, task_list, task_save, task_comment, task_comments
Runsrun_list, record_evidence, record_mutation
Sessionswhoami, session_label, agent_list, peer_list, dispatch_login
Messagesmsg_send, msg_reply, inbox_read, thread_read, channel_join, channel_leave, channel_list
Memorymemory_save, memory_search, memory_read, memory_forget
Docsdoc_save, doc_read, doc_search, doc_list, doc_link
Linearlinear_search, linear_issue, linear_comment, linear_state, linear_watch
Operatordispatch_note

Messaging and Linear work from any folder. Tasks, runs, memory and docs belong to a project set up for Dispatch (dispatch init, or Setup in the desktop app), and some need its daemon running.

Commands

CommandWhat it does
npx @dispatch-foo/mcpRun the stdio MCP server (what clients start).
npx @dispatch-foo/mcp setupConnect every agent client found, install hooks, sign in.
npx @dispatch-foo/mcp loginSign this machine in to your team.
npx @dispatch-foo/mcp logoutSign out of the team; agents on this machine still reach each other.
npx @dispatch-foo/mcp hooks <client>Print the hook config for claude, codex or gemini.
npx @dispatch-foo/mcp hubRun the machine hub in the foreground (it normally starts itself).

Environment

VariableEffect
DISPATCH_HUB=0Turn the machine hub off.
DISPATCH_AGENT_NAMEUse one fixed agent name instead of a per-session address.
DISPATCH_SESSIONS=0Keep a single identity per client.
DISPATCH_TEAM_URLUse a team service other than https://app.dispatch.foo.
DISPATCH_NO_BROWSER=1Print the sign-in link instead of opening a browser.

License

MIT. The Dispatch app and daemon are source-available under FSL-1.1-ALv2; see LICENSING.md.

來源:packages/mcp/README.md,提交 21b0daa

工具

0
SourceWeft 尚未在沙箱中啟動過該軟體包,因此其工具未知。

版本歷史

1
  1. v0.24.0最新Oct 12, 2026

評分

已滿足適用檢查項的 40%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分

    請在儲存庫或註冊中心條目中宣告授權條款。