跳至主要内容

使用 Gemini 3.1 Pro 构建:终极编码智能体教程

借助 Gemini 3.1 Pro 构建可用于生产的应用,逐步掌握 Gemini CLI、自定义技能、上下文与记忆控制、测试,以及 Vercel 部署。
· 13分钟 阅读

使用 AI 探索

Gemini 3.1 Pro 是 Google 面向推理、编程与多模态理解的最先进基础模型。它在 Gemini 3 系列之上进一步增强了长上下文表现、工具使用能力,以及更可靠的逐步推理。

在主要的编码与推理基准上,它始终位列顶尖模型之列,是当下严肃的软件开发与智能体工作流的强力之选。

在这份终极指南中,我将向您展示使用 Gemini 3.1 Pro 进行智能体编码的最佳方式。您将学习如何安装并配置全新的 Gemini CLI,设置扩展、创建自定义技能,并以“vibe coding”的方式构建一款名为 Tinder for Geeks 的应用。我还会演示如何创建持久上下文、修改记忆、增加可靠性与防护、在本地测试您的应用,并将其部署到云端。

此外,也推荐阅读我们的指南,了解 Google 最新的图像生成模型 Nano Banana 2。

Gemini 3.1 Pro 智能体技术栈

使用 Gemini 3.1 Pro 进行智能体编码主要有四种方式。正确选择取决于您的经验水平,以及您希望对技术栈与工作流拥有多大的掌控力。

  1. Google AI Studio Build:基于浏览器的引导式构建器,可快速用 Gemini 3.1 Pro 原型开发与“vibe coding”。
  2. Gemini Code Assist for VS Code:在 IDE 中提供智能体式工作流的编辑器内 AI 编码助手。
  3. Google Antigravity:面向端到端自主智能体编码的 AI 原生开发环境。
  4. Gemini CLI:强大的终端智能体,让您全面掌控上下文、记忆、自定义技能与工作流。

1. Google AI Studio Build

Google AI Studio Build

Build 模式位于 Google AI Studio 中,对初学者与非专业人士而言是最快的上手途径。您可以用自然语言“vibe coding”全栈应用,支持全栈运行时、服务端逻辑、密钥管理与 npm 包。非常适合在投入完整本地开发环境前,先在浏览器里快速做原型。

2. VSCode 扩展

VSCode Kilo Code Extension

如果您习惯使用 VS Code,Gemini Code Assist 可提供一种智能体模式:能生成代码、回答问题,并利用 IDE 上下文(如已打开文件与专用上下文文件)。

如果您想要更灵活的多模型设置,像 Kilo Code 这类工具可在 VS Code 内运行,让您路由到包括 Gemini 3.1 Pro 在内的多种模型,并在编辑器内以智能体方式迭代。

3. Google Antigravity

Google Antigravity

Antigravity 是 Google 的“智能体优先”开发平台,将熟悉的 IDE 体验与类似“任务控制”的管理器相结合,用于协调自主智能体。它面向端到端任务设计,智能体会进行规划、编写代码、运行检查,并产出可验证的工件供您审阅。

当您希望获得围绕智能体构建的完全集成 IDE(而不是在编辑器上附加一个聊天面板)时,选择它。

4. Gemini CLI

Gemini CLI

Gemini CLI 将 Gemini 直接带入您的终端,作为开源智能体运行,这样您就能在真实仓库上工作、编辑文件、自动化工作流,并与本地工具链紧密协同。

当您希望精细地控制模型可见的上下文、可运行的工具、记忆行为,以及如何用新工具与集成来扩展它时,这是最佳选择。它也可与 Gemini Code Assist 的配额联动,并根据运行环境支持不同的认证方式。

为 Gemini 3.1 Pro 准备开发环境

为了搭建完善的智能体编码环境,我们将使用 Gemini CLI,因为它让我们全面掌控上下文、权限、记忆、扩展、技能、测试与部署工作流。

与仅基于浏览器的构建器不同,Gemini CLI 直接在本地开发环境中运行,使您能够在真实代码仓库上工作、管理文件,并以面向生产的方式整合工具。

本节中,我们将安装 Gemini CLI、完成认证、将模型配置为 Gemini 3.1 Pro,浏览扩展市场、安装所需扩展,然后创建针对我们技术栈的自定义技能。

这样可以确保智能体从一开始就理解我们的架构、编码规范与部署目标。

安装并认证 Gemini CLI,用于智能体开发

