Why
Agents that rewrite their own harness score higher on benchmarks. Left to judge their own changes, they also break things that worked, overfit their test tasks and get more expensive. In one 2026 study, 55% of the self-modifications a reviewer rejected had fixed the failure they targeted and broken something else (arXiv:2609.24130). Kalki is built around that reviewer.Install
Build from source with Rust 1.88 or newer:Quick start
1
Decide what the agent may run
Kalki denies any command no rule allows. Without a policy file it uses a built-in default that allows
ls, rg,
cat, head, tail, pwd, git, cargo and rustc. That default allows all of git and cargo, including
git push and build scripts, so write your own policy. It lives at ~/.config/kalki/policy.toml on Linux and macOS
and %APPDATA%\kalki\policy.toml on Windows.policy.toml
2
Point Kalki at a model
For a local open-weight model served by Ollama:Without
KALKI_PROVIDER, Kalki uses the OpenAI Responses wire and reads OPENAI_API_KEY.3
Check the setup and run a task
From inside a git repository:
--max-turns defaults to 200.ask rule is treated as a denial because there is no prompt yet, and apply_patch is
confined to the workspace but not checked against policy rules.
What works today
Architecture and admission gate
The kernel, the genome and the eight-predicate gate.
Agent Kalki paper
The formal admission rule, threat model and hypotheses.

