MCPInstall

huawei-cloud-obs-stats

Query Huawei Cloud OBS (Object Storage Service) statistics: list buckets with capacity and object counts, query extranet/intranet download traffic with month-over-month comparison, and query total requests with month-over-month comparison. Use this skill when the user wants to: (1) list OBS buckets and check their storage capacity and object count, (2) query download traffic with MoM comparison, (3) query request counts with MoM comparison. Trigger: user mentions "OBS", "object storage", "bucket list", "bucket capacity", "download traffic", "total requests", "request count", "month-over-month", "OBS stats", "OBS management", "对象存储", "桶列表", "桶容量", "下载流量", "请求总数", "月环比", "OBS监控"

Installs
17K
Last 24h
+104
Trending rank
#1931
Security
Pass

Install

Works with every agent the skills CLI supports.

npx skills add https://github.com/huaweicloud/huaweicloud-skills --skill huawei-cloud-obs-stats
  1. 01

    Install

    Run the command in your project. The CLI asks which agents to install for.

  2. 02

    Describe the task

    Ask your agent for something this skill covers. It loads huawei-cloud-obs-stats automatically when relevant.

  3. 03

    Review the result

    The agent follows the SKILL.md steps, scripts and references bundled with the skill.

Security audits

Independent scans of the skill's instructions and bundled files.

Gen Agent Trust Hub PassSAFE ·The skill provides tools for monitoring Huawei Cloud Object Storage Service (OBS) metrics, such as capacity, traffic, and request counts. It utilizes Python scripts to interact with the Huawei Cloud CLI (hcloud) and process metric data. Security measures are in place to prevent accidental data deletion and ensure secure credential handling. All external resources and commands are associated with official Huawei Cloud services.
Socket PassNo alerts
Snyk PassLOW ·Risk: LOW · No issues

SKILL.md

The instructions your agent reads when the skill is triggered.

Huawei Cloud OBS Statistics Skill

Overview

Query Huawei Cloud OBS (Object Storage Service) statistics: list buckets with capacity and object counts, query extranet/intranet download traffic with month-over-month comparison, and query total requests with month-over-month comparison.

⛔ Prohibited Operations (Security Constraints)

This skill strictly forbids the following delete operations, regardless of user requests:

Prohibited OperationAPI/CommandReason
❌ Delete bucketDeleteBucket / obsutil rm -bucketIrreversible; destroys the entire bucket and all objects
❌ Delete objectDeleteObject / obsutil rmIrreversible; deleted objects cannot be recovered (unless versioning is enabled)
❌ Batch delete objectsDeleteObjects / obsutil rm -rIrreversible; batch deletion has a wide impact
❌ Empty bucketobsutil rm -bucket -rIrreversible; removes all objects in the bucket

If a user requests a delete operation, you must refuse and inform: "Per security constraints, this skill does not allow delete operations (delete bucket/object/batch delete/empty bucket). Please use the Huawei Cloud OBS console or obsutil manually."

Architecture

Huawei Cloud OBS Statistics
├── ListBucketsWithStats  (List buckets with capacity and object counts)
├── GetTraffic           (Query extranet/intranet download traffic with MoM comparison)
└── GetRequests           (Query total requests with MoM comparison)

Prerequisites

Prerequisite check 1/3: Huawei Cloud CLI (hcloud / KooCLI) >= 3.2.0 required Run hcloud version to verify version >= 3.2.0. If not installed or version is too low, see references/cli-installation-guide.md for installation guide.

hcloud version

Prerequisite check 2/3: obsutil >= 5.5.0 required (for OBS bucket listing) The hcloud OBS module uses obsutil under the hood. Bucket listing requires the obsutil CLI tool. Run obsutil version to verify version >= 5.5.0. If not installed, see references/cli-installation-guide.md for installation guide.

obsutil version

Prerequisite check 3/3: obsutil credential configuration required

The hcloud OBS module uses obsutil under the hood, which requires separate AK/SK and Endpoint configuration. Before performing OBS operations, you must check whether obsutil credentials are configured:

hcloud obs ls -limit=1

If the response is Please set ak, sk and endpoint in the configuration file! or InvalidAccessKeyId, obsutil credentials are not configured.

