Archon 是什么?2.38 万星的开源软件工厂,19 天自己合了 363 个 PR(基础篇)

Archon 是什么?2.38 万星的开源软件工厂,19 天自己合了 363 个 PR(基础篇)

让编码 Agent 修个 bug,最烦的不是它改错,是它每次改法都不一样:这次跳过计划,下次忘了跑测试,PR 模板看都不看,你得从头盯到尾。

Archon 的解法很土:把「怎么干」写成 YAML,流程和检查点固定下来,Agent 只在每个节点里提供判断。这个 MIT 协议的项目现在 2.38 万星、3,514 个 fork,最新版本 v0.13.2(10 月 29 日)。最能说明它成色的一个数字写在 README 里:10 月 1 日到 19 日,这个仓库合并了 524 个 PR,其中 363 个是 Archon 自己的 workflow 跑出来的。

一、它是什么:管流程的,不是写代码的

官方定位是「governed agentic automation engine」,翻成人话:一个编排编码 Agent 的工作流引擎。它自己不做推理,甚至不直连大模型 API——AI 节点调的是你机器上已经登录的 Claude Code、Codex 或 Pi,用的是你自己的订阅。这跟往 IDE 里装个插件不太一样,它更像给 Agent 排班的那一层。

一次 run 的结构大致是这样:

Archon 一次 workflow run 的架构图:YAML 流程定义、节点执行器、Claude Code/Codex/Pi 运行时、git worktree 隔离与 Attention 队列
Archon 跑一次 workflow:流程写死在 YAML,Agent 只负责节点里的判断
  • workflow:一个 YAML 文件,节点组成 DAG,用 depends_on 连。放在仓库的 .archon/workflows/ 里,跟代码一起进 Git,能 review、能回滚。
  • 6 类节点:prompt(直接给 Agent 一句话)、command(加载打包好的命令模板)、bash(跑脚本,纯确定性)、loop(反复跑直到条件满足,配 until_bash 跑你的测试命令、max_iterations 防死循环)、approval(停下来等人批)、cancel(带原因终止)。
  • Provider 层:包住 Claude Code / Codex / Pi 的 CLI 和 SDK,会话、流式输出由它统一处理。
  • 隔离:每次 run 默认开一个 git worktree,多个 run 并行改同一个仓库互不干扰,跑废了 archon isolation cleanup 收尾。
  • 存储:默认 SQLite,要 PostgreSQL 也行;每次 run 的事件、transcript、花费全在自己库里。

还有一层是给「反复来问」准备的——Attention 队列。run 卡在需要人拍板的地方,就变成一条待办:是什么、为什么重要、建议怎么办、有哪几个选项。它有四类 kind(attention、awaiting_response、usage_limit、unreadable),只有前两类能回答;usage_limit 是额度用完等重置,unreadable 得人去查日志。同一条待办第二次答复会被拒绝,Archon 也不替你分配谁来回。

二、上手:三条命令的事

装之前先装好 Claude Code 或 Codex 并登录,然后一条命令:

curl -fsSL https://archon.diy/install | bash
# 或者 brew install coleam00/archon/archon

进任意一个 git 仓库就能跑:

archon workflow list                    # 看内置的 16 个 workflow
archon workflow run archon-fix-github-issue "修一下 #42"
archon serve                            # 开 Web 控制台,看 run、答待办

内置 workflow 覆盖得挺全:archon-idea-to-pr(想法到 PR)、archon-smart-pr-review(按复杂度分流评审)、archon-comprehensive-pr-review(5 个并行评审)、archon-ralph-dag(按 PRD 一条条迭代)。自带的 sdlc pack 就是一条「issue 进、PR 出」的流水线,默认不绑触发,要自动跑就自己挂定时或 issue 事件。

想自己写流程,在 .archon/workflows/ 建个 YAML。「计划 → 实现到测试通过 → 等人批 → 提 PR」的骨架大概长这样:

nodes:
  - id: plan
    prompt: "读需求读代码,写实现计划"
  - id: implement
    depends_on: [plan]
    loop:
      prompt: "实现计划的下一步"
      until_bash: "bun run test"
      max_iterations: 10
  - id: approve
    depends_on: [implement]
    wait: { attention: "看下改动,批还是拒", form: approval }
  - id: pr
    depends_on: [approve]
    when: "$approve.output.decision == 'approve'"
    prompt: "推分支,开 PR"

三、实话

名字有坑。 网上搜「Archon RAG」「Archon 知识库」,出来的都是 v1–v6——那是另一个产品:Supabase + 向量库 + Streamlit + Python,2025 年推倒重写了。现在 0.x 是 TypeScript/Bun 的工作流引擎,没有 RAG、没有 embedding、不直连 LLM API。官方专门写了一页 What Archon Is (and Is Not) 澄清这事,你按老教程装必踩空。

还是 0.x。 10 月 28、29 两天连发 v0.13.0、0.13.1、0.13.2,仓库挂着 172 个 open issue。YAML 字段和 CLI 参数还会改,真要上生产就锁版本,别追 main。

门槛在 YAML,不在模型。 它不是拖拽画布,写 workflow 得懂节点、依赖、变量、条件表达式。不写代码的人不用考虑;换来的是流程能进 Git、能被同事 review、能自己 review 别人。反过来,你要的是「装个插件就能改代码」,Cline 那类编码 Agent更省事。

生态还窄。 AI provider 只有 Claude Code、Codex、Pi 三家,forge 只有 GitHub,chat 适配器四个(Slack、Telegram、Discord、Web)。要接别的模型或别的代码托管,得自己写 plugin——它把 plugin 分成 workflow pack、provider、forge、chat 四类,从 GitHub 仓库装:archon plugin add owner/repo。

钱要自己算。 Archon 本身 MIT 免费,token 花的是你自己的订阅。它能告诉你每次 run 花了多少,但不会替你省钱。它跟 Temporal、Trigger.dev 那些持久执行平台也不是一类:那些管「跑挂了从断点续跑」,Archon 管的是「流程长什么样、哪里必须停下来问人」,两者叠着用不冲突。

它最像谁。 跟 Factory 那种把编码 Agent 排进流水线的思路接近,区别是 Factory 买服务、Archon 自己装自己改流程。和 Retool 十月初喊的「集中式 Agent Harness」也是一个方向,只是 Archon 先只管编码这一件事,别的业务流程是后来长出来的扩展面。

谁该上手

已经天天在用 Claude Code 或 Codex、手上又有一批重复的「改 bug → 跑测试 → 提 PR」流程,想把它固定成可审计流水线的人。装在自己机器上就一条命令,建议先拿 archon-fix-github-issue 跑两个小 issue,看它的 attention 队列能不能真的把「全程盯」变成「只在要决策时出现」。

一句话:Archon 卖的不是模型能力,是把流程钉死之后那点确定性——不确定性留在节点内部,确定性交给 YAML。

仓库:github.com/coleam00/Archon(MIT)

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注