一个被忽视的真相:AI 编码最大的缺陷不是"不会写",而是"每次都不一样"
用过 Claude Code 或 Codex 的人都有这种体验——同样的 bug,Agent 今天修得好好的,明天可能就搞砸了;同样的功能,这次的实现风格和上次完全不一样。这不是因为 Agent"变笨"了,而是因为传统的 Coding Agent 没有流程约束。
当你说"修这个 bug",Agent 可能直接开始写代码,跳过计划;可能忘了跑测试;可能 PR 描述完全不走你的模板。每一次调用都是新的实验,缺乏可重复性和工程规范性。
Archon 的思路很干脆:给 AI 编码套上流程。它自己不写代码,而是定义一套工作流——规划、实现、验证、审查、PR 创建——每一步做什么、用什么模型、通过什么校验,全部用 YAML 写死。Agent 只需要在每一步里填充智能内容,而流程的结构由你掌控。
2025 年 2 月上线,短短一年多拿下 23K+ Star,MIT 协议,Bun + TypeScript 构建,带完整 Web UI 和多平台适配器。
它到底做了什么
一句话:一个 YAML 编排引擎 + 19 个默认工作流,把你的 Coding Agent 变成一个标准化、可复用的软件开发流水线。
Archon 的核心不是新的 LLM API,而是把开发过程结构化。你看这个典型的 `archon-idea-to-pr` 工作流:
nodes:
- id: create-plan
command: archon-create-plan
context: fresh
- id: implement-tasks
command: archon-implement-tasks
depends_on: [create-plan]
provider: claude
model: large
- id: validate
command: archon-validate
depends_on: [implement-tasks]
context: fresh
- id: review
include: archon-review-block
depends_on: [validate]
- id: create-pr
command: archon-create-pr
depends_on: [review]
每一步都精确定义了:做什么命令、依赖谁、用哪个模型、上下文是新鲜的还是连续的。这就是把 DevOps 的工作流思想,移植到了 AI 编码领域。
19 个开箱即用的工作流
| 工作流 | 适用场景 |
|---|---|
| archon-assist | 通用问答、调试、代码探索 |
| archon-fix-github-issue | 从分类 issue 到 PR 的完整修复闭环 |
| archon-idea-to-pr | 自然语言描述 → 完整功能 → PR |
| archon-plan-to-pr | 执行已有计划 → 实现 → 验证 → PR |
| archon-comprehensive-pr-review | 5 个并行 Agent 审查 PR + 自动修复 |
| archon-refactor-safely | 带类型检查钩子的安全重构 |
| archon-adversarial-dev | 从零开始构建完整应用(对抗式开发) |
| archon-architect | 代码库健康度扫描与复杂度优化 |
还有更多自定义工作流,全部存放在 `.archon/workflows/defaults/`,你可以复制一份进行修改。整个工作流系统像 GitHub Actions 一样 declarative,但面向的是 AI Agent 的协作流程,而不是 CI/CD 管道。
技术架构:Bun + TypeScript + SQLite
核心组件
- Orchestrator(编排器) — 消息路由与上下文管理的核心,负责任务调度、工作流状态跟踪
- Workflow Executor — 解析 YAML 工作流,按依赖关系执行节点,支持循环、条件分支、并行
- Command Handler — 处理 `/` 开头的 slash 命令,如 `/archon fix #42`
- AI Assistant Clients — 统一封装 Claude、Codex、Pi 等 LLM 提供商的接口
- Database — SQLite(默认)或 PostgreSQL,存储 14 张核心表:代码库、会话、工作流运行、隔离环境、消息、事件等
数据流
用户命令(CLI/Web/Slack/Telegram)
↓
Orchestrator 路由 & 上下文管理
↓
选择工作流 → Workflow Executor 解析 YAML
├─ AI 节点 → 调用 LLM(Claude/Codex/Pi)
├─ 确定节点 → 执行 bash 脚本 / 测试 / git 操作
└─ 循环/条件 → 根据结果决定下一步
↓
结果反馈 → 提交 PR / 评论 issue / 返回给用户
三个独特优势
① 工作流隔离:每个任务有自己的 git worktree
Archon 为每次工作流运行创建一个独立的 git worktree。这意味着你可以同时并行运行 5 个不同的修复任务,它们互不干扰,分支命名规范(如 `archon/task-dark-mode`),完成后自动清理。这直接解决了《Agent Orchestrator》提到的多 Agent 冲突问题,而且更轻量。
② AI 与确定性步骤的混合编排
这是 Archon 最聪明的地方:只在需要智能的地方用 AI,其余步骤用确定性脚本。例如:
- 计划阶段:AI 生成实现方案
- 实现阶段:AI 编写代码
- 验证阶段:直接运行测试脚本(确定性,不需要 AI)
- 审查阶段:AI Review Agent 做代码审查
- PR 创建阶段:AI 生成 PR 描述
这种混合模式既节省了 Token,又保证了关键步骤的可靠性——测试脚本不会"幻觉",它要么通过要么失败。
③ 多平台适配器:一次定义,到处运行
工作流定义在 `.archon/workflows/` 下,承诺一次定义,多端运行。你可以通过:
- CLI — `archon fix #42`,直接在终端执行
- Web UI — `archon serve` 启动带图形界面的 dashboard,可视化工作流编排
- Slack/Telegram/Discord — 在聊天窗口触发工作流,适合远程协作
- GitHub Webhooks — issue 创建/评论自动触发修复工作流
对比:Archon vs 传统 Coding Agent
| 特性 | 传统 Agent(Claude Code / Codex) | Archon |
|---|---|---|
| 流程控制 | 无约束,每次运行自由发挥 | YAML 定义的工作流,严格流程 |
| 可重复性 | 低——依赖 LLM 的随机性 | 高——相同输入,相同工作流,相同输出 |
| 并行任务 | 需要外部工具(如 agent-orchestrator) | 内置 worktree 隔离,原生支持 |
| 验证环节 | 通常由 Agent 自我判断(不可靠) | 确定性脚本直接运行测试 |
| 多 Agent 审查 | 不支持 | 内置 5 节点并行审查工作流 |
| 上手成本 | 低——直接对话 | 中——需要理解 YAML 工作流 |
| 适用场景 | 快速探索、临时修复 | 生产级开发、团队协作、PR 流程 |
踩坑指南:真实体验中的三个问题
在实际使用 Archon 的过程中,我发现以下三个问题值得注意:
坑 1:工作流编写有学习曲线
刚开始用 Archon 的人会发现,编写 YAML 工作流比直接跟 Agent 对话要"麻烦"得多。你需要:
- 理解节点之间的依赖关系(depends_on)
- 决定哪些步骤用 AI、哪些用确定性脚本
- 配置 fresh_context 还是复用上下文
- 设置 loop 的终止条件
建议:先从复制修改默认工作流开始,别一开始就写新的。先跑通 `archon-idea-to-pr`,理解了它的结构再自定义。
坑 2:Claude Code 路径配置容易出错
Archon 的独立二进制安装默认不携带 Claude Code,你需要手动配置路径。安装后如果提示 `CLAUDE_BIN_PATH` 未设置,工作流会直接失败。
解决:
# macOS / Linux / WSL
export CLAUDE_BIN_PATH="$HOME/.local/bin/claude"
# 或者写入 ~/.bashrc 或 ~/.zshrc 永久生效
# Windows PowerShell
$env:CLAUDE_BIN_PATH = "$env:USERPROFILE\.local\bin\claude.exe"
# 或者在 ~/.archon/config.yaml 中配置
# assistants:
# claude:
# claudeBinaryPath: "C:\Path\To\claude.exe"
坑 3:Web UI 的启动在某些环境会卡住
`archon serve` 启动 Web UI 时,如果遇到网络问题或端口被占用,进程可能静默卡住而不报错。默认端口是 8080,可以检查端口占用情况。
解决:
# 检查端口占用
lsof -i :8080
# 如果冲突,指定其他端口
archon serve --port 8081
# 或者直接通过浏览器访问 http://localhost:8081
快速上手
最简单的安装方式(已有 Claude Code 的前提下):
# 安装 Archon CLI
curl -fsSL https://archon.diy/install | bash
# 或者 Homebrew
brew install coleam00/archon/archon
# 进入你的项目目录
cd /path/to/your/project
# 启动 Claude 并直接说
claude
# 然后你说:
"Use archon to fix issue #42"
# Archon 会自动:
# 1. 创建隔离 worktree 和分支
# 2. 选择合适的工作流
# 3. 执行计划 → 实现 → 验证 → 审查 → PR
# 4. 完成后返回 PR 链接
完整安装(5 分钟)
如果你想体验完整的 Archon(Web UI + 多平台支持):
# 安装依赖
curl -fsSL https://bun.sh/install | bash
curl -fsSL https://claude.ai/install.sh | gh install cli
# 克隆 Archon
git clone https://github.com/coleam00/Archon
cd Archon
bun install
# 启动设置向导
claude
# 然后说:"Set up Archon"
总结
Archon 做了一个重要的方向性选择:在 AI 编码时代,流程比智能更重要。当 LLM 都能写代码的时候,确保代码写得规范、过程可复现、审查有保障,这才是真正的工程挑战。
它不像是一个新的 Coding Agent,而更像是一个Coding Agent 的编排系统。把 Claude Code、Codex、这些能力强大的 Agent 串联起来,加上 git、测试、PR 这些 DevOps 工具,形成一个完整的软件开发流水线。
如果你的团队正在规模化使用 AI 编码,或者你自己希望从"随手写代码"过渡到"工程化交付",Archon 值得一试。它用 YAML 把 AI 编码流程"编译"成了确定性程序,这也许正是 AI 软件工程化的关键一步。