dsh-composer-expand:爲 DeepSeek Harness 添加 composer 展開/收起

前言

在 DeepSeek Harness(DSH)裏寫長 prompt 時,composer 文本框通常會受到默認高度限制,草稿變長後只能在小窗口裏滾動。dsh-composer-expand 是一個面向 DSH web 的純前端插件,用來在 composer 工具行提供一個按鈕,把輸入區從默認封頂高度切換到更高的書寫視圖。下面介紹它的功能、安裝方式和注意事項。

這是什麼

dsh-composer-expand 是 DeepSeek Harness composer 展開/收起插件,由 13071301808 維護,許可證爲 MIT。它不新增 host 命令,不調用 LLM,也不進入會話日誌,只在現有 composer 上提供高度切換。

核心功能

1、在 composer 工具行添加展開/收起按鈕。

2、在默認封頂高度與 70vh 高書寫視圖之間切換。

3、展開時設置最小高度 300px,輸入內容較少時也保留一定書寫空間。

4、展開狀態下普通回車只插入換行,不觸發發送;Ctrl/Cmd + Enter 等帶修飾鍵快捷鍵仍可用於發送。

5、使用 localStorage[dsh-composer-expand:expanded] 在瀏覽器內持久化展開狀態。

6、按鈕文案與提示跟隨 DSH locale 服務,支持中英文。

7、純前端:無自定義協議、無 host 命令、無 LLM 調用、不進會話日誌。

8、通過 data-conversation-scrolldata-composer-seatdata-input-mirror 等穩定屬性掛鉤,不依賴構建哈希。

DSH 默認的 --dsh-composer-text-max-height: 336px 是 DSH 的設計選擇。本插件只放寬 composer 文本框容器,不影響其他 disclosure 行。

安裝與啓用

通過 npm 安裝:

dsh plugin --profile web add dsh-composer-expand

重啓 web profile 後,在 composer 工具行(發送按鈕旁)會出現展開按鈕。可按當前 DSH 使用方式重啓,例如:

dsh --profile web

可在 設置 → 插件 中確認 dsh-composer-expand 已列出。

本地開發

如果從源碼開發,先確保 dsh CLI 在 PATH 上。若未全局安裝,可執行:

npm install -g @deepseek-ai/dsh

然後構建並加入 web profile:

pnpm install
pnpm build
dsh plugin --profile web add ./
dsh --profile web

本地運行需要滿足 engines:node ^22.19.0 || >=24.0.0;peerDependencies 爲 @deepseek-ai/cordis ^4.0.1react ^18.2.0

典型用法

安裝並重啓後:

1、在 composer 工具行點擊展開按鈕。

2、輸入區切換爲 70vh 高書寫視圖;內容少時最小高度爲 300px

3、普通回車換行,使用 Ctrl/Cmd + Enter 發送。

4、再次點擊按鈕恢復默認封頂高度。

5、刷新頁面或切換工作區後,展開狀態會按當前瀏覽器記憶。

適用場景與注意

適合需要在 DSH web 中寫較長 prompt、希望減少小窗口滾動的使用者。

使用前注意:

  • 插件以當前 dsh 進程權限運行,安裝前應檢查源碼與許可證。
  • 展開狀態按瀏覽器記憶,不按會話;未來若同時渲染多個 composer,需要收窄 DOM 選擇器。
  • 展開高度固定爲 70vh
  • 本插件只放寬 composer 文本框容器,不影響其他 disclosure 行。
  • 它硬依賴官方 harness 客戶端服務:inject 註冊 slots 與 locale。
  • 它通過 data-conversation-scrolldata-composer-seatdata-input-mirror 等穩定屬性掛鉤,不依賴構建哈希。

結尾

dsh-composer-expand 的價值比較具體:讓 DSH composer 在默認高度和 70vh 高書寫視圖之間切換,同時保留現有發送快捷鍵。項目倉庫:https://github.com/13071301808/dsh-composer-expand

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