在安装 Gemini CLI 之前,请确保您已具备:

  • Node.js 版本 20 或更高
  • 正确安装的 npm
  • 已启用结算的 Google Cloud 账号
  • 通过 Gemini API 访问 Gemini 3.1 Pro 的权限

全局安装 Gemini CLI:

npm install -g @google/gemini-cli

创建项目文件夹并进入:

mkdir love-geek
cd love-geek

启动 Gemini CLI:

gemini 

首次启动时,请使用您的 Google 账号或 API 密钥进行认证。如果使用 API 密钥认证,请确保其已在环境变量中正确配置。请在 Google Cloud 中启用结算,以便不间断访问 Gemini 3.1 Pro。

setting up Gemini CLI authentication.

这是我们初始状态下的 Gemini CLI 界面。

Gemini CLI welcome page.

进入 Gemini CLI 后,输入“/model”。这将打开模型选择菜单。选择手动选择选项,并在可用列表中选择最新的 Gemini 3.1 Pro 预览模型。

select the new model in the Gemini CLI

选择正确的模型至关重要。智能体工作流高度依赖长上下文处理、工具使用与结构化推理,而这些正是 Gemini 3.1 Pro 的强项。

用扩展增强 Gemini CLI

Gemini CLI 内置一个与 VS Code 扩展类似的扩展市场。通过扩展,您可以添加 MCP 服务器、检索工具、外部 API 与增强的上下文系统,使智能体的能力超越简单的提示补全。

Gemini CLI extension marketplace

针对我们的栈,我们将安装:

  1. Exa MCP Server:用于高级网页与代码库搜索
  2. Context7:为现代技术栈提供最新文档检索

使用以下命令安装:

gemini extensions install https://github.com/exa-labs/exa-mcp-server
gemini extensions install https://github.com/upstash/context7

安装完成后,重启 Gemini CLI:

gemini 

您现在应能在环境中看到更多 MCP 服务器与技能加载。这些工具使智能体可以搜索网页、检索 GitHub 代码库,并将最新文档直接纳入推理上下文。

added 2 mcps and 7 skills in the Gemini CLI

为 Web 应用创建自定义技能

已安装的扩展是通用的。要构建可用于生产的应用,我们需要项目特定的技能,将我们精确技术栈的最佳实践编码其中。

我们的技术栈:

  • Next.js App Router
  • Tailwind CSS + shadcn/ui
  • Drizzle ORM 与 Neon Postgres
  • Clerk 身份认证
  • Vitest
  • Vercel 部署

在 Gemini CLI 中使用以下提示生成模块化自定义技能:

Generate the following skills:

1. nextjs-app-router-skill (enforce App Router + Server Components best practices)
2. drizzle-neon-skill (schema, migrations, relations, Neon connection)
3. clerk-auth-skill (middleware, protected routes, secure server-side auth)
4. vitest-testing-skill (unit tests for core logic and edge cases)
5. vercel-deploy-skill (env setup and production deployment rules)"

提交后,Gemini 3.1 Pro 将生成结构化的技能定义,然后提示您在本地安装。

answering the question in the Gemini CLI

逐一批准安装。出现权限提示时,按下Shift + Tab 切换焦点到终端并输入“Y”。对五个技能都重复此操作。

Shell switch in the Gemini CLI

安装完成后,在 Gemini CLI 中输入“/skills reload”以重新加载技能。

reloading the skills in the Gemini CLI

输入“/skills list”进行验证。您会看到所有自定义技能的列表。这表明技能已成功添加。

checking the all available skills in the Gemini CLI

至此,您的 Gemini 3.1 Pro 智能体已不再是通用型。它理解您的技术栈、数据库规则、认证约束、测试框架与部署目标。

实战项目:使用 Gemini 3.1 Pro 构建 “Tinder for Geeks”

我们将以全智能体模式规划并构建一个端到端、可用于生产的 Tinder for Geeks 应用。这不是玩具示例。我们会设计架构、生成 schema、实现匹配引擎、加入认证、测试核心逻辑,并以合格的生产标准部署到 Vercel。

1. 构建应用的初始提示

在 Gemini CLI 内部,以结构化且明确的指令开始。首个提示的质量,决定了智能体是否会先规划架构,而不是直接随机生成文件。

输入如下内容:

Build a production-ready MVP called "Tinder for Geeks".

App Requirements:
- Swipe-based profile browsing (like / dislike)
- Mutual likes create a match
- Matches page
- Authenticated users only
- Clean modern UI using Tailwind + shadcn/ui

