dsh-question-panel-collapse
by Townrain
DeepSeek Harness (DSH) Web 的 提问面板折叠 插件:agent 向你提问时(ask user / plan 审批等),提问面板会直接占住对话框底部一大块。本插件在 提问面板自己的 header 里 (✕ 取消按钮左边)加一个纯图标 chevron 小按钮——点它把面板 折叠成一条紧凑小条 (不是消失),再点展开,…
A question-panel collapse plugin for DeepSeek Harness (DSH) Web: when the agent asks you something (ask user / plan approval and the like), the question panel takes up a large chunk at the bottom of the chat. This plugin adds an icon-only chevron button in the panel's own header (left of the ✕ cancel button) — click to collapse the panel into a compact bar (not hidden away), click again to expand
安装
dsh plugin --profile web add github:Townrain/dsh-question-panel-collapseGitHub 源码安装:首次需按提示配置 allowBuilds 构建授权后重试
安装与环境配置指引、插件开发教程见 DSH 中文社区文档 ↗
安装即在你的机器上以你的权限运行第三方代码——它可读写文件、使用凭据、访问网络,DSH 的工具审批不会为插件代码加沙箱。「检测到 manifest」仅代表发现 dsh.bundle / dsh.plugin 清单,不构成兼容性或安全审查;安装前请审阅源码,不熟悉的插件先在不含密钥的环境试用。
README
DeepSeek Harness (DSH) Web 的提问面板折叠插件:agent 向你提问时(ask_user / plan 审批等),提问面板会直接占住对话框底部一大块。本插件在提问面板自己的 header 里(✕ 取消按钮左边)加一个纯图标 chevron 小按钮——点它把面板折叠成一条紧凑小条(不是消失),再点展开,未提交的回答草稿原样保留。
功能
- 折叠(⌄):面板 header 内 ✕ 左边的纯图标 chevron 按钮(无文字)。点击后面板收缩成一条紧凑小条:左上角保留问题标题(13px 单行省略)、右侧保留 ✕ 取消与 chevron。
- 展开(⌃):点折叠条里的 chevron,面板恢复完整内容(问题、选项、提交区),回答草稿原样保留(折叠只是 CSS 隐藏内容区,面板组件与草稿 state 始终存活在 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 按钮。
工作原理
| 环节 | 机制 |
|---|---|
| 按钮位置 | React Portal 渲染进 [data-question-key] header,wrapper insertBefore 插到 ✕ 之前,margin-left:auto 贴右(header 是 flex + space-between) |
| 面板检测 | MutationObserver 监听面板 DOM 出现/消失(rAF 节流),注册在 shell.overlay(frame 悬浮层,不被 composer chain 的 fallback 隐藏机制影响) |
| 折叠切换 | 在 [data-conversation-scroll] 上切换 dsh-question-panel-collapse-on class,CSS 隐藏 [data-question-scroll] 内容区与 footer 提交区,header 压缩为紧凑条(标题小字、chevron 略下移) |
| 草稿保留 | 内容区 display: none 不动面板 state,展开后原样恢复 |
| 状态共享 | 模块级 observable + useState 桥(session 作用域 entry store 按 entry×session 各自实例化,无法跨组件共享),写时持久化 localStorage |
| 硬依赖 | inject = ['slots', 'locale'] — 均为官方 harness 客户端服务;react-dom portal |
开发与打包
pnpm install
pnpm build # tsdown: lib/index.js(ESM host)+ lib/client.js(ModuleLoader 客户端 bundle)
License
MIT
原始 README: https://github.com/Townrain/dsh-question-panel-collapse/blob/main/README.md ↗
同类插件
查看全部 →
dsh-web-ui-all
DSH Web UI 插件与皮肤合集:任务看板、git 图、右侧面板、远程移动端 UI、桌宠、实时 token 统计与皮肤中心。

dsh-web-ui
DSH Web UI 插件与皮肤合集:任务看板、git 图、右侧面板、远程移动端 UI、桌宠、实时 token 统计与皮肤中心。

dsh-TUI
Claude Code 风格全屏终端 UI:像素鲸鱼顶栏、实时工作状态行、思考流式展开。

DSH-better-sidebar
侧边栏完整工作台:内置文件渲染编辑、终端、Git 与子代理,支持三方插件注册新 Tab。

working-activity
让 agent 的"工作状态行"活过来——实时工具动态与进度、俏皮文案、模型自述、上下文预警。同一套想法,适配两个平台: pi CLI 与 DeepSeek Harness(DSH) 。

deepseek-idesign
可视化设计工作室,支持网站、App 原型、海报、信息卡、报告和杂志的模板创建、元素编辑、选区级 AI 草稿衔接与导出。