mcpField
H
huawei-cloud-network-query

huawei-cloud-network-query

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

关于 huawei-cloud-network-query

此技能通过本地 Python 脚本和 Huawei Cloud Python SDK,以只读方式查询华为云资源、规格及详情。适用于需要盘点现有资源或为自动化准备实际参数的运维人员;所有查询都依赖脚本指南和真实 API 结果。

主要功能

  1. 01查询资源列表与详情
  2. 02查询可用规格、镜像和云盘类型
  3. 03获取资源标识及依赖关系
  4. 04通过技能执行脚本
  5. 05只读操作,不创建或修改资源

适用场景

  1. 01盘点指定区域的现有云资源
  2. 02查找操作系统可用镜像和实例规格
  3. 03为自动化配置收集资源 ID 与网络信息

安装

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

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

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

包含的文件

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

requirements.txt
references/dns/
guide.md
references/eip/
guide.md
references/elb/
guide.md
references/nat/
guide.md
references/vpc/
guide.md
references/vpn/
guide.md
scripts/
check_env.ps1
check_env.sh
config.py
scripts/dns/
list_api_versions.py
list_custom_line.py
list_endpoint_ipaddresses.py
list_endpoint_vpcs.py
list_endpoints.py
list_instances.py
list_line_groups.py
list_name_servers.py
list_private_zones.py
list_ptr_records.py
list_ptrs.py
list_public_zone_lines.py
list_public_zones.py
list_record_sets_by_zone.py
list_record_sets_with_line.py
list_record_sets.py
list_resolver_query_log_configs.py
list_resolver_rules.py
list_system_lines.py
list_tags.py

详细介绍

Huawei Cloud 资源查询

⚠️ 执行方式(必读):此技能通过本地 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 脚本调用 Huawei Cloud Python SDK,查询 Huawei Cloud 资源、可用规格以及现有资源信息。

此技能适用于以下场景:

  1. 查询特定区域内可用的云资源规格
  2. 查询某个操作系统可用的镜像
  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。


执行流程

调用此 skill 时,必须遵循以下步骤。不要等待用户再次提示:

步骤 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 包内。必须使用 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 自动获取

目录结构

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

  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. 先缩小查询范围(指定区域、可用区等),避免返回过多数据
  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