Configuration
Configure repository review policy with okae.yml.
Place okae.yml at the repository root. Okae reads it from the pull request's base branch. A proposed change to the file cannot change that PR's policy, and editing the file always requires human review.
Example
enable_approvals: false
max_changed_lines: 500
max_files: 10
strictness: standard
protected_paths:
- "src/payments/**"
- "src/permissions/**"Replace the example paths with sensitive areas that exist in your repository.
Settings
| Setting | Default | Accepted values | Effect |
|---|---|---|---|
enable_approvals | false | true or false | Opts the repository into approval reviews, subject to the service approval switch and access checks. |
max_changed_lines | 500 | Integer from 1 to 1500 | Changes above this many added plus deleted lines require human review. |
max_files | 10 | Integer from 1 to 10 | Changes above this many files require human review. |
strictness | standard | standard, high, highest | Controls how readily model concerns require human review. |
protected_paths | [] | List of repository-relative glob patterns | A matching changed path always requires human review. |
extra_checks | [] | Empty list, or a list containing missing_tests | Enables an experimental quality check. Optional checks are deferred from launch scope. |
unsafe_keep_stale_approvals | false | true or false | Prevents withdrawal of Okae's old approvals. Leave disabled. |
Unknown keys, invalid types and values outside the limits produce a configuration error. They never grant automatic approval. Repository configuration cannot disable mandatory service rules or raise service ceilings.
Strictness
standard requests human review when a model concern reaches 50%. high lowers that threshold to 40%; highest lowers it to 30%. Higher strictness requests human review more readily. These values don't change mandatory rules or size limits.
Protected paths
Patterns are case-sensitive. * matches within one path segment; ** matches across zero or more directories. For example, src/payments/** covers files inside that directory and its subdirectories.
Use paths relative to the repository root. Patterns cannot start with / or contain a .. segment.
Approval mode
Approvals default to off. Set enable_approvals: true only when your team intends Okae to submit approval reviews. The service operator must also enable its approval switch. Installation access and service access still apply.
Okae doesn't merge PRs. Configure GitHub branch rules separately and keep the human-review requirements your team needs.
When a later commit needs human review, Okae withdraws its previous approval unless the branch's rulesets already dismiss stale approvals or require approval of the last push. Prefer GitHub's Dismiss stale approvals rule. The router cannot inspect classic branch protection.
Setting unsafe_keep_stale_approvals: true can leave an earlier approval counting after a later risky commit. Keep this setting omitted or false.
Defaults and precedence
In the current router, omitted settings use service defaults. Remove a key to return that setting to its default; edit the file on the appropriate base branch through normal review.
The connected dashboard shows effective settings from the repository's default branch, per-field sources, file context, validation errors and approval blockers. Individual PRs use their own base branch, which may differ from the default branch.
Repository defaults managed through the dashboard or an authenticated connector are planned. The intended order is service defaults, repository defaults, then explicit base-branch file values. Organisation defaults are a later extension. Settings editing is Coming soon in the real dashboard. Save and reset controls in the separate fixture preview use sample data and don't write backend settings.