A directive is ephemeral: it applies to that one review run only. It is not saved to your settings and does not affect future reviews. To change Kody’s behavior permanently, use Custom Prompts or Kody Rules instead.
When to Use It
- A PR touches many files but you care most about one risky area (auth, payments, a migration).
- You want Kody to trace the callers and callees of a specific change and challenge it harder.
- You’re re-running a review and want to steer attention without editing any config.
Priority, Not a Filter
This is the most important thing to understand: Use a directive to say “look here hardest” — not “only look here.”How to Trigger It
- PR / MR Comment
- CLI
Add your focus text right after the review command in a pull request comment:You can also use Works on GitHub, GitLab, Azure DevOps, Bitbucket, and Forgejo.
start-review, and combine it with --force:--force re-runs the review even when Kody would normally skip it (“no new commits since the last review”). Use it — with or without a focus directive — to get a fresh pass after fixing whatever made the previous run fail, or to apply updated settings to an already-reviewed PR.Only the first line after the command is used as the directive. Everything on later lines is ignored, so keep your focus to a single line.
Heavy mode
A focus directive tells Kody where to look hardest.--heavy tells it to look longer: the
finder runs extra “what did you miss?” critic passes over the same diff, surfacing more real
issues at the cost of a slower review and more candidates to triage.
--heavy can sit anywhere on the command line — before or after your focus text — and it is
stripped from the directive either way, so @kody review focus on the retry logic --heavy
focuses on “the retry logic”.
A dash is required: a bare heavy is read as directive text, so @kody review heavy checkout path focuses on “heavy checkout path” rather than enabling the flag.
Availability
Heavy mode is an alpha feature. It only runs for organizations we’ve explicitly opted in:The flag fails open, not loud. If your organization isn’t opted in,
--heavy is accepted
and the review runs normally — no error, no warning, no different result. If you asked for
access and can’t tell whether it’s active, ping us rather than assuming it ran.Writing a Good Directive
- Be specific about the area, not the verdict. “focus on concurrency in the queue consumer” works better than “find bugs”.
- Name the code, not the outcome. Point at a module, flow, or concern (“the retry logic”, “the SQL in the reports service”).
- Keep it short. Directives are capped at 500 characters; only the first line of a comment is read.
Good examples
Good examples
@kody review focus on the authentication and token-refresh flow@kody review focus on the new Stripe webhook handlingkodus review --focus "race conditions in the background worker"
Weak examples
Weak examples
@kody review please be thorough— no area to prioritize.@kody review only comment on file X— a directive is not a filter; use ignore paths to scope files instead.
Notes & Limits
- Length: directives are truncated at 500 characters.
- First line only: for PR comments, only the first line after the command becomes the directive.
- Untrusted by design: because anyone who can comment on the PR can supply a directive, the text is sanitized before use (control characters and angle brackets are stripped). This does not change your focus — it only prevents the text from tampering with Kody’s internal prompt.
- Not persisted: nothing is written to your repository or organization settings.