cloudns

Installation
SKILL.md

cloudns

Run uv run "$HERE/scripts/invoke.py" — $HERE is the directory that holds this SKILL.md — with everything the user typed after the Skill name, verbatim and however many lines, on stdin. Exit 0: do what it prints. On any other exit, if you introduced a known construction error and can correct it while preserving the user's request and authority, account for effects already produced, submit the corrected invocation through the same shim, and continue from the failed boundary; a refusal before the operation starts consumes no operation. Otherwise show what it printed to the user verbatim and stop. Never repair input the user supplied, or automatically retry exact help, an unmet dependency, an unrelated failure, or a failure whose origin or valid correction is unknown.

Then follow the section the reading's path names: Change DNS for the empty path, setup, or status.

Arguments

  • <sub-user>, the one operand of setup, is the name of the ClouDNS API sub-user the credential belongs to, which becomes the Credential File's sub-auth-user. Without it the name is kntnt-agent.
  • --yes on setup asserts that the credential the Credential File already holds may be replaced: it is the rotation.
  • The root form's change is the instruction. With none, use the task established in the conversation; if there is none, ask what the user wants changed in DNS at ClouDNS.

The engine

Every call to ClouDNS goes through uv run "$HERE/scripts/cloudns.py", which reads the sub-user's credential from the Credential File, ~/.kntnt/cloudns/credentials.json, and puts it in the request body and nowhere else:

  • call [--yes] <path> [<key>=<value>]... POSTs to https://api.cloudns.net/<path> with the credential and every pair, and prints the response body verbatim. Compose <path> and the pairs from the API reference.
  • status checks the credential with the service and lists the zones it can see.
Installs
4
Repository
kntnt/skills
First Seen
Sep 23, 2026