Introduction¶
Session management in DeepSeek Harness (DSH) typically involves forking sessions to process tasks in parallel. As the number of sessions grows, it becomes difficult to maintain context and track task branches using only list views. The Branch Map Plugin provides a solution with a tree structure: it organizes fork sessions into a visual map and allows adding documentation and persisting layouts for each branch.
Plugin Positioning¶
This is a plugin for tree-based management of fork sessions, per-branch annotated documentation, and layout persistence. It is maintained by useful-money. It is provided as a static dual-end package format with zero third-party dependencies, zero CDN, and zero build steps.
Installation and Activation¶
The plugin can be installed and activated with a single command; there is no need to manually modify patch files or create mklink junctions.
dsh plugin --profile web add github:<your username>/branch-map-plugin
Core Features¶
- Tree-based management of fork sessions: presents fork sessions as a tree structure.
- Per-branch annotated documentation: add descriptions to each branch.
- Layout persistence: saves card positions after dragging.
- Zero dependencies: fully in-house rendering with no external dependencies.
Typical Usage¶
- Open any session; a “Branch Map” tab appears at the top.
- Cards represent workspace sessions; dots on the connection lines represent fork points (
#fork_number). - Drag cards to adjust the layout (auto-saved); drag in an empty area to pan the view.
- Use the toolbar to perform “Reset layout / Fit to window / Refresh”.
- Click “Edit” to open a dialog, where you can modify the branch name, description, status, and tags.
- Use the status dropdown list to filter cards.
- Click “Jump” to open the branch in a new session.
Data and Files¶
The tree structure is not persisted to disk; it is aggregated in real time according to the session cwd. Data is stored in the .branchmap folder under the workspace root directory:
* annotations.yaml: stores branch annotation information, including an optimistic locking revision.
* layout.yaml: stores node position information; auto-saved after dragging.
* diag.log: diagnostic log file.
Uninstall¶
To remove the plugin:
dsh plugin --profile web remove @local/branch-map
References¶
- GitHub repository: https://github.com/useful-money/Deepseek-Harness-branch-map-plugin
- Plugin directory: https://www.skillhub.cn/plugins/useful-money/Deepseek-Harness-branch-map-plugin