← 返回 Siami 首頁

【Hermes Agent 新功能】Kanban 登場:多智能體協作不再脆弱

【Hermes Agent 新功能】Kanban 登場:多智能體協作不再脆弱

Hermes Agent 近日發布了重量級新功能——Kanban(多智能體看板)。這不是另一個花俏的外掛,而是一套經過完整設計的多智能體協作框架,專門解決「一個任務需要多個專業角色接力完成」的場景。

為什麼需要 Kanban?

在 Kanban 出現之前,Hermes Agent 已經有 delegate_task 可以委派子智能體。但兩者有根本差異:

delegate_taskKanban
本質RPC 呼叫(fork → join)持久化訊息佇列 + 狀態機
父任務阻塞直到子任務回傳觸發後即可自由執行其他工作
子任務身份匿名子代理具名設定檔,附帶持久記憶
可恢復性無——失敗就只能重來可中斷 → 解除阻塞 → 繼續執行
人類介入不支援可隨時 comment / unblock
審計軌跡上下文壓縮後消失SQLite 永久保留
協調模式階層式( caller → callee)點對點——任何設定檔可讀寫任何任務

一句話概括:delegate_task 是一個函式呼叫;Kanban 是一個工作佇列,每個交接都是一筆記錄,任何設定檔(或人類)都可以看到並編輯。

適用場景

官方文件明確列出 Kanban 適合的幾種工作形態:

  • 研究 triage:多個研究智能體平行執行 → 分析師整合 → 作家起草,全程可有人類在環
  • 排程 ops:每天自動生成的簡報,持續數週累積成日誌
  • 數位分身:持續運行的命名助手(如「郵箱 triage」、「ops 審查」),會隨時間累積記憶
  • 工程管線:分解 → 多工作區平行實作 → 審查 → 迭代 → PR
  • 機隊工作:一個專家管理 N 個標的(如 50 個社群帳號、12 個監控服務)

核心概念

Board

看板是一個獨立的工作佇列,有自己的 SQLite 資料庫、工作區目錄和調度器迴圈。單一專案使用者預設使用 default 看板,完全不需要接觸「board」這個概念。

多 board 支援(atm10-server、mcp-tools 等)則提供絕對隔離:每個 board 有獨立的 SQLite DB、獨立的工作區和日誌目錄,工作进程只能看到自己所屬 board 的任務。

Task(任務)

每筆記錄包含:標題、選填正文、單一負責人(設定檔名稱)、狀態(triage / todo / ready / running / blocked / done / archived)、選填的租戶命名空間、以及冪等金鑰(用於防止自動化重複建立)。

Link(依賴鏈)

任務連結表記錄父 → 子的依賴關係。當所有父任務都抵達 done 狀態,調度器自動將子任務從 todo 提升為 ready。這是 Kanban 最關鍵的自動化——不需要人工追蹤哪個前置任務完成了。

Workspace(工作區)

支援三種工作區類型:

  • scratch(預設):在 ~/.hermes/kanban/workspaces/<id>/ 下建立全新的臨時目錄
  • dir:<路徑>:使用既有的共享目錄(如 Obsidian 保險庫、每帳號資料夾),必須是絕對路徑
  • worktree:在 .worktrees/<id>/ 下建立 Git worktree,專門用於程式碼任務

Dispatcher(調度器)

一個長期運行的迴圈,每 60 秒(預設)執行一次:收回超時聲明、收回崩潰的工作进程、將 ready 任務提升、原子性地認領並生成指定的設定檔。

調度器預設運行在 Gateway 程序內部,無需安裝或管理額外服務。若連續 5 次嘗試生成同一任務都失敗,會自動將該任務設為 blocked 並附上錯誤原因——防止不存在的設定檔反覆嘗試。

兩套操作介面

Kanban 為人類和智慧體設計了完全獨立的兩套操作表面,兩者共享同一個 SQLite 資料庫:

  • 人類 / 腳本 / Cron:透過 hermes kanban … CLI 命令、/kanban 斜線命令,或內建的 Web 儀表板操作
  • 智慧體:透過 kanban_* 工具組直接操作——kanban_show、kanban_complete、kanban_block、kanban_heartbeat、kanban_comment、kanban_create、kanban_link

智慧體從不呼叫 CLI,確保即使終端機工具指向遠端後端(Docker / Modal / SSH),也能正常運作。

工具組詳解

工具用途必要參數
kanban_show讀取當前任務(標題、正文、先前嘗試、父交接、留言、完整 worker_context)無(預設取 env 的任務 ID)
kanban_complete以摘要 + metadata 結構化交接完成任務summary 和/或 result 至少一項
kanban_block因需要人類輸入而升級reason
kanban_heartbeat長時間作業期間發送存活信號無
kanban_comment為任務執行緒附加持久備註task_id, body
kanban_create(Orchestrator 專用)向子任務 fan-outtitle, assignee
kanban_link(Orchestrator 專用)事後新增父子依賴邊parent_id, child_id

典型 Orchestrator 工作流

使用者:「幫我研究 ICP 募資環境並寫成發布文章」

# 模型呼叫(依序):
kanban_create(title="研究 ICP 募資,NA 角度", assignee="researcher-a")
# → t_r1

kanban_create(title="研究 ICP 募資,EU 角度", assignee="researcher-b")
# → t_r2

kanban_create(
    title="將研究整合為發布文章草稿",
    assignee="writer",
    parents=["t_r1", "t_r2"]  # 兩個研究者完成後自動提升為 ready
)
# → t_w1

kanban_complete(summary="分解為 2 個平行研究任務 + 1 個寫作任務;已連結依賴關係")

兩個研究任務會被調度器立即並行認領執行;當兩者都完成後,寫作任務自動進入 ready 狀態,被認領後開始執行。

Human-in-the-Loop

人類可以在任務執行期間隨時介入。透過 kanban_block(reason="需要確認方向") 將任務暫停,並在執行緒中留言說明原因。解除阻塞(/unblock)後,系統會以原始上下文重新生成該工作进程。

視覺化儀表板

Kanban 支援 Web 儀表板,LINE 式的工作流視圖,包含:

  • 七個狀態欄(triage、todo、ready、running、blocked、done、archived)
  • 任務卡片即時顯示負責人、優先順序、留言/連結計數、子任務進度
  • WebSocket 即時更新(任何設定檔或 CLI 的操作都即時反映)
  • 拖放移動任務狀態
  • 批次選取 + 批量操作(完成、封存、重新指派)
  • 依賴編輯器(晶片式父子關係顯示)

與其他框架的差異

官方文件聲稱對比了 Cline Kanban、Paperclip、NanoClaw 和 Google Gemini Enterprise 等方案,聲稱 Hermes Kanban 是唯一同時做到以下幾點的:

  1. 真正的多進程隔離(每個 worker 是獨立的 OS 行程)
  2. 任務依賴自動提升(不需要人工追蹤)
  3. 持久化 SQLite 審計軌跡(不死於上下文壓縮)
  4. 人類可在任意步驟介入

Hermes Agent 的 Kanban 功能為多智能體協作提供了一套工業級的基礎設施。對於需要跨設定檔協調、长时间运行、或需要人類審查的複雜工作流,這是目前最乾淨的解決方案。

文件連結:Kanban — Multi-Agent Board(官方文件)