Han-1413141/dsh-sticky-disclosure 预览 preview

Han-1413141/dsh-sticky-disclosure

DSH Web客户端插件:一键折叠对话中所有展开的部分(思考/工具卡片),并支持自定义快捷键。

Project Overview项目介绍

This is a native plugin built exclusively for the DeepSeek Harness (DSH) Web client. It adds three core quality-of-life features to the DSH chat interface: a permanent collapse-all button with real-time expanded block count, custom keyboard shortcuts for the collapse-all action, and auto-pinning of out-of-viewport expanded blocks to the top of the conversation. All UI elements follow DSH’s native design tokens, so they automatically adapt to light and dark themes. To install the plugin, you can use a one-click PowerShell script or directly run the DSH CLI command to add it from this GitHub repository.

For users who often have long conversations with multiple expanded Think blocks and tool cards, manually collapsing each expanded block one by one can be a time-consuming and frustrating chore. This plugin eliminates that hassle entirely by letting you collapse all expanded blocks with a single click or keypress. The auto-pinning feature also lets you collapse out-of-view blocks without having to scroll back up to their original position. It works purely on the DOM layer, so it doesn’t modify any core DSH code, and uninstalling it restores the original interface completely.

The plugin requires Node.js version 20 or newer and a DSH build that includes the dsh plugin command. It only supports collapsible blocks within the main conversation chat stream, and does not cover the fold controls used in the Trajectory view. It relies on DSH’s internal DOM contract for collapsible blocks, so if DSH changes its internal DOM structure in a future update, the plugin may need an update to keep working. It is released under the permissive MIT open source license, and all installation steps are clearly documented in the repository README.

这是一款专为 DSH Web 客户端开发的原生插件。核心功能包含一键收起会话中所有展开的可折叠区块,比如 Think 思考块、工具卡片、命令卡片和上下文注入行。它提供带实时计数的常驻按钮,支持自定义快捷键,展开区块滑出视口后自动将标题钉在会话顶部,方便你随时点击收起。

当对话变长后,会累积很多展开的 Think 思考块和工具卡片,手动一个个收起非常繁琐,这款插件通过一键操作完美解决了这个痛点。它提供了流畅的交互体验,自动钉住滑出区块的功能让你不用滚动回顶部就能收起区块。它适合经常处理带多个可折叠块的长对话用户,能大幅提升整理对话界面的效率。

需要 Node.js ≥ 20 版本和带 dsh plugin 命令的 DSH 版本,支持一键脚本、命令行、本地开发、手工安装等多种安装方式,安装完成后重启 DSH 即可激活。它仅支持会话聊天流内的可折叠区块,不覆盖轨迹视图的折叠控件,遵循 DSH 的 DOM 契约,使用 MIT 许可证开源。

Pre-install check安装前体检Compatibility · Security兼容性 · 安全性 2 warnings2 项注意
  • Only 2 stars - very few users, little community feedback星标只有 2,几乎没人在用,遇到问题缺少社区反馈
  • Desktop client: installation downloads an executable - verify the publisher and checksums桌面客户端:安装会下载可执行文件,请核对发布者与校验和
DSH walks through these 9 checksDSH 会逐条核对这 9 项

Compatibility兼容性

  • DSH, Node, OS and profile requirementsDSH 版本 / Node 版本 / 操作系统 / profile 是否满足要求
  • External dependencies and runtimes (Electron / Python / Docker, ...)外部依赖与运行时(Electron / Python / Docker 等)是否齐备
  • Conflicts with installed plugins: command names, skill / tool names, ports, duplicate MCP registration与已装插件是否冲突:命令名、skill / tool 重名、端口占用、重复 MCP 注册

Security安全性

  • Repo matches the facts registered here; archived or abandoned?仓库是否与页面登记一致,是否归档或长期停更
  • Safety of preinstall / install / postinstall and install.sh / setup.ps1preinstall / install / postinstall 与 install.sh、setup.ps1 是否安全
  • curl|bash, download-then-execute, obfuscation, unrelated domains → stop immediatelycurl|bash、下载即执行、混淆代码、无关域名 → 立刻停止
  • Typosquatting or unmaintained packages among the new dependencies新增依赖里有没有 typosquatting 或无人维护的包
  • Requested permissions vs. what the feature actually needs申请了哪些权限、是否超出功能所需(filesystem / network / shell / clipboard)
  • Any sudo / admin requirement, plus uninstall and rollback是否要求 sudo / 管理员权限,以及卸载与回滚方式

