sdd-dev-workflow

规范驱动开发工作流(SDD + Speckit + Claude Code)。用于复杂软件开发项目。⚠️ 必需环境变量: ZHIPU_API_KEY。可选: GITHUB_TOKEN, ANTHROPIC_API_KEY。当用户需要开发复杂应用、进行多迭代开发项目、使用 sessions_spawn 自动化开发时使用此 skill。

Safety Notice

This listing is from the official public ClawHub registry. Review SKILL.md and referenced scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "sdd-dev-workflow" with this command: npx skills add mydearzsy/sdd-dev-workflow

SDD 开发工作流 Skill

快速开始:见下方 | 安装指南references/installation.md | 问题排查references/troubleshooting.md

🎯 核心理念

用规范驱动开发(SDD)把需求变成结构化的"规范文档",让 LLM 在准确上下文中输出更符合预期的代码。

三大原则:规范优先 → 规范锚定 → 规范作为源


⚡ 快速开始

# 环境检查
~/.openclaw/skills/sdd-dev-workflow/scripts/check-environment.sh

# 创建项目
~/.openclaw/skills/sdd-dev-workflow/scripts/init-project.sh my-project
cd ~/openclaw/workspace/projects/my-project

# 启动开发
claude --permission-mode acceptEdits

Speckit 工作流

/speckit.constitution 阅读并使用 ~/.openclaw/skills/sdd-dev-workflow/templates/constitution-enterprise.md
/speckit.specify [功能描述]
/speckit.clarify    # ⚠️ 强制执行至少1次
/speckit.plan [技术栈]
/speckit.tasks
/speckit.analyze    # ⚠️ 强制执行至少1次
/speckit.implement 严格遵循宪法 @.specify/memory/constitution.md

🔄 迭代开发流程

新项目 vs 迭代:流程相同,区别仅在于初始化

流程对比

项目类型GitHub 初始化Specify特性分支验收后
新项目✅ 需要✅ 初始化自动创建推送 + PR
迭代❌ 跳过✅ 新迭代自动创建推送 + PR

项目初始化(仅新项目)

⚠️ 询问用户:GitHub 仓库如何处理?

选项 1:新建仓库

gh repo create my-project --private --clone
cd my-project

选项 2:关联现有仓库

git init
git remote add origin https://github.com/user/existing-repo.git

然后执行 Specify init(仅一次)

specify init . --here --ai claude --force --no-git

迭代开发(跳过项目初始化)

已初始化项目,直接创建新迭代

  • 跳过 GitHub 初始化
  • 跳过 specify init
  • 直接在 Claude Code 执行:/speckit.specify <功能描述>

Specify 序号自动递增

# 检测下一个序号
next_num=$(~/.openclaw/skills/sdd-dev-workflow/scripts/get-next-iteration.sh)
iteration_name="${next_num}-new-feature"

问题修复:Specify CLI 创建迭代时序号可能重复(001-xxx, 001-yyy),使用 get-next-iteration.sh 自动检测最大序号 + 1。


🔒 Git 版本控制(强制)

AI 开发不确定性高 → Git 是安全网

初始化检查

触发条件:项目目录不存在 .git 文件夹

# 检查并初始化
if [ ! -d ".git" ]; then
  # 询问 Git 仓库地址或使用默认
  git init
  git add .
  git commit -m "chore: 初始化项目结构"
fi

提交规范

每个阶段完成后必须提交

阶段提交信息
constitutiondocs: 添加项目宪法
specifydocs: 完成规范定义
clarifydocs: 完成需求澄清
implementfeat: 实现核心功能
acceptancetest: 通过验收测试
# 每个阶段完成后执行
git add . && git commit -m "<commit-message>"

验收后自动 PR

触发条件:验收通过 + 特性分支(非 main)

# 检查验收结果
if [ "$ACCEPTANCE_RESULT" = "PASS" ]; then
  # 提交最终变更
  git add . && git commit -m "chore: 工作流完成"

  # 检查是否在特性分支
  current_branch=$(git branch --show-current)
  if [ "$current_branch" != "main" ]; then
    # 推送特性分支
    git push -u origin "$current_branch"

    # 创建 PR
    gh pr create \
      --title "feat: $current_branch" \
      --body "## 变更说明

