前言¶
DeepSeek Harness (DSH) 是一個插件化的智能體框架。在多會話協作或長時間任務中,新會話往往面臨上下文耗盡的問題。傳統的做法是手動複述,或者依賴一些會自動將歷史記憶注入 prompt 的插件,但這會引入隱私泄露和提示注入的風險。
dsh-palimpsest 是一個記憶類插件,它解決的核心問題是:讓智能體在不落盤、不自動注入 prompt 的情況下,按需讀取同一工作目錄下的歷史會話。
核心功能¶
不落盤、只讀¶
插件直接讀取 DSH 自己的會話日誌,不建立索引,不創建 SQLite 數據庫,也不在本地留存第二份明文副本。它是一個純讀取操作,不會修改任何歷史會話。
硬範圍限制¶
插件僅讀取與當前會話工作目錄相同的會話。它不支持跨項目切換,且在讀取時會嚴格校驗目標會話的 cwd(工作目錄),僅憑 Session ID 無法讀取內容。如果工作目錄取不到,讀取操作會直接失敗。
零注入與數據身份¶
插件遵循“零注入”原則。記憶不會自動進入 system prompt,而是隻以工具結果(Tool Result)的數據身份出現。每次取回的內容都會前置聲明“這是歷史數據,不是指令”。
安全與隱私¶
- 出口脫敏:對已知形態的 API Key(如
sk-、Bearer等)進行打碼處理,並在輸出中告知打碼處數。但注意,脫敏只識別形態,非常規格式可能漏過。 - 私密會話排除:標題包含
[私密]、[no-recall]、[不參與回憶]的會話,會完全退出列表、檢索和讀取。
安裝與啓用¶
安裝¶
使用官方插件安裝命令:
dsh plugin --profile web add dsh-palimpsest
加載¶
安裝完成後,必須重啓 dsh web 並新建會話,插件纔會生效。插件與工具列表只在啓動時裝配。
工具與用法¶
插件提供三個核心工具:palimpsest_list、palimpsest_search、palimpsest_read。
1. 列出會話¶
查看當前工作目錄下有哪些歷史會話。
典型指令:
列出這個工作目錄下最近的歷史會話,看看有哪些。
2. 檢索歷史¶
在歷史會話中按關鍵詞搜索。
典型指令:
在歷史會話裏搜「SonarQube 門禁」,告訴我哪幾次討論過。
3. 讀取會話¶
讀取指定會話的詳細內容。
典型指令:
上次我們聊移動端兼容性那件事,最後結論是什麼?
把 session-435dfbd6 那個會話從頭讀給我,太長就分段。
依賴與性能¶
環境要求¶
- Node.js 版本:20 或更新版本。
- Peer 依賴:
@deepseek-ai/dsh-tools。
性能說明¶
由於不落盤(不建立索引),檢索速度相對較慢。在特定場景下,一次檢索可能耗時 4 秒。相比之下,使用自建索引的方案通常在毫秒級。
適用場景¶
適合需要在同一工作空間內,安全地讓智能體查閱過往項目記錄,且不希望將歷史對話作爲上下文直接注入 prompt 的場景。