- Home
- Plugin
- Miglioramenti UI
- dsh-session-tree
dsh-session-tree
bestq-a/dsh-session-tree
Hierarchical session tree for the sidebar - native subagent trees plus an optional organization-derived hierarchy, with collapsed branch counters and orphan/cycle defense.
Installazione
dsh plugin --profile web add github:bestq-a/dsh-session-treeREADME
dsh-session-tree
Hierarchical session tree for the DeepSeek Harness (DSH) sidebar — turn the flat session list into a tree.
Forked and reworked from an internal bundle (upstream code © 2026 DeepSeek, MIT). Private roster data was stripped; the org-projection generator is now fully generic.
Features
- Native subagent trees — real spawn parent/child chains render as a tree, with ordering and completion state preserved from official semantics.
- Optional organization hierarchy — derive an "org reporting" layer on top of sessions from your own roster (memberId / reportsTo / bound sessionId). Clearly marked (
data-hst-relationship=organization) and never confused with native subagent lineage. - Collapsed branch counters — collapsed group nodes aggregate running sessions and real per-branch unread counts (not the group leader's own state).
- Defensive rendering — orphans, cycles and duplicates are rejected at generation time; missing parents degrade to root-level rows instead of disappearing.
- Search stays flat — bounded flat search as the host provides; selecting a result expands ancestors and scrolls the target into view.
Install
From the DSH plugin market (once listed), or from source:
dsh plugin --profile desktop add github:BestQ-A/dsh-session-tree
See INSTALLATION.md for build-from-source details.
Organization projection (optional)
The org layer is generated from a roster you control. Example shape (.omo/teams/<team-id>/team.json):
{ "definition": { "members": [
{ "memberId": "D01", "boundSessionId": "<session-uuid>", "organization": { "role": "Design|Lead|01", "reportsTo": "ROOT" } },
{ "memberId": "D02", "boundSessionId": "<session-uuid>", "organization": { "role": "Design|Member", "reportsTo": "D01" } }
] } }
Then: node scripts/build.mjs <dsh-install-root> <project-root> regenerates the embedded projection. Without a projection the plugin still renders native subagent trees — everything degrades gracefully.
License
MIT — see LICENSE.upstream for the upstream DeepSeek notice this fork builds on.
Plugin correlati
dsh-web (dsh-task-board)
zhu1090093659/dsh-web
dsh-web (dsh-web-all)
zhu1090093659/dsh-web
dsh-web-ui (dsh-task-board)
zhu1090093659/dsh-web-ui
dsh-web-ui (dsh-web-ui-all)
zhu1090093659/dsh-web-ui