前言¶
在 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-scroll、data-composer-seat、data-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.1 与 react ^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-scroll、data-composer-seat、data-input-mirror等稳定属性挂钩,不依赖构建哈希。
结尾¶
dsh-composer-expand 的价值比较具体:让 DSH composer 在默认高度和 70vh 高书写视图之间切换,同时保留现有发送快捷键。项目仓库:https://github.com/13071301808/dsh-composer-expand