Install
openclaw skills install @erickeyhu-hug/huawei-cloud-evs-listQuery the list of Huawei Cloud EVS (Elastic Volume Service) disks under the current tenant / project, focused on the EVS disk NAME list. Returns each disk's name, id, status and size; can also output a pure EVS name-only list. Supports filtering by status, name and pagination (limit/offset). Uses the KooCLI command hcloud EVS ListVolumes --cli-region={region} (primary) against the v2 API, or the huaweicloudsdkevs Python SDK (fallback). Read-only — never creates, modifies or deletes any disk. Use this skill whenever the user wants to list/inspect the EVS disks of the tenant or query the EVS disk name list, e.g. for disk inventory, daily inspection, or cost review. Triggers include: "list EVS", "EVS list", "query EVS names", "EVS name list", "云硬盘列表", "查询云硬盘", "EVS磁盘名称", "云硬盘名称", "list volumes", "list elastic volumes", "how many EVS disks".
openclaw skills install @erickeyhu-hug/huawei-cloud-evs-listThis skill queries the list of EVS (Elastic Volume Service) disks under the
current Huawei Cloud tenant / project and returns their key attributes — in
particular the EVS disk name list (name), along with id, status and
size. It is a read-only inspection skill: it never creates, modifies, or
deletes disks, snapshots, or any related resources.
Architecture:
Agent → hcloud CLI (KooCLI, EVS ListVolumes, primary) → Huawei Cloud EVS v2 API
↘ huaweicloudsdkevs Python SDK (fallback) ↗
API path (verified from huaweicloudsdkevs v2 SDK _list_volumes_http_info):
| Operation | Method | API Path |
|---|---|---|
| List EVS disks (detail) | GET | /v2/{project_id}/cloudvolumes/detail |
Applicable Scenarios:
能力边界(Capability Boundary): 本 Skill 仅查询 EVS(云硬盘)列表。不创建/删除/修改云硬盘,也不查询 快照、云硬盘详情(show-by-id)、挂载关系等其它资源。 若用户询问"创建/删除/扩容云硬盘"、"查询单个云硬盘详情"、"创建快照"等, 请明确告知本 Skill 不提供该能力。
references/cli-installation-guide.mdhuaweicloudsdkevs package installed (SDK fallback only)evs:volumes:list (or the system policy EVS ReadOnlyAccess)
is required to list EVS disks. See references/iam-policies.md--cli-regioncn-north-4; let the user override with another
region if needed.references/verification-method.md.count: 0), first verify that the filter value is legal — in
particular the status value must be one of the enum values listed below.
The EVS API silently ignores an invalid status value and returns an empty
list with HTTP 200 (no error), so an illegal filter value is
indistinguishable from "no disks of that status" unless checked. Confirm the
filter is valid before reporting "no matching disks" to the user.KooCLI format:
hcloud <Service> <Operation> --cli-region=<region> [--key=value]
hcloud EVS ListVolumes --cli-region={region} --cli-output=json
hcloud EVS ListVolumes --cli-region={region} --cli-output=json | jq -r '.volumes[].name'
hcloud EVS ListVolumes --cli-region={region} --cli-output=json \
| jq -r '.volumes[] | [.name, .id, .status, .size] | @tsv'
hcloud EVS ListVolumes --cli-region={region} --status=available --cli-output=json
statusaccepts enum values ONLY. The valid values are:creating,available,reserved,attaching,in-use,deleting,error,error_deleting,backing-up,restoring-backup,extending,downloading,uploading,retyping,rollbacking.Invalid values are silently ignored by the EVS API — a typo such as
--status=avaliable(or any value outside the enum above) returns HTTP 200 with an empty list ({"count":0,"volumes":[]}) and exit code 0, with no error message. This is indistinguishable from "the project has no disks of that status". Always use the exact enum values above, and when a status filter returns an empty result, double-check that the value used is a valid enum value before concluding that no disks match.
hcloud EVS ListVolumes --cli-region={region} --name={volume_name} --cli-output=json
hcloud EVS ListVolumes --cli-region={region} --limit=25 --offset=0 --cli-output=json
Note: In the EVS v2 list response, the disk name is the top-level
namefield of each item involumes[]. The id isid, the status isstatusand the size (GB) issize.countholds the total number of matched disks.offsetis a record offset (0-based) used together withlimit; the default limit is 1000.
| Parameter | Required | Description | Example |
|---|---|---|---|
{region} | Yes | Huawei Cloud region | cn-north-4 |
{status} | No | Disk status filter — enum only: creating, available, in-use, error, etc. (invalid values silently return an empty list) | available |
{name} | No | Disk name filter | data-disk-01 |
{limit} | No | Max records returned (default 1000) | 25 |
{offset} | No | Record offset, 0-based (default 0) | 0 |
The KooCLI command format is:
hcloud <Service> <Operation> --cli-region=<region> [--key=value ...]
Note: this is a generic format template, not an executable command — replace
<Service>,<Operation>,<region>and the parameters with real values (e.g.hcloud EVS ListVolumes --cli-region=cn-north-4).
EVS (starts with uppercase).ListVolumes.--cli-region=<region>.--key=value, for example --status=available.