前言¶
在使用 DeepSeek Harness(DSH)進行長會話開發時,上下文膨脹是一個常見問題。隨着歷史記錄堆積,token 消耗增加,模型推理速度變慢,且可能丟失細節。傳統的手動壓縮操作會丟失關鍵信息。此外,主模型承擔了過多的執行負擔,許多適合更廉價模型的任務也被主模型處理。
dsh-switchman 旨在解決這些問題。它是一個 DSH 插件,將主模型從執行轉變爲調度。它實時測量上下文水印,將任務分發到合適的調度池,並管理智能體團隊。這不是一個新的模型,而是一套掛載在 DSH 上的調度策略。
插件概述¶
dsh-switchman 是 DeepSeek Harness(DSH)的一個插件,提供上下文水印控制、調度池管理和智能體團隊管理,支持自主編碼工作流。該插件由 mrzturn 維護,採用 MIT 許可證。
核心功能¶
1. 上下文水印控制¶
插件通過三個閾值監控會話 token 數量,防止上下文無限膨脹:
- 50k tokens:軟閾值,提示模型可能需要委託任務。
- 90k tokens:硬閾值,限制單次讀取預算,引導會話結束。
- 130k tokens:強制截斷閾值,自動 fork 會話、壓縮上下文並喚醒備份會話繼續任務。後臺子代理的 ID、任務和報告路徑會寫入交接文檔,確保不丟失狀態。
用戶可以通過以下命令手動干預:
- /ctx-pause:暫停水印動作,但繼續測量。
- /ctx-resume:恢復水印動作。
- /ctx-handover:立即觸發會話交接,無需等待閾值到達。
2. 六個調度池¶
插件定義了六個調度池,每個池對應不同的任務類型。用戶可以在設置頁面配置每個池的模型優先級和等級(S/A/B/C)。
- 經濟池:處理小型批量任務。
- 機械池:處理模板重寫。
- 主模型池:日常編碼任務。
- 困難池:處理困難推理和大重構。
- 視覺池:處理圖像任務。
- 審查池:獨立驗證。
調度模式包括關閉、建議和強制模式。在強制模式下,超出池定義的模型會被拒絕。
3. 智能體團隊模式¶
默認爲輕量級子代理調度。開啓“智能體團隊”後,會啓用團隊策略(默認委託、分層驗證、共享任務板)。
- 分層驗證:超過 20 行的變更由測試者檢查;超過 300 行或涉及核心/安全/數據一致性的變更,會額外提交給獨立審查者。
- 共享任務板:主模型可以通過 team_task_* 命令將任務發佈到共享任務板。
- 模型白名單同步:開啓此選項後,插件會將所有調度池的模型合併寫入 DSH 的子代理模型白名單,作爲單一事實來源。
4. 語言偏好與界面¶
- 語言偏好:支持全局或項目級配置回覆、註釋和文檔的語言。
- 界面本地化:支持多語言界面,無需額外下載。在設置頁面的“界面”部分選擇語言,或保持“自動”跟隨 DSH 應用語言。
5. 內置技能¶
插件預置了三個技能:
- db-query:只讀 MySQL/Redis 驗證,用於數據對賬和緩存檢查。
- git-commit-message:生成規範的提交信息。
- requirement-docs:生成需求分析、PRD 和設計文檔的標準輸出。
安裝與依賴¶
安裝前請確保環境滿足要求:
- Node.js >= 24
- DSH >= 0.2.0-rc.0
使用以下命令安裝:
plugin_manager: install_bundle target=dsh-switchman
典型用法¶
安裝後,主模型會根據上下文水印和調度池推薦進行任務分發。用戶可以:
1. 在設置頁面配置調度池的模型優先級。
2. 使用 /ctx-pause 或 /ctx-resume 控制水印行爲。
3. 使用 /vision 命令讓視覺池模型處理圖片(例如:/vision what's wrong with this image)。
注意事項¶
- 插件依賴
@deepseek-ai/schemastery。 - 智能體團隊模式需要用戶手動在設置頁面開啓。
- 插件以當前 DSH 進程權限運行,安裝前建議檢查源碼和許可證。
總結¶
dsh-switchman 通過上下文水印和精細化的調度池管理,幫助開發者控制長會話的 token 消耗,並將適合的任務分流給更合適的模型。配合智能體團隊和分層驗證機制,它能爲自主編碼工作流提供更穩定的基礎設施。