Repository navigation
Releases: shuxidemosheng/dsh-tool-todo-plus
Release list
v0.7.4:适配 dsh 0.2.1-rc.2(修复升级后插件被拒绝加载)
修复:dsh 升级到 0.2.1-rc.2 后插件不加载
dsh 0.2.1-rc.2 起会在启动时校验插件兼容性:存在 engines.dsh 时只按它判定,否则逐个检查 peerDependencies 中所有 @deepseek-ai/dsh-* 的范围;运行时不满足就拒绝加载。0.7.3 及更早把 peer 精确锁死在 0.2.0-rc.2,并且依赖了新版已删除的 @deepseek-ai/dsh-invariants——在 0.2.1-rc.2 上被判为 incompatible,整条插件被跳过。
0.7.4 的修复:
- 新增
engines.dsh: ">=0.2.0-rc.2 <0.3.0":存在该项时 dsh 只评估它并忽略 peerDependencies,0.2.x的 rc 升级不再打断插件 - 移除
@deepseek-ai/dsh-invariants(源码从未引用) @deepseek-ai/dsh-*peer 范围放宽为同一区间;devDependencies 对齐0.2.1-rc.2- dev 依赖 zod 对齐宿主的
4.4.3(原先的 4.6.7 与宿主类型不兼容,导致 tsc 失败) - README 新增 FAQ「dsh 升级后插件加载失败」;刷新深度安全扫描封印(0 发现)
验证
- 用 dsh 0.2.1-rc.2 的
evaluatePluginCompatibility规则逐字复刻校验:0.2.0-rc.2 / 0.2.1-rc.1 / 0.2.1-rc.2 / 0.2.2均判定 COMPATIBLE;0.3.0按设计拒绝 - 反例确认根因:0.7.3 的清单在
0.2.1-rc.2下五项 peer 全部不满足 - 在桌面端 0.2.1-rc.2 上安装成功(0.7.3 → 0.7.4)
安装 / 升级
dsh plugin --profile <profile名> add dsh-tool-todo-plus@0.7.4若安装时出现
ERR_PNPM_MINIMUM_RELEASE_AGE_VIOLATION(registry 镜像元数据滞后导致锁文件校验失败),给同一条命令加上--registry=https://registry.npmjs.org重试。
完整改动:v0.7.3...v0.7.4
v0.7.3:修复面板停在某一步不动(写入被拒会永久停摆)
修复:面板停在某一步「进行中」不动,任务其实已经完成
根因是运行时校验的硬拒绝:模型同时标多个 in_progress(或提交空内容、重复内容)时,整次调用被拒绝、一个事件都不写——浮窗与官方内联任务条于是永久停在旧状态,直到重载会话。任务清单停在第一步、而模型早已往下做了,就是这么来的。
0.7.3 起改为规范化而不是拒绝,保证每次调用都能推进面板:
- 同时标多个
in_progress:保留最靠前的一个,其余自动降级为pending(配置allowParallelInProgress: true时不受此限) - 重复
content:保留首次出现,后续追加(2)/(3)——任务不丢,且列表 key 保持唯一 content为空白:丢弃该条目;清单不会因此变空(全空仍按非法输入拒绝,并给出明确错误)- 上述调整会写进工具结果告知模型,下一轮按规范化后的形状提交即可
注册容错
投影注册与工具注册各自隔离、各自记日志:
- 宿主里官方插件把同一个
todoskey 注册在不同stateVersion上时,投影注册表会直接抛错;此前这会连带让整条 entry 激活失败,现在只记日志、工具照常注册(浮窗退化为读取已注册的那份定义) - 工具注册失败也不再冒泡——避免"任一条 entry 激活失败导致会话创建失败"的更坏后果
客户端
列表 React key 带上序号,修掉两条待办内容相同时条目被合并/漏渲染的问题。
排查指南(已写入 README「常见问题」)
面板显示不实时,先看「轨迹」标签页里 todo_write_plus 的调用记录:
- 最后一次是红色报错 → 那次写入被上面的规则拒绝(0.7.2 及更早)
- 最后一次成功、之后再没有调用 → 模型自己没更新清单(它用文字汇报了进度但没调工具)——浮窗是纯展示层,不会替模型编造进度
安装 / 升级
dsh plugin --profile <profile名> add dsh-tool-todo-plus@0.7.3dsh 的 minimumReleaseAge 供应链冷却期会让刚发布的版本在数天内不接受"裸包名"安装,所以请带上版本号(桌面端插件页同理,粘贴 dsh-tool-todo-plus@0.7.3)。
完整改动:v0.7.2...v0.7.3
v0.7.2:可拖动任务面板 + 当前动作显示 + 双击复位
首个 GitHub Release——DeepSeek Harness 任务清单插件,官方 todo_write 的增强 fork:优先级标签 + 完整清单渲染 + 会话内浮动任务面板。
浮动任务面板(用户侧)
- 实时跟随
todo/write自动弹出;历史回放只同步数据、不打扰 - 展开态 ⇄ 胶囊态(ZCode 计划面板同款内容优先级链),点击即时切换
- 面板可拖动,位置自动记忆(localStorage,仅
{x, y}坐标);双击头部复位到默认锚定位置(v0.7.0–v0.7.2) - 当前动作行:两次清单写入之间实时显示模型正在执行的工具(v0.6.0)
- 轮次间不闪空:新一轮开始保留上一轮清单,淡化并标"上一轮"(v0.6.0)
- 原生外观:解析宿主
--dsw-*设计 token,亮暗主题自动跟随
增强工具(模型侧)
priority(high/medium/low)优先级标签,对齐 ZCode TodoWrite- 工具结果返回完整 markdown 清单(官方版仅一行计数)
- description 内置行为纪律:整表替换、单
in_progress、完成即刻标记、切换即写(v0.6.1) - 双保险参数校验:schema 之外再做运行时校验(非空 / 去重 / 单活跃)
兼容与安全
- 桌面端注册为
todo_write_plus,与官方todo_write零冲突共存;会话日志复用官方todo/write事件类型,双向兼容 - 零运行时 npm 依赖、无网络请求、无 eval /
innerHTML;Mimosa 深度安全扫描 0 发现
安装
dsh plugin --profile <profile> add dsh-tool-todo-plus桌面端安装、git 直装、源码构建等其他方式见 README。