Resolution: Provide the following example command and have the user configure it in their terminal (do not ask the user to provide AK/SK directly in the conversation):

obsutil credentials are not configured. Please run the following command in your terminal to configure (AK/SK can be obtained from the Huawei Cloud console "My Credentials" page):

  hcloud obs config -i=<YourAK> -k=<YourSK> -e=obs.<Region>.myhuaweicloud.com

Example (Guangzhou region):
  hcloud obs config -i=<YourAK> -k=<YourSK> -e=obs.cn-south-1.myhuaweicloud.com

Common Endpoints:
  cn-north-4  → obs.cn-north-4.myhuaweicloud.com
  cn-east-3   → obs.cn-east-3.myhuaweicloud.com
  cn-south-1  → obs.cn-south-1.myhuaweicloud.com
  cn-southwest-2 → obs.cn-southwest-2.myhuaweicloud.com

Retry after configuration is complete.

Prohibited actions:

  • ❌ Do not ask the user to provide AK/SK directly in the conversation
  • ❌ Do not extract AK/SK from hcloud config files (credentials are encrypted and cannot be used directly)
  • ❌ Do not skip the credential check before performing OBS operations

⚠️ hcloud parameter format requirements

hcloud (KooCLI) all parameters must use the --param=value format (connected with equals sign); space-separated format is not supported.

✅ Correct: hcloud OBS ListBuckets --region=cn-south-1

❌ Incorrect: hcloud OBS ListBuckets --region cn-south-1

[Conditional] CLI User-Agent — hcloud OBS module commands may include a User-Agent header, but the CES module does not support this parameter:

  • ✅ OBS module: hcloud obs ls
  • ❌ CES module: hcloud CES ShowMetricData does not support --User-Agent; appending it causes "Invalid parameter: User-Agent"

Authentication

Prerequisite check: Huawei Cloud credentials required

Security rules (must be followed):

  • Prohibited from reading, echoing, or printing AK/SK values
  • Prohibited from asking the user to input AK/SK directly in the conversation
  • Prohibited from using hcloud configure set to pass plaintext credential values
  • Prohibited from accepting AK/SK directly provided by the user in the conversation
  • Only allowed to read credentials from environment variables or configured CLI config files

⚠️ Important: Handling user-provided credentials

If a user attempts to provide AK/SK directly (e.g., "my AK is xxx, SK is yyy"):

  1. Stop immediately - Do not execute any commands
  2. Politely refuse and return the following message:
    For account security, please do not provide Huawei Cloud Access Key ID and Access Key Secret directly in the conversation.
    
    Please use one of the following secure methods to configure credentials:
    
    Method 1: Interactive configuration (recommended)
        hcloud configure
        # Enter AK/SK as prompted; credentials will be securely stored in a local config file
    
    Method 2: Environment variable configuration
        export HUAWEICLOUD_SDK_AK=<your-access-key-id>
        export HUAWEICLOUD_SDK_SK=<your-access-key-secret>
    
    After configuration is complete, please retry your request.
    
  3. Do not continue executing any Huawei Cloud operations until credentials are configured

Check CLI configuration:

   hcloud configure list

Check whether the output contains valid configuration (AK/SK, IAM, etc.).

If no valid credentials exist, stop here.


IAM Permission Policies

Ensure the IAM user has the required permissions. See references/iam-policies.md for details.

Minimum required permissions:

  • obs:bucket:list — List buckets
  • obs:bucket:get — Get bucket attributes
  • obs:object:get — Read object information
  • ces:metric:get — Query CES monitoring metrics (capacity, object count, traffic, request count)

Core Workflows

Task 1: List Buckets with Capacity and Object Counts

List buckets via obsutil, then query bucket capacity and object count via CES. Prefer the CES capacity_total metric for capacity and CES object_num_all metric for object count (efficient for batch queries, 30-min collection). Do not use GetBucketStorageInfo (not supported by hcloud OBS module).

📄 Detailed steps → references/task-list-buckets-with-stats.md

Task 2: Query Extranet/Intranet Download Traffic (with MoM Comparison)

