{"_id":"namecom-cli","_rev":"4-e6303c8805162f655492866972adce19","name":"namecom-cli","dist-tags":{"latest":"0.4.0"},"versions":{"0.1.0":{"name":"namecom-cli","version":"0.1.0","keywords":["name.com","namecom","dns","domains","cli","dkim","spf","registrar","agent","skills"],"author":{"name":"Hypersocial, Inc."},"license":"MIT","_id":"namecom-cli@0.1.0","maintainers":[{"name":"selcukatli","email":"selcuk.atli@gmail.com"}],"homepage":"https://github.com/hypersocialinc/namecom-cli#readme","bugs":{"url":"https://github.com/hypersocialinc/namecom-cli/issues"},"bin":{"namecom":"bin/namecom.js"},"dist":{"shasum":"6ea4f6178643033a2b4baf54796205636ee8325a","tarball":"https://registry.npmjs.org/namecom-cli/-/namecom-cli-0.1.0.tgz","fileCount":13,"integrity":"sha512-FaaupMtPznzauVEknXtkX7IS+ujbA9OAPdZ6FGu58kQJbUDQkVgDWGXDsqMt/XvGDzi6yINPjwcbYIcJD/zwKA==","signatures":[{"sig":"MEUCIQCl53W7eOLTA7dk4gf0SYocoiqHakMdyudK5DLlUEjsiAIgbvkkwe022BSSvariqkiyasValiSMYHCtapWxNsUYFh8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":25489},"type":"module","engines":{"node":">=18"},"gitHead":"8ea92f892a8b0bab8f5064fcd22ab98dae33d745","scripts":{"test":"node --test","namecom":"node bin/namecom.js"},"_npmUser":{"name":"selcukatli","email":"selcuk.atli@gmail.com"},"repository":{"url":"git+https://github.com/hypersocialinc/namecom-cli.git","type":"git"},"_npmVersion":"10.9.2","description":"Fast, agent-friendly CLI for Name.com DNS & domains (v4 API): JSON output, idempotent record upserts, OS-keychain auth.","directories":{},"_nodeVersion":"25.1.0","dependencies":{"commander":"^12.1.0"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/namecom-cli_0.1.0_1781963049521_0.4224107239675041","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"namecom-cli","version":"0.2.0","keywords":["name.com","namecom","dns","domains","cli","dkim","spf","registrar","agent","skills"],"author":{"name":"Hypersocial, Inc."},"license":"MIT","_id":"namecom-cli@0.2.0","maintainers":[{"name":"selcukatli","email":"selcuk.atli@gmail.com"}],"homepage":"https://github.com/hypersocialinc/namecom-cli#readme","bugs":{"url":"https://github.com/hypersocialinc/namecom-cli/issues"},"bin":{"namecom":"bin/namecom.js"},"dist":{"shasum":"86e879772026c8839586cc208fa4d3c1aca4cf44","tarball":"https://registry.npmjs.org/namecom-cli/-/namecom-cli-0.2.0.tgz","fileCount":14,"integrity":"sha512-Yjw/3WPIxRN1G/ponly2eZs6vGaQ0Ir8GSq4Uq/tpGtUK9XRGKdQdtpFEBF/zk/bzw08U1otDxb8k+i0eO97FQ==","signatures":[{"sig":"MEQCIEPHPIFIh4hsiibIAFO1gYpLh50ZoL4XScsC2aRsRUz9AiA8230FrsBEfNfy3pSTCMjlQUudWxa0WjlW8mLOM++cZA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":28745},"type":"module","engines":{"node":">=18"},"gitHead":"07b0b66a030cf6ab23df8c5c7ec1d7682162a2a9","scripts":{"test":"node --test","namecom":"node bin/namecom.js"},"_npmUser":{"name":"selcukatli","email":"selcuk.atli@gmail.com"},"repository":{"url":"git+https://github.com/hypersocialinc/namecom-cli.git","type":"git"},"_npmVersion":"10.9.2","description":"Fast, agent-friendly CLI for Name.com DNS & domains (v4 API): JSON output, idempotent record upserts, OS-keychain auth.","directories":{},"_nodeVersion":"25.1.0","dependencies":{"commander":"^12.1.0"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/namecom-cli_0.2.0_1781964173883_0.4437660870519422","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"namecom-cli","version":"0.3.0","keywords":["name.com","namecom","dns","domains","cli","dkim","spf","registrar","agent","skills"],"author":{"name":"Hypersocial, Inc."},"license":"MIT","_id":"namecom-cli@0.3.0","maintainers":[{"name":"selcukatli","email":"selcuk.atli@gmail.com"}],"homepage":"https://github.com/hypersocialinc/namecom-cli#readme","bugs":{"url":"https://github.com/hypersocialinc/namecom-cli/issues"},"bin":{"namecom":"bin/namecom.js","namecom-cli":"bin/namecom.js"},"dist":{"shasum":"fd88df44f2b1080efff107dc481c3767e8055f93","tarball":"https://registry.npmjs.org/namecom-cli/-/namecom-cli-0.3.0.tgz","fileCount":15,"integrity":"sha512-GaM0vHIQCN/dYpzLyQX53tmj883KPVpKEonF0lJPWi6BCbMbH16e4F98KGzOLNJEPq6S8bfAH8utF9KyGfLmFA==","signatures":[{"sig":"MEUCIG0wqZpYMCb9vDaMyACnP0BCgr3Tfd1OlUe3+cxUOWvjAiEA5FMzwW+T8zAvLA9moTqWGIwJrnNXroCwsDxXP+gTgSM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":32211},"type":"module","engines":{"node":">=18"},"gitHead":"e9bcbbed5cccf4cf7549942cd54dfbcc6e50e714","scripts":{"test":"node --test","namecom":"node bin/namecom.js"},"_npmUser":{"name":"selcukatli","email":"selcuk.atli@gmail.com"},"repository":{"url":"git+https://github.com/hypersocialinc/namecom-cli.git","type":"git"},"_npmVersion":"10.9.2","description":"Fast, agent-friendly CLI for Name.com DNS & domains (v4 API): JSON output, idempotent record upserts, OS-keychain auth.","directories":{},"_nodeVersion":"25.1.0","dependencies":{"commander":"^12.1.0","picocolors":"^1.1.1","@clack/prompts":"^1.6.0"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/namecom-cli_0.3.0_1781966485128_0.8508034982122823","host":"s3://npm-registry-packages-npm-production"}},"0.4.0":{"name":"namecom-cli","version":"0.4.0","description":"Fast, agent-friendly CLI for Name.com DNS & domains (v4 API): JSON output, idempotent record upserts, OS-keychain auth.","type":"module","bin":{"namecom":"bin/namecom.js","namecom-cli":"bin/namecom.js"},"engines":{"node":">=20.12"},"scripts":{"namecom":"node bin/namecom.js","test":"node --test"},"keywords":["name.com","namecom","dns","domains","cli","dkim","spf","registrar","agent","skills"],"author":{"name":"Hypersocial, Inc."},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/hypersocialinc/namecom-cli.git"},"homepage":"https://github.com/hypersocialinc/namecom-cli#readme","bugs":{"url":"https://github.com/hypersocialinc/namecom-cli/issues"},"dependencies":{"@clack/prompts":"^1.6.0","commander":"^12.1.0","picocolors":"^1.1.1"},"_id":"namecom-cli@0.4.0","gitHead":"4d8b03c6471d5fad217a5cb5f4a509c64890c5e5","_nodeVersion":"25.1.0","_npmVersion":"10.9.2","dist":{"integrity":"sha512-FhjQo/4Fc9VGvE3qOBQs5ns6m+EVw/S9iMF/mlzkD+tPR6PyBeXv85UOnakeFALMmeLgcvPSNGUVySd4D/Ncfw==","shasum":"73f88b46f59142df5c2032580575d7ae84b3957e","tarball":"https://registry.npmjs.org/namecom-cli/-/namecom-cli-0.4.0.tgz","fileCount":15,"unpackedSize":33712,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIHwfEm1HHDFWxdQgr3gYiQ2Objd6LAXaqjRrDr7bG9TkAiB+cvl4CqdCgOtodg6wWR+VZKiccrD14YKMaG8t+xQ4LQ=="}]},"_npmUser":{"name":"selcukatli","email":"selcuk.atli@gmail.com"},"directories":{},"maintainers":[{"name":"selcukatli","email":"selcuk.atli@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/namecom-cli_0.4.0_1781967111008_0.02355911547914613"},"_hasShrinkwrap":false}},"time":{"created":"2026-06-20T13:44:09.431Z","modified":"2026-06-20T14:51:51.258Z","0.1.0":"2026-06-20T13:44:09.655Z","0.2.0":"2026-06-20T14:02:54.034Z","0.3.0":"2026-06-20T14:41:25.289Z","0.4.0":"2026-06-20T14:51:51.156Z"},"bugs":{"url":"https://github.com/hypersocialinc/namecom-cli/issues"},"author":{"name":"Hypersocial, Inc."},"license":"MIT","homepage":"https://github.com/hypersocialinc/namecom-cli#readme","keywords":["name.com","namecom","dns","domains","cli","dkim","spf","registrar","agent","skills"],"repository":{"type":"git","url":"git+https://github.com/hypersocialinc/namecom-cli.git"},"description":"Fast, agent-friendly CLI for Name.com DNS & domains (v4 API): JSON output, idempotent record upserts, OS-keychain auth.","maintainers":[{"name":"selcukatli","email":"selcuk.atli@gmail.com"}],"readme":"# namecom-cli\n\nA fast, **agent-friendly** command-line tool for [Name.com](https://www.name.com) DNS and domains, built on the current **v4 API**.\n\n- **`--json` everywhere** + a `commands` introspection command, so AI agents can discover and drive the whole surface\n- **Idempotent `records set`** (create-or-update, never duplicate) — the right primitive for automation and IaC\n- **Secure auth** — credentials live in the macOS Keychain (or a `0600` config file), never in your shell environment\n- **Zero native dependencies** — just Node 20+ and a few small pure-JS deps (`commander`, `@clack/prompts`, `picocolors`)\n\n> Why this exists: the only prior community tool (`namedns`) has been unmaintained since 2018 and targets Name.com's dead v1 reseller API. `namecom-cli` uses the current v4 API and is designed to be driven by humans and agents alike.\n\n## Install\n\n```bash\n# one-off\nnpx namecom-cli --help\n\n# or globally\nnpm install -g namecom-cli\nnamecom --help\n```\n\n### Install the agent skill\n\nThis repo ships a Claude/Codex skill that teaches an agent to drive the CLI. The\nCLI can install its own skill:\n\n```bash\nnamecom skill install --agent claude-code      # or: --agent codex\nnamecom skill path                             # prints the bundled SKILL.md for manual/offline install\n```\n\n…or use the official skills CLI directly:\n\n```bash\nnpx skills add hypersocialinc/namecom-cli --skill namecom --agent claude-code\n```\n\nThe skill is written to work zero-install — it calls `npx namecom-cli` when the\n`namecom` binary isn't on PATH — so adding only the skill still works.\n\n## Authenticate\n\nCreate a **production** API token at <https://www.name.com/account/settings/api> (you get a username + token), then:\n\n```bash\nnamecom login                                  # prompts for username + token (masked) at a TTY;\n                                               # offers to open the token page in your browser\nnamecom login --user <username> --token <token># or pass them directly / via env\n```\n\n> **Interactive only for humans.** Prompts, spinners, and color appear only when you're at a real terminal. When output is piped, in CI, an agent is driving, or you pass `--json`, the CLI is fully non-interactive and deterministic — missing inputs become a clean error, never a hung prompt. (`namecom` and `namecom-cli` are both valid commands.)\n\n`login` verifies the credentials, then stores them in your macOS Keychain (`namecom_user` / `namecom_token`). You can also just set `NAMECOM_USER` / `NAMECOM_TOKEN` in the environment and skip `login`.\n\nResolution order on every command: `--user/--token` flags → env vars → Keychain → `~/.config/namecom/credentials.json`.\n\n## Usage\n\n```bash\nnamecom whoami                          # verify auth, show domain count\nnamecom domains list                    # list every domain in the account\n\nnamecom records list example.com                 # all records\nnamecom records list example.com --type TXT      # filter by type\nnamecom records list example.com --host send     # filter by host\n\nnamecom records create example.com --host www --type CNAME --answer example.vercel.app\nnamecom records update example.com 12345 --ttl 600\nnamecom records delete example.com 12345\n\n# Idempotent upsert — safe to run repeatedly, never creates duplicates:\nnamecom records set example.com --host send --type MX \\\n  --answer feedback-smtp.us-east-1.amazonses.com --priority 10\n```\n\nAdd `--json` to any command for machine-readable output, and `--api-url https://api.dev.name.com` to target the sandbox.\n\n### Real example: verifying a Resend sending domain\n\n```bash\nnamecom records set example.com --host 'resend._domainkey.mail' --type TXT --answer 'p=MIGf...'\nnamecom records set example.com --host 'send.mail' --type MX --answer 'feedback-smtp.us-east-1.amazonses.com' --priority 10\nnamecom records set example.com --host 'send.mail' --type TXT --answer 'v=spf1 include:amazonses.com ~all'\n```\n\n## For agents\n\n```bash\nnamecom commands         # full command tree as JSON\nnamecom <cmd> --json     # structured output for any command\n```\n\n`@` means the zone apex (root). Hosts are relative to the domain (e.g. host `send` on `example.com` → `send.example.com`).\n\n## Notes & non-goals (v1)\n\n- Scope is **DNS records** (`list/get/create/update/delete/set`) and read-only **`domains list`**.\n- Not (yet) covered: nameservers, URL forwarding, domain registration/transfer/contacts. The `client/` layer is kept separate from commands so these are easy to add.\n- This is an unofficial tool and is not affiliated with Name.com.\n\n## License\n\nMIT © Hypersocial, Inc.\n","readmeFilename":"README.md"}