CLI + TUI + headless + MCP

Operate Xyte fleets with predictable CLI flows.

xyte-cli gives coding agents and operators one deterministic runtime for endpoint calls, guarded writes, full-screen TUI operations, headless NDJSON snapshots, and schema-validated output contracts.

Guarded mutations Schema contracts Agent-ready workflows
xyte-cli quickstart
# install + verify
npm install -g @xyteai/cli@latest
xyte-cli --help

# setup readiness
xyte-cli setup status --tenant acme --format json

# headless frame for agents
xyte-cli tui --headless --screen dashboard --once --format json

Model fit

`xyte-cli` vs `xyte-cli mcp serve`

Both expose the same operational surface. The choice is execution model: command-driven loops for coding agents, or tool transport for orchestration platforms.

CLI mode

Best for low-token, deterministic command workflows where the agent shells out and controls flow explicitly.

Fast command loops Predictable stdout Easy CI integration

MCP mode

Best for tool-native runtimes that call `xyte-cli` capabilities over stdio through Model Context Protocol.

Tool invocation Orchestrator-friendly Shared command contracts

Core capabilities

Built for production operations

Skill bootstrap

Install bundled skill docs for Claude, Copilot, and Codex from one command.

xyte-cli install --skills

Provider + slot auth

Named key slots per provider with add/use/update/rename/test/remove lifecycle.

xyte-cli auth key list --tenant acme --format json

Full TUI

Operational screens for setup, config, dashboard, spaces, devices, incidents, and tickets.

xyte-cli tui

Headless NDJSON

Machine-only snapshots for agent loops with schema-stable IDs.

xyte-cli tui --headless --screen dashboard --once --format json

Guarded writes

Write and destructive endpoints require explicit confirmation flags.

xyte-cli call ... --allow-write --confirm ...

Deterministic reports

Fleet inspect/deep-dive/report pipeline with versioned contract outputs.

xyte-cli report generate --tenant acme --input /tmp/deep.json --out /tmp/report.pdf

Install + setup

From zero to ready in one flow

Global install

Install package and verify command wiring.

npm install -g @xyteai/cli@latest
xyte-cli --help
xyte-cli doctor install --format json

Guided readiness

Use guided setup or non-interactive setup in automation contexts.

xyte-cli setup run

# CI/non-interactive
XYTE_CLI_KEY="<your-key>" \
xyte-cli setup run --non-interactive --tenant acme --key <value>

Commit gate (fresh user)

Run this sequence before merging: isolated install + skills + setup + persisted key reuse + live call.

XYTE_CLI_KEY="<real-key>" \
XYTE_E2E_TENANT="<tenant-id-or-default>" \
npm run test:commit

Skill install flow

Install skills where your agents live

The installer supports project/user scopes, agent targeting, forced overwrite, and setup skip. Non-interactive fallback defaults to project scope and all agents.

Interactive or targeted install

xyte-cli install --skills
xyte-cli install --skills --scope project --agents claude,codex
xyte-cli install --skills --scope both --agents all --force

No-setup path

xyte-cli install --skills --no-setup
xyte-cli install --skills --target /path/to/workspace

Command reference

High-signal command map

Area Example Notes
Core diagnostics xyte-cli config doctor --tenant acme --format json Readiness + connectivity checks.
Tenant profile xyte-cli tenant add acme --name "Acme" Use tenant use and tenant list for profile management.
Auth slots xyte-cli auth key add --tenant acme --provider xyte-org --name primary --key "<value>" --set-active Named slots per provider, with test/rotate support.
Endpoint calls xyte-cli call organization.devices.getDevices --tenant acme --output-mode envelope Deterministic endpoint and envelope surface.
Insights xyte-cli inspect deep-dive --tenant acme --window 24 --format json Feeds report generation pipeline.
TUI / headless xyte-cli tui --headless --screen spaces --format json --follow --interval-ms 2000 --tenant acme Interactive screen parity with machine output mode.
MCP server xyte-cli mcp serve Tool transport for MCP-compatible clients.

Guarded writes

Mutations require explicit intent

Write endpoint

Non-read calls require --allow-write.

xyte-cli call organization.commands.sendCommand \
  --tenant acme \
  --allow-write \
  --path-json '{"device_id":"DEVICE_ID"}' \
  --body-json '{"name":"reboot"}'

Destructive endpoint

Delete-like behavior also requires endpoint confirmation token.

xyte-cli call organization.commands.cancelCommand \
  --tenant acme \
  --allow-write \
  --confirm organization.commands.cancelCommand \
  --path-json '{"device_id":"DEVICE_ID","command_id":"COMMAND_ID"}'

Machine contracts

Schema IDs and source files

Headless and workflow outputs are versioned with stable contract IDs. Validate them in CI before production automation loops.

Visual demo

Interactive TUI and headless output

xyte-cli TUI dashboard with KPIs, incidents table, and ticket list
TUI dashboard for human operators.
xyte-cli headless JSON frame output with schema and metadata fields
Headless frame for coding-agent loops.

Agent quick start

Install once, then prompt away

Two steps only: install once, then use any coding agent and prompt it to run xyte-cli directly.

Step 1

Install skills once

Run this once in the workspace where your agent will operate.

xyte-cli install --skills

Done. No repeats needed.

Step 2

Use any agent and prompt away

Open Claude, Codex, or GitHub Copilot and give it a direct task prompt that explicitly says to run xyte-cli commands.

Prompt example

Inspect tenant acme and generate a report.
Use xyte-cli commands directly and keep outputs JSON-first.

Start now

Deploy deterministic Xyte operations into your agent workflows.

Install the CLI, initialize skills, run setup once, and keep outputs JSON-first where possible for reliable automation.