mcpField
H
huawei-cloud-business-tf-support

huawei-cloud-business-tf-support

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

关于 huawei-cloud-business-tf-support

通过本地 Python 脚本和 Huawei Cloud Python SDK 查询 Huawei Cloud 资源及可用规格的只读 Skill,适用于资源盘点和准备经核实的自动化参数,不执行资源创建、修改或删除。

主要功能

  1. 01只读查询资源列表
  2. 02查询单项资源详情
  3. 03查询规格、镜像和磁盘类型
  4. 04查询资源标识及依赖关系
  5. 05检查环境与凭据

适用场景

  1. 01盘点现有云资源
  2. 02核对区域规格和镜像
  3. 03查找磁盘详情及资源 ID
  4. 04准备经核实的自动化参数

安装

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

$npx skills add https://github.com/huaweicloud/huaweicloud-skills --skill huawei-cloud-business-tf-support

安装后在 Claude Code 中输入/huawei-cloud-business-tf-support确认已加载。

包含的文件

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

requirements.txt
references/bss/
guide.md
scripts/bms/
list_baremetal_flavor_detail_extends.py
scripts/bss/
inquiry_dcs.py
inquiry_elb.py
inquiry_nat.py
list_cities.py
list_conversions.py
list_costs.py
list_counties.py
list_customer_account_change_records.py
list_customer_bills_fee_records.py
list_customer_bills_monthly_break_down.py
list_customer_coupon_change_records.py
list_customer_orders.py
list_customerself_resource_record_details.py
list_customerself_resource_records.py
list_enterprise_multi_account.py
list_enterprise_organizations.py
list_enterprise_sub_customers.py
list_free_resource_infos.py
list_free_resource_usages.py
list_free_resources_usage_records.py
list_measure_units.py
list_multi_account_retrieve_coupons.py
list_multi_account_transfer_coupons.py
list_on_demand_resource_ratings.py
list_pay_per_use_customer_resources.py
list_provinces.py
list_rate_on_period_detail.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. 查询特定 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 中没有某个脚本名称,则表示不支持
  12. 对于有时效性的查询(账单、费用),请使用脚本默认值或先确认当前日期;不要基于假设硬编码时间参数

先决条件

使用前,必须运行环境检查脚本,一步完成环境验证和依赖安装:

  • 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是Huawei Cloud 区域,例如 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、availability zone 等),避免返回过多数据
  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