逐行拆解Google Antigravity系统提示词:顶级AI IDE是怎么"调教"大模型的

cover

你有没有想过一个问题:为什么同样是调用大模型,Cursor 写出来的代码像实习生的作品,而 Google Antigravity 生成的 Web 应用却自带”高级感”?

答案不在模型里,在提示词里。

2025 年底,Google 发布了代号”反重力”的 AI 编码 IDE——Antigravity。它基于 Gemini 3 Pro,被称为”Cursor 终结者”。公测期间全功能免费,一时间全网疯抢。

然后,有人把它的系统提示词(System Prompt)全部扒了出来

GitHub 上至少有三份完整的泄露版本。安全研究员 Johann Rehberger(Embrace The Red 博主)、开发者 anthfgreco、CypherpunkSamurai 先后公开了从会话中提取的完整提示词。长度超过 2 万字,包含 20+ 个工具定义、完整的 Web 开发美学指南、工作流机制、安全策略——几乎是 Google 如何”调教”Gemini 做 Agent 的完整教科书。

今天我们逐层拆解。看完这篇文章,你不仅能理解 Antigravity 为什么这么强,还能学到一套顶级提示词工程的方法论。

泄露了什么:12 层提示词架构

Antigravity 的系统提示词不是一段话,是一个分层架构。整理下来,大概分为 12 层:

层级 内容 作用
1 工具定义(Tools) 20+ 个工具的完整参数描述
2 身份设定(Identity) “你是 Antigravity,由 Google DeepMind 设计”
3 工具调用指南 路径必须是绝对路径等规则
4 Web 应用开发指南 美学标准、技术栈选择、SEO
5 临时消息机制 系统注入的紧急指令
6 通信风格 Markdown 格式、主动性边界
7 用户信息 操作系统、工作区路径
8 用户自定义规则 .agent/rules/ 目录下的项目规则
9 工作流定义 .agent/workflows/ 下的可复用流程
10 上下文断点(Checkpoint) 长对话的状态恢复机制
11 对话历史 最近 20 次对话的摘要
12 消息元数据 当前时间、光标位置、打开的文件

这不是随便写的提示词,这是一套操作系统级别的 Agent 指令集

第一层:工具定义——Agent 的”手和脚”

Antigravity 定义了 20 多个工具,每个工具都有精确的参数描述和使用场景。这是 Agent 能”做事”的基础。

几个关键工具:

browser_subagent:浏览器子代理

这是 Antigravity 最独特的能力。它可以启动一个独立的浏览器子代理,让 AI 像人一样操作网页——点击、输入、导航、截图、录制视频。

提示词里的描述很有意思:

“The subagent is an agent similar to you, with a different set of tools, limited to tools to understand the state of and control the browser.”

子代理是一个独立的 Agent,有自己的工具集,专门控制浏览器。主 Agent 通过下发”任务描述”来指挥它,就像一个经理给下属派活。

而且所有浏览器操作自动录制为 WebP 视频保存到 artifacts 目录。这意味着 Antigravity 不仅能操作浏览器,还能录制演示视频。

generate_image:内置 AI 绘图

Antigravity 内置了图片生成工具,可以直接用文字描述生成 UI 设计稿或应用素材。提示词要求:

“Don’t use placeholders — use generate_image tool for images.”

不要用占位图,直接用 AI 生成真实图片。这就是为什么 Antigravity 生成的 Web 应用看起来比 Cursor 的”完成度”高得多——它不是在写代码,它是在”设计+开发”一体化交付。

codebase_search vs grep_search:语义搜索 + 精确搜索

Antigravity 有两套搜索工具。codebase_search 做语义搜索,适合模糊查询;grep_search 用 ripgrep 做精确匹配,适合找变量名或模式。

提示词明确区分了两者的适用场景,避免 Agent 用错工具。这个设计很聪明——给 AI 选择权,但用提示词约束选择范围。

第二层:身份设定——只用了 4 句话

整个身份设定出奇地简短:

“You are Antigravity, a powerful agentic AI coding assistant designed by the Google Deepmind team working on Advanced Agentic Coding. You are pair programming with a USER to solve their coding task.”

只有两个关键信息:你是谁(Antigravity),你在做什么(结对编程)。

没有冗长的角色扮演指令,没有”你是一个专业的…”之类的废话。4 句话,清晰定义角色和场景。

这和之前泄露的 OpenClaw 系统提示词一样——真正的顶级提示词,身份设定部分往往极其精简。当模型足够强时,不需要长篇大论来”催眠”它。

第三层:美学暴政——“看起来简单就是失败”

这一层是 Antigravity 提示词里最”暴力”的部分。

Google 在 Web 应用开发指南里用了大写字母强调:

“CRITICAL REMINDER: AESTHETICS ARE VERY IMPORTANT. If your web app looks simple and basic then you have FAILED!”

翻译成中文:美学至关重要。如果你的 Web 应用看起来简单和基础,那你就失败了!

这条指令解释了为什么 Antigravity 生成的页面总是”自带高级感”。它不是模型更好,而是提示词逼着模型做设计。

具体要求包括:

  • 精选配色方案,使用现代字体(Inter、Roboto、Outfit)
  • 平滑渐变、微动画,hover 效果和交互元素
  • 不要 MVP,要 Premium Design——不是做最小可用产品,是做精品
  • 先建立设计系统(index.css),再写组件,最后组装页面

这套流程完全是专业前端团队的工作方式。Google 把一个设计总监的标准塞进了提示词里。

一位分析师在看了泄露的提示词后评论:**”It’s a sign of a frustrated prompt engineer, I get it lol.”** 看得出来写这段提示词的工程师被 AI 生成的丑陋界面折磨过。

