Excalibur:覆盖完整产品周期的开源 AI 编程代理

大多数 AI 编程工具只负责写代码,Excalibur 开源代理把发现、构建、验证、发布四个阶段都纳入一套系统。本文介绍其核心设计和与 Cursor 等工具的差异。

Excalibur:覆盖完整产品周期的开源 AI 编程代理

大多数 AI 编程工具的工作范围是从计划到发布——Excalibur 想做的是两端都拿到:在第一行代码之前判断值不值得构建,在最后一次提交之后提供可审计的完整记录。它完全开源(Apache-2.0),一条 npm 命令安装,本地运行不需要账号。面向的是需要对交付物负责、而不只是对代码块负责的产品工程师。

核心设计:时间机器 + 不可变事件流

Excalibur 的每次运行都是一条不可变的、只追加的事件流。这意味着你可以像拖动视频进度条一样在任意步骤上暂停、回溯、并从那个节点分叉出一条新运行——而不需要重新跑已经完成的部分。

实用价值:一次长任务跑到第 8/14 步时发现第 3 步的决策有问题,可以直接从第 3 步分叉,不用从头开始。前缀已缓存,只有变更的部分重新执行。

五个核心能力

发现阶段(Discovery):在第一行代码之前,代理评估范围、证据和风险,结论不只是"怎么做",也可能是"先别做"。它给每个想法打出"clarity、evidence、scope、risk"四个维度的分数,然后给出 build / validate / don't-build 三种建议之一。

自主等级 L0-L4:从简单问答(L0)到完全自主运行并提 PR(L4),每个任务可以单独设置。日常小改动用 L2(提 patch),需要谨慎的大任务用 L4 带 --careful 标志,每步操作都暂停等人确认。

并发代理蜂群(Swarm):大任务自动切分给多个代理在隔离的 git worktree 里并行运行,通过"对抗性验证网格 + 类型检查 + 测试通过"的门控才允许合并。

本地看板(Dashboard)excalibur serve 打开一个本地 Web 看板,展示任务列表、运行状态、成本图表和实时编排时序图。不需要账号,不需要 SaaS。

安全默认值:每次写文件、执行命令、推送代码前都会暂停等待明确确认;.env 文件和私钥被屏蔽,不会被读取或发送;代理在隔离沙箱里运行,默认无网络访问。

与 Cursor / Claude Code 的关键差异

Cursor 和 Claude Code 都是"对话 → 生成代码"的模式,工作起点是需求已明确的任务。Excalibur 的差异在于:

  • 有 Discovery 阶段:在写代码之前,先由代理判断这个任务是否清晰、证据是否充分、风险是否可控
  • 有 Audit 阶段:提 PR 之后,有完整的签名审计记录,每步决策都可以回溯
  • 测试和文档是阶段,不是附注:标准工作流里,测试和 ADR 文档是独立的门控步骤,不是可选项
  • 任何模型:OpenAI 兼容、Anthropic、Ollama 等,可以配置"好模型做难的部分 + 快模型做填充"

适合哪些场景

  • 你的团队对 AI 生成代码的审计有要求(金融、医疗、合规场景)
  • 你需要能从任意历史节点重跑的可复现构建
  • 你想要一个从"要不要做"到"证明做完了"的完整系统
  • 你不想锁定在单一模型厂商

如果你的主要工作是在 Cursor 里快速迭代前端组件或做脚本,Excalibur 的完整流程可能偏重。Excalibur 更适合需要负责任地交付而不只是快速交付的场景。

常见问题

问:Excalibur 和 Cursor 能同时使用吗? 答:可以。Excalibur 有 VS Code 和 Cursor 的 IDE 扩展,可以在 Cursor 里触发 Excalibur 运行。两者不冲突,前者处理重大任务,后者处理日常交互式编辑。

问:它是完全免费的吗? 答:Core 版本完全开源免费(Apache-2.0)。Enterprise 版本添加了 SSO、组织级策略引擎、审计合规包和自托管运行器,属于商业产品。

问:对网络的要求是什么? 答:代理本身在沙箱里默认无网络访问。如果任务需要 web 搜索或抓取,需要明确配置并会经过策略检查。

参考资料