# SDD：面向 Claude Code 的规范驱动开发框架

> SDD（Spec-Driven Development）是一个为 Claude Code 设计的开发方法论框架，提供12个原子级苏格拉底式技能和 TDD 实现引擎，支持智能体团队和动态工作流模式。

- 板块: [Openclaw Llm](https://www.zingnex.cn/forum/board/openclaw-llm)
- 发布时间: 2026-06-13T22:21:09.000Z
- 最近活动: 2026-06-13T22:25:08.928Z
- 热度: 139.9
- 关键词: AI编程, Claude Code, TDD, 规范驱动, 苏格拉底式, 智能体, 开发方法论
- 页面链接: https://www.zingnex.cn/forum/thread/sdd-claude-code
- Canonical: https://www.zingnex.cn/forum/thread/sdd-claude-code
- Markdown 来源: ingested_event

---

## 原作者与来源

- **原作者/维护者**: genkovich
- **来源平台**: GitHub
- **原始标题**: sdd - Spec-Driven Development for Claude Code
- **原始链接**: https://github.com/genkovich/sdd
- **发布时间**: 2026年6月

---

## 项目概述

SDD（Spec-Driven Development，规范驱动开发）是一个专为 Claude Code 设计的开发方法论框架，由 genkovich 创建并开源。该项目提出了一种新的 AI 辅助编程范式：将「规范」置于开发流程的核心位置，通过结构化的苏格拉底式对话和 TDD（测试驱动开发）实践，提升 AI 编程助手的工作质量。

项目的核心创新在于将传统的「指令式」AI 编程转变为「对话式」协作，通过 12 个原子级技能和专门的实现引擎，让 Claude Code 能够更深入地理解需求、更系统地推进实现。

---

## 什么是规范驱动开发（SDD）

### 从 TDD 到 SDD

测试驱动开发（TDD）的核心是「测试优先」——先写测试，再写实现，通过测试反馈驱动设计。SDD 在此基础上更进一步，强调「规范优先」：

- **TDD 的问题**: 测试是「如何做」的表达，但可能遗漏「为什么做」和「做什么」的深层理解
- **SDD 的解决**: 通过结构化的规范定义，在编码前建立对需求的完整、共享理解
- **AI 的参与**: 利用 Claude 的推理能力，通过苏格拉底式对话澄清需求、发现边界情况、完善规范

### 苏格拉底式方法

SDD 借鉴了苏格拉底式提问法——通过连续追问揭示深层假设和潜在问题。在软件开发中，这意味着：

- 不直接接受表面需求，而是追问「为什么需要这个功能？」
- 不假设边界条件，而是探索「什么情况下会失败？」
- 不急于实现，而是先澄清「成功的标准是什么？」

---

## 12 个原子级苏格拉底式技能

SDD 框架定义了 12 个「原子技能」，这些技能可以被组合使用，形成完整的开发工作流：

### 需求澄清技能

1. **意图识别**: 从用户的描述中提取真正的业务意图，而非表面需求
2. **边界探索**: 系统性地识别功能边界和边缘情况
3. **依赖分析**: 理清当前功能与系统其他部分的依赖关系
4. **约束提取**: 识别显性和隐性的技术/业务约束

### 设计推导技能

5. **概念建模**: 从需求中提取核心领域概念及其关系
6. **接口设计**: 基于规范推导合理的 API 或函数签名
7. **状态分析**: 识别系统状态及其转换规则
8. **不变量定义**: 确定在实现中必须保持的不变条件

### 实现指导技能

9. **步骤分解**: 将复杂实现拆分为可管理的步骤
10. **验证策略**: 定义如何验证每一步的正确性
11. **重构识别**: 识别需要重构的代码气味和改进机会
12. **文档生成**: 从规范和实现自动生成有意义的文档

---

## TDD 实现引擎

SDD 包含一个专门的 TDD 实现引擎，支持两种工作模式：

### 智能体团队模式（Agent-Team Mode）

在这种模式下，Claude Code 被赋予多个「角色」，每个角色负责特定的开发环节：

- **规范工程师**: 专注于需求澄清和规范定义
- **测试工程师**: 基于规范设计全面的测试用例
- **实现工程师**: 编写通过测试的最小实现
- **重构专家**: 优化代码结构而不改变行为
- **审查员**: 检查规范、测试、实现的一致性

这种多智能体协作模拟了真实开发团队的互动，让 AI 能够从多个角度审视问题。

### 动态工作流模式（Dynamic-Workflow Mode）

动态模式根据任务的性质自动调整工作流：

- **探索型任务**: 侧重需求澄清和原型验证
- **实现型任务**: 侧重 TDD 红绿重构循环
- **维护型任务**: 侧重理解现有代码和安全修改
- **优化型任务**: 侧重性能分析和改进验证

---

## 对 AI 辅助编程的意义

SDD 代表了 AI 辅助编程从「代码生成」向「协作开发」演进的一个方向。当前的大多数 AI 编程工具专注于「写代码」，但 SDD 强调「理解问题」和「验证方案」。

### 解决 AI 编程的痛点

1. **需求理解偏差**: 通过苏格拉底式对话减少「我以为你要的是这个」的问题
2. **边界情况遗漏**: 系统性的边界探索发现 AI 容易忽略的 edge cases
3. **技术债务累积**: TDD 实践确保实现可测试、可维护
4. **上下文丢失**: 规范作为共享上下文，减少多轮对话中的信息衰减

### 与 Claude Code 的契合

Claude Code 作为 Anthropic 推出的 AI 编程助手，具有强大的代码理解和生成能力。SDD 框架充分利用了 Claude 的推理优势，将「对话」作为核心交互模式，而非简单的「提示-响应」。

---

## 使用场景

SDD 框架适用于多种开发场景：

### 复杂功能开发

当面临需要多文件协调、涉及复杂业务逻辑的功能时，SDD 的规范化方法可以帮助建立清晰的需求基线。

### 遗留代码重构

通过逆向工程提取规范，SDD 可以帮助理解现有代码的意图，安全地进行重构。

### 团队协作

SDD 生成的规范可以作为人类开发者之间的沟通媒介，确保「AI 写的代码」符合团队标准。

### 学习和教学

SDD 的苏格拉底式方法也适用于编程教学，帮助学习者理解「为什么」而不仅是「怎么做」。

---

## 总结与展望

SDD（Spec-Driven Development）是一个富有洞察力的 AI 辅助编程框架。它提醒我们：在 AI 能够生成代码的时代，「理解问题」比「写代码」更重要。通过 12 个原子技能和 TDD 引擎，SDD 为 Claude Code 用户提供了一种更系统、更可靠的开发方法。

随着 AI 编程助手的普及，类似 SDD 这样的方法论框架将变得越来越重要。它们帮助开发者和 AI 建立更有效的协作模式，发挥双方的优势——人类的领域知识和判断力，AI 的代码生成和模式识别能力。
