Skip to main content
Run HoloDesktop CLI commands with the holo command. From a source checkout, prefix commands with uv run.

Commands

Run

Useful options: Hosted mode:
Local mode:
If a runtime is already listening on the same port, --model, --base-url, and --runs-dir require a fresh runtime. Stop the existing runtime or pass a different --port.

Stop a run

Esc twice, Ctrl+C in the launching terminal, or holo stop from any terminal. holo stop --force also kills the runtime. Details in Stop a run.
The double-Esc listener for headless surfaces (holo mcp, holo acp, holo serve). holo install registers it with the OS so it runs on its own permission identity; run it by hand only if you skipped holo install. It inspects Esc timing only, never keystroke content.

MCP

This command is normally launched by an MCP host, not typed directly. It uses stdio and auto-spawns hai-agent-runtime if no healthy runtime is already listening. Use Agent hosts for host setup.

ACP

This command is normally launched by an ACP host. It uses stdio and spawns the runtime on first use. Use Agent hosts for host setup.

Serve

An A2A server on 127.0.0.1:18794 for your own agents. Each A2A contextId maps to one agent session. Protect it with a bearer token in HOLO_AUTH_TOKEN. Use Agent hosts for client setup.

Install

For Claude Code, run this from the workspace where you want HoloDesktop CLI registered. Claude Code’s MCP configuration is workspace-scoped.

Login

holo login opens a browser sign-in flow, saves HAI_API_KEY to ~/.holo/.env, and writes an identity cache to ~/.holo/profile.json. Rotate or switch identity:

Whoami

This reads local identity state and prints the signed-in account. It exits non-zero if no hosted-mode identity is available.

Doctor

doctor is read-only. Use it when setup, runtime launch, credentials, permissions, or the agent API are failing.

Next steps

Environment variables

Every variable the CLI and runtime read.

Debug a failed run

What to check when a command fails.