Conversation
# Conflicts: # .gitignore # Dockerfile.multi # README.md # package-lock.json
…/pinned-chats # Conflicts: # api/models/Conversation.js # client/src/components/Conversations/Conversations.tsx # client/src/components/Conversations/Convo.tsx # client/src/components/Conversations/ConvoOptions/ConvoOptions.tsx # client/src/data-provider/mutations.ts # packages/data-provider/src/api-endpoints.ts # packages/data-provider/src/data-service.ts
🚨 Unused NPM Packages DetectedThe following unused dependencies were found: 📂 Root
|
| const buttonText = isServerInitializing | ||
| ? localize('com_ui_loading') | ||
| : isReinit | ||
| ? localize('com_ui_reinitialize') | ||
| : requiresOAuth | ||
| ? localize('com_ui_authenticate') | ||
| : localize('com_ui_mcp_initialize'); |
Check warning
Code scanning / ESLint
Disallow nested ternary expressions Warning
| : isReinit | ||
| ? localize('com_ui_reinitialize') | ||
| : requiresOAuth | ||
| ? localize('com_ui_authenticate') | ||
| : localize('com_ui_mcp_initialize'); |
Check warning
Code scanning / ESLint
Disallow nested ternary expressions Warning
PR Reviewer Guide 🔍Here are some key observations to aid the review process:
|
PR Code Suggestions ✨Explore these optional code suggestions:
|
||||||||||||||||||||||
0a8419e to
772fa5a
Compare
PR Type
Enhancement, Tests
Description
• Pinned Conversations Feature: Added comprehensive support for pinning and reordering conversations with dedicated UI components and state management
• MCP (Model Context Protocol) Enhancements: Significantly improved MCP server management with OAuth authentication, connection handling, and comprehensive test coverage
• Theme System Implementation: Added complete theming infrastructure with dark/light themes, RGB color definitions, and theme application utilities
• Test Coverage Expansion: Added extensive test suites for MCP functionality, access middleware, tool formatting, memory agents, and OpenAI configurations
• Configuration Schema Updates: Enhanced endpoint configurations with new parameters like
verbosity,web_search, SearXNG support, and file search capabilities• Code Quality Improvements: Refactored various hooks and utilities for better state management, removed deprecated components, and improved error handling
• Internationalization Setup: Added comprehensive i18n configuration supporting 26 languages with proper fallback strategies
• Memory Agent Enhancements: Improved memory functionality with overflow handling and GPT-5+ model support
Diagram Walkthrough
File Walkthrough
13 files
zod.spec.ts
Enhanced MCP Zod schema tests with ref resolutionpackages/api/src/mcp/zod.spec.ts
• Updated imports to use
convertWithResolvedRefsinstead ofconvertJsonSchemaToZodthroughout test file• Added comprehensive
tests for
$refresolution functionality withresolveJsonSchemaRefs•
Added tests for handling bare object schemas as passthrough for
dynamic properties
• Added tests for
additionalPropertieswithanyOf/oneOfandallowEmptyObjectscenariosweb.spec.ts
Updated web search tests with new imports and SearXNG supportpackages/api/src/web/web.spec.ts
• Updated import paths to use relative imports and
librechat-data-provider• Added
searxngInstanceUrlandsearxngApiKeyfields to all test configurations
• Fixed TypeScript type annotations
for
authFields.forEachcallback parameters• Added comprehensive tests
for
firecrawlOptionsproperties and timeout handlingaccess.spec.ts
Added comprehensive access middleware test suitepackages/api/src/middleware/access.spec.ts
• Added comprehensive test suite for access control middleware
functions
• Tests
checkAccess,generateCheckAccess, andskipAgentCheckfunctions
• Covers permission validation, role-based access, and
real-world usage patterns
• Includes error handling and edge case
scenarios for access control
format.spec.ts
Added comprehensive tool formatting test suitepackages/api/src/tools/format.spec.ts
• Added comprehensive test suite for tool formatting utility functions
• Tests
filterUniquePlugins,checkPluginAuth,convertMCPToolsToPlugins, andgetToolkitKey• Covers plugin
deduplication, authentication validation, and MCP tool conversion
•
Includes edge cases and error handling for tool formatting operations
mcp.spec.ts
Enhanced MCP tests with HTTP type and GitHub server supportpackages/api/src/mcp/mcp.spec.ts
• Added tests for "http" type alias support in
StreamableHTTPOptionsSchema• Added tests for processing
customUserVarsin args field and headers• Added GitHub MCP server
configuration tests with PAT_TOKEN placeholder handling
• Enhanced
test coverage for HTTP-based MCP server configurations
memory.test.ts
Add comprehensive memory agent test suitepackages/api/src/agents/tests/memory.test.ts
• Added comprehensive test suite for memory agent functionality
•
Tests memory tool creation with overflow handling and token limits
•
Tests GPT-5+ model handling in processMemory function with temperature
removal
• Tests various model formats and parameter transformations
llm.spec.ts
Add comprehensive OpenAI LLM configuration test suitepackages/api/src/endpoints/openai/llm.spec.ts
• Added comprehensive test suite for
getOpenAIConfigfunction• Tests
model options, parameter separation, reasoning params, and Azure
configuration
• Tests GPT-5+ model handling with token parameter
transformations
• Tests verbosity parameter handling and various edge
cases
crud.spec.ts
Add Mistral file deletion and cleanup testspackages/api/src/files/mistral/crud.spec.ts
• Added
deleteMistralFilefunction tests with error handling• Added
comprehensive file cleanup tests for OCR processing
• Tests cleanup
behavior on success, failure, and error scenarios
• Tests graceful
handling of deletion errors without throwing
content.spec.ts
Add content formatting test suitepackages/api/src/format/content.spec.ts
• Added test suite for
formatContentStringsfunction• Tests
conversion of message content arrays to strings for different message
types
• Tests handling of mixed content types and edge cases
• Tests
real-world scenarios with text and image content
key.test.ts
Add service key loading test suitepackages/api/src/utils/key.test.ts
• Added comprehensive test suite for
loadServiceKeyfunction• Tests
JSON parsing, file loading, URL fetching, and base64 decoding
• Tests
private key formatting and escaped newline handling
• Tests error
scenarios and edge cases
handler.test.ts
Add MCP OAuth handler configuration testspackages/api/src/mcp/oauth/handler.test.ts
• Adds comprehensive test suite for MCP OAuth handler configuration
•
Tests custom OAuth metadata fields like
grant_types_supported,token_endpoint_auth_methods_supported• Validates default values and
custom configurations for OAuth parameters
auth.test.ts
Add MCP authentication mapping testspackages/api/src/mcp/auth.test.ts
• Tests MCP authentication mapping functionality with various server
name formats
• Validates handling of special characters, spaces, and
Unicode in server names
• Tests edge cases like empty tools arrays and
database error handling
convos.spec.ts
Add pinned conversation grouping testsclient/src/utils/convos.spec.ts
• Adds comprehensive tests for pinned conversation handling in
groupConversationsByDate• Tests pinned conversation sorting by
pinnedOrderand proper grouping• Validates edge cases with no pinned
conversations
33 files
useMCPServerManager.ts
Added comprehensive MCP server management hookclient/src/hooks/MCP/useMCPServerManager.ts
• Created comprehensive hook for managing MCP server connections and
authentication
• Implements OAuth flow handling with polling,
cancellation, and timeout management
• Provides server state
management, configuration dialog handling, and batch operations
•
Includes connection status monitoring and user plugin authentication
management
manager.ts
Refactor MCP manager initialization and OAuth handlingpackages/api/src/mcp/manager.ts
• Refactored
initializeMCPmethod to extract single serverinitialization logic
• Added tracking for OAuth servers that require
authentication at startup
• Modified OAuth handling to skip
authentication during startup for better reliability
• Added utility
methods for getting user connections and OAuth servers
connection.ts
Improve MCP connection verification and error handlingpackages/api/src/mcp/connection.ts
• Improved connection verification logic with fallback methods
•
Enhanced
isConnectedmethod to handle servers without ping support•
Removed error emission and cache invalidation logic
• Fixed transport
type detection for HTTP connections
memory.ts
Enhance memory agent with overflow handling and GPT-5+ supportpackages/api/src/agents/memory.ts
• Enhanced memory tool with token overflow detection and error
artifacts
• Added GPT-5+ model parameter handling with temperature
removal
• Updated memory instructions to be more restrictive about
when to store memories
• Improved error handling and artifact
generation for memory operations
useEventHandlers.ts
Improve SSE event handling and conversation state managementclient/src/hooks/SSE/useEventHandlers.ts
• Enhanced error handling for cancelled streams and blank page
scenarios
• Improved conversation state management and navigation
logic
• Added draft saving for interrupted conversations
• Fixed agent
template application timing and parameters
llm.ts
Enhance OpenAI LLM configuration with GPT-5+ and tool supportpackages/api/src/endpoints/openai/llm.ts
• Added known OpenAI parameters set for better parameter separation
•
Enhanced GPT-5+ model handling with token parameter transformations
•
Added web search tool support and verbosity parameter handling
•
Improved Azure configuration with Responses API support
convos.ts
Add pinned conversations support to conversation groupingclient/src/utils/convos.ts
• Added pinned conversations grouping and sorting functionality
•
Enhanced
groupConversationsByDateto handle pinned conversationsseparately
• Added pinned conversations at the top with custom
ordering
• Maintained existing date-based grouping for unpinned
conversations
index.ts
Add comprehensive theme type definitionspackages/client/src/theme/types/index.ts
• Defines comprehensive theme type interfaces for RGB color values,
CSS variables, and theme colors
• Includes interfaces for
IThemeRGB,IThemeVariables,IThemeColors, andTheme• Covers text, surface,
border, brand, and utility color definitions
zod.ts
Enhance JSON schema to Zod conversion with reference resolutionpackages/api/src/mcp/zod.ts
• Removes inline type definitions and imports them from external types
module
• Adds
resolveJsonSchemaRefsfunction for handling JSON schemareferences
• Enhances schema conversion with better handling of bare
object schemas and additional properties
• Adds
convertWithResolvedRefshelper function for testsobject-traverse.ts
Add ESM-native object traversal utilitypackages/data-schemas/src/utils/object-traverse.ts
• Implements ESM-native object traversal utility with
forEachfunctionality
• Provides comprehensive traversal context with path
tracking, circular reference detection
• Includes type guards and safe
property manipulation methods
mutations.ts
Enhance conversation pinning and reordering mutationsclient/src/data-provider/mutations.ts
• Updates conversation pinning mutation to use
updateConversationinstead of dedicated
pinConversation• Adds
useReorderPinnedConversationsMutationfor managing pinned conversationorder
• Enhances archive mutation to automatically unpin conversations
when archiving
schemas.ts
Expand model parameters and conversation schema enhancementspackages/data-provider/src/schemas.ts
• Adds
minimaloption toReasoningEffortenum andVerbosityenum•
Updates penalty parameter ranges from 0-2 to -2-2 for OpenAI and
agents settings
• Adds
web_searchconfiguration for Anthropic settingsand schema updates
• Adds
pinnedOrderfield to conversation schema andremoves inline
isPinneddefinitionparsers.ts
Replace traverse library with custom ESM implementationpackages/data-schemas/src/config/parsers.ts
• Replaces
traverselibrary with custom ESM-native object traversalutility
• Updates debug logging formatter to use new traversal context
interface
• Improves error handling and string concatenation in
logging
parameterSettings.ts
Add new model parameters and web search optionspackages/data-provider/src/parameterSettings.ts
• Adds
minimaloption to reasoning effort settings andverbosityparameter for OpenAI
• Adds
web_searchtoggle for OpenAI and Anthropicendpoints
• Adds
disableStreamingoption for OpenAI endpoints•
Updates parameter configurations across multiple model endpoints
dark.ts
Add dark theme color definitionspackages/client/src/theme/themes/dark.ts
• Defines complete dark theme color palette with RGB values
• Maps
colors for text, surfaces, borders, brand elements, and utility colors
• Provides comprehensive dark mode color scheme implementation
default.ts
Add default light theme color definitionspackages/client/src/theme/themes/default.ts
• Defines complete default light theme color palette with RGB values
•
Maps colors for text, surfaces, borders, brand elements, and utility
colors
• Provides comprehensive light mode color scheme implementation
applyTheme.ts
Add theme application utility with validationpackages/client/src/theme/utils/applyTheme.ts
• Implements theme application utility with RGB validation
• Maps
theme RGB values to CSS variables and applies them to document root
•
Includes validation for RGB format and error handling
handler.ts
Enhance MCP OAuth handler with configurable metadatapackages/api/src/mcp/oauth/handler.ts
• Updates OAuth metadata discovery to use
discoverAuthorizationServerMetadata• Adds configurable OAuth metadata
fields support with default values
• Enhances authorization flow with
resource parameter handling
• Improves error handling and logging
throughout OAuth process
format.ts
Add plugin formatting and conversion utilitiespackages/api/src/tools/format.ts
• Adds utility functions for filtering unique plugins and checking
plugin authentication
• Implements MCP tools to plugins conversion
functionality
• Adds toolkit key resolution for tool name matching
useToolToggle.ts
Refactor tool toggle state managementclient/src/hooks/Plugins/useToolToggle.ts
• Refactors tool toggle logic to use ephemeral agent as single source
of truth
• Improves localStorage synchronization and removes infinite
loop prevention
• Enhances type safety with
ToolValuetype and bettervalue handling
useArtifacts.ts
Update artifacts hook to use dedicated contextclient/src/hooks/Artifacts/useArtifacts.ts
• Updates to use
useArtifactsContextinstead ofuseChatContext•
Changes from
latestMessagetolatestMessageIdandlatestMessageText•
Simplifies artifact detection and management logic
crud.ts
Add file cleanup and fix service key configurationpackages/api/src/files/mistral/crud.ts
• Adds
deleteMistralFilefunction for cleaning up uploaded files•
Updates OCR upload process to automatically delete temporary files
after processing
• Fixes Google service key path environment variable
name
index.ts
Consolidate SVG icon exportspackages/client/src/svgs/index.ts
• Consolidates all SVG icon exports into a single index file
• Exports
67 different SVG components for consistent icon usage
index.ts
Simplify component SVG exports to file-related iconsclient/src/components/svg/index.ts
• Reduces exports to only file-related SVG components
• Exports
CodePaths,FileIcon,FilePaths,SheetPaths, andTextPathsuseAutoSave.ts
Refactor auto-save to use centralized draft utilitiesclient/src/hooks/Input/useAutoSave.ts
• Refactors to use external
getDraft,setDraft, andclearDraftutilities
• Removes inline base64 encoding/decoding functions
•
Simplifies draft handling logic with centralized utilities
i18n.ts
Add comprehensive internationalization configurationpackages/client/src/locales/i18n.ts
• Sets up comprehensive i18n configuration with 26 language
translations
• Configures language detection and fallback strategies
•
Includes support for Chinese variants and proper fallback chains
key.ts
Enhance Google service key loading with multiple formatspackages/api/src/utils/key.ts
• Enhances Google service key loading to support base64 encoded and
stringified JSON
• Adds proper private key formatting with newline
handling
• Improves PEM format validation and correction
useMCPSelect.ts
Enhance MCP selection with configuration-based filteringclient/src/hooks/Plugins/useMCPSelect.ts
• Adds filtering based on startup config
chatMenusetting• Stabilizes
setMCPValuescallback to prevent infinite render loops• Integrates
with startup configuration for MCP server visibility
web.ts
Add SearXNG search provider supportpackages/api/src/web/web.ts
• Adds SearXNG search provider configuration with instance URL and API
key
• Updates web search authentication to include SearXNG provider
•
Enhances scraper timeout configuration with Firecrawl options support
useChatFunctions.ts
Simplify chat functions by removing artifacts configurationclient/src/hooks/Chat/useChatFunctions.ts
• Removes artifacts mode configuration from chat functions
•
Simplifies message submission by removing artifact-related parameters
• Updates response message ID generation logic for regeneration
react-query-service.ts
Add MCP server management mutations and queriespackages/data-provider/src/react-query/react-query-service.ts
• Adds
useReinitializeMCPServerMutationfor server reinitialization•
Adds
useCancelMCPOAuthMutationfor OAuth cancellation• Adds
useMCPServerConnectionStatusQueryfor connection status monitoringfiles.ts
Update file utility imports for SVG componentsclient/src/utils/files.ts
• Imports file-related SVG components from the component SVG module
role.ts
Add file search permission to role typespackages/data-schemas/src/types/role.ts
• Adds
FILE_SEARCHpermission type to role interface• Extends
permissions structure with file search capabilities
1 files
config.ts
Enhance configuration schemas with new optionspackages/data-provider/src/config.ts
• Added new title-related configuration options to base endpoint
schema
• Added
fileSearchinterface configuration option• Enhanced
web search schema with SearXNG and Firecrawl options
• Added memory
character limit configuration and updated cache keys
101 files