在CLI发出的API请求中增加AI标识
AI 模式(AI Mode)是阿里云 CLI 3.3.3推出的一项标识功能。启用后,CLI 会在所有 API 请求的 User-Agent 中追加 AI 标识段,用于服务端识别请求来源为 AI Agent。
功能介绍
AI 模式启用后,CLI 发出的每个 API 请求的 User-Agent 中会追加如下格式的 AI 标识段:
AlibabaCloud-AIMode/enabled AlibabaCloud-Agent-Skills其中:
AlibabaCloud-AIMode/enabled是固定前缀,标识 AI 模式已激活。AlibabaCloud-Agent-Skills是默认的技能标识段,可自定义为其他值。
AI 标识段的主要作用:
服务端可基于 User-Agent 区分 AI Agent 请求和人工操作。
支持按 Agent 身份进行审计、限流和统计分析。
AI 模式仅影响 User-Agent 标识,不改变 API 调用行为和权限。
管理 AI 模式
AI 模式通过 aliyun configure ai-mode 命令族管理。
查看当前配置
执行以下命令查看 AI 模式的当前配置:
aliyun configure ai-mode show输出示例:
{
"enabled": true,
"user_agent": "",
"effective_user_agent": "AlibabaCloud-Agent-Skills",
"request_user_agent_suffix": "AlibabaCloud-AIMode/enabled AlibabaCloud-Agent-Skills",
"config_file": "/home/user/.aliyun/ai-mode.json"
}字段说明:
字段 | 说明 |
| AI 模式是否启用。 |
| 自定义的 User-Agent 技能标识段。为空表示使用默认值。 |
| 实际生效的技能标识段。自定义值或默认值 |
| 追加到请求 User-Agent 中的完整后缀。 |
| 配置文件路径。 |
启用和禁用
执行以下命令启用或禁用 AI 模式:
# 启用 AI 模式
aliyun configure ai-mode enable
# 禁用 AI 模式
aliyun configure ai-mode disable自定义 User-Agent 技能标识段
默认的技能标识段是 AlibabaCloud-Agent-Skills。如果需要区分不同的 AI Agent,可以自定义该值:
# 设置自定义技能标识段
aliyun configure ai-mode set-user-agent --user-agent "MyAgent/1.0"
# 恢复默认值
aliyun configure ai-mode reset-user-agent自定义后,请求的 User-Agent 后缀变为:
AlibabaCloud-AIMode/enabled MyAgent/1.0单命令覆盖
在调用 OpenAPI 时,可以使用命令行标志覆盖全局 AI 模式设置,仅对当前命令生效:
标志 | 效果 |
| 仅本次命令启用 AI 模式(即使全局未开启)。 |
| 仅本次命令关闭 AI 模式(即使全局已开启)。 |
如果同时使用两个标志,--no-cli-ai-mode 优先级更高。
示例:
# 全局未开启 AI 模式,但本次调用追加 AI 标识
aliyun ecs DescribeInstances --cli-ai-mode
# 全局已开启 AI 模式,但本次调用不追加
aliyun ecs DescribeInstances --no-cli-ai-mode环境变量
CLI 通过以下环境变量向插件子进程传递 AI 模式状态:
环境变量 | 说明 |
| 值为 |
| AI 模式下追加的完整 User-Agent 后缀。例如 |
这两个环境变量由 CLI 主程序在启动插件子进程时自动注入,无需手动设置。如需控制 AI 模式,请通过 configure ai-mode 命令或 --cli-ai-mode 标志操作。
配置文件
如需手动查看或备份AI 模式的配置文件,可在以下路径找到:
操作系统 | 存储路径 |
Linux / macOS |
|
Windows |
|
文件格式示例:
{
"enabled": true,
"user_agent": "MyAgent/1.0"
}字段说明:
字段 | 类型 | 说明 |
| boolean | 是否启用 AI 模式。默认为 |
| string | 自定义 User-Agent 技能标识段。为空时使用默认值 |
如果配置文件不存在,AI 模式默认为禁用状态。建议通过 aliyun configure ai-mode 命令管理配置,不要手动编辑配置文件。
优先级
AI 模式的生效优先级从高到低如下:
命令行标志(
--cli-ai-mode/--no-cli-ai-mode)配置文件(
ai-mode.json)
当同时存在命令行标志和配置文件设置时,命令行标志优先。如果同时指定了 --cli-ai-mode 和 --no-cli-ai-mode,以 --no-cli-ai-mode 为准。
生效范围
AI 模式的 User-Agent 标识在以下场景生效:
OpenAPI 调用:通过命令发起的 RPC 和 RESTful 请求,
User-Agent中会追加 AI 标识段。插件命令:CLI 通过环境变量(
ALIBABA_CLOUD_CLI_AI_MODE和ALIBABA_CLOUD_CLI_AI_USER_AGENT)向插件子进程传递 AI 模式状态。插件可据此在自身请求中追加对应标识。
附录:子命令参考
以下是 aliyun configure ai-mode 下的所有子命令:
子命令 | 说明 |
| 查看当前 AI 模式配置。 |
| 全局启用 AI 模式。 |
| 全局禁用 AI 模式。 |
| 设置自定义 User-Agent 技能标识段。 |
| 将技能标识段恢复为默认值 |
| 设置 ossutil 插件专用配置(JSON 格式字符串)。 |
| 清除 ossutil 插件专用配置。 |