DeepSeek Harness 團隊於二零二六年十月三十一日公開 dsh-superagent 研究原型,三日內累積一萬五千八百六十四顆星。此代理只服務單一 GitHub 儲存庫,收到請求後自行建立工作項、獨立會話與工作目錄,完成後回到原對話交出 pull request。
研究原型的核心主張是把人類注意力當作成本。代理只在被指名或被書面規則允許時行動,只在有人必須決策或可以使用成果時發言,其餘時間保持安靜,工作量與訊息量分開計算。
專案定位寫在 README 首段,措辭相當克制。團隊明言這是參考用的研究程式,並非 DeepSeek 官方產品,程式由內部日常開發長出,相當比例的工程由編碼代理完成,因此可能仍有錯誤,工程風格亦未必一致。他們要求使用者在自己的環境採用之前先自行審閱與調整。
這個保留態度與題材本身的重要性並不衝突。專案處理的問題是代理進入團隊工作流程之後最難處理的一段,也就是誰有權起工作、工作可以做到幾遠、以及代理幾時應該閉嘴。
dsh-superagent 是什麼?
dsh-superagent 是 DeepSeek Harness 套件形式的主動式編碼代理,監聽 GitHub 事件,把獲授權請求轉成工作項,在獨立會話執行後回報。
它與一般聊天式代理的分別在觸發方式。使用者不必開著對話視窗等待,代理自己監看儲存庫的通知、被訂閱的 Issue 與 pull request、合併或關閉事件,以及預設分支的持續整合狀態。當有人在允許名單內向它提出要求,它才開一張工作單。
套件版本為 0.1.0,採 MIT 授權,主要語言是 TypeScript,程式碼量約二百零五萬位元組,另有約四萬位元組的 CSS 與一萬二千位元組的 Python。儲存庫以單一提交公開,沒有發行版本,說明文件按編號由 000 排到 008,要求讀者順序閱讀。

這個專案的設計哲學有什麼特別?
它把訊息、通知、問題、設定與文件段落視為注意力支出,每項都要交出高於成本的價值,否則移除。設計只保留必要概念與必要設定,文字規則直接寫成提示詞。
文件 000 開篇即列出判準。一個訊息、一個通知、一個問題、一個設定、一個面板元素、一段文件,各自都要耗用某人的注意力,因此每一項都必須給出高於該成本的價值。這條判準同時約束代理行為與系統設計。
由此推出五條行為規則。代理只在被要求、或書面規則允許時行動;只在有人必須決策或可以使用成果時發言;每次只問一個具體問題;按影響而非按工作量決定停手位置;失敗要如實報告,不得繞過限制以避免提問。
設計面的對應原則是減少概念與減少設定。業務需求要嘛成為既有概念的一個屬性,要嘛成為一段提示詞,系統不為它新增概念;若某個值幾乎適合所有團隊,就以預設值取代設定項。
授權機制如何決定誰可以起工作?
來源會記錄訊息是否直接指向代理,例如被提及或私訊。閘門核對發送者是否在允許名單,機器人只能產生候選而非明確請求。訂閱通道只加背景,不授予新權限。
授權分兩條路徑。第一條是評估,用來決定是否開新工作。它檢查發送者身分與政策,允許名單內的人直接向代理提出的要求視為明確請求,其他人類訊息按准入表處理,機器人除非列在該來源的機器人名單,否則不得進入。
第二條是訂閱,用來延續既有工作。被訂閱討論串上的每一則訊息都會送到已訂閱的工作單,包括機器人與持續整合系統的訊息。這條路徑繞過閘門,也不賦予任何新權限,每張工作單仍然受限於它自己的授權範圍。
事件本身亦設防重。觸發是唯讀事件,同一則事件被接受兩次只會產生一張工作單,重啟之後不會重播舊事件造成重複執行。
Ticket 與 Mandate 如何限制代理的行為範圍?
每次接受請求都會產生一份不可變授權,記錄政策版本、範圍、強度、符合的規則與發送者身分。範圍要放大必須重開工作單,只有人可以撤回授權,政策失效則自動撤銷。
授權命名為 Mandate,欄位包括政策版本、範圍、強度、符合的規則、發送者在該來源的身分,以及來源如何收到該事件。它一經簽發即不可修改,工作單結束也不會令它失效。
工作單的狀態機同樣刻意獨立。它由開啟走到結束,當有人在相關討論串發言,工作單會回到開啟狀態並沿用同一份授權,除非該工作單已被明確停止。工作單不跟隨執行器的狀態,因為同一張單可能由不同執行器接手。
政策變更的處理方式值得一提。當政策改動影響到進行中的工作單,系統把變更送到該工作單,並不會直接撤銷授權,理由寫在文件裡:取消會留下半完成的工作。
代理執行工作時有哪些具體限制?
每張工作單獲得獨立執行會話與目錄,以操作者的系統帳號身分執行指令且不經審批。前景指令五秒後轉為背景工作,背景工作最多三十分鐘,逾時即強制結束並回報等待。
執行環境的設計偏向讓代理保持在線。每張工作單對應一個名為 worker 加上工作單編號的會話,以及一個以工作單短名命名的目錄,兩者都建在設定的執行根目錄之下。工作會話以操作者的作業系統使用者身分執行指令,過程中不經人工審批,這一項在實際上意味著必須自行評估風險。
前景指令在五秒後自動搬到背景執行,目的是讓工作會話可以在下一步接收新訊息,而不必等長時間指令跑完。若一輪對話結束時仍有背景工作,該工作單會保留執行位置並維持在工作狀態,待背景工作回報結果後再由同一位置喚醒。
限制相當明確。背景工作最多有三十分鐘完成,到達上限時shell 工作會被終止,工作單回報等待狀態,報告會列出執行器最後的話、被終止的工作,以及仍在執行的子代理。交還給人的動作會即時釋放執行位置,但已啟動的伺服器等背景工作可以持續到該次指派結束。

