dsh-todo-panel
DiscoveredPersistent to-do panel for DeepSeek Harness: header toggle opens a floating task panel fed by the todos projection
dsh-todo-panel
A persistent, toggleable to-do panel for DeepSeek Harness: a conversation-header toggle opens a floating task panel fed by the todos projection, alongside the stock composer strip.
The stock conversation.input.dock to-do strip (mounted by @deepseek-ai/dsh-client-ui-conversation) is left untouched — this plugin only adds the persistent floating view, so both surfaces stay in sync off the same projection.
Features
- Header toggle — a checklist button in the conversation header (
conversation.session.header.actions) flips the panel; its pressed state mirrors the panel. - Floating panel — a fixed-position card over the frame-wide
shell.overlayslot, with the to-do list, status glyphs, and an open-item count. - Same data, no duplication — the panel reads the
todosprojection from the current session summary; hidden while closed or while the session carries no to-dos. - Bilingual —
zh/endictionaries on its owntodo-panellocale namespace.
Requirements
- DeepSeek Harness
>= 0.1.0-rc.6, with the to-do capability mounted (@deepseek-ai/dsh-tool-todoregisters thetodosprojection). To-dos are cleared at the start of each turn, per the stock projection semantics.
Installation
dsh plugin add dsh-todo-panel
The dsh.bundle manifest (cordis.patch.yml) mounts the server-side plugin entry and the dsh.client declaration injects the browser half immediately (platform: web), so a profile restart is enough to enable it.
Screenshots
(TBD — added after the first tagged release.)
Development
npm install # or pnpm install
npm run typecheck # tsc --noEmit
npm run test # vitest (jsdom per-file, __ModuleLoader__ harness)
npm run build # tsc declarations + esbuild browser bundle → lib/
Architecture
src/client/index.ts— client plugin body: registers thetodo-paneldictionaries and injects the toggle and the floating panel into their slots.src/client/TodoToggle.tsx— the header toggle (conversation.session.header.actions).src/client/TodoFloatingPanel.tsx— the floating panel (shell.overlay); reads the current session'sprojectionValues.todosbecause root-scoped entries receive no session framework hooks.src/client/TodoGlyphs.tsx— status glyphs for the three todo states.src/client/panel-store.ts— the cross-slot visibility store shared by toggle and panel.src/client/locales.ts—zh/endictionaries.scripts/build.mjs— esbuild bundle with the harness'swindow.__ModuleLoader__.loadwrapper and CSS Modules compiled to an injected<style>tag.
License
Apache-2.0 — see LICENSE.
Comments
Loading…
Similar plugins
by shuxidemosheng
Enhanced todo_write plugin for DeepSeek Harness: floating task panel with capsule mode, priority tags, full checklist rendering. Fork of @deepseek-ai/dsh-tool-todo.
★ 97
↓ 355/wk
NOASSERTION
JavaScript
Oct 18, 2026
dsh plugin --profile web add dsh-tool-todo-plusFloating desktop chat panel for DeepSeek Harness — global-hotkey access to sessions, models, and tool approvals while you work in other apps. MacOS/Windows.
★ 1
MIT
TypeScript
dsh plugin --profile web add dsh-quorfloatby a903067276-rgb
Reliable todo panel for DeepSeek Harness (dsh) web: survives restarts, completion verified against evidence paths
★ 1
↓ 180/wk
MIT
JavaScript
Sep 15, 2026
dsh plugin --profile web add dsh-todo-guardby luoyukun3-oss
DSH sidebar todo panel: shows your memory-bank todos.md in the sidebar, click to fill the input box, collapsible groups with progress, live refresh, and scheduled auto-dispatch
★ 0
JavaScript
Oct 6, 2026
dsh plugin --profile web add dsh-todo-panelby metaone01
Live DOM floating panels and screenshot overview for DeepSeek Harness Desktop
★ 1
MIT
TypeScript
Oct 15, 2026
dsh plugin --profile web add dsh-better-floatby bigfurma-bot
Persistent shared to-do list for DeepSeek Harness: web UI tab + agent tools over one JSON store, writable from both sides
★ 0
MIT
JavaScript
Aug 22, 2026
dsh plugin --profile web add @deepseek-ai/dsh-todos