- 迭代序号:$current_branch
- 验收状态:✅ PASS

## 测试结果

- 语法检查:通过
- 单元测试:通过
- 服务启动:验证成功" \
      --base main
  else
    # main 分支直接推送
    [ -n "$(git remote -v)" ] && git push origin main
  fi
fi

详见:references/git-version-control.md


📦 依赖自动安装(零注意力)

完成开发,不为工具停顿

两层依赖策略

Layer类型处理方式
Layer 1预装依赖环境检查脚本验证
Layer 2项目依赖遇到时自动安装

自动安装逻辑

# 检测到 ModuleNotFoundError 时自动执行
if error contains "ModuleNotFoundError: No module named 'fastapi'"; then
  pip install fastapi
fi

不询问,直接安装

预装依赖检查

~/.openclaw/skills/sdd-dev-workflow/scripts/check-environment.sh

详见:references/dependency-installation.md


⚠️ 工具链协作方式(必读)

Specify CLI 的角色

Specify CLI         →       Claude Code          →      完成开发
(仅用于初始化)           (执行 /speckit 命令)        (代码实现)

Specify CLI 仅用于初始化

  • specify init 初始化项目结构(每个项目执行一次)
  • 不支持 clarify/plan/tasks/analyze/implement

非交互模式

specify init . --here --ai claude --force --no-git

后续所有 /speckit 命令都在 Claude Code 内执行

权限模式选择

模式用途行为安全等级
acceptEdits人工监督开发文件编辑自动批准,bash脚本需确认✅ 推荐
bypassPermissions自动化 agent所有操作自动批准⚠️ 仅限隔离环境

安全建议

  • 生产环境acceptEdits + 人工审核
  • 隔离测试环境bypassPermissions(VM/容器)
  • 禁止:在生产服务器使用 bypassPermissions

最终目标

❌ 错误理解✅ 正确理解
生成 spec.md完成代码实现
生成 plan.md通过测试验证
生成 tasks.md功能可以运行

完成标准

  • ✅ 代码已实现(不是文档)
  • ✅ 测试已通过
  • ✅ 功能可运行

🚨 子 Agent 强制规则(CRITICAL)

核心原则:子 agent = 流程驱动器(driver),不是代码实现者(implementer)

绝对禁止

  • 禁止使用 write 工具写代码文件src/**/*.py, tests/**/*.py
  • 禁止跳过 /speckit. 命令*

必须执行

  • 必须通过 sdd-driver.sh 脚本操作
  • 必须通过 tmux 驱动 Claude Code

意外处理

情况可恢复行动
429 rate limit等待 5 分钟后重试
timeout重启会话或增加超时
stuck重启会话
execution_error让 Claude Code 修复
template_missing通知人工
需要补充上下文通知人工

详见:references/autonomous-agent.md


📋 Speckit 工作流

init → constitution → specify → clarify → plan → tasks → analyze → implement

⚠️ 强制阶段:clarify ≥1 次,analyze ≥1 次

人类介入点

阶段介入原因介入方式
clarify需求歧义发送问题 → 等待回复
analyze一致性问题发送报告 → 等待确认

介入判断:信息不完整/疑义 → 转发用户;信息完整 → 自己决策 补充规范 等待回复 继续执行 收到后继续


#### 自动决策条件(无需介入)

- 信息完整,只是细节缺失
- 常规技术选择(如用 requests 还是 httpx)
- 宪法已有明确规定
- clarify 连续 2 次无问题
- 简单项目,需求明确

#### 需要介入的条件

- 多个方案各有优劣,需要业务决策
- 需求有明显矛盾或冲突
- 涉及外部依赖或资源
- 超出宪法规定的边界
- analyze 发现严重一致性问题

---

## 🏛️ 公共宪法模板

### 使用方式