管理面板與提示詞可以改什麼?
面板分為總覽、來源、觸發、評估、執行與設定六頁,先答三個問題:現在是否需要我、系統是否健康、一件工作的歷史。團隊可改四組提示詞,並可覆寫內建系統提示。
總覽頁只顯示需要人處理的工作、系統問題、過去二十四小時的活動計數與執行器負載,健康狀態不佔空間。這個排列直接對應前述判準,面板不為展示而存在。
可編輯的提示詞分成四組。通訊組決定幾時發訊息、訊息如何書寫,以及每條 GitHub 訊息開頭的那行聲明,預設文字是 This is by an automated agent, not a human。工作範圍組決定工作單幾時繼續、幾時帶草稿停手。交付要求組規定 pull request 要附的證據、自動合併的行數門檻與提交作者。團隊技能組則存放例如哪個飛書帳號對應哪個 GitHub 身分的知識。
設定項刻意保持精簡。工具描述、通知與卡片留在程式碼內,不開放透過提示詞設定修改,這個界線避免團隊把行為一致性拆散到多處。
專案的社群與數據表現如何?
截至二零二六年十一月三日晚間,專案累積一萬五千八百六十四顆星、一千六百九十六次分叉、九十七名關注者與零個發行版本,採 MIT 授權,主要語言為 TypeScript。
三日累積這個數字,節奏與專案規模不成比例。儲存庫在十月三十一日建立,以單一提交公開,貢獻者介面查詢結果為空,說明發布版本經過整理,並非開發過程的完整歷史。
星數的來源值得區分。一部分來自 DeepSeek 的品牌效應,另一部分來自題材本身,也就是團隊級代理的授權與注意力管理,這一塊在既有框架中較少被認真處理。分叉比率接近一成,反映不少讀者打算實際改寫,而非只收藏。
如何開始試用?
安裝由代理陪同完成。在自己的編碼代理中要求它讀取儲存庫的 SETUP.md,依指示設定儲存庫與帳號即可。過程每次只問一個短問題,最後一次顯示完整計劃。
專案沒有提供一行安裝指令,理由是設定步驟太多。README 要求使用者把設定工作交給自己的編碼代理,由它讀取 SETUP.md 逐步完成,過程中一次只問一個短問題,計劃先完整展示一次,然後才安裝與設定。
前置條件是兩個可用的身分。系統會像執行工作殼層那樣探測命令列工具,確認儲存庫與帳號可用,再把環境變數與命令包裝寫入並套用。設定失敗時,總覽頁會列出缺少的項目並連到對應設定。
文件要求按編號順序閱讀。000 講哲學,001 講領域模型,002 講授權,003 講執行,004 講提示詞,005 講面板,006 講部署,007 講架構,008 提供新增來源的食譜。這個排序避免讀者在未理解前一個概念之前遇到後面的術語。
出處連結有哪些?
本文整理自 dsh-superagent 儲存庫的 README、docs 目錄九份編號文件與 package.json,數據截至二零二六年十一月三日,全部可公開查閱。
- GitHub 儲存庫:https://github.com/deepseek-ai/dsh-superagent-prototype
- 設計哲學文件:https://github.com/deepseek-ai/dsh-superagent-prototype/blob/main/docs/000-philosophy.md
- 領域模型文件:https://github.com/deepseek-ai/dsh-superagent-prototype/blob/main/docs/001-domain.md
- 授權文件:https://github.com/deepseek-ai/dsh-superagent-prototype/blob/main/docs/002-authorization.md
- 執行文件:https://github.com/deepseek-ai/dsh-superagent-prototype/blob/main/docs/003-execution.md
常見問題有哪些?
以下五條問題涵蓋官方支援程度、與一般編碼代理的分別、授權可否繞過、在生產環境使用的風險,以及支援的來源種類,每題均以文件內容回答。這是 DeepSeek 官方產品嗎?
不是。README 首段明言這是僅供參考的研究原型,並非官方 DeepSeek 產品,程式由團隊日常開發長出,部分工程由編碼代理完成,可能存在錯誤,工程風格亦未必一致。
它與一般編碼代理有什麼分別?
差別在觸發與授權。一般編碼代理等待使用者輸入,dsh-superagent 自行監看儲存庫事件,並且必須先通過允許名單與政策核對,才會把請求轉成工作單。它同時限制自己的發言時機。
授權可以被訊息內容改變嗎?
不可以。文件寫明主機執行允許名單、規則與授權,訊息、留言與被引用的文件只是判斷輸入,無法改變權限。範圍要放大必須重開工作單,只有人可以撤回授權。
在生產環境使用有什麼風險?
最大風險是權限。工作會話以操作者的作業系統使用者身分執行指令且不經審批,代理發出的留言與 pull request 也掛在團隊日常帳號之下。文件建議先設短允許名單,並讓主動工作在只記錄不執行的模式下觀察。
目前支援哪些來源?
儲存庫內建 GitHub 與飛書兩種來源實作。文件 008 提供新增來源的完整食譜,示範以一個假想訊息佇列命令列工具實作 webhook 來源,說明事件翻譯、授權規則、回覆與輪詢四項責任。

總結:dsh-superagent 適合什麼團隊?
適合已有明確審核流程、願意先寫下授權規則的團隊。它處理的是誰可以起工作與行到幾遠,而非模型能力。缺少規則與覆核人手,只會換來更多待處理工作單。
這個專案的價值在把代理治理寫成可執行的結構,而非寫成建議。允許名單、政策版本、不可變授權與工作單狀態機,四者合起來構成一套可以審計的流程,任何一步都可以回溯到提出請求的人與當時生效的規則。
限制同樣清楚。它是研究程式,沒有發行版本,貢獻者歷史經過整理,文件亦表明部分設計只是方向而非已實作項目。生產環境採用之前,需要自行補上測試與權限隔離。
值得留意的反而是那份哲學文件。當代理可以替整個團隊行動,它也可以消耗整個團隊的注意力,這個觀察比任何功能清單都更接近多數團隊實際遇到的問題。