sdd-riper 概览

1752 字
9 分钟
sdd-riper 概览
  1. 1SDD 初探
  2. 2sdd-riper 概览本文
  3. 3SDD 工作流

1. 项目概览#

sdd-riper 是一套给 AI coding agent 使用的 Harness / 工作流技能包。它的核心目标是:让模型负责探索、实现和推进任务,让人类控制目标、边界、权限、checkpoint、验证证据和最终验收。

该项目主要包含 4 个 skills:

  • sdd-riper-one-light
    日常默认入口。适合普通 coding、文档、bugfix、轻量重构。它强调低打扰控盘:先复述目标、形成 micro-spec、checkpoint、获批后执行、验证后 reverse sync。

  • sdd-riper-one
    重型版本。适合高风险、多文件、跨模块、审计、训练、交接密集任务。它会更严格地走 Research -> Plan -> Execute -> Review,并要求更完整的 spec、checkpoint、验证和留痕。

  • codemap
    代码地形索引 skill。用于陌生代码库、大模块、遗留系统或跨仓任务。它不负责直接实现功能,而是帮 agent 找到入口、调用链、风险点、验证入口,让后续任务不用把整个代码库塞进上下文。

  • new-chat-ready
    交接与恢复 skill。用于新对话、上下文压缩、handoff、长任务暂停、恢复旧会话,以及把可复用知识同步到项目文档候选中。

工作流概览:

日常任务
-> sdd-riper-one-light
-> 必要时引用 new-chat-ready 做 handoff / resume
-> 陌生代码时可先让用户或 agent 切到 codemap
复杂/高风险任务
-> sdd-riper-one
-> Pre-Research 阶段可调用/采用 codemap 建代码地图
-> 执行闭环后可调用 new-chat-ready 做交接或恢复包
-> 任务清晰后,风格上可降噪接近 light,但门禁仍更严格
陌生代码任务
-> codemap
-> 产出代码地形索引
-> 供 sdd-riper-one-light 或 sdd-riper-one 后续读取
长对话/换会话/暂停
-> new-chat-ready
-> 读取当前 spec、codemap、验证结果、git 状态等
-> 产出 handoff 和下一轮 prompt

2. sdd-riper-one 概览#

sdd-riper-one 的完整工作流分为两个阶段:

1. Pre-research:进入正式开发前的上下文准备

这一阶段主要是降低混沌,不着急改代码。主要环节包括:

  • create_codemap:
    • 建立代码地形图,搞清楚入口、模块边界、调用链、风险点、验证入口。
  • build_context_bundle:
    • 整理需求文档、聊天记录、日志、截图等输入,压缩成可研究上下文。
  • sdd_bootstrap:
    • 启动 SDD/RIPER 流程,形成第一版 spec,明确目标、边界、当前任务单元和验证方式。

2. RIPER:正式执行闭环

核心阶段为:

Research -> Innovate (可选) -> Plan -> Execute -> Review
  • Research:
    • 研究需求、代码、约束和风险,补齐事实,不急着定方案。
  • Innovate:
    • 当方案不唯一或风险较高时,提出 2-3 个可选方案并比较取舍。
  • Plan:
    • 生成可执行计划,通常要写清文件路径、改动点、检查清单、验证方式。
  • Execute:
    • 只有用户明确批准后才进入执行。项目里强调精确门禁:没有 Plan Approved,不进入实现。
  • Review:
    • 执行后对照 spec、plan、实际改动和验证结果做复核;如果不通过,要回到 Research 或 Plan 修正。

整体的流程就是:

澄清最终目标
-> 判断当前任务是否是最小可执行单元
-> 建 codemap / context bundle(按需)
-> 生成或更新 spec
-> Research 补事实
-> 可选 Innovate 比方案
-> Plan 写执行清单
-> 等用户 Plan Approved
-> Execute 修改
-> Validation 验证
-> Review 复核
-> Reverse Sync 回写 spec
-> 必要时 handoff / archive / new-chat-ready

2.1 spec 和 plan 的区别#

两者的区别可以简单理解为:

spec = 任务真相源
plan = 本轮执行清单

spec 回答的是:我们到底要做什么,为什么做,边界在哪里,什么算完成。

