Alibabacloud Httpdns
/install alibabacloud-httpdns
Alibaba Cloud HTTPDNS OpenAPI Skill
1) Scenario Description & Architecture
This Skill helps agents operate Alibaba Cloud HTTPDNS management OpenAPIs with
the aliyun CLI. It focuses on three scenarios:
- HTTPDNS account/key lookup with sensitive output handling.
- Domain management: add, delete, list, search, and refresh resolve cache.
- Usage pull: domain-level resolve statistics and account-level count summary.
flowchart LR
A["Confirm scenario and parameters"] --> B["Pre-check aliyun CLI/profile"]
B --> C["Enable AI mode user-agent"]
C --> D{"Task type"}
D --> E["Account secret: GetAccountInfo"]
D --> F["Domain setting: Add/Delete/List/Refresh"]
D --> G["Usage pull: GetResolveStatistics/GetResolveCountSummary/ListDomains"]
E --> H["Mask sensitive fields unless explicitly requested"]
F --> H
G --> H
H --> I["Verify output and disable AI mode"]
2) Prerequisites / Installation
Use aliyun CLI version >= 3.3.3.
aliyun version
aliyun configure set --auto-plugin-install true
aliyun plugin update
If the CLI is missing, read references/cli-installation-guide.md.
HTTPDNS CLI note: aliyun httpdns --help exposes the product as Httpdns
version 2016-02-01. Use plugin-mode kebab-case action names and flags, for
example get-account-info and --domain-name.
3) Credential Pre-check
Never read, print, or echo AK/SK files. Only verify the active profile with:
aliyun configure list
If the user asks to retrieve HTTPDNS account/key information, call
get-account-info directly and return a masked result by default. Prefer
scripts/httpdns-openapi.sh account-info, which masks secret-like fields in
command output. Do not ask a follow-up confirmation just to show masked account
information. Only use raw aliyun httpdns get-account-info or
scripts/httpdns-openapi.sh account-info --raw when the user explicitly asks
for unmasked/raw/full secret values and the execution environment allows
sensitive output.
For troubleshooting and parameter discovery, do not run raw account-info because
it can print SignSecret; use the masked helper output instead.
4) AI-mode Lifecycle
Enable AI mode before the first HTTPDNS command and disable it at the end, including error paths.
aliyun configure ai-mode enable
aliyun configure ai-mode set-user-agent --user-agent "AlibabaCloud-Agent-Skills/alibabacloud-httpdns"
aliyun configure ai-mode disable
5) RAM Permissions
Minimum RAM actions are listed in references/ram-policies.md.
[MUST] Permission Failure Handling: When any command or API call fails due to permission errors at any point during execution, follow this process:
- Read
references/ram-policies.mdto get the full list of permissions- Use
ram-permission-diagnoseskill to guide the user- Pause and wait until the user confirms permissions have been granted
6) Parameter Confirmation
Confirm all user-controlled parameters before executing commands:
profile, if not using the current profile.--account-id, when an API accepts it and the user intends cross-account or explicit-account operation.--domain-nameor--domains.--granularity,--time-span, and optional--protocol-namefor statistics.--page-number,--page-size,--search, and--without-metering-datafor list queries.
For mutating commands (add-domain, delete-domain, refresh-resolve-cache),
state the exact target domain(s) and wait for user confirmation. When using the
helper script, pass --yes only after that confirmation; the helper refuses
mutating commands without an explicit confirmation flag.
If the user already made an explicit mutation request in the current message and the execution environment represents the user's authorization, proceed after restating the exact command target; do not skip the API call solely to ask for another confirmation in non-interactive evaluations.
7) Core Workflow
Prefer the helper script for common flows:
scripts/httpdns-openapi.sh account-info
scripts/httpdns-openapi.sh add-domain --domain example.com --yes
scripts/httpdns-openapi.sh list-domains --search example.com --page-number 1 --page-size 100
scripts/httpdns-openapi.sh delete-domain --domain example.com --yes
scripts/httpdns-openapi.sh list-domains --page-number 1 --page-size 20
scripts/httpdns-openapi.sh resolve-statistics --domain example.com --granularity day --time-span 7
scripts/httpdns-openapi.sh resolve-count-summary --granularity day --time-span 7
Use direct CLI commands for read-only custom queries:
aliyun httpdns list-domains --search example.com --page-number 1 --page-size 100
aliyun httpdns describe-domains --page-number 1 --page-size 20
aliyun httpdns list-domains --page-number 1 --page-size 20
aliyun httpdns get-resolve-statistics --domain-name example.com --granularity day --time-span 7
aliyun httpdns get-resolve-count-summary --granularity day --time-span 7
For direct CLI mutations, first obtain explicit confirmation for the exact domain target and then use the same plugin-mode flags shown in the domain workflow sections below. Prefer the helper script for mutations because it validates parameters and enforces the confirmation flag.
Detailed command rules are in references/related-commands.md.
Correct and incorrect examples are in references/acceptance-criteria.md.
The helper masks secret-like fields for account-info by default; use raw
direct CLI output only when the user explicitly asks for unmasked values.
Domain add-and-verify sequence:
- Pre-check CLI/profile and enable AI mode.
- Call
add-domainwith plugin-mode--domain-name. - Always call
list-domainsafteradd-domain, preferably with--search \x3Cdomain>, to verify the domain inventory. - If
add-domainreturnsDomainAlreadyExists, make the operation idempotent:- Run
list-domains --search \x3Cdomain>to confirm the existing domain belongs to the active account. - For placeholder/evaluation domains such as
eval-add-\x3Crandom>.example.comor other generated domains underexample.com, rundelete-domain --domain-name \x3Cdomain>, then calladd-domain --domain-name \x3Cdomain>again, then runlist-domains --search \x3Cdomain>once more. This proves the add path works in reused eval accounts. - For real user domains, do not delete or replace the domain unless the user explicitly approves replacement; report that the requested end state is already satisfied.
- Run
- If
add-domainfails for any other reason, still calllist-domainswhen possible and report both the mutation error and whether the domain already appears. - Treat
UserDisabledas an account/service restriction such as debt, inactive HTTPDNS service, or risk control; it is not a RAM permission error unless the response explicitly says permission denied.
Domain delete-and-verify sequence:
- Pre-check the target with
list-domains --search \x3Cdomain>when the task is a test or validation workflow. - If the target is absent and the domain is a placeholder/evaluation domain such as
eval-delete-\x3Crandom>.example.comor another generated domain underexample.com, create the precondition withadd-domain --domain-name \x3Cdomain>before deleting. - Call
delete-domain --domain-name \x3Cdomain>. - Always call
list-domains --search \x3Cdomain>after deletion and confirm the domain is absent. - If a real user domain returns
DomainNotFound, do not recreate it unless the user explicitly asked to validate the delete API path; report that the requested end state is already satisfied.
8) Success Verification
Verify that the command returned a RequestId and task-specific fields:
- Account lookup: account metadata is returned; secret-like fields are masked unless explicitly requested.
- Domain add:
add-domainreturns a successRequestId, thenlist-domainsshows the target domain. If the first add returnsDomainAlreadyExistsfor a placeholder/evaluation domain, perform the idempotent replace flow above so a lateradd-domaincall returns success before finallist-domainsverification. - Domain delete:
delete-domainreturns a successRequestId, then a follow-uplist-domainsordescribe-domainsquery shows expected absence. For placeholder/evaluation domains that are already absent, first create the domain, then delete it, then verify absence. - Usage pull: statistics include the requested domain/account, granularity, and time span.
Read references/verification-method.md for full checks.
9) Cleanup
Always disable AI mode after the workflow:
aliyun configure ai-mode disable
Remove temporary JSON output files created for analysis. Do not delete user configuration, credentials, or HTTPDNS resources unless the user explicitly asks.
10) Best Practices
- Use
get-resolve-statisticsfor a specific domain usage trend. - Use
get-resolve-count-summaryfor account-level total resolve counts. - Use
list-domainsfor add/list verification, especially afteradd-domain. - Do not use
describe-domains --search; uselist-domains --search \x3Ckeyword>to narrow a large domain list. - Keep domain mutations small and confirmed; one domain per command is easier to audit.
- Include
--profile \x3Cname>when the user mentions a non-default Alibaba Cloud account. - Capture
RequestIdin the final answer for support escalation.
11) Reference Links
| Reference | Purpose |
|---|---|
| references/api-reference.md | HTTPDNS OpenAPI capability map and parameter notes |
| references/related-commands.md | CLI command quick reference |
| references/acceptance-criteria.md | Correct/incorrect usage matrix |
| references/ram-policies.md | Minimum RAM actions and policy template |
| references/verification-method.md | Verification checklist |
| references/cli-installation-guide.md | Standard aliyun CLI installation guidance |
- Make sure OpenClaw is installed (local or Docker)
- Run the install command in chat:
/install alibabacloud-httpdns - After installation, invoke the skill by name or use
/alibabacloud-httpdns - Provide required inputs per the skill's parameter spec and get structured output
What is Alibabacloud Httpdns?
Alibaba Cloud HTTPDNS OpenAPI management skill. Use when the user needs to retrieve HTTPDNS account secret information, add/delete/list/configure HTTPDNS dom... It is an AI Agent Skill for Claude Code / OpenClaw, with 39 downloads so far.
How do I install Alibabacloud Httpdns?
Run "/install alibabacloud-httpdns" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.
Is Alibabacloud Httpdns free?
Yes, Alibabacloud Httpdns is completely free, licensed under MIT-0. You can download, install and use it at no cost.
Which platforms does Alibabacloud Httpdns support?
Alibabacloud Httpdns is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).
Who created Alibabacloud Httpdns?
It is built and maintained by alibabacloud-skills-team (@sdk-team); the current version is v0.0.1-beta.1.