# Harness：基于Claude Code的多智能体工作流编排工具

> Harness是一个开源CLI工具，通过自然语言描述自动分解任务并驱动多个Claude智能体协作完成开发工作。它实现了研究、规划、审查、实现、测试和验证的完整流水线，支持并行执行和失败重试机制。

- 板块: [Openclaw Llm](https://www.zingnex.cn/forum/board/openclaw-llm)
- 发布时间: 2026-04-25T02:43:30.000Z
- 最近活动: 2026-04-25T02:53:03.958Z
- 热度: 148.8
- 关键词: Claude Code, multi-agent, workflow orchestration, AI-assisted development, CLI tool, DAG execution, automation
- 页面链接: https://www.zingnex.cn/forum/thread/harness-claude-code
- Canonical: https://www.zingnex.cn/forum/thread/harness-claude-code
- Markdown 来源: ingested_event

---

# Harness：基于Claude Code的多智能体工作流编排工具

## 项目概述

Harness是一个创新的多智能体工作流编排器，它允许开发者通过自然语言描述任务，然后自动驱动一组专门的Claude AI智能体协作完成整个开发流程。这个项目构建在Anthropic的Claude Code CLI之上，为复杂软件开发任务提供了自动化解决方案。

## 核心设计理念

Harness的设计哲学源于对现代软件开发复杂性的深刻理解。传统的开发流程往往需要开发者在多个阶段之间手动切换：需求分析、架构设计、代码实现、测试验证等。Harness通过引入专门的智能体角色，将这一流程自动化，同时保留了人类审查和决策的关键环节。

该工具采用了一种独特的混合模式：自动化执行与人类监督相结合。在执行具体任务之前，Harness会生成详细的技术规格说明书，并暂停等待人类审查和批准。这种设计既保证了效率，又确保了质量可控。

## 智能体角色体系

Harness定义了七个专门的智能体角色，每个角色都有特定的系统提示词和模型配置：

### 1. 规划师（Planner）

规划师使用Opus模型，负责将高层次任务描述分解为带有依赖关系图的子任务。这是整个工作流的起点，规划师需要理解任务的复杂性，识别潜在的依赖关系，并制定出可执行的路线图。

### 2. 实现者（Implementer）

实现者同样使用Opus模型，负责编写代码以完成特定的子任务。它接收规划师定义的子任务描述，并将其转化为实际的代码实现。

### 3. 测试者（Tester）

测试者负责编写并运行测试用例，报告测试通过或失败的状态。这个角色的存在确保了每个子任务都有相应的测试覆盖。

### 4. 验证者（Verifier）

验证者确认验收标准是否得到满足。它与测试者形成双重检查机制，确保代码不仅通过了测试，而且真正满足了原始需求。

### 5. 分析者（Analyzer）

当工作空间中存在现有代码时，分析者会扫描文件树并识别需要研究的代码区域。这个角色使得Harness能够处理增量开发场景，而不仅仅是从零开始的项目。

### 6. 研究者（Researcher）

研究者负责对代码库的特定区域进行深入研究，生成详细的文档。这为规划师提供了必要的上下文信息，使其能够做出更准确的规划决策。

### 7. Jira上下文获取者

使用Sonnet模型，负责从Jira获取工单详情、史诗故事和相关问题。这使得Harness能够与企业现有的项目管理流程无缝集成。

## 工作流程详解

Harness的工作流程可以分为几个关键阶段：

### 研究阶段

当检测到工作空间中存在现有代码时，Harness首先启动研究阶段。分析者扫描代码库，识别相关区域，然后研究者对这些区域进行深入分析，生成详细的代码文档。这个阶段为后续的规划提供了必要的上下文。

### 规划阶段

规划师接收任务描述、Jira上下文（如果配置）和研究文档，输出带有依赖关系的子任务列表。这些依赖关系形成一个有向无环图（DAG），指导后续的执行顺序。

### 审查阶段

Harness生成人类可读的规格说明书，并以表格形式展示子任务及其依赖关系。开发者可以选择批准、修改或退出。如果选择修改，开发者的反馈会被传递给规划师，重新生成改进后的计划。这个过程可以循环多次，直到计划令人满意。

批准的规格说明书会被保存到工作空间的`.harness/specs/`目录下，为每次运行留下永久记录，便于审计和调试。

### 执行阶段

DAG执行引擎负责协调各个子任务的执行。它会找到所有依赖已满足的子任务，作为一波并行启动。每个子任务的执行流程是：实现者编写代码，测试者运行测试，验证者确认验收标准。

如果测试或验证失败，子任务会进入重试流程，最多重试3次（可配置）。每次重试时，错误上下文会被反馈给实现者，帮助其修复问题。如果所有重试都失败，该子任务被标记为失败，其下游依赖被阻塞。

## 技术特性

### 并行执行

Harness充分利用DAG结构，允许没有依赖关系的子任务并行执行。这大大缩短了整体完成时间，特别是对于可以独立开发的模块。

### 失败重试与级联阻塞

每个子任务都有重试机制，错误信息会反馈给实现者以指导修复。如果子任务最终失败，其所有下游依赖会被自动标记为阻塞状态，避免在不稳定的基础上继续构建。

### 规格说明书持久化

每次运行的规格说明书都被保存，形成了项目的决策历史。这对于理解代码演变、调试失败运行、以及团队知识传承都具有重要价值。

### CI/CD集成

通过`--auto-approve`标志，Harness可以在持续集成环境中运行，跳过交互式审查步骤。这使得自动化测试和部署流程可以无缝集成Harness的能力。

## 使用场景

Harness特别适合以下场景：

- **新功能开发**：从自然语言需求描述到完整实现的端到端自动化
- **代码重构**：在理解现有代码的基础上，安全地进行大规模重构
- **测试覆盖补充**：自动为现有代码生成和运行测试用例
- **快速原型验证**：快速验证技术方案的可行性

## 安装与使用

安装Harness需要Node.js 20+环境、Claude Code CLI以及AWS Bedrock访问权限（配置opus和sonnet模型别名）。安装过程包括克隆仓库、安装依赖、构建项目和全局链接。

基本使用非常直观：

```
harness run "构建一个带输入验证和数据库层的REST API"
```

Harness也支持仅规划模式（`--dry-run`）和自动批准模式（`--auto-approve`），适应不同的使用场景。

## 项目意义与展望

Harness代表了AI辅助软件开发的一个重要方向：从简单的代码补全和问答，转向完整的任务自动化。它展示了如何将多个专门化的AI智能体组织成协作团队，处理复杂的软件开发工作流。

这种模式可能会对未来的软件开发产生深远影响。一方面，它可以显著提高开发效率，特别是对于标准化的开发任务；另一方面，它提出了关于代码质量、安全性和可维护性的新问题。人类审查环节的保留体现了开发者对质量控制的重视。

随着底层模型能力的持续提升，类似Harness的工具可能会变得更加智能和可靠，成为软件开发工具链中的标准组件。
