Manage Alibaba Cloud (Aliyun) domain DNS records (query, add, update, delete). Use this skill when users need to configure DNS, set up subdomains, or manage domain resolution for deployments. Supports A, CNAME, and other record types.
Resources
2Install
npx skillscat add netcmcc/skills/aliyun-dns Install via the SkillsCat registry.
SKILL.md
Alibaba Cloud DNS Management
Script
scripts/aliyun-dns.shCommand 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 recordEnvironment 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 domainsIf 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 wwwAn 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 |