```bash
# 在 Claude Code 中引用公共宪法
/speckit.constitution 阅读并使用公共宪法模板 ~/.openclaw/skills/sdd-dev-workflow/templates/constitution-enterprise.md

模板位置

  • templates/constitution-enterprise.md(推荐)
  • templates/constitution-lite.md(精简)

详见:references/constitution-guide.md


📁 项目路径规范

标准目录结构

~/openclaw/workspace/
├── projects/                    # 正式开发项目(长期维护)
├── tmp/                         # 临时项目(验证、测试,可随时清理)
├── docs/                        # 文档(可选,按需创建)
├── research/                    # 深度研究报告
└── memory/                      # 日期日记

路径规则

类型路径示例
正式项目projects/<name>/projects/my-app/
临时项目tmp/<name>/tmp/test-workflow/
研究报告research/<topic>/research/ai-sovereignty/

新项目创建规范

# ✅ 正式项目
~/.openclaw/skills/sdd-dev-workflow/scripts/init-project.sh my-project

# ✅ 临时项目
~/.openclaw/skills/sdd-dev-workflow/scripts/init-project.sh test-xyz --tmp

# ❌ 错误:在 workspace 根目录创建
cd ~/openclaw/workspace && specify init my-project  # 错误!

🚀 使用子 Agent(推荐)

标准流程

  1. 启动 Claude Code(bypassPermissions 模式)
  2. 逐阶段执行 SDD 流程(constitution → specify → clarify → plan → tasks → analyze → implement)
  3. 验收测试(py_compile + pytest + uvicorn)
  4. 输出结果(ACCEPTANCE_RESULT: PASS | FAIL)

关键等待规则

  • ⏱️ 高峰期(12:00-18:00 GMT+8)GLM-5 响应可能需要 1-5 分钟
  • ⏱️ 使用 process 工具时,设置 timeoutMs: 300000(5分钟)
  • ⏱️ 不要在 30 秒内判定为超时

完成标准

  • ✅ 代码已实现(不是文档)
  • ✅ 测试已通过(至少 1 个核心测试)
  • ✅ 功能可运行(服务能启动)

详细代码模板:见 references/autonomous-agent.md


🔄 长时间运行 Agent

挑战:上下文丢失、进度中断、状态不可知

解决方案:断点续传机制

.task-context/
├── progress.json     # 进度跟踪
├── checkpoint.md     # 检查点快照
└── session-log.md    # 会话日志

恢复中断任务

sessions_spawn({
  task: "继续开发 [项目],读取 .task-context/checkpoint.md 恢复上下文"
})

详见:references/long-running-agent.md


📐 开发最佳实践

详见:references/best-practices.md


⚠️ 常见问题

  • Specify CLI 卡住 → 已跳过,使用离线模式
  • 429 限流 → 等待 5 分钟后重试
  • ModuleNotFoundError → 直接 pip install <module>
  • 详细排查:references/troubleshooting.md

📚 参考文档

文档用途
installation.md安装与初始化
autonomous-agent.md子 agent 模式
constitution-guide.md宪法模板指南
acceptance-protocol.md验收协议规范
git-version-control.mdGit 版本控制
dependency-installation.md依赖自动安装
troubleshooting.md问题排查

⚠️ 安全警告

风险评估

操作类型风险等级说明
环境变量需要 ZHIPU_API_KEY(必需)、GITHUB_TOKEN(可选)
自动安装脚本会自动执行 npm install、pip install、apt install
Git 操作自动初始化仓库、提交、推送、创建 PR
文件读写操作 ~/.openclaw/ 和 ~/openclaw/workspace/ 目录
权限模式推荐使用 acceptEdits,bypassPermissions 仅限隔离环境

使用建议

✅ 推荐做法

  • 在 VM/容器中运行
  • 使用测试令牌,避免生产凭据
  • 使用 acceptEdits 模式,人工审核 bash 脚本
  • 定期备份 ~/openclaw/workspace/ 目录

❌ 避免操作

  • 在生产服务器使用 bypassPermissions
  • 使用高权限 GitHub 令牌
  • 直接运行未经审查的网络脚本

监控工具:见 references/monitoring.md

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

Coding

Agent Dev Workflow

Orchestrate coding agents (Claude Code, Codex, etc.) to implement coding tasks through a structured workflow. Use when the user gives a coding requirement, f...

Registry SourceRecently Updated
Coding

Cortex Engine

Persistent cognitive memory for AI agents — query, record, review, and consolidate knowledge across sessions with spreading activation, FSRS scheduling, and...

Registry SourceRecently Updated
Coding

Skill Blocker - 安全守卫

Blocks execution of dangerous commands and risky operations like destructive deletions, credential theft, code injection, and unauthorized system changes to...

Registry SourceRecently Updated
014
Profile unavailable