Install ko, start a session, index the repo, run a real task, switch pipelines, resume later. Six steps. Read the left rail, watch the terminal replay on the right.
// one curl, then log in
The installer autodetects your OS/arch, drops the binary at /usr/local/bin/ko, and sets it executable.
Then ko auth login pops a browser to the CLI OAuth flow. Sign in, click authorize, and the token is cached locally.
Already have a token? ko auth token <token> pastes it directly, useful for CI, headless servers, or containers.
ko auth login opens the browser-based OAuth flow and writes a scoped token into ~/.ko/credentials.json. For CI/headless environments, use ko auth token <token> instead.
// ko with no args opens the TUI
cd into any project folder, run ko, and you get a full-screen TUI. The top bar shows your model, wallet balance and context usage.
The session is bound to the directory, ko registers the project on first run. Next time you cd in, ko -c picks up where you left off.
Use ko -p "quick question" for one-shot, non-interactive runs, the answer prints and exits.
Every ko session is scoped to your current working directory. The project is auto-registered the first time you run ko in a new folder, so 'sessions' are tied to specific codebases, you won't accidentally send a fight-club question into your django project.
// one command, then concept queries work
ko workspace init embeds the repo into a private vector store on your account. Roughly 30 seconds on a typical codebase, longer on a monorepo. The watcher then keeps the index current as you edit.
After this, the agent can answer concept queries. "Where do we rate-limit incoming webhooks" finds the right middleware even when the file never uses the word "webhook". Cursor indexes too. We embed, so synonyms work.
Skip the watcher in CI with --no-watch. Check status anytime with ko workspace status.
ko workspace init walks the tree (honoring .gitignore and .koignore), uploads each file to your private workspace vector store and starts an fs-watcher in the background that re-embeds anything you edit. The agent then has VectorSearch as a tool alongside Grep, useful when you don't remember the exact symbol name but you do remember what the code does.
// plain English, not jargon
Don't prompt it like ChatGPT. Describe the outcome. "Add a /health endpoint that returns uptime and version". Ko reads the relevant files, plans and implements the change, then runs the verifier.
You approve tool calls as they happen (or auto-allow trusted ones in ~/.ko/settings.json). Watch the PLAN → ACTION → VERIFY tags stream past.
Cost and duration print at the end of every task. One feature typically runs $0.01-0.50 depending on pipeline and model choice.
Ko reads the files it needs, proposes changes, runs them through the pipeline and keeps looping back on failure until tests pass. Every tool call and its output shows in the TUI, nothing is hidden.
// same ko, different brain
/pipeline lists what's available. The shipped defaults include a generalist agent (KO_default), multi-model consensus coding (KO_consensus) and 7 vertical specialists covering legal, finance, research and more.
/pipeline <name> switches mid-session. Ko uses the new flow for the next task, your conversation history is preserved.
Want to build your own? Open the pipeline editor at /dashboard/pipelines to visually wire steps, pick models, set tool allowlists and add failure branches.
Pipelines define the sequence of model calls, which tools each step can use, how failures are handled and which model runs each step. Switching pipeline mid-session is instant, no restart, no new context. The next task uses the new flow.
// sessions survive everything
ko -c continues the most recent session in the current directory. ko -r picks from a list. ko --resume-id <id> jumps straight to one.
Running low on context? /compact summarizes the conversation into a short memo. /clear wipes history but keeps the system prompt.
Made a mistake on the last task? /rollback restores every file ko touched. Ko snapshots before every edit.
Ko saves messages to the server after every turn, encrypted with your vault key if you've set one. Resume from any machine with the same account, sync your local snapshots with `ko sync push/pull` if you want the working tree too.
For depth on skills, memory, MCP, sync, config and every slash command, the manual has you covered.