tk3.biz
返回博客列表

在 Antigravity 中试用 dev-orchestra

前言

上一篇我在 Codex 中使用了 dev-orchestra,再上一篇是在 Claude Code 中。 这次轮到 Google 的 Antigravity 了。

先把结论写在前面。

  • 在 Antigravity 中与 dev-orchestra 对话,完全没有问题
  • 但是,把设计和审查交给 Antigravity CLI(agy)是有限制的
  • 我推荐的用法是:在 Antigravity 中对话,把实际工作交给 Claude 或 Codex

dev-orchestra 是做什么的,我在介绍文章中已经写过了。

dev-orchestra 已在 GitHub 上开源(MIT 许可证)。如果你觉得有用,给个 Star 我会很开心。

→ github.com/istb16/dev-orchestra

能做什么,不能做什么

为了避免让你失望,先把结果汇总一下。

支持情况备注
在 Antigravity 中使用 dev-orchestra是作为插件安装后,只要对话就能运行
把工作交给 Claude / Codex是如果已安装,会自动分配给它们
让 agy 负责实现和修改是运行测试需要额外设置
让 agy 负责设计和审查部分支持无法强制只读,所以是带警告的有限支持
从 Marketplace 安装否需要克隆仓库,再通过链接安装

先理清这里出现的两个名称。

  • Antigravity:你与之对话的应用。dev-orchestra 作为插件装在这里
  • agy:Antigravity 的 CLI。是 dev-orchestra 用来分配设计、实现和审查的对象之一

“对话的地方”和“干活的 AI”是两回事,限制只出现在把 agy 用作后者的时候。

所需环境

项目备注
Antigravity需要已完成登录
Python 3.11 或更高版本只用标准库就能运行
git用于克隆仓库,以及获取要审查的 diff
Claude Code 或 Codex没有也能运行,但有的话可以把工作交给它们(推荐)

步骤

1. 安装

Antigravity 的 Marketplace 由 Google 精选上架,自己无法添加。所以要克隆仓库,再链接到 Antigravity 的插件文件夹。

git clone https://github.com/istb16/dev-orchestra.git
cd dev-orchestra
git checkout v1.0.0
./install/install.sh --antigravity

在 Windows 的 PowerShell 中,最后一行改成这样。

.\install\install.ps1 -Antigravity

安装之后,请重启 Antigravity。新插件只会在启动时加载。

通过链接安装时,克隆下来的文件夹中的内容会被原样加载。因此我建议先 checkout 发布标签(v1.0.0)再安装。如果不希望文件夹中的内容发生变化,也可以用 --copy(Windows 上是 -Copy)以复制的方式安装。 在 Windows 上会创建 junction,所以不需要开启开发人员模式。

2. 首次使用时选择预设

从这里开始与 Claude Code、Codex 的情况相同。第一次提出使用 dev-orchestra 的请求时,它会询问预设。 拿不准就选 standard,没有问题。

3. 同时安装了 Claude Code 的情况(推荐)

如果在与 Antigravity 相同的机器上也装有 Claude Code,配置是这样的(dev-orchestra 1.0.0 中 config show 的节选)。

Preset: standard (implicit; fitted to claude, agy)

  Architect
    claude / fable / latest
  Implementer
    claude / opus / latest
  Reviews
    1. claude / opus / latest / general / claude-general
    2. claude / sonnet / latest / general / claude-general-2
    3. claude / sonnet / latest / security / claude-security (opus when high-risk)
    4. claude / sonnet / latest / test / claude-test

agy 没有被分配到任何角色。设计、实现和审查全部由 Claude 完成。

这是我最推荐的形式。

  • 对话在 Antigravity 中进行(还是熟悉的界面)
  • 干活的是 Claude(可以切实强制只读)

如果也装了 Codex,Codex 会像上一篇那样加入审查。

4. 只安装了 agy 的情况

如果 Claude Code 和 Codex 都没有安装,所有角色都会交给 agy。此时的配置是这样的(节选)。

Preset: standard (implicit; fitted to agy)
  note: claude, codex not found on PATH: architect went to agy (default); agy cannot be held to reading -- set architect in the global file to keep it off agy
  note: claude, codex not found on PATH: reviewer seat 2 (general) was not added; it would repeat agy-general
  note: claude, codex not found on PATH: reviewer seat 3 (security) was not added; agy cannot be held to reading
  note: claude, codex not found on PATH: reviewer seat 4 (test) was not added; agy has no cheap model named offline

  Architect
    agy / default / latest
  Implementer
    agy / default / latest
  Reviews
    1. agy / default / latest / general / agy-general