Tech Stack (do not change):
- Next.js App Router (TypeScript)
- Server Actions + Route Handlers
- Postgres on Neon
- Drizzle ORM with migrations
- Clerk authentication
- Vitest for unit testing
- Deployment-ready for Vercel

Execution Rules:
1. Show folder structure first.
2. Generate database schema and migrations.
3. Implement API logic and matching engine.
4. Build swipe UI.
5. Add protected routes.
6. Generate unit tests for matching logic.
7. Provide an environment variable checklist for Vercel deployment.

Keep explanations minimal.
Focus on clean, modular, production-ready code.
Validate each step before moving to the next.

提交提示后,Gemini 3.1 Pro 不会立刻开始随机生成文件。它会先对整体项目结构进行推理,并决定应激活哪些与栈相关的技能。

由于我们之前安装了自定义技能,CLI 可能会自动建议启用如 Next.js App Router 技能或 Drizzle ORM 技能等模块。

您会看到权限提示,询问是否激活这些技能。每个技能都会将特定栈的约束、架构标准与最佳实践注入智能体的推理之中。批准它们可确保生成的代码遵循合适的生产模式,而非通用样板。

invoking the custom skills.

如果您更偏好更快的工作流,不希望手动批准每次激活或文件写入,可按CTRL + Y 切换到 YOLO 模式。

在 YOLO 模式下,智能体会在没有确认提示的情况下继续操作。这对快速原型很有用,但在生产仓库中应谨慎使用,以便对文件变更与权限进行更严格的控制。

最后,Gemini CLI 将提供结构化摘要,包括:

  • 已创建的文件
  • 已实现的功能
  • 数据库模式定义
  • API 端点
  • 所需环境变量

同时还会生成 Vercel 部署清单,明确部署前需配置的 API 密钥与环境变量。

implementation summary in the Gemini CLI

2. 持久化上下文与记忆

现在我们通过在 Gemini CLI 中使用 /init 命令,为项目创建持久记忆,让智能体具备有状态能力。

这会在项目根目录生成一个 GEMINI.md 文件。该文件充当智能体的“活的记忆”,总结项目结构、技术栈、约定、构建命令、测试命令与部署说明。

creatin the GEMINI.md file in the Gemini CLI

接着,我们希望 Gemini 的行为像纪律严明的工程师,而非随意的代码生成器。向记忆中添加以下指令:

“在每次重大变更后,自动暂存相关文件、验证类型与测试,然后用 conventional commit 格式创建一个小而原子的 git 提交,绝不提交密钥,并在继续之前展示提交信息。”

这样可强制执行:

  • 干净的增量提交
  • 类型安全验证
  • 在定稿前通过测试验证
  • 良好的提交卫生

现在,智能体将在每次新增特性后自动遵循专业的 Git 工作流。

modifying the memory in the Gemini CLI

我们还希望智能体使用 GitHub CLI 处理仓库发布与 CI 校验。

将以下内容加入记忆:

“更新记忆:如该仓库尚未发布,记得使用 GitHub CLI(gh)发布仓库,将所有提交推送到 main 分支,然后检查并报告当前的 GitHub Actions 工作流状态。”

这样可确保:

  • 仓库自动发布
  • 所有提交一致推送
  • 每次更新后检查 CI 状态
  • 当任何工作流失败时及时告知您

adding new memory in the Gemini CLI

此时,您的 Gemini 3.1 Pro 智能体已不再是无状态的。它理解您的项目、遵循工程纪律、正确管理 Git,并监控 CI。这正是智能体编码真正强大的地方。

3. 增强可靠性与防护

大多数vibe coding 的应用失败,并非因为缺少功能,而是缺乏必要的防护。可用于生产的应用必须能处理恶意输入、意外边界情况、竞态条件与 API 的误用。如果跳过这一步,您的应用也许能在演示中跑通,但会在真实用户或自动化滥用下崩溃。

现在我们指示 Gemini 3.1 Pro 加固系统。

在 Gemini CLI 中使用以下命令:

“通过强制输入校验、妥善的错误处理、对 API 路由实施限流、在服务端执行安全的 Clerk 认证校验、防止重复操作、为关键流程添加日志,以及防止破坏性 API 变更,为本项目添加可靠性与防护。”

Adding the guardrails to the app using the Gemini CLI

4. 配置环境变量并在本地验证

现在将应用连接到真实的生产服务。我们使用 Clerk 进行认证,使用 Neon 提供全托管的 Postgres 数据库。此步骤将生成的代码变成可运行的全栈系统。

