# Frazer CLI > `frazer` is the command line for everything in Frazer, and `fir` for work inside a repository. Both call the same API as the console and the MCP server, with the same permissions, plans and audit records, and both follow one contract written for agents: TSV when piped, `--json` and NDJSON on request, one error envelope with `next`, and stable exit codes. Part of Frazer's docs for agents. Every page on frazer.ai: https://frazer.ai/llms.txt. Every docs page: https://frazer.ai/docs/llms.txt. ## How agents should use Frazer CLI - Commands follow `frazer [ID] [flags]`; `frazer help --json` and `frazer --help --json` list what exists. Never guess a command or a flag: read the card or the reference. - Run every change with `--dry-run` first. A change that needs a person's approval exits with code `13` (needs a person); `--wait` follows it. - Branch on the exit code and the error envelope's `reason`, never on the message. On `13` a person must act: stop and follow `next`. On `6` wait as `retry.afterMs` says, then repeat the call. No funds is `13` with `FUNDS_EXHAUSTED`: never retry it cheaper. On `14` a run stopped at a limit you set and kept its result. The envelope's `effects` says what changed before a failure: after `unknown`, retry with the same idempotency key. - Use `--json` or `--format=json`; results go to stdout, plans and errors to stderr; a list says its count and its next page. - Pass `--project` and `--location` (never `--region`), or set them in the active configuration. - Copy commands from the Markdown exactly: a fetch tool that summarizes may shorten them. ## Pages - [CLI](https://frazer.ai/docs/cli.md?from=llms-txt): Install the frazer CLI, sign in, pick an organization and project, choose an output format, and plan, apply and approve changes from your terminal. - [CLI commands](https://frazer.ai/docs/cli/commands.md?from=llms-txt): Every frazer command by product, as each product's docs page declares it, with what it does; frazer --help shows every flag and --help --json its card. - [The CLI for agents](https://frazer.ai/docs/for-agents/cli.md?from=llms-txt): The contract both command lines, fir and frazer, follow for agents: three output modes, lists that always say the count and the next page, NDJSON streams whose first and last lines survive truncation, one JSON error envelope that names the next call, stable exit codes with 13 for needs a person, plans before writes, idempotency keys, help as data at three levels, an MCP tool for every command, and the speed targets the release gate holds. ## Optional - [Full text of these pages](https://frazer.ai/docs/cli/llms-full.txt): 3 pages, 92,084 characters, about 23,021 tokens