◇ /LANDING/CLI

relays zones add
push · diff · plan.

A single binary that manages zones, records, domains, certificates, and monitors from your terminal. Pipe it, script it, CI/CD it.

brewnpmcargoDiff modePlan modeCI/CD ready
01 · INSTALL

Four ways in.
One binary out.

Install from Homebrew, npm, Cargo, or a single curl. The binary is statically linked, no runtime dependencies.

Homebrew
$ brew install relays-cli/tap/relays
npm
$ npm install -g @relays/cli
Cargo
$ cargo install relays-cli
curl
$ curl -fsSL https://get.relays.one | sh
02 · ZONE MANAGEMENT

List. Add. Update.
Delete.

Full CRUD on zones, records, domains, certs, and monitors. Tab completion for zone names, record types, and subcommands.

relays-cli
03 · DIFF & PLAN

See before you push.
Like terraform plan.

Diff your local zone file against live DNS. Plan shows the exact operations that will execute. Nothing changes until you confirm.

relays diff + plan
04 · CI/CD

Git push.
DNS deploys.

Commit your zone files. Let GitHub Actions, GitLab CI, or any pipeline run relays push. DNS becomes infrastructure-as-code.

.github/workflows/dns-deploy.yml
05 · CONFIG

One config file.
All defaults.

Store your API key, default zone, output format, and profile overrides in ~/.relays/config.toml. Environment variables override everything.

~/.relays/config.toml
[default]
api_key = "rk_live_2WzF4x..."
zone    = "example.com"
format  = "table"    # table | json | yaml

[profile.staging]
api_key = "rk_test_9a8b7c..."
zone    = "staging.example.com"

[output]
color   = true
pager   = false
verbose = false

Install the CLI.
Ship DNS from your terminal.