概述
自定义代理提供了一种方法,可通过为不同使用案例定义特定配置来自定义 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 开发者版结合使用。