也就是说,spec 是一个偏“持续状态”的文档,它会随着任务推进不断更新,是长对话、换人、换 chat、复盘时的真相源。


而 plan 回答的是:接下来这一轮具体怎么改。

所以,plan 是偏“执行动作”的清单,它服务于即将发生的这一次实现。

下面是一个简单的示例,展示二者面对同一任务时记录内容的区别:

Spec:
用户登录失败时,需要区分密码错误、账号冻结、验证码过期。
不能改变现有成功登录流程。
完成证据是相关单测通过,并手测三种失败场景。
Plan:
1. 修改 auth/error.ts,新增错误码映射。
2. 修改 login/service.ts,让冻结账号分支返回 ACCOUNT_FROZEN。
3. 修改 login/ui.tsx,按错误码展示提示文案。
4. 补 login.service.test.ts 三个失败场景。
5. 运行 auth/login 相关测试。

3. sdd-riper-one-light 概览#

作为 sdd-riper-one 的轻量实现,它不强调完整的 Research -> Plan -> Execute -> Review 阶段展开,而是强调 checkpoint-driven:用少量关键校准点保证 Agent 不跑偏。

下面是 sdd-riper-one-light 大致的完整工作流:

理解任务
-> 轻量风险判断
-> 建立 micro-spec / 最小 spec
-> 写清 Done Contract
-> 输出 checkpoint
-> 等待批准
-> 执行
-> 验证
-> Reverse Sync
-> 必要时留下 resume / handoff

并且内置了几个档位:

zero 纯机械小改动,可跳过正式 spec
fast 1-3 句 micro-spec
standard 默认模式,适合普通多文件任务
deep 复杂但还没重到必须用 sdd-riper-one

1. 理解任务

Agent 先用自己的话复述任务,确认目标、范围和已知约束。

官方参考 prompt:

请使用 sdd-riper-one-light 处理这个任务。
先不要直接改文件。
请先给我:
- 你对任务的理解
- 本轮核心目标
- 最小 spec / summary
- Done Contract:什么算完成,由什么证明
- 下一步动作
- 风险
- 验证方式
我批准后再执行。

遇到陌生代码时,先建 codemap:

请使用 codemap。
先创建 feature 级或 project 级代码地形索引,再进入计划。
重点关注入口、调用链、风险点、验证入口,以及下一步最小回读代码片段。

2. 轻量风险判断

判断任务是否:

  • 过大
  • 边界不清
  • 高风险

如果明显复杂,就建议升级到 deep 或切换到 sdd-riper-one.

3. 建立 mico-spec 或最小 spec

一般包含:

Goal
Context
Boundary
Validation
Risk

4. 写清 Done Contract

明确什么算完成,以及由什么证据证明完成。比如测试通过、日志符合预期、截图、人工验收等。

5. 输出 Checkpoint

当前目标是什么
已确认什么
下一步做什么
风险是什么
怎么验证

6. 等待批准

硬门禁,未获用户明确批准前,不进入实现或高影响变更。

7. 执行

获批后执行改动。light 默认相信强模型能自行拆分局部步骤,所以不会强制写很重的阶段计划。

8. 验证

跑最小有意义的验证,完成必须有证据。

9. Reverse Sync

把实际改动、偏差、验证结果、剩余风险回写到 spec / summary / handoff 中。

10. Project Sync Scan

收尾时判断有没有稳定、可复用的项目知识需要沉淀。没有就说明没有。

11. Resume Ready

如果任务长、要暂停或换对话,留下最小恢复锚点;必要时转给 new-chat-ready.

文章分享

如果这篇文章对你有帮助,欢迎分享给更多人!

sdd-riper 概览
https://github.com/huisezhiyin/sdd-riper
作者
HAC
发布于
2026-08-21
许可协议
CC BY-NC-SA 4.0

评论区

Profile Image of the Author
HAC
观之非易,行且克难
Greetings
欢迎来到我的博客!这里主要分享我的学习笔记与兴趣爱好。
音乐
封面

音乐

暂未播放

0:000:00
暂无歌词
分类
标签
站点统计
文章
46
分类
8
标签
19
总字数
116,126
运行时长
0 天
最后活动
0 天前
文章目录