用途
本技能是一个独立的只读查询技能,用于查询华为云资源、可用规格以及已有资源信息。它通过本地 Python 脚本调用华为云 Python SDK 完成查询。
适用场景
适用于以下场景:
- 查询指定区域(region)内可用的云资源规格
- 查询特定操作系统的可用镜像
- 查询云硬盘类型及已有云硬盘信息
- 查询已有资源及其关键属性
- 查询非通过 Terraform 或其他 IaC 工具创建的资源
- 为自动化配置、资源核对或环境盘点准备真实参数
- 获取可复用的信息,如资源 ID、名称、规格、镜像、网络和磁盘
不处理的事项
本技能不处理以下操作:
- 创建资源
- 修改资源
- 删除资源
- 猜测或编造未查询到的信息
主要能力
技能通过 scripts 目录下的分类脚本提供查询能力,并通过 references 目录下的分类指南提供使用说明。能力包括:
- 查询资源列表
- 查询单个资源详情
- 查询可用规格、镜像、磁盘类型等选型信息
- 查询已有资源的关键标识与依赖关系
使用方式
前提条件
使用前必须运行环境检查脚本,一步完成环境校验与依赖安装:
Linux / macOS:skill action=exec: bash skill://scripts/check_env.sh
Windows:skill action=exec: powershell -ExecutionPolicy Bypass -File skill://scripts/check_env.ps1
Windows 注意:不要使用 && 拼接命令(PowerShell 5.x 不支持),如需先切换目录请使用分号。
脚本会依次检查:Python >= 3.6 → 安装依赖 → 验证 SDK → 验证凭证 → 验证服务可用性。若环境检查失败,需先修复后再继续执行其他脚本。
环境变量
| 变量 | 必填 | 说明 |
|---|---|---|
| HW_ACCESS_KEY | 是 | 华为云 AK |
| HW_SECRET_KEY | 是 | 华为云 SK |
| HW_REGION_NAME | 否 | 默认 cn-north-4 |
| HW_PROJECT_ID | 否 | 项目 ID(未设置时通过 IAM API 自动获取) |
| HW_SECURITY_TOKEN | 否 | 临时 AK/SK 时需要 |
不要输出上述环境变量的值。其他需要额外参数(可用区、企业项目等)的资源脚本,请见对应的 guide.md。
执行流程
Step 1:环境准备——执行环境检查脚本,确保依赖已安装、凭证已配置。
Step 2:识别并执行查询脚本:
- 根据用户的查询意图,阅读
references/<service>/guide.md确定脚本路径与参数 - 先执行
-h查看脚本用法:- Linux / macOS:
skill action=exec: skill://.venv/bin/python3 skill://scripts/<service>/<script>.py -h - Windows:
skill action=exec: skill://.venv/Scripts/python3.exe skill://scripts/<service>/<script>.py -h
- Linux / macOS:
- 根据用户需求组装参数并执行脚本
- 格式化结果并返回给用户
参数确认
| 参数 | 必填 | 说明 |
|---|---|---|
| region | 是 | 华为云区域,例如 cn-north-4 |
| --project_id | 否 | 项目 ID;未提供时自动获取 |
| --availability_zone | 否 | 可用区;部分资源查询需要 |
脚本专属参数请见 references/<service>/guide.md。
输出格式
查询结果以 JSON 格式输出,包含以下通用字段:
- total:匹配到的资源总数
- items:资源列表,每个资源包含 id、name、status 等关键字段
具体字段因资源类型而异,详见各 guide.md。
使用原则与限制
- 技能内执行的脚本路径均相对于技能目录(即包含 SKILL.md 的目录)
- 本技能只执行查询,不执行任何写操作
- 优先使用用户明确指定的信息,如 region、project、AZ、资源名称、资源 ID
- 查询结果必须基于实际 API 响应,不得凭经验推测
- 返回结果应保留关键字段以便后续复用
- 结果集较大时,优先通过 region、name、id、status、tag 等条件缩小范围
- 若当前资源类型没有对应脚本或指南,应明确说明不支持,不得返回不可靠结果
- 若用户未提供必要范围信息且环境中无默认值,应先确认信息再执行查询
- 按 guide.md 直接执行,不要读取 scripts 目录中的脚本内容
- 输出较大时应缓存
- 执行每个脚本前必须先执行
-h查看用法 - 不得编造脚本名;按 guide.md 中的脚本名执行,若脚本名不在 guide.md 中则不适用
- 所有脚本和环境检查脚本都在技能包内,必须使用 skill action=exec 执行,不要在 shell 中直接运行
- venv 由 check_env 脚本自动创建,Linux/macOS 下 Python 位于 .venv/bin/python3,Windows 下位于 .venv/Scripts/python3.exe
- 不要直接用 python3 执行脚本
- --project_id 参数为可选,未提供时根据 region 通过 IAM API 自动获取
- 查询到已知资源后可与控制台数据比对验证结果准确性
- 脚本执行失败时,先检查环境变量和网络连通性
- 使用临时 AK/SK 时,需设置 HW_SECURITY_TOKEN