请注意两点。

  • 审查者只有 1 位。第 2 位 general 审查者会和第 1 位一样是 agy,所以不会添加。security 的席位因为“无法强制只读”而不设置。test 的席位也不添加,因为 agy 无法按名称指定便宜的模型
  • 把设计或审查分配给 agy 的那几行,会带有**agy cannot be held to reading(无法让 agy 只读)这条警告**

它确实能运行,但 dev-orchestra 的优点(由另一个 AI 在不改动文件的前提下读取并审查)会大打折扣。 如果环境里只有 agy,我建议再装上 Claude Code 或 Codex。

5. 确认是否准备就绪

对智能体说“运行 dev-orchestra 的 doctor”。agy 部分的输出是这样的(节选)。

Antigravity CLI (agy)
  Installed: yes
  Model selection: supported
  Read-only runs: NOT ENFORCED (runs allowed, warned) -- agy cannot be held to reading only: ...
  Resume: NOT SUPPORTED -- agy does not resume sessions

NOT ENFORCED 的意思是:让 agy 做设计或审查时,它是在可以改写文件的状态下运行的。dev-orchestra 无法阻止这一点,所以会在给出警告之后继续运行。

最后如果显示 No problems found.,就说明准备完成了。

6. 用一句话提出请求

接下来,和在其他环境中一样对话就行。

用已配置的工作流来实现这个 issue

从批准计划到最终报告的流程,和我在 Claude Code 那一篇中写的一样。

Antigravity 特有的功能与限制

这是把 agy 用作工作角色时需要了解的要点(截至 dev-orchestra 1.0.0,详情见 providers.md)。

内容
注意:设计和审查时无法强制只读它在可以改写工作树和 .ai/(包括批准记录)的状态下运行。只接受来自全局配置的设置,并附带警告
注意:作为实现角色,默认无法运行测试shell 命令会被拒绝。在全局配置中设置 options.skip_permissions: true 后就能运行(见下面的提示)
不支持:无法从设计的中断处继续修改计划时也是每次重新运行
注意:很晚才会发现智能体卡住与其他 CLI 不同,它没有监控无响应的期限。要一直等到整体时间限制
注意:每次运行的 token 消耗较多即使是很小的请求,输入也要消耗约 1.2 万~2.5 万个 token
优点:模型可以交给 agy,也可以按系列名指定默认是 default(由 agy 选择)。也可以用 gemini-flash / gemini-pro 之类的系列名来指定
注意:安装和更新需要手动操作通过链接安装,安装或更新之后需要重启 Antigravity

设置 options.skip_permissions: true 后,agy 会被加上 --dangerously-skip-permissions。不仅是测试命令,所有 shell 命令都会跳过 agy 的权限确认。请在理解这一点的前提下再开启。

agy 读取的文件内容会被发送给 Google。由于也无法强制只读,像 .env 这样的机密文件同样可以被读取。比较稳妥的做法是把机密文件放在它够不到的地方,或者用本地 LLM 来审查这类代码(我在介绍文章中提到过)。

dev-orchestra 无法确认你是否已经登录。如果 agy 运行失败,请先启动一次 agy 并登录。

总结

  • 在 Antigravity 中通过克隆再链接的方式安装(安装后重启)
  • 作为对话的地方可以正常使用。在熟悉的界面中就能运行 dev-orchestra
  • 如果也装了 Claude Code 或 Codex,工作会自动分配给它们。这是我推荐的做法
  • 把设计和审查交给 agy 是有限制的。因为无法强制只读,所以会带有警告
  • 只有 agy 的环境中,再装上 Claude Code 或 Codex 才能发挥出 dev-orchestra 的优点

详细的用法整理在 README 中。 到这里,三种环境下的用法就都讲完了。下一篇起,将进入预设和审查者的组合方式等配置方面的内容。

新版本发布后的更新方法,整理在更新 dev-orchestra中。

本系列的文章可以在“dev-orchestra”文章列表中集中阅读。

GitHub: istb16/dev-orchestra(给个 Star 会是对我很大的鼓励)

相关文章