DeepSeek Harness (dsh) 的 Work Continuity 插件——跨會話的工作狀態顯式持久化,和通用記憶分開管理。
前言¶
DSH 的插件生態強調模塊化。在使用智能體處理複雜任務時,常見的痛點是:上下文窗口有限,或者對話輪次過多,導致 Agent 在新會話中丟失了之前的進度或決策。如果依賴通用記憶,這些工作狀態往往會被淹沒,或者被隨意注入,導致上下文混亂。
Work Continuity 插件旨在解決這個問題。它將工作狀態(目標、決策、下一步)與通用記憶剝離,通過顯式持久化確保 Agent 在新會話中能立即接續手頭的工作,而無需人工重複交代背景。
核心功能¶
插件通過以下機制實現工作狀態的自動管理與追蹤:
- 事件自動捕獲:監聽宿主權威事件,自動捕獲目標變更(
goal/change)和任務清單更新(todo/write)。 - LLM 自主決斷:通過註冊
work_state模型工具,讓 LLM 在對話中自主判斷並記錄值得追蹤的節點。 - 顯式命令:提供
/checkpoint命令,允許用戶隨時手動記錄、更新或查看工作狀態。 - 壓縮後重錨:解決壓縮摘要導致的狀態丟失問題,在上下文壓縮後自動重置注入。
- 設定點偏差檢測:監聽工具調用,檢測 Agent 的操作是否偏離當前工作範圍,並在偏差時發出警告。
- 注入調度器接線:支持宿主的注入調度器,按實際注入量上報,未掛載時回退爲直接注入。
- 跨會話工作狀態顯式持久化:所有狀態寫入 SQLite 數據庫,支持跨會話讀取。
典型用法¶
使用 /checkpoint 命令可以快速管理當前工作流。
記錄工作狀態¶
- 設置目標:
/checkpoint goal 完成 M3 開發 - 記錄決策:
/checkpoint decision 用 MIT 許可 - 設定下一步:
/checkpoint next 合流組A - 記錄產物:
/checkpoint artifact D:/out/report.pdf - 查看狀態:
/checkpoint show
查看統計¶
- 使用統計:
/checkpoint stats - 清空狀態:
/checkpoint clear
安裝與配置¶
安裝¶
通過 CLI 安裝插件:
dsh plugin --profile <name> add github:Icstick/dsh-work-continuity
配置¶
安裝後,需要在 profile 的配置文件中顯式指定數據存儲目錄,否則插件無法正常工作。
編輯 <profile>/cordis.patch.yml:
- id: work-continuity
name: dsh-work-continuity
config:
workDir: C:\path\to\work-state # 必填:工作狀態庫絕對路徑
debug: false # 可選:調試日誌
安裝完成後重啓 DSH 即可生效。
設計原則與注意事項¶
- 數據歸屬:所有寫入操作都會在
work_audit表中留痕,保證可追溯。 - Fail-Open 機制:插件運行異常時只記錄日誌,絕不阻斷對話。
- 記憶邊界:記憶不負責替用戶把活幹完,它只負責記錄狀態,執行仍需 Agent 自主決策。
- 數據安全:數據存儲在
workDir/work.db中。卸載插件不會刪除數據,重新安裝即可恢復。