Repository navigation
v1.1.0 — Claude Code 2.1.296 compatibility + UTF-8 streaming fix
Fix (critical)
Task planning tools were silently disabled after updating to Claude Code 2.1.296. Since 2.1.268, Claude Code hides TaskCreate/TaskUpdate/TaskList/TodoWrite from any model name it doesn't recognize as a known Claude model — our gateway models are all gemini-*, so they fell outside the whitelist and lost task planning on update, with no error or warning.
Fix: CLAUDE_CODE_ENABLE_TODO_TOOLS=1, the documented escape hatch, added to both launchers. Verified live: the tools are back.
Also in this release
- Fixed UTF-8 corruption at SSE stream boundaries. The proxy decoded each raw
read(8192)chunk independently; a multi-byte character (Cyrillic, etc.) landing on a chunk boundary got corrupted into replacement characters (visible as garbled or "eaten" text in responses). Fixed with an incremental UTF-8 decoder. Verified both with a forced mid-character split and a live 52KB Cyrillic stream — zero corruption. CLAUDE_CODE_GATEWAY_HINT_HEADERS=1enabled, plus proxy logging ofagent-type/request-classheaders and athinking=field in the SSE-done log line — subagent requests are now distinguishable from the parent session in the proxy log. Verified live: subagents correctly receive and apply their own explicit/effort(medium vs high), independent of the parent session.ultracodeeffort value mapped to the same capped budget ashigh/xhigh/max.
Upgrading
python setup-agent.pySafe to re-run on an existing install.
Full Changelog: v1.0.1...v1.1.0