DSH 的核心理念是「一切皆插件」,這意味着擴展能力非常靈活。但在實際使用中,單純依賴當前上下文窗口會很快觸及限制,或者讓 AI 忘記之前的對話。dsh-memory-vault 就是爲此設計的插件,它通過外置數據庫,爲 DSH 提供了類似人類長期記憶的功能。
核心功能¶
這個插件主要解決智能體長時間對話中的記憶斷層問題,具體能力包括:
- 記憶管理:支持記憶的新增、查看、搜索、修改、刪除,以及歸檔和恢復。
- 分類與統計:提供分類管理、標籤管理和統計信息。
- 對話記錄:自動將每次完整對話保存爲記錄,僅保存用戶和助手的文本,不包含工具調用細節。
- 歷史檢索:專門用於搜索歷史對話內容。
- 分層記憶:採用分層結構管理記憶:
- 短期:最近對話。
- 中期:壓縮摘要。
- 長期:再壓縮摘要。
- 永久:當前會話重要內容。
- 全局預設:全局的“預設/用戶記憶”單獨保存,每次對話開始時會自動帶上。
- 自動管理:永久記憶綁定當前會話不會丟棄;長期記憶滿後會自動吸收重要內容並丟棄最舊的一條。
安裝與啓用¶
安裝插件最直接的方式是通過命令行。在終端執行以下命令:
dsh plugin --profile web-desktop add github:hjj588/dsh-memory-vault
安裝完成後,需要重啓 DSH 桌面客戶端才能生效。重啓後,在「設置 → 插件 → 管理」中找到該插件。
使用方式¶
插件運行後,會向 DSH 注入一系列工具,AI 在對話中會自動調用。你無需手動編寫工具調用指令,只需在對話中自然語言表達需求。常見的使用場景包括:
- “記住……”:向長期記憶庫添加信息。
- “查一下記憶……”:檢索存儲的記憶內容。
- “之前說過什麼……”:查詢歷史對話記錄。
配置與調優¶
默認情況下,短期保留 20 條原始消息,每次壓縮 10 條,中期和長期各保留 20 條摘要。如果需要調整這些參數,需要編輯配置文件 ~/.dsh/profiles/web-desktop/cordis.patch.yml。
在 memory-vault 配置項下添加或修改 config 字段:
- insert:
- id: memory-vault
name: 'dsh-memory-vault'
config:
shortTermLimit: 20
shortTermCompressCount: 10
mediumTermLimit: 20
mediumTermCompressCount: 10
longTermLimit: 20
注意事項¶
- 數據存儲:所有記憶數據保存在
~/.dsh/memory/memory.db中,與當前工作區路徑無關。 - 數據內容:插件僅保存用戶和助手的文本,不保存工具調用的細節。
- 運行權限:插件會以 DSH 進程的權限運行,安裝前建議檢查源碼與許可證。
總結¶
對於需要長時間維護上下文、進行多輪對話或構建長期記憶智能體的開發者來說,dsh-memory-vault 是一個實用的輔助工具。更多細節可以查閱 GitHub 倉庫 或 DSH 插件目錄。