dsh-ui-easyfold
Easy-fold plugin for the dsh Web GUI: sticky Think fold row and fold scroll compensation for long expanded content
mrtrujay
@mrtrujay
⬇ 2
★ 0
main
安装
dsh plugin --profile web add github:mrtrujay/dsh-ui-easyfold
需要可复现安装时,可在仓库后追加 #commit 固定提交。
Easy-fold plugin for the dsh Web GUI: sticky Think fold row and fold scroll compensation for long expanded content
该插件未提供要点说明,请参考仓库 README。
dsh-plugindsh-plugins
- 安装并启动 DeepSeek Harness:
npx @deepseek-ai/dsh web - 在终端执行上面的安装命令(CLI 会解析插件并核验来源)
- 用 dsh plugins list 确认已安装,必要时重启 Harness 生效
插件以当前 dsh 进程的权限运行,安装时可能执行代码。请先通读仓库源码与许可证,确认无破坏性命令与越权访问;本站只做索引,不对第三方插件安全性作担保。
| 代码仓库 | github.com/mrtrujay/dsh-ui-easyfold |
| 许可证 | MIT |
| 主要语言 | main |
| 下载量 | 2 |
| GitHub 星标 | 0 |
| 最近推送 | 2026-08-19 |
| 收录日期 | 2026-09-19 |
| 分类 | 界面增强 |
事实信息来自公开插件目录快照(2026-10-01),介绍文案由本站再加工。
以下为插件仓库 README 全文(原始内容,由公开目录抓取整理)。
# @trujaycc/dsh-ui-easyfold English | [中文](README.zh.md) Easy-fold plugin for the dsh Web GUI: two browser-side behaviors that keep long expanded content easy to read and fold. ## Problem Some disclosure components have a reading ergonomics problem: when the folded content is very long, expanding it and scrolling down to read carries the fold button out of the screen; to collapse the content again, the user must first scroll back to the top of the content to reach the button, interrupting their reading position.   ## What the plugin does Both behaviors run entirely in the browser: - **Sticky fold row** — while the content is expanded, the fold row pins to the top of the conversation scrollport, staying visible and clickable during reading; the pin releases by itself once the whole content has scrolled out, without changing the layout. - **Collapse scroll compensation** — folding a pinned component (click, Enter, or Space on the row) pulls the scrollport back to the fold row's position — the spot the pinned row occupied. The viewport stays at the component node instead of landing below it; a fold of a row already inside the viewport stays exactly in place. ## Affected UI components | Component | Status | | ---------------------------------- | ----------- | | Think (reasoning fold row) | Implemented | | Other long-content fold components | Planned | ## Install Requires a dsh deployment with the Web surface. Install into the profile you use for `pnpm dsh web`: ```sh pnpm dsh plugin --profile web add @trujaycc/dsh-ui-easyfold ``` `pnpm dsh plugin add` installs the package into the profile and registers its bundle patch layer automatically (the profile manifest's `dsh.profile.bundles` gains the entry). Restart `pnpm dsh web` to compose the new row, then open the Web page. To uninstall: ```sh pnpm dsh plugin --profile web remove @trujaycc/dsh-ui-easyfold ``` ## Develop ```sh pnpm install pnpm run typecheck pnpm test pnpm run build # emits lib/index.js and lib/client.js (ModuleLoader handoff) ``` The client bundle resolves `react` from the dsh Web loader's platform module table; the package declares no other runtime dependencies. To test a local checkout before publishing, install it by path or tarball: ```sh pnpm pack pnpm dsh plugin --profile web add ./trujaycc-dsh-ui-easyfold-0.1.0.tgz ``` ## Model Experience None. Presentation-only client plugin: no host services, tools, or session events; nothing reaches a model request or the session log. #### KV Cache effect None. ## Known Limitations and Deferred Work - **Product DOM contract coupling** — both behaviors hook the dsh Web chat DOM by its stable attributes (`data-conversation-scroll`, `data-variant="think"`, `data-open`, `data-disclosure-row`). A product markup change silently disables them. - **First scrollport only** — the compensation targets the first `data-conversation-scroll` in the document; side-by-side session windows (subagent views) keep a single behavior owner. - **Bounded commit patience** — the compensation waits up to eight animation frames for the product's React commit; a deferred commit beyond that window skips the correction (no scroll damage, just no pull-back).
数据来源:公开的 DeepSeek Harness 插件目录与各插件 GitHub 仓库。本站为独立第三方目录,与 DeepSeek、幻方(High-Flyer)及插件作者均无隶属或背书关系。