前言¶
DeepSeek Harness(DSH)把 Agent 能力拆成可组合的插件与 preset。日常写代码时,若希望在 Coder 会话里沿用 Matt Pocock 那套工程化技能(TDD、spec、PR、复盘等),又不想把同一 profile 里 standard 会话的技能目录搅在一起,就需要一个只作用于 Coder 的 bundle。
下面介绍社区维护的 dsh-coder-preset:它在 Coder agent preset 上打包 Matt Pocock 工程技能(简体中文),并附带 profile 级的 git 命令 guard。SkillHub 上的当前版本为 v1.4.1;社区目录一句话简介仍写「35 项」,而 v1.4.1 文档载明为 37 个技能,下文以目录页完整说明为准。
这是什么¶
dsh-coder-preset(维护者 yuanshuoSY)是一个 DeepSeek Harness bundle:提供 Coder agent preset,以及面向 Coder 会话的 Matt Pocock 工程技能集。分类上在 SkillHub 归入 模型推理。
它要解决的问题很具体:把工程流技能 限定在 Coder 会话——standard 会话加载不到这些技能;安装后也不会改写同一 profile 里其他 agent 的技能目录。实现上以配置、Markdown 为主,并带一个无运行时依赖的小型 guard 插件。
核心功能¶
经 SkillHub 目录页核对,bundle 主要包括以下内容。
Coder 预设与技能集¶
- 37 个技能(简体中文):其中 33 个逐字节 vendored 自
vinvcn/mattpocock-skills-zh-CN的604ad61提交;4 个为 DSH 改编(源规则见仓库内LOCALIZATION.md,该文件不随包发布)。 - 15 个 model-invocable:模型可在任务匹配时自动加载;其余 22 个 user-only 不会进入模型技能目录,但均可通过
/技能名手动调用(中文界面/菜单中带「仅用户」徽标)。 - Coder 专属:standard 会话看不到 bundle 内技能。
四个 DSH 改编技能(行为与上游不同)¶
| 技能 | 要点 |
|---|---|
ask-matt |
用「结束当前会话、新建会话」代替 DSH 没有的 /clear;/compact 仅无参形式 |
claude-handoff |
写 handoff 摘要后通过 DSH subagent 启动进程内子 agent |
git-guardrails-claude-code |
由内置 profile 级 git-guardrails 插件行实现 tools.guard() |
scaffold-exercises |
按文档规则自检,不调用私有课程 linter |
git-guardrails¶
启用 profile 级 git-guardrails 后,agent 通过 shell 工具执行的 git push、git reset --hard、git clean -f/--force、git branch -D、git checkout .、git restore . 等会被拒绝;你在终端里自己输入的命令不受影响。可在插件管理中停用该行。
质量与兼容声明¶
- bundle 声明
engines.dsh为>=0.2.1-rc.3 <0.3.0;DSH 安装时会检查,超范围会拒绝并提示dsh plugin allow-version等补救方式。 - 文档记载已在 Windows 上的 DSH 0.2.1-rc.3 做过安装、Coder 技能可见性、
/ask-matt触发与 standard 隔离等验证;CI 对 tarball 做安装 smoke,但不跑需要模型凭证的回合。
许可:MIT(vendored 与改编部分的署名见仓库 NOTICE)。项目与 DeepSeek、Matt Pocock 无隶属或背书关系。
安装与启用¶
官方推荐从 GitHub Releases 安装本地 bundle,而不是凭仓库名拼接 dsh plugin add github:…(目录页未给出该形式命令)。
图形化 / 本地 tarball¶
- 从 releases 页面下载
dsh-coder-preset-1.4.1.tgz与SHA256SUMS,用校验文件核对 tarball。 - 打开 DSH 插件管理,选择安装本地 bundle,选中该 tarball。
- 重启 DSH。
- 新建会话,agent 选择 Coder。
CLI(CLI 托管的 profile)¶
适用于已存在且包含 web-app 的 profile(例如 web)。不适用于 Electron 托管的 desktop profile。
dsh plugin --profile <profile> add /path/to/dsh-coder-preset-1.4.1.tgz
目录页说明:对五个内置模板名(web、acp、headless、sdk、sdk-minimal)之外的新 profile 名执行 dsh plugin --profile add 时,可能只初始化 base profile,Coder preset 行会出现在组合树里但 不会注册;内置模板名会按对应模板初始化。
Windows 上运行时替换已安装 bundle 可能遇到 EPERM;文档建议先把 tarball 复制到仓库外(如 ~/.dsh/bundle-artifacts/),在插件管理里禁用 bundle、重启、再装新版本并重新启用。
典型用法¶
技能只在 Coder 会话可见。每个项目第一次走工程流前,建议执行一次:
/setup-matt-pocock-skills
常用 slash 命令示例:
| 命令 | 作用 |
|---|---|
/ask-matt |
把当前处境路由到合适的技能或流程 |
/grill-with-docs |
追问并打磨计划或设计,同时写 ADR 和术语表 |
/to-spec |
把对话整理成 spec 并发布到 issue tracker |
/to-tickets |
把 spec 拆成带阻塞关系的 tracer-bullet 工单 |
/implement |
根据 spec 或工单实现功能 |
/tdd |
测试先行:红、绿、重构 |
/code-review |
从 Standards 和 Spec 两个维度审查改动 |
/pr |
按模板撰写 PR 正文 |
/retro |
对一次编码会话做复盘 |
/claude-handoff |
写 handoff 摘要,并用它启动 DSH subagent |
model-invocable 技能(如 /tdd)可由模型自动选用;user-only 技能(如 /ask-matt、/to-spec)需你手动输入。
适用场景与注意¶
适合谁:已在 DSH 中使用 Coder agent、希望把 Matt Pocock 工程技能(中文版)收进单一 bundle,并与 standard 会话隔离的开发者。
共存与升级:
- 不要与上游
@vinvcn/dsh-mattpocock-skills-zh插件同装于同一 profile,否则 Coder 会话会出现两套技能目录。 - 自 1.4.0 起技能源切换为中文上游;
chief-of-staff不再随包提供。
环境与依赖(文档摘录):issue tracker 类技能可能需要 gh、glab 或本地 markdown tracker;部分基于 bash 的技能在 Windows 上需要 Git Bash 或 WSL;/implement-spec 需要 git worktree,文档称尚未端到端验证。
安全与权限:bundle 以当前 DSH 进程权限运行;guard 只检查引号之外的命令文本,不能替代沙箱。安装前请阅读 GitHub 源码、NOTICE 与 MIT 许可证,并自行判断 releases 与仓库是否仍可访问(第三方索引页曾提示仓库快照状态变化,以你本地能打开的源为准)。
结尾¶
dsh-coder-preset 把 Coder preset、37 个 Matt Pocock 工程技能(含 4 项 DSH 改编)和可选的 git guard 收进一个 bundle,专用于 Coder 会话,适合在 DSH「一切皆插件」的生态里做工程化结对编程。