NewCheep 0.1.0 is out. Install it with Homebrew, Go or a prebuilt binary.
Open source · Unofficial Namecheap CLI
Namecheap at command speed.
Check domains, read your account’s prices and change DNS through reviewed plans, from your terminal or your AI agent.
Install with Homebrew
brew install turushan/tap/cheep macOS, Linux and Windows · Free under the MIT License · Other ways to install
Try the board
Every name in one command.
Type a name and the board lines up the domains to check. Cheep asks Namecheap for the live answers on your own machine, with your own API key.
This page makes no lookups. Cheep shows the answers in your terminal.
Run this to check them
cheep domains check paperkite.com paperkite.dev paperkite.app paperkite.io paperkite.co paperkite.sh $ cheep domains check paperkite.dev paperkite.com paperkite.app paperkite.co DOMAIN AVAILABLE PREMIUM PREMIUM REGISTRATION paperkite.dev yes no 0.00 paperkite.com no no 0.00 paperkite.app yes no 0.00 paperkite.co yes yes 1288.00
$ cheep --json domains check paperkite.dev paperkite.com {"schema_version":"v1","command":"domains.check","ok":true,"data":[{"domain":"paperkite.dev","available":true,"premium":false,"premium_registration_price":0},{"domain":"paperkite.com","available":false,"premium":false,"premium_registration_price":0}],"meta":{"profile":"live","environment":"production"}}
Sample output from the real CLI. Cheep always asks Namecheap for the live answer.
Spending money
Real money needs a real yes.
In production, any call that can charge your account stops until you add three flags. Cheep names the missing one each time, so a slip costs a retry instead of money.
--yesApproves the change. Run --dry-run first to see the parameters Cheep would send.--productionConfirms the change is for your real account, not the sandbox.--accept-chargeConfirms you checked the current price before Cheep spends anything.
- Sandbox first New profiles start in Namecheap’s sandbox, so nothing real changes while you learn.
- Dry runs Add --dry-run to any DNS or API change. Cheep shows what it would do and changes nothing.
- Keys in your keychain Cheep keeps your API key in the operating system’s credential manager, never in its config file.
DNS
Change DNS through a reviewed plan.
Namecheap replaces a whole zone in one write, so Cheep treats every change as a whole-zone change. You export the zone, edit the file and read the plan before you apply it.
- ExportThe complete zone, as a versioned YAML file.
- PlanEvery add and remove, before anything changes.
- ApplyA snapshot first, then one write and a read-back check.
- RestorePut a snapshot back with one command.
Apply reads the live zone again right before it writes, and stops if the zone changed during the apply. Read the DNS guide
AI agents
Built for AI agents.
Your agent runs the same commands you do, with a stable JSON envelope. Data goes to stdout, errors go to stderr, and the exit codes are documented.
Exit codes
0 | Success |
|---|---|
1 | Unexpected error |
2 | Usage error |
3 | Missing or invalid credentials |
4 | Network or timeout |
5 | Namecheap returned an error |
6 | Conflict or unknown outcome |
7 | Refused by a safety gate |
8 | A charge needs --accept-charge |
130 | Interrupted |
--jsonA versioned envelope with the command, the result and the profile it used.--no-inputNever waits on a prompt, so a headless run can’t hang.--readonlyRefuses every change to your Namecheap account, with exit code 7.
A line for your agent’s instructions
cheep --json --no-input --readonly domains check paperkite.dev Complete API
All 59 Namecheap API methods.
Purpose-built commands cover everyday work. For everything else, cheep api reaches every method in Namecheap’s official catalogue, and every write and charge waits for its flags.
59 of 59
| Command | Namecheap method | Mode |
|---|---|---|
cheep api domainprivacy change-email-address | namecheap.whoisguard.changeemailaddress | write |
cheep api domainprivacy disable | namecheap.whoisguard.disable | write |
cheep api domainprivacy enable | namecheap.whoisguard.enable | write |
cheep api domainprivacy get-list | namecheap.whoisguard.getlist | read |
cheep api domainprivacy renew | namecheap.whoisguard.renew | charge |
cheep api domains check | namecheap.domains.check | read |
cheep api domains create | namecheap.domains.create | charge |
cheep api domains dns get-email-forwarding | namecheap.domains.dns.getEmailForwarding | read |
cheep api domains dns get-hosts | namecheap.domains.dns.getHosts | read |
cheep api domains dns get-list | namecheap.domains.dns.getList | read |
cheep api domains dns set-custom | namecheap.domains.dns.setCustom | write |
cheep api domains dns set-default | namecheap.domains.dns.setDefault | write |
cheep api domains dns set-email-forwarding | namecheap.domains.dns.setEmailForwarding | write |
cheep api domains dns set-hosts | namecheap.domains.dns.setHosts | write |
cheep api domains get-contacts | namecheap.domains.getContacts | read |
cheep api domains get-info | namecheap.domains.getInfo | read |
cheep api domains get-list | namecheap.domains.getList | read |
cheep api domains get-registrar-lock | namecheap.domains.getRegistrarLock | read |
cheep api domains get-tld-list | namecheap.domains.getTldList | read |
cheep api domains ns create | namecheap.domains.ns.create | write |
cheep api domains ns delete | namecheap.domains.ns.delete | write |
cheep api domains ns get-info | namecheap.domains.ns.getInfo | read |
cheep api domains ns update | namecheap.domains.ns.update | write |
cheep api domains reactivate | namecheap.domains.reactivate | charge |
cheep api domains renew | namecheap.domains.renew | charge |
cheep api domains set-contacts | namecheap.domains.setContacts | write |
cheep api domains set-registrar-lock | namecheap.domains.setRegistrarLock | write |
cheep api domains transfer create | namecheap.domains.transfer.create | charge |
cheep api domains transfer get-list | namecheap.domains.transfer.getList | read |
cheep api domains transfer get-status | namecheap.domains.transfer.getStatus | read |
cheep api domains transfer update-status | namecheap.domains.transfer.updateStatus | write |
cheep api ssl activate | namecheap.ssl.activate | write |
cheep api ssl create | namecheap.ssl.create | charge |
cheep api ssl edit-dcv-method | namecheap.ssl.editDCVMethod | write |
cheep api ssl get-approver-email-list | namecheap.ssl.getApproverEmailList | read |
cheep api ssl get-info | namecheap.ssl.getInfo | read |
cheep api ssl get-list | namecheap.ssl.getList | read |
cheep api ssl parse-csr | namecheap.ssl.parseCSR | read |
cheep api ssl purchase-more-sans | namecheap.ssl.purchasemoresans | charge |
cheep api ssl reissue | namecheap.ssl.reissue | write |
cheep api ssl renew | namecheap.ssl.renew | charge |
cheep api ssl resend-approver-email | namecheap.ssl.resendApproverEmail | write |
cheep api ssl resend-fulfillment-email | namecheap.ssl.resendfulfillmentemail | write |
cheep api ssl revoke-certificate | namecheap.ssl.revokecertificate | write |
cheep api users address create | namecheap.users.address.create | write |
cheep api users address delete | namecheap.users.address.delete | write |
cheep api users address get-info | namecheap.users.address.getInfo | read |
cheep api users address get-list | namecheap.users.address.getList | read |
cheep api users address set-default | namecheap.users.address.setDefault | write |
cheep api users address update | namecheap.users.address.update | write |
cheep api users change-password | namecheap.users.changePassword | write |
cheep api users create | namecheap.users.create | write |
cheep api users create-add-funds-request | namecheap.users.createaddfundsrequest | charge |
cheep api users get-add-funds-status | namecheap.users.getAddFundsStatus | read |
cheep api users get-balances | namecheap.users.getBalances | read |
cheep api users get-pricing | namecheap.users.getPricing | read |
cheep api users login | namecheap.users.login | read |
cheep api users reset-password | namecheap.users.resetPassword | write |
cheep api users update | namecheap.users.update | write |
No method matches that.
Privacy
Between you and Namecheap.
Cheep runs on your computer and talks only to Namecheap’s API. Nothing passes through a server of ours, and we never see your key or your domains.
- No telemetry, no analytics and no update check.
- Your API key stays in the operating system’s credential manager.
- Open source under the MIT License, so you can read every request it makes.
Install
Your first check in three steps.
- Install Cheep
With Homebrew on macOS or Linux, with Go 1.26.10 or newer, or as a prebuilt binary for macOS, Linux or Windows.
brew install turushan/tap/cheepOr with Go 1.26.10 or newer
Download a prebuilt binarygo install github.com/turushan/cheep/cmd/cheep@latest - Connect the sandbox
Create an API user and a key in Namecheap’s sandbox and whitelist your public IPv4. Save the profile, store the key and let doctor check it.
cheep --environment sandbox auth configure sandbox --api-user YOUR_SANDBOX_USER --client-ip YOUR_PUBLIC_IPV4 --defaultcheep auth set-keycheep doctor - Check your names
Ask about as many names as you like in one command.
cheep domains check paperkite.dev paperkite.com
Namecheap requires an API user, an API key and a whitelisted public IPv4 before any command works. Read the authentication guide
Questions
Is Cheep an official Namecheap tool?
No. Cheep is independent and open source. Namecheap doesn’t make, endorse or support it. It uses Namecheap’s public API with your own API key.
What do I need to start?
Cheep itself, from Homebrew, Go or a prebuilt binary, and a Namecheap account with API access: an API user, an API key and a whitelisted public IPv4 address. Try everything in Namecheap’s sandbox first.
Where does my API key go?
Into your operating system’s credential manager: Keychain on macOS, Credential Manager on Windows and Secret Service on Linux. On servers, Cheep reads CHEEP_API_KEY instead. Never put the key in a command argument.
Does Cheep send my data anywhere else?
No. Cheep talks only to Namecheap’s API. It has no telemetry, no update check and no servers of ours.
Can it register, renew and transfer domains?
Yes, through cheep api, which reaches all 59 methods in Namecheap’s catalogue. A call that can charge your account needs --yes and --accept-charge, plus --production on your real account.
Can my AI agent use Cheep safely?
Yes. Give it --json for a versioned envelope, --no-input so it never waits on a prompt and --readonly when it must not change your account. A refused change exits with code 7.
Why does Cheep start in the sandbox?
So nothing real changes while you learn. You switch a profile to production when you’re ready, and production changes still need --production.
Which systems does it run on?
macOS, Linux and Windows, on Intel and ARM processors. Homebrew installs it on macOS and Linux, and every release has binaries for all three.
Can Cheep change DNS that isn’t hosted at Namecheap?
No. Cheep changes DNS only for domains that use Namecheap DNS, and it refuses the rest.
Made by
Hi, I’m turushan
I built Cheep for my own domains. When one of my apps gets a new website, Cheep points its Namecheap domain at the hosting. It is free and open source under the MIT License, so tell me on GitHub what it should do next.
Your next idea starts with a name.
Check it from your terminal. Every change waits for your approval.
brew install turushan/tap/cheep