在 DeepSeek Harness 的對話框中,方向鍵通常只用於光標移動或觸發默認行爲,發送過的內容無法通過快捷鍵回溯。dsh-input-history 插件接管方向鍵,爲對話框提供持久化的輸入歷史記錄。
核心功能¶
發送過的內容會保存到本地存儲,重啓應用後記錄仍在。當輸入框爲空時,按 ↑ 可以回溯更早的記錄,按 ↓ 可以回到更新的記錄。走到末尾後再按 ↓,會恢復回溯前尚未發送的草稿。
連續按 ↑ 或 ↓ 可以一直回溯,光標位置會自動處理,不需要每次重新把光標移到開頭。手工修改回溯出來的內容後,方向鍵會立即交還給編輯器,不再攔截。
插件會自動忽略空白內容,重複內容只保留最新的一條,且最多保留 200 條。在輸入法組合輸入期間、按住 Shift、Ctrl、Alt、Meta 等修飾鍵時,或者斜槓命令、@ 引用等彈窗打開時,方向鍵仍歸原程序使用,不會發生衝突。
安裝與啓用¶
- 編輯 profile 目錄下的
package.json,添加依賴項和 bundle 配置:
{
"dependencies": {
"dsh-input-history": "link:/absolute/path/to/dsh-input-history"
},
"dsh": {
"profile": {
"bundles": [
"dsh-input-history"
]
}
}
}
- 進入 profile 目錄,運行桌面端自帶的 pnpm 安裝依賴:
node "<DSH 安裝目錄>\resources\app\node_modules\pnpm\bin\pnpm.cjs" install
- 重啓 DSH Desktop。
注意: 安裝時必須使用 link: 協議而不是 file: 協議,且不要使用 npm 安裝。pnpm 會創建 Junction 指向源碼目錄,直接生效;npm 會複製文件,且會破壞 profile 的依賴管理結構。
典型用法¶
- 在會話輸入框輸入內容併發送。
- 把光標放回輸入框。
- 按
↑依次回溯更早的內容。 - 按
↓回到更新的內容。 - 走到末尾後再按
↓,會恢復回溯前尚未發送的草稿。
適用場景與注意¶
該插件依賴 Harness 的特定接口(conversation.input、setDraft、registerRootListener、arbitrate)。如果 Harness 構建較舊,沒有這些接口,插件會靜默不生效而不會報錯。
開發環境要求 DSH Desktop 2.0.13,客戶端核心要求 @deepseek-ai/dsh@0.1.5-rc.2,客戶端界面要求 @deepseek-ai/dsh-client-ui-conversation@0.1.5-rc.2,平臺要求 web,Node 要求 >= 22。
歷史記錄僅保存在當前應用 WebView 的本地存儲中,不會上傳到網絡,但清除站點數據會一併刪除歷史記錄。