前言¶
在 DeepSeek Harness(DSH)裏用單個會話扛長任務時,上下文會越積越多:繼續聊容易在尾部出錯,硬壓縮或換新會話又可能丟掉已經對齊過的狀態。交接文檔可以補課,但沒有統一的閘門、體檢和壓縮時機,運維成本會落在人身上。dsh-handover 是 MingMaple 維護的工作流類插件,把「全局」交接、水位閘門、會話清點與上下文壓縮續跑做成工具與設置頁,只走宿主公開擴展點,不改 DSH 本體。
這是什麼¶
- 名稱:
@mingmaple/dsh-handover(GitHub:MingMaple/dsh-handover) - 定位:DeepSeek Harness 插件——會話水位、交接文檔體檢與上下文壓縮續跑
- 許可:MIT;當前公開版本 0.9.12(
package.json) - 宿主要求:
engines.dsh爲>=0.2.1-rc.2 <0.3.0-0,支持 desktop / web profile;依賴 DSH 的ctx.compaction服務,未掛載時壓縮相關工具會明確報錯
插件按會話角色裝配工具與提示段。全局角色約 22 個工具並帶提示段,項目與雜項各約 9 個;普通角色不注入提示、不加載工具。代理子會話不裝配 ho_ 與 peer_ 工具。
核心功能¶
下面按 README 已列能力歸納,便於對照是否覆蓋你的流程。
起始簡報與會話清點¶
一條命令可返回水位、閘門、活躍與沉默、階段建議。另可查看會話水位與狀態,設定角色,建立下一代會話,以及歸檔與解歸檔。
交接體檢¶
檢查交接文檔的結構、字段與佔位符,逐條列出問題。全局交接寫在 _Control_Center/records/Global_Handover.md,項目與雜項寫在各自目錄,每次寫入前備份。
壓縮與續跑¶
由水位與剩餘壓縮次數共同判定時機,須用戶在設置頁點「壓縮授權」(單次授權 5 分鐘內有效);壓縮在回合結束後執行。登記時助手以 resume 選擇去向:繼續工作時續跑,任務已收尾時靜默等待;狀態切換與失敗原因寫入結果。
水位與動作對照(壓縮次數默認最多 3 次,用盡後無論水位高低均建議換任):
| 水位 | 動作 |
|---|---|
| 低於 32% | 繼續 |
| 32% 至 35% | 可寫交接;關鍵步驟時可暫緩 |
| 35% 至 85%,已壓少於 3 次 | 寫交接、原地壓縮、讀交接續跑 |
| 85% 及以上,已壓少於 3 次 | 強制壓縮兜底 |
| 任意水位,已壓滿 3 次 | 寫交接、建立新會話 |
會話間通信與工作區遷移¶
會話之間可直接對話,默認沉默,任務完成不向全局報告。換盤或搬動全局根目錄時,支持預檢、複製並逐文件校驗、切換、改寫登記、重建鏈接、清理舊副本;另有庫快照、打包、校驗與恢復,包內絕對路徑單獨體檢。
設置頁¶
單頁卡片式:壓縮授權、移動全局根目錄、會話角色、全局前置提示詞、會話水位、通用約束條閘門、交接文檔體檢、插件與會話間通信守衛等。未接入工作區時置頂「首次安裝」,可一鍵部署文件體系、工作區與會話;已接入但無全局會話時顯示「全局會話」卡片。
安裝與首次部署¶
插件以當前 DSH 進程權限運行;安裝前建議閱讀倉庫源碼與 LICENSE。
從 GitHub 安裝¶
桌面版:側欄「插件」→「添加插件」,粘貼 https://github.com/MingMaple/dsh-handover,裝完重啓 DSH。
Web 或 CLI:
dsh plugin --profile web add github:MingMaple/dsh-handover
從 npm 安裝¶
包名 @mingmaple/dsh-handover,版本與倉庫同步:
dsh plugin --profile web add @mingmaple/dsh-handover
首次使用¶
- 打開設置頁中的 dsh-handover,在「首次安裝」卡片粘貼一個長期存在目錄的絕對路徑。
- 點「一鍵部署」。插件在該目錄內建立
_Workspace與整套文件結構,註冊爲「全局」工作區,並新建「全局」會話。 - 在左側「全局」工作區打開該會話即可開始。僅需先鋪文件時可點「僅建立文件體系」,之後再點「註冊爲工作區」。
命令行等價:ho_init(parent="<已存在目錄>", register=true),再新建標題含「全局」的會話。
典型用法¶
安裝後可用自然語言說明意圖,不必死記命令名。README 示例:
| 想做什麼 | 可以這樣說 |
|---|---|
| 看整體狀態 | 先出一份起始簡報 |
| 查規則 | 把 Charter 第 7.2.3 節取出來 |
| 交接並壓縮 | 先把交接文檔寫好,再壓縮並繼續 |
| 換任 | 建立下一代全局會話 |
| 設置角色 | 把 Demo1 設成項目角色,並讓它整理自己的文件 |
| 自檢 | 檢查插件當前狀態 |
四類會話角色:全局(協調、維護規則與交接)、項目(單庫與骨架檔案)、雜項(單任務)、普通(無注入)。換角色在下一輪請求即生效;插件重載後已存在會話仍用舊提示段文本,需要新文本時重啓 DSH。
適用場景與注意¶
適合誰:需要多會話、多項目/雜項分工,且要把交接文檔、壓縮閘門和續跑流程固化在 DSH 裏的開發者。
上下文開銷:固定開銷爲工具 schema 與提示段。README 按 0.9.6 實測,全局提示段約 271 加權 token,項目約 247 至 256,雜項約 248 至 254,隨項目名與路徑長度小幅波動。
邊界:ptc 呈現模式下插件工具只能經程序調用;遷移只搬文件與清單,不改寫內容;項目名不超過 24 字符、任務名不超過 40 字符,按目錄名校驗。卸載後殘留限於 ~/.dsh/storages/dsh-handover.* 與 ~/.dsh/storages/dsh-handover/logs/,刪除即可清零。
遷移五步、常見故障等細節見倉庫內 docs/migrate.md、docs/troubleshoot.md。
結尾¶
dsh-handover 把長會話裏的水位判斷、交接體檢、壓縮授權與續跑登記收進一套工作流,減輕「何時壓、壓完去哪、如何換任」的手動負擔。社區目錄頁:SkillHub - dsh-handover;源碼與完整說明:GitHub - MingMaple/dsh-handover。