前言¶
DeepSeek Harness (DSH) 在處理複雜任務時,工具日誌容易迅速撐爆上下文窗口。dsh-memory-canvas 插件解決了這個問題。它將大量的工具日誌卸載到本地文件系統,同時保持任務畫布的 Mermaid 結構在上下文中,並通過 node_id 進行記憶召回。該插件由 guobinmengxiang-rgb 維護,無需後臺守護進程。
核心功能¶
該插件通過暴露以下工具供 Agent 調用,實現記憶管理:
-
memory_offload
- 參數:
title(必填),body(必填)。 - 結果:返回簡短的
id、文件路徑,並更新畫布。
- 參數:
-
memory_recall
- 參數:
id(必填)。 - 結果:返回存儲的
body(截斷至 8k 字符並附帶說明)。
- 參數:
-
memory_canvas
- 參數:無。
- 結果:返回任務畫布的 Mermaid markdown。
存儲與限制
* 默認存儲路徑爲 <cwd>/.dsh-memory/canvas.md 和 <cwd>/.dsh-memory/refs/{id}.md。
* 可通過環境變量 DSH_MEMORY_DIR 覆蓋根目錄。
* 畫布節點使用 24 字符的標題;完整文本保存在 refs/ 目錄下。
安裝與啓用¶
- 安裝插件到指定配置文件:
dsh plugin --profile web add github:guobinmengxiang-rgb/dsh-memory-canvas
- 檢查配置層是否已添加(無需啓動進程):
dsh --profile web --dump-config
你應該能看到 `dsh-memory-canvas` 層。確認無誤後,像往常一樣啓動該配置文件。
典型用法¶
Agent 必須顯式調用上述工具,插件不會自動攔截工具日誌。倉庫中包含一個 demo.mjs 示例,演示了寫入 refs/、打印畫布、通過 ID 回憶以及斷言 body 匹配的完整流程。
注意事項¶
- 開發者預覽:DeepSeek Harness 處於開發者預覽階段,存在破壞性變更。
- 本地運行:插件在你的機器上運行,不涉及雲端數據傳輸。
- 工具區分:不要安裝錯誤的
dsh。官方 CLI 是npx @deepseek-ai/dsh web。PyPI 包deepseek-harness-cli是一個不同的工具(用於dsh doctor/dsh chat)。 - 配置文件:該插件的
cordis.patch.yml捆綁使用包名dsh-memory-canvas,而不是文件系統路徑。
總結¶
dsh-memory-canvas 提供了一個輕量級、基於文件的記憶層,適合需要管理大量工具輸出的 DSH 代理任務。更多細節和源碼可參考 GitHub 倉庫。