近期将许久未更新的 Antigravity 一口气升级到了最新的 v2.26.0 版本。跨越多个版本迭代后重新打开,最直观的感受是:Antigravity 已经从早期单纯的“AI 辅助代码编辑器(IDE)”,彻底蜕变为一套以 Agent(智能体)调度为核心的多端协同研发平台(Antigravity 2.0 / Hub)。
尤其是 Agent 架构、定制化体系(Customizations)以及后台自动化能力,几乎完成了一次代际重构。本文将这段时间跨版本演进中最核心的变化进行系统性梳理,作为个人知识库的升级备忘与实践指南。
一、产品形态演进:从单一 IDE 到 Antigravity 2.0 四端协同
在早期版本中,我们主要在基于 VS Code 内核的 Antigravity IDE 侧边栏里与 AI 对话。而在迈入 Antigravity 2.0 时代直至 v2.26.0 版本,官方将底层 Agent 引擎彻底解耦,形成了“四位一体”的产品矩阵:
1. Antigravity 2.0 (Hub) 独立桌面应用
新版本提供了与 IDE 并行的独立桌面端应用(Hub 模式),无需打开笨重的代码编辑器即可直接按项目(Projects)管理会话。其界面采用了全新的三栏式布局:
- 左侧导航栏(Sidebar):集中管理会话(Conversations)、项目切换(Projects,支持一键在资源管理器中定位目录)、定时自动化(Automations)、定制中心(Skills & Customizations)以及全局/项目级权限设置;
- 中间主画布(Chat Canvas):支持
/斜杠命令触发专用工作流、@符号精准挂载上下文(文件、目录、历史会话、终端、规则、MCP 工具乃至特定的子智能体),以及剪贴板富文本与视频/图片直接粘贴; - 右侧辅助面板(HTML Auxiliary Pane):实时展示当前会话的 Subagents(子智能体状态)、Background Tasks(后台任务队列)、Artifacts(结构化产物文档/交互式 UI)、Files Changed(文件变更集) 与 Terminals(终端会话)。
2. 新一代模型底座与工程细节打磨
在 v2.26.0 及近期版本中,平台正式接入了 Gemini 4 Argon(支持 Low / Medium / High 等不同推理强度切换),并在工程体验上做了大量细节优化:
- 配置路径收敛:项目级配置文件统一迁移至
/.gemini/config.json,逐步替代早期零散的.agents/settings.json; - 快捷键与交互增强:命令面板新增一键切换深浅色主题(Toggle Between Light/Dark Themes),全面增强聊天与面板的键盘导航(PageUp / PageDown / Home / End / Esc),视频预览支持右键直接保存(Save Video)。
二、Agent 架构质变:Subagents 多智能体编排与响应式唤醒
如果说以前跟 AI 协作像是“和一个人在单线程聊天”,那么现在的 Agent 架构则变成了**“你作为 Tech Lead,指挥一个主 Agent 和一群各司其职的 Subagents(子智能体)并发干活”**。
1. 模块化与动态 Subagents(子智能体)
主 Agent 现在拥有了调用 invoke_subagent 和 define_subagent 的能力,可以将耗时、耗 Token 的子任务拆解并委派给独立的子智能体在后台并行执行:
- 内置专业子智能体:
research:运行在无网络的只读沙箱中,专门负责大规模代码库扫描与文档检索,避免将成百上千行中间搜索结果塞满主对话的上下文窗口(Context Window);self:继承主 Agent 全部工具与模型能力的完整分身,适合在独立上下文中并行处理子模块开发;image-generator:专门负责根据设计描述生成或编辑图片资源并返回文件路径。
- 工作区隔离模式(Workspace Modes):启动子智能体时可指定
inherit(共享当前工作区)、branch(克隆隔离分支工作区)或share(类似 Git Worktree 的共享底层仓库但独立分支模式),彻底杜绝多个 Agent 同时改写同一批文件引发的冲突。 - 动态自定义与
@直连通信:除了在当前会话动态定义子智能体,你还可以在聊天框中使用@语法直接向正在运行或已完成的特定 Subagent 发送指令,而在 v2.26.0 中,自定义 Agent 还支持单独关闭默认提示词与内置工具,且选定的 Agent 会在工作区重载后持久保持。
2. 响应式唤醒机制(Reactive Wakeup)
早期的 Agent 在执行耗时命令或等待后台任务时,往往需要不断轮询(Polling)或阻塞对话。现在的执行引擎升级为事件驱动的响应式唤醒:
- 当主 Agent 发起后台命令(
run_command异步转后台)、设定定时器(schedule)或派出子智能体(invoke_subagent)后,无需写死循环等待; - 一旦子智能体发回消息(
send_message)、后台编译/测试任务结束、或定时器触发,系统会自动唤醒主 Agent 并注入高优先级通知。
三、定制体系重构:Skills、Plugins 与 Hooks 的全面进化
以前我们对 AI 的定制主要停留在写几条 Rules(规则)和 Workflows(工作流)。现在右侧的 Customizations(定制中心) 已经演化为一套完整的五维工程体系:
| 定制类型 | 配置文件 / 目录结构 | 作用域与触发机制 | 核心定位与适用场景 |
|---|---|---|---|
| Rules(规则) | AGENTS.md / GEMINI.md / .agents/rules/*.md | 层级继承 / 20,000 Token 独立预算 | 强制编码规范、API 限制、隐私脱敏与目录级契约 |
| Skills(技能) | skills/<name>/SKILL.md (+ scripts/、references/) | 渐进式披露(按需激活 + /name 命令) | 替代旧版 Workflows,沉淀多步标准作业程序(SOP)与脚本 |
| Plugins(插件) | plugins/<name>/plugin.json | 命名空间打包 / 一键启停 | 将相关的 Skills、Agents、Rules、MCP 与 Hooks 封装为独立套件 |
| Hooks(钩子) | hooks.json | Agent 生命周期事件同步拦截 | 在工具执行前后、模型调用前后或停止时自动运行安全审计与 Linter |
| MCP Servers | mcp_config.json | Stdio 本地进程 / Streamable HTTP | 连接外部数据库、企业内部系统与第三方工具协议 |
1. Workflows 正式废弃,全面升级为 Skills(技能包)
这是一个非常重要的破坏性演进:旧版的 .agents/workflows/*.md 已被标记为废弃(Deprecated),全面由 .agents/skills/<name>/SKILL.md 接替(内置了 migrate-workflows 技能可一键自动迁移旧工作流)。
相比于以前单文件的 Workflow,全新的 Skills 带来了三大核心优势:
- 渐进式披露(Progressive Disclosure,省 Token 神器):如果把所有规范和长篇手册都塞进上下文,大模型很快就会“失忆”。现在,Antigravity 默认只向模型注入每个 Skill 的
name和description;只有当模型判断当前任务需要该技能(或用户主动输入/<skill-name>)时,才会按需读取SKILL.md正文及references/下的参考文档。 - 多文件目录封装:一个标准的 Skill 是一个独立文件夹,除了核心指令文件
SKILL.md,还可以携带辅助脚本(scripts/)、代码示例(examples/)、模板资源(resources/)和深层参考手册(references/):text.agents/skills/deploy-service/ ├── SKILL.md # 必需:包含 YAML frontmatter (name, description) 与步骤说明 ├── scripts/ # 可选:封装复杂的 Shell / Python 自动化脚本 ├── examples/ # 可选:标准实现范例 └── references/ # 可选:长篇 API 文档(仅在需要时由 Agent 按需读取) - 语义自发现 + 斜杠命令双驱动:你既可以在输入框敲
/deploy-service显式调用,也可以直接用自然语言说“帮我部署服务”,Agent 会根据description自动匹配并挂载该技能。
2. Plugins(插件化打包)与 Agent Marketplace(插件市场)
当你为某个业务领域写了多个 Skills、配了专属的 MCP Server、还定了几条 Rules,散落在各处会非常难管理。新引入的 Plugins 机制允许你将它们打包成一个带命名空间的独立单元:
~/.gemini/config/plugins/my-team-kit/
├── plugin.json # 插件清单(名称、描述、Logo、推荐提示词 suggestedPrompts)
├── mcp_config.json # 随插件启停的专属 MCP 服务
├── hooks.json # 随插件注册的生命周期钩子
├── assets/logo.svg # 插件图标
├── skills/ # 插件内置技能包
├── agents/ # 插件内置自定义子智能体 (<agent>.md)
└── rules/AGENTS.md # 插件激活时自动生效的规则- 一处开关,整体联动:在定制面板或通过语言服务切换插件状态时,其内部的 Skills、MCP、Rules 和 Hooks 会作为一个整体同步激活或卸载,无需手动修改全局
mcp_config.json。 - 官方插件市场(Agent Marketplace):现在可以直接在内置市场中检索并安装官方与社区插件(如 Google Workspace 全家桶、Chrome DevTools 自动化调试、Firebase、Gemini API 等),并且内置了多账号授权管理能力(支持为不同插件绑定
personal或work账号并通过AGY_ACCOUNT切换)。
3. Lifecycle Hooks(生命周期钩子:hooks.json)
如果你以前苦恼于“AI 总是忘记在改完代码后跑 ESLint”,或者担心“AI 执行危险的终端命令”,全新的 Lifecycle Hooks 提供了工程级的确定性控制。
通过在 .agents/hooks.json(或插件根目录、甚至在自定义 Markdown Agent 的 frontmatter 中声明 hooks:)配置脚本,你可以在 Agent 运行循环的 6 个关键生命周期节点进行拦截与注入:
| 事件名称 | 触发时机 | 典型应用场景与返回契约 |
|---|---|---|
SessionStart | 新会话启动时执行一次 | 注入欢迎语、初始化环境变量或向对话轨迹注入初始 systemMessage |
PreToolUse | 工具(如 run_command)执行前 | 安全门禁与参数重写:可返回 "allow"、"deny"、"ask",甚至通过 "overwrite" 改写工具参数 |
PostToolUse | 工具执行完成后 | 自动后处理:在 edit_file 或 run_command 后自动触发代码格式化与 Lint 检查 |
PreInvocation | 每次调用大模型推理前 | 动态注入当前轮次的临时提醒(ephemeralMessage)或上下文状态 |
PostInvocation | 大模型返回结果且工具执行完毕后 | 检查输出质量,必要时返回 "terminationBehavior": "force_continue" 强制继续循环 |
Stop | Agent 准备结束当前任务循环时 | 防提前交卷:若检测到后台测试尚未通过,可返回 "decision": "continue" 阻止停止并要求继续修复 |
4. Rules 规则体系的升级:层级自动发现与 20,000 Token 专属预算
在我之前写的 《Antigravity IDE 的 AI 规则体系 (Rules)》 中曾介绍过 Global 与 Workspace 规则。在最新版本中,Rules 体系得到了两项关键加固:
AGENTS.md/GEMINI.md目录级向上寻址:当 Agent 操作某个子目录下的文件时,会自动从当前目录向上遍历至仓库根目录,合并沿途所有的AGENTS.md、GEMINI.md与.agents/rules/*.md,并通过绝对路径自动去重;- 独立的 20,000 Token 规则预算(Context Budgeting):以前如果规则文件写得太长,会挤占宝贵的上下文空间,导致 Skills 和 MCP 工具被挤出窗口。现在系统为常驻规则划拨了独立的 20,000 Token 预算(单文件上限 24KB),超出预算的低优先级规则会自动降级为“文件路径指针”,由 Agent 按需读取,保障核心工具链永不掉线。
5. MCP 协议升级:拥抱 Streamable HTTP
在 mcp_config.json 中,除了经典的本地进程标准输入输出(Stdio)模式外,远程 MCP 服务现已全面升级为 Streamable HTTP 传输协议(直接配置 "url": "https://mcp.example.com/mcp"),正式淘汰了早期不稳定的旧版 HTTP+SSE(/sse)模式。
四、交互体验与工作流升级:Slash 斜杠命令、Generative UI 与 Automations
除了底层架构,日常与 Agent 交互的武器库也丰富了许多。
1. 高阶 Slash Commands(斜杠指令集)
现在的 / 菜单不再只是简单的快捷短语,而是直接切换 Agent 的思考与协作模式:
/plan:针对复杂需求,强制 Agent 先进行多步拆解并生成可审阅的执行计划(Plan Artifact),确认后再动手改代码;/grill-me:灵魂拷问模式。当你只有一个模糊的想法时,让 Agent 化身架构师,通过交互式多轮提问(配合ask_question选择题组件)帮你厘清设计边界与技术选型;/goal:长线死磕模式。适合夜间或后台长任务,Agent 会极度详尽地推进目标,在未完全达成目标前不会轻易停下;/teamwork:多智能体军团模式。针对大型工程任务,自动拉起多个自治子智能体协同分工;/boost:深度思考增强模式。结合多视角推理、策略规划与严格验证,攻克疑难杂症;/compact:当长对话上下文即将耗尽时,一键对历史轨迹进行智能摘要压缩,释放 Token 空间;/learn:当你纠正了 Agent 的某个错误或配通了一套复杂环境后,使用/learn让它将经验持久化沉淀下来,避免下次再犯;/browser:调起内置浏览器自动化能力,进行网页检索、DOM 交互与端到端测试验证。
2. Generative UI(生成式交互界面)与 Artifacts 产物系统
现在的 Agent 不再局限于输出枯燥的纯文本 Markdown:
- Artifacts(结构化文档产物):对于长篇架构报告、重构方案、任务清单,Agent 会在右侧独立的 Artifact 面板中创建并维护文档(支持 GitHub Alerts 警告框、Mermaid 流程图、多图轮播 Carousel、LaTeX 公式以及精确到代码行号的文件跳转链接),并提供 Proceed 按钮供你一键批准执行;
- Generative UI(富交互组件):当需要展示复杂的数据可视化、架构演进推演、交互式参数调节器或交互式教学演示时,Agent 可以直接在对话流中实时渲染出可交互的 HTML/JS 微前端组件。
3. Automations(定时自动化 Sidecar)
左侧边栏原来的“计划任务”正式升级为 Automations(自动化中心)(可通过 /automation 交互式创建):
- 底层机制:每个定时自动化本质上是一个后台常驻的 Cron Sidecar(保存在
~/.gemini/config/sidecars/<id>/sidecar.json),支持带 IANA 时区的精准调度(例如CRON_TZ=Asia/Shanghai 0 9 * * 1-5每个工作日早 9 点); - 独立无人值守会话:每次触发时,它会通过
agentapi new-conversation拉起一个全新的无人值守 Agent 会话,执行你预设的自包含提示词(例如:“每天早上 9 点检查仓库中是否有 CI 失败的 PR 并生成汇总报告”); - 预验证最小权限模型(
access_grants):由于定时任务在后台无人值守运行,所有未提前授权的命令都会被自动拒绝。为此,Antigravity 引入了**“创建时先跑一次测试运行(Test Run)”**的机制——由 Agent 先在当前会话跑通一次流程,自动提取出精确的最小权限集(如command(gh pr list)、read_file(...)、mcp(...),严禁使用command(*)通配符),写入sidecar.json后再到面板中一键开启。
五、安全边界与细粒度权限控制(Sandbox & Permissions)
随着 Agent 自主执行命令和读写文件的能力越来越强,Antigravity 在安全护栏上也做了极其细致的颗粒度拆分,支持**全局(Global)与项目级(Project-Level Override)**双层配置:
- 终端沙箱(Terminal Sandbox):支持将 Agent 执行的终端命令限制在操作系统级安全沙箱内运行,防止误操作破坏宿主环境;
- 工具执行审批策略(Tool Execution Policy):可在
always-proceed(全自动执行)、proceed-in-sandbox(沙箱内自动执行)、request-review(请求人工确认)与strict(严格受限)之间按项目灵活切换; - 非工作区文件访问控制(Non-Workspace File Access):严格管控 Agent 是否可以读写当前 Workspace 目录之外的文件(
allow/ask/deny); - 命令与域名黑白名单(Command & Browser Allowlist/Denylist):精确指定哪些终端命令前缀永远放行或永远拦截,以及限制
/browser工具允许访问的外部域名列表。
六、升级后的个人最佳实践建议
结合本次升级到 v2.26.0 后的深度体验,如果你也准备重构自己的 AI 辅助开发流,推荐按以下步骤演进:
- 运行
/migrate-workflows清理旧包袱:将以前写在.agents/workflows/下的旧工作流全部迁移为标准的.agents/skills/<name>/SKILL.md,利用渐进式披露机制减轻上下文负担; - 善用
AGENTS.md与.agents/rules/分层治理:在项目根目录和核心子模块放置精简的AGENTS.md,将通用底线放在~/.gemini/config/rules/,充分利用 20,000 Token 专属规则预算; - 用 Plugins 聚合团队资产:如果团队内部有多套通用的开发技能、代码规范和内部 MCP 接口,不要再让每个成员手动复制粘贴配置文件,直接打包成一个
plugin.json插件目录进行共享; - 把重复性检查交给 Hooks 与 Automations:将代码格式化、安全命令拦截配置到
hooks.json的PreToolUse/PostToolUse中;将每日构建巡检、周报素材汇总交给/automation定时任务去自动完成; - 复杂任务先
/grill-me或/plan,大工程交由 Subagents 并行:遇到跨模块大需求时,不再一上来就让 AI 盲目写代码,先用斜杠命令对齐设计方案,再让主 Agent 派生research与self子智能体多路并进。