a903067276-rgb/dsh-todo-guard
A reliable todo panel plugin for DeepSeek Harness (dsh) web: the todo strip survives restarts (works around the official panel disappearing after a restart), and completion is verified against evidence paths.
catalog 简介 / catalog descriptioncatalog description:Reliable todo panel for DeepSeek Harness (dsh) web: survives restarts, completion verified against evidence paths
项目介绍Project Overview
dsh-todo-guard 是 DeepSeek Harness (dsh) web 的待办面板插件。它用官方 todo 数据和接口重建面板,在 dsh 重启后仍能显示会话待办;标记完成时自动核对证据路径(路径存在则✅绿勾,不存在则🚫阻断并提示错误,无证据则⚠️黄色“未验证”)。适用于官方面板重启后丢失待办的场景。注意:插件与旧版 DSH 的兼容性仅为尽力而为,并非所有版本都保证可用。
dsh-todo-guard is a todo panel plugin for DeepSeek Harness (dsh) web. It rebuilds the todo strip using official todos data and APIs, so the list survives a dsh restart, and it verifies each completed item against evidence paths: a green check for existing paths, a blocked error for missing paths, and a yellow "unverified" badge when no evidence marker is provided. Use it when the official panel loses todos after restarts. Caveat: compatibility with older DSH versions is best-effort and not guaranteed across every release.
请帮我了解并安装插件:【dsh-todo-guard】【https://github.com/a903067276-rgb/dsh-todo-guard】
把上面这条消息直接发给当前会话里的 DSH,让它帮你了解并安装。安装命令不一定准确,发给 DSH 更稳。Send this message to DSH in your current session. CLI install commands may not be accurate across systems — DSH will figure it out for you.
或使用命令行安装(适合开发者)Or use CLI install (for developers)
命令行安装CLI Install
dsh plugin --profile web add "github:a903067276-rgb/dsh-todo-guard#main"
把 a903067276-rgb/dsh-todo-guard 加入你的 DSH 配置(web profile)即可启用。
READMEREADME
dsh-todo-guard ✅
A reliable todo panel plugin for DeepSeek Harness (dsh) web: the todo strip survives restarts (works around the official panel disappearing after a restart), and completion is verified against evidence paths.
Unofficial project: independently developed and maintained by a community member, not an official DeepSeek product.
Screenshot

Requirements
- DSH web >= 0.1.0-rc.6 (run with
npx @deepseek-ai/dsh web) - Version compatibility (best effort — the settings card uses dual-field
key+idregistration to satisfy both rc.6 (id) and rc.7+ (key); verified locally on rc.6/rc.8/0.1.1-rc.2, not guaranteed on every DSH version):- DSH 0.1.0-rc.6 and newer (incl. 0.1.1-rc.1/rc.2): try
main(default). - Conservative fallbacks (the last pre-0.1.1 build): DSH 0.1.0-rc.7/rc.8 →
v0.1.4(dsh plugin add github:a903067276-rgb/dsh-todo-guard#v0.1.4); DSH 0.1.0-rc.6 → frozenrc6-compattag (no maintenance).
- DSH 0.1.0-rc.6 and newer (incl. 0.1.1-rc.1/rc.2): try
- Maintenance policy: this plugin keeps evolving with the latest DSH releases; compatibility with older DSH versions is best-effort only and not guaranteed going forward.
Features
- Restart-proof panel — replaces the official todo strip (
conversation.input.dockcell, shadowed atpriority: -1); after a dsh restart, reopening the session shows the todo list again - Completion verification (three states) — when the agent marks a todo
completed, evidence is checked automatically:(证据:路径)and the path exists → ✅ green check (verified)(证据:路径)but the path does not exist → 🚫 blocked, the agent gets a clear error and must fix it- no evidence marker → ⚠️ allowed, the item shows a yellow "unverified" badge (no false blocks on "did it but forgot to write evidence"; visible at a glance)
Evidence syntax
Write (证据:路径) inside a todo item (multiple allowed). Relative paths resolve against the session working directory; absolute paths work as-is:
Fix the button(证据:lib/index.js)
Run tests(证据:test/run.log)(证据:docs/result.md)
Install
dsh plugin --profile web add "github:a903067276-rgb/dsh-todo-guard#main"
# restart dsh web to activate
How it works (why it survives restarts)
- Data: todos live in the session event stream (official
todo/write, last-wins whole-list), persisted on disk — the official panel just fails to re-render them after a restart - Panel: official
useProjection('todos')projection + same-id slot shadowing (priority: -1, lowest renders) — official interfaces only - Verification: official
tools/pre-executewaterfall interceptstodo_writebefore it commits; failed evidence denies the write with a readable reason
Notes
- Pure local logic: zero model calls, zero token cost
- Fake files are the verification boundary: an existing path does not prove the work was done, but the unverified badge keeps the loop honest
- Strict mode (block when evidence is missing) is planned for v2
License
MIT
ruvnet/ruflo
amruthpillai/reactive-resume
volcengine/OpenViking
Molunerfinn/PicGo
titanwings/colleague-skill
nocobase/nocobase
Tencent/WeKnora