Kavi

Project Config

Repository-local configuration at .kavi/config.toml

The project config file lives at .kavi/config.toml in your repository root. It's created by kavi init and controls routing, agent settings, and validation for this specific project.

Full Example

version = 1
base_branch = "main"
validation_command = "npm test"
message_limit = 6

[routing]
frontend_keywords = ["frontend", "ui", "ux", "react", "css"]
backend_keywords = ["backend", "api", "server", "db", "auth"]
codex_paths = ["src/backend/**", "src/lib/**"]
claude_paths = ["src/components/**", "src/pages/**"]

[agents.codex]
role = "planning-backend"
model = ""

[agents.claude]
role = "frontend-intent"
model = ""

Fields

Top Level

FieldTypeDefaultDescription
versioninteger1Config format version. Required.
base_branchstring"main"Branch used as base for worktrees and landing target.
validation_commandstringnoneShell command run during kavi land for validation.
message_limitinteger6Max peer messages included in agent context.

[routing]

FieldTypeDescription
frontend_keywordsstring[]Keywords that bias routing toward Claude.
backend_keywordsstring[]Keywords that bias routing toward Codex.
codex_pathsstring[]Glob patterns for paths owned by Codex.
claude_pathsstring[]Glob patterns for paths owned by Claude.

[agents.codex] / [agents.claude]

FieldTypeDescription
rolestringRole label used in routing metadata.
modelstringModel override (empty = default).

Notes

  • The version field is required
  • validation_command is optional — omit it until your project has tests
  • All path patterns are relative to the repository root
  • This file is tracked in git (it's not in .gitignore)

On this page