dxdt CLI¶
DXDT from your terminal — an interactive agent console, plus scriptable
commands for findings, incidents, the infrastructure graph, and CI. Built
for both interactive use (rich streaming output) and scripting (--json,
stable exit codes).
Install¶
curl -fsSL https://<your-dxdt-host>/install.sh | sh
The installer puts the CLI in an isolated virtualenv under ~/.dxdt and
symlinks dxdt into ~/.local/bin — no system packages are touched.
Re-running it upgrades in place. Requires Python 3.10+ and curl.
Verify with dxdt version.
The CLI you download is built with the server that serves it, so client and API are always in step.
Custom locations
DXDT_INSTALL_DIR and DXDT_BIN_DIR override the install and symlink
directories. To uninstall: rm -rf ~/.dxdt ~/.local/bin/dxdt.
Authenticate¶
dxdt login --host https://<your-dxdt-host>
This opens <host>/cli/auth in your browser. Signing in and pressing
Authorize mints a personal access token and hands it back to the CLI on
a localhost callback (--no-browser prints the URL for SSH sessions, with
copy/paste token entry).
The token is stored in ~/.config/dxdt/config.json (mode 0600).
Environment variables override the config file — use these in CI:
export DXDT_HOST=https://<your-dxdt-host>
export DXDT_TOKEN=dxdt_... # mint from Settings → CLI & API
dxdt logout revokes the stored token server-side and deletes it locally.
Interactive mode¶
Running dxdt with no arguments (or dxdt chat) opens an interactive
session — a persistent conversation with the agent, with slash commands
for everything else:
$ dxdt
dxdt› why did egress spike yesterday?
...streaming investigation...
dxdt› /findings
dxdt› /blast prod-db
dxdt› /teach payments-prod must never scale below 3 replicas
dxdt› /quit
| Slash command | Does |
|---|---|
/help |
List commands |
/new [name] · /sessions · /session <id> · /history |
Manage and switch conversations |
/attach |
Rejoin a running agent turn |
/findings · /incidents · /report · /inbox |
Quick views without leaving the session |
/graph <query> · /blast <resource> |
Search the graph / project blast radius |
/teach <fact> · /learnings |
Teach a durable fact / list taught facts |
/tools · /whoami · /clear · /quit |
Utility |
Commands¶
Agent¶
dxdt ask "why did egress spike yesterday?" # streams steps + tools live
dxdt ask "…continue that" -s cli-abc123 # continue a session
dxdt ask "…" --tools gcp,datadog # constrain tool selection
dxdt ask "…" --no-stream # single response, no SSE
dxdt attach [--after N] # rejoin a run after Ctrl-C / disconnect
Agent runs are durable: if your terminal disconnects mid-run, the run
keeps executing server-side — dxdt attach replays what you missed and
resumes streaming.
Pulse (FinOps / reliability findings)¶
dxdt pulse overview
dxdt pulse findings --status open --severity high --domain finops
dxdt pulse show <id> # full evidence for one finding
dxdt pulse recommendations
dxdt pulse resolved # what was fixed, by whom, on what evidence
dxdt pulse reinvestigate <id> # re-check a finding's current state
Incidents¶
dxdt incidents list --status open --severity SEV1 --limit 20
dxdt incidents create --title "Checkout latency p99 > 2s" --severity SEV2
dxdt incidents show <id>
dxdt incidents timeline <id>
dxdt incidents investigate <id> # dispatch an agent investigation
dxdt incidents warroom <id> # open/link the incident war room
create prompts for a title if --title is omitted; default severity is
SEV3.
Infrastructure graph¶
dxdt graph summary # nodes, edges, health at a glance
dxdt graph search "payments"
dxdt graph blast <resource-id> # blast radius
dxdt graph health
dxdt graph risks # single points of failure, toxic combos
dxdt graph drift # what changed recently
Knowledge & memory¶
dxdt teach "staging DB failover on Sundays is a planned DR drill"
dxdt learnings list [--status active]
dxdt report # latest Morning Report
CI gate¶
dxdt plan review --file plan.json --fail-on high
See Plan review for the CI recipes and risk levels.
Everything else¶
dxdt triage overview|events|rules # triage pipeline state
dxdt resilience status|findings # resilience engine results
dxdt inbox list|read-all # your DXDT notifications
dxdt tools list|catalog|installed # agent tools & marketplace state
dxdt runbooks list
dxdt team list
dxdt audit list|verify # org audit log + integrity check
dxdt sessions list|rm|rename
dxdt tokens list|revoke # tokens are minted via login or Settings → CLI & API
dxdt whoami · dxdt version
Scripting¶
- Every read command accepts
--jsonand prints raw JSON to stdout. dxdt askwith piped stdout (or--json) switches to the non-streaming API and prints only the final reply/JSON — safe in pipelines.- Exit codes:
0ok ·1error ·2auth failure ·3rate-limited.
# Example: fail a CI job if any open critical finding exists
crit=$(dxdt pulse findings --status open --json | jq '[.[] | select(.severity=="critical")] | length')
[ "$crit" -eq 0 ] || { echo "$crit critical findings open"; exit 1; }
Agent budgets
Agent invocations (ask, plan review, investigations) are budgeted per
token per UTC day. A 429 (exit code 3) means the token's daily budget
is exhausted — see Authentication.