✨ Feature
- Added a Skills & Prompt page where users can create, edit, enable, disable, and delete personal prompt presets.
- Added an admin Prompt Library for managing built-in platform prompts that users can view and reuse.
- Added
/prompt insertion in the chat composer and user-message editor, alongside the existing@model, file, and tool picker. - Added reusable model capability templates, allowing admins to apply protocol presets or copy capability configs from existing models.
- Added support for creating a model with multiple upstream sources, including protocol, status, priority, and weight settings.
- Added richer file preview support for images, audio, video, PDFs, Docx, spreadsheets, Markdown, code, and plain text.
- Added a Skills & Prompt entry to the main sidebar navigation.
- Added Prompt Preset APIs for both user-owned prompts and admin-managed built-in prompts.
⚡ Optimization
- Improved mention menu placement so
@and/menus open near the current caret position, including while editing previous user messages. - Improved prompt search and selection, with visible prompts loaded by keyword and grouped by custom vs built-in sources.
- Improved model capability editing with visual controls for default options, option controls, native tools, and image streaming.
- Improved file settings descriptions for upload limits, extraction, full-context injection, embeddings, semantic enhancement, and RAG.
- Unified file display logic for type detection, icons, sizes, timestamps, and preview handling.
- Improved subscription usage charts with cleaner rounded stacked bars.
- Hardened login and OAuth redirect path handling with shared local-path validation.
- Improved admin error messages through shared localized error resolution.
- Renamed the admin “Channels” area to “Upstreams” for clearer terminology.
- Moved shared preview, Markdown rendering, delete-file option, and loading reveal components into common modules for more consistent behavior.
🐛 Fixed
- Fixed incomplete SQLite unique-constraint detection so duplicate conflicts map to clearer errors.
- Fixed missing localized feedback when a conversation has no content suitable for automatic title generation.
- Fixed navigation search layout jitter caused by dynamic result-height calculations.
- Fixed overly low-level error messages in several admin billing, model, and bulk operation flows.
- Fixed OAuth callback logic being embedded directly in the page component, improving reuse and 2FA redirect handling.
- Fixed unclear file preview feedback for unreadable text or unsupported formats, now showing clearer preview/download guidance.