Navigation

kli

kli is a radically extensible coding agent you rewrite while it runs.

kli is a coding agent that runs inside its own live SBCL image. The boot kernel is small: it knows only how to install, switch, and roll back protocols. The extension system itself — the manifests, contribution kinds, capabilities, and tools — is a protocol installed on that kernel through those same verbs. Every model provider, every tool, the agent loop, and the whole TUI is an extension, and every contribution carries a retractor, so retraction drains exactly what it added. You install, retract, swap, or hot-patch any of it from the REPL without dropping the session. Extensions all the way down. If that makes you want to open src/kernel.lisp, kli is for you.

Install on Linux or macOS:

sh
curl -fsSL https://kli.kleisli.io | sh

Run kli inside a project to start a session. Source and releases are on GitHub.

Learn

Get started is a fast orientation for someone already at home in a terminal and a coding agent: install, the one credential, and the handful of things a kli session does differently. Guides are goal-named recipes for when you already know what you want; Concepts explain the machine underneath — the live image, the agent loop, sessions as a tree, and how permissions are decided.

Extend

Extend kli is one mechanism at three altitudes. Above the boot kernel, everything is an extension you install with a retractor: feed the builtin prompt-templates and skills extensions a Markdown file, write your own contribution, or define a new contribution kind. The same install and retract shape throughout.

Reference

Reference is the exact catalogue. CLI & Install covers the command-line interface and every install path; Commands, Tools & TUI documents every slash command, tool, and key in the interface; Settings & Files is the configuration and on-disk layout; and Models & Providers lists the model line-up across providers.