
Han-1413141/dsh-sticky-disclosure
30Last commit Aug 15, 2026
dsh-sticky-disclosure DSH plugin
This plugin adds a persistent button with a live count of expanded blocks (Think, tool cards, command cards, etc.) at the bottom-right of the chat scroll area. When expanded blocks scroll out of view, their titles are automatically pinned to the top for easy access. It also supports a customizable hotkey (default Ctrl+Alt+C) to collapse all blocks instantly.
How to install the dsh-sticky-disclosure DSH plugin
dsh plugin --profile web add github:Han-1413141/dsh-sticky-disclosureCopying does not run this command. Review the repository and version before installing the dsh-sticky-disclosure DSH plugin.
dsh-sticky-disclosure DSH plugin data source
dsh-sticky-disclosure DSH plugin snapshot date: Aug 16, 2026
discovered
What the dsh-sticky-disclosure DSH plugin can do
- Auto-pin expanded block titles when they scroll out of the viewport
- Persistent collapse-all button with real-time count of expanded blocks
- Customizable hotkey (default Ctrl+Alt+C, macOS ⌘⌥C) with capture UI and persistence via localStorage
- Native appearance using DSW design tokens, automatic dark/light theme support
- Zero-intrusion: pure DOM implementation, no modification to app code; full restoration on uninstall
Where the dsh-sticky-disclosure DSH plugin fits
- Quickly collapse all long Think reasoning blocks after reading them
- Easily collapse tool cards that have accumulated during a long conversation
- Use the auto-pinned title to collapse a block that scrolled away without manual scrolling back
- Assign a custom hotkey like Ctrl+Shift+K to collapse all blocks without touching the mouse
- Keep the chat interface clean by one-click collapsing all expanded blocks before starting a new message
Who the dsh-sticky-disclosure DSH plugin is for
- Users of DeepSeek Harness Web client with long conversations containing many expandable blocks
- Power users who prefer keyboard shortcuts for frequent actions
dsh-sticky-disclosure DSH plugin limitations
- Only covers the chat conversation scroll area (`[data-conversation-scroll]`); Trajectory view with its own folding controls is not affected.
- Relies on specific DOM data attributes (`data-open`, `data-disclosure-row`) that may change if the upstream application updates its internal structure – requires selector updates.
- Requires Node.js ≥20 and DeepSeek Harness (with `dsh plugin` command) to be installed.
- The plugin is a pure frontend addition; it does not work outside the DSH Web client environment.
dsh-sticky-disclosure DSH plugin: from the repository README
Quoted from the Han-1413141/dsh-sticky-disclosure README, the upstream source of the dsh-sticky-disclosure DSH plugin. Copyright remains with the original authors.
DSH Web 客户端插件:**一键收起会话里所有展开的可折叠区块**(Think 思考行、工具卡片、命令卡片、上下文注入行等),带实时计数的常驻按钮 + **可自定义的快捷键**。展开的区块滑出屏幕时,标题会自动钉在会话顶部,随时可以点一下收起。  ## ✨ 功能 | 功能 | 说明 | |---|---| | 📌 滑出自动钉住 | 展开的 Think / 工具 / 命令标签滑出会话顶部后,自动在顶部生成 chip,点击即收起原区块 | | 🔘 全部收起按钮 | 聊天区右下角常驻药丸,实时计数(`·N` = 当前展开的区块数),一键收起全部展开区块 | | ⌨️ 自定义快捷键 | 默认 `Ctrl+Alt+C`(macOS `⌘⌥C`),齿轮按钮 → 按下新组合键即改,持久保存 | | 🎨 原生外观 | 全部使用应用 `--dsw-*` 设计令牌,自动跟随深色/浅色主题 | | 🪶 无侵入 | 纯 DOM 实现,不动应用代码;卸载即全量还原 | ### 实机截图(真实 DSH Web 实例) **展开中的 Think 行 + 右下角带计数的「全部收起」按钮**:  **快捷键设置面板(齿轮 → 设置 → 按下新组合键)**:   **一键收起后,计数归零**:  ## 为什么需要它 对话一长,展开的 Think 思考行、工具卡片就会攒下一堆——想收起它们得一个个去点标题,而且往下读的时候,标题还会被顶出屏幕。本插件在聊天区右下角放一枚常驻的「全部收起」按钮(实时显示当前展开了几个),再配一个自定义快捷键:**一次点击 / 一次按键,全部收起**。展开区块滑出屏幕时,标题会自动钉在会话顶部,不用滚回去也能随时收起。 ## 行为细节 - **滑出自动钉住**:展开区块的标题整行滑出会话滚动区顶部后,顶部会出现一枚 chip,显示该区块标题(`Think`、工具名……);点击 chip 即收起原区块,滚回可见或收起后 chip 自动消失。 - **「全部收起」按钮**常驻会话滚动区右下角,带实时计数(`·N`);点击收起会话里**所有**展开的可折叠区块。 - **快捷键**(默认 `Ctrl+Alt+C`,macOS `⌘⌥C`)与按
Read the full READMERepository license: MIT
dsh-sticky-disclosure DSH plugin questions
How do I install dsh-sticky-disclosure?
The easiest way is to run the one-liner PowerShell script: `irm https://raw.githubusercontent.com/Han-1413141/dsh-sticky-disclosure/main/install.ps1 | iex`. Alternatively, you can use the direct command: `dsh plugin --profile web add github:Han-1413141/dsh-sticky-disclosure`. Make sure you have Node.js ≥20 and DeepSeek Harness installed with the `dsh plugin` command.
Does the plugin work on macOS?
Yes, the plugin works on macOS. The default hotkey is `⌘⌥C` (Cmd+Alt+C) and the capture panel respects macOS modifiers. The installation script works on both Windows and Linux; for macOS you can use the `dsh plugin` command directly.
Can I set a custom hotkey to collapse all blocks?
Yes. Click the gear icon next to the collapse-all button to open the settings panel, then click 'Set' and press your desired key combination (must include Ctrl, Cmd, or Alt). The new hotkey is saved immediately in your browser's localStorage. You can also programmatically set it via `window.dshStickyDisclosure.setHotkey({...})`.
What happens when I uninstall the plugin?
All DOM modifications are fully reverted. The persistent button, pinned chips, and any injected styles are removed. The hotkey stored in localStorage is not cleared automatically, but it will no longer have any effect. You can uninstall via `dsh plugin --profile web remove dsh-sticky-disclosure` and restart `dsh web`.
Does the plugin affect the Esc key or other shortcuts?
No. The plugin deliberately avoids using the Escape key because the application already uses it for dialogs and popups. Inside the hotkey capture panel, Esc is used to cancel capture, but that does not interfere with the app's Escape handling. The collapse-all hotkey (default Ctrl+Alt+C) works even when an input field is focused, and it is designed to avoid conflicts with IME composition and AltGr combinations.