Anything uncertain must be marked unknown with a note on how to confirm it. This site's signal screen is a static snapshot, not a security audit.拿不准的必须标「未知」并说明要我怎么确认。本站的信号筛查是静态快照,不能替代安全审计。

Or use CLI install (for developers)或使用命令行安装(适合开发者)

CLI Install命令行安装

dsh plugin --profile desktop add github:Han-1413141/dsh-sticky-disclosure

把 Han-1413141/dsh-sticky-disclosure 加入你的 DSH 配置(web profile)即可启用。

READMEREADME

dsh-sticky-disclosure

License: MIT Tests awesome · DSH plugin English | 中文

宣传图:一键收起 + 滑出屏幕自动钉住 Think 等标签

DSH 桌面端与 Web 插件:一键收起会话里所有展开的可折叠区块(Think 思考行、工具卡片、命令卡片、上下文注入行等),带实时计数的常驻按钮 + 可自定义的快捷键。展开的区块滑出屏幕时,标题会自动钉在会话顶部,随时可以点一下收起。

钉住示意图:滑出屏幕的 Think 等标签自动钉在顶部

原生风格设置面板

浅色主题 深色主题
浅色快捷键设置 深色快捷键设置

使用 DSH 当前主题的背景、字体和圆角,快捷键以独立键帽显示;面板在窄窗口中避开原生标题栏。上图为实际插件在官方主题样式和本地示例页面中的渲染结果。

本轮改进

  • 识别 DSH 0.2.0-rc.2 的执行过程按钮,同时保留 Think 与工具卡片支持。
  • 界面跟随中文或英文设置;macOS 默认快捷键使用 ⌘⌥C。
  • 关闭设置或切换会话时立即停止快捷键捕获,输入法组合输入不被捕获。
  • 设置可用 Esc 关闭,关闭后焦点返回设置按钮;桌面端浮层使用 no-drag。

✨ 功能

功能 说明
📌 滑出自动钉住 展开的 Think / 工具 / 命令标签滑出会话顶部后,自动在顶部生成 chip,点击即收起原区块
🔘 全部收起按钮 聊天区右下角常驻按钮,实时计数(·N = 当前展开的区块数),一键收起全部展开区块
⌨️ 自定义快捷键 默认 Ctrl+Alt+C(macOS ⌘⌥C),齿轮按钮 → 按下新组合键即改,持久保存
🎨 原生外观 全部使用应用 --dsw-* 设计令牌,自动跟随深色/浅色主题
🪶 无侵入 纯 DOM 实现,不动应用代码;卸载即全量还原

交互示例(早期版本的 DSH Web 实机截图)

展开中的 Think 行 + 右下角带计数的「全部收起」按钮:

展开状态

快捷键设置面板(齿轮 → 设置 → 按下新组合键):

设置面板 捕获新快捷键

一键收起后,计数归零:

收起后

为什么需要它

对话一长,展开的 Think 思考行、工具卡片就会攒下一堆——想收起它们得一个个去点标题,而且往下读的时候,标题还会被顶出屏幕。本插件在聊天区右下角放一枚常驻的「全部收起」按钮(实时显示当前展开了几个),再配一个自定义快捷键:一次点击 / 一次按键,全部收起。展开区块滑出屏幕时,标题会自动钉在会话顶部,不用滚回去也能随时收起。

行为细节

  • 滑出自动钉住:展开区块的标题整行滑出会话滚动区顶部后,顶部会出现一枚 chip,显示该区块标题(Think、工具名……);点击 chip 即收起原区块,滚回可见或收起后 chip 自动消失。
  • 「全部收起」按钮常驻会话滚动区右下角,带实时计数(·N);点击收起会话里所有展开的可折叠区块。
  • 快捷键(默认 Ctrl+Alt+C,macOS ⌘⌥C)与按钮等效:一键收起所有展开区块,按下立刻有可观察效果。
  • 展开/收起状态、流式输出、切换会话都由 MutationObserver + 滚动/尺寸监听自动同步,计数始终准确;插件卸载(HMR / 停用)时全部还原。
  • 插件加载时打一条 console.info("[dsh-sticky-disclosure] applied …"),并提供调试句柄 window.dshStickyDisclosure(expanded() / hotkey() / setHotkey(spec))。

Showing the opening section of the README — the full document lives in the repository以上为 README 开头摘要,完整文档在仓库内 · View the full README on GitHub →在 GitHub 查看完整 README →

← 上一个 Prev dsh-session-notify 下一个 Next dsh-plugin-maker →