# Audita CLI Reference The shared version-2 configuration parser is implemented for `process`, `config validate`, and `config print-effective`. Profile assembly and process execution are being reconnected in later work, so the CLI is not yet a usable assembled command. The [configuration reference](config.md) owns fields, defaults, and validation. ## Commands and help ```sh audita process --glossary [flags] audita config validate --config [flags] audita config print-effective [flags] ``` Root invocation, `--help`, `-h`, and command help succeed without loading a config file or resolving secrets. Unknown commands and flags return exit code `2`. `process` accepts exactly one transcript path, either before the flags or after them. With flags first, put the transcript last. Both config commands reject positional arguments and process-only flags. All three commands accept `--config ` and `--overlay `. `config validate` requires an explicit nonempty `--config`; the other commands select the explicit file, then `/usr/local/etc/audita/config.yml`, then `/etc/audita/config.yml`. Missing system candidates are skipped; inaccessible selected files are errors. No file means a configuration error. `AUDITA_CONFIG` is ignored. The selected overlay is loaded beside the main file, not used to locate profile files. ## Setting overrides Only flags actually supplied override file or overlay settings. `--modules ''` clears the module pipeline, and an explicit numeric zero reaches configuration validation. The shared setting flags are: | Setting | Flags | | --- | --- | | Profile selection | `--proposal-profile`, `--validation-profile` | | Pipeline and output | `--modules`, `--output-schema` | | Validation budget | `--validation-max-prompt-tokens` | | Chunking | `--target-sections`, `--max-section-tokens`, `--min-section-tokens` | | Normalization (numeric seconds) | `--normalize-max-segment-gap`, `--normalize-ellipsis-gap`, `--normalize-max-segment-duration`, `--normalize-max-segment-tokens` | | Confidence thresholds | `--glossary-confidence-threshold`, `--homophones-confidence-threshold`, `--spoken-word-confidence-threshold`, `--grammar-confidence-threshold` | | Context | `--transcript-description` | | Diagnostics | `--work-dir`, `--work-dir-retention` | `process` alone accepts `--glossary` (required), `--output`, and `--report-json`. Per-role model, base URL, key, timeout, retry, and concurrency flags have been removed. Models and generation controls belong to PromptKit profiles, backend credentials and capacity to configuration, and retry/deadline settings to the shared LLM section. Legacy configuration environment overrides are ignored. ## Streams and exit status `config validate` prints `config is valid` on success. `config print-effective` currently writes ConfigKit's redacted effective-settings YAML; selected-profile and provenance views are scheduled with profile assembly. The effective YAML is for inspection and is not guaranteed to be a reloadable input file. For `process`, `--output` writes the corrected transcript to a file and leaves stdout empty on success. Without it, stdout carries transcript JSON only on success. `--report-json` writes a separate report file. Stderr carries readable errors and diagnostic locations. A successful run can contain skipped corrections or warnings; see the [report contract](integrations/output-files.md). Exit codes are `0` for success, `1` for runtime or output failure, and `2` for usage or configuration input errors. Configuration commands never contact a provider merely to parse settings; profile validation is being connected next. See the [input files](integrations/transcript-glossary-files.md), [subprocess contract](integrations/subprocess.md), and [artifact lifecycle](operations.md) for their respective details.