Back to home@guazixiong

dsh-coding-mode-preset

为本地 DeepSeek Harness(`@deepseek-ai/dsh`)追加一个**编码模式** Agent Preset:门禁式工程交付流水线,包含三条独立流程——**需求开发**、**Bug 修复**、**功能迭代**。每个阶段的产物由全新上下文的"空白子代理"独立专家评审,通过后须经用户确认才进入下一阶段;最终以用户验收作为任务完结条件。

Stars
0
Language
JavaScript
Created
Aug 30, 2026
Updated
Aug 30, 2026

Introduction

coding-mode-preset — DeepSeek Harness「编码模式」预设插件

为本地 DeepSeek Harness(@deepseek-ai/dsh)追加一个编码模式 Agent Preset:门禁式工程交付流水线,包含三条独立流程——需求开发Bug 修复功能迭代。每个阶段的产物由全新上下文的"空白子代理"独立专家评审,通过后须经用户确认才进入下一阶段;最终以用户验收作为任务完结条件。

三条流水线

流程触发阶段链
需求开发全新功能/新需求需求方案 → 设计文档 → 测试用例(正向+逆向 SOP)→ 编码实现 → 测试执行验收
Bug 修复缺陷/报错/行为异常问题定位 → 修复方案 → 回归测试用例 → 实施修复与验收
功能迭代已有功能的增加/调整/扩展迭代需求设计 → 初步设计 → 测试设计(单元测试+正向/逆向 SOP)→ 正式编码 → 自动验证与用户验收

每条流程的共同约束:

  • 空白子代理验收门禁(G1–G4):每次评审用 subagent(spawn,全新上下文)新起子代理,prompt 只含产物路径、项目根目录、评审标准与输出格式;禁止用继承上下文的 subagent_fork 评审。结论分 Blocker/Major/Minor,任一 Blocker 或 Major 即不通过;单门禁最多 3 轮复审。
  • 用户确认点:门禁通过后汇报并结束回合等待;用户确认才推进。编码门禁(G4)通过后通报即进入自动验证,其余阶段均停等。
  • 产物落盘:每任务独立目录 docs/harness/<slug>/state.md 记录阶段/门禁轮次/等待事项;用户下一条消息先恢复现场再行动。
  • 最终验收闭环:自动验证失败自行修复并全量重跑;用户验收提出问题按归属(需求/设计/测试/代码)回退对应阶段,用户确认后任务才置 done。

目录结构

coding-mode-preset/
├── README.md                          # 本文件
├── preset/                            # dsh 预设本体 → 安装到 ~/.dsh/.agent-presets/coding-mode/
│   ├── preset.yml                     # 下拉框显示名(编码模式)与描述
│   ├── agent.cordis.yml               # 工具面组装 + 三条流水线常驻指令(核心,改流程改这里)
│   ├── workflow-prompt.mjs            # 自研插件:把工作流指令注册为常驻 system prompt 段
│   ├── custom-bash.mjs                # win32 下的 bash 工具(Git Bash 通道,取自 liangshen 预设)
│   └── NOTICE                         # 改编来源与许可声明
├── skills/                            # dsh 技能版(可选)→ 安装到 ~/.dsh/skills/
│   ├── dev-mode/SKILL.md              # 需求开发流水线(轻量入口)
│   └── bugfix-mode/SKILL.md           # Bug 修复流水线(轻量入口)
├── codex-plugin/                      # ZCode/Codex 插件打包版(可选)
│   └── deepseek-harness/
│       ├── .codex-plugin/plugin.json
│       └── skills/{dev-mode,bugfix-mode}/SKILL.md
├── install.ps1                        # Windows 安装脚本(PowerShell)
└── install.sh                         # 安装脚本(Git Bash / POSIX)

安装

方式一:脚本安装(推荐)

PowerShell:

cd D:\repo\coding-mode-preset
.\install.ps1

Git Bash:

cd /d/repo/coding-mode-preset
./install.sh

脚本会把 preset/ 复制到 ~/.dsh/.agent-presets/coding-mode/,把 skills/ 复制到 ~/.dsh/skills/。预设与技能均为实时发现,安装后刷新 dsh 网页端即可(运行中的实例通过 watcher 热加载,无需重启)。

方式二:手动安装

# 预设(必需)
cp -r preset ~/.dsh/.agent-presets/coding-mode

# 技能(可选,标准模式下的轻量入口)
cp -r skills/dev-mode ~/.dsh/skills/
cp -r skills/bugfix-mode ~/.dsh/skills/

使用

  1. 刷新 dsh 网页端,新建空白会话(预设只能在空白会话选择/切换);
  2. 模式下拉框选择「编码模式」(排在内置模式与梁神模式之后);
  3. 直接描述需求或报 bug;已有功能迭代明确说"迭代/扩展 XX 功能",模糊时代理会用 ask_user_question 问一次。

若预设装配有问题,下拉框会把它标为 broken 并显示原因(fail-loud),不会静默失效。

定制

  • 改流程/门禁/文案:编辑 preset/agent.cordis.ymlworkflow-prompt 行的 text(约 22–112 行的工作流全文),重新安装或直接同步到 ~/.dsh/.agent-presets/coding-mode/,对新会话立即生效。
  • 改下拉框名称/描述:编辑 preset/preset.yml
  • 增减工具面:编辑 preset/agent.cordis.yml 的行清单(disabled: true 可隐藏行)。注意 subagent(spawn)与 ask_user_question 是门禁机制依赖项,勿删。

卸载

rm -rf ~/.dsh/.agent-presets/coding-mode
rm -rf ~/.dsh/skills/dev-mode ~/.dsh/skills/bugfix-mode   # 如安装过技能

来源与许可

agent.cordis.yml 改编自本机用户预设 liangshen(其本身改编自 DeepSeek Harness 内置 Minimal/Standard preset,MIT);custom-bash.mjs 原样取自 liangshen,移植自 xiaobright/dsh-anchored-standard(MIT);workflow-prompt.mjs 为本项目自研,参照内置 dsh-plan-mode 的 systemPrompt.section 注册方式。详见 preset/NOTICE

适配版本:@deepseek-ai/dsh@0.1.1-rc.2(win32,web profile)。