Overview
Kodus configurations work across three levels: Global, Repository, and Directory.The most specific level wins: Directory > Repository > Global
How It Works
Fields inherit from the parent level by default. When you change a field at Global, all repositories and directories without an override update automatically.Overrides are per field. You can override one field and inherit everything else.
In the app
- Switching levels: the scope picker at the top of the sidebar’s Code review group lists Global (“applies to every repository”), then each repository that has its own configuration, with its directories indented beneath. Switching scope keeps you on the same page (General, What to review, Kody Rules, What Kody writes).
- Adding a level: in the scope picker, choose Add repository configuration. The Create repository settings dialog asks you to Select the target repository and, optionally, Select the target directories; click Create settings. See Directory-Level Settings.
- Seeing overrides: a numeric pill next to a scope or page in the sidebar counts the settings overridden at that level (“N settings overridden at this level”). On the page, each overridden field shows an Overridden badge; its undo button returns the field to inheritance.
- Removing a level: the ⋯ menu next to the scope picker has Delete configuration (and Edit directories for a directory scope).
Examples
- Global change propagates
- Repository override
- Return to inheritance
You change Minimum severity to post (on What to review) at Global.All repositories and directories without an override update automatically. Overridden ones stay unchanged.
Best Practices
- Start at Global with strong defaults
- Only override when you have a specific need for that repo/directory
Frequently Asked Questions
If I change something at Global, will it break my local adjustments?
If I change something at Global, will it break my local adjustments?
No. Local overrides stay unchanged.
Can I override just one field and inherit the rest?
Can I override just one field and inherit the rest?
Yes. Overrides are per field.
Does a Directory inherit from Repository or Global?
Does a Directory inherit from Repository or Global?
From Repository first. If Repository has no override for that field, it inherits from Global.