Huawei Cloud Resource Query
⚠️ Execution Method (Must Read): This skill executes queries via local Python scripts. Using hcloud, openstack, or other CLI tools or direct API calls is prohibited.
- Query scripts are located under the skill directory
scripts/<service_category>/ (e.g., scripts/as/list_scaling_groups.py)
- All scripts and environment check scripts are inside the skill package. You must use
skill action=exec to execute them; do not run them directly in a shell
- For specific script paths and parameters, see
references/<service>/guide.md
- Do not attempt hcloud, openstack, curl IAM, or other CLI/API methods. This skill does not depend on these tools
- All paths are relative to the skill directory, which is the directory where this SKILL.md resides
Overview
This skill is a standalone read-only query skill that uses local Python scripts to call the Huawei Cloud Python SDK to query Huawei Cloud resources, available specifications, and existing resource information.
This skill is applicable to the following scenarios:
- Query available cloud resource specifications in a given region
- Query available images for a certain operating system
- Query cloud disk types and existing cloud disk information
- Query existing resources and their key attributes
- Query resources not created through Terraform or other IaC tools
- Prepare real parameters for automation configuration, resource verification, or environment inventory
- Obtain reusable information such as resource IDs, names, specifications, images, networks, and disks
This skill does NOT handle the following:
- Creating resources
- Modifying resources
- Deleting resources
- Guessing or fabricating information that has not been queried
Capability Scope
This skill provides query capabilities through categorized scripts under the scripts directory, and usage instructions through categorized guides under the references directory.
Capabilities provided by this skill include:
- Query resource lists
- Query individual resource details
- Query available specifications, images, disk types, and other selection information
- Query key identifiers and dependency relationships of existing resources
Usage Principles
Important: Script paths executed within this skill are all relative to the skill directory, which is the directory where this SKILL.md resides
- This skill only performs queries; it does not perform any write operations
- Prioritize using explicitly specified region, project, AZ, resource name, resource ID, etc. provided by the user
- Query results must be based on actual API responses; do not infer based on experience
- Returned results should prioritize retaining key fields for subsequent reuse
- When the result set is large, narrow the scope first using conditions such as region, name, id, status, tag, etc.
- If there is no corresponding script or guide for the current resource type, clearly state that it is not supported; do not return unreliable results
- If the user has not provided necessary scope information and there are no default values in the environment, confirm the missing information before executing the query
- Execute directly according to guide.md; do not view script contents in the scripts directory
- Cache output when it is large
- You must execute
-h before each script execution to view usage
- Do not guess script names; execute according to the script names in guide.md. If a script name is not in guide.md, it means it is not supported
Prerequisites
Before using, you must run the environment check script to complete environment validation and dependency installation in one step:
- 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 Note: Do not use && to chain commands (PowerShell 5.x does not support it). Use semicolons if you need to change directories first.
The script will check in sequence: Python >= 3.6 → install dependencies → validate SDK → validate credentials → validate service availability.
If the environment check fails, fix the issues before continuing with other scripts.
Environment Variables:
| Variable |
Required |
Description |
| HW_ACCESS_KEY |
Yes |
Huawei Cloud AK |
| HW_SECRET_KEY |
Yes |
Huawei Cloud SK |
| HW_REGION_NAME |
No |
Default cn-north-4 |
| HW_PROJECT_ID |
No |
Project ID (automatically obtained via IAM API when not set) |
| HW_SECURITY_TOKEN |
No |
Required when using temporary AK/SK |
Do not output the values of the above environment variables. For additional parameters required by other resource scripts (availability zone, enterprise project, etc.), see the corresponding guide.md.
Execution Flow
When this skill is invoked, you must follow these steps. Do not wait for the user to prompt again:
Step 1: Environment Preparation
Run the environment check script to ensure dependencies are installed and credentials are configured:
- Linux / macOS:
skill action=exec: bash skill://scripts/check_env.sh
- Windows:
skill action=exec: powershell -ExecutionPolicy Bypass -File skill://scripts/check_env.ps1
If the environment check fails, fix the issues as prompted and re-run until it passes.
Step 2: Identify and Execute Query Scripts
- Based on the user's query intent, read
references/<service>/guide.md to determine the script path and parameters to execute
- First execute
-h to view script usage:
- 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
- Assemble parameters based on user requirements and execute the script:
- 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>
- Format the results and return them to the user
Important:
- All scripts and environment check scripts are inside the skill package. You must use
skill action=exec to execute them; do not run them directly in a shell
- The venv is automatically created by the check_env script. On Linux/macOS, Python is located at
.venv/bin/python3; on Windows, at .venv/Scripts/python3.exe
- Do not use
python3 directly to execute scripts
- Do not read script source code in the scripts directory; just follow the instructions in guide.md
- Cache results when output is large
- The
--project_id parameter is optional; when not provided, it is automatically obtained via the IAM API based on region
Directory Structure
Directory conventions are as follows (all paths are relative to the skill directory):
- scripts// contains Python query scripts for the corresponding resources. You do not need to read script contents; just execute scripts according to the usage instructions in guide.md
- references//guide.md contains usage guides for the corresponding resources
- Each script is responsible for only one clear, single query action
- Each resource category maintains at least one guide.md to describe script capabilities, parameters, and usage
Parameter Confirmation
Before executing a query script, confirm the following parameters:
| Parameter |
Required |
Description |
| region |
Yes |
Huawei Cloud region, e.g., cn-north-4 |
| --project_id |
No |
Project ID; automatically obtained when not provided |
| --availability_zone |
No |
Availability zone; required for some resource queries |
For script-specific parameters, see references/<service>/guide.md.
Output Format
Query results are output in JSON format, containing the following common fields:
total: Total number of matched resources
items: Resource list, where each resource contains key fields such as id, name, status, etc.
- Specific fields vary by resource type; see individual guide.md files for details
Verification Method
- Run the environment check script to confirm dependencies and credentials are available
- Use the
-h parameter to view script usage and confirm correct parameters
- Execute queries on known resources and compare with console data to verify result accuracy
- Check whether the returned
total count is reasonable
Best Practices
- Narrow the query scope first (specify region, availability zone, etc.) to avoid returning too much data
- Use
--help to view the complete list of supported parameters for a script
- Cache large query results locally to avoid repeated requests
- When querying multiple resources, follow dependency order (e.g., query VPC first, then subnets)
- When script execution fails, check environment variables and network connectivity first
Reference Documentation
- Query script usage guides for each service:
references/<service>/guide.md
Notes
- This skill only provides read-only query capabilities; it does not perform any write operations
- Do not output the values of environment variables such as HW_ACCESS_KEY, HW_SECRET_KEY, etc.
- All scripts must be executed via
skill action=exec; do not run them directly in a shell
- Do not guess script names; strictly execute according to the names in guide.md
- You must run the environment check script before querying
- When using temporary AK/SK, you must set HW_SECURITY_TOKEN
1---
2name: huawei-cloud-iam-query
3description: "Queries Huawei Cloud identity and access management resources (IAM) via read-only Python SDK. Covers users, groups, policies, agencies, AK/SK, MFA devices, login/password/ACL policies, security compliance, and account quotas. No write operations. Use this skill when the user needs to query IAM identity info, check policies/permissions, view agency details, or inspect AK/SK/MFA status. Triggers: IAM, 用户, 用户组, 策略, 委托, 权限, AK/SK, MFA, 密码策略, 安全合规, 身份查询, 身份认证, identity, policy, agency."
4---
5
6# Huawei Cloud Resource Query
7
8> **⚠️ Execution Method (Must Read): This skill executes queries via local Python scripts. Using hcloud, openstack, or other CLI tools or direct API calls is prohibited.**
9>
10> - Query scripts are located under the skill directory `scripts/<service_category>/` (e.g., `scripts/as/list_scaling_groups.py`)
11> - All scripts and environment check scripts are inside the skill package. **You must use `skill action=exec` to execute them; do not run them directly in a shell**
12> - For specific script paths and parameters, see `references/<service>/guide.md`
13> - **Do not attempt hcloud, openstack, curl IAM, or other CLI/API methods. This skill does not depend on these tools**
14> - **All paths are relative to the skill directory, which is the directory where this SKILL.md resides**
15
16## Overview
17
18This skill is a standalone read-only query skill that uses local Python scripts to call the Huawei Cloud Python SDK to query Huawei Cloud resources, available specifications, and existing resource information.
19
20This skill is applicable to the following scenarios:
21
221. Query available cloud resource specifications in a given region
232. Query available images for a certain operating system
243. Query cloud disk types and existing cloud disk information
254. Query existing resources and their key attributes
265. Query resources not created through Terraform or other IaC tools
276. Prepare real parameters for automation configuration, resource verification, or environment inventory
287. Obtain reusable information such as resource IDs, names, specifications, images, networks, and disks
29
30This skill does NOT handle the following:
31
321. Creating resources
332. Modifying resources
343. Deleting resources
354. Guessing or fabricating information that has not been queried
36
37---
38
39## Capability Scope
40
41This skill provides query capabilities through categorized scripts under the scripts directory, and usage instructions through categorized guides under the references directory.
42Capabilities provided by this skill include:
43
441. Query resource lists
452. Query individual resource details
463. Query available specifications, images, disk types, and other selection information
474. Query key identifiers and dependency relationships of existing resources
48
49---
50
51## Usage Principles
52
53Important: Script paths executed within this skill are all relative to the skill directory, which is the directory where this SKILL.md resides
54
551. This skill only performs queries; it does not perform any write operations
562. Prioritize using explicitly specified region, project, AZ, resource name, resource ID, etc. provided by the user
573. Query results must be based on actual API responses; do not infer based on experience
584. Returned results should prioritize retaining key fields for subsequent reuse
595. When the result set is large, narrow the scope first using conditions such as region, name, id, status, tag, etc.
606. If there is no corresponding script or guide for the current resource type, clearly state that it is not supported; do not return unreliable results
617. If the user has not provided necessary scope information and there are no default values in the environment, confirm the missing information before executing the query
628. Execute directly according to guide.md; do not view script contents in the scripts directory
639. Cache output when it is large
6410. You must execute `-h` before each script execution to view usage
6511. Do not guess script names; execute according to the script names in guide.md. If a script name is not in guide.md, it means it is not supported
66
67---
68
69## Prerequisites
70
71**Before using, you must run the environment check script to complete environment validation and dependency installation in one step:**
72
73- Linux / macOS: `skill action=exec: bash skill://scripts/check_env.sh`
74- Windows: `skill action=exec: powershell -ExecutionPolicy Bypass -File skill://scripts/check_env.ps1`
75
76> Windows Note: Do not use `&&` to chain commands (PowerShell 5.x does not support it). Use semicolons if you need to change directories first.
77
78The script will check in sequence: Python >= 3.6 → install dependencies → validate SDK → validate credentials → validate service availability.
79If the environment check fails, fix the issues before continuing with other scripts.
80
81**Environment Variables:**
82
83| Variable | Required | Description |
84|------|------|------|
85| HW_ACCESS_KEY | Yes | Huawei Cloud AK |
86| HW_SECRET_KEY | Yes | Huawei Cloud SK |
87| HW_REGION_NAME | No | Default cn-north-4 |
88| HW_PROJECT_ID | No | Project ID (automatically obtained via IAM API when not set) |
89| HW_SECURITY_TOKEN | No | Required when using temporary AK/SK |
90
91**Do not output the values of the above environment variables.** For additional parameters required by other resource scripts (availability zone, enterprise project, etc.), see the corresponding guide.md.
92
93---
94
95## Execution Flow
96
97**When this skill is invoked, you must follow these steps. Do not wait for the user to prompt again:**
98
99### Step 1: Environment Preparation
100
101Run the environment check script to ensure dependencies are installed and credentials are configured:
102
103- Linux / macOS: `skill action=exec: bash skill://scripts/check_env.sh`
104- Windows: `skill action=exec: powershell -ExecutionPolicy Bypass -File skill://scripts/check_env.ps1`
105
106If the environment check fails, fix the issues as prompted and re-run until it passes.
107
108### Step 2: Identify and Execute Query Scripts
109
1101. Based on the user's query intent, read `references/<service>/guide.md` to determine the script path and parameters to execute
1112. First execute `-h` to view script usage:
112 - Linux / macOS: `skill action=exec: skill://.venv/bin/python3 skill://scripts/<service>/<script>.py -h`
113 - Windows: `skill action=exec: skill://.venv/Scripts/python3.exe skill://scripts/<service>/<script>.py -h`
1143. Assemble parameters based on user requirements and execute the script:
115 - Linux / macOS: `skill action=exec: skill://.venv/bin/python3 skill://scripts/<service>/<script>.py <parameters>`
116 - Windows: `skill action=exec: skill://.venv/Scripts/python3.exe skill://scripts/<service>/<script>.py <parameters>`
1174. Format the results and return them to the user
118
119**Important**:
120
121- All scripts and environment check scripts are inside the skill package. **You must use `skill action=exec` to execute them; do not run them directly in a shell**
122- The venv is automatically created by the check_env script. On Linux/macOS, Python is located at `.venv/bin/python3`; on Windows, at `.venv/Scripts/python3.exe`
123- Do not use `python3` directly to execute scripts
124- Do not read script source code in the scripts directory; just follow the instructions in guide.md
125- Cache results when output is large
126- The `--project_id` parameter is optional; when not provided, it is automatically obtained via the IAM API based on region
127
128---
129
130## Directory Structure
131
132Directory conventions are as follows (all paths are relative to the skill directory):
133
1341. scripts/<resource_category>/ contains Python query scripts for the corresponding resources. You do not need to read script contents; just execute scripts according to the usage instructions in guide.md
1352. references/<resource_category>/guide.md contains usage guides for the corresponding resources
1363. Each script is responsible for only one clear, single query action
1374. Each resource category maintains at least one guide.md to describe script capabilities, parameters, and usage
138
139---
140
141## Parameter Confirmation
142
143Before executing a query script, confirm the following parameters:
144
145| Parameter | Required | Description |
146|------|------|------|
147| region | Yes | Huawei Cloud region, e.g., cn-north-4 |
148| --project_id | No | Project ID; automatically obtained when not provided |
149| --availability_zone | No | Availability zone; required for some resource queries |
150
151For script-specific parameters, see `references/<service>/guide.md`.
152
153---
154
155## Output Format
156
157Query results are output in JSON format, containing the following common fields:
158
159- `total`: Total number of matched resources
160- `items`: Resource list, where each resource contains key fields such as id, name, status, etc.
161- Specific fields vary by resource type; see individual guide.md files for details
162
163---
164
165## Verification Method
166
1671. Run the environment check script to confirm dependencies and credentials are available
1682. Use the `-h` parameter to view script usage and confirm correct parameters
1693. Execute queries on known resources and compare with console data to verify result accuracy
1704. Check whether the returned `total` count is reasonable
171
172---
173
174## Best Practices
175
1761. Narrow the query scope first (specify region, availability zone, etc.) to avoid returning too much data
1772. Use `--help` to view the complete list of supported parameters for a script
1783. Cache large query results locally to avoid repeated requests
1794. When querying multiple resources, follow dependency order (e.g., query VPC first, then subnets)
1805. When script execution fails, check environment variables and network connectivity first
181
182---
183
184## Reference Documentation
185
186- Query script usage guides for each service: `references/<service>/guide.md`
187
188---
189
190## Notes
191
1921. This skill only provides read-only query capabilities; it does not perform any write operations
1932. Do not output the values of environment variables such as HW_ACCESS_KEY, HW_SECRET_KEY, etc.
1943. All scripts must be executed via `skill action=exec`; do not run them directly in a shell
1954. Do not guess script names; strictly execute according to the names in guide.md
1965. You must run the environment check script before querying
1976. When using temporary AK/SK, you must set HW_SECURITY_TOKEN