✨ Features
- Opt-in context relevance operation #12589
- Context window report and viewer #10462
- AIHubMix declarative provider #12997
- RouterPlex declarative provider #13068
- Lemonade provider #12920
- Collapse thinking by default with a setting to control it (desktop) #12660
🐛 Bug Fixes
- Replace retired Spark X2 with Spark X2.5 in iflytek_astron #12772
- Show current session ID in /status #12607
- Keep session load on its replay fast path when stopped (desktop) #13190
- Replay OpenAI Responses reasoning across tool turns #13222
- Route bare OpenAI GPT IDs to Mantle by ID shape (bedrock) #13211
- Use supports_vision from /model/info (litellm) #13239
- Honor Retry-After on 429s mapped outside handle_status #12986
- Classify typed context_length_exceeded errors as context overflow (openrouter) #13154
- Report failed manual compaction as an error (acp) #13099
- Fall back to default inference for Bedrock provider models without document block support #12932
- Bump zstd to 0.14.3 for RUSTSEC advisories #13162
- Restore Linux window icons (desktop) #13120
- Resolve variant suffixes like :free and :nitro to the base model (openrouter) #12979
- Use catalog_provider_id for vision lookup on custom providers #12993
- Start the agent only once after a fork (desktop) #13139
- Remove jsonwebtoken to avoid ignoring its cargo-deny advisories #13141
- Use recipe settings in scheduled runs (scheduler) #13138
- Use system trust for WebSockets (voice) #13075
- Stop telling the model a screenshot tool exists (computercontroller) #13279
🔧 Improvements
- Replace Agent and AgentManager with one StateMachineServices per process #12880
- Drop tool-specific tool call titles (desktop) #13107
- Remove ACP client-delegated developer tools #13144