DeepSeek Harness 插件

dsh-ui-easyfold

Easy-fold plugin for the dsh Web GUI: sticky Think fold row and fold scroll compensation for long expanded content(英文原文)

跳到安装方式

来源信息

GitHub 仓库
MrTrujay/dsh-ui-easyfold
最近更新
2026年8月19日
分类
界面增强
GitHub stars
0
载体类型
plugin
目录证据
上游声明已找到 dsh.bundle
证据路径
package.json#dsh.bundle
核对版本
0.1.0-rc.8
上游核对日期
2026-08-20

该证据由上游目录提供。本站没有安装、运行或安全审核这个插件。

安装

默认先复制一段 Prompt,让 Agent 读 GitHub 仓库和源码;需要自己装时再切到命令。

复制这段 Prompt,发给 DSH、Codex 或其他 Agent,让它先读 GitHub 仓库和源码。

请先不要安装或执行任何命令。阅读这个插件的 GitHub 仓库、README 和关键源码,然后用清楚、直接的方式回答以下问题,帮助我判断它是否适合我的需求:

1. 这个插件是什么,解决什么问题;
2. 适合哪些用户和典型使用场景;
3. 安装后如何使用,并给出一个最小使用示例;
4. 有哪些已知限制,以及隐私、安全、兼容性或维护风险;
5. 给出“推荐 / 有条件推荐 / 不推荐”的明确建议和理由。

请区分仓库明确说明、根据源码推断和未知信息。证据不足时请明确说明,不要猜测或照抄 README。

GitHub:https://github.com/MrTrujay/dsh-ui-easyfold
插件名:dsh-ui-easyfold
作者:MrTrujay

检查来源文件

安装前先看这个插件目录里的 README 和其他文件。

文件资源管理器4 个文件
README.zh.md来源说明 · 只读预览
README 语言

@trujaycc/dsh-ui-easyfold

English | 中文

dsh Web GUI 的"轻松折叠"插件:两个纯浏览器侧行为,让长内容的展开阅读与折叠更省事。

问题

部分折叠组件存在阅读工效问题:当折叠的内容很长时,用户展开内容并向下滚动阅读,折叠按钮会随内容一起滚出屏幕;此时想要收起内容,必须先滚回内容顶部才能点中折叠按钮,阅读位置因此被打断。

![问题示意:展开长内容后,折叠按钮随滚动移出屏幕](screenshots/pic1.png)

![插件效果:展开长内容后,折叠吸顶随时可收起](screenshots/pic1.png)

插件处理

本插件从两个行为层面解决上述问题,全部在浏览器侧完成:

  • 折叠行吸顶 — 内容展开期间,折叠行吸附在对话滚动区顶部,滚动阅读时始终可见、可点击;整个内容滚出视图后自动解除吸顶,不影响页面布局。
  • 折叠滚动回正 — 折叠一个已吸顶的组件(点击、Enter 或空格)时,滚动位置回正到折叠行所在位置——即吸顶行原本占据的位置。视口因此保持在组件节点处,而不是落到节点下方;对仍在视口内的行折叠则原地不动。

受影响的 UI 部件

部件状态
Think(思考过程折叠行)已实现
其他长内容折叠部件待实现

安装

pnpm dsh plugin --profile web add @trujaycc/dsh-ui-easyfold

重启 pnpm dsh web

卸载:

pnpm dsh plugin --profile web remove @trujaycc/dsh-ui-easyfold

开发

pnpm install
pnpm run typecheck
pnpm test
pnpm run build    # 产出 lib/index.js 与 lib/client.js(ModuleLoader 握手格式)

客户端 bundle 的 react 从 dsh Web loader 的平台模块表解析;本包不声明其他运行时依赖。发布前想先本地验证,可按路径或 tarball 安装:

pnpm pack
pnpm dsh plugin --profile web add ./trujaycc-dsh-ui-easyfold-0.1.0.tgz

Model Experience

无。纯展示层客户端插件:不提供宿主服务、工具或会话事件,任何内容都不会进入模型请求或会话日志。

#### KV Cache 影响

无。

Known Limitations and Deferred Work

  • 产品 DOM 契约耦合 — 两个行为都通过 dsh Web 聊天 DOM 的稳定属性挂接(data-conversation-scrolldata-variant="think"data-opendata-disclosure-row)。产品标记变更会静默地使它们失效。
  • 仅首个滚动区 — 回正逻辑只作用于文档中第一个 data-conversation-scroll;并排的会话窗口(子代理视图)只有一个行为所有者。
  • 有限的提交等待 — 回正最多等待八个动画帧用于产品 React 提交;超过该窗口的延迟提交会跳过校正(不会损坏滚动,只是不回拉)。