Repository navigation
v0.8.1
Pre-release
Pre-release
🏞️ Highlights
Major features and improvements since v0.8.0
🤖 Expanded Model Support
Support for the latest AI models including Gemini 3, GPT-5.1, Grok 4, Claude Opus/Haiku 4.5, and Zhipu AI GLM family, with comprehensive pricing and context window configurations.
📎 Upload to Provider Support
Files can now be directly uploaded to and handled by supported providers, removing the need for intermediate OCR and other multimodal processing steps.
🖼️ Improved Artifact Management and Shareability
Artifacts have been improved with version control capabilities, better UI interactions and rendering support, and can now be viewed within shared conversations.
🤖 Agent Handoffs (Beta)
Agents can now be configured to transfer control of conversations to other specialist agents when specific expertise is needed.
⚙️ Other Notable Changes
- Langfuse Tracing support
- Helicone AI Gateway integration
- Bedrock Prompt Caching support
- Screens are now prevented from sleeping during response generation
- File names can now be used as context for Anthropic document uploads
- Distributed Leader Election with Redis for multi-server-instance coordination within cluster deployments
- Whether specific tool badges (file search, mcp servers, etc.) will be rendered in the chat input can now be configured via Model Specs
- Accessibility improvements across the entire app for better keyboard navigation, screen reader support, and accessibility standards compliance
- Helm Chart enhancements: custom deployment labels, annotations, init containers, ConfigMaps support, and additional RAG API environment variables
- MCP Registry System restructure with distributed caching, leader-follower coordination, timeout-protected server initialization, and user-scoped tool caching
https://www.librechat.ai/changelog/v0.8.1
Click to expand Release Notes
✨ Features
- 🪨 feat: Add Bedrock Prompt Caching Support by @dustinhealy in #8271
- 👑 feat: Add OIDC Claim-Based Admin Role Assignment by @jpsfs in #9170
- 🚉 feat: MCP Registry Individual Server Init (2) by @ruggishop in #9940
- 🤖 feat: Add Z.AI GLM Context Window & Pricing by @danny-avila in #9979
- 🔍 feat: Add Serper as Scraper Provider and Firecrawl Version Support by @danny-avila in #9984
- 📎 feat: Direct Provider Attachment Support for Multimodal Content by @danny-avila in #9994
- 🗂️ feat: Add Optional Group Field to ModelSpecs Configuration by @pnancarrow in #9996
- 📮 feat: Custom OAuth Headers Support for MCP Server Config by @ruggishop in #10014
- 📝 feat: Add Markdown Rendering Support for Artifacts by @sbruel in #10049
- 📖 feat: Word Wrapping for Text and Markdown Code Blocks by @leblancfg in #10055
- 🏷️ feat: Add Custom Deployment Labels and Annotations for Helm by @WhammyLeaf in #10076
- 📄 feat: Context Field for Anthropic Documents (PDF) by @danny-avila in #10148
- 🧮 feat: Enhance Model Pricing Coverage and Pattern Matching by @danny-avila in #10173
- 🤖 feat: Agent Handoffs (Routing) by @danny-avila in #10176
- 🌐 feat: Configurable Domain and Port for Vite Dev Server by @sbruel in #10180
- 👑 feat: Distributed Leader Election with Redis for Multi-instance Coordination by @nhtruong in #10189
- 🎛️ feat: Custom Environment Variable Support to RAG API Helm Chart by @PaulusTM in #10245
- 📛 feat: Chat Badges via Model Specs by @danny-avila in #10272
- 💡 feat: Improve reasoning (thinking) content display, copy-to-clipboard, and error handling by @berry-13 in #10278
- 🌉 feat: Integrate Helicone AI Gateway Provider by @juliettech13 in #10287
- 🪢 feat: Add Langfuse Tracing Support by @danny-avila in #10292
- 🎚️ feat: Reasoning Parameters for Custom Endpoints by @danny-avila in #10297
- ✨ v0.8.1-rc1 by @danny-avila in #10316
- ✨ feat: Artifact Management Enhancements, Version Control, and UI Refinements by @danny-avila in #10318
- 🔐 feat: Prioritize Provider ID Over Email for Social Login by @danny-avila in #10358
- 🌐 chore: Update tool type from
web_search_previewtoweb_searchfor OpenAI by @danny-avila in #10379 - 🖼️ feat: File Size and MIME Type Filtering at Agent level by @danny-avila in #10446
- 📜 feat: Configurable Debug Message Length for Logs by @danny-avila in #10447
- 🔍 feat: Anthropic/Google Web Search Support via
addParams/dropParamsby @danny-avila in #10456 - 🛝 feat: Default Params via Custom Params by @danny-avila in #10457
- 🔒 feat: Idempotency check for OAuth Flow Completion by @danny-avila in #10468
- 🤝 feat: View Artifacts in Shared Conversations by @berry-13 in #10477
- 🛡️ feat: Add Model Refusal Error Handling (Anthropic) by @danny-avila in #10478
- 🔍 feat:
DEBUG_MESSAGE_LENGTHEnvironment Variable (pt. 2) by @danny-avila in #10479 - 🤖 feat: GPT-5.1 by @danny-avila in #10491
- 🪣 feat: Init Containers and Custom ConfigMaps Support in Helm Chart by @adaptivegarage in #10525
- 👤 feat: Agent Avatar Removal and Decouple upload/reset from Agent Updates by @berry-13 in #10527
- 📨 feat: Pass Custom Headers to Model Discovery (
v1/models) by @Anthony-Jhoiro in #10564 - 🚩 feat: Add
--providerflag to create-user script by @ineiti in #10572 - 🔒 feat: Enhance Actions SSRF Protection with Comprehensive IP and Domain Validation by @danny-avila in #10583
- 🤖 feat: Gemini 3 Support by @danny-avila in #10584
- ☕ feat: Prevent Screen Sleep During Response Generation by @michnovka in #10597
- 🤖 feat: Claude Opus 4.5 Token Rates and Window Limits by @danny-avila in #10653
- 🍞 feat: Add Toasts for Successful Conversation Deletion by @dustinhealy in #10661
- ✨ v0.8.1-rc2 by @danny-avila in #10688
- 🤖 feat: Latest Grok Model Pricing & Context Rates by @danny-avila in #10727
- 🤖 feat: Tool Calling Support for DeepSeek V3.2 + OpenRouter Reasoning by @danny-avila in #10752
- 🛡️ feat: Add Middleware for JSON Parsing and Prompt Group Updates by @danny-avila in #10757
- 🖥️ feat: Add Proxy Support for Tavily API Tool by @danny-avila in #10770
- ⏱️ feat: Make User Connection Idle Timeout Configurable by @abhishekag03 in #10866
- 🛜 feat: Support Legacy OAuth Servers without
.well-knownMetadata by @danny-avila in #10917
🐛 Bug Fixes
- 🔧 fix: Remove Bedrock Config Transform introduced in #9931 by @danny-avila in #10628
- 🧱 fix: DALL-E Proxy Bypass by @alfo-dev in #9971
- 📦 chore: fix
packages/apipeer dependencies by @danny-avila in #9973 - 🔃 refactor: Decouple Effects from AppService, move to
data-schemasby @danny-avila in #9974 - ♿️ fix: Accessibility, UI consistency, dialog & avatar refactors by @berry-13 in #9975
- ⚖️ fix: Add Configurable File Size Cap for Conversation Imports by @MarcAmick in #10012
- 🔗 fix: Add branch-specific shared links (targetMessageId) by @berry-13 in #10016
- 👨🔧 fix: Direct Provider Attachment Support for Agents by @dustinhealy in #10035
- 👆🏼 fix: Agent Support for Upload to Provider in DragDropModal by @dustinhealy in #10063
- 🕸️ fix: Upload to Provider Filetype Filtering for DragDropModal by @dustinhealy in #10064
- 🖼️ fix: Extract File Context & Persist Attachments by @danny-avila in #10069
- 🏷️ chore: update OpenAI models list in
.env.exampleby @marlonka in #10085 - 🛠️ chore: Add
@radix-ui/react-tooltipto Artifact Dependencies by @wipash in #10112 - 🧭 fix: Add Base Path Support for Login/Register and Image Paths by @catmeme in #10116
- 📱 fix: Improve Mobile Chat Focus Detection and Navigation by @danny-avila in #10125
- 🩹 fix: Wrap Attempt to Reconnect OAuth MCP Servers by @ruggishop in #10172
- 👫 fix: Entra ID group retrieval to use
getMemberGroupsand add pagination by @maxesse in #10199 - 🏷️ fix: Add user ID to MCP tools cache keys by @ruggishop in #10201
- 🛠️ fix: Agent Tools Modal on First-Time Agent Creation by @sbruel in #10234
- 🧼 fix: Sanitize MCP Server Selection Against Config by @ruggishop in #10243
- ♿ fix: Address Accessibility Issues by @dustinhealy in #10260
- 🔃 refactor: Clear MCP only on Model Spec Selection without MCP Servers by @danny-avila in #10273
- ✂️ fix: Trim Reasoning Tags from Titles and Delete Button Visibility by @poornapragnyah in #10285
- 🔗 fix: Correct Azure Base URL Construction for Responses API by @peeeteeer in #10289
- 🎚️ fix: Default Max Output Tokens for Claude 4+ Models by @danny-avila in #10293
- 🎨 fix: Update artifacts Tailwind to official CDN by @wipash in #10301
- 🦙 fix: Ollama Custom Headers by @danny-avila in #10314
- 📎 fix: Document Uploads for Custom Endpoints by @maxesse in #10336
- 🎙️ fix: Azure OpenAI Speech-to-Text 400 Bad Request Error by @ConstantTime in #10355
- 🪞 fix: Prevent Revoked Blob URLs in Uploaded Images (FileRow) by @danny-avila in #10361
- 🗑️ fix: Delete All Shared Link Deletion on Clear Chats by @danny-avila in #10396
- 📂 refactor: Cleanup File Filtering Logic, Improve Validation by @danny-avila in #10414
- 📞 fix: Model End Callback and Streamline Client Cleanup by @danny-avila in #10438
- 🔐 fix: persist new MCP oauth tokens properly by @wipash in #10439
- 🧰 fix: Unprocessed Tool Calls Edge Case by @danny-avila in #10440
- 🔢 fix: Unescape LaTeX Numbers in Artifact Content Edit by @danny-avila in #10476
- 🔧 fix: Await MCP Instructions and Filter Malformed Tool Calls by @danny-avila in #10485
- 🔤 fix: Replace Translation Keys with Localized Text by @mdutkin in #10486
- 🎨 fix: Correct Read-Only State Logic in Code Editor by @berry-13 in #10508
- 📼 fix: Remove Legacy File Upload for Non-agents by @danny-avila in #10517
- 🐛 fix: Redis Cluster Bug + 🧪 Enhance Test Coverage by @nhtruong in #10518
- 🗑️ fix: Remove All User Metadata on Deletion by @WhammyLeaf in #10534
- 🚪 fix: ArtifactsPanel and SidePanel Rendering and Collapsing Behavior by @danny-avila in #10537
- ➿ fix:
createFileSearchToolto return tuples for error messages by @danny-avila in #10547 - ⏳ fix: Async Model End Events, Await Tool Call and Dispatch Handling by @danny-avila in #10552
- ⏱️ fix: Increase RAG API Text Parsing Timeout by @rossbg in #10562
- 🔧 fix: Catch Errors in ToolEndHandler and Pass Logger by @danny-avila in #10565
- 🐛 fix: Error Handling in MCP Tool List Controller by @danny-avila in #10570
- 🛡️ chore: Enhance Agents Error Handling via
@librechat/agents@v3.0.25by @danny-avila in #10577 - 📢 fix: Resolved Screen Reader Issues with
TooltipAnchorby @dlew in #10580 - 📷 fix: Use 'media' type for Google multimodal attachments by @dustinhealy in #10586
- 🔒 fix: Disable Redis leader-only mode for shared app and user servers by @nhtruong in #10605
- 🕸️ fix: Minor Type Issues & Anthropic Web Search by @danny-avila in #10618
- 🛰️ fix: MCP SSE & Ping Error Handling by @peeeteeer in #10635
- 🔗 fix: Resolve Bedrock Tool Call Streaming "Content Type Mismatch" by @danny-avila in #10647
- 📢 fix: Remove Side Panel Elements from Screen Reader when Hidden by @dlew in #10648
- 🏷️ fix: Editing Bookmark Descriptions by @dustinhealy in #10685
- 🦙 fix: Ollama Provider Handling by @danny-avila in #10711
- 🖼️ fix: Resolve stuck pixel animation during image generation by @lemonTree43 in #10716
- 🔨 fix: Update
expiresAttimestamp for tokens by @lemonTree43 in #10740 - 🛡️ fix: Improve Error Handling and Null Safety in SSE Event Processing by @danny-avila in #10751
- 🔐 fix: Secure
iconURLHandling by @danny-avila in #10753 - 🔐 refactor: Improve MCP User Variable Description Rendering by @danny-avila in #10769
- 🔑 fix: Gemini Custom Endpoint Auth. for OAI-Compatible API by @danny-avila in #10806
- 🔊 fix: Missing Proxy config in TTS and STT Services by @alfo-dev in #10852
- 🔊 fix: Validate language format for OpenAI STT model by @danny-avila in #10875
- 🔧 fix: Error handling in Firebase and Local file deletion by @danny-avila in #10894
📦 Dependencies & Chores
- 🧹 chore: Cleanup Logger and Utility Imports by @danny-avila in #9935
- ⚙️ chore: Resolve Build Warning, Package Cleanup, Robust Temp Chat Time by @danny-avila in #9962
- � chore: Update Gemini 2.5 Flash Lite Input Pricing by @KarthiDreamr in #10062
- 📦 chore: Bump
@librechat/agentsfrom v2.4.86 to v3.0.50 by @danny-avila in #10216, #10704, #10775, #10874 - 📦 chore: update
viteto v6.4.1 and@playwright/testto v1.56.1 by @danny-avila in #10227 - 📦 chore: Remove
@langchain/community& Related Legacy Code by @danny-avila in #10375 - 📦 chore: Bump
@modelcontextprotocol/sdkto v1.21.0 by @danny-avila in #10469 - 📦 chore: Jest & Eslint Package Updates by @danny-avila in #10536
- 📦 chore: Update Packages for Security & Remove Unnecessary by @danny-avila in #10620
- 🪵 chore: Clean up Debug Logs in OpenID Token Extraction by @danny-avila in #10687
- 📦 chore: Bump
nodemailerfrom v7.0.9 to v7.0.11 by @danny-avila in #10045, #10762 - 📦 chore: Bump
mdast-util-to-hastto v13.2.1 by @danny-avila in #10761 - 🍞 chore: Update
bun.lock& Related Scripts by @danny-avila in #10824 - 📦 chore: Bump Local Package Versions by @danny-avila in #10883
- 📦 chore: Bump
jwsdependencies vianpm audit fixby @danny-avila in #10918
🔧 Refactoring
- 🔄 refactor: Migrate Cache Logic to TypeScript by @nhtruong in #9771
- 🫴 refactor: Broader Support for GPT-OSS Naming by @danny-avila in #9978
- ⚡ refactor: Latest Message Tracking with Robust Text Key Generation by @danny-avila in #10059
- 📡 refactor: Flush Redis Cache Script by @danny-avila in #10087
- 🪂 refactor: OCR Fallback for "Upload as Text" File Process by @danny-avila in #10126
- ♻️ refactor: Replace
fontSizeRecoil atom with Jotai by @berry-13 in #10171 - 🔄 refactor: MCP Registry System with Distributed Caching by @nhtruong in #10191
- ♻️ refactor: Message Cache Clearing Logic into Reusable Helper by @danny-avila in #10226
- 🎪 refactor: Allow Last Model Spec Selection without Prioritizing by @danny-avila in #10258
- 🔄 refactor: OAI Image Edit Proxy, Speech Settings Handling, Import Query Data Usage by @danny-avila in #10281
- 📫 refactor: OpenID Email Claim Fallback by @danny-avila in #10296
- 🔄 refactor: Max tokens handling in Agent Initialization by @danny-avila in #10299
- 🧠 refactor: Improve Reasoning Component Structure and UX by @danny-avila in #10320
- ⚗️ refactor: Provider File Validation with Configurable Size Limits by @danny-avila in #10405
- 🤖 refactor: Improve Agent Handoff Context Tracking by @danny-avila in #10553
- 🔧 refactor: Update Avatar component to improve file selection handling by @usnavy13 in #10555
- 🔬 refactor: Prevent Automatic MCP Server UI Deselection by @danny-avila in #10588
- 📑 refactor: Skip H1 Rendering for Falsy Header Values in
AuthLayoutby @NalinNair in #10606 - 🪂 refactor: MCP Server Init Fallback by @danny-avila in #10608
- 📄 refactor: Add Provider Fallback for Media Encoding using Client Endpoint by @ZihaoZhou in #10656
- 🪙 refactor: Remove Use of
CHECK_BALANCEin Balance Scripts by @ineiti in #10702 - ⬇️ refactor: Improve Conversation JSON Export by @danny-avila in #10726
- 📬 refactor: Normalize Email Handling in User Methods by @danny-avila in #10743
- 📐 refactor: Exclude Params from OAI Reasoning Models by @danny-avila in #10745
- 🧊 refactor:
iconURLHandling in Submission Flow by @danny-avila in #10772 - ⚡ refactor: Optimize & Standardize Tokenizer Usage by @danny-avila in #10777
- 🪟 refactor: Portal Control for Shared View Settings and Google Balance Support by @danny-avila in #10786
- 📦 refactor: Request Message Sanitization for Smaller Final Response by @danny-avila in #10792
- 📑 refactor: File Search Citations Dual-Format Unicode Handling by @danny-avila in #10888
- 📂 refactor: File Type Inference for Frontend File Validation by @danny-avila in #10807
- 🖇️ refactor: Improve prompt for Better Citation Formatting by @mludvig in #10858
🌍 Internationalization
- 🌍 i18n: Update translation.json with latest translations by @github-actions[bot] in #9932, #9995, #10070, #10175, #10229, #10259, #10274, #10282, #10298, #10315, #10323, #10370, #10380, #10397, #10448, #10458, #10481, #10519, #10622, #10876
📚 Documentation
🎨 UI/UX
- ➕ style: Update "Copy Agent" Icon for Clearer Action by @berry-13 in #10651
- 🪄 style: Improved Input Collapse UI by @dustinhealy in #10659
New Contributors
- @alfo-dev made their first contribution in #9971
- @KarthiDreamr made their first contribution in #10062
- @pnancarrow made their first contribution in #9996
- @leblancfg made their first contribution in #10055
- @PaulusTM made their first contribution in #10245
- @poornapragnyah made their first contribution in #10285
- @juliettech13 made their first contribution in #10287
- @mdutkin made their first contribution in #10486
- @adaptivegarage made their first contribution in #10525
- @Anthony-Jhoiro made their first contribution in #10564
- @dlew made their first contribution in #10580
- @NalinNair made their first contribution in #10606
- @michnovka made their first contribution in #10597
- @catmeme made their first contribution in #10116
- @rossbg made their first contribution in #10562
- @ZihaoZhou made their first contribution in #10656
- @lemonTree43 made their first contribution in #10716
- @mludvig made their first contribution in #10858
- @abhishekag03 made their first contribution in #10866
Full Changelog: v0.8.0...v0.8.1