返回 Skill 列表
extension
分类: 数据与分析需要 API Key

dotld

查询域名可用性及注册价格。当用户提及域名、TLD、域名注册、域名可用性或想查找时使用。

person作者: tedstonnehubclawhub

dotld — Domain Availability & Pricing

Installation

If dotld is not already available on the machine, install it:

curl -fsSL https://raw.githubusercontent.com/tedstonne/dotld/main/scripts/install.sh | bash

Prerequisites

dotld requires a Dynadot production API key. The key is resolved in this order:

  1. --dynadot-key <key> flag (also auto-saves to config for future runs)
  2. DYNADOT_API_PRODUCTION_KEY environment variable
  3. Saved config at ~/.config/dotld/config.json

Get a key at: https://www.dynadot.com/account/domain/setting/api.html

If the key is missing, dotld exits with an error and a link to the key page.

Modes of Operation

Exact domain lookup

When the input contains a dot, dotld checks that specific domain:

dotld example.com

Output:

example.com · Taken

Or if available:

example.com · $9.99 · https://www.dynadot.com/domain/search?domain=example.com&rscreg=github

Keyword expansion

When the input has no dot, dotld auto-expands across 9 popular TLDs — com, net, org, io, ai, co, app, dev, sh:

dotld acme

Output:

acme
├─ acme.com · Taken
├─ acme.net · Taken
├─ acme.org · Taken
├─ acme.io  · $39.99 · https://www.dynadot.com/domain/search?domain=acme.io&rscreg=github
├─ acme.ai  · Taken
├─ acme.co  · Taken
├─ acme.app · Taken
├─ acme.dev · Taken
└─ acme.sh  · Taken

Multiple domains at once

Pass multiple arguments or use --file:

dotld acme.com startup.io mybrand

dotld --file domains.txt

Output Interpretation

  • domain · Taken — registered, not available
  • domain · $39.99 · https://... — available with registration price and buy link
  • Prices are in USD

Flags

| Flag | Description | |------|-------------| | --json | Output structured JSON instead of the tree table | | --file <path> | Read domains from a file (one per line) | | --dynadot-key <key> | Provide API key (auto-saved to config) | | --timeout <duration> | Request timeout, e.g. 5s, 500ms (default: 10s) | | --currency USD | Currency for prices (only USD supported in v1) |

Workflow Guidance

User has a specific domain → run exact lookup:

dotld coolstartup.com

User has a brand name or keyword → run keyword expansion:

dotld coolstartup

User wants to brainstorm → suggest name variations, then batch-check them:

dotld coolstartup launchpad rocketship

Present results as a ranked list: show available domains sorted by price, include buy links. Suggest next steps — open a buy link, check more TLDs, try name variations.

Batch from file → when the user has a list:

dotld --file domains.txt

Structured output → when parsing results programmatically:

dotld acme --json

Examples

Check if a domain is taken

$ dotld example.com
example.com · Taken

Explore TLDs for a keyword

$ dotld acme
acme
├─ acme.com · Taken
├─ acme.net · Taken
├─ acme.org · Taken
├─ acme.io  · $39.99 · https://www.dynadot.com/domain/search?domain=acme.io&rscreg=github
├─ acme.ai  · Taken
├─ acme.co  · Taken
├─ acme.app · Taken
├─ acme.dev · Taken
└─ acme.sh  · Taken

JSON output for scripting

$ dotld example.com --json
{
  "results": [
    {
      "domain": "example.com",
      "available": false,
      "price": null,
      "currency": "USD",
      "buyUrl": null,
      "cached": false,
      "quotedAt": "2026-02-21T00:00:00.000Z"
    }
  ]
}