Skip to main content
Turn on Automatic PR approval in Code review → General. Kody submits a review approval to your Git provider. It never merges the PR.

Approval policies

Each policy has a name, a switch and optional conditions. All conditions within a policy must match. Any enabled policy can authorize approval; the first match in the saved order is recorded on the PR. New policies start off. A policy without conditions covers All clean PRs, shown in both the editor and the list. Adding or editing a policy does not turn on automatic approval. Policies support Global, Repository and Directory scope. They apply to the complete PR, including files skipped by incremental review or ignored for review comments. Usernames and labels are compared without case. Team membership is checked again on each evaluation. GitHub teams, GitLab groups and Azure DevOps teams are supported; unavailable membership never counts as a match. Unsupported team selectors are rejected when saving. A renamed file counts under both its old and new path. Unknown or binary line counts cannot satisfy a line limit unless the file is explicitly excluded from that count. Use the file-pattern editor to validate glob syntax and test a sample path. If an eligibility instruction fails, times out or lacks evidence, that policy cannot approve. Another enabled policy may still match.

Requirements that apply to every policy

  • The review must finish without blocking failures or unresolved findings. A failed PR-summary narrative alone does not invalidate a delivered clean review.
  • If risk assessment is on, risk found or an unavailable assessment blocks every policy.
  • Files listed under Files requiring human approval always block automatic approval.
  • The PR head and base must still match the reviewed snapshot. A newer failed or incomplete review prevents reuse of an older clean result.
When risk assessment is off, the clean-review and policy requirements still apply. There is no per-policy risk bypass. Kody can reconsider a reviewed PR when a label changes or delivered line comments are resolved. PR-level findings require a new clean review. A custom-agent-only run never approves the whole PR.

Decision comment

With automatic approval on, each reviewed PR receives an updated decision comment. It names the matching policy or explains the failed conditions. Private eligibility instructions and free-form model reasoning are not published. Changing or disabling a policy does not withdraw an approval already on the provider.

YAML

Enable kodus Config File Overrides Web Preferences in General before using repository configuration files.
Keep policy IDs stable and names distinct. An explicit empty list disables all policies. Existing unrestricted approval resolves to one enabled Existing approval policy, preserving the master switch. Legacy approvalLabels and approvalAuthors still scope that migrated policy. If a higher-priority file uses legacy filters with a new policy list that has no migrated policy, update the file to approvalPolicies; Kody rejects the ambiguous configuration rather than ignoring a restriction.