v0.2.1
Patch Changes
Added
Memory follow-ups: feed recent tool usage into the recall selector as an extra relevance signal, frame extraction's "new messages" window from a per-session cursor (so durable facts mentioned during gate-skipped turns are still reconsidered), and drain any in-flight memory extraction on /exit (bounded) so a save isn't dropped at shutdown.
Fixed
Tab mode cycle so it reaches AUTO: previously Tab only toggled between BUILD and PLAN, making AUTO selectable solely via the /agents dialog. Tab now cycles BUILD → PLAN → AUTO → BUILD.
Removed
Drop two unused dependencies from @knightcodeai/cli: pretty-ms (never imported) and hono (the toast provider's useMemo now imports from react instead of hono/jsx).
-
23a8811: Refresh the supported model catalog: add newer free and paid OpenRouter models, repoint aliases to their successors, change the default model, and drop discontinued entries.
Added
Refresh the supported model catalog with new OpenRouter models:
nvidia/nemotron-3-ultra-550b-a55b:free(Nemotron 3 Ultra 550B),nex-agi/nex-n2-pro:free(Nex N2 Pro),qwen/qwen3.7-plus(Qwen3.7 Plus),z-ai/glm-5.2(GLM 5.2), andmoonshotai/kimi-k2.7-code(Kimi K2.7 Code). Newqwenandnexmodel aliases accompany them.Changed
Default model is now
nvidia/nemotron-3-ultra-550b-a55b:free(wasz-ai/glm-4.5-air:free). Theglm,kimi, andnemotronaliases were repointed to their successor models (z-ai/glm-5.2,moonshotai/kimi-k2.7-code,nvidia/nemotron-3-ultra-550b-a55b:free), and the onboarding shortlist was updated to match the new catalog.Removed
Drop discontinued/older version models:
z-ai/glm-4.5-air:free,deepseek/deepseek-v4-flash:free,z-ai/glm-5.1,moonshotai/kimi-k2.6, andnvidia/nemotron-3-super-120b-a12b:free, along with theirglm_airanddeepseekaliases. -
b529674: ### Added
Accurate per-session cost: enable OpenRouter usage accounting (
usage.include) so each request returns its actual cost. The in-app/cost"Session cost" now sums real costs (correct for free/cached/uncurated models) and only falls back to the local price table when a message has no reported cost.Session grouping on OpenRouter: send the session id as the
x-session-idheader so a session's requests are grouped in OpenRouter's logs (Sessions tab) and routed stickily to the same provider for better prompt-cache hits. Requests are also tagged with the session id via theuserfield for per-request "Client User ID" attribution.Changed
OpenRouter app attribution:
HTTP-Referer→https://knightcode.raghavseth.inandX-Title→KnightCode(was "KnightCode CLI").