All changelog entries
Feature0.9.1KodaReleaseDebuggerSubagents

Koda 0.9.1 — first public release

August 3, 2026

Koda is out of beta. Until today npm i -g @openadapter/koda gave you 1.0.0-beta.13latest had been frozen there for months while the real work happened on @beta. This release moves latest onto current code:

npm i -g @openadapter/koda

Debugging — new

Koda speaks the Debug Adapter Protocol. It can set a breakpoint, launch or attach, then read the real stack and actual variable values at the moment things broke — step through, and evaluate expressions in the paused frame.

It discovers 14 adapters on your PATH, with an xcrun fallback for the lldb-dap Xcode hides. It registers the tool only when an adapter genuinely exists on your machine, and never loads the engine until you actually debug.

This is the difference between reading a stack trace and watching the value change.

Delegation — new

A task tool with context-isolated subagentsgeneral, explore, or your own in .koda/agents/*.md. They run in parallel and only their results come back, so the main context stays clean. A live line under the input shows how many are working and for how long.

Skills — new

koda skill search / add / remove / list / update, against the open skills.sh registry.

Editing — new

hashline_edit (vendored from oh-my-pi, MIT). Reads carry a content tag and line numbers; edits are line-anchored operations that never echo old text back. A stale tag fails closed with a re-read instruction rather than quietly corrupting the file.

Choose it in /settings → Edit tool, which enforces one or the other — running both just hands the model a coin to flip.

Type errors in the loop

After an edit, the errors your change introduced — including the call sites you broke somewhere else — come back in the tool result, so the model fixes them in the same turn. TypeScript needs no install; Python, Go, Rust, Java and C/C++ work through their standard language servers.

Koda finishes what it starts

The big one if you have ever watched an agent stop halfway.

There is now a completion gate on every model tier, not just the ones running the overseer. The old check only fired when the model had made a todo list — which happened in 13.6% of multi-step tasks, so on a cheap model nothing was checking at all. The new gate costs zero extra model calls.

Todos can also carry a verify command, and marking one done is only a claim until Koda runs that command itself and sees it exit 0.

Fullscreen mode

KODA_FULLSCREEN=1 gives a live sidebar: session, context, model, LSP status, and the todo plan marked [ ] / [x] / [✓] — that third mark meaning Koda verified it, not that the model said so.

Plus 15 themes on a four-role colour system. The old palette used accent 102 times against text's 16, so everything read as important and therefore nothing did.

Fixed

  • Theme changes apply instantly instead of needing a restart
  • The sidebar scrolls
  • A language server's stderr can no longer shred the fullscreen frame
  • A deleted working directory explains itself instead of throwing uv_cwd
  • Stray ... on fullscreen rows
  • Plan mode records a plan the gates can actually check
  • The overseer toggle stops claiming to be on when it is suppressed
  • Retried timeouts stay quiet
  • A self-update rule that could have pulled beta users backwards onto latest