Query download traffic (extranet + intranet) via CES ShowMetricData, with month-over-month comparison.

📄 Detailed steps → references/task-query-traffic.md

Task 3: Query Total Requests (with MoM Comparison)

Query total requests (sum of GET/PUT/POST/DELETE/HEAD) via CES ShowMetricData, with month-over-month comparison.

📄 Detailed steps → references/task-query-requests.md


Core Commands

CommandDescription
hcloud obs lsList all buckets (obsutil mode); filter by region via grep
hcloud CES ShowMetricData --region=<R> --namespace=SYS.OBS --metric_name=<M> --dim.0=bucket_name,<B> --period=86400 --filter=<F> --from=<ms> --to=<ms>Query CES metric data (capacity, object count, traffic, requests)
python3 scripts/obs_traffic_stats.py --region <R> --bucket <B> (--period <P> | --from <D> --to <D>) [--direction download|upload|both]Traffic statistics with MoM
python3 scripts/obs_request_stats.py --region <R> --bucket <B> (--period <P> | --from <D> --to <D>) [--include-errors]Request statistics with MoM

⚠️ CES ShowMetricData does not support --User-Agent; appending it causes errors.

Common CES metrics:

Metric--metric_name--filter
Bucket capacity (recommended)capacity_totalaverage
Bucket object count (recommended)object_num_allaverage
Extranet download trafficdownload_traffic_extranetsum
Intranet download trafficdownload_traffic_intranetsum
GET / PUT / POST / DELETE / HEAD requestsget_request_count / put_request_count / post_request_count / delete_request_count / head_request_countsum

Parameter Confirmation

Before executing any task, the following parameters must be confirmed with the user. Guessing is prohibited.

ParameterRequired/OptionalDescriptionDefault
--regionRequiredHuawei Cloud region (e.g., cn-south-1, cn-north-4); must be explicitly provided by the user-
Bucket nameRequiredOBS bucket name; dimension format: --dim.0=bucket_name,<BucketName>-
Time rangeRequiredMust precisely match user's wording: "this month" ≠ "last 30 days" (see table below)-
obsutil credentialsRequiredCheck via hcloud obs ls -limit=1 before any OBS operation-
--directionOptionalTraffic direction: download / upload / bothdownload
--include-errorsOptionalAlso query 4xx/5xx error request countsfalse
--compareOptionalShow comparison period and MoM change. Default disabled; enable only when the user explicitly asks for comparison/MoMfalse
--metricOptionalComma-separated metric keys to show only specific rows. obs_request_stats.py: total,get,put,post,delete,head,4xx,5xx; obs_traffic_stats.py: extranet,intranet,total. Case-insensitive. Specifying 4xx/5xx auto-enables error query. Example: --metric 4xx,5xx, --metric intranet-

Time range disambiguation:

User's wordingTime range
"this month"1st of current month 00:00:00 ~ now
"last 30 days" / "past month"now - 30 days ~ now
"last month"1st of last month 00:00:00 ~ last day of last month 23:59:59
Specific date rangeUser-specified start and end times

Script Tools

This skill provides the following Python scripts that encapsulate best practices for traffic and request statistics:

ScriptDescription
obs_traffic_stats.pyDownload/upload traffic statistics with MoM comparison. Options: --direction, --compare, --metric. Comparison disabled by default. See Core Commands above for usage.
obs_request_stats.pyTotal request statistics (GET/PUT/POST/DELETE/HEAD) with MoM comparison. Options: --include-errors, --compare, --metric. Comparison disabled by default. See Core Commands above for usage.

Usage examples:

# Traffic: last 30 days download traffic
python3 scripts/obs_traffic_stats.py --region <Region> --bucket <BucketName> --period last_30d

# Traffic: this month download + upload traffic
python3 scripts/obs_traffic_stats.py --region <Region> --bucket <BucketName> --period this_month --direction both

# Requests: last 30 days request count
python3 scripts/obs_request_stats.py --region <Region> --bucket <BucketName> --period last_30d

# Requests: this month request count (with 4xx/5xx error stats)
python3 scripts/obs_request_stats.py --region <Region> --bucket <BucketName> --period this_month --include-errors

