KlaatCode V2.2.3
What's New in v2.2.3
🐛 Bug Fixes
-
Zero-arg tool calls no longer silently dropped — Parameterless tools (e.g.
list_allowed_directories,todo_read) were previously skipped by the text-tool parser, causing raw XML to leak into responses and the tool to never execute. Fixed in both Klaatu server-side (parse_text_tools.py) and CLI. (4b901f6) -
Stray XML artifacts stripped from AI output — New client-side sanitizer (
text-tool-artifacts.ts) catches and removes leftover<function=...>,</tool_call>, and<parameter>XML from displayed text — covers edge cases from custom third-party models and interrupted streams.
✨ Improvements
-
Cleaner
/whyoutput — Shows short model name (gpt-oss-20bnotaccounts/fireworks/models/gpt-oss-20b) and human-readable reason (Editor Nanonoteditor_nano). -
Comprehensive CLI documentation — Rewrote Getting Started, CLI Reference, Commands & Shortcuts, and Configuration docs with accurate commands, real examples, and full theme/config coverage.
-
Public repo sync tooling —
sync-to-public.shandpull-from-public.shfor bidirectional syncing with the open-source repo, with working-tree safety checks and--dirtyescape hatch. (6c5e090)
🧪 Tests
- 8 new Python test cases for
parse_text_tools(zero-arg, mangled names, multiple blocks, mixed calls) - 9 new TypeScript tests for the CLI display-layer XML sanitizer
Install / Upgrade
# npm
npm install -g klaatcode
# Homebrew
brew upgrade klaatcode
# curl (macOS/Linux)
curl -fsSL https://klaatai.com/api/install | bash
# Windows (PowerShell)
irm https://klaatai.com/api/install-windows | iex
# From inside the CLI
klaatcode upgrade