DeepSeek Harness (DSH) 採用插件化架構。在實際使用中,常會遇到需要將一個對話中的特定消息提取出來,放入另一個對話繼續,或者需要將某個工作區的對話整理歸檔的情況。dsh-baize-session (Baize) 專門解決這類跨對話上下文遷移與工作區管理問題。
這是一個用於 DeepSeek Harness (DSH) 的插件。它的核心功能是從當前對話中提取消息,並將其移動到另一個對話中(可以是當前工作區的現有對話,也可以是不同工作區的新對話)。同時,它也提供了一個工作區對話管理面板,支持歸檔、恢復、移動和刪除對話。
核心功能¶
- 跨對話移動上下文:支持從當前對話提取消息,追加到新對話或現有對話。
- 跨工作區支持:可以在不同工作區之間移動上下文。
- 對話管理:提供一個工作區面板,管理所有對話(包括歸檔),支持批量操作。
- 靈活的選擇方式:可以在對話列表中勾選,也可以在回覆旁的
+按鈕直接抓取內容。 - 命名與標識:選擇目標對話時顯示名稱而非 ID;消息行按作者(USER/ASSISTANT/CONTEXT/TOOL)標記。
- Token 預算:在寫入前估算 Token 數,超過限制會拒絕寫入。
安裝¶
通過 npm 安裝到 web profile:
dsh plugin --profile web add dsh-baize-session@0.1.2
安裝完成後需要重啓 DSH 進程以加載插件。
使用方法¶
- 打開任意一個對話。
- 點擊聊天視圖旁邊的 Tidy 標籤頁。
- 在該面板中,選擇目標工作區和目標對話(可以是“New conversation”)。
- 勾選需要遷移的消息行。
- 點擊 Relocate 按鈕。
注意事項¶
- 消息重寫:選中的消息會被重寫爲一段文本插入到目標對話的開頭,而不是作爲事件重放。
- 必須選中:如果不做任何選擇,插件不會寫入任何內容。
- 刪除限制:對話必須先歸檔才能被刪除,且已歸檔的對話無法被移動。
- 無本地狀態:插件自身不維護磁盤上的狀態文件,所有數據操作均由 DSH 處理。
總結¶
Baize(白澤)寓意通曉萬物。對於需要頻繁整理上下文、跨工作區複用內容的場景,這個插件提供了一個輕量且可控的方案。更多細節可參考 GitHub 源碼:https://github.com/bvcvb/dsh-baize-session