mcpField
H
huawei-cloud-storage-query

huawei-cloud-storage-query

github.com/huaweicloud云与 DevOps5917.2k 次安装2 天前更新
代码仓库

关于 huawei-cloud-storage-query

面向华为云资源盘点与配置准备的只读查询 Skill,通过本地 Python 脚本和华为云 Python SDK 获取资源、规格及依赖信息。所有结果依据实际查询,不创建、修改或删除资源。

主要功能

  1. 01查询资源列表与详情
  2. 02查询可用规格、镜像和云硬盘类型
  3. 03获取资源标识及依赖关系
  4. 04按区域、名称、状态等筛选

适用场景

  1. 01盘点指定区域的现有云资源
  2. 02为自动化配置收集真实参数
  3. 03核查非 IaC 创建的资源
  4. 04查询镜像或云硬盘选项

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/huaweicloud/huaweicloud-skills --skill huawei-cloud-storage-query

安装后在 Claude Code 中输入/huawei-cloud-storage-query确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

requirements.txt
references/cbr/
guide.md
references/evs/
guide.md
references/obs/
guide.md
references/sfs/
guide.md
scripts/cbr/
check_agent.py
list_agent.py
list_backups.py
list_domain_projects.py
list_external_vault.py
list_features.py
list_op_logs.py
list_organization_policies.py
list_organization_policy_detail.py
list_policies.py
list_projects.py
list_protectable.py
list_vault.py
show_agent.py
show_backup.py
show_checkpoint.py
show_domain.py
show_feature.py
show_member_detail.py
show_members_detail.py
show_metadata.py
show_migrate_status.py
show_op_log.py
show_organization_policy.py
show_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,以查询华为云资源、可用规格和现有资源信息。

此技能适用于以下场景:

  1. 查询指定区域中可用的云资源规格
  2. 查询指定 OS 类型的可用镜像
  3. 查询磁盘类型和现有磁盘信息
  4. 查询现有资源及其关键属性
  5. 查询并非通过 Terraform 或其他 IaC 工具创建的资源
  6. 为自动化配置、资源验证或环境清点准备真实参数
  7. 获取资源 ID、名称、规格、镜像、网络、磁盘等可复用信息

此技能不处理以下事项:

  1. 创建资源
  2. 修改资源
  3. 删除资源
  4. 猜测或编造尚未查询到的信息

功能

此技能通过 scripts 目录中的分类脚本提供查询功能,并通过 references 目录中的分类指南提供使用说明。

此技能提供的功能包括:

  1. 查询资源列表
  2. 查询单个资源的详细信息
  3. 查询可用规格、镜像、磁盘类型及其他可供选择的信息
  4. 查询现有资源的关键标识符和依赖关系

使用原则

重要:在此技能中执行的脚本路径均相对于技能目录,即此 SKILL.md 所在的目录

  1. 此技能仅执行查询,不执行写入操作
  2. 优先使用用户明确指定的区域、项目、AZ、资源名称、资源 ID 等信息
  3. 查询结果必须基于实际 API 响应,不得根据经验推断
  4. 返回结果应优先包含便于后续复用的关键字段
  5. 结果集较大时,先使用区域、名称、ID、状态、标签等条件缩小范围
  6. 如果当前资源类型没有对应脚本或指南,请明确说明不受支持;不要返回不可靠的结果
  7. 如果用户未提供必要的范围信息,且环境中没有默认值,请在执行查询前确认
  8. 严格按照 guide.md 执行;不要读取 scripts 目录中的脚本内容
  9. 输出内容较大时进行缓存
  10. 执行每个脚本前,务必先运行 -h 查看用法
  11. 不要编造脚本名称;请按照 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:识别并执行查询脚本
  1. 根据用户查询意图,阅读 references/<service>/guide.md,确定要执行的脚本路径和参数
  2. 首先运行 -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
  3. 根据用户需求组装参数并执行脚本:
    • 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>
  4. 整理结果并返回给用户

重要:

  • 所有脚本和环境检查脚本都位于技能包中,必须使用 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 自动获取

目录结构

目录约定如下(所有路径均相对于技能目录):

  1. scripts/<resource_category>/ 包含相应的 Python 查询脚本。无需读取脚本内容;按照 guide.md 中的用法说明执行脚本即可
  2. references/<resource_category>/guide.md 包含相应的资源使用指南
  3. 每个脚本负责一项明确的查询操作
  4. 每个资源类别至少包含一个 guide.md,用于说明脚本功能、参数和用法

参数确认

执行查询脚本前,请确认以下参数:

参数必填说明
region是华为云区域,例如 cn-north-4
--project_id否项目 ID,未提供时会自动获取
--availability_zone否可用区,某些资源查询需要此参数

其他特定脚本参数请参阅 references/<service>/guide.md。


输出格式

查询结果以 JSON 格式输出,包含以下常见字段:

  • total:匹配资源的总数
  • items:资源列表,每项资源包含 id、name、status 等关键字段
  • 具体字段因资源类型而异;详情请参阅各自的 guide.md

验证方法

  1. 运行环境检查脚本,确认依赖项和凭证可用
  2. 使用 -h 参数查看脚本用法,并确认参数无误
  3. 查询已知资源,并与控制台数据进行比对,以验证结果准确性
  4. 检查返回的 total 数量是否合理

最佳实践

  1. 先缩小查询范围(指定 region、可用区等),避免返回过多数据
  2. 使用 --help 查看脚本支持的完整参数列表
  3. 将大量查询结果缓存在本地,避免重复请求
  4. 需要查询多种资源信息时,按依赖顺序查询(例如,先查询 VPC,再查询子网)
  5. 脚本执行失败时,先检查环境变量和网络连接

参考文档

  • 服务查询脚本使用指南:references/<service>/guide.md

注意事项

  1. 此技能仅提供只读查询能力,不执行任何写入操作
  2. 请勿输出 HW_ACCESS_KEY、HW_SECRET_KEY 等环境变量的值
  3. 所有脚本都必须通过 skill action=exec 执行;请勿直接在 shell 中运行
  4. 请勿猜测脚本名称;严格按照 guide.md 中的名称执行
  5. 查询前必须运行环境检查脚本
  6. 使用临时 AK/SK 时,必须设置 HW_SECURITY_TOKEN

评论

支持 Markdown