huawei-cloud-storage-query について
Huawei Cloud のリソース調査と構成準備向けの読み取り専用スキルです。ローカルの Python スクリプトと Huawei Cloud Python SDK でリソース、仕様、依存関係を取得し、作成・変更・削除は行いません。
主な機能
- 01リソース一覧と詳細の取得
- 02仕様、イメージ、ディスク種別の照会
- 03リソース ID と依存関係の取得
- 04リージョン、名前、状態による絞り込み
活用シーン
- 01リージョン内のリソースを棚卸し
- 02自動構成用の実データを収集
- 03IaC 以外で作成したリソースを確認
- 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詳細
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 のリソース、利用可能な仕様、および既存リソースの情報を照会する、読み取り専用の独立したクエリスキルです。
このスキルは、以下のシナリオに対応します。
- 指定したリージョンで利用可能なクラウドリソースの仕様を照会する
- 指定した 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を使って実行し、シェルから直接実行しないでください - 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 が少なくとも 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 を設定する必要があります