代理模式

Android Studio 中 Gemini 的智能体模式旨在处理复杂的多阶段开发任务,这些任务仅通过与 Gemini 聊天无法完成。您可以描述一个高级目标,然后代理会创建并执行一个计划,调用必要的工具,跨多个文件进行更改,并以迭代方式修复 bug。借助此代理辅助工作流程,您可以应对复杂的挑战,从而加快开发流程。

系统要求

代理模式从 Android Studio Narwhal 功能更新 Canary 4 开始提供。下载最新预览版 Android Studio

开始使用

如需在 Android Studio 中以代理模式开始使用,请按以下步骤操作:

  1. 点击边栏中的 Gemini 图标 。 根据需要登录并完成初始配置。
  2. 选择代理标签页。
  3. 描述您希望代理执行的任务。
  4. 当代理按照步骤完成任务时,您可以选择查看并批准任何更改。

    代理模式会等待您接受或拒绝更改。
  5. 可选:如需自动批准更改,请依次选择代理选项 > 自动批准更改

    自动批准代理建议的更改。

用例

以下是一些代理可以为您提供帮助的用例示例:

  • 修复 build 错误。当您使用“修复项目中的 build 错误”之类的提示要求智能体修复 build 错误时,它会应用建议的修复方案,构建项目以验证解决方案,并进行迭代,直到问题得到解决。

    代理会构建您的项目,并评估是否存在错误。
  • 代理模式可以自行添加或更新界面元素。例如,让代理执行“在用户偏好设置中将深色模式设为默认模式”任务,代理会搜索相关文件并建议更改,以完成任务。您可以立即在正在运行的设备工具窗口中预览界面更新。

  • 在为应用制作原型和测试应用时,模拟数据非常有用。您可以让代理来完成这项任务,而无需手动创建虚假数据。在此示例中,我们要求代理“向虚假数据再添加两个会话”。它会找到相关文件,并向 mockSessions 列表添加另外两个事件。

您可以尝试的其他提示:

  • “为 <module> 中的 <class> 编写单元测试。”
  • “为当前打开的文件生成文档。”
  • “将应用标题从 <当前名称> 更改为 <新名称>。”
  • “解决 null 指针异常。”
  • “重构我的代码,将 <可组合项名称> 可组合项移至新文件。 确保所有导入都已更新。”
  • “向应用的主屏幕添加一个名为‘关注’的新按钮,点击该按钮可前往主题列表。”
  • “在 <可组合项名称> 可组合项中,减少 <修饰符名称> 修饰符的边衬区。”
  • “创建一个用于分享到社交媒体的分享按钮。”

添加 Gemini API 密钥

Android Studio 中的默认代理模式具有免费的每日配额,但上下文窗口有限。如需扩大上下文窗口,您可以添加自己的 Gemini API 密钥,以便利用 Gemini 2.5 Pro 处理多达 100 万个 token。

添加您自己的 API 密钥以扩大上下文窗口。

更大的上下文窗口可让您向 Gemini 发送更多指令、代码和附件,从而获得质量更高的回答。在与代理互动时,这尤其有用,因为更大的上下文可让 Gemini 2.5 Pro 能够推理复杂或长时间运行的任务。

如需获取 API 密钥,请执行以下操作:

  1. 登录 Google AI Studio,然后点击“获取 API 密钥”按钮获取密钥。
  2. 在 Android Studio 中,依次前往 File(在 macOS 上,依次前往 Android Studio)> Settings > Tools > Gemini,然后输入您的 Gemini API 密钥。
  3. 在 Android Studio 中重新启动 Gemini,从智能体模式获得更出色的回答。
在 Gemini 设置中添加您自己的 API 密钥。

请务必妥善保管您的 Gemini API 密钥,因为与个人 API 密钥关联的 Gemini API 用量会产生额外费用。您可以在 AI Studio 中通过获取 API 密钥 > 用量和结算来监控 Gemini API 密钥的使用情况。

添加 MCP 服务器

Android Studio 中 Gemini 的代理可以使用模型上下文协议 (MCP) 与外部工具进行交互。此功能为代理模式提供了一种标准化方式,以便使用工具并借助外部环境扩展知识和能力。

您可以将许多工具连接到 Android Studio 中的 MCP Host。例如,您可以与 GitHub MCP 服务器集成,以便直接从 Android Studio 创建拉取请求。如需了解更多创意,请参阅 MCP 示例服务器

如需添加 MCP 服务器,请创建 mcp.json 文件并将其放置在 Studio 的配置目录中。mcp.json 文件应遵循以下格式:

{
  "mcpServers": {
    "memory": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-memory"
      ]
    },
    "sequential-thinking": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-sequential-thinking"
      ]
    },
    "github": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-e",
        "GITHUB_PERSONAL_ACCESS_TOKEN",
        "ghcr.io/github/github-mcp-server"
      ],
      "env": {
        "GITHUB_PERSONAL_ACCESS_TOKEN": "<YOUR_TOKEN>"
      }
    }
  }
}

请参阅您要集成的 MCP 服务器的文档,了解您应在此文件中列出的确切 commandargs。您可能还需要安装 Node.js 或 Docker 等工具,具体取决于 MCP 服务器的软件要求。

限制

Android Studio 的 MCP 集成存在一些重要限制:

  • MCP 服务器必须实现 stdio 传输。
  • 尚不支持流式 HTTP 传输,以及 MCP 资源和提示模板。

代理的工作方式

在代理模式下,您的提示会随可用的工具列表一起发送到 Gemini API。您可以将工具视为技能:它们包括搜索文件、读取文件、搜索文件中的文本、使用您配置的任何 MCP 服务器等功能。

当您为代理提供任务时,它会制定计划并确定需要哪些工具。在代理使用这些工具之前,您可能需要授予相应权限。您授予权限后,代理会使用该工具执行必要的操作,并将结果发送回 Gemini API。Gemini 会处理操作结果并生成另一回答。这种行动和评估的循环会一直持续,直到任务完成。