DeepSeek Harness Plugin Hub

Publish and manage complete Harness Profiles. Discover Plugins for your next setup.

Explore

PluginsPresetsDocsNews

Community

Publish a pluginContactReport an issue

Resources

Plugin Hub on GitHubDeepSeek HarnessSystem statusPrivacy notice
© 2026 DeepSeek Harness Plugin HubPowered byPaxTech

Independent and unofficial. Not affiliated with, authorized by, or endorsed by DeepSeek.

Todo Guard — DSH Plugin for DeepSeek Harness
← Plugins
T

dsh-todo-guard

Todo Guard

Reliable todo panel for DSH: review dock survives restarts, verifies completion evidence submitted through its own tool (official todo panel stays clean)

The plugin will be installed here. Keep web if you are unsure.

npx -y @deepseek-ai/dsh plugin --profile web add github:a903067276-rgb/dsh-todo-guard#4b7c24a48bbc9939b1bb6db9b16af8ab6e7cfc2f
READMECompatibilityVersions

Compatibility and provenance

Todo Guard is published as dsh-todo-guard and currently resolves to version 2.1.2. The Hub verifies its manifest and preserves the exact installation source for reproducible installs.

DSH compatibility
*
Runtime surfaces
web
Release source
github
Registry updated
9/13/2026

Versions

2.1.2stable
9/13/2026
2.1.1
stable
9/13/2026
2.0.1stable
9/10/2026
Show 5 more versionsCollapse versions
2.0.0stable
9/1/2026
0.1.6stable
8/31/2026
0.1.5stable
8/22/2026
0.1.4stable
8/21/2026
0.1.0stable
8/20/2026

Related plugins

Loading related plugins…

Latest
2.1.2
DSH
*
HMR
Process restart
Tree shaking
Safe tree shaking not declared
Unpacked size
Unavailable
Files
Unavailable
Surface
web
License
MIT
Source
github
GitHub
★ 0
Weekly downloads
0
View source ↗
README badge

Click the badge to copy Markdown for your README.

Do you maintain this Plugin?Claim benefit · Priority security scan

Verify the GitHub repository declared in package.json to manage this listing. After you claim it, Hub will prioritize a security scan of the current version and publish the result when it passes.

Claim this Plugin →
Report an issue
DeepSeek Harness Plugin Hub
ProfilesPluginsCategoriesNewsDocsSign inManage Profiles
ProfilesPluginsCategoriesNewsDocsSign in

Related plugins

More verified plugins in productivity-workflow.

Acp App@deepseek-ai/dsh-acp-appThe dsh ACP profile bundle: automation-only JSON-RPC stdio and process lifecycle over dsh-baseClient Ui Task Board@linxin666/dsh-client-ui-task-boardHost-authoritative task board for the DSH Web GUI with real session execution, Host cron scheduling, and optional cross-platform idle-sleep protection; mounted without DSH source changes.Web All@linxin666/dsh-web-allDSH Web UI 全家桶聚合插件:一键安装全部功能插件(task-board / git-graph / pet / remote-web-ui / web-ui-settings / skin-center / community-plugins / compat shim)。compat 桥接层已并入本包(src/client),无需独立 compat npm 包。Agent Teams@nanmicoder/dsh-agent-teamsAgentTeams for DeepSeek Harness: multi-agent team collaboration (captain, members, tasks with dependencies, messaging) driven by natural language, with a tree monitor in the web GUI

README

dsh-todo-guard ✅

English | 简体中文

A todo review plugin for DeepSeek Harness (dsh) web: the official todo panel stays untouched (item text carries nothing but the task itself), and a review dock hangs right below it — unfinished tasks persist across turns/restarts (checkpoint resume), completed items get evidence submitted through the plugin's own todo_evidence tool and verified automatically (verified / evidence-missing / text-only / unsubmitted), and missing evidence never blocks the check: it is only annotated and left for your one-click confirm (works while the dock is collapsed).

Unofficial: a community project, not a DeepSeek product.

Screenshot

dsh-todo-guard review dock