前往 clerk.com 并创建一个免费账号。

在控制台中创建新应用。Clerk 会自动生成:

  • 可公开使用的密钥(Publishable key)
  • 密钥(Secret key)

在主控制台复制 publishable key 与 secret key。稍后会把它们加入环境变量。

creating the GeekMatch in the Clerk.

接下来,访问 neon.tech 并创建一个免费账号。

创建一个新项目。Neon 会为您开通托管的 Postgres 数据库。

创建项目后:

  • 打开控制台
  • 找到连接字符串
  • 复制完整的 Postgres 连接 URL

Drizzle ORM 将使用此 URL 连接到您的数据库。

Creating the new project in the Gemini CLI

使用提供的 .env.example 文件作为模板。新建 .env.local 文件。

将占位符替换为:

  • Clerk publishable key
  • Clerk secret key
  • Neon 数据库连接字符串

确保绝不要将 .env.local 提交到 Git。

the .env.example file preview.

完成环境变量配置后,返回 Gemini CLI 并输入:

“我已将 Clerk 与 Neon 的 API 密钥添加到环境变量。请在本地运行应用、验证数据库连接、测试认证流程,并报告任何错误。”

Gemini 3.1 Pro 现在应会:

  • 启动开发服务器
  • 运行数据库迁移
  • 确认 Neon 连接
  • 验证 Clerk 会话处理
  • 测试受保护路由
  • 报告任何运行时错误

如果一切配置正确,CLI 将提供本地开发地址,如 http://localhost:3000。

local testing report in the Gemini CLI

