前言¶
DSH 插件生態強調「一切皆插件」,很多界面行爲都可以作爲獨立 bundle 加載。對日常在 Web GUI composer 裏反覆輸入、修改指令的人來說,缺少“上下方向鍵回顧已發送指令”的能力,會讓重新執行類似命令、回到上一次草稿變得不順手。
dsh-composer-history 就是針對這一點:它爲 DSH Web 界面的 composer 輸入框提供命令歷史,允許用 ↑ / ↓ 瀏覽此前發送的指令,並在歷史末尾恢復編輯前的草稿。
這是什麼¶
baisama-cloud/dsh-composer-history 是一個面向 DSH Web GUI composer 的插件。它不改變消息發送邏輯,只擴展輸入框的歷史瀏覽行爲:按方向鍵切換已完成的用戶消息,並在到達最新條目後恢復當前編輯中的草稿。
核心功能¶
- 按
↑切換到較早的已發送指令,按↓切換到較新的指令,當前草稿被保留。 - 到達最新指令後再次按
↓,恢復之前編輯中的草稿。 - 只統計已完成的用戶消息,跳過系統注入的提醒。
- 多行草稿場景下,
↑僅在第一行觸發,↓僅在最後一行觸發。 - 在 IME 輸入組合中、文本被選中時,或按住
Ctrl / Cmd / Alt / Shift時不會觸發。
安裝與啓用¶
README 給出的安裝命令如下。命令中的 <owner> 是佔位符,實際使用時按倉庫所屬路徑替換:
dsh plugin --profile web add github:<owner>/dsh-composer-history
也可以在 DSH 設置中的 Plugins market 添加本倉庫進行安裝。本倉庫地址爲:
https://github.com/baisama-cloud/dsh-composer-history
典型用法¶
1、在任意會話中點擊 composer textarea。
2、按 ↑ 回看此前發送的命令;按 ↓ 向前移動,越過最新條目後恢復原始草稿。
3、編輯調出的命令後按常規方式發送。
版本與依賴¶
package.json 中聲明的版本爲 0.1.0,engines.node 要求 >=20。插件作爲 DSH bundle 提供,peer dependencies 爲:
react:^18.2.0@deepseek-ai/cordis:^4.0.1
package.json 中 dsh.client.platform 標記爲 web。bundle 文件包括:
lib/index.js:host half,README 說明爲 intentionally empty,所有行爲在客戶端。lib/client.js:browser half,作爲 Cordis plugin 通過window.__ModuleLoader__.load註冊;掛鉤conversation.input.leftslot,訪問 composer textarea、draft state(props.input.draft)、write action(props.inputActions.setDraft)和 session messages(props.session.nodes)。cordis.patch.yml:插入插件加載器行。
README 和 package.json 都說明 react 與 @deepseek-ai/cordis 作爲 peer dependencies 由 DSH 安裝提供,而不是要求用戶額外安裝。
適用場景與注意¶
適合在 DSH Web GUI 中頻繁輸入、複用或微調已發送指令的使用者。它也適合希望保持當前草稿不被覆蓋,並在歷史末尾回到編輯前狀態的流程。
由於 DSH 插件以當前 dsh 進程權限運行,安裝前建議先檢查源碼、許可證和依賴。本插件許可證在 README 和 package.json 中均明確爲 MIT。
小結¶
dsh-composer-history 補齊了 DSH Web composer 中“用方向鍵瀏覽歷史指令、並在末尾恢復草稿”的操作路徑。
- GitHub:https://github.com/baisama-cloud/dsh-composer-history
- 插件線索給出的目錄頁:https://www.skillhub.cn/plugins/baisama-cloud/dsh-composer-history