Requirements

  • DSH web (≥ 0.1.1-rc.1, latest recommended) (npx @deepseek-ai/dsh web)
  • Version compatibility (best-effort, not guaranteed for every DSH version):
    • DSH 0.1.1-rc.1+ (incl. 0.1.1-rc.2 / 0.1.2): install main (default).
    • DSH 0.1.5-rc.2: v2.1 verified — tools.register, the mirror-projection contract (stateSchema+wire), the tools/post-execute hook and reading tool/call events from the session log all work. Contract points: mirror projection stateSchema+wire (0.1.1-rc.1+), multi-id dock coexistence (conversation.input.dock), settings card dual field key+id (satisfies rc.6 & rc.7+), tool registration via defineTool from @deepseek-ai/dsh-tools (peer dependency, provided by the host), tools/post-execute nudges (degrade silently on hosts without this hook — panel annotation only)
    • DSH 0.1.0-rc.7 / rc.8: old projection contract (pre-0.1.1-rc.1) — review dock data not guaranteed; fallback v0.1.6 (dsh plugin add github:a903067276-rgb/dsh-todo-guard#v0.1.6)
    • DSH 0.1.0-rc.6: frozen rc6-compat (no longer maintained)
  • Maintenance policy: this plugin tracks the latest DSH; legacy compatibility is best-effort only.

Features

  • Checkpoint resume — the official todos projection is cleared at turn/start (by design); the plugin's mirror projection todo-guard/todos is not: the full list persists across turns, session switches and dsh restarts in the review dock (also the fallback when the official panel fails to render after a restart)
  • Official panel untouched — no shadow/replacement of the official component or data flow. Official todo items only carry content/status, and the plugin never stuffs anything into that text (the pre-2.1 habit of writing (证据:…) inside an item is retired — it showed up verbatim in the official panel); the review dock is an additional conversation.input.dock entry right below it
  • Evidence through the plugin's own channel (strictMode, on by default) — the agent submits evidence with the todo_evidence tool; the host verifies path existence (stat only, never reads content; relative paths resolve against the session cwd). Four annotations:
    • every path exists → ✅ verified (green) + evidence text (URLs rendered as links)
    • some path missing → ⚠️ evidence missing (orange; hover lists missing paths)
    • only text credentials submitted (e.g. "pnpm test all green") → ⚪ evidence submitted (grey; existence is not auto-checkable)
    • nothing submitted at completion → 🟡 no evidence (yellow)
  • Non-blocking — fake/missing evidence is still written (no error); the agent only gets a text nudge in the tool result (⚠ N items without evidence (call todo_evidence) / N evidence paths missing / too many checks at once)
  • Incremental check nudge — checking ≥2 items at once triggers a "do it step by step" hint
  • One-click confirm (clickable while collapsed) — the dock is collapsed by default and the header row carries a Confirm N button, so you never have to expand the list to confirm; all checked + nothing pending → auto-hides (confirmation is persisted per session in the browser)
  • Legacy syntax, read-only — (证据:…) written inside item text before the upgrade still displays and verifies in the review dock (old sessions keep working), but is no longer recommended

Submitting evidence

The agent writes clean task names into the official todo_write and submits evidence afterwards with todo_evidence:

todo_write     { todos: [ { content: "Fix the button", status: "completed" }, … ] }
todo_evidence  { items: [ { content: "Fix the button", evidence: ["lib/index.js"] } ] }
  • content must match the todo_write item text (that is how evidence is attached; a mismatch is reported back so it can be resubmitted)
  • evidence accepts several entries: file / artifact / log paths, absolute paths and ~/ as-is; plain text credentials (e.g. "pnpm test all green") are accepted too, just not existence-checked
  • Re-submitting the same item overwrites its previous evidence
  • Evidence lands in the session log as a tool/call event — it survives restarts, session switches and session restore

Install

dsh plugin --profile web add "github:a903067276-rgb/dsh-todo-guard#main"
# restart dsh web

How it works

  • Data: the mirror projection follows official todo/write events (last-wins whole list), is never cleared at turn/start, and persists with the session projection cache — recovery after restart yields the "last valid list"
  • Panel: the review dock registers an independent conversation.input.dock id (order 10, below official todo / above queue) — pure official interfaces, zero model calls, zero tokens
  • Tool: todo_evidence (host-side tools.register) writes evidence into the session log; the dock joins it by item text; nothing extra is persisted on disk — a restart rebuilds it from the log
  • Verification: the dock calls the plugin's /api/dsh-todo-guard/review (host aggregates evidence + stat existence only, never reads content); relative paths resolve against the session cwd; the dock refreshes immediately on list changes and polls every 4s to cover a "check first, submit evidence after" ordering
  • Nudges: official tools/post-execute waterfall appends a non-blocking text notice after a successful write (not an Error); on older hosts without the hook it degrades to panel annotation only

Notes

  • Pure local logic: zero model calls, zero token cost
  • "Forged file" is the annotation boundary: existence ≠ actually done; four-state annotation + human confirm is the backstop
  • strictMode can be disabled (Settings → todo strict mode): the dock becomes a plain list (no annotation, no confirm), resume still works

License

MIT