关于 huawei-cloud-storage-query
面向华为云资源盘点与配置准备的只读查询 Skill,通过本地 Python 脚本和华为云 Python SDK 获取资源、规格及依赖信息。所有结果依据实际查询,不创建、修改或删除资源。
主要功能
- 01查询资源列表与详情
- 02查询可用规格、镜像和云硬盘类型
- 03获取资源标识及依赖关系
- 04按区域、名称、状态等筛选
适用场景
- 01盘点指定区域的现有云资源
- 02为自动化配置收集真实参数
- 03核查非 IaC 创建的资源
- 04查询镜像或云硬盘选项
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ huaweicloud/ huaweicloud-skills --skill huawei-cloud-storage-query安装后在 Claude Code 中输入/huawei-cloud-storage-query确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
requirements.txtreferences/cbr/guide.mdreferences/evs/guide.mdreferences/obs/guide.mdreferences/sfs/guide.mdscripts/cbr/check_agent.pylist_agent.pylist_backups.pylist_domain_projects.pylist_external_vault.pylist_features.pylist_op_logs.pylist_organization_policies.pylist_organization_policy_detail.pylist_policies.pylist_projects.pylist_protectable.pylist_vault.pyshow_agent.pyshow_backup.pyshow_checkpoint.pyshow_domain.pyshow_feature.pyshow_member_detail.pyshow_members_detail.pyshow_metadata.pyshow_migrate_status.pyshow_op_log.pyshow_organization_policy.pyshow_policy.py详细介绍
华为云资源查询
⚠️ 执行方式(必读):此技能通过本地 Python 脚本执行查询。禁止使用 hcloud、openstack 等 CLI 工具或直接调用 API。
- 查询脚本位于技能目录下的
scripts/<service_category>/(例如:scripts/as/list_scaling_groups.py)- 所有脚本和环境检查脚本都在技能包内,必须使用
skill action=exec执行,禁止直接在 shell 中运行- 具体脚本路径和参数请参阅
references/<service>/guide.md- 请勿尝试使用 hcloud、openstack、curl IAM 或其他 CLI/API 方法;此技能不依赖这些工具
- 所有路径均相对于技能目录,即此 SKILL.md 所在的目录
概述
此技能是一项独立的只读查询技能,通过本地 Python 脚本调用华为云 Python SDK,以查询华为云资源、可用规格和现有资源信息。
此技能适用于以下场景:
- 查询指定区域中可用的云资源规格
- 查询指定 OS 类型的可用镜像
- 查询磁盘类型和现有磁盘信息
- 查询现有资源及其关键属性
- 查询并非通过 Terraform 或其他 IaC 工具创建的资源
- 为自动化配置、资源验证或环境清点准备真实参数
- 获取资源 ID、名称、规格、镜像、网络、磁盘等可复用信息
此技能不处理以下事项:
- 创建资源
- 修改资源
- 删除资源
- 猜测或编造尚未查询到的信息
功能
此技能通过 scripts 目录中的分类脚本提供查询功能,并通过 references 目录中的分类指南提供使用说明。
此技能提供的功能包括:
- 查询资源列表
- 查询单个资源的详细信息
- 查询可用规格、镜像、磁盘类型及其他可供选择的信息
- 查询现有资源的关键标识符和依赖关系
使用原则
重要:在此技能中执行的脚本路径均相对于技能目录,即此 SKILL.md 所在的目录
- 此技能仅执行查询,不执行写入操作
- 优先使用用户明确指定的区域、项目、AZ、资源名称、资源 ID 等信息
- 查询结果必须基于实际 API 响应,不得根据经验推断
- 返回结果应优先包含便于后续复用的关键字段
- 结果集较大时,先使用区域、名称、ID、状态、标签等条件缩小范围
- 如果当前资源类型没有对应脚本或指南,请明确说明不受支持;不要返回不可靠的结果
- 如果用户未提供必要的范围信息,且环境中没有默认值,请在执行查询前确认
- 严格按照 guide.md 执行;不要读取 scripts 目录中的脚本内容
- 输出内容较大时进行缓存
- 执行每个脚本前,务必先运行 -h 查看用法
- 不要编造脚本名称;请按照 guide.md 中的脚本名称执行。如果 guide.md 中未提及某个脚本名称,则表示该脚本不受支持
前置条件
使用前,必须运行环境检查脚本,一步完成环境验证和依赖安装:
- 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 | 是 | Huawei Cloud AK |
| HW_SECRET_KEY | 是 | Huawei Cloud SK |
| HW_REGION_NAME | 否 | 默认值为 cn-north-4 |
| HW_PROJECT_ID | 否 | 项目 ID(未设置时通过 IAM API 自动获取) |
| HW_SECURITY_TOKEN | 否 | 使用临时 AK/SK 时必填 |
不要输出上述环境变量的值。 其他资源脚本所需的附加参数(可用区、企业项目等), 请参阅相应的 guide.md。
执行流程
调用此技能时,必须执行以下步骤,无需等待用户再次提示:
步骤 1:准备环境
运行环境检查脚本,确保已安装依赖并配置凭据:
- Linux / macOS:
skill action=exec: bash skill://scripts/check_env.sh - Windows:
skill action=exec: powershell -ExecutionPolicy Bypass -File skill://scripts/check_env.ps1
如果环境检查失败,请根据提示修复问题并重新运行,直至检查通过。
步骤 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:
- 根据用户需求组装参数并执行脚本:
- Linux / macOS:
skill action=exec: skill://.venv/bin/python3 skill://scripts/<service>/<script>.py <parameters> - Windows:
skill action=exec: skill://.venv/Scripts/python3.exe skill://scripts/<service>/<script>.py <parameters>
- Linux / macOS:
- 整理结果并返回给用户
重要:
- 所有脚本和环境检查脚本都位于技能包中,必须使用
skill action=exec执行,不要直接在 shell 中运行 - venv 由 check_env 脚本自动创建;Linux/macOS 上的 Python 位于
.venv/bin/python3,Windows 上位于.venv/Scripts/python3.exe - 不要直接使用
python3执行脚本 - 不要读取 scripts 目录中的脚本源代码;只需按照 guide.md 中的说明操作
- 输出较大时缓存结果
--project_id参数为可选参数;未提供时,将根据区域通过 IAM API 自动获取
目录结构
目录约定如下(所有路径均相对于技能目录):
- scripts/<resource_category>/ 包含相应的 Python 查询脚本。无需读取脚本内容;按照 guide.md 中的用法说明执行脚本即可
- references/<resource_category>/guide.md 包含相应的资源使用指南
- 每个脚本负责一项明确的查询操作
- 每个资源类别至少包含一个 guide.md,用于说明脚本功能、参数和用法
参数确认
执行查询脚本前,请确认以下参数:
| 参数 | 必填 | 说明 |
|---|---|---|
| region | 是 | 华为云区域,例如 cn-north-4 |
| --project_id | 否 | 项目 ID,未提供时会自动获取 |
| --availability_zone | 否 | 可用区,某些资源查询需要此参数 |
其他特定脚本参数请参阅 references/<service>/guide.md。
输出格式
查询结果以 JSON 格式输出,包含以下常见字段:
total:匹配资源的总数items:资源列表,每项资源包含 id、name、status 等关键字段- 具体字段因资源类型而异;详情请参阅各自的 guide.md
验证方法
- 运行环境检查脚本,确认依赖项和凭证可用
- 使用
-h参数查看脚本用法,并确认参数无误 - 查询已知资源,并与控制台数据进行比对,以验证结果准确性
- 检查返回的
total数量是否合理
最佳实践
- 先缩小查询范围(指定 region、可用区等),避免返回过多数据
- 使用
--help查看脚本支持的完整参数列表 - 将大量查询结果缓存在本地,避免重复请求
- 需要查询多种资源信息时,按依赖顺序查询(例如,先查询 VPC,再查询子网)
- 脚本执行失败时,先检查环境变量和网络连接
参考文档
- 服务查询脚本使用指南:
references/<service>/guide.md
注意事项
- 此技能仅提供只读查询能力,不执行任何写入操作
- 请勿输出 HW_ACCESS_KEY、HW_SECRET_KEY 等环境变量的值
- 所有脚本都必须通过
skill action=exec执行;请勿直接在 shell 中运行 - 请勿猜测脚本名称;严格按照 guide.md 中的名称执行
- 查询前必须运行环境检查脚本
- 使用临时 AK/SK 时,必须设置 HW_SECURITY_TOKEN