dsh-web
zhu1090093659/dsh-webDeepSeek Harness(DSH)Web 插件聚合生态包 · 一切皆插件,创意工坊分发(dsh-market.com)
DSH 插件:会话中记录待办,自动记录上下文中关于这个待办事项的关键内容,等需要处理时可在新会话中直接开始任务,无需从头调查也不用再次说明情况
中文 | English
为 DSH 会话中的旁支任务保存上下文,并在需要时把它交接给未来的会话。
开发时,你可能突然发现一个 Bug、想到一项配套功能,或意识到当前实现还缺少某个步骤。但主任务正在进行,你不想现在中断;等以后回来处理时,也不想重新调查一遍,更不想再次向 AI 解释来龙去脉。
Todo Assistant 让你先把这件事记下来。AI 会整理与该任务相关的必要信息,任务卡片可以在之后被查看、补充,并带入新会话或当前输入框。
它不只是记录"还有什么没做",也帮助保留"为什么要做、之前已经知道什么、下一步该做什么"。
右侧栏还有一个“计划”页:把 Markdown 计划导入成项目和阶段,按阶段查看依赖、验收和执行结果,并从某个阶段直接开始新会话或插入交接材料。
你正在实现一个大功能,顺手发现了另一个模块的问题。先把问题和相关线索记下来,继续完成当前主任务;之后再单独处理。
实现过程中,你发现还需要一个设置项、一个编辑入口,或某个补充流程。先记录想法,等当前阶段完成后再回来处理。
当你准备处理一张卡片时,可以让插件新建一个会话,并把卡片内容作为开场上下文;也可以将提示插入当前会话的输入框,由你决定何时发送。
卡片可以保留开发者的原始请求、任务相关信息、文件路径、下一步、必读内容和补充记录。必要时还可以按需回读原始会话中的指定片段,而不是一开始就把整段历史全部塞进上下文。
在 DSH 中执行:
plugin_manager install_bundle target = https://github.com/zangoose335/dsh-todo-assistant.git
install_bundle 需要审批,并且安装后需要重启
DSH。也可以从本地仓库安装,或按需固定到某个 Git commit。安装细节见下文。
在右侧栏点击 +,选择 Todo Assistant(卡片)或 计划(项目计划)。
“计划”页默认跟随当前会话的工作区,也可以切到全部工作区或收件箱。卡片按工作区查看;不属于任何工作区的卡只在 「全部工作区」视图里可见。侧栏提供未完成、待修复、待添加、已完成和全部等视图。
你可以直接告诉 AI 希望记录什么,并明确同意创建;也可以使用下面的标记语法。同一条回复里可以放多个标记,一次记录多个待办。
#MEMO 会议记录完成后需要支持修改标题。先完成当前主功能,之后再实现标题编辑,并确认修改后的标题能正确保存和显示。
#/MEMO
#DB 和 #MEMO 都是待办标记,作用相同;DB
是"待办"的拼音首字母,MEMO
是更容易被国际用户理解的替代写法。它们不代表不同的任务类型。 AI
应根据内容判断这是待修复问题、待添加功能还是其他事项。
标记规则:
#db、#DB、#memo、#MEMO 不区分大小写。#DB … #/DB 或 #MEMO … #/MEMO
成对包住要记录的内容;结束标记可以省略,此时记录到消息末尾。输入框支持 #db / #memo 的轻量补全。AI
回复上的"记录待办"面板也可以帮助选择回复中的段落并送入捕获流程。
每张卡片首先是一份任务简报,再附带来源与现场:
brief.nextAction 是唯一的规范下一步。旧字段 nextStep 作为兼容镜像保留:只提供
brief 可以建卡,只提供 nextStep 仍兼容;两者冲突时以 brief 为准并返回 warning,任何正常写入都会同步二者。
简单任务可以只有 goal + nextAction,不要求填满其他字段。每条 brief 信息必须标明
requirement(开发者要求)、decided(已确认决定)、verified(已验证事实)、
inferred(AI 推断)、unknown(未知)或 superseded(已被替代);推断不会被写成已确认事实。
只有来源指针、没有实质任务说明的输入会被拒绝:无 brief 且只有 touchedFiles/park/symbols 时返回
todo/brief-required,brief 只有 leads 时返回 todo/brief-source-only,forceCreate 也不能绕过。
旧式调用只给 nextStep、不带来源字段时仍然兼容;带真实文件路径时按“只有路径”处理,需要补简报或至少一条
mustRead 事实。
旧卡没有 brief 时,插件从 core、mustRead、park 和 touchedFiles 派生只读简报。派生信息只用于读取,
不会批量改写旧数据;旧卡的可信度默认按 unknown 处理,不能当成已验证事实。派生简报不能凭空补出
confirmed/constraints,也不会把 mustRead 自动升级为已验证。
开发者原话由 Host 从用户消息中保存,不依赖 AI 转述,因此可以用来核对 AI
是否误解了原始需求。带 #DB/#MEMO 标记时,标记内的文本会完整保存;没有标记时,AI 只摘取与当前待办有关的那几句。若模型没有给出摘录,多段消息只保存第一段;第一段只是创建指令时不保存 request。
打开卡片后,你可以选择:
处理完成后,AI 应询问你是否将卡片标记为完成;得到确认后才更新状态。
卡片也支持追加 note,以记录新证据、进度或补充事实,而不是悄悄覆盖原始记录。
右侧栏的第二个入口“计划”用来放跨会话的项目计划;它和“待办”页并存,互不影响。
todo_plan_read 补看。-2,不覆盖同名文件。收件箱里的计划需要先放进一个工作区。todo_plan_read 查看项目/阶段/依赖/验收/结果,用 todo_plan_context 生成阶段交接;两者都不会改计划。最小 Markdown 语法:# 项目名 加首段作为总体目标;## Phase 4: 标题 为阶段,### Phase 4a: 标题 为子阶段(也接受 A、B2 这类编号);阶段内用 Goal:/目标:、Acceptance:/验收:、Depends on:/依赖:、Context:/上下文:、Decisions:/决策:、Risks:/风险:、Next:/下一步:、Result:/结果: 加条目。代码围栏会被忽略,认不出的内容只出现在预览里,不会写进计划。
原始会话回读可能消耗较多 token。插件的工具说明要求 AI 先征得开发者同意,再查看目录并读取指定片段。手动创建、没有原始会话范围的卡片可能无法回读原文。
插件会收集当前会话中的部分文件工具路径,并与该会话创建的未完成卡片比较。如果文件路径完全相同,或共享足够长的目录前缀,侧栏可能显示"相关"标记,并在后续步骤提醒 AI。
这是一种轻量路径信号,不是语义级的任务理解,也不能保证发现所有相关修改。它主要用于提示 AI:如果本轮产生了值得保留的新证据,可以通过 note 追加到卡片。
forceCreate 继续,确认补充则用 todo_note;#3.2,便于在对话中引用卡片;# 引用选择器:正常会话中候选按当前会话所属工作区筛选;缺少会话 ID 时退回查询全部工作区;当前已完成 P0-BASE、T1–T4 的基础实现;T5/Gate 1 于 2026-10-19 严格复核、修复语义并完成真实运行验收,结论为通过(PASS,带范围限制):
brief.nextAction 与旧 nextStep 的统一契约;只给 brief 或只给旧 nextStep 都可建卡,冲突时以 brief 为准并返回 warning;be8ebf4 探针显示降级会丢 brief 和 sources。Gate 1/T5 通过(PASS,带范围限制;2026-10-19 严格复核 + 语义修复 + 真实运行验收)。
验证依据:node scripts/verify-brief.mjs 118/118、node scripts/verify-domain.mjs 262/262、node scripts/verify-recall.mjs 35/35、
node scripts/verify-gate1.mjs 63/63(S1–S10 39/39)、node scripts/verify-legacy.mjs 11/11、git diff --check 通过。
§8.0 的确定性 S1–S10 全部通过;修正后的隔离语义探针 10/10 通过(S3 约束进 constraints、S4 无多余 verified 元约束、S5/S6 的 blocking 与 nextAction 正确、S9 先问追加还是新建)。
所有 wouldCallRecall=false 仍是模型自述,不是调用轨迹。详见 docs/GATE1-T5-ACCEPTANCE.md。
Gate 1 UI 冒烟已由开发者验证(2026-10-19): # 引用框工作区筛选、完成/反向切换动画、减少动态效果、窄窗口布局、duplicate 提示均未发现问题。UI 冒烟不等于十场景语义验收。
范围限制: 旧插件 UI 和存储写回使用副本/测试工作区,未对真实 ~/.dsh 做破坏性升级/降级;S9 需要用户明确指向 #6.25;S2 约束有重复、S7 比最简多两个字段。真实 UI 十场景、真实 todo_recall、旧插件 UI、存储副本和场景 10 均已验证。
Stage 4(B1–B5、C1–C4)验证(2026-10-20): verify-plan 74/74、verify-phase 66/66、verify-import 67/67、verify-context 46/46、verify-client 12/12、verify-evidence 32/32、verify-diff 28/28、verify-propose 20/20、verify-history 31/31,加上原有 5 个脚本共 865 项全部通过,git diff --check 通过。计划页手工验收记录见 docs/B5-ACCEPTANCE.md;C1 的真实提议/拒绝/应用、C2 的“改依赖”diff/受影响阶段、C3 的项目级提议/两步确认/提议历史、C4 的历史/初始对比/决策历史均已手工验收。
Stage 4 的 B1–B5、C1–C4 已完成(2026-10-20):Project Plan 数据模型与三张表、阶段/依赖/验收/状态/执行结果、确定性 Markdown 导入与确认、阶段上下文包与只读工具、计划页(第二个右栏入口)和导出到工作区文件夹;C1 增加“AI 只能提议、工具结果才算证据、开发者应用后才生效”的阶段结果流程;C2 增加字段级 diff、受影响阶段和四种计划变化提议;C3 增加项目级六项提议、两步确认、提议历史与带颜色的 diff;C4 增加摘要版本历史、初始/当前对比、决策历史、分页与摘要导出。计划页已由开发者手工走通导入、拆分、当前阶段、开始阶段、插入交接和导出;普通卡片页未改动。
仍未实现:D1–D3(卡片/阶段拖拽交接)、E2–E4(卡片步骤与编号)。计划页暂不提供删除项目、阶段标题/目标编辑与删除提议;任意中间版本的完整计划无法重建(历史只存摘要,可看初始/当前/初始对比和单条变更);Markdown 往返不保留测试证据明细;旧版本写回会丢掉 brief/sources,也会丢掉 projects/plan_proposals/plan_changes 三张表,升级前请备份 ~/.dsh/storages/todo_assistant.json。卡片拖拽仍只插入可见引用(如 #6.24「…」),完整正文通过三个操作按钮插入。
所有方式都通过 plugin_manager install_bundle 安装,并且需要审批。
从 GitHub 安装:
plugin_manager install_bundle target = https://github.com/zangoose335/dsh-todo-assistant.git
从本地仓库安装:
plugin_manager install_bundle target = <仓库的绝对路径>
固定到某个 commit:
plugin_manager install_bundle target = https://github.com/zangoose335/dsh-todo-assistant.git#<commit>
如果未来发布到 npm,也可以按包名和版本安装。install_bundle 需要 pnpm
位于 PATH 中。
安装或更新 Host 侧代码后,重启 DSH 以加载插件。只修改 client.js
时通常刷新页面即可;“计划”页依赖 Host 侧的新接口,更新后请先完整重启 DSH,再刷新页面。
安装后,在右侧栏点击 +,选择 Todo Assistant(卡片)或 计划(项目计划)。
本仓库包含实现与验证代码。若你希望了解数据结构、工具定义、标记解析、路径提醒、原文回读和 Host/Client 通信等实现细节,请阅读:
docs/DESIGN.md:设计原则与实现决策docs/B5-ACCEPTANCE.md:计划页与 A–E 路线图的验收记录scripts/verify-domain.mjs:卡片/存储/回读的无头验证scripts/verify-plan.mjs、scripts/verify-phase.mjs:计划与阶段scripts/verify-import.mjs、scripts/verify-context.mjs:导入导出与交接scripts/verify-client.mjs:浏览器端页签注册冒烟scripts/verify-evidence.mjs:测试证据配对、提议与应用scripts/verify-propose.mjs:项目级提议、应用/拒绝与审计scripts/verify-history.mjs:版本摘要、初始/当前对比、决策时间线与导出scripts/fixtures/plan-a-e.md:A–E 路线图导入样例MIT © 2026 黑桃伍