概述 - Amazon Q 开发者版

概述

自定义代理提供了一种方法,可通过为不同使用案例定义特定配置来自定义 Amazon Q 开发者版 CLI 行为。每个自定义代理都由一个 JSON 配置文件定义,该配置文件指定代理可以访问哪些工具、拥有哪些权限以及应包含哪些上下文。

重要:自定义代理管理主要涉及创建和编辑配置文件。虽然有些命令在聊天会话中可用(如 /agent list/agent create),但在自定义代理之间进行切换要求与 q chat --agent [name] 开始新的聊天会话。

自定义代理与默认体验有何不同

默认情况下,Amazon Q 开发者版 CLI 提供对所有可用工具的访问权限,但大多数操作需要用户确认。这种方法优先考虑安全性,但可能会因为频繁的权限提示而中断工作流程。

自定义代理通过支持您执行以下操作来解决这个问题:

  • 预先批准特定的工具:定义哪些工具可以在不提示的情况下运行

  • 限制工具访问权限:限制哪些工具可用于降低复杂性

  • 包括相关上下文:自动加载项目文件、文档或系统信息

  • 配置工具行为:为工具的操作方式设置特定的参数

使用自定义代理的优势

工作流优化

创建针对特定任务(例如 AWS 基础设施管理、代码审查或调试会话)量身定制的自定义代理。

减少了中断

预先批准可信的工具,以消除专心工作会话期间的权限提示。

增强了上下文

自动包括相关的项目文档、配置文件或系统信息。

团队协作

与团队成员共享自定义代理配置,以确保开发环境的一致性。

安全控制

将工具访问权限仅限于特定工作流程所需的内容,从而降低潜在的安全风险。

与 MCP 和内置工具的关系

自定义代理可同时使用内置的 Amazon Q 开发者版 CLI 工具和通过模型上下文协议(MCP)提供的外部工具。这为您提供了以下灵活性:

  • 使用内置工具:文件操作、命令执行、AWS CLI 集成和其它核心功能

  • 集成 MCP 服务器:通过 MCP 服务器配置添加自定义工具和服务

  • 控制工具访问权限:准确指定每个来源中有哪些工具可用

  • 管理工具冲突:使用别名来处理不同工具来源之间的命名冲突

有关 MCP 集成的更多信息,请参阅将 MCP 与 Amazon Q 开发者版结合使用