PlugWiki

Huawei Cloud OBS Website Host Skill: Static Site Setup

Lets an agent turn on static website hosting for an OBS bucket, register a custom domain, guide the DNS record and check the result.

Installs
17.5K
on skills.sh
Stars
59
on GitHub
Files
7
besides SKILL.md
Updated
Oct 2026
last repo commit

This is Huawei Cloud's own skill for hosting a static website from an OBS bucket. It tells the agent to run bundled Python scripts that set the index and error pages and register your custom domain on the bucket, then check the site over HTTP and HTTPS. It assumes your site files are already in the bucket and does not upload anything.

A custom domain is mandatory: SKILL.md says the default bucket domain may not be used for online preview, and the agent must stop until you have one (with ICP filing for mainland China). It needs Python 3.10+, the esdk-obs-python package and your keys from environment variables or ~/.obsutilconfig. The hcloud CLI is needed only if you want the agent to create the Huawei Cloud DNS record.

Good for

  • Developers who already uploaded a static site to OBS and need hosting switched on
  • Admins fixing a 403 or 404 on an OBS-hosted site
  • Teams that manage their domain in Huawei Cloud DNS and want the CNAME record created

Install huawei-cloud-obs-website-host

Claude Code

  1. 1

    Copy this prompt.

    Install the huawei-cloud-obs-website-host skill in Claude Code. Run this command:
    
    npx skills add huaweicloud/huaweicloud-skills --skill huawei-cloud-obs-website-host
    
    Then check that it loaded and tell me how to use it.
  2. 2

    Paste it into Claude Code. It shows the change and asks before running it.

Requires Node.js.

SKILL.md needs Python 3.10+ and the esdk-obs-python package, and obsutil for the credential config. hcloud is only needed when the agent should manage Huawei Cloud DNS records. The repo has no plugin manifest, so there is no plugin route.

Built from the package data we hold. Not yet tested by us. Source.

What's in the skill

When it loads

Configure Huawei Cloud OBS static website hosting with Python SDK and a custom domain. Use when the user needs to enable or repair OBS website hosting, set index or error pages, expose an existing bucket for public website access through a custom domain, or connect that domain through Huawei Cloud DNS when Huawei manages the zone. Triggers include OBS static website hosting, website endpoint, index page, error page, public-read bucket website access, custom domain CNAME, Huawei Cloud DNS, setBucketWebsite. 中文触发词包括:OBS 静态网站托管、网站托管、自定义域名解析。

Sections in SKILL.md

  1. Overview
  2. What Good Looks Like
  3. Security Compliance: Custom Domain Requirement
  4. Required Inputs
  5. Dependencies
  6. hcloud CLI Reference
  7. obsutil Config Dependency
  8. Script Usage Intent
  9. Workflow
  10. Bucket Existence and Region Check Method
  11. Anonymous Read Check Method
  12. Response Shape
  13. Safety Rules
  14. Permission Failure Handling (MUST)
  15. References
  16. Scripts

Key facts

Installs on skills.sh
17,512 (Nov 2, 2026)
Last repo commit
Oct 31, 2026

What it includes

  • Stops until you have a custom domain

    Confirms you have a custom domain. If not, the agent sends you to domain registration and, for mainland China, ICP filing, and does not continue until that is done.

    Try: “Set up static website hosting on bucket my-site in cn-north-4 with domain www.example.com.”

    Read · Custom domain check

  • Checks the bucket, its region and anonymous read

    Runs scripts/verify_obs_website.py, which uses headBucket and getBucketLocation to check the bucket and region, and plain HTTP requests without keys to test anonymous read.

    Network · Bucket and permission checks

  • Sets index and error pages and registers the custom domain

    Calls setBucketWebsite and setBucketCustomDomain through the OBS SDK. Optional flags bind an HTTPS certificate (--certificate-name with --certificate and --private-key). Keys come from flags, environment variables or ~/.obsutilconfig.

    Runs code · scripts/set_obs_website_sdk.py

  • Creates a Huawei Cloud DNS record or tells you what to add

    If your zone is in Huawei Cloud DNS and you ask for it, the agent follows references/hcloud-dns-obs-website.md and runs hcloud DNS CreateRecordSet. For other DNS providers it gives you the CNAME record to add.

    Runs code · DNS CNAME guidance

  • Checks the home page, a missing path and DNS over HTTP and HTTPS

    Runs scripts/verify_obs_website.py with your domain and checks that the root returns 200, a missing path returns 404 or your error page, and the domain resolves.

    Network · Final verification

From the official docs

Permissions

Medium risk

It changes how a bucket serves a website and can add a DNS record, using your cloud keys. Point it at one bucket you own, use a key limited to that bucket and its zone, and read the plan before it runs.

What it can do

  • Read your data
  • Create and change things
  • Delete things
  • Read-only mode

Watch out for

  • It changes how a live bucket serves the web

    The setup script calls setBucketWebsite and setBucketCustomDomain on the bucket you name, and a DNS step can add a record to a live zone. Use a bucket you own and read the plan first. github.com

  • It can take a certificate private key

    The setup script accepts --certificate and --private-key to bind HTTPS. SKILL.md says never to print the private key. Keep the key file out of chat history. github.com

  • It installs a pip package and reads your OBS keys

    SKILL.md says to run pip install esdk-obs-python, and the script reads keys from flags, HW_ACCESS_KEY and HW_SECRET_KEY, or ~/.obsutilconfig. Use a key limited to this bucket and its DNS zone. github.com

  • It does not upload site files

    SKILL.md says to assume the files are already in the bucket and to run no upload actions. Upload them first with the OBS upload skill or the console. github.com

Security advisories

No published security advisories as of Nov 2, 2026.

Technical details
Turning on read-onlyNo read-only mode. verify_obs_website.py only reads, and set_obs_website_sdk.py writes.
Talks toobs.<region>.myhuaweicloud.com (OBS endpoint built by the scripts). <bucket>.obs.<region>.myhuaweicloud.com and your custom domain, for the HTTP and HTTPS checks. Huawei Cloud DNS API through hcloud, only if you ask for the record. PyPI during pip install esdk-obs-python
Sign-in and keysThe scripts read keys from flags, environment variables or ~/.obsutilconfig. SKILL.md says never to print them.
Scopes
  • Changes the website configuration and custom domain of the OBS bucket you name

  • Can create a Huawei Cloud DNS CNAME record with hcloud when you ask for it

  • Reads your keys from flags, environment variables or ~/.obsutilconfig

  • Installs the esdk-obs-python package with pip

Questions

What does huawei-cloud-obs-website-host do?

It makes an agent switch on static website hosting for an existing OBS bucket, register your custom domain, guide the DNS CNAME record and verify the site. It does not upload your site files.

Does it make my bucket public?

SKILL.md says it checks that anonymous read works and reports a 403 if not, with public read or IAM permissions as the two likely causes. The bundled setup script calls setBucketWebsite and setBucketCustomDomain, and it does not set an ACL.

Is huawei-cloud-obs-website-host official?

It is in Huawei Cloud's own huaweicloud/huaweicloud-skills repo, which the README calls officially maintained Huawei Cloud Agent Skills.

Is it safe to run?

It changes the website and domain settings on a bucket and may add a DNS record, using your cloud keys. SKILL.md says to confirm the zone before DNS changes and never to print keys or private keys. Our advice: point it at one bucket you own and use a key limited to that bucket.

Does it work in Claude Code, Codex or the Claude app?

The install box has Claude Code, Codex and standalone tabs. Huawei says only that the skills are compatible with mainstream AI Agents and names none, and it documents no Claude app upload. This skill runs command-line tools on your machine, so the box has no Claude app tab.

Do I need a custom domain?

Yes. SKILL.md says Huawei Cloud security compliance prohibits the default bucket domain for online preview, so a custom domain is mandatory, and mainland China domains also need ICP filing.

Information

updated Nov 2, 2026

Folder
skills/storage/obs/huawei-cloud-obs-website-host

huaweicloud/huaweicloud-skillsskills.sh

Sources

Docs, issue trackers and discussions this page is built from.

Show all 6
  1. huawei-cloud-obs-website-host SKILL.md · github.com
  2. huaweicloud-skills README · github.com
  3. huaweicloud-skills LICENSE · github.com
  4. set_obs_website_sdk.py · github.com
  5. verify_obs_website.py · github.com
  6. OBS website DNS guide · github.com

Updated Nov 2, 2026.