DeepSeek Harness Hub
← 返回列表

工作段折叠a179-sanae/dsh-auto-collapse

DeepSeek 客户端兼容 / 相关生态spec-screenedui在 GitHub 查看 ↗
✓ 可直接安装

把思考工具上下文折叠成二级工作段,保持对话清爽

自动检查通过:npm 包已发布且 engines 声明满足基线(声明 Node >=22);该结论来自程序自动检查,未经人工实机验证。 · 最近上游提交 2026/9/14 · 已提供中文文档
综合分
53.8
GitHub 分
53.8
用户评分
★ Stars
58
周下载量
兼容 / 相关生态插件(非 dsh 原生,请按其对应运行时安装)
git clone https://github.com/a179-sanae/dsh-auto-collapse.git
🟢实装验证通过· 2026/9/19
由 dsh-plugin-verify(GitHub Actions)在真实 dsh 环境安装成功,非静态推断。
数据截至 2026/9/14(元数据每日更新 · 实装验证按队列轮转,单条结论的验证时间见上方)
安装兼容性检查✓ 自动检查通过

以下结论由程序自动检查 npm 包、engines 声明与入口文件得出,未做人工实机验证——能装不等于用着没问题。

npm 包dsh-auto-collapse @ 0.2.1
Node 引擎要求 >=22 · 基线 Node 22.19 满足
dsh CLI 依赖未声明 dsh 版本约束
入口文件main/exports/bin 已声明

验证方式:npm registry 存在性 + package.json 静态校验 · 最后验证 2026/9/17 15:49:12

依赖的 DSH / Cordis 模块
@deepseek-ai/schemastery
用户评分
还没有人投票,来当第一个
订阅周报,不错过优质插件更新
每周一封 · 高评分插件 + 新用户活动

README

dsh-auto-collapse

DSH Web 工作段折叠:保留原生一级,把正文之间的思考、工具和上下文合成一个二级;展开后显示原生三级。

English · 插件市场

展示方式

正文 A
▸ 已思考 · 使用了浏览器 · 已注入上下文 · 编辑了文件
正文 B
▸ 正在运行 npm run check
正文 C

每段只有一个二级入口。思考变成工具调用、工具后追加上下文,都继续归入当前段;新正文出现后,后续工作另起一段。只有思考、只有上下文或单条工具也可以成段。

- 一级:DSH 原生回合摘要。 完成判断、计数、过程正文与最终回答由宿主负责。
- 二级:插件工作段。 工作中可见,展开原生一级后也保留;默认收起,流式追加保持手动展开意图。
- 三级:原生工作行。 二级展开后按原顺序展示思考、工具、上下文;每行自己的详情开合保持原样。

混合工作段示例

预览来自浏览器验收场景,使用 DSH 0.1.2-rc.1 原生 disclosure、思考和回合摘要组件。

行为

正文是分组边界,同一 assistant-step 内的“思考—正文—思考”也会切开;Markdown 换行不拆组。纯图片、SVG 和其他正文内容保持原生展示。用户消息、steering、不同 turn 和未知语义节点不会被跨越。

原生一级收起时,受它控制的二级入口一起隐藏,但二级状态保留。若上下文位于原生折叠范围之外,仍保留可访问的二级入口;点击展开会按需打开原生一级。Normal 模式没有原生一级时,二级仍生效。

系统提示词也归入相邻的上下文工作段。有明确回合归属时,它跟随原生一级收起;一级展开后先显示二级,展开二级才显示系统提示词的原生行,详情开关保持原样。

工作摘要显示已发生的动作类型和当前运行信息,不复制推理全文。查找隐藏内容时通过 hidden="until-found" / beforematch 展开所属层级。选中、焦点和需要用户输入的工作保持可达。HMR、切换会话或异常恢复会释放插件控制。

设置 → 插件 → 插件配置仍可编辑“状态提示词”,默认 Deep sleeping...。保存空值恢复官方文字;用时后缀保留。该功能独立于分组,服务晚到或重连不会影响二级。

兼容性与升级

| 插件 | 验证的 DSH |
|---|---|
| 0.2.x | 0.1.2-rc.1;0.1.5-rc.2(当前浏览器组件测试夹具) |
| 0.1.8 | 0.1.2-rc.1,旧折叠实现 |
| ≤ 0.1.6 | 0.1.1.x |

0.2.0 完全重写了折叠核心。升级后保留并统一二级,删除自建“已处理 X秒”一级行和三级推理全文副本;上下文不再单独拆成二级。旧 statusText 配置继续使用。未知 DOM 节点保留原生展示,其他宿主版本需要另行验证。

安装

已发布版本可用:

dsh plugin --profile web add dsh-auto-collapse

从源码安装时,先生成完整安装包,再安装命令输出的 tgz:

npm ci
npm run package
dsh plugin --profile web add

安装后按宿主方式重载插件或重启 Web,再刷新页面。回退时安装完整旧版包,例如 dsh-auto-collapse@0.1.8。

npm run package 与兼容别名 npm run deploy 只构建 tgz,不再逐文件覆盖安装目录、读取凭据或自动停止/启动 DSH。

开发与验证

Node.js 22+。首次浏览器验证需要 Playwright Chromium;Windows 可自动使用已安装的 Chrome/Edge,也可通过 DSH_TEST_BROWSER 指定可执行文件。

npm ci
npx playwright install chromium
npm run check

Linux CI 使用 npx playwright install --with-deps chromium 安装浏览器依赖。

npm run test:unit       # 纯分组、身份、状态摘要
npm run test:browser    # 当前构建的真实浏览器验收
npm run preview        # 本地合成场景:http://127.0.0.1:43190
npm run package        # artifacts/ 下完整 tgz

修改源码后先 npm run build 再单独运行浏览器测试或刷新预览。npm run check 自动执行 typecheck、构建、单元测试、浏览器测试和安装包检查。

浏览器测试使用真实 React、DSH 0.1.5-rc.2 原生组件快照和当前发布 bundle,覆盖混合分组、同消息正文边界、原生一级、详情状态、搜索、焦点、SVG、异常恢复、设置生命周期及 100/1,000/5,000 个历史节点。pwsh 场景使用官方工具渲染 bundle 和终端组件,覆盖失败重试、错误正文切换及缺失调用头等情况。完整测试还包含 30 秒无轮询检查。fixture 不依赖用户会话或凭据;完整后端部署不在隔离 fixture 的验证范围内,详见 夹具说明。

代码结构

| 文件 | 职责 |
|---|---|
| src/work-model.ts / host-contract.ts | 识别正文边界和原生工作项,缓存宿主结构 |
| src/work-groups.ts / summary.ts | 纯分组规则、稳定身份、二级展开意图和动作摘要 |
| src/dom-view.ts / styles.css | 唯一二级入口、受限显隐、恢复和样式 |
| src/controller.ts / scheduler.ts | 脏工作段协调、原生一级联动、生命周期 |
| src/status-text.ts / settings.ts | 独立状态文案及设置卡 |
| src/client.ts / index.ts | 客户端与宿主接线 |

不修改消息内容,不移动原生节点,不接管原生 renderer,不推断 final,不扫描“空 div”,不回写主滚动容器。

许可

MIT。测试中的原生组件快照保留 DeepSeek 的 MIT 许可。

上游仓库有新提交时邮件通知你(每天最多一封,无更新不打扰),随时一键退订。

同作者(a179-sanae)的其他插件

💬 加入 DPharness 群聊

插件用法、部署报错、新插件第一时间同步——群里问,比一个人翻文档快。

点击加入 QQ 群
DPharness 群聊二维码,手机 QQ 扫码进群
扫码进群