可组合步骤设计Skill composable-step-design

这个技能用于设计和实现AI开发工作流中的可组合步骤,包括Plan、Build、Review、Fix四个核心步骤。它提供步骤设计模式、合约定义、隔离要求、成功标准和错误处理策略,帮助构建可重复、可测试和可组合的工作流原语。适用于AI智能体开发、自动化工作流构建和开发工具设计。关键词:可组合工作流、AI开发、步骤设计、工作流自动化、智能体SDK、Plan/Build/Review/Fix。

AI智能体 0 次安装 0 次浏览 更新于 3/11/2026

名称: 可组合步骤设计 描述: 为AI开发工作流设计计划/构建/审查/修复工作流步骤。在创建可组合工作流原语、定义步骤合约或实现步骤隔离模式时使用。 允许工具: 读取、搜索、全局

可组合步骤设计

设计四个可组合工作流步骤(计划/构建/审查/修复),构成AI开发工作流的骨干。

何时使用

  • 创建新的工作流步骤原语
  • 定义步骤输入/输出合约
  • 实现步骤隔离模式
  • 设计步骤组合策略
  • 构建AI开发工作流变体

先决条件

  • 理解@composable-steps.md内存文件
  • 熟悉@adw-framework.md模式
  • 了解确定性与非确定性执行

SDK要求

实现说明: 完整的步骤编排需要Claude Agent SDK。此技能提供步骤设计模式和合约。

四个步骤

步骤 类型 输出 特点
/计划 确定性输出 规范文件 已知路径,结构化内容
/构建 非确定性 代码变更 创造性,适应性
/审查 确定性输出 通过/失败报告 结构化,可解析
/修复 非确定性 针对性修复 聚焦,纠正性

步骤设计流程

步骤1:定义合约

每个步骤需要清晰的合约:

# 计划步骤合约
class PlanContract:
    inputs = {
        "任务描述": str,      # 要实施的内容
        "问题上下文": str | None,  # 可选上下文
        "项目路径": str           # 工作位置
    }
    outputs = {
        "规范文件路径": str,        # 生成的规范路径
        "成功": bool
    }

步骤2:确保隔离

每个步骤必须可独立运行:

隔离要求:

  1. 通过参数或文件路径接受输入(非工作流状态)
  2. 输出到已知、可预测的位置
  3. 不依赖其他步骤已运行
  4. 完全完成或干净失败(无部分状态)
  5. 可隔离测试

步骤3:定义成功标准

每个步骤需要清晰的成功指标:

计划步骤:

  • [ ] 规范文件在预期路径创建
  • [ ] 规范包括验收标准
  • [ ] 范围有限且可实现
  • [ ] 技术方法定义

构建步骤:

  • [ ] 所有规范要求处理
  • [ ] 代码编译/检查
  • [ ] 测试通过(如果存在)
  • [ ] 变更提交

审查步骤:

  • [ ] 所有代码按规范审查
  • [ ] 问题按严重性分类
  • [ ] 清晰的通过/失败决定
  • [ ] 可操作问题描述

修复步骤:

  • [ ] 所有标记问题处理
  • [ ] 无新问题引入
  • [ ] 变更提交

步骤4:设计错误处理

计划失败模式和恢复:

步骤 失败模式 恢复
计划 无法生成规范 用更多上下文重试
构建 构建错误 返回计划
审查 关键问题 进行修复
修复 无法修复 升级到人工

步骤5:定义组合规则

步骤如何链式连接:

计划_构建:
  计划 → 构建

计划_构建_审查:
  计划 → 构建 → 审查

计划_构建_审查_修复:
  计划 → 构建 → 审查 → [如果失败] → 修复 → [循环直到通过或最大次数]

步骤模板

计划步骤模板

# /计划

您是一个计划代理。创建实施规范。

## 输入

- 任务: $ARGUMENTS
- 项目: $PROJECT_PATH

## 输出

创建规范文件于: specs/{type}-{id}-{description}.md

## 规范结构

1. **摘要**: 一段概述
2. **要求**: 编号列表,列出必须完成的内容
3. **验收标准**: 如何验证完成
4. **技术方法**: 如何实施
5. **要修改的文件**: 受影响文件列表

## 成功标准

- [ ] 规范文件创建
- [ ] 所有部分完整
- [ ] 范围可实现

构建步骤模板

# /构建

您是一个实施代理。执行计划。

## 输入

- 计划: $ARGUMENTS(规范文件路径)
- 项目: $PROJECT_PATH

## 流程

1. 读取规范文件
2. 实施每个要求
3. 如果存在测试,运行测试
4. 提交变更,前缀为"构建: "

## 成功标准

- [ ] 所有要求处理
- [ ] 代码编译
- [ ] 测试通过
- [ ] 变更提交

审查步骤模板

# /审查

您是一个审查代理。验证实施。

## 输入

- 项目: $PROJECT_PATH
- 规范: $SPEC_PATH(可选)

## 输出

结构化审查报告:

状态: 通过 | 失败

问题(如果失败):
- [严重性] 描述

## 严重性级别

- 关键: 合并前必须修复
- 高: 合并前应修复
- 中: 考虑修复
- 低: 可选改进

## 成功标准

- [ ] 所有代码审查
- [ ] 问题分类
- [ ] 清晰的通过/失败状态

修复步骤模板

# /修复

您是一个修复代理。解决审查问题。

## 输入

- 问题: $ARGUMENTS(来自审查输出)
- 项目: $PROJECT_PATH

## 流程

1. 解析问题列表
2. 按优先级顺序修复每个问题
3. 验证修复不引入新问题
4. 提交,前缀为"修复: "

## 成功标准

- [ ] 所有问题处理
- [ ] 无新问题引入
- [ ] 变更提交

循环限制模式

防止无限修复循环:

最大修复尝试次数 = 3

for 尝试 in range(最大修复尝试次数):
    审查 = await 运行_审查()
    if 审查.状态 == "通过":
        break
    await 运行_修复(审查.问题)
else:
    # 达到最大尝试次数
    升级到人工("达到最大修复尝试次数")

输出格式

## 步骤设计规范

### 步骤: [名称]

**类型:** 确定性输出 | 非确定性

**目的:** [此步骤完成什么]

### 合约

**输入:**
| 名称 | 类型 | 必填 | 描述 |
| --- | --- | --- | --- |
| [输入] | [类型] | [是/否] | [描述] |

**输出:**
| 名称 | 类型 | 描述 |
| --- | --- | --- |
| [输出] | [类型] | [描述] |

### 成功标准

- [ ] [标准1]
- [ ] [标准2]
...

### 错误处理

| 失败模式 | 恢复操作 |
| --- | --- |
| [模式] | [操作] |

### 模板

```markdown
[斜杠命令模板]

组合规则

[此步骤如何与其他步骤链式连接]


## 设计检查清单

- [ ] 合约输入定义
- [ ] 合约输出定义
- [ ] 隔离验证(可独立运行)
- [ ] 成功标准指定
- [ ] 错误处理计划
- [ ] 组合规则记录
- [ ] 模板创建
- [ ] 测试设计

## 反模式

| 反模式 | 问题 | 解决方案 |
| --- | --- | --- |
| 耦合步骤 | 无法独立运行 | 通过文件传递数据 |
| 无界循环 | 无限修复尝试 | 最大修复尝试次数 |
| 未定义合约 | 不可预测输入/输出 | 显式合约 |
| 缺失成功标准 | 无法验证完成 | 定义标准 |
| 无错误处理 | 静默失败 | 计划恢复操作 |

## 交叉引用

- @composable-steps.md - 步骤内存文件
- @composable-primitives.md - 通用原语
- @adw-framework.md - AI开发工作流概述
- @template-engineering.md - 模板模式

## 版本历史

- **v1.0.0** (2026-01-01): 初始发布(第14课)

---

## 最后更新

**日期:** 2026-01-01
**模型:** claude-opus-4-5-20251101