第四层:工作流机制——可复用的”自动化脚本”

Antigravity 支持用 Markdown 文件定义工作流,存放在 .agent/workflows/ 目录下:

1
2
3
4
5
6
7
---
description: how to deploy the application
---

1. Run `npm run build`
2. Run `npm run deploy` // turbo
3. Verify deployment status

有两个特殊注解:

  • // turbo:标记在某一步上面,表示这一步可以自动执行,不需要用户批准
  • // turbo-all:标记在工作流的任何位置,表示所有步骤都可以自动执行

这是一个极其优雅的设计。用户可以通过一个简单的注释来控制自动化的粒度——有些步骤需要人工确认(比如删除文件),有些可以放心自动跑(比如运行测试)。

用户还可以通过 /slash-command 的方式触发工作流。这和 Claude Code 的 Skills 机制非常相似——都是用声明式文件定义 Agent 的行为模式。

第五层:Checkpoint 和上下文管理

长对话是 Agent 的天敌。当对话长到几千条消息时,早期的上下文会被遗忘。

Antigravity 的解决方案是 Checkpoint 机制。当对话变长时,系统会自动注入一个”断点”,包含:

  • 用户的目标摘要
  • 之前会话的摘要
  • 代码交互摘要(编辑过哪些文件、看过哪些文件、学到了什么)

这不是简单的”总结历史消息”,而是结构化的状态恢复。Agent 不需要重新阅读所有历史,只需要读 Checkpoint 就能恢复上下文。

另一个细节:Antigravity 会记录用户最近 20 次对话的摘要,包括标题、时间戳和目标摘要。这意味着 Agent 有跨会话的”记忆”能力——它知道你昨天在做什么项目、遇到了什么问题。

第六层:每条消息的实时元数据

这是最容易被忽视但影响巨大的设计。

Antigravity 在每条用户消息中注入实时元数据:

1
2
3
4
5
当前时间:2026-03-19T17:20:00+08:00
当前打开的文件:src/components/Header.tsx
光标位于第 42 行
其他打开的文件:package.json, README.md
浏览器打开的页面:http://localhost:3000

这意味着当你说”这个函数有 bug”时,Antigravity 已经知道你在看哪个文件、光标在哪一行。它不需要你指定文件路径,不需要你粘贴代码——它从元数据中就能推断出你在说什么。

这就是 Antigravity 体验比传统 AI 聊天好得多的原因之一。上下文不是用户给的,是系统自动注入的。

安全问题:提示词泄露 + 提示注入

讽刺的是,这么精心设计的提示词系统,安全性却漏洞百出。

提示词泄露方面,至少有三种方式被成功提取:

  • 直接要求 Agent 输出系统提示词
  • 通过报错信息暴露内部路径和日志
  • 从 Agent 的”内心独白”(rrthought)中捕获

提示注入方面,安全公司 PromptArmor 演示了更危险的攻击:在一个看似正常的网页中隐藏 1 号字体的恶意提示词。当 Antigravity 的浏览器子代理访问这个页面时,恶意指令被注入——Agent 被操控打开一个恶意 URL,将用户的凭证和代码通过 URL 参数外泄。

整个攻击链利用的恰恰是 Antigravity 引以为傲的”浏览器子代理”功能。越强大的能力,越大的攻击面。

安全研究员 Johann Rehberger 评论说:**”即使是只读工具也可能有副作用,比如数据泄露。自动工具调用往往是可被利用的。”**

给我们的启示:5 条顶级提示词工程原则

从 Antigravity 的提示词中,我们可以提炼出 5 条可以直接借鉴的原则:

1. 工具描述要精确到使用场景。 不是只告诉 AI 工具能做什么,还要告诉它什么时候该用、什么时候不该用。Antigravity 的 codebase_search 描述里明确写了”不适合广泛问题”——这种负面约束比正面描述更有效。

2. 美学要求要写成硬性标准。 “做得好看一点”是无效指令。”使用 Inter 字体、现代配色、微动画、hover 效果”才是有效指令。Antigravity 的提示词告诉我们:把感性标准翻译成具体的技术要求。

3. 身份设定越短越好。 4 句话就够了。长篇大论的角色描述反而会稀释核心指令的注意力权重。

4. 上下文自动注入比要求用户提供更好。 与其让用户粘贴代码,不如自动注入当前打开的文件和光标位置。减少用户的输入成本,提升 Agent 的理解准确度。

5. 自动化粒度交给用户控制。 // turbo// turbo-all 的设计思路值得所有 Agent 产品学习——让用户用最简单的方式控制自动化的边界。

写在最后

Google Antigravity 的系统提示词泄露,意外地给整个 AI 开发社区上了一堂课。

它告诉我们,顶级 AI 产品的差异化,往往不在模型层面,而在提示词工程层面。 同样的 Gemini 3 Pro,放在 Google AI Studio 里是个普通聊天机器人,加上 2 万字的系统提示词就变成了”Cursor 终结者”。

提示词就是 Agent 的”灵魂”。模型是硬件,提示词是操作系统。

当然,这次泄露也暴露了一个尴尬的现实:目前没有任何 AI 产品能真正保护自己的系统提示词不被提取。 无论是 ChatGPT、Claude、Cursor 还是 Antigravity,提示词泄露已经成为常态。

这不一定是坏事。当所有人的”秘密武器”都被摊在阳光下时,竞争的焦点就回到了真正重要的地方——谁能更好地理解用户需求,谁能把工程做得更扎实。


你试过 Google Antigravity 吗?看完这份提示词你最受启发的是哪一点?如果让你给自己的 AI 工具写系统提示词,你会怎么设计?欢迎在评论区分享你的想法。