When conducting long conversations in DeepSeek Harness (DSH), the log is usually a linear stream of text. If you want to look back for a specific context or continue asking from a different direction starting at a particular turn, you often need to scroll manually or switch views frequently. The dsh-chattree plugin transforms this linear structure into a visual conversation map.
Plugin Purpose¶
dsh-chattree is a DSH client plugin maintained by RyanZeeee. It turns each Q&A turn into a node on a canvas and each new question into a new branch. This nonlinear presentation makes the flow and branching of the conversation immediately clear.
Core Features¶
Canvas and Nodes¶
Each Q&A turn corresponds to a card node. Nodes are arranged top to bottom in chronological order and connected by smooth curves. After selecting a node, the path from the root node to the current node is highlighted, making it easy to trace the conversation’s origin.
- Branching questions: Continuing to ask in the right panel creates a new conversation line that branches from the current node, while the original path remains unaffected.
- Archive: You can hide a node and its downstream content from the canvas (the session file itself is not deleted).
- Organize and locate: One-click reorganization by hierarchy and quick focus on the latest turn are supported.
- Drag and zoom: Supports panning by dragging the canvas, zooming with the mouse wheel, and dragging node positions (positions are retained after refresh).
Interface Layout¶
- Left sidebar: Used to manage workspaces and canvases. Supports collapsing/expanding workspaces, switching canvases, and renaming. You can add a system directory as a workspace using the “+” button.
- Right panel: Displays the complete Q&A content of the selected node. You can also continue asking directly here.
- Input box buttons: Supports attachments, permission presets, model switching, and context statistics.
Context Compression¶
A “Compress Context” button is provided next to the input box. It calls DSH’s /compact interface to replace the current session history with a summary. A green node will appear on the canvas (a green border in card mode and a green dot in dot mode), and subsequent conversation continues based on this summary.
Installation and Enablement¶
Prerequisites¶
- DeepSeek Harness 2.0.9 or higher
- Node.js 22.19+
Installation Steps¶
Open the DSH Desktop terminal (default profile is desktop) or use the --profile parameter to specify a profile:
dsh plugin add "github:RyanZeeee/dsh-chattree"
After installation, restart DSH. A Chat Tree option will appear in the view switcher.
Typical Usage¶
- View content: Click a node on the canvas. The right panel will display the complete Q&A for that turn.
- Branch the conversation: Continue asking in the right panel. The new branch will extend from the current node.
- Compress context: Click the “Context” button next to the input box and select “Compress Context”. The system will replace the history with a summary and leave a green node on the canvas that can be used to continue interacting.
Applicable Scenarios and Notes¶
This plugin is suitable for users who need long, multi-branch DSH conversations. Before use, it is recommended to confirm that your DSH version meets the requirements.
Permissions and Boundaries:
- The plugin has zero runtime dependencies and uses only Node built-in modules.
- It does not read DSH session files, does not connect to the network, and does not execute shell commands.
- Data files are written only to $DSH_HOME/chattree/workspaces.
- All model calls are still handled by DSH itself.
Summary¶
dsh-chattree solves context location and branch management problems in long conversations through visualization. You can learn more from the directory page or the GitHub repository.