Archon:把 AI 编码从"灵感艺术家"变成"可重复的工程流水线"

TL;DR:Archon 是首个开源的 AI 编码工作流编排引擎,通过 YAML 定义开发流程,让 AI 编码变得确定、可重复、可审计。像 Dockerfile 标准化了基础设施、GitHub Actions 标准化了 CI/CD 一样,Archon 正在标准化 AI 编码。


📌 一、为什么我们需要 Archon?

❌ AI 编码的"概率性困境"

当你让 Claude Code 或 Cursor"修复这个 bug"时,会发生什么?

问题 表现 后果
行为不可预测 有时先规划,有时直接写代码 输出质量波动大
流程不一致 可能跳过测试、忘记写文档 代码质量参差不齐
缺乏可审计性 无法追溯决策过程 团队协作困难
难以规模化 每个开发者用不同方式调用 AI 团队标准无法统一

“Every run is different. Archon fixes this.” — Archon 官方 [[1]]

✅ Archon 的解决方案

Archon 的核心思想很简单:把开发流程编码成工作流,让 AI 在确定的框架内发挥智能

Agent = Model + Harness

你无法控制模型本身,但你可以控制模型运行的环境、约束和流程——这就是"工程化"的本质。


🧩 二、Archon 的核心架构

1. 工作流引擎:用 YAML 定义开发流程

Archon 的工作流是一个有向无环图(DAG),由四种节点类型组成:

# .archon/workflows/build-feature.yaml
nodes:
  # 🤖 AI 节点:让模型做推理
  - id: plan
    prompt: "Explore the codebase and create an implementation plan"
    
  # 🔁 循环节点:迭代直到条件满足
  - id: implement
    depends_on: [plan]
    loop:
      prompt: "Read the plan. Implement the next task. Run validation."
      until: ALL_TASKS_COMPLETE
      fresh_context: true  # 每次迭代用新会话
      
  # ⚙️ 确定性节点:执行脚本/命令
  - id: run-tests
    depends_on: [implement]
    bash: "bun run validate"  # 纯脚本,无 AI
    
  # 👥 交互节点:等待人工审批
  - id: approve
    depends_on: [review]
    loop:
      prompt: "Present the changes for review. Address any feedback."
      until: APPROVED
      interactive: true  # 暂停等待人工输入
      
  # 📦 最终节点:创建 PR
  - id: create-pr
    depends_on: [approve]
    prompt: "Push changes and create a pull request"

2. 四大核心特性

特性 说明 价值
🔄 Repeatable 相同工作流,相同序列,每次都一样 消除随机性,保证输出一致性
🔒 Isolated 每个工作流运行都有独立的 git worktree 支持并行任务,避免冲突
🚀 Fire and forget 启动后自动执行,完成后通知 提升开发者效率,支持异步协作
🧩 Composable 混合 AI 节点与确定性节点 在需要智能的地方用 AI,在需要确定的地方用脚本

3. 系统架构图

┌─────────────────────────────────┐
│ 平台适配器(Web/CLI/Slack/Telegram)│
└────────────┬────────────────────┘
             │
             ▼
┌─────────────────────────────────┐
│        Orchestrator             │
│  (消息路由 + 上下文管理 + 状态追踪)  │
└──────┬──────────────┬──────────┘
       │              │
       ▼              ▼
┌──────────┐  ┌────────────┐
│ 命令处理器│  │ 工作流执行器│
│ (Slash命令)│  │ (YAML DAG) │
└────┬─────┘  └────┬───────┘
     │             │
     └─────┬───────┘
           ▼
┌─────────────────────────────────┐
│   AI 助手客户端(Claude/Codex/Pi)│
└────────────┬────────────────────┘
             │
             ▼
┌─────────────────────────────────┐
│   SQLite/PostgreSQL 持久化存储   │
│  • 代码库注册 • 会话历史 • 工作流运行日志│
└─────────────────────────────────┘

🛠️ 三、快速上手:5 分钟配置指南

前置要求

# 1. 安装 Bun(替代 Node.js + npm)
curl -fsSL https://bun.sh/install | bash

# 2. 安装 GitHub CLI
brew install gh  # macOS
# 或 https://cli.github.com

# 3. 安装 Claude Code CLI
curl -fsSL https://claude.ai/install.sh | bash  # macOS/Linux

安装 Archon

# 方式一:完整安装(推荐,含 Web UI)
git clone https://github.com/coleam00/Archon
cd Archon
bun install
claude  # 启动后说 "Set up Archon"

# 方式二:快速安装(仅 CLI)
curl -fsSL https://archon.diy/install | bash
archon --version

在项目中使用

cd /path/to/your/project
claude

# 然后对 Claude 说:
"Use archon to fix issue #42"

Archon 会自动:

  1. 创建隔离的 git worktree
  2. 选择合适的工作流(如 archon-fix-github-issue
  3. 执行规划→实现→测试→审查→创建 PR 的完整流程
  4. 完成后返回 PR 链接 [[8]]

📦 四、内置工作流:开箱即用的 17 种场景

Archon 预置了 17 个生产级工作流,覆盖开发全生命周期:

工作流 适用场景 核心能力
archon-assist 通用问答、调试、探索 全功能 Claude 代理
archon-fix-github-issue 修复 GitHub Issue 分类→调查→实现→验证→PR→智能审查
archon-idea-to-pr 从想法到 PR 规划→实现→验证→5 路并行审查→自修复
archon-smart-pr-review 智能 PR 审查 按复杂度路由到不同审查代理
archon-architect 架构改进 复杂度分析、代码健康度评估、重构建议
archon-refactor-safely 安全重构 类型检查钩子 + 行为验证
archon-resolve-conflicts 解决合并冲突 冲突检测→双向分析→自动解决→验证
archon-piv-loop 人机协作开发 Plan-Implement-Validate 循环 + 人工审批

💡 智能路由:你不需要记住工作流名称。只需描述需求,Archon 的 router 会自动匹配最合适的工作流。例如说"fix issue #42"会自动路由到 archon-fix-github-issue [[16]]。


🔧 五、自定义工作流:打造团队专属流程

1. 创建自定义命令

在项目中添加 .archon/commands/my-command.md

---
description: 运行特定模块的测试
argument-hint: <module-name>
---

# 测试执行器

运行以下测试:$ARGUMENTS

要求:
1. 先检查测试是否已存在
2. 如果失败,分析原因并修复
3. 输出测试报告到 $ARTIFACTS_DIR/report.md

2. 创建自定义工作流

.archon/workflows/deploy-feature.yaml

name: deploy-feature
description: 实现功能并自动部署到 staging
model: sonnet

nodes:
  - id: analyze
    prompt: "分析需求 $ARGS 并输出实现步骤"
    
  - id: implement
    depends_on: [analyze]
    prompt: "按步骤实现功能,确保类型安全"
    
  - id: test
    depends_on: [implement]
    bash: "bun run test:unit && bun run test:e2e"
    
  - id: deploy-staging
    depends_on: [test]
    bash: "bun run deploy:staging"
    
  - id: notify
    depends_on: [deploy-staging]
    prompt: "生成部署报告并通知团队"

3. 配置项目级设置

.archon/config.yaml

assistant: claude  # 或 codex/pi

worktree:
  copyFiles:  # 自动复制到工作树的文件
    - .env
    - plans/
    
commands:
  folder: .claude/commands/archon  # 额外命令搜索路径

最佳实践:将 .archon/ 目录提交到 Git,整个团队就能共享同一套工作流标准 [[25]]。


🌐 六、多平台集成:在哪里都能用 Archon

Archon 支持多种交互方式,适应不同工作场景:

平台 适用场景 配置难度
CLI 本地开发、自动化脚本 ⭐ 简单
Web UI 可视化监控、团队协作 ⭐⭐ 中等
Telegram 移动端快速操作 ⭐ 简单
Slack 团队频道集成 ⭐⭐ 中等
GitHub Webhooks Issue/PR 自动触发 ⭐⭐ 中等

Web UI 核心功能

启动 bun run dev 后访问 http://localhost:5173

  • 💬 Chat:实时对话 + 工具调用可视化
  • 📊 Dashboard:工作流运行监控、历史记录筛选
  • 🧱 Workflow Builder:拖拽式 DAG 编辑器
  • 🔍 Execution View:单步调试工作流执行过程

🎯 统一监控:无论工作流是从 CLI、Slack 还是 GitHub 触发,所有活动都会汇聚到同一个 Dashboard [[16]]。


🏢 七、企业级实践:为什么大厂都在用"工程化 AI"

Stripe 的真实案例

“Stripe merges over 1,300 pull requests weekly that contain zero human-written code.”

Stripe 的"Minions"系统正是 Harness 工程的典范:

  1. 隔离环境:每个 Agent 在独立沙箱运行,无法接触生产系统
  2. 流程约束:必须经过规划→实现→测试→审查→人工确认的完整流程
  3. 快速反馈:设置迭代上限,避免无限循环
  4. 可审计性:所有决策和代码变更都有完整日志

关键数据对比

指标 无 Harness 有 Harness
PR 接受率(维护类任务) 40-55% 74-92%
PR 接受率(复杂功能) 20-35% 35-65%
任务完成一致性
团队协作成本

📊 数据表明:相同的模型,不同的 Harness,结果可能相差 40 个百分点 [[14]]。


⚖️ 八、什么时候用 Harness?什么时候用自由代理?

这不是非此即彼的选择,而是场景驱动的策略

✅ 推荐使用 Harness(Archon)的场景

  • 🏗️ 生产环境部署:需要可重复、可审计的流程
  • 👥 团队协作:需要统一标准,降低沟通成本
  • 🔄 多步骤任务:涉及规划、实现、测试、审查的完整链路
  • 🎓 新人培训:用工作流固化最佳实践
  • 🔐 合规要求:需要完整决策日志和审批流程

✅ 推荐使用自由代理的场景

  • 🔍 探索性编程:快速验证想法,不需要严格流程
  • 🧪 原型开发:灵活性优先,快速迭代
  • 🎯 一次性任务:简单操作,setup 成本不值得
  • 🧠 学习研究:观察模型推理过程,不受约束

🎯 混合策略(推荐)

探索阶段 → 自由代理(Cursor/Claude Code)
    ↓
验证通过 → 将流程编码为 Archon 工作流
    ↓
生产部署 → 用 Archon 执行标准化流程

这就像"手动测试"和"自动化测试"的关系:两者都需要,但自动化才能规模化。


🔍 九、技术细节与最佳实践

1. 工作树隔离机制

~/.archon/
├── archon.db              # SQLite 状态数据库
└── workspaces/
    └── owner/repo/
        ├── source/        # 原始代码库(克隆或符号链接)
        ├── worktrees/     # 隔离工作树(每个任务一个)
        │   ├── fix/issue-42/
        │   └── feat/dark-mode/
        ├── artifacts/     # 工作流产物(不进 Git)
        └── logs/          # 执行日志

💡 使用 --branch 参数自动创建 git worktree,避免并行任务冲突 [[25]]。

2. 上下文传递技巧

在 DAG 节点间传递数据:

nodes:
  - id: analyze
    prompt: "分析需求,输出 JSON 格式的实现计划"
    
  - id: implement
    depends_on: [analyze]
    prompt: |
      基于以下计划实现功能:
      $analyze.output
      
      要求:
      1. 保持类型安全
      2. 添加单元测试

3. 错误处理与重试

- id: run-tests
  depends_on: [implement]
  bash: "bun run test"
  retry:
    max_attempts: 3
    backoff: exponential  # 指数退避
  on_failure:
    - id: debug-failure
      prompt: "分析测试失败原因并修复"

4. 安全与权限控制

# .archon/config.yaml
security:
  allowedCommands:  # 白名单机制
    - "bun run test"
    - "git diff"
    - "npm run build"
  blockedPatterns:  # 阻止危险操作
    - "rm -rf /"
    - "curl.*|bash"

🚨 十、常见问题与排查

❓ “Cannot create worktree: repository registration failed”

原因:工作区符号链接指向了旧的代码库路径。

解决

# 删除过时的工作区注册
rm -rf ~/.archon/workspaces/<owner>/<repo>
# 重新运行
archon workflow run ...

❓ AI 不响应 / 超时

排查步骤

# 1. 检查 Claude 认证
claude --version
claude /login  # 重新认证

# 2. 检查网络连接
curl https://api.anthropic.com

# 3. 查看日志
archon workflow status

❓ 端口冲突(3090/5173)

解决

# 修改环境变量
export PORT=4000
export VITE_PORT=5174
bun run dev

❓ 依赖安装失败

# 清理并重装
rm -rf node_modules
bun install

🔮 十一、未来展望:Harness 工程将如何演进?

短期(2026 下半年)

  • 🤖 多模型路由:根据任务类型自动选择 Claude/GPT/Gemini
  • 🧠 记忆增强:跨会话的长期记忆和知识图谱
  • 📊 智能监控:自动分析工作流效率,给出优化建议

中期(2027)

  • 🔄 自适应工作流:根据执行结果动态调整流程
  • 🤝 人机协作增强:更自然的审批反馈循环
  • 🌍 分布式执行:支持跨地域、跨团队的协作工作流

长期愿景

“2025 年是 AI 证明能写代码的一年,2026 年是工程化让 AI 可靠写代码的一年。”

Harness 工程不是限制 AI,而是让智能在正确的轨道上发挥最大价值。就像脚手架不是限制建筑师,而是让创意安全落地。


📚 十二、学习资源推荐

官方资源

延伸学习

实践建议

# 1. 从小项目开始
cd my-small-project
archon init
archon workflow list

# 2. 先观察,再修改
archon workflow run archon-assist "Explain the auth module"

# 3. 逐步自定义
cp .archon/workflows/defaults/archon-fix-github-issue.yaml \
   .archon/workflows/my-team-fix.yaml
# 编辑添加团队特定的测试/审查步骤

# 4. 团队推广
git add .archon/
git commit -m "feat: add Archon workflows for team standards"

✨ 结语

Archon 代表的不仅是一个工具,更是一种思维转变

从"让 AI 写代码" → “让工程流程指导 AI 写代码”

当我们将开发流程编码为可执行、可审计、可复用的工作流时,我们真正释放了 AI 的生产力——不是让它自由发挥,而是让它在正确的框架内高效协作。

2026 年的关键问题不再是"哪个模型更强",而是"哪个 Harness 更可靠"

如果你正在探索如何用 AI 提升团队效率,Archon 值得你花 5 分钟尝试。因为真正的工程化,从来不是限制创造,而是让创造可持续。


📌 项目信息

  • GitHub: coleam00/Archon [[1]]
  • Stars: 21.9k+(持续快速增长)
  • License: MIT
  • 最后更新:2026 年 4 月(完成 TypeScript 重写)[[10]]

⚠️ 注意:Archon 与 Matt Pocock 的 skills 仓库是两个独立项目。前者是工作流引擎,后者是 TypeScript 编码技能练习集。两者可互补使用:用 Archon 执行流程,用 skills 提升代码质量。

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