v2.2
ictnlp/LLaMA-Omniv2.2Jul 2, 2026by github-actions[bot]
AI Summary
A major update improving onboarding UX with a deferred model setup gate and unified provider selection. Enhances the chat composer with Markdown code blocks and stabilizes LiteLLM provider fallback.
Key Highlights
- Deferred first-send model gate setup
- Unified provider selection for Cloud, Account, and Local
- Markdown-backed code blocks in Chat Composer
- Stabilized LiteLLM provider fallback
Breaking Changes
- Utility model selection is now explicit and no longer silently synced to the main model
- OAuth account connections no longer auto-populate Main and Utility models
- Default main model updated to anthropic/claude-sonnet-5
New Features
- Deferred first-send model gate
- Unified provider selection
- Markdown-backed code blocks
- File browser dropdown fix
- Settings secrets masked text inputs
Full Release Notes
## Release Notes ### Onboarding & Model Setup - Introduced a deferred first-send model gate: missing-model setup now happens in-thread instead of on the welcome screen, preserving the pending prompt across refresh and auto-dispatching once a model is configured. - Unified the onboarding provider selection into a single step covering Cloud, Account, and Local choices, replacing the previous separate illustrated paths. - Utility model selection is now explicit — no longer silently synced to the main model — and defaults to each provider's utility model when available. - OAuth account connections no longer auto-populate Main and Utility models; users are routed to model configuration to make an explicit choice. - Fixed stale OAuth model provider appearing selected when the stored model slot points at a non-connected provider. - Updated default main model to `anthropic/claude-sonnet-5` across bundled config, Balance preset, and onboarding defaults. - Refreshed Codex OAuth defaults: removed stale model metadata so connected accounts use upstream `/models` responses instead of the retired `gpt-5.2-codex` default; fallback model updated to `gpt-5.5`. ### LLM Transport & Streaming - Stabilized LiteLLM provider fallback: Responses endpoint failures now fall back to Chat Completions before any output is emitted, including when the Responses mock encounters real SSE streams. - Streamed Chat Completions tool-call deltas are now preserved as structured function-call items, so fallback providers can still drive tools. - Fixed streamed parallel tool extraction so nested `tool_calls` objects no longer prematurely end the stream before the parallel wrapper closes. ### Chat & Memory - Pruned deleted saved chats from sidebar state so stale in-memory contexts disappear after their chat files are removed. - Normalized `memory_load` threshold and limit values from model calls before vector search, preventing numeric strings from reaching FAISS unchanged. - Users are now notified when automatic chat renaming cannot reach the Utility Model, while the rename task remains best-effort. ### Web UI - Chat composer now supports Markdown-backed code blocks: typing a triple-backtick fence and pressing Enter creates a visual code block, serialized back to fenced Markdown on send. - File browser action menus now render outside the scroll container with fixed positioning, fixing dropdown clipping. - Message action button chrome is now non-selectable so copy/paste captures message text without toolbar labels. - Settings secrets render as masked text inputs instead of browser password fields, avoiding password-manager prompts. - What's New cards are disabled until new content is added; manual access remains available with an empty state. ### Documentation - Refreshed onboarding screenshots and first-run docs for the new welcome screen, in-chat model gate, and provider paths. - Documented Docker host-gateway addressing for local model servers where container localhost does not reach host loopback. - Clarified that the memory plugin is optional and removed memory-plugin assumptions from non-plugin documentation. - Updated A0 Launcher download links to v1.1.