Configuration

.mira.yaml overrides

The optional per-repo .mira.yaml file overrides the deployment-wide mira.yaml for a single repo. Same schema, scoped to one repo.

Drop a .mira.yaml at the root of a repo to override the deployment-wide mira.yaml for that one repo. It's optional; reach for it only when a repo needs different review behaviour (a noisy frontend wanting confidence_threshold: 0.85, a backend wanting min_severity: "warning", etc.). Most repos don't need one.

Prefer the UI? The dashboard's per-repo settings page edits the same overrides without committing a file.

Schema

Same as mira.yaml: llm, filter, review, index, every key optional. The deployment-config reference documents every key; anything there is overridable here.

DB connection and dashboard auth have no per-repo equivalent; they're set deployment-wide via DATABASE_URL / ADMIN_PASSWORD env vars.

Typical examples

Real .mira.yaml files are short, just the keys that differ.

A noisy frontend wanting stricter filtering and extra exclude patterns:

# .mira.yaml
filter:
  confidence_threshold: 0.85
  min_severity: "warning"
  exclude_patterns:
    - "*.lock"
    - "src/generated/**"
    - "vendor/**"

A backend wanting the stronger model for review, the cheap one for indexing:

# .mira.yaml
llm:
  review_model: "anthropic/claude-opus-4-7"
  indexing_model: "anthropic/claude-haiku-4-5"

A large repo keeping indexing cheap — skip files over 256 KB and don't index the committed vendor/ tree:

# .mira.yaml
filter:
  exclude_patterns:
    - "vendor/**"
index:
  max_file_size: 262144

Every other key inherits from mira.yaml. See How merging works for the merge rules.

On this page