* 🔧 feat: Enhance logging configuration for production and debug environments
* 🔒 feat: Implement encryption and decryption functions for sensitive values in ActionService with URL encoding/decoding
* refactor: optimize action service for agent tools
* refactor: optimize action processing for Assistants API
* fix: handle case where agent is not found in loadAgent function
* refactor: improve error handling in API calls by throwing new Error with logAxiosError output
* chore: bump @librechat/agents to 2.3.95, fixes "Invalid tool call structure: No preceding AIMessage with tool_call_ids"
* refactor: enhance error logging in logAxiosError function to include response status
* refactor: remove unused useModelSelection hook from Endpoint
* refactor: add support for assistants in useSelectorEffects hook
* refactor: replace string easing with imported easings in Landing component
* chore: remove duplicate translation
* refactor: update model selection logic and improve localization for UI elements
* refactor: replace endpoint value checks with helper functions for agents and assistants
* refactor: optimize display value logic and utilize useMemo for performance improvements
* refactor: clean up imports and optimize display/icon value logic in endpoint components, fix spec selection
* refactor: enhance error logging in axios utility to include stack traces for better debugging
* refactor: update logging configuration to use DEBUG_LOGGING and streamline log level handling
* refactor: adjust className for export menu button to improve layout consistency and remove unused title prop from ShareButton
* refactor: update import path for logAxiosError utility to improve module organization and clarity
* refactor: implement debounced search value setter in ModelSelectorContext for improved performance
* feat: add GOOGLE_MODELS env var
* feat: add gemini vision support
* refactor(GoogleClient): adjust clientOptions handling depending on model
* fix(logger): fix redact logic and redact errors only
* fix(GoogleClient): do not allow non-multiModal messages when gemini-pro-vision is selected
* refactor(OpenAIClient): use `isVisionModel` client property to avoid calling validateVisionModel multiple times
* refactor: better debug logging by correctly traversing, redacting sensitive info, and logging condensed versions of long values
* refactor(GoogleClient): allow response errors to be thrown/caught above client handling so user receives meaningful error message
debug orderedMessages, parentMessageId, and buildMessages result
* refactor(AskController): use model from client.modelOptions.model when saving intermediate messages, which requires for the progress callback to be initialized after the client is initialized
* feat(useSSE): revert to previous model if the model was auto-switched by backend due to message attachments
* docs: update with google updates, notes about Gemini Pro Vision
* fix: redis should not be initialized without USE_REDIS and increase max listeners to 20
* refactor(Ask/Edit): consolidate ask/edit controllers between the main modules and openAI controllers to reduce repetition of code and increase reusability
* fix(winston/logger): circular dependency issue
* fix(config/scripts): fix script imports
* refactor(indexSync): make not configured message an info log message
* chore: create a rollup script for api/server/index.js to check circular dependencies
* chore: bump @keyv/redis
* WIP: initial logging changes
add several transports in ~/config/winston
omit messages in logs, truncate long strings
add short blurb in dotenv for debug logging
GoogleClient: using logger
OpenAIClient: using logger, handleOpenAIErrors
Adding typedef for payload message
bumped winston and using winston-daily-rotate-file
moved config for server paths to ~/config dir
Added `DEBUG_LOGGING=true` to .env.example
* WIP: Refactor logging statements in code
* WIP: Refactor logging statements and import configurations
* WIP: Refactor logging statements and import configurations
* refactor: broadcast Redis initialization message with `info` not `debug`
* refactor: complete Refactor logging statements and import configurations
* chore: delete unused tools
* fix: circular dependencies due to accessing logger
* refactor(handleText): handle booleans and write tests
* refactor: redact sensitive values, better formatting
* chore: improve log formatting, avoid passing strings to 2nd arg
* fix(ci): fix jest tests due to logger changes
* refactor(getAvailablePluginsController): cache plugins as they are static and avoids async addOpenAPISpecs call every time
* chore: update docs
* chore: update docs
* chore: create separate meiliSync logger, clean up logs to avoid being unnecessarily verbose
* chore: spread objects where they are commonly logged to allow string truncation
* chore: improve error log formatting