packages/dsh-task-board
zhu1090093659/dsh-web侧边栏多列任务看板:卡片交给真实 DSH 智能体会话执行,支持 cron 定时(Host 侧到点执行,关浏览器也生效)。
A dual workbench for DSH: native right sidebar + self-drawn bottom panel, with the ctx.betterSidebar service open to every plugin
🌏 中文 · English
· 🗂️ File ManagementLazy-loading tree, git status colors, live directory watch, global search, drag-and-drop upload, multi-select batch actions, dual-source "Open with" menu. · 🌿 GitSource Control (Merge / Staged / Changes groups, message box with Generate, branch + sync footer) plus a this-session AI-changes lens, with a read-only commit graph (lanes, ref badges, branch filter, commit details) in one tab. 📝 Editable Editor & PreviewsAn editable CodeMirror (the stock preview is read-only), Markdown + Mermaid + floating outline, sandboxed HTML preview, .jsonl record cards, paged preview for huge files, streaming transfers with no size caps. · 🧩 TasksLive subagent topology (workflow graph / tree modes) + background task list: exit codes, live output, force-kill. 💬 Side Chat (beta)Codex-style side threads: inherit the full parent context and run independently, realtime push, visible & revocable queue, per-thread model selection, one-click promotion to a top-level session. · 🖥️ Bottom WorkbenchA self-drawn bottom panel that coexists with the native right sidebar: drag-to-split panes, multiple terminal tabs, per-session persisted layout.
Also: 📂 the sidebar_open tool lets the model open the sidebar itself · ⚡ ~325KB core at startup, heavy chunks load on demand · 🌏 i18n follows DSH · 📱 narrow screens switch to a full-width drawer
Switch to Git Graph at the top of the Git panel for commit nodes, forks and merge edges across local branches, remote-tracking branches and HEAD. The branch selector only filters history — it never checks out or fetches; each commit is one line (lane edges + ref pills + subject), hover shows the author and short hash, and selecting one opens its full message and diff in the bottom pane. History loads in pages; reference changes during pagination prompt a refresh; reads are bounded (200 commits per page, offset 10,000, 1,000 branches) and report an explicit error past a limit. This first version shows no tags and offers no history-changing actions.
With the dsh-context plugin installed, three places offer a one-click jump into that conversation's Context view: an agent node's detail card on the Tasks page, a background job's output window (the job's real owner session — never merely the session its row was watched under), and the session header. The entries appear only while dsh-context's Context page is actually registered: a deployment without it (or with that page hidden) shows no control at all, and while one jump is in flight every entry point is disabled. A failed jump is reported once, in a dismissible alert at the frame's bottom edge; nothing is polled while idle.
dsh plugin --profile web add dsh-better-sidebar@latestThen hard-refresh the browser (Cmd/Ctrl+Shift+R). Requires DSH 0.2.1-rc.1+.
Compatibility warning — v0.28.0 will take over this plugin's npm `latest`. DSH's own npmlateststill points to 0.2.0-rc.2, which is not compatible with v0.28.0. On that host, pindsh-better-sidebar@0.26.1instead of using the command above. DSH 0.2.1-alpha.5 users must pindsh-better-sidebar@0.28.0-alpha.0. Upgrade the host explicitly to0.2.1-rc.1before installing v0.28.0; the two packages'latesttags are independent.
Pick the plugin version for your DSH version
Your DSH version · Install command 0.2.1-rc.1+ · dsh plugin --profile web add dsh-better-sidebar@0.28.0 0.2.1-alpha.5 · dsh plugin --profile web add dsh-better-sidebar@0.28.0-alpha.0 0.2.0-rc.2 · dsh plugin --profile web add dsh-better-sidebar@0.26.1 0.2.0-rc.1 · dsh plugin --profile web add dsh-better-sidebar@0.24.1 0.1.7-rc.1 ~ 0.1.7 stable · dsh plugin --profile web add dsh-better-sidebar@0.22.1 0.1.7-alpha.x · No compatible release — upgrade DSH to rc.1 first 0.1.6 and earlier (incl. the 0.1.5 line) · dsh plugin --profile web add dsh-better-sidebar@0.19.1
Always pin exact versions for older releases (latest moves forward with each new stable). Replace web with your own profile name.
Other ways to install
Let DSH install it for you — paste this prompt into any DSH session:
Install the dsh-better-sidebar plugin (a sidebar workbench for DSH):
1. Confirm DSH is 0.2.1-rc.1 or newer, then run dsh plugin --profile web add dsh-better-sidebar@0.28.0
2. Remind me to hard-refresh the browser (Cmd/Ctrl+Shift+R) afterwards
If something fails, check the FAQ table in https://github.com/omdsh-dev/DSH-better-sidebar README first.One-line script — clone this repo and run bash scripts/install.sh 0.28.0 (macOS / Linux / Windows Git Bash; ./scripts/install.ps1 -Version 0.28.0 for native Windows). It handles installation + bundle registration.
Updating: just re-run the install command, then hard-refresh the browser.
FAQ
Symptom · Cause & fix Ignored build scripts error · pnpm 11 blocked a transitive dependency's build script. Run pnpm approve-builds in the profile directory (~/.dsh/profiles/web) — this plugin itself has no build-script dependencies. minimum release age / version younger than 24h · The release is less than 24 hours old. Wait 24h or re-run (pnpm auto-adds minimumReleaseAgeExclude). "Profile directory not found" · Run dsh web once to initialize ~/.dsh/profiles/web. Two sidebars on the page · Double mounting. Remove the legacy manual mount line (- insert: ... better-sidebar ...) from ~/.dsh/profiles/web/cordis.patch.yml; aggregate packages mounting this package under a different id are auto-yielded, no action needed. Settings values gone after upgrade · Since DSH 0.1.7, preferences live on this plugin's mount row in the profile (default entry id better-sidebar). The plugin migrates your old settings.yaml values once on first start and never overwrites newer values. Terminal unavailable · Terminals are provided by DSH itself (this plugin ships no PTY) — see DSH docs; "host provides no terminal capability" in the bottom terminal means this deployment has no terminal controller mounted. dsh: command not found · Install DSH first; or use npx -y --package @deepseek-ai/dsh@0.2.1-rc.1 dsh plugin --profile web add dsh-better-sidebar@0.28.0.
v0.28.0 — stable plugin release for DSH 0.2.1-rc.1+
^0.2.1-rc.1; retain the alpha.0 functionality without runtime changespackage.json; no source changeslatest, even while DSH’s latest remains 0.2.0-rc.2; old hosts must pin the versions in the table abovev0.28.0-alpha.0 (prerelease)
latestv0.27.0 - full release history at Releases · CHANGELOG
v0.26.1 — full release history at Releases · CHANGELOG
keepMounted keeps its semantics while every cache/registry is now bounded, and the host cwd resolver gained in-flight dedupe with a 3 s → 15 s TTLsession.cwd requests 15 → 0, hit tests 1,620 → 0, forced layouts 5,190 → 30ctx.betterSidebar offers two extension points to every plugin — registerTab / registerFileViewer; the built-in 6 tabs + 4 viewers use the very same API. The GitHub topic dsh-better-sidebar already lists 30+ ecosystem plugins; the full integration guide is at docs/external-plugin-guide.md.
import type {} from 'dsh-better-sidebar' // triggers the ctx.betterSidebar type merge
export const inject = ['betterSidebar']
export function apply(ctx: Context) {
ctx.effect(() => ctx.betterSidebar.registerTab({
id: 'my-plugin:db', title: 'Database', component: ({ scope }) => <DbView sessionId={scope.sessionId} />,
}))
}Ecosystem catalog (28 tab plugins · 4 viewer plugins · 4 enhancements)
Plugin · ⭐ · Description ChenRuoT/dsh-sidebar-qa · · Select-to-ask side page: Codex-style side questions / Claude Code /btw fuhefei/dsh-sentinel · · Condition-driven wake-up system: file / command / HTTP / process / webhook watchers that wake an agent; dock + sidebar branch + global dashboard Fisfzy/ego-browser · · Agent browser: i18n-aware local browser tab (auto-registers a sidebar page when better-sidebar is present, falls back to a floating observer) jiuge2467/dsh-studio · · Full-stack workbench: multi-source MCP visual debugging hub, visual thinking engine Iwctwbh/dsh-flowglass · · Flowglass: realtime session flow visualization (messages / tool groups / subagent branches) FeatherHunter/dsh-mattpocock-skills-deck · · Gamified mattpocock/skills task system: fog-of-war map, task bar progression GULI-lab/DSH-element-source · · Click any UI element to jump to its Vue / React / Svelte / Angular source and feed it into the session Lzh3070/dsh-file-review-tab · · File review page: line-level red/green diff + undo + deep links into chat lines yq04/dsh-git-remotes · · Git remotes page: branches / upstreams / ahead-behind, fetch with prune, ff-only pull, confirmed push ztyhehe/dsh-better-sidebar-svn · · SVN source-control page: status / diff / log / commit / update / revert / conflict resolution, symmetric to the built-in Git panel Melody-max114/dsh-excel-panel · · Excel editing page: xlsx preview / edit, live formula evaluation, merged cells, save back to the original file v587d/dsh-anysearch-refs · · AnySearch result reference cards: query, source digest, keyword highlights Lukeknow0/dsh-markdown-link-preview · · Markdown artifact link preview: click same-origin .md outputs in chat to read them in the sidebar mlosun/dsh-docs-panel · · Global docs panel: portable Markdown notes readable from any workspace tylina/dsh-tylina · · Typst document tool: WYSIWYG typesetting for papers, reports, exams, resumes, charts, posters, sheet music, and PPTX-exported slides lnyuqian/dsh-skill-sidebar · · Skills panel: scans local skill directories, short action phrases + one-click copy + pinning g-yixuan/dsh-sidenote · · Codex-style side chat + selection-anchored annotations (lightweight consumer plugin) OMSociety/dsh-ssh-tunnel · · Multi-host SSH tunnels + SSH manager page OMSociety/dsh-git-forge · · GitHub / Gitea accounts, project authorization and push policies YesSanSan/dsh-conversation-outline · · Conversation outline page: turn-structured view, one-click jump, LLM one-line titles Wulabalabo/dsh-sidebar-Explorer-Plus · · File manager page: upload / move / delete / rename / new folder (write operations) yq04/dsh-turn-review · · Turn review: review agent changes turn by turn Ghz114514/dsh-refpics · · Pinterest-style reference-image search: masonry flow, sidebar board, download & Eagle favorites yzlin499/dsh-yzlin499-easy-plugins · · Handy utility bundle (friendly to bare-bones DSH) dong-victor/dsh-better-sidebar-starter · · Run-configuration page: IDEA-style Run/Debug configs — one-click start, history, WebSocket live logs, parallel instances baosfeng/my-dsh-plugins · · Personal plugin collection (dsh-file-activity): sidebar file-activity page — read / create / modify history and stats Hoemr/dsh-better-overleaf · · Overleaf tab: CDP browser login, project switching, local git mirror with two-way sync Andor-Z/dsh-turn-outline · · Turn-trace page: folds the session by user turns, click any step to jump back to its chat position; zero LLM, read-only
Plugin · ⭐ · Description HuanLinOTO/dsh-plugin-better-sidebar-plugin-office · · Office trio preview (.docx / .xlsx / .pptx), shipped as a separate slim bundle HuanLinOTO/dsh-plugin-better-sidebar-plugin-audio · · Audio preview: zoomable waveform player + realtime spectrum, HTTP Range streaming route, scrubbable at any size zemul/dsh-video-preview · · Inline video preview: .mp4 / .webm / .mov / .mkv / .avi with HTTP Range seeking dong-victor/dsh-better-sidebar-jupyter · · Runnable .ipynb notebook view: lazy Python kernel, streaming output, save-back
Plugin · ⭐ · Description eg-bole/dsh-better-sidebar-icons · · VSCode-style file / folder icon theme (vscode-icons port, pure DOM overlay, zero intrusion) dong-victor/dsh-better-sidebar-terminal-plus · · Terminal enhancements: bundled Nerd Font icons, fixed xterm icon rendering, stable terminal cwd Max-Null/dsh-sidebar-preview-select · · Preview selection boost: select text in the sidebar preview → floating "send to session" Hoemr/dsh-quicklook · · QuickLook-style Space preview: press Space on the active file tab for full-size image / PDF / text
📣 **List you