✨ Feature
- Added conversation screenshots with full-conversation capture, selected-message capture, preview, copy, and download.
- Added a chat side preview rail for quickly navigating long conversations and previewing nearby Q&A snippets.
- Added admin export for all conversations, messages, and metadata as JSONL.
- Added log cleanup by log type and cutoff date across audit, auth, usage, order, conversation event, and system logs.
- Added model circuit-breaker and source-level governance with failure thresholds, cooldown duration, sliding windows, and source-level scope.
- Added clearer model and upstream availability states, including disabled models, disabled upstreams, disabled upstream models, missing sources, and circuit-open status.
- Added MCP display order management for servers and tools in the conversation picker.
- Added default MCP tools, allowing a single tool or an entire MCP server to be enabled by default for new conversations.
- Added customizable MCP Tool and Skills prompts for admins.
- Added per-conversation memory for selected Skills and MCP tools.
- Added OpenRouter Chat Completions support with updated routing and model option handling.
- Enhanced Gemini tool calling with thought signatures and server-side tool invocation support.
⚡ Optimization
- Improved conversation rendering with stronger Markdown, inline formatting, math, HTML styling, color validation, and URL normalization.
- Improved model picker cards with clearer model details, pricing, free-model labels, and native tool capability display.
- Improved model configuration panels for native tools, reasoning/thinking options, web search, and related controls.
- Improved chat scrolling with a message scroller, position rail, and fade effects for long conversations.
- Improved attachment and message layouts for long content.
- Improved thinking and tool-call displays by separating model reasoning, MCP tool calls, and tool results.
- Improved tool-call flow with better persistence, output handling, tracing, and final display.
- Improved screenshot generation with long-conversation limits, cleaner message metadata, and branding in captures.
- Improved announcement loading and display states with an entry point, empty state, and failure messaging.
- Improved localized timestamp display across chat messages and navigation search.
- Improved admin logs UI with clearer log types, impact descriptions, and high-risk operation warnings.
- Improved model management and upstream source pages with clearer source status, protocol, priority, weight, and circuit-breaker actions.
- Improved Prompt / Skill table rendering stability.
- Improved AuthGuard token handling for more reliable session state.
🐛 Fixed
- Fixed incorrect first-login initial username requirement detection.
- Fixed unstable Turnstile validation behavior during registration.
- Fixed conversation title auto-generation across locales.
- Fixed inconsistent conversation title localization.
- Fixed mobile navigation when starting a new chat from a shared conversation page.
- Fixed Prompt / Skill list rendering issues.
- Fixed model table state typing issues that could affect display or builds.
- Fixed Docker builds missing the default
FRONTEND_DIST_DIR. - Fixed inconsistent submenu styling in dropdown menus.
- Fixed performance and allocation issues when deduplicating tool output strings.