Skip to main content
unbound doctor runs a deep diagnostic of your local Unbound install. It inspects Cursor, Claude Code, Codex, GitHub Copilot and Augment Code, and validates that your stored API key is still accepted by the backend.

What it checks

For each AI coding tool, doctor verifies: It also validates your stored API key against the backend, so a revoked or expired key is caught here rather than at your next tool call. For Claude Code and Codex, doctor reports the active mode (subscription vs gateway).

Per-tool status

Each tool resolves to one of four statuses: Doctor always tells you the next step:
  • Nothing set up yet → run unbound setup.
  • A user-level tool is tampered → run unbound doctor --fix (no sudo needed).
  • An MDM-managed install is broken → it’s org-wide, so run sudo unbound doctor --fix to reinstall the managed hooks.
  • API key invalid → run unbound login.

Exit codes

The non-zero exit lets you gate scripts or CI on a clean install.

Flags

The JSON mirrors the human report. Each tool carries its status, the individual checks, and a boolean conflict — true when two modes of the same tool are installed at once (for example Claude Code in both subscription and gateway mode), which doctor reports as Tampered so --fix can clean it up. api_key carries the key-validation result (valid / invalid / not-logged-in / unverified).

Examples