ワンクリックで
sdd
Harness Engineering 全流程开发 - 从 feature spec 到 PR 合并,Agent 自主完成 设计→规划→TDD 实现→代码审查→修复→PR 的完整 loop,全程使用 subagent 隔离执行,人工只在设计确认和 BLOCKED 时介入。
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
Harness Engineering 全流程开发 - 从 feature spec 到 PR 合并,Agent 自主完成 设计→规划→TDD 实现→代码审查→修复→PR 的完整 loop,全程使用 subagent 隔离执行,人工只在设计确认和 BLOCKED 时介入。
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
Twitter/X 一站式工具:读推文、搜索话题、发帖、发 thread。触发词:"读推文"、"搜Twitter"、"发推"、"发thread"、"twitter post"、"twitter search"、"read tweet"、"post tweet"。
网页抓取与搜索工具。当用户说"抓取网页"、"scrape"、"爬取"、"xcrawl"、"搜索网页"、"web search"、"站点地图"、"sitemap"、"crawl"时使用。
英语单词查询与学习助手,基于 GPT-4 生成的 8000 词词典。当用户说"单词 <word>"、"查 <word>"、"look up <word>"、"vocab <word>",或通过 Telegram 发来英语单词查询时使用。首次使用自动下载词库,无需额外配置。
Harness 方法论工具箱(基于 Anthropic 研究)。当用户说"harness"、"harness build"、"harness qa"、"harness plan"、"用harness构建"、"独立评估"、"评估一下"、"qa check"、"规划一下"、"分解为sprint"时使用。包含三种模式:构建(Planner→Generator→Evaluator)、QA(独立评估)、规划(Sprint 分解)。
Claude Certified Architect (CCA) 完整学习套件。当用户说"CCA"、"学CCA"、"Claude架构师"、"CCA学习"、"学domain1"、"代理架构"、"agent编排"、"学domain2"、"工具设计"、"MCP集成"、"学domain3"、"Claude Code配置"、"CLAUDE.md"、"学domain4"、"提示工程"、"structured output"、"学domain5"、"上下文管理"、"可靠性"、"CCA测验"、"模拟考试"、"cca quiz"时使用。
自主迭代优化任务。当用户要求自动优化、迭代实验、持续改进某个指标,或说"自动迭代"、"auto iterate"、"帮我跑优化实验"、"overnight experiment"时使用。
SOC 職業分類に基づく
| name | sdd |
| description | Harness Engineering 全流程开发 - 从 feature spec 到 PR 合并,Agent 自主完成 设计→规划→TDD 实现→代码审查→修复→PR 的完整 loop,全程使用 subagent 隔离执行,人工只在设计确认和 BLOCKED 时介入。 |
| allowed-tools | Read, Write, Edit, Bash, Grep, Glob, Agent |
完整的 Harness Engineering 软件开发 loop。所有「执行性质的工作」都由 subagent 完成,本 Skill 只做编排。
核心判断标准(来自 @kasong2048):
你有没有一个完整的环境,可以对 Agent 的行为进行约束、观测、校验、回退?
- 有 → Harness Engineering(Agent 自主完成全部编码)
- 没有 → Vibe Coding(需要人工介入)
本 Skill 就是这个「完整环境」:
| Harness 属性 | 在本 Skill 中的体现 |
|---|---|
| 约束 | Subagent 在 git worktree 中工作,任务边界由 plan 明确定义,不能触碰范围外的文件 |
| 观测 | 每个 subagent 返回 DONE/DONE_WITH_CONCERNS/NEEDS_CONTEXT/BLOCKED 状态,审查 subagent 输出结构化报告 |
| 校验 | 测试必须通过 → lint/format 必须通过 → spec compliance review → code quality review → CI 验证 |
| 回退 | 测试失败 → rollback worktree;review 3 次不过 → 上报用户;BLOCKED → 暂停等待 |
不适用场景:
Feature Spec
│
▼
Phase 1: 设计 → dispatch design-subagent
│ ← 用户确认(唯一强制人工介入点)
▼
Phase 2: 规划 → dispatch planning-subagent
│
▼
Phase 3: 建立 Worktree → git worktree + 环境初始化
│
▼
Phase 4: 实现循环 → 每个 task: impl-subagent → spec-review → quality-review
│
▼
Phase 5: 质量关卡 → 测试套件 + lint + coverage 检查
│
▼
Phase 6: PR 创建 → gh pr create,等待 CI
│
▼
Phase 7: Review 修复 → dispatch fix-subagent per review comment → push → merge
dispatch design-subagent(最强模型)
给 subagent 的上下文:
docs/specs/YYYY-MM-DD-<feature>.md设计文档应包含:
人工确认:设计文档完成后,向用户展示摘要,等待确认或修改意见。这是整个流程唯一的强制人工介入点。
dispatch planning-subagent(标准模型)
给 subagent 的上下文:
输出:docs/plans/YYYY-MM-DD-<feature>.md
规划文档格式:
## 任务列表
### Task 1: <名称>
**文件**: src/foo/bar.ts, src/foo/bar.test.ts
**描述**: ...
**验证步骤**: pnpm test src/foo/bar.test.ts
**依赖**: 无
### Task 2: <名称>
...
每个 task 要求:
# 检查 worktree 目录配置(优先 .worktrees/,其次 worktrees/)
# 验证已在 .gitignore 中
git worktree add .worktrees/<feature-name> -b feat/<feature-name>
# 自动检测并初始化环境
# Node.js: npm/pnpm/yarn install
# Python: uv sync / pip install -e .
# Rust: cargo build
# 验证干净基线:运行测试,确认全部通过
对每个 task 串行执行(注意:不并行,防止文件冲突):
关键原则:subagent 不继承你的上下文,你需要构造完整的任务包。
给 implementation-subagent 的 prompt 模板:
## 任务
<task 完整文本,从 plan 文件提取>
## 场景
你在实现 <feature 名称> 的一部分。
设计文档在 <路径>,你可以读取它了解整体方向。
## 工作目录
<worktree 绝对路径>
## 要求
1. 遵循 TDD:先写失败的测试,再写实现,确认测试通过
2. 完成后运行:<验证命令>
3. 提交代码(使用 conventional commit 格式)
4. 如遇到阻碍,立即上报,不要猜测
## 返回状态
完成后以下列格式回复:
STATUS: DONE | DONE_WITH_CONCERNS | NEEDS_CONTEXT | BLOCKED
SUMMARY: <一句话总结>
CONCERNS: <如有,列出>
QUESTIONS: <如有,列出>
COMMIT: <commit sha>
| 状态 | 处理方式 |
|---|---|
DONE | 进入 spec compliance review |
DONE_WITH_CONCERNS | 先读 concerns,判断是否影响正确性,再决定是否先修复还是直接进 review |
NEEDS_CONTEXT | 提供缺失的上下文,重新 dispatch(同模型) |
BLOCKED | 评估原因:上下文问题→补充上下文重 dispatch;任务太大→拆分;plan 有误→上报用户 |
永远不要 ignore BLOCKED 或强迫同一 subagent 重试而不做任何改变。
给 reviewer 的上下文:
git diff <base>..<commit> 输出)reviewer 检查:
返回:✅ SPEC_PASS 或 ❌ SPEC_FAIL: <具体缺失/多余项列表>
只在 spec review PASS 后才启动(顺序不能错)。
给 reviewer 的上下文:
reviewer 检查:
返回结构:
DECISION: APPROVED | CHANGES_REQUESTED
CRITICAL: <阻塞合并的问题>
IMPORTANT: <强烈建议修改的问题>
MINOR: <可选改进>
如果 review 返回 CHANGES_REQUESTED:
完成一个 task 后,更新 TodoWrite 标记该 task 完成,再进入下一个。
所有 tasks 完成后,在 worktree 中运行完整质量检查。全部通过才能进入 Phase 6。
# 1. 完整测试套件(优先运行,失败直接 rollback)
pnpm test # 或 npm test / pytest / cargo test
# 2. Lint 和格式检查
pnpm lint # 或对应命令
pnpm format:check # 或 prettier --check
# 3. 类型检查(TypeScript 项目)
pnpm tsgo # 或 tsc --noEmit
# 4. 构建验证(如有 dist 变化)
pnpm build
# 测试覆盖率(如有 coverage 配置)
pnpm test:coverage
# 失败条件:新增代码的行覆盖率 < 项目配置的阈值
# 架构边界检查(如有自定义 scripts)
pnpm check:boundaries # 或等效命令
# 重复代码检测
pnpm dup:check
| 失败类型 | 处理方式 |
|---|---|
| 测试失败 | dispatch debug-subagent,根因分析后修复,重新运行全部测试 |
| Lint 失败 | dispatch fix-subagent,自动修复(通常可 lint:fix 解决) |
| 类型错误 | dispatch fix-subagent,修复类型问题,重新类型检查 |
| 覆盖率不足 | dispatch test-subagent,补充测试用例,重跑 |
| 构建失败 | 分析错误,dispatch fix-subagent,重新构建 |
# 推送分支
git push -u origin feat/<feature-name>
# 创建 PR
gh pr create \
--title "<conventional commit 风格标题,<70字符>" \
--body "$(cat <<'EOF'
## 变更摘要
<3-5 bullet points>
## 实现细节
<关键设计决策>
## 测试
- [ ] 单元测试通过
- [ ] 集成测试通过(如有)
- [ ] 覆盖率满足阈值(如有)
## 验证步骤
<人工验证的步骤(如有)>
🤖 Generated with [Claude Code](https://claude.ai/code)
EOF
)"
等待 CI 结果:
收到 PR review 反馈后:
对每个 reviewer comment,评估严重程度:
对需要修复的 comment,dispatch fix-subagent:
等待 reviewer approve,merge PR。
| 角色 | 推荐模型 | 原因 |
|---|---|---|
| design-subagent | 最强(opus) | 需要架构判断力 |
| planning-subagent | 标准(sonnet) | 结构化分解任务 |
| implementation-subagent(简单 task,1-2 文件) | 快速(haiku) | 机械实现 |
| implementation-subagent(复杂 task,多文件协调) | 标准(sonnet) | 集成判断 |
| spec/quality reviewer | 标准(sonnet) | 需要理解上下文 |
| debug-subagent | 最强(opus) | 根因分析 |
| 时机 | 原因 | 如何处理 |
|---|---|---|
| Phase 1 完成后(设计确认) | 确保方向正确,避免后续全部返工 | 展示设计摘要,等待 confirm |
| subagent 状态为 BLOCKED | 超出 subagent 能力范围 | 分析 blocker,决策后继续 |
| 质量关卡 3 次修复后仍失败 | 可能是根本性问题 | 上报,暂停,等待用户决策 |
| CI 持续失败(3 次) | 可能是环境/基础设施问题 | 上报 CI 失败详情,等待 |
永远不要:
注意:
如果项目已安装 superpowers:
superpowers:brainstorming → 替代 Phase 1 的 design-subagentsuperpowers:writing-plans → 替代 Phase 2 的 planning-subagentsuperpowers:using-git-worktrees → Phase 3 的 worktree 创建superpowers:test-driven-development → implementation-subagent 内部遵循superpowers:finishing-a-development-branch → Phase 6 的 PR 创建