一句話結論
dsh-superagent 不是一個新產品,而是 DeepSeek 團隊把「自己在用的 agent 工作流」去蕪存菁後開源出來的樣本: 一個只服務單一 GitHub repo 的主動式 coding agent,包成 DeepSeek Harness 的外掛。有人在 repo 裡叫它做事,它會自己開一個工作項、在獨立的 agent session 與目錄裡做完、回到原本那段對話回報(通常是開一張 PR),另外用一個網頁面板顯示「哪裡需要真人」。
但這個專案最值得看的不是「它能開 PR」——那已經不稀奇。它真正在處理的問題是:一個能替整個團隊做事的 agent,也能浪費整個團隊的注意力。 所以它的核心規則是「以最少的真人注意力,換最大的價值」,而且寫得很硬:只在被要求、或團隊白紙黑字寫下規則時才行動。
它是什麼、不是什麼
| 項目 | 內容 |
|---|---|
| GitHub | deepseek-ai/dsh-superagent-prototype |
| 星數/分支 | ★6,447/633 forks(2026-11-01 查詢) |
| 授權/語言 | MIT/TypeScript |
| 版本 | 0.1.0 |
| 建庫與最後推送 | 都在 2026-10-31(建立 09:32、推送 12:05 UTC) |
| 規模 | 216 個檔案、約 775 KB |
| 執行環境 | Node ^22.19.0 或 ≥24,且需要 DeepSeek Harness ^0.2.1-alpha.2 |
| 執行期依賴 | 只有 2 個(proper-lockfile、zod) |
它不是獨立 CLI,而是 Harness 的外掛(bundle)——這點很重要:它必須跑在 DeepSeek Harness 之上,不是裝了就能單獨跑。
而 README 自己把話講得很白:
「Research prototype for reference only, not an official DeepSeek product.」(研究原型,僅供參考,不是官方 DeepSeek 產品)
還補了兩句更難得的誠實聲明:程式碼是團隊日常開發長出來的、大部分工程由 coding agent 自己完成,因此「可能仍有 bug,風格與工程實踐可能不一致」;而且文章裡討論的部分設計,這個原型並沒有實作。
運作流程:從一句話到一張 PR
它的資料流是一條固定的鏈,每個環節都有明確定義:
| 環節 | 做什麼 |
|---|---|
| Source | 事件來源。GitHub(可選 Feishu)各自是一個實作,負責記錄讀取位置、自己的 bot 身分、過濾自己的訊息 |
| Trigger | 一個不可變的事件(誰、在哪、說什麼)。同一個 Trigger 被接受兩次只會產生一張 Ticket(幂等) |
| Thread | 依時間排序的 Trigger 串。同一條 Thread 同時只允許一個 Eval 在跑 |
| Eval | 兩層判斷(gate+assessment):這批事件該不該開新工作、該不該繼續、該不該停 |
| Mandate | 受理時發出的授權:政策版本、範圍、強度、命中的規則、發話者在該 Source 的身分。不可變,要擴大範圍只能開新 Ticket |
| Ticket | 一個「被授權的工作單位」。只有 Eval 能建立;有獨立狀態機(open → ended,可被人喚回) |
| Assignment/Executor | 把 Ticket 交給一個執行者實例;執行者在獨立 session(worker-<ticket id>)與獨立目錄裡工作 |
| Channel | 寫回 Source 的通道:回覆、開 PR、回應 review 都算寫入 |
這套設計解決的是 agent 自動化最常見的三個災難:重複觸發(幂等)、並發打架(一條 Thread 一個 Eval)、越權(Mandate 不可變)。
11 個領域概念,但只留必要的
團隊刻意把設計壓到「少數概念+具體實作」,商業需求只能變成某個概念的屬性,不能新增概念。核心概念可以整理成三層:
| 層 | 概念 | 一句話 |
|---|---|---|
| 來源層 | Source、Trigger、Thread、Correlation、Channel | 事件從哪來、屬於哪條討論、回哪裡 |
| 判斷層 | Policy、Eval、Mandate | 規則怎麼寫、怎麼判斷、憑什麼授權 |
| 執行層 | Ticket、Assignment、Subscription | 做什麼、誰做、後續討論怎麼接回來 |
其中 Subscription 是整套設計裡最聰明的一個:它讓「後續討論自動回到執行者」,不需要任何人再 @ 一次 agent。PR 關掉或合併後,Ticket 仍保留訂閱——有人留言就沿著同一份 Mandate 喚回,不用重新走一次判斷。這解決了「agent 開完 PR 就斷線」的老問題。
三層授權:誰能叫它做事
這是整個專案最不像玩具的地方。它把「能不能做」拆成三層,而且三層都不靠提示詞的自制力:
| 層 | 機制 | 重點 |
|---|---|---|
| ① 誰能發話 | Source 層的 allowed list(Policy 的一部分) | 只有名單上的人、或團隊開放討論串裡的人,發話才算「請求」 |
| ② 請求的強度 | admission table(准許程度表) | 分 mention(被 @)與 direct(私訊);表是 Policy 版本的一部分,調弱某格不會立刻停掉已開的 Ticket,但會在重新驗證時撤銷其 Mandate |
| ③ 已授權的範圍 | Mandate(不可變) | 範圍是寫死的;要更大範圍=新 Ticket。只有真人喊停、或新版 Policy 不再涵蓋,才會失效 |
還有一個關鍵設計:「沒人要求的自動工作,先只記錄、不執行」(record-only 模式)。等團隊看過「它本來會做什麼」覺得沒問題,才放寬到真的動手。這是把 agent 上線風險降到最低的做法,比任何「請謹慎使用」的警語都有效。
執行與資源控制
| 項目 | 設定 |
|---|---|
| 執行 session 命名 | worker-<ticket id>,每個 Ticket 一個目錄 |
| 背景工作上限 | 每一輪結束後,背景工作最多 30 分鐘,超過就砍掉 shell job 並回報「等待中」 |
| 目錄準備 | 首次執行前跑一次 prepare 指令(sh),限時 10 分鐘,失敗即該 Ticket 失敗並記錄輸出 |
| 併發 | 有設定的併發槽上限,額外保留 1 個槽給真人訊息或狀態查詢 |
| 可觀測 | 面板只列「需要真人」的事;健康的狀態不佔版面 |
那個「額外 1 個槽給真人」是實務細節,但很有意義:它保證人的一句話永遠不會排在 agent 的批次工作後面。
工程規模:小依賴、大文件
| 指標 | 數字 |
|---|---|
| 檔案數 | 216 |
| 架構文件 | docs/007-architecture.md 70 KB(最大的單一檔案) |
| 提示詞檔 | 14 個(含 team/communication.md 9.6 KB、scope.md、delivery.md) |
| 說明文件 | docs/000~008 共 9 篇,規定「必須照順序讀,每篇只建立在前一篇之上」 |
| 執行期依賴 | 2 個 |
只有 2 個 runtime 依賴、卻有 70 KB 架構文件——這個比例說明它的複雜度放在「治理與規則」,不是放在框架堆疊。對想研究 agent 系統設計的人,那份 70 KB 文件本身就是教材。
五個該保留懷疑的地方
| 疑點 | 說明 |
|---|---|
| 誕生不到一天 | 建庫與最後推送都在 2026-10-31,本文查證時星數已 6,447——熱度極高,但還沒有任何社群長期驗證 |
| 0 個 open issue 不代表穩定 | 這個專案 10-31 才公開,0 issue 更可能是「太新」而不是「沒問題」 |
| 必須搭配 alpha 版 Harness | 依賴 dsh ^0.2.1-alpha.2——alpha 會變,跟著升級可能隨時壞 |
| 官方明說不是產品 | research prototype、部分設計未實作、程式碼由 agent 自己寫、風格不一致;README 直接要你「先審再改」才用 |
| 沒有可驗證的成效數據 | README 與文件都沒有「省下多少時間、開了幾張 PR、誤判率多少」的數字;本文亦未實測,因此不給任何效能結論 |
另外,README 提到一篇同名文章《Exploring Super-agent Design: Towards a More Autonomous Agent System》,但repo 內找不到該文的公開連結,所以無法核對「文章描述」與「程式實作」的差距——這點只能等作者補上。
誰適合看、誰先不用碰
適合
- 想把 agent 接進團隊既有工作流(不是自己玩)的工程主管:這份 repo 是「治理先於能力」的參考樣本
- 正在設計多代理/審批制系統的人:11 個概念與 Mandate 的不可變設計可以直接借
- 已經在用 DeepSeek Harness 的人:這是官方生態裡第一個「主動式」bundle
先不用碰
- 只想要一個能自動回 issue 的機器人:這個要裝 Harness、跑 alpha、還要寫 Policy
- 想要開箱即用的 SaaS:它是原型,不是產品
- 需要穩定 SLA 的生產環境:0.1.0 + alpha 依賴,現階段不適合
站內延伸閱讀
- DeepSeek Harness 開源登場:「一切皆插件」的 Agent 框架 — dsh-superagent 就是掛在這套框架上的 bundle,先懂 Harness 再看這篇會更順
- DeepSeek Harness 十大插件推薦 — 同生態的其他外掛,可比較「主動式」與「被動式」插件的差別
- claude-mem 完整教學 2026:AI 代理長期記憶 — 代理要跨 session 工作,記憶層是另一個必須解決的題目
本文為獨立評測與整理,不含聯盟連結、未受任何廠商贊助。專案數據取自 GitHub 公開資料與 repo 內文件(2026-11-01 查證),程式行為描述以官方文件為準;本文未實際部署或執行該專案。
