CLI
doctor
Run a full diagnostic of the local OwnLLM install — pairing, secrets, runtimes, daemon, host.
ownllm doctorWalks the whole stack and prints PASS / WARN / FAIL for each step. It's the first thing to run when something feels off; the output is also exactly what support asks for.
Sample output
ownllm doctor
[PASS] CLI version v0.4.2 (stable channel)
[PASS] Paired tenant=acme-prod
[PASS] Secrets store macOS Keychain (service=ai.ownllm.cli)
[PASS] Runtime: ollama v0.6.4, accelerators=[metal, mlx]
[PASS] Runtime: cloudflared v2025.10.1
[WARN] Disk free 42 GB on / (recommended: 100 GB+)
[PASS] Daemon online via launchd, pid 8421
[PASS] Heartbeat last sent 12s ago
[PASS] Tunnel acme-agent.ownllm.app reachable
[PASS] Gateway 127.0.0.1:11435 healthy
[PASS] Models 2 ready, 0 downloading
3 PASS · 1 WARN · 0 FAILWhat each step checks
| Step | What it does |
|---|---|
| CLI version | Reads --version. Warns if older than the manifest pin. |
| Paired | Looks up the agent token in the keychain. |
| Secrets store | Confirms the keychain backend is reachable. |
| Runtimes | Calls runtime list; reports outdated or absent. |
| Disk free | Warns under 100 GB; FAIL under 10 GB. |
| Daemon | Asks the OS service manager + the IPC socket. |
| Heartbeat | Asks the site when it last received one. |
| Tunnel | DNS-resolves the tunnel hostname + an HTTPS healthcheck. |
| Gateway | Local HTTP healthcheck on the OpenAI proxy. |
| Models | Reports the count and any in-flight downloads. |
Exit codes
| Code | Condition |
|---|---|
0 | All steps PASS or WARN |
1 | One or more FAIL |
CI hosts tend to reject WARN; pass --strict to make WARN fail too.
When to share doctor output
- A model won't load (FAIL on disk free? RAM? VRAM?)
- The chat UI says "agent offline" (FAIL on tunnel or daemon?)
- API requests time out (FAIL on gateway or heartbeat?)
doctor redacts the agent token and tunnel credentials from its
output — it's safe to paste into a support email or a GitHub issue.
Related
status— lighter-weight, runs without the full prerequisite walk.logs --follow— whendoctorsays a runtime is degraded.