quickstart
Open a terminal in any project directory and run:
kageYou land in the interactive TUI. The cursor sits in the input card at the bottom of the screen, ready for your prompt.
a first turn
Type a question or a task and press Enter:
explain what this repository does in one paragraphThe assistant streams its response into the conversation buffer above the input card. Tool calls (file reads, shell commands, edits) show up as their own blocks with their inputs, outputs, and timing.
Cancel a running turn with Ctrl+C. Quit with Ctrl+Q or by typing :q.
modal navigation
kage is modal in the vim sense.
| Mode | Cursor look | Purpose |
|---|---|---|
| Insert | thin bar | edit the input card (default on launch) |
| Normal | block | navigate, scroll, fold, search |
| Visual | block | select text in the buffer or input card |
Esc returns to Normal from anywhere. i enters Insert.
the conversation buffer
In Normal mode with the buffer pane focused (Ctrl+W cycles panes):
j/kscroll one lineGsnaps to the bottom and re-arms auto-follow[/]move focus between blockszMfolds every block,zRunfolds/starts a buffer search,nandNwalk matchesyyanks the current selection
switching models mid-session
Type :model <provider>:<model> or open the model picker with Ctrl+P. The next turn uses the new model; prior history is preserved verbatim.
recording and resuming
Every session is recorded to ~/.local/share/kage/sessions/<id>.jsonl unless you pass --no-session. Resume the most recent session with:
kage resume --lastList recorded sessions:
kage listFork a session at a specific entry to try a different path without losing the original:
kage fork <session-prefix> --at <entry-prefix>print mode
For scripted use, run a single prompt and stream the response to stdout:
kage -p "summarize this Cargo.toml" --model anthropic:claude-sonnet-4-6 < Cargo.tomlnext steps
- Keybindings - the full key map
- Commands - everything the
:and/palettes accept - Plugins - extend kage in Lua