在浏览器中打开该地址(http://localhost:3000)。

GeekMatch app UI

点击“Create Account”,使用 Google 登录以获得最快的设置体验。

singing up the GeekMatch account.

完成认证后,完善您的个人资料:姓名、简介与头像。

Completing the profile in the GeekMatch

随后您会被重定向到滑动界面。向左滑动可拒绝某个资料卡,向右滑动为喜欢。若两位用户互相喜欢,将创建一个匹配,并显示在匹配页面。

Functionality of the GeekMatch

短短几分钟内,您便拥有了一款功能完整、带认证与数据库支持的 Web 应用,并已在本地运行。

这就是使用 Gemini 3.1 Pro 进行智能体编码的力量。原本需要数小时的环境搭建与调试,如今化为结构化、可引导的工作流,快速而可靠地产出可运行、可部署的应用。

5. 使用 Vercel 部署到生产环境

本地运行无误后,就该部署到生产环境了。由于我们之前已配置了 Git 自动化,部署会非常顺畅。

首先,在 Gemini CLI 中指示:

“提交并推送所有更改到 GitHub。”

这样可确保:

  • 所有本地变更都得到妥善提交
  • 不包含任何密钥
  • main 分支保持最新
  • 仓库已准备好部署

Create the GtiHub repo and push the changes to the repo.

您的代码库现在应已在 GitHub 上可见:kingabzpro/love-geek

love-geek GitHub repo

访问 https://vercel.com 并创建免费账号。按提示连接您的 GitHub 账号。Vercel 可直接集成 GitHub 代码库,实现每次推送自动部署。

连接完成后:

  • 点击 “Add New Project”
  • 选择 love-geek 仓库
  • 导入项目

Vercel 会自动识别这是一个 Next.js 应用,并相应配置构建设置。

Import Git Repo in the Vercel

在部署前,下滑到 Environment Variables 区域。

点击 “Import .env”,或手动添加:

  • Clerk publishable key
  • Clerk secret key
  • Neon 数据库 URL
  • 任何本地使用的其他环境变量

确保所有生产环境变量与 .env.local 中的值一致。

setting the environment variable in the Vercel.

点击 Deploy。

Vercel 将:

  • 安装依赖
  • 构建 Next.js 项目
  • 运行生产构建
  • 完成部署配置

完成后,您的应用将上线于 https://love-geek.vercel.app。

GeekMatch deployed on the Vercel.

打开线上地址并测试:

  • 认证流程
  • 资料创建
  • 滑动功能
  • 匹配创建
  • 受保护路由

若一切正常,您现在拥有一款已部署到生产环境、带认证与数据库支持的 Web 应用。

从想法到上线成品,不到 30 分钟。

此后,只要您向 GitHub 推送新功能,Vercel 就会自动重新部署您的应用。借助 Gemini 3.1 Pro 对结构、记忆与防护的管理,您可以自信地持续迭代,在数日内将其打磨成可用于生产的初创基座。

结语

坦率地说,第一次构建就让我印象深刻。应用从端到端跑通:认证、数据库集成、滑动逻辑与部署都以结构化方式完成。测试中也有少量小缺口,比如需要手动请求临时的种子资料卡以充分测试滑动功能。这并非模型的局限,而是我需要更明确地提出要求。

最让我印象深刻的是 Gemini 3.1 Pro 的调试能力。当应用报错或出现配置问题时,它能非常有效地定位问题、提出修复建议,并按步骤验证解决方案。它并非盲目修补,而是有理有据地推理。

其周边生态也发挥了重要作用。Gemini CLI、自定义技能、扩展、持久记忆与 YOLO 模式的组合,构建出强大的开发工作流。记忆系统减少了重复说明,自定义技能强化了架构纪律,而扩展提升了文档与搜索的准确性。

从成本来看,构建、调试并部署这个全栈应用大约花费了我 5 美元的 API 用量。与更高价位的编码模型相比,这个成本非常合理。

我也刻意没有依赖那些受限的免费层或订阅式编码平台,它们常常断连或使用受限。为稳定且高质量的体验付费是值得的。

总体而言,这不仅仅是构建一款应用,更是一次智能体开发的学习体验。理解如何管理记忆、创建自定义技能、使用 Gemini 扩展,并在合适时机切换 YOLO 模式,改变了我对 AI 辅助工程的思路。

我强烈推荐这套工作流,尤其适合想要从快速原型走向结构化、可用于生产的应用、并减少调试烦恼的“vibe coder”。

如果您渴望进一步学习如何用智能体式 AI 构建应用,推荐查看 Designing Agentic Systems with LangChain 课程。

FAQs

Gemini CLI 是否为编码智能体提供免费层?

是的!Gemini CLI 为个人开发者提供了相当宽松的免费层。您可以使用标准 Google 账号(通过 OAuth)进行认证,以获得较高的使用上限,具体为每分钟 60 次请求、每天 1,000 次请求。这使您无需先开通付费的 Google Cloud 结算账户,就能执行智能体推理、运行终端命令并重构您的代码库。

Gemini Code Assist 与 Gemini CLI 有何区别?

Gemini Code Assist 是基于 IDE 的扩展(适用于 VS Code、IntelliJ 等),提供行内代码补全、标准聊天与智能体模式。Gemini CLI 则是独立的开源终端智能体,可在编辑器之外,以更深的系统级能力控制文件、自定义工作流与 Model Context Protocol(MCP)服务器。

我可以在 Gemini CLI 中使用本地工具与数据库吗?

可以。Gemini CLI 支持 Model Context Protocol(MCP),可连接本地或远程 MCP 服务器。这意味着您的智能体可以在终端中安全读取本地文件系统、查询特定的 Postgres 数据库、与 GitHub API 交互,或直接运行浏览器自动化工具。

Gemini CLI 如何处理大型代码库与项目上下文?

Gemini 3.1 Pro 拥有超大的上下文窗口(最多可达 100 万 tokens),能够处理超大规模代码库。在本地组织时,您可以在项目根目录使用 GEMINI.md 或 AGENT.md 文件。该文件充当持久记忆,每次您运行命令时,都为智能体提供关于架构、风格指南与技术栈的严格指引。

什么是 Google Antigravity?

Google Antigravity 是 Google 打造的先进“智能体优先”桌面开发环境(适用于 Mac、Windows 与 Linux)。与传统将 AI 聊天面板“外挂”在一侧的 IDE 不同,Antigravity 具有集中式的“任务控制”(Mission Control)或智能体管理器界面,专为在端到端软件生命周期中协调、监控与管理自主 AI 智能体而设计。

Abid Ali Awan

作者

Abid Ali Awan

作为一名持证的数据科学家,我热衷于利用前沿技术打造创新的机器学习应用。凭借在语音识别、数据分析与报告、MLOps、对话式人工智能以及自然语言处理方面的扎实背景,我不断打磨构建智能系统的能力,力求带来切实影响。除技术专长外,我也擅长沟通,能够将复杂概念提炼为清晰、简明的表述。因此,我成为数据科学领域备受关注的博主,与不断壮大的数据专业人士社区分享洞见与实践经验。目前,我专注于内容创作与编辑,借助大语言模型打造有力且吸引人的内容,帮助企业与个人更好地发挥数据价值。

主题