1. 简介
Antigravity 是一款智能体式开发平台,旨在帮助每一个人在智能体优先时代开启无限创造。它包含四款主要产品:Antigravity、Antigravity IDE、Antigravity CLI 和 Antigravity SDK。
在此 Codelab 中,我们将重点介绍面向开发者的 Antigravity IDE。
学习内容
- 了解 Antigravity 平台。
- 安装 Antigravity IDE。
- 探索 Antigravity 编辑器和代理面板。
- 斜杠命令。
- 自定义、MCP 服务器和技能。
所需条件
Antigravity IDE 需要在您的系统(Mac、Windows 和特定 Linux 发行版)上本地安装。此外,您还需要满足以下条件:
- Chrome 网络浏览器。
- Gmail 账号(个人 Gmail 账号)。
报告问题
在完成 Codelab 和使用 Antigravity 的过程中,您可能会遇到问题。
如果您遇到与 Codelab 相关的问题(错别字、说明错误),请点击此 Codelab 左下角的 Report a mistake 按钮来提交 bug:

如需报告与 Antigravity 相关的 bug 或提出与 Antigravity 相关的功能请求,请在 Antigravity 内报告问题。如需报告产品反馈,请点击 Antigravity 产品左下角的“设置”。然后选择选项 Provide Feedback。
2. Antigravity 平台
在重点介绍 Antigravity IDE 之前,我们先来了解一下 Antigravity 平台。
Antigravity 包含 4 款独立产品:
- Antigravity:一款旗舰版独立应用,也是您的指挥中心,可用于并行管理多个本地智能体。
- Antigravity IDE:面向开发者的功能完备的智能体式 IDE。
- Antigravity CLI:一个命令行界面,用于基于终端的代理互动。
- Antigravity SDK:供开发者以编程方式将 Antigravity 集成到其自有系统中的工具。
虽然所有商品都提供对相同底层 Antigravity 智能体的访问权限,但互动程度有所不同。
在 Antigravity 中,您可以使用智能体在更高层面上工作。在与智能体的对话中,您只需说明要构建的内容,让智能体处理代码即可。您可以看到生成的代码,但不一定需要自己深入研究代码。
在 Antigravity IDE 中,您处于较低的编码水平。您仍然可以通过代理面板与代理对话,但也可以全面查看代码,并在生成和修改代码时获得代理的帮助。
在 Antigravity CLI 中,您可以通过命令行界面使用代理。同样,您仍然可以与智能体对话,让它生成和修改代码,但所有操作都在终端中进行。
您可以自行决定选择哪个级别。通常,您会在 Antigravity 中从较高层级开始构建,随着复杂性的增加,您会切换到 Antigravity IDE 进行编码,或切换到 Antigravity CLI 来执行更适合在终端中完成的任务。
3. 安装
如果您已安装 Antigravity 应用,但尚未安装 Antigravity IDE,则应在右上角看到“安装 IDE”按钮:

您可以点击该按钮,也可以直接前往 Antigravity IDE 下载页面,下载并安装适用于您的操作系统(macOS、Windows、Linux)的 Antigravity IDE。
安装完成后,您应该会看到欢迎界面:

使用您的 Google 账号登录,然后选择主题以继续安装。
在某个时间点,系统会询问您要如何使用 Antigravity IDE 代理。在此界面上,您可以调整代理的终端执行政策、评价政策和 JavaScript 执行政策。目前,请选择审核驱动式开发。

在后续界面中,您可以配置扩展程序和 agy-ide 命令行工具。建议您仅安装所需的扩展程序。

Antigravity IDE 还附带插件,这些插件是技能和 MCP 的打包集合,可帮助智能体使用 Google 开发者产品。选择您认为可能对工作有用的内容:

现在,您可以使用 Antigravity IDE 了。
4. Antigravity IDE 界面
首次启动 Antigravity IDE 时,您应该会看到 Antigravity IDE 主界面。

您可以先打开一个本地文件夹。您也可以通过 Terminal 和 New Terminal 菜单项打开新终端。
现在,编辑器、终端和代理已准备就绪:

在编辑器中,您可以在输入代码时获得 Antigravity 的 AI 协助。在智能体面板中,您可以与智能体对话、选择不同的模型,以及参考文件和命令。默认情况下,终端不会提供 AI 辅助功能,但如果您安装 Antigravity CLI,则可以使用 agy 命令启动它,并在终端中获得 AI 辅助功能。
Antigravity 设置
建议您查看右下角的 Antigravity 设置。它包含智能体的基本设置:

高级设置提供了更多设置,例如代理安全模式:

这样,您就可以指定代理在终端命令、文件系统访问等方面的自由度。请务必查看这些设置,并选择适合您项目的设置。
5. Editor
我们来探索一下编辑器。创建一个 Python 文件 hello.py,以探索编辑器功能。
当您在编辑器中输入 hello.py 中的代码时,系统会启动智能自动补全功能,您可以通过按 Tab 键接受建议:

您会获得一个跳至标签页的建议,以便将光标移至代码中的下一个逻辑位置。例如,当您完成 main() 的输入后,编辑器会询问您是否要跳转到 main 方法:

您还会收到一个用于导入的标签页建议,以添加缺失的依赖项:

6. 智能体面板
在右侧,您会看到客服人员侧边栏。如果该按钮不可见,您可以使用 Cmd + L 快捷键切换其显示状态。
您可以选择不同的模型类型,使用 @ 来包含更多上下文信息,例如文件、目录、终端、MCP 服务器或 / 命令(将在后续步骤中介绍)。

与智能体互动最简单的方式是在对话中开始提问,但与智能体互动的方式有很多种。
如果您安装了静态代码检查工具(例如 Pylint),那么在代码中出现语法错误时,您会看到相应错误。如果将光标悬停在编辑器中的某个问题上,然后选择 Explain and fix。系统会打开代理面板,其中包含代理提供的说明和可能的解决方案:

您还可以前往 IDE 的 Problems 标签页,然后选择 Send to Agent,让代理尝试解决这些问题:

您还可以选择包含错误的部分终端输出,然后使用 Cmd + L 将其发送给智能体对话:

与客服人员聊天时,您会在输入窗口顶部看到一些图标:

这些窗口包括“更改概览”(用于查看代码更改)、“终端”(用于查看后台进程)、“制品”和“浏览器”。
7. 制品
Antigravity 的核心功能在于能够在开发过程的每个阶段轻松收集您的反馈。智能体在处理任务时,会在此过程中创建不同的制品:
- 编码前:实施方案和任务列表。
- 生成代码时:代码差异。
- 编码后:通过演练来解释代码的作用并验证结果。
这些制品是 Antigravity 传达其计划和进度的途径。更重要的是,您还可以通过 Google 文档样式的评论向代理提供反馈。这对于有效地引导代理朝着您想要的方向发展非常有用。
我们来尝试构建一个简单的应用,看看如何在此过程中向 Antigravity 提供反馈。
在智能体侧边栏中,尝试以下提示:
Build a TODO list application with Python Flask, SQlite DB, and a CRUD frontend. Keep the application simple
这会触发代理开始规划并生成实施方案。
实施计划
实施方案概述了 Antigravity 打算执行的操作、将使用的技术堆栈以及建议的更改。
几秒钟后,您应该会在对话中看到实施方案:

如果您对结果感到满意,可以点击 Proceed 按钮。如果您想提供反馈,可以在提交实施计划之前打开该计划并添加 Google 文档样式的评论。
任务列表
在实施方案更新后,Antigravity 会创建任务列表。以下是 Antigravity 将遵循的创建和验证应用的具体步骤列表。它可以通过这种方式传达自己的进度:

代码变更
此时,Antigravity 将在新文件中生成一些代码。您可以在代理聊天侧边栏中Accept all或Reject all这些更改,而无需查看详细信息。您还可以点击 Review changes 查看变更详情,并在代码中添加详细注释。
演示
Antigravity 完成编码后,会启动服务器,并可能会打开浏览器来验证应用。它会进行一些手动测试,例如添加任务、更新任务等。最后,它会创建一个演示文件来总结其验证应用所做的工作。这可能包括屏幕截图或包含浏览器录制的验证流程。
您还可以在过程演示中对屏幕截图或浏览器录制内容发表评论。例如,我们可以添加评论 Change the blue theme to orange theme 并提交。提交评论后,Antigravity 会进行更改、验证结果并更新演练
撤消更改
最后但同样重要的是,在完成每个步骤后,如果您对更改不满意,可以选择在对话中撤消更改。只需在对话中选择 ↩️ Undo changes up to this point 即可。
8. 斜杠命令
Antigravity IDE 中提供了内置的斜杠 / 命令。在代理侧边栏中,如果您输入 /,应该会看到命令列表:

/goal 指示代理运行任务直至完成,/schedule 允许将任务安排为周期性任务或一次性任务。/grill-me 有助于与智能体达成计划共识,而 /learn 有助于从对话中提取可重复使用的技能或规则。
不妨试用这些命令,看看它们对您有何帮助。
9. 自定义
Antigravity IDE 提供了多种自定义选项:规则和工作流。
点击右上角的 ...,然后选择 Customizations,您会看到 Rules 和 Workflows:

规则有助于引导代理的行为。您可以提供这些准则,以确保智能体在生成代码和测试时遵循这些准则。例如,您可能希望智能体遵循特定的代码风格,或者始终记录方法。您可以将这些内容添加为规则,然后代理就会将其纳入考虑范围。
工作流是已保存的提示,您可以在与智能体互动时使用 / 按需触发。它们还会引导智能体的行为,但由用户按需触发。
一个很好的类比是,规则更像是系统指令,而工作流更像是您可以根据需要选择的已保存提示。
规则和工作流都可以全局应用或按工作区应用,并保存到以下位置:
- 全局规则:
~/.gemini/GEMINI.md - 全局工作流:
~/.gemini/config/global_workflows/ - 工作区规则:
.agents/rules/ - Workspace 工作流:
.agents/workflows/
我们来在工作区中添加一些规则和工作流。
添加规则
首先,我们来添加一个代码样式规则。前往 Rules,然后选择 +Workspace 按钮。为其命名,例如 code-style-guide,并遵循以下代码样式规则:
* Make sure all the code is styled with PEP 8 style guide
* Make sure all the code is properly commented
其次,我们再添加一条规则,以确保代码以模块化方式生成,并在 code-generation-guide 规则中包含示例:
* The main method in main.py is the entry point to showcase functionality.
* Do not generate code in the main method. Instead generate distinct functionality in a new file (eg. feature_x.py)
* Then, generate example code to show the new functionality in a new method in main.py (eg. example_feature_x) and simply call that method from the main method.
这两条规则已保存并可供使用
添加工作流
我们再定义一个用于生成单元测试的工作流。这样一来,我们就可以在对代码感到满意时触发单元测试(而不是让代理一直生成单元测试)。
前往 Workflows,然后选择 +Workspace 按钮。为其指定一个名称,例如 generate-unit-tests,并添加以下内容:
* Generate unit tests for each file and each method
* Make sure the unit tests are named similar to files but with test_ prefix
工作流也已准备就绪。
试试看
现在,我们来看看规则和工作流的实际应用。在工作区中创建一个框架 main.py 文件:
def main():
pass
if __name__ == "__main__":
main()
现在,前往智能体侧边栏,向智能体提出以下问题:Implement binary search and bubble sort.
过了一两分钟后,您应该会在工作区中看到三个文件:main.py、bubble_sort.py、binary_search.py。您还会注意到,所有规则都已实现:主文件不会杂乱无章,并且包含示例代码;每项功能都在各自的文件中实现;所有代码都有文档记录,并且风格良好:
from binary_search import binary_search, binary_search_recursive
from bubble_sort import bubble_sort, bubble_sort_descending
def example_binary_search():
"""
Demonstrate binary search algorithm with various test cases.
"""
...
def example_bubble_sort():
"""
Demonstrate bubble sort algorithm with various test cases.
"""
...
def main():
"""
Main entry point to showcase functionality.
"""
example_binary_search()
example_bubble_sort()
print("\n" + "=" * 60)
if __name__ == "__main__":
main()
现在,我们对代码感到满意,接下来看看是否可以触发生成单元测试工作流。
前往聊天窗口,开始输入 /generate,Antigravity 已经了解我们的工作流程:

选择 generate-unit-tests,然后按 Enter 键。几秒钟后,您会在工作区中看到新文件:test_binary_search.py、test_bubble_sort.py,其中已实现多项测试!
10. MCP 服务器
Model Context Protocol (MCP) 已成为将代理连接到外部系统的标准。它们在确保代理在数据和集成方面保持接地气方面发挥着关键作用。
Antigravity IDE 支持本地和远程 MCP 服务器。它还附带与多个 MCP 服务器的集成,这些服务器可与 Google Cloud 服务搭配使用,只需点击一下即可安装,并提供一些配置数据。
点击右上角的 ...,然后选择 MCP Servers。系统随即会显示一个对话框,您可以在其中查看 MCP 服务器列表:

您可以点击 Cloud Run 以安装其 MCP 服务器。
如果您点击右上角的 Manage MCP Servers,还可以在 ~/.gemini/config/mcp_config.json 中查看原始 MCP 服务器配置。您还可以在此文件中添加其他自定义 MCP 服务器,然后点击刷新按钮,以查看它们是否已在 Antigravity IDE 中得到识别。
如需使用配置的 MCP 服务器,您可以向 Antigravity 询问需要 MCP 服务器才能完成的任务。例如,您可以启用 cloudrun-mcp 服务器,然后向 Antigravity 提出以下问题:Build and deploy a Cloud Run service。这应会促使 Antigravity 查找并使用 cloudrun-mcp 服务器来配置和部署 Cloud Run 服务。
11. 技能
虽然 Antigravity 的底层模型是强大的通才,但它们并不了解您的具体项目背景或团队标准。将每条规则或工具都加载到智能体的上下文窗口中会导致工具膨胀、成本增加、延迟和混淆。
技能通过渐进式披露来解决此问题。技能是一种专业知识包,在需要时才会激活。只有当您的具体请求与技能说明相符时,才会加载到代理的上下文中。
结构和范围
技能是基于目录的软件包。您可以根据需要,在以下两个范围内定义它们:
- 全局范围 (
~/.gemini/config/skills/):适用于所有 Antigravity 产品(Antigravity、Antigravity IDE、Antigravity CLI)和项目。 - 项目/工作区范围 (
<project-root>/.agents/skills/):这会使技能仅在特定项目内可用。
典型的技能目录如下所示:
my-skill/
├── SKILL.md #(Required) metadata & instructions.
├── scripts/ # (Optional) Python or Bash scripts for execution.
├── references/ # (Optional) text, documentation, or templates.
└── assets/ # (Optional) Images or logos.
现在,我们来添加技能。
代码审核技能
这是一个仅包含指令的技能,也就是说,我们只需要创建 SKILL.md 文件,其中将包含元数据和技能指令。我们来创建一个技能,该技能可向代理提供详细信息,以便代理审核代码更改是否存在 bug、样式问题和最佳实践问题。
在项目文件夹中创建一个将包含技能的目录:
mkdir -p .agents/skills/code-review
在刚刚创建的项目文件夹(例如 .agents/skills/code-review)中创建一个 SKILL.md 文件,其中包含以下内容:
---
name: code-review
description: Reviews code changes for bugs, style issues, and best practices. Use when reviewing PRs or checking code quality.
---
# Code Review Skill
When reviewing code, follow these steps:
## Review checklist
1. **Correctness**: Does the code do what it's supposed to?
2. **Edge cases**: Are error conditions handled?
3. **Style**: Does it follow project conventions?
4. **Performance**: Are there obvious inefficiencies?
## How to provide feedback
- Be specific about what needs to change
- Explain why, not just what
- Suggest alternatives when possible
请注意,上面的 SKILL.md 文件顶部包含元数据(名称和说明),然后是指令。当代理加载时,它只会读取技能的元数据,并且仅在需要时才会加载完整的技能指令。
让我们验证一下技能。与 Antigravity 开始新对话,询问已安装哪些技能。您应该会看到 code-review 技能:

试试看
在 中创建一个名为 demo_bad_code.py 的新文件,其中包含以下内容:
import time
def get_user_data(users, id):
# Find user by ID
for u in users:
if u['id'] == id:
return u
return None
def process_payments(items):
total = 0
for i in items:
# Calculate tax
tax = i['price'] * 0.1
total = total + i['price'] + tax
time.sleep(0.1) # Simulate slow network call
return total
def run_batch():
users = [{'id': 1, 'name': 'Alice'}, {'id': 2, 'name': 'Bob'}]
items = [{'price': 10}, {'price': 20}, {'price': 100}]
u = get_user_data(users, 3)
print("User found: " + u['name']) # Will crash if None
print("Total: " + str(process_payments(items)))
if __name__ == "__main__":
run_batch()
在 Antigravity 中打开特定项目中的新对话,然后输入以下提示:review the @demo_bad_code.py file。
智能体应识别 code-review 技能,加载详细信息,然后根据 code-review/SKILL.md 文件中的说明执行操作。
以下是输出示例:

12. 总结
恭喜!您已成功安装、配置并探索了 Antigravity IDE 的主要功能!
如需详细了解 Antigravity 平台,请参阅以下 Codelab 和参考文档。
其他 Codelab
- Google Antigravity 使用入门
- 使用 Google Antigravity 进行构建
- Antigravity CLI 实践
- 使用 Antigravity 在 Google Cloud 上构建和部署
参考文档
- 官方网站:https://antigravity.google/
- 文档:https://antigravity.google/docs/home
- 应用场景:https://antigravity.google/use-cases
- 下载:https://antigravity.google/download
- Google Antigravity YouTube 频道:https://www.youtube.com/@googleantigravity