aliyun-dns
3
总安装量
3
周安装量
#55089
全站排名
安装命令
npx skills add https://github.com/netcmcc/skills --skill aliyun-dns
Agent 安装分布
trae-cn
3
trae
2
iflow-cli
2
antigravity
2
claude-code
2
github-copilot
2
Skill 文档
Alibaba Cloud DNS Management
Script
scripts/aliyun-dns.sh
Command Reference
aliyun-dns.sh query <domain> [keyword] # Query records
aliyun-dns.sh add <domain> <rr> <type> <value> [ttl] # Add a record
aliyun-dns.sh info <record_id> # Get record details
aliyun-dns.sh update <record_id> <rr> <type> <value> [ttl] # Update a record
aliyun-dns.sh delete <record_id> # Delete a record
Environment Requirements
export ALICLOUD_ACCESS_KEY="your_access_key_id" # Required
export ALICLOUD_SECRET_KEY="your_access_key_secret" # Required
export ALICLOUD_DNS_DOMAINS="example.com example.org" # Optional, restrict allowed domains
If ALICLOUD_DNS_DOMAINS is not set, all domains are allowed.
First-time setup: Create a RAM user and permission policy, see references/setup.md.
Workflow
Query Records
# Query all records
aliyun-dns.sh query example.com
# Filter by keyword (e.g. query www records)
aliyun-dns.sh query example.com www
An empty result means the record does not exist.
Delete Records (confirmation required)
- Query the record to get its RecordId
- Show the record details to the user
- Use AskUserQuestion to request confirmation
- After user confirms, execute
delete <record_id>
Update Records (confirmation required)
- Query the record to get the current value and RecordId
- Show the current value and the new value to the user
- Use AskUserQuestion to request confirmation
- After user confirms, execute
update <record_id> <rr> <type> <new_value>
Confirmation Prompt Examples
- Update: “Confirm changing
api.example.comfrom1.2.3.4to5.6.7.8?” - Delete: “Confirm deleting
api.example.com(CNAME: work.example.com)? This action is irreversible.”
Common Errors
| Error Code | Cause |
|---|---|
| InvalidAccessKeyId.NotFound | Incorrect ALICLOUD_ACCESS_KEY |
| SignatureDoesNotMatch | Incorrect ALICLOUD_SECRET_KEY |
| DomainRecordDuplicate | Record already exists, use update instead |