huawei-cloud-computing-query について
ローカルの Python スクリプトと Huawei Cloud Python SDK を使って、Huawei Cloud のリソースを読み取り専用で照会するスキルです。リソースの棚卸しや自動化に使う情報を集める運用担当者向けで、文書化されたスクリプトと実際の API 応答に基づいて照会します。
主な機能
- 01リソース一覧と詳細の照会
- 02利用可能な仕様、イメージ、ディスク種別の検索
- 03リソース ID と依存関係の取得
- 04スキル経由でスクリプトを実行
- 05リソースの変更を伴わない読み取り専用操作
活用シーン
- 01指定リージョンの既存リソースの棚卸し
- 02OS 用イメージやインスタンス仕様の検索
- 03自動化向けのリソース ID とネットワーク情報の収集
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ huaweicloud/ huaweicloud-skills --skill huawei-cloud-computing-queryインストール後、Claude Code で/huawei-cloud-computing-queryを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
requirements.txtreferences/as/guide.mdreferences/bms/guide.mdreferences/ecs/guide.mdreferences/ims/guide.mdscripts/as/_common.pylist_all_scaling_v2_policies.pylist_api_versions.pylist_group_scheduled_tasks.pylist_hook_instances.pylist_life_cycle_hooks.pylist_resource_instances.pylist_scaling_activity_logs.pylist_scaling_activity_v2_logs.pylist_scaling_configs.pylist_scaling_groups.pylist_scaling_instances.pylist_scaling_notifications.pylist_scaling_policies.pylist_scaling_policy_execute_logs.pylist_scaling_tag_infos_by_resource_id.pylist_scaling_tag_infos_by_tenant_id.pylist_scaling_v2_policies.pylist_warm_pool_instances_new.pylist_warm_pool_instances.pyshow_api_version.pyshow_life_cycle_hook.pyshow_policy_and_instance_quota.pyshow_resource_quota.pyshow_scaling_config.py詳細
Huawei Cloud リソースのクエリ
⚠️ 実行方法(必読):このスキルは、ローカルの Python スクリプトを使用してクエリを実行します。hcloud、openstack などの CLI ツールや、API の直接呼び出しは禁止されています。
- クエリスクリプトはスキルディレクトリ
scripts/<service_category>/(例:scripts/as/list_scaling_groups.py)にあります。- すべてのスクリプトと環境チェック用スクリプトはスキルパッケージ内にあります。実行には必ず
skill action=execを使用してください。シェルから直接実行しないでください。- スクリプトのパスとパラメーターについては、
references/<service>/guide.mdを参照してください。- hcloud、openstack、curl IAM などの CLI/API による方法を試さないでください。このスキルはそれらのツールに依存しません。
- すべてのパスはスキルディレクトリ(この SKILL.md があるディレクトリ)からの相対パスです。
概要
このスキルは、ローカルの Python スクリプトを通じて Huawei Cloud Python SDK を呼び出し、Huawei Cloud リソース、利用可能な仕様、および既存リソースの情報を照会する、単独で動作する読み取り専用のクエリスキルです。
このスキルは、次のようなシナリオで使用できます。
- 指定したリージョンで利用可能なクラウドリソースの仕様を照会する
- 特定のオペレーティングシステムで利用可能なイメージを照会する
- クラウドディスクの種類と既存のクラウドディスク情報を照会する
- 既存リソースとその主要な属性を照会する
- 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を使用し、シェルから直接実行しないでください - 仮想環境は 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 には、対応するリソースの使用ガイドが含まれます
- 各スクリプトは、明確なクエリアクションを 1 つ実行します
- 各リソースカテゴリには、スクリプトの機能、パラメーター、使用方法を説明する guide.md が少なくとも 1 つあります
パラメーターの確認
クエリスクリプトを実行する前に、次のパラメーターを確認してください。
| パラメーター | 必須 | 説明 |
|---|---|---|
| region | はい | Huawei Cloud のリージョン(例:cn-north-4) |
| --project_id | いいえ | プロジェクト ID。指定されていない場合は自動的に取得されます |
| --availability_zone | いいえ | アベイラビリティーゾーン。一部のリソースクエリで必要です |
スクリプト固有のパラメーターについては、references/<service>/guide.md を参照してください。
出力形式
クエリ結果は JSON 形式で出力され、次の共通フィールドが含まれます。
total:一致するリソースの総数items:リソースの一覧。各リソースには、id、name、status などの主要フィールドが含まれます- 固有のフィールドはリソースの種類によって異なります。詳細については、各 guide.md ファイルを参照してください
検証方法
- 環境確認スクリプトを実行し、依存関係と認証情報が利用可能であることを確認します
-hパラメーターを使用してスクリプトの使い方を確認し、パラメーターが正しいことを確認します- 既知のリソースに対してクエリを実行し、コンソールのデータと比較して結果の正確性を検証します
- 返された
totalの件数が妥当かどうか確認します
ベストプラクティス
- データが多く返されすぎないよう、まずクエリ範囲を絞り込みます(リージョン、アベイラビリティーゾーンなどを指定します)
--helpを使用して、スクリプトでサポートされているパラメーターの一覧を確認します- クエリ結果が大量の場合は、リクエストの繰り返しを避けるため、ローカルにキャッシュします
- 複数のリソース情報が必要な場合は、依存関係の順にクエリします(例:まず VPC をクエリし、次にサブネットをクエリします)
- スクリプトの実行に失敗した場合は、まず環境変数とネットワーク接続を確認します
参考ドキュメント
- 各サービスのクエリスクリプト使用ガイド:
references/<service>/guide.md
注意事項
- このスキルが提供するのは読み取り専用のクエリ機能のみであり、書き込み操作は実行しません
- HW_ACCESS_KEY や HW_SECRET_KEY などの環境変数の値を出力しないでください
- すべてのスクリプトは
skill action=execを介して実行する必要があります。シェルから直接実行しないでください - スクリプト名を捏造しないでください。guide.md に記載された名前に従って実行してください
- クエリを実行する前に、環境確認スクリプトを実行する必要があります
- 一時的な AK/SK を使用する場合は、HW_SECURITY_TOKEN を設定する必要があります