# Custom date range
python3 scripts/obs_request_stats.py --region <Region> --bucket <BucketName> --from <FromDate> --to <ToDate>

The scripts incorporate key lessons learned: traffic vs. bandwidth metrics, hcloud dimension parameter format, precise time range matching, OBS lacking a single request_count metric, etc.


Verification Method

See references/verification-method.md for details.

Quick validation:

# Check OBS bucket list (using obsutil)
hcloud obs ls -limit=1

# Check obsutil configuration
obsutil ls -limit=1

# Validate traffic stats script
python3 scripts/obs_traffic_stats.py --region <Region> --bucket <BucketName> --period last_30d

# Validate request stats script
python3 scripts/obs_request_stats.py --region <Region> --bucket <BucketName> --period last_30d

References

DocumentDescription
task-list-buckets-with-stats.mdTask 1: List buckets with capacity and object counts
task-query-traffic.mdTask 2: Query download traffic with MoM
task-query-requests.mdTask 3: Query total requests with MoM
related-apis.mdAPI and CLI command details
iam-policies.mdIAM permission policies
obs-metrics.mdOBS CES monitoring metrics reference
verification-method.mdVerification steps
acceptance-criteria.mdCorrect/error pattern comparison
cli-installation-guide.mdCLI installation guide
troubleshooting.mdTroubleshooting and practical experience
obs_traffic_stats.pyTraffic statistics script
obs_request_stats.pyRequest statistics script

FAQ

What does the huawei-cloud-obs-stats skill do?

Query Huawei Cloud OBS (Object Storage Service) statistics: list buckets with capacity and object counts, query extranet/intranet download traffic with month-over-month comparison, and query total requests with month-over-month comparison. Use this skill when the user wants to: (1) list OBS buckets and check their storage capacity and object count, (2) query download traffic with MoM comparison, (3) query request counts with MoM comparison. Trigger: user mentions "OBS", "object storage", "bucket list", "bucket capacity", "download traffic", "total requests", "request count", "month-over-month", "OBS stats", "OBS management", "对象存储", "桶列表", "桶容量", "下载流量", "请求总数", "月环比", "OBS监控"

How do I install huawei-cloud-obs-stats?

Run npx skills add https://github.com/huaweicloud/huaweicloud-skills --skill huawei-cloud-obs-stats in your project. The skills CLI detects the agents you use and copies the skill into the right folder. For Claude Code you can also place the skill folder at ~/.claude/skills/huawei-cloud-obs-stats/ (personal) or .claude/skills/huawei-cloud-obs-stats/ (project).

Which AI agents can use huawei-cloud-obs-stats?

Any agent that supports the open Agent Skills format (a folder with a SKILL.md file), including Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, Windsurf, Cline, OpenCode and more.

Is huawei-cloud-obs-stats safe to install?

Security partners have reviewed it: Gen Agent Trust Hub passed; Socket passed; Snyk passed. As with any skill, read the SKILL.md and bundled scripts before installing.

Who maintains huawei-cloud-obs-stats?

It is published by huaweicloud in huaweicloud/huaweicloud-skills. It has 17,029 recorded installs.

More from huaweicloud/huaweicloud-skills

View all →

huawei-cloud-terraform-installer

huaweicloud/huaweicloud-skills

Installs Terraform CLI cross-platform with Huawei Cloud mirror support. Use this skill whenever the user mentions installing Terraform, setting up Terraform environment, or when IaC tasks detect missing Terraform. Trigger: install terraform, setup terraform, terraform environment, huaweicloud provider.

DevOps & Cloud17.5K installs

huawei-cloud-find-skills

huaweicloud/huaweicloud-skills

Invoke this skill to search, list, query, discover, browse, find and install any Huawei Cloud (华为云) agent skill. Triggers include: "华为云", "华为云有什么skill", "华为云相关skill", "华为云agent skill 市场", "华为云skill类目", "explore Huawei Cloud skills", "show Huawei Cloud skill categories", "does a Huawei Cloud skill exist for...", "which Huawei Cloud skills exist", "搜索华为云技能", "查询华为云skill列表", "有没有管理ECS/OBS/RDS的skill", "帮我找 XX 华为云skill", "介绍 XX Skill 内容", "华为云 XX Skill 具体做什么", "安装华为云Skill".

17.3K installs

huawei-cloud-billing-scout

huaweicloud/huaweicloud-skills

Huawei Cloud BSS billing (not AWS/Azure/other clouds; refuses pricing quotes, real-name review, and any non-billing scope): balance, spend, attribution, reconciliation, coupons, stored-value cards, enterprise/partner billing. One-page briefing via hcloud. Use only when the user explicitly mentions 华为云 / Huawei Cloud / BSS and 余额/账单/对账/资源包/代金券/储值卡/企业或伙伴账务; refuses pay, renew, refund, delete.

DevOps & Cloud17.2K installs

huawei-cloud-computing-query

huaweicloud/huaweicloud-skills

Queries Huawei Cloud computing resources (ECS/BMS/IMS/AS), Covers ECS instances, flavors, keypairs, quotas, server groups, block devices, NICs, VNC console, BMS bare metal servers/flavors/quotas, IMS images/OS versions/members/quotas, and AS scaling groups/configs/policies/activity logs/lifecycle hooks/warm pools/quotas. No write operations. Use this skill when the user needs to query ECS instance details, list flavors, check BMS availability, browse images, or view auto-scaling group/policy status. Triggers: 弹性云服务器, ECS, 裸金属, BMS, 镜像, IMS, 弹性伸缩, AS, 伸缩组, 伸缩策略, 规格查询, flavor, instance, image, scaling.

Media & Creative17.1K installs

huawei-cloud-obs-upload

huaweicloud/huaweicloud-skills

Upload local files or directories to Huawei Cloud OBS (Object Storage Service) buckets, list OBS buckets with capacity and object count, and schedule periodic uploads via crontab. Use this skill when the user wants to: (1) upload a local file or directory to an OBS bucket, (2) list OBS buckets and check their storage capacity and object count, (3) set up a scheduled/periodic upload task to automatically sync a local directory to an OBS bucket. Triggers include: user mentions "OBS", "object storage", "bucket list", "bucket capacity", "upload to OBS", "upload file", "upload directory", "scheduled upload", "periodic upload", "sync to bucket", "对象存储", "桶列表", "桶容量", "上传文件", "上传目录", "定时上传", "OBS管理"

huawei-cloud-terraform-generator

huaweicloud/huaweicloud-skills

Generate Huawei Cloud Terraform configurations and execute deployment with user-guided approval. Use this skill when users want to create Huawei Cloud infrastructure as Terraform, whether they ask explicitly for Terraform or describe goals such as deploying a website, launching an application, or creating network, compute, database, load balancing, or storage resources. Trigger when users mention 创建/create、生成/generate、部署/deploy、配置/configure、使用/use、管理/manage、华为云/Huawei Cloud、Terraform、ECS、VPC、资源/resource、云服务器/ECS、虚拟机/VM、实例/instance、网络/network、负载均衡/ELB、数据库/database、RDS、存储/storage、OBS、桶/bucket、域名/domain、DNS、证书/certificate、SSL、监控/monitoring、日志/log、备份/backup、容器/container、CCE、函数工作流/FunctionGraph

DevOps & Cloud17.1K installs

Popular other skills

View category →

hyperframes-cli

heygen-com/hyperframes

The HyperFrames CLI by job - scaffold, check, look at frames, edit the timeline, preview, render locally or in the cloud, publish, project history - plus reading its JSON and recovering from build or render failures.

1.3M installs

triage

mattpocock/skills

Move issues and external PRs through a state machine of triage roles, categorise, verify, grill if needed, and write agent-ready briefs.

1M installs

ask-matt

mattpocock/skills

Ask which skill or flow fits your situation. A router over the skills in this repo.

778.4K installs

to-questionnaire

mattpocock/skills

Turn a decision you can't fully answer into a questionnaire for someone else to fill in.

508.9K installs

wait-what

mattpocock/skills

Stop. That last message did not land: re-pitch it.

459.7K installs

loop-me

mattpocock/skills

Grill me about specs for the workflows I want to build, within this workspace.

447.9K installs