This guide focuses on reproducible, non-interactive usage for CI/CD and scripting.
For deterministic machine workflows:
domain-check --file domains.txt --batch --json --yesWhy:
--batch: stable grouped completion behavior--json: machine-readable output--yes: explicit no-prompt intent
domain-check reports domain status in output data. In automation, treat status categories explicitly:
available == true: candidate domainavailable == false: takenavailable == null: unresolved/unknown, usually retryable
Example policy script:
domain-check --file domains.txt --batch --json --yes \
| jq '[.[] | select(.available==null)] | length'A practical approach:
- First pass with normal settings.
- Retry only unknowns after short delay.
- Escalate persistent unknowns to manual inspection.
Use --streaming when:
- you want early progress during large runs
- output is consumed live
Use --batch when:
- you want predictable end-of-run output
- you archive full JSON/CSV artifacts
- name: Domain check
run: |
domain-check --file domains.txt --batch --json --yes > domain-results.jsonjq -r '.[] | select(.available==true) | .domain' domain-results.jsonjq -e '.[] | select(.domain=="mybrand.com" and .available==true)' domain-results.json > /dev/nullYou can use environment variables instead of long flags:
DC_CONCURRENCY=50 \
DC_TIMEOUT=15s \
DC_PRESET=startup \
domain-check --file domains.txt --batch --json --yesPrefer explicit flags for behavior-critical options when reproducibility matters.
For strict reproducibility:
- pin CLI version in your toolchain/install process
- record flags used
- capture raw JSON artifacts
- document retry policy for
UNKNOWN