前言¶
在 DeepSeek Harness (DSH) Web 中,当 agent 发起 ask_user 或 plan 审批等提问时,提问面板会直接占据对话框底部的一大块区域。这会挤压对话历史可视的垂直空间,影响操作体验。
townrain/dsh-question-panel-collapse 插件解决了这一问题。它通过在提问面板的 header 内部增加一个折叠按钮,将面板收缩为一条紧凑的小条,释放对话区域的占用空间。
插件信息¶
- 插件名:
townrain/dsh-question-panel-collapse - 维护者:Townrain
- 许可:MIT
- 核心价值:将问答面板折叠为紧凑条,展开时保留未提交的草稿内容。
核心功能¶
- 折叠(⌄):点击面板 header 左侧的 chevron 图标,面板收缩成一条紧凑小条。此时左上角保留问题标题(13px 单行省略),右侧保留取消按钮与 chevron 按钮。
- 展开(⌃):点击折叠条内的 chevron 按钮,面板恢复完整内容(问题、选项、提交区)。折叠仅通过 CSS 隐藏内容区,面板组件与草稿状态始终存活在 composer chain 中,展开后原样恢复。
- 状态持久化:折叠状态自动保存到
localStorage。刷新页面或切换工作区后,折叠状态依然保留。 - 覆盖范围:覆盖
QuestionFlow(选择题/填空)与PlanReviewPanel(plan 审批)两种面板形态。 - 语言支持:中英文双语 tooltip,跟随 DSH 的
locale服务。 - 纯前端实现:无 host 命令、无 LLM 调用、不进会话日志,仅修改前端展示逻辑。
安装与启用¶
使用官方安装命令添加插件:
dsh plugin --profile web add ./dsh-question-panel-collapse
或者通过 GitHub 安装:
dsh plugin --profile web add "github:Townrain/dsh-question-panel-collapse#main"
安装完成后重启 DSH Web。当下次 agent 提问时,面板右上角“取消”按钮左边会出现 chevron 按钮。
典型用法¶
- 折叠面板:在提问面板的 header 左侧点击 chevron 图标,面板收缩为紧凑条。
- 展开面板:点击折叠条内的 chevron 按钮,面板恢复完整内容,之前输入的回答草稿原样保留。
- 状态保留:刷新页面或切换工作区,折叠状态会自动恢复。
适用场景与注意¶
- 适用场景:适合需要在提问时保持对话历史可见性的开发者。
- 技术依赖:插件硬依赖
inject = ['slots', 'locale'],需确保官方 harness 客户端服务可用。 - 安全提示:插件为纯前端实现,无后端交互。安装前建议检查源码与许可证(MIT)。
结语¶
该插件通过简单的折叠交互,优化了 DSH Web 中的屏幕空间利用,让对话与审批流程更加紧凑高效。