GSP1348
概览
氛围编程 (vibe coding) 是一种新兴的软件开发实践,它使用人工智能 (AI) 根据自然语言提示生成功能代码,从而加快开发速度,并让应用构建变得更加容易,对于那些编程经验有限的用户尤其如此。
这个词最早由 AI 研究人员 Andrej Karpathy 在 2025 年初提出,用于描述一种新的编程流程。其中开发者的主要角色从逐行编写代码转变为更多地通过对话过程指导 AI 助理(例如 Antigravity CLI)生成、完善和调试应用。这样,您就可以腾出时间和精力思考大方向或应用的主要目标,把实际编写代码的工作交给 AI。
Antigravity CLI 是一款开源 AI 智能体,可将 Gemini 的强大功能直接引入您的终端。Antigravity CLI 项目是开源的,您可以查看公开路线图,详细了解功能增强、即将推出的功能和 bug 修复。
学习内容
在本实验中,您将学习如何执行以下任务:
- 配置 Antigravity CLI 以供使用。
- 与 Antigravity CLI 互动。
- 探索 Antigravity CLI 内置工具。
- 在 Shell 模式下使用 Antigravity CLI。
- 了解如何在 Antigravity CLI 中配置 MCP 服务器。
- 使用 Antigravity CLI 进行氛围编程。
所需条件
本实验完全可以在 Google Cloud Shell 中运行,因为 Google Cloud Shell 中预安装了 Antigravity CLI。
本实验适合不同水平的用户和开发者(包括新手)。
设置和要求
点击“开始实验”按钮前的注意事项
请阅读以下说明。实验是计时的,并且您无法暂停实验。计时器在您点击开始实验后即开始计时,显示 Google Cloud 资源可供您使用多长时间。
此实操实验可让您在真实的云环境中开展实验活动,免受模拟或演示环境的局限。为此,我们会向您提供新的临时凭据,您可以在该实验的规定时间内通过此凭据登录和访问 Google Cloud。
为完成此实验,您需要:
- 能够使用标准的互联网浏览器(建议使用 Chrome 浏览器)。
注意:请使用无痕模式(推荐)或无痕浏览器窗口运行此实验。这可以避免您的个人账号与学生账号之间发生冲突,这种冲突可能导致您的个人账号产生额外费用。
注意:请仅使用学生账号完成本实验。如果您使用其他 Google Cloud 账号,则可能会向该账号收取费用。
激活 Cloud Shell
Cloud Shell 是一种装有开发者工具的虚拟机。它提供了一个永久性的 5GB 主目录,并且在 Google Cloud 上运行。Cloud Shell 提供可用于访问您的 Google Cloud 资源的命令行工具。
-
点击 Google Cloud 控制台顶部的激活 Cloud Shell
。
-
在弹出的窗口中执行以下操作:
- 继续完成 Cloud Shell 信息窗口中的设置。
- 授权 Cloud Shell 使用您的凭据进行 Google Cloud API 调用。
如果您连接成功,即表示您已通过身份验证,且项目 ID 会被设为您的 Project_ID 。输出内容中有一行说明了此会话的 Project_ID:
Your Cloud Platform project in this session is set to {{{project_0.project_id | "PROJECT_ID"}}}
gcloud 是 Google Cloud 的命令行工具。它已预先安装在 Cloud Shell 上,且支持 Tab 自动补全功能。
- (可选)您可以通过此命令列出活跃账号名称:
gcloud auth list
- 点击授权。
输出:
ACTIVE: *
ACCOUNT: {{{user_0.username | "ACCOUNT"}}}
To set the active account, run:
$ gcloud config set account `ACCOUNT`
- (可选)您可以通过此命令列出项目 ID:
gcloud config list project
输出:
[core]
project = {{{project_0.project_id | "PROJECT_ID"}}}
注意:如需查看在 Google Cloud 中使用 gcloud 的完整文档,请参阅 gcloud CLI 概览指南。
任务 1. 根据您的需求配置 Antigravity CLI
为 Antigravity CLI 启用 Cloud Logging
为了支持对本实验中的某些任务进行评分,您需要在 Antigravity CLI 上启用 Cloud Logging。
- 在 Cloud Shell 中,运行以下命令来为 Antigravity CLI 配置 Cloud Logging:
mkdir -p ~/.antigravity
cat < ~/.antigravity/settings.json
{
"project": "{{{ project_0.project_id }}}",
"telemetry": {
"enabled": true,
"target": "gcp",
"otlpEndpoint": "http://{{{ project_0.startup_script.external_ip }}}:4318",
"otlpProtocol": "http",
"logPrompts": true,
"useCollector": true
}
}
EOF
您可能会注意到,AGENTS.md (or GEMINI.md) 文件示例提供了一些一般说明,以及有关编码风格、依赖项管理等方面的具体说明。同样,您也可以根据自己的编程语言、框架、编码风格和其他项目特定的偏好来编写自己的指南。
AGENTS.md (or GEMINI.md) 文件是让 Antigravity CLI 遵循您的偏好的关键。如需了解详情,可以参阅 Practical Antigravity CLI 系列。其中深入介绍了如何为项目自动生成此类文件、自定义系统提示等。
设置项目专用配置
在 Antigravity CLI 中开始操作之前,您需要创建一个文件夹作为主文件夹,您的所有项目都可以在这个文件夹中创建。这是 Antigravity CLI 的起始工作目录,不过它可能会根据需要引用系统上的其他一些文件夹。
- 在 Cloud Shell 中运行以下命令,创建示例文件夹
antigravity-projects,接着进入该文件夹:
export GOOGLE_CLOUD_PROJECT="{{{ project_0.project_id }}}"
mkdir antigravity-projects
cd antigravity-projects
- 现在运行以下命令,创建一个包含
settings.json 配置文件的 .gemini 子目录:
mkdir -p ~/.antigravity
echo '{
"project": "{{{ project_0.project_id }}}",
"telemetry": {
"enabled": true,
"target": "gcp",
"otlpEndpoint": "http://{{{ project_0.startup_script.external_ip }}}:4318/v1/logs",
"otlpProtocol": "http",
"logPrompts": true,
"useCollector": true
}
}' > ~/.antigravity/settings.json
Cloud Shell 中已经预安装 Antigravity CLI。
- 如需开始与 Antigravity CLI 互动,请切换到 Cloud Shell 终端中的 ✦ Antigravity CLI 标签页。
首次使用 Antigravity CLI 时,系统可能会要求您选择一种身份验证方法。
- 如果系统提示您选择身份验证模式,请按 2 选择 2. Use Cloud Shell user credentials(使用 Cloud Shell 用户凭据)。
如果没有出现提醒您进行身份验证的提示,也没关系。您可以忽略此步骤并继续实验。
成功通过身份验证后,您就可以开始使用 Antigravity CLI 了。示例屏幕截图如下所示:
现在,您可以退出 Antigravity CLI,因为在接下来的任务中,您将开始更深入地使用该模型。
- 按 CTRL+D 或按两次 CTRL+C,或者发出
/quit 命令,退出 Antigravity CLI。
任务 2. 与 Antigravity CLI 互动
在此任务中,您将开始使用 Antigravity CLI。为了确保本实验中的评分功能稳定运行,您需要先安装指定版本的 Antigravity CLI。接着,在刚刚专门为项目创建的文件夹中,启动一个新的 Gemini 对话。
- 在 Cloud Shell 中,运行以下命令以全局安装相关版本的 Antigravity CLI:
npm install -g @google/antigravity-cli@0.6.1
注意:您可以在 Antigravity CLI 中使用 /model 命令尝试其他模型。
在 Antigravity CLI 运行期间,您可以在 Antigravity CLI 终端右下角确认当前运行的模型,如以下屏幕截图所示:
使用非互动模式
如果感兴趣,您也可以以非互动模式运行 Antigravity CLI。在非交互模式下,您直接向 Antigravity CLI 提供提示,它会立即做出回应,而不会打开 Antigravity CLI 交互式终端。如果您计划以自动方式在脚本或任何其他自动化流程中使用 Antigravity CLI,这个模式非常有用。
-
退出会话(按 Ctrl+D 或按两次 Ctrl+C,或者发出 /quit 提示)。
-
在 Cloud Shell 中,运行以下命令并加上 -p 参数:
gemini -p "What is the gcloud command to deploy to Cloud Run?"
请注意,在非交互模式下,无法在对话中追问问题。在此模式下,您也无法授权工具(包括 WriteFile)或运行 shell 命令。
点击检查我的进度以验证是否完成了以下目标:
使用 Gemini 非交互模式
任务 4. 在 Shell 模式下使用 Antigravity CLI
也可以直接在 Antigravity CLI 中使用 Shell 模式。
- 使用以下命令再次启动 Antigravity CLI:
gemini
- 在提示框中输入
!,切换到 Shell 模式。
在 shell 模式下,您会看到提示的开头有 !,如下所示:
在 shell 模式下,您可以直接使用 pwd、cat 和 ls 等标准命令。
现在,我们尝试通过 cat 命令输出文件的内容。
- 向 Antigravity CLI 发出以下提示:
cat finance-news-today.txt
输出示例:
- 再次输入
! 或按 ESC 键退出 Shell 模式。
点击检查我的进度以验证是否完成了以下目标:
在 Shell 模式下使用 Antigravity CLI
任务 5. 配置 Model Context Protocol (MCP) 服务器
MCP 服务器是一种应用,它通过 Model Context Protocol 向 Antigravity CLI 公开工具和资源,使 Antigravity CLI 能够与外部系统和数据源进行交互。MCP 服务器充当 Gemini 模型与本地环境或其他服务(如 API)之间的桥梁。
MCP 服务器使 Antigravity CLI 能够发现和执行工具,从而扩展 Antigravity CLI 的功能,使其能够执行超出内置功能范围的操作,例如与数据库、API、自定义脚本或专用工作流进行交互。
Antigravity CLI 支持配置 MCP 服务器,以发现和使用自定义工具。
- 如果您已启动 Antigravity CLI,可以按如下方式通过
/mcp 命令查看配置的 MCP 服务器:
如果您尚未配置任何 MCP 服务器,系统会启动 Antigravity CLI 的 MCP 服务器文档。
您可以在 ~/.antigravity/settings.json 文件中或在项目的根目录中配置 MCP 服务器。
如果您已经在运行 Antigravity CLI,可以按 CTRL+D 或按两次 CTRL+C 退出对话。
- 在 Cloud Shell 终端中,点击工具栏上的 Open Editor(打开编辑器),启动 Cloud Shell Editor。
- 由于
.gemini 子目录默认处于隐藏状态,如果要显示隐藏的文件和目录,请依次选择 View(查看)> Toggle hidden files(显示/不显示隐藏文件)。
- 在 Cloud Shell Editor 中,找到特定文件夹 antigravity-projects 中的
~/.antigravity/settings.json 文件,并将其打开。
在 ~/.antigravity/settings.json 文件中,您需要配置 mcpServers 配置块。它采用以下语法:
"mcpServers": {
"server_name_1": {},
"server_name_2": {},
"server_name_n": {}
}
您将在下一个任务中配置此文件以支持 MCP 服务器。
根据参考文档,每项服务器配置都支持以下属性:
必须提供(可以是以下其中一项)
-
command(字符串):用于 Stdio 传输的可执行文件路径
-
url(字符串):SSE 端点网址(例如“http://localhost:8080/sse”)
-
httpUrl(字符串):HTTP 流式传输端点网址
可选
-
args(字符串 []):Stdio 传输的命令行参数
-
headers(对象):使用 url 或 httpUrl 时自定义的 HTTP 标头
-
env(对象):服务器进程的环境变量。值可以使用 $$VAR_NAME 或 $${VAR_NAME} 语法引用环境变量
-
cwd(字符串):Stdio 传输的工作目录
-
timeout(数字):请求超时单位为毫秒(默认值:600,000 毫秒 = 10 分钟)
-
trust(布尔值):如果为 true,则绕过此服务器的所有工具调用确认(默认值:false)
-
includeTools(字符串 []):要在该 MCP 服务器中包含的工具名称列表。如果指定了此参数,则此服务器仅提供此处列出的工具(白名单行为)。如果未指定,则默认启用服务器中的所有工具。
-
excludeTools(字符串 []):要从该 MCP 服务器中排除的工具名称列表。此处列出的工具将无法供模型使用,即使服务器公开了这些工具也是如此。注意:excludeTools 的优先级高于 includeTools - 如果某个工具同时位于这两个列表中,则会被排除。
注意:在继续操作之前,请务必注意,在连接或集成第三方 MCP 服务器时,您应谨慎操作。为保护您的信息和系统完整性,建议您仅集成来自可信且经过彻底审查的来源的 MCP 服务器。
设置本地 Git MCP 服务器
官方的模型上下文协议 (MCP) Git 服务器 (git-mcp-server) 允许 Antigravity CLI 直接在本地存储库上执行 Git 版本控制操作。
在本节中,您将设置一个本地 Git 存储库并在 Antigravity CLI 的配置文件中配置 Git MCP 服务器。
- 在 Cloud Shell 编辑器集成终端中,运行以下命令以创建并初始化示例 Git 存储库:
mkdir -p ~/event-talks-app
cd ~/event-talks-app
git init
git config user.name "Student"
git config user.email "student@qwiklabs.net"
echo "# Event Talks App" > README.md
git add README.md
git commit -m "Initial commit"
- 在终端中运行以下命令以创建包含
git MCP 服务器配置的 mcp_config.json:
mkdir -p ~/.antigravity ~/.gemini
cat < ~/.antigravity/mcp_config.json
{
"mcpServers": {
"git": {
"command": "npx",
"args": [
"-y",
"git-mcp-server",
"$HOME/event-talks-app"
],
"trust": true
}
}
}
EOF
cp ~/.antigravity/mcp_config.json ~/.gemini/mcp_config.json
jq -s '.[0] * .[1]' ~/.antigravity/settings.json ~/.antigravity/mcp_config.json > temp.json && mv temp.json ~/.antigravity/settings.json
cp ~/.antigravity/settings.json ~/.gemini/settings.json
- 运行以下命令以启动 Antigravity CLI:
agy
- 要验证 Git MCP 服务器是否已加载且其工具是否已激活,请输入
/mcp 命令:
/mcp
/mcp 命令输出显示活动的 git MCP 服务器以及可用工具(例如 git_status、git_log、git_add 和 git_commit)。
注意:当 Antigravity CLI 提示请求权限时,请按 ENTER 键选择 允许一次(或 总是允许)。
- 提示 Antigravity CLI 检查存储库状态:
Check the git status of the repository at /home/student/event-talks-app using the git MCP server tools.
点击检查我的进度。
使用 Git MCP 工具验证本地存储库
- 现在提示 Antigravity CLI 添加新文件并将更改提交到 Git:
Create a new file named talks.json in /home/student/event-talks-app with sample event schedule data, add it to git, and commit the changes with the message "Add talks schedule".
点击检查我的进度。
使用 Git MCP 工具创建提交
现在,Github MCP 服务器已配置完毕,您可以按如下方式使用自然语言查询来处理您的一个 Github 项目:
- Describe the <repo-name> to me?
- Clone the <repo-name> on my local machine.
- Describe @<file-name> or @<directory-name>/
- What are the different components of this repository?
- I have made the necessary changes. Can you push the changes to Github and use the Github MCP Server tools to do that.
更多 MCP 服务器
下面列出了您可能感兴趣的其他 MCP 服务器:
有关设置这些 MCP 服务器的说明,请参阅此博文。
任务 6. 使用 Antigravity CLI 进行氛围编程
在本任务中,您将使用 Antigravity CLI 进行氛围编程,编写网站代码。您要求 Antigravity CLI 生成网站结构并进行设置。
注意:即使您在指令中非常明确地说明了要求,模型在进行氛围编码时有时也可能会偏离您的要求、产生幻觉或陷入死循环。如果模型卡住了,请按 ESC,然后根据需要使用更新后的说明提示模型,或重复之前的说明。
- 在 Antigravity CLI 中,发出以下提示:
Generate a website for a 1-day event filled with technical talks. There are going to be 6 talks in a single track of 1 hour each. Each talk has the following information: title, 1 or maximum of 2 speakers, category (1 or maximum of 3 keywords), duration and a description. The website has a single page where users can see the schedule for the entire day with the timings. There will be one lunch break of an hour and the event starts at 10:00 AM. Keep a 10 minute transition between talks. I would like to use Node.js on the server side and standard HTML, JavaScript, and CSS on the front-end. The users should be able to search the talks based on category.
I would like you to proceed in the following way:
1. Plan out how you would design and code this application.
2. Ask me for any clarifications along the way.
3. Once I am fine with it, do generate the code, and compile the website into a single, serverless HTML file.
4. Provide me with instructions to run and test the website (serve the index.html file to me using a simple Python server so I can preview it locally).
Antigravity CLI 此时会执行一系列操作。
- 如果模型希望您确认接下来应采取哪些操作,或者询问接下来要做什么,请使用以下提示:
Create the website using placeholder data and proceed as per your plan suggestions.
注意:Antigravity CLI 可能会出现超时或使用错误的用户名等情况。请根据具体情况与它互动并提出修复建议。
接下来的几个提示和回答仅作为流程示例。您可能会得到完全不同的回答。
您需要根据需要与 Antigravity CLI 进行交互。
有时,Antigravity CLI 可能会建议执行某个命令。在本实验中,您应该控制任务的执行。
如果模型建议运行某个命令,您可以按 ESC 键退出,并使用如下提示重新引导模型:
按照说明启动服务器并导航到首页后,您会看到一个示例网站,如图所示(如果您使用了相同的提示,则应该会看到一个类似的网站变体):
您可以继续在 Antigravity CLI 的帮助下进行更多更改。
- 创建仓库。
- 使用多个 Git 命令 (init、add、commit) 来管理本地 Git 代码库。
- 设置 Git 远程库并执行推送。
注意:Antigravity CLI 可能会出现超时或使用错误的用户名等情况。请根据具体情况与它互动并提出适当的修复建议。 如果 Antigravity CLI 在推送更改时遇到身份验证问题,请提醒它使用 Github MCP 服务器的工具。
如果一切顺利,您应该已经创建了一个 GitHub 代码库。示例屏幕截图如下所示:
太棒了!您已在 Antigravity CLI 的帮助下创建了一个网站,并将更改推送到了您创建的 Github 代码库。
注意:在本实验中,您并没有为项目提供方便用户使用的 README.md 文件,但在实际生产环境中,建议您提供此文件。如有需要,您可以让 Antigravity CLI 代劳。
点击检查我的进度以验证是否完成了以下目标:
恭喜!
您已成功探索了 Antigravity CLI 及其功能,并将其应用到了一个用例中。
后续步骤/了解详情
上次更新手册的时间:2025 年 10 月 16 日
上次测试实验的时间:2025 年 10 月 16 日
版权所有 2026 Google LLC 保留所有权利。Google 和 Google 徽标是 Google LLC 的商标。其他所有公司名和产品名可能是其各自相关公司的商标。