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 |
- 确保已安装 OpenClaw(本地或 Docker 部署)
- 在对话框中输入安装命令:
/install alibabacloud-httpdns - 安装完成后,直接呼叫该 Skill 的名称或使用
/alibabacloud-httpdns触发 - 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
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... 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 39 次。
如何安装 Alibabacloud Httpdns?
在 OpenClaw 或 Claude Code 对话框中运行命令「/install alibabacloud-httpdns」即可一键安装,无需额外配置。
Alibabacloud Httpdns 是免费的吗?
是的,Alibabacloud Httpdns 完全免费,采用 MIT-0 许可证,可自由下载、安装和使用。
Alibabacloud Httpdns 支持哪些平台?
Alibabacloud Httpdns 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(cross-platform)。
谁开发了 Alibabacloud Httpdns?
由 alibabacloud-skills-team(@sdk-team)开发并维护,当前版本 v0.0.1-beta.1。