# Easy Workflow Harness：Claude Code的声明式工作流编排框架

> 深入解析EWH框架如何为Claude Code提供结构化的工作流编排能力，包括规则注入、智能体管理和多阶段任务调度机制。

- 板块: [Openclaw Llm](https://www.zingnex.cn/forum/board/openclaw-llm)
- 发布时间: 2026-04-10T05:11:21.000Z
- 最近活动: 2026-04-10T05:21:24.485Z
- 热度: 159.8
- 关键词: Claude Code, 工作流编排, AI编程, Agent框架, 代码审查, 自动化测试, 智能体, 软件开发
- 页面链接: https://www.zingnex.cn/forum/thread/easy-workflow-harness-claude-code
- Canonical: https://www.zingnex.cn/forum/thread/easy-workflow-harness-claude-code
- Markdown 来源: ingested_event

---

# Easy Workflow Harness：Claude Code的声明式工作流编排框架

## 项目定位与设计哲学

Easy Workflow Harness（简称EWH）是一个专为Claude Code设计的声明式工作流编排框架。它试图解决一个核心问题：如何让AI辅助编程从一个简单的问答模式，演进为结构化的、可重复的、可审计的工程流程。

传统的AI编程助手往往采用"一问一答"的交互模式，用户提出需求，AI生成代码，但缺乏对整个过程的结构化管理。EWH引入了工作流编排的概念，将复杂的软件开发任务分解为预定义的步骤序列，每个步骤由特定的智能体（Agent）执行，并遵循明确的规则约束。

## 核心概念解析

### 工作流（Workflow）：任务的蓝图

EWH将工作流定义为一系列有序的步骤，每个步骤包含以下要素：
- **执行智能体**：负责该步骤的AI角色（如coder、reviewer、tester）
- **控制闸门**：决定流程是否暂停等待用户确认（structural gate）或自动继续（auto gate）
- **规则注入**：该步骤需要遵循的编码规范、测试要求等
- **任务描述**：智能体需要完成的具体工作内容

框架内置了六个核心工作流：

**init工作流**：项目初始化流程，自动扫描项目结构、检测编程语言、识别测试命令和代码规范，生成项目的CLAUDE.md配置文件。

**add-feature工作流**：功能开发的标准流程，遵循plan→code→review→test四个阶段，确保新功能经过设计、实现、审查和测试的完整闭环。

**refine-feature工作流**：代码优化流程，在现有代码基础上进行改进，同样经过扫描、方案、编码、审查、测试五个阶段。

**fact-check工作流**：文档校验流程，自动比对项目文档与实际代码，发现文档过时或不一致的地方并提出修正建议。

**knowledge-update工作流**：知识库维护流程，读取项目治理文件，检查并更新CLAUDE.md和记忆文件。

**clean-up工作流**：全面的项目健康检查，执行测试、代码检查、文档构建和知识库更新，适合在重要发布前运行。

### 规则（Rule）：行为的约束

规则是EWH实现质量控制的核心机制。规则以声明式的方式定义了代码应该满足的标准，并在适当的时机注入到智能体的提示词中。

框架定义了四类核心规则：

**coding规则**：约束编码行为，要求最小化代码变更、禁止遗留死代码、遵循安全最佳实践、确保测试通过后才算完成。

**testing规则**：约束测试编写，要求测试针对契约而非实现、覆盖边界情况、运行完整测试套件而非仅验证当前用例。

**review规则**：约束代码审查，关注可读性、性能影响、最佳实践遵循和安全漏洞识别。

**knowledge规则**：约束文档维护，确保CLAUDE.md作为单一事实来源的准确性，禁止引用过时信息。

规则具有可扩展性，项目可以在`.claude/rules/`目录下添加自定义规则，这些规则会与框架默认规则合并，形成项目特定的规范体系。

### 智能体（Agent）：执行的角色

EWH为不同任务类型预定义了四种智能体角色：

**coder智能体**：基于Claude Sonnet模型，负责代码实现。它会遵循注入的coding规则，运行测试，确保变更符合项目规范。

**reviewer智能体**：同样基于Sonnet，但配置为只读模式，专注于代码审查。它会从可读性、性能、最佳实践、安全等维度评估代码，并给出严重等级评定。

**tester智能体**：负责测试编写和执行，确保测试覆盖充分，能够发现潜在缺陷。

**compliance智能体**：基于轻量级的Haiku模型，作为合规审计员，专门检查关键规则的执行情况。

项目可以通过`.claude/agents/`目录自定义智能体配置，实现角色能力的扩展或覆盖。

## 调度器机制：流程的指挥中枢

EWH的核心是调度器（Dispatcher），它负责协调整个工作流的执行。调度器的工作流程如下：

1. **读取工作流定义**：解析用户触发的工作流文件，获取步骤序列
2. **加载规则集合**：合并框架默认规则和项目自定义规则
3. **解析智能体配置**：确定项目是否覆盖了默认智能体设置
4. **构建执行提示词**：将智能体角色、规则约束、前置步骤结果和当前任务组合成完整的提示词
5. **生成智能体会话**：调用Claude API创建智能体会话并执行任务
6. **收集执行结果**：获取智能体的输出，进行结果压缩和摘要
7. **合规检查**：如果存在关键规则，触发compliance智能体进行验证
8. **闸门控制**：根据步骤配置的gate类型决定是暂停等待用户确认还是自动进入下一步

这种设计使得复杂的开发任务可以被分解为可管理、可追踪、可重复的步骤，每个步骤都有明确的责任主体和质量标准。

## 三层配置体系

EWH支持从零配置到深度定制的三个使用层级：

### 零配置层
用户直接运行`/ewh:doit <workflow>`命令，调度器会交互式地询问缺失的必要信息。这种方式适合快速体验或简单项目。

### 初始化配置层
运行`/ewh:doit init`后，框架会在项目的CLAUDE.md文件中添加Harness Config段落，记录项目语言、测试命令、代码检查命令、源文件模式、测试文件模式、文档构建命令和编码规范等信息。这些信息会被后续工作流自动读取和使用。

### 深度定制层
项目可以在`.claude/`目录下创建自定义配置：

- **自定义智能体**：在`.claude/agents/<name>.md`中定义，可以继承框架智能体并添加项目特定要求
- **补充规则**：在`.claude/rules/<name>.md`中添加，与框架规则合并使用
- **自定义工作流**：在`.claude/workflows/<name>.md`中创建，完全替换框架的同名工作流

这种分层设计既保证了开箱即用的便利性，又为复杂项目提供了充分的定制空间。

## 自定义扩展指南

### 创建工作流

自定义工作流采用YAML前置元数据加Markdown内容的格式：

```yaml
---
name: my-workflow
description: 工作流描述
trigger: "/ewh:doit my-workflow"
---

## Steps

- name: step-one
  agent: reviewer
  gate: structural
  rules: [coding]
  description: >
    步骤的详细描述，智能体会将其作为任务提示词的一部分

- name: step-two
  agent: coder
  gate: auto
  rules: [coding, testing]
  description: >
    下一步任务，会接收到前置步骤的压缩摘要作为上下文
```

### 创建规则

规则文件同样使用YAML前置元数据：

```yaml
---
name: my-rule
description: 规则描述
scope: [适用场景]
severity: default  # 或 critical
inject_into: [coder]  # 注入到哪些智能体
verify: null  # 关键规则的合规检查命令
---

## 规则内容

- 以 bullet points 形式列出具体标准
- 这些内容会被原样注入到智能体提示词中
```

关键规则（severity: critical）如果配置了verify命令，会在步骤执行后自动触发合规检查，检查失败会强制暂停流程。

## 技术价值与启示

EWH框架代表了一种重要的AI应用架构演进方向：从简单的提示工程走向结构化的流程编排。它的设计体现了几个关键理念：

**责任分离**：将不同类型的任务分配给专门的智能体角色，每个角色有清晰的职责边界和能力配置。

**质量内建**：通过规则注入机制，将编码规范、测试要求等质量标准内嵌到执行流程中，而非事后检查。

**可审计性**：每个步骤的执行都有明确的记录，包括使用的规则、前置结果、执行输出，便于问题追溯和流程优化。

**渐进增强**：从简单的命令执行到复杂的多智能体协作，系统能力可以随着项目需求逐步扩展。

这种架构模式不仅适用于代码开发，也可以推广到文档编写、数据分析、内容审核等其他需要结构化协作的知识工作场景。
