Skip to content

Overview

Ingrain is configured through conf.toml files. The CLI reads each location below and deep-merges them in order — later entries override earlier ones:

  1. User config (lowest priority). Path resolves per platform:
    • Linux / macOS: $XDG_CONFIG_HOME/ingrain/conf.toml if XDG_CONFIG_HOME is set, otherwise $HOME/.ingrain/conf.toml.
    • Windows: %APPDATA%\ingrain\conf.toml.
  2. Project walk. Inside a git repo, the CLI walks from your current directory up to the repo root and picks up every .ingrain/conf.toml along the way, ordered from repo root → CWD (closer-to-CWD wins). Outside a git repo, only <cwd>/.ingrain/conf.toml is consulted.

On top of that:

  • Environment variablesINGRAIN_INSTALL_TOKEN and INGRAIN_PROXY_URL override the matching [upgrade] keys at runtime.
  • CLI flags--review-file and --auto-close-session override the matching [cli] values for a single run.
SectionWhat it configures
[cli]Where to save reviews, auto-close behaviour.
[upgrade]The proxy URL ingrain upgrade pulls from.
[hook]Which terminal Ingrain spawns when a harness fires the hook.
[agent.model]LLM provider and model name.
[agent.apiKeys]Your provider API keys.

ingrain config opens your conf.toml in the default editor, seeding it with the full annotated reference on first run:

Terminal window
ingrain config