Kizuna:DSH 生態裏的 Agent 通訊錄與可靠投遞

前言

在 DSH 裏跑智能體時,常見做法是各自佔一個終端或一臺機器,任務靠人工轉發、臨時腳本或一次性 webhook 串聯。對方離線、網絡抖動或進程崩潰時,消息往往無聲丟失,也很難事後覈對「有沒有送到、試了幾次、最終狀態是什麼」。若你已經在用 DeepSeek Harness 的插件體系擴展能力,又需要多 Agent 之間按名字尋址、排隊投遞並留痕,下面介紹社區工作流插件 01men/kizuna(Kizuna)能補上的那一層。

這是什麼

Kizuna 由 GitHub 用戶 01men 維護(聯繫渠道見倉庫 README,維護署名 元冰可)。倉庫當前版本 0.2.0,許可證 MIT,狀態標註爲 v0.2 · A2A-ready。一句話定位:給每個 Agent 一份通訊錄條目(名稱、編號、能力、webhook)、一個常在線的信箱,以及 Hub 側的可靠中繼——沒有回執就不算送達,失敗按 +3 / +10 / +30 / +60 / +120 分鐘 重試,終態寫入只增不改的投遞留痕(默認保留 180 天以上)。

體系拆成三塊(與 README 一致):

組件 作用 部署位置
kizuna-hub 目錄、隊列、中繼、留痕 中心部署一次
kizuna-box 端側信箱與回執 每臺跑 Agent 的機器
DSH 插件 通過 DSH 暴露能力(見下文 bundle 形態) 安裝在 DSH profile 內

社區目錄頁:https://www.skillhub.cn/plugins/01men/kizuna。源碼與說明:https://github.com/01men/kizuna。

核心功能

下面只列資料中已寫明的部分。

通訊錄(Directory)
Agent 註冊名稱、編號、能力與 webhook;支持能力檢索。v0.2 起可選掛 A2A Agent Card,Hub 暴露 GET /.well-known/agent-card.json 等發現端點。

信箱(Letterbox)
官方端側服務 kizuna-box:支持一句話安裝腳本(Linux / macOS / Windows / Android Termux 等),崩潰後可重啓、可隨系統啓動。Hub 也可爲 Agent 提供託管信箱(拉取模式):用 agent_token 輪詢 GET /api/v1/mailbox 並 POST .../ack 簽收。

中繼(Relay)
經 Hub API 投遞任務包;接收方需合規回執。未簽收則按上述梯度重試。任務內容可開內容最小化(默認存 SHA-256 摘要)。結果經 POST /api/v1/tasks/{id}/result 回傳時,終態會生成回執信件回到發起方(reply_to 串聯)。

A2A 兼容(適配層,非硬依賴)
content.format=json 時 body 可原樣透傳 A2A Message/Task;與 Google A2A 在語義上互補,Kizuna 側負責持久隊列與送達保證。

MCP
同倉庫提供 kizuna-mcp(14 個工具,含 kizuna_join 自主註冊),可通過 npx -y github:01men/kizuna 啓動;憑據默認來自 ~/.kizuna-box/config.json。

Hub Web 管理臺
自託管 Hub 後,靜態管理頁在 http://<your-host>:7700/admin(與 API 同源),用於總覽、通訊錄、隊列、留痕等(詳見倉庫 docs/05-dsh-plugin.md 信息架構)。文檔亦描述了嵌入 DSH 側欄的六頁面板設計;當前 cordis.patch.yml 所聲明的 bundle 側重模型側工具,見下一節。

安裝與啓用

1、安裝 DSH 插件

倉庫 cordis.patch.yml 註釋中的安裝方式爲:

dsh plugin add github:01men/kizuna

安裝後通過 bundle 補丁插入模塊 kizuna/dsh-plugin/index.mjs(id:kizuna-letterbox)。默認配置 boxUrl: http://127.0.0.1:7788,也可用插件 config.boxUrl 或環境變量 KIZUNA_BOX_URL 覆蓋。補丁說明:該形態不向 DSH 掛載完整 Web 管理面板,而是提供按 DSH ToolRuntime 契約實現的、模型可見的本機信箱相關工具;插件本身不持有 Hub 令牌,Hub 回傳由 box 用自身 agent_token 轉發。

安裝前請自行閱讀 dsh-plugin 與 cordis.patch.yml 源碼,確認與當前 DSH 版本兼容;插件在 DSH 進程權限下運行。

2、(可選)自託管 kizuna-hub

若你需要自己的目錄與中繼,而非僅本機信箱工具,需在服務器上起 Hub。README 示例:

cd hub
npm install && npm run build
KIZUNA_ADMIN_TOKEN=change-me KIZUNA_PUBLIC_URL=http://<your-host>:7700 npm start
# 管理臺: http://<your-host>:7700/admin
# API:     http://<your-host>:7700/api/v1/...

或使用 Docker(TLS 配置見倉庫 docker-compose.yml 的 tls profile):

KIZUNA_PUBLIC_URL=https://hub.example.com KIZUNA_ADMIN_TOKEN=change-me docker compose --profile tls up -d

一次性註冊令牌默認 3 小時(KIZUNA_ENROLL_TTL_SECONDS,默認 10800)。公開 Hub 對未加白名單來源有 10 req/min 限流,提額流程見倉庫 QUOTA.md。

3、給目標 Agent 裝信箱或自主註冊

在接收端,把 Hub 安裝部署頁生成的一句話提示詞交給 Agent,或讓其讀取契約 https://kizuna.ybkkasi.com/join.md(自建 Hub 則換成你的 Hub 根地址下的 join.md)。社區落地頁:https://01men.github.io/kizuna/。

免登錄自助安裝端點示例(README):

# POST /install/self  {"name":"我的 Mac mini","capabilities":"文件整理"}
# → 201 含 token、install_prompt、mcp 配置等

典型用法

經 Hub API 發第一封信

需已持有 AGENT_TOKEN,並設 HUB 爲你的 Hub 根 URL:

curl -X POST "$HUB/api/v1/tasks" \
  -H "Authorization: Bearer $AGENT_TOKEN" -H "Content-Type: application/json" \
  -d '{"to":"A-9X2M","content":{"title":"Draft the report","body":"..."}}'
# → 202 {"task_id":"T-20261029-0F3K9A","status":"queued"}

A2A 消息透傳(Hub 不改造 body)

curl -X POST "$HUB/api/v1/tasks" -H "Authorization: Bearer $AGENT_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"to":"A-9X2M","content":{"format":"json","body":{"role":"agent","parts":[{"kind":"text","text":"…"}],"messageId":"msg-1","kind":"message"}}}'

接收方回傳結果

curl -X POST "$HUB/api/v1/tasks/T-20261030-XXX/result" -H "Authorization: Bearer $AGENT_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"state":"completed","message":"預審通過","result":{"score":0.98}}'

MCP 一鍵配置(與 DSH 並列的一種接入方式)

{
  "mcpServers": {
    "kizuna": {
      "command": "npx",
      "args": ["-y", "github:01men/kizuna"]
    }
  }
}

自檢:

npx -y github:01men/kizuna --selftest

需要 Node >= 18。

適用場景與注意

適合誰
- 多個 Agent 需要按編號/名字互派任務,且要求回執、重試、審計留痕;
- 希望在 DSH 裏用插件或 MCP 讀寫信箱,而不是每個 Agent 手寫 HTTP 客戶端;
- 需要與 A2A 發現/消息格式對接,但投遞層仍要可控、可自託管。

使用前請留意
1. 權限:DSH 插件隨當前 DSH 進程權限訪問本機與網絡;安裝前請審閱源碼與 MIT 許可證。
2. bundle 形態:dsh plugin add github:01men/kizuna 注入的是信箱工具鏈(默認連本機 7788),完整 Hub 運維仍依賴自託管 Hub 與 /admin 或 API;與文檔中的六頁 DSH 面板設計目標一致的部分以倉庫後續版本爲準。
3. 網絡與配額:使用公共 Hub 時注意 README 中的速率限制與白名單說明。
4. 合規:留痕表只增不改;是否滿足你方審計要求需結合導出(JSONL/CSV)與自有政策評估。

結尾

Kizuna 把「Agent 是誰、能做什麼」和「任務有沒有可靠送到、有沒有留下軌跡」拆成 Hub、box 與接入層(DSH 插件 / MCP / Web 管理臺)協作完成。若你在 DSH 工作流分類裏找多 Agent 投遞能力,可從社區頁瞭解概況,再按 dsh plugin add github:01men/kizuna 安裝插件,並按需自託管 Hub 與 kizuna-box。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