The plugin ecosystem for DSH (DeepSeek Harness) allows developers to extend client functionality. The original dsh-side-chat plugin has limitations in single-instance management, quoting from streaming output, and layer conflicts with the sidebar. dsh-side-chat-plus-plus is forked from @ahggg/dsh-side-chat and solves these issues through a breaking rewrite, providing a quoting experience closer to Codex and more stable multi-tab management.
Plugin Introduction¶
- Name: dsh-side-chat-plus-plus
- Maintainer: anzhaohao
- Category: Client
- License: MIT
- Positioning: A breaking rewrite forked from the original, aimed at providing a Codex-style multi-tab side chat experience.
Core Features¶
This plugin mainly includes the following improvements:
-
Whole-message quoting (Codex-style)
You no longer need to select text first. Hover over any historical message, and a “Quote to Side Chat” button appears in the upper-right corner, allowing you to open a new side chat with that message as context. -
Multi-tab side chats
Each side chat is an independent tab. You can keep multiple side chat windows open at the same time and switch or close them freely without interfering with each other (the original allowed only one side chat at a time). -
Quoting during generation (no waiting)
While the main conversation response is still generating, you can select the already-output text to invoke the toolbar. If the host supports interruption points in streaming turns, the quote is injected immediately; otherwise, the plugin automatically waits for the turn to complete and retries once. -
Multi-turn quoting and restart recovery
Quote annotations in the main conversation are restored with the input state. The parent-child relationships for side chats are persisted by the host and remain available after a DSH host restart; lifecycle state is cleaned up synchronously when closed or archived. -
Attachment and layout improvements
Quote capsules, image previews, and file attachments are placed in the normal document flow above the input box, arranged in order, and no longer overlap each other. The “More details” button from the original selection toolbar has been removed, leaving only “Add to chat” and “Ask in side chat”. -
Dual-mode dock and topmost layer
The plugin portal is mounted to<body>, escaping the layer constraints of the DSH AppFrame and stably coveringdsh-better-sidebar(z-index 40). When coexisting withdsh-better-sidebar, it operates in dual mode: when the sidebar is closed, the main conversation takes over the space; when the sidebar is open, the side chat overlays the main conversation without squeezing it. -
Safe export and compatibility fallback
Log exports are written by the host into a controlled directory, preventing path traversal. Compatible file attachment bridges can return opaque tokens bound to a session; if the bridge is unavailable, the plugin falls back to native DSH file references.
Installation and Enablement¶
Use the official installation command to enable it:
dsh plugin --profile web add dsh-side-chat-plus-plus
Or install it from GitHub:
dsh plugin --profile web add github:anzhaohao/dsh-side-chat-plus-plus
Typical Usage¶
- Whole-message quote: Hover over any historical message and click the “Quote to Side Chat” button in the upper-right corner.
- Multi-tab operation: Each side chat is an independent tab; you can open multiple tabs at the same time and switch or close them.
- Streaming quote: While the main conversation response is still generating, select the already-output text and click “Quote to Side Chat”; the plugin takes over immediately.
- Sidebar compatibility: Open
dsh-better-sidebar; the side chat floats above it while the main conversation remains full-width. After closing the sidebar, the side chat steps aside and the main conversation is restored.
Suitable Scenarios and Notes¶
- Suitable scenarios: For developers who need to manage multiple contextual conversations at the same time or are accustomed to quickly quoting content while generation is in progress.
- Notes: This plugin runs with the permissions of the current dsh process. Review the source code and license (MIT) before installation. A Node.js environment is required (version requirement
^22.19.0 || >=24.0.0).
Conclusion¶
By rewriting client logic, dsh-side-chat-plus-plus resolves the pain points of the original in multi-tab management, layer control, and streaming quoting, making it suitable for DSH users pursuing efficient multitasking.
- Plugin directory: anzhaohao/dsh-side-chat-plus-plus
- GitHub repository: anzhaohao/dsh-side-chat-plus-plus