Exit Codes
What each exit code means and how a script or an agent should react.
| Code | Meaning |
|---|---|
| 0 | Success |
| 64 | Usage error (bad flags, confirmation required without --yes) |
| 65 | Data format error (bad JSON input) |
| 66 | Input file not found |
| 70 | Internal CLI error |
| 71 | OS error (keyring and similar system facilities) |
| 75 | Network / temporary failure (doctor uses 75 on any failed check; --pre-flight also on warnings) |
| 77 | Permission denied (403) |
| 78 | Configuration error / operation allowlist refusal |
| 100 | Auth required or failed (401) |
| 101 | Subscription inactive (402) |
| 102 | Validation error (422): check error.details |
| 103 | Rate limited (429): check error.retry_after |
| 104 | Not found (404): verify the id with a search first |
| 105 | Bad request (other 4xx) |
| 106 | Request timeout: retry or raise POSTSALE_HTTP_TIMEOUT_MS |
| 130 | Aborted: Ctrl-C during postsale run, streamed or not (--stream also emits an aborted event first) |
Agent recovery by error.code: ../agent/errors.md. Source: AGENTS.md.
Related