Skip to content

πŸ›‘οΈ fix: Temporarily Remove CSP until Configurable #7419

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
May 16, 2025

Conversation

danny-avila
Copy link
Owner

@danny-avila danny-avila commented May 16, 2025

Summary

Closes #7415

I removed the Content Security Policy (CSP) configuration from the server middleware to prevent issues from a rigid, non-configurable policy. This change is intended as a temporary measure until a flexible, environment-based CSP solution is implemented.

  • Deleted the inclusion of helmet middleware responsible for enforcing the CSP in api/server/index.js
  • Removed all directives related to CSP, including handling of Sandpack bundler URLs and frame sources
  • Preserved standard security and middleware setup by retaining CORS, cookie parsing, compression, and sanitation middlewares

Change Type

  • Bug fix (non-breaking change which fixes an issue)

Checklist

  • My code adheres to this project's style guidelines
  • I have performed a self-review of my own code
  • I have commented in any complex areas of my code
  • I have made pertinent documentation changes
  • My changes do not introduce new warnings
  • Local unit tests pass with my changes

Copy link
Contributor

🚨 Unused NPM Packages Detected

The following unused dependencies were found:

πŸ“‚ API api/package.json

  • helmet

⚠️ Please remove these unused dependencies to keep your project clean.

@danny-avila danny-avila merged commit a92ac23 into main May 16, 2025
4 of 5 checks passed
@danny-avila danny-avila deleted the fix/remove-csp-temporarily branch May 16, 2025 13:16
@McKean
Copy link

McKean commented May 16, 2025

shame, I also ran into some troubles with images but adjusting img-src fixed it:

imgSrc: ["'self'", 'data:', 'blob:'],

I guess it does make sense to have some flag to enable/disable csp and this can be worked on in more opt in way. Thanks making things work!

@danny-avila
Copy link
Owner Author

danny-avila commented May 16, 2025

shame, I also ran into some troubles with images but adjusting img-src fixed it:

imgSrc: ["'self'", 'data:', 'blob:'],

I guess it does make sense to have some flag to enable/disable csp and this can be worked on in more opt in way. Thanks making things work!

Thanks for sharing! It is good to have, but people should expect it and be able to configure it when it's there.

@rubentalstra

@rubentalstra
Copy link
Collaborator

I will fix this. And sorry for all the inconveniences it caused.

oxeone added a commit to oxeone/LibreChat that referenced this pull request May 23, 2025
commit 22654133873f754326ae48702e1b0c482f47049d
Author: Danny Avila <[email protected]>
Date:   Fri May 23 00:42:51 2025 -0400

    πŸͺ¨ feat: Bedrock Support for Claude-4 Reasoning (#7517)

    * πŸ—‘οΈ chore: Update .gitignore to reflect AI-related files

    * chore: linting in Bedrock options.js

    * πŸͺ¨ feat: Bedrock Claude-4 Reasoning

commit 7e98702a87e1eb39690183b4f83aecb58a7dfff3
Author: hofq <[email protected]>
Date:   Fri May 23 05:53:19 2025 +0200

    πŸ“Š chore: Remove Old Helm Chart (#7512)

    Co-authored-by: hofq <[email protected]>

commit a2f330e6ca47e9c2295b8e6e665abb935cf6c945
Author: Danny Avila <[email protected]>
Date:   Thu May 22 15:00:44 2025 -0400

    🦾 feat: Claude-4 Support (#7509)

    * refactor: Update AnthropicClient to support Claude model naming changes

    * Renamed `isClaude3` to `isClaudeLatest` to accommodate newer Claude models.
    * Updated logic to determine if the model is part of the Claude family.
    * Adjusted `useMessages` property to reflect the new model naming convention.
    * Cleaned up client properties during disposal to match the updated naming.

    * feat: Claude-4 Support

    * feat: Add Thinking and Prompt caching support for Claude 4

    * chore: Update ANTHROPIC_MODELS in .env.example for latest model versions

commit 28b76ce339b17bf4fd38ed311099d5b77c27ec28
Author: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Date:   Tue May 20 14:59:18 2025 -0400

    🌍 i18n: Update translation.json with latest translations (#7468)

    Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

commit eb1668ff228471d3b5ce1dc303b36113f1c0061d
Author: Danny Avila <[email protected]>
Date:   Tue May 20 13:51:56 2025 -0400

    πŸ“‚ refactor: Improve `FileAttachment` & File Form Deletion (#7471)

    * refactor: optional attachment properties for `FileAttachment`

    * refactor: update ActionButton to use localized text

    * chore: localize text in DataTableFile, add missing translation, imports order, and linting

    * chore: linting in DataTable

    * fix: integrate Recoil state management for file deletion in DataTableFile

    * fix: integrate Recoil state management for file deletion in DataTable

    * fix: add temp_file_id to BatchFile type and update deleteFiles logic to properly remove files that are mapped to temp_file_id

commit e86842fd192bd2b36f9affec4711271e20cdde87
Author: Sebastien Bruel <[email protected]>
Date:   Tue May 20 22:26:58 2025 +0900

    βœ… fix: Emojis rendering in `SplitText` Animation (#7460)

commit af96666ff440922a0f515c4790c5b5f89c89b53c
Author: Danny Avila <[email protected]>
Date:   Tue May 20 09:24:52 2025 -0400

    πŸ–ΌοΈ chore: Linting & Transition Styling in UI Components (#7467)

    * chore: linting

    * πŸ”§ fix: Correctly parse dimensions for image width and height in OpenAIImageGen component

    * style: overlay class for DialogImage component to improve visibility

    * style: Update transition timing function for PixelCard component to rely on style props

commit 59109cd2dd4cfad47e119d8b9efab4392ad0a596
Author: arthurolivierfortin <[email protected]>
Date:   Tue May 20 08:43:12 2025 -0400

    πŸ”¬ fix: File Search Request Format (Azure Assistants API) (#7404)

    * fix: The request format for file analysis with Azure OpenAI assistants

      The request format for file analysis with Azure OpenAI assistants differs from that of OpenAI. This fix updates the API to use attachments instead of file_ids. danny-avila#7379

    * chore: ESLint Error

    ---------

    Co-authored-by: Danny Avila <[email protected]>

commit c8f5f5131e57874af2410405c2f298b90ded991a
Author: Danny Avila <[email protected]>
Date:   Tue May 20 08:37:39 2025 -0400

    πŸ”§ fix: File Deletion for Azure Assistants API (#7466)

commit 8c0be0e2f059155803b2bbc56ccde390621a7d2a
Author: Amgad Hasan <[email protected]>
Date:   Tue May 20 02:43:44 2025 +0300

    πŸ¦™ chore: Add `llama-4` to Vision Models List (#7433)

commit f8cb0cdcda470518454a719697be6b6ecfed516f
Author: Ben Verhees <[email protected]>
Date:   Tue May 20 01:37:21 2025 +0200

    πŸ”— feat: Support Environment Variables in MCP URL Config (#7424)

commit 55d52d07f21dba844c18aa1b0e696e6888234e8b
Author: RenΓ© Honig <[email protected]>
Date:   Tue May 20 01:35:05 2025 +0200

    πŸ“ƒ fix: Ensure MCP Resources Pass Name and Description Fields to LLM (#7442)

commit 7ce782fec699497e1e995b31cee6232aca23f17f
Author: Theo N. Truong <[email protected]>
Date:   Mon May 19 17:33:25 2025 -0600

    🎚️ feat: Custom Parameters (#7342)

    * #

    * - refactor: simplified getCustomConfig func

    * #

    * - feature: persist values for parameters with optionType of custom

    * #

    * - refactor: moved `Parameters/settings.ts` into `data-provider` so that both frontend and backend code can use it.

    * - feature: loadCustomConfig can now parse and validate customParams property for `endpoints.custom` in `librechat.yaml`

    * # fixed linter

    * # removed .strict() in config.ts

    * change: added packages/data-provider/src to SOURCE_DIRS for i18n check

    * # removed unnecessary lodash imports

    * # addressed PR comments
    # fixed lint for updated files

    * # better import for lodash (w/o relying on tree-shaking)

commit c79ee32006db3240ce8cfcb533278d189fa4ed67
Author: Marco Beretta <[email protected]>
Date:   Fri May 16 17:50:18 2025 +0200

    πŸ–ΌοΈ feat: Tool Call and Loading UI Refresh, Image Resize Config (#7086)

    * ✨ feat: Enhance Spinner component with customizable properties and improved animation

    * πŸ”§ fix: Replace Loader with Spinner in RunCode component and update FilePreview to use Spinner for progress indication

    * ✨ feat: Refactor icons in CodeProgress and CancelledIcon components; enhance animation and styling in ExecuteCode and ProgressText components

    * ✨ feat: Refactor attachment handling in ExecuteCode component; replace individual attachment rendering with AttachmentGroup for improved structure

    * ✨ feat: Refactor dialog components for improved accessibility and styling; integrate Skeleton loading state in Image component

    * ✨ feat: Refactor ToolCall component to use ToolCallInfo for better structure; replace ToolPopover with AttachmentGroup; enhance ProgressText with error handling and improved UI elements

    * πŸ”§ fix: Remove unnecessary whitespace in ProgressText

    * πŸ”§ fix: Remove unnecessary margin from AgentFooter and AgentPanel components; clean up SidePanel imports

    * ✨ feat: Enhance ToolCall and ToolCallInfo components with improved styling; update translations and add warning text color to Tailwind config

    * πŸ”§ fix: Update import statement for useLocalize in ToolCallInfo component; fix: chatform transition

    * ✨ feat: Refactor ToolCall and ToolCallInfo components for improved structure and styling; add optimized code block for better output display

    * ✨ feat: Implement OpenAI image generation component; add progress tracking and localization for user feedback

    * πŸ”§ fix: Adjust base duration values for image generation; optimize timing for quality settings

    * chore: remove unnecessary space

    * ✨ feat: Enhance OpenAI image generation with editing capabilities; update localization for progress feedback

    * ✨ feat: Add download functionality to images; enhance DialogImage component with download button

    * ✨ feat: Enhance image resizing functionality; support custom percentage and pixel dimensions in resizeImageBuffer

commit 739b0d30128a983bded1f37e7ec0855f56967bde
Author: Danny Avila <[email protected]>
Date:   Mon May 19 19:22:43 2025 -0400

    πŸ›‘οΈ chore: `multer` v2.0.0 for CVE-2025-47935 and CVE-2025-47944 (#7454)

    * chore: bump multer to v2.0.0 to resolve CVE-2025-47935 and CVE-2025-47944

    * chore: temp. remove helmet dependency to appease unused NPM package workflow

commit 9c9fe4e03a3592e6b39edccc1136a63c72b39066
Author: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Date:   Mon May 19 10:28:18 2025 -0400

    πŸ“œ docs: Unreleased Changelog (#7434)

    * action: update Unreleased changelog

    * Update CHANGELOG.md

    ---------

    Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
    Co-authored-by: Danny Avila <[email protected]>

commit 844bbbb1620bdc8a2b2293116399738c21ef28b1
Author: hofq <[email protected]>
Date:   Sat May 17 21:52:16 2025 +0200

    πŸ“Š feat: Improve Helm Chart (#3638)

    * Replaced Helm Charts with Blue Atlas Charts

    * Fix Workflow

    * improve docs

    * update gitignore

    * Update docs

    * change values order, add hpa

    * change tls example domain

    * Default: Enable liveness and readiness

    * chore: bump base chart

    * apply requested changes

    * add Release fix

    * add: error handling

    * chore: cleanup and testing

    * fix: adjust Chart.yaml

    ---------

    Co-authored-by: hofq <[email protected]>
    Co-authored-by: Ruben Talstra <[email protected]>

commit 26780bddf058081e1471d4fc158377a9195466aa
Author: Danny Avila <[email protected]>
Date:   Fri May 16 11:39:57 2025 -0400

    ✨ feat: Add Normalization for MCP Server Names (#7421)

commit 353adceb0c9e1922e6a1ef16814e63c7c92d0a9a
Author: Sebastien Bruel <[email protected]>
Date:   Fri May 16 23:18:52 2025 +0900

    πŸ’½ fix: Exclude index page `/` from static cache settings (#7382)

    * Disable default static caching for app's index page

    * Update index.html related environment variables in `.env.example`

    * Fix linting

    * Update index.spec.js

    ---------

    Co-authored-by: Danny Avila <[email protected]>

commit a92ac23c445165d95aeede6a2bff74b31f47276c
Author: Danny Avila <[email protected]>
Date:   Fri May 16 09:16:32 2025 -0400

    πŸ›‘οΈ fix: Temporarily Remove CSP until Configurable (#7419)

commit 2a3bf259aa9a84fef4d89632706f668ee3c45322
Author: Danny Avila <[email protected]>
Date:   Thu May 15 18:05:45 2025 -0400

    🎨 style: revert email and password classes in LoginForm changed in #7377

commit 3152a1e536c9c49071a9bcea6b773d490e64b380
Author: Theo N. Truong <[email protected]>
Date:   Thu May 15 15:50:09 2025 -0600

    🌘 fix: artifact of preview text is illegible in dark mode (#7405)

commit 2f4a03b581ab72997299acf19e8986d8ca06412d
Author: Danny Avila <[email protected]>
Date:   Thu May 15 17:46:48 2025 -0400

    πŸ›‘οΈ fix: Preset and Validation Logic for URL Query Params (#7407)

    * chore(store/families): linting

    * refactor: Update `createChatSearchParams` to use `tQueryParamsSchema` for allowed parameters and add `modelLabel` to schema

    * refactor: Enhance `useQueryParams` to streamline parameter processing and improve submission handling

    * chore: linting

    * fix: Add `disableParams` option to conversation handling and related schemas to prevent search params from updating due to use of default preset

    * fix: Update `createChatSearchParams` to correctly ignore `agent_id` when it matches `EPHEMERAL_AGENT_ID`

    * chore: revert modelLabel addition to query params, as no longer necessary due to `disableParams`

    * fix: Refine logic for `disableParams` to ensure correct handling of active preset comparison

    * fix: Add `disableParams` option to `NewConversationParams` and update related hooks for preset handling

    * fix: Refactor validation logic in `validateSettingDefinitions` to improve handling of `includeInput` and update conversation schema

    * fix: Bump version of `librechat-data-provider` to 0.7.83

commit 7a91f6ca62865b0e6b94b816e59f0f39382a9832
Author: Ruben Talstra <[email protected]>
Date:   Thu May 15 22:25:10 2025 +0200

    πŸ”’ feat: Add Content Security Policy using Helmet middleware (#7377)

    * πŸ”’ feat: Add Content Security Policy using Helmet middleware

    * πŸ”’ feat: Set trust proxy and refine Content Security Policy directives

    * 🎨 feat: add `copy-tex` to improve copying KaTeX (#7308)

    When selecting equations and using copy paste, uses the correct latex code.

    Co-authored-by: Ruben Talstra <[email protected]>

    * πŸ”ƒ refactor: `AgentFooter` to conditionally render buttons based on `activePanel` (#7306)

    * πŸš€ feat: Add `Cloudflare Turnstile` support (#5987)

    * πŸš€ feat: Add @marsidev/react-turnstile dependency to package.json and package-lock.json

    * πŸš€ feat: Integrate Cloudflare Turnstile configuration support in AppService and add schema validation

    * πŸš€ feat: Implemented Cloudflare Turnstile integration in Login and Registration forms

    * πŸš€ feat: Enhance AppService tests with additional mocks and configuration setups

    * πŸš€ feat: Comment out outdated config version warning tests in AppService.spec.js

    * πŸš€ feat: Remove outdated warning tests and add new checks for environment variables and API health

    * πŸ”§ test: Update AppService.spec.js to use expect.anything() for paths validation

    * πŸ”§ test: Refactor AppService.spec.js to streamline mocks and enhance clarity

    * πŸ”§ chore: removed not needed test

    * Potential fix for code scanning alert no. 5638: Ensure code is properly formatted, use insertion, deletion, or replacement to obtain desired formatting.

    Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>

    * Potential fix for code scanning alert no. 5629: Ensure code is properly formatted, use insertion, deletion, or replacement to obtain desired formatting.

    Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>

    * Potential fix for code scanning alert no. 5642: Ensure code is properly formatted, use insertion, deletion, or replacement to obtain desired formatting.

    Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>

    * Update turnstile.js

    * Potential fix for code scanning alert no. 5634: Ensure code is properly formatted, use insertion, deletion, or replacement to obtain desired formatting.

    Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>

    * Potential fix for code scanning alert no. 5646: Ensure code is properly formatted, use insertion, deletion, or replacement to obtain desired formatting.

    Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>

    * Potential fix for code scanning alert no. 5647: Ensure code is properly formatted, use insertion, deletion, or replacement to obtain desired formatting.

    Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>

    ---------

    Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>

    * πŸ”’ feat: Refactor Content Security Policy setup to use Helmet middleware with custom directives

    * πŸ”’ feat: Enhance Content Security Policy to include Sandpack Bundler URL

    * πŸ”’ feat: Update Content Security Policy and integrate Turnstile captcha support

    ---------

    Co-authored-by: andresgit <[email protected]>
    Co-authored-by: matt burnett <[email protected]>
    Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>

commit fe311df96915ea341dc60568dcc5c348f4c0f8bf
Author: Danny Avila <[email protected]>
Date:   Thu May 15 12:17:17 2025 -0400

    πŸ”„ fix: Improve MCP Connection Cleanup (#7400)

    * chore: linting for mcp related modules

    * fix: update `isConnected` method to return a Promise and handle connection state asynchronously to properly handle/cleanup disconnected user connections

commit 535e7798b36a9ef69ac10710c37a086a5f61c703
Author: Ruben Talstra <[email protected]>
Date:   Thu May 15 15:38:58 2025 +0200

    πŸš€ feat: Add `Cloudflare Turnstile` support (#5987)

    * πŸš€ feat: Add @marsidev/react-turnstile dependency to package.json and package-lock.json

    * πŸš€ feat: Integrate Cloudflare Turnstile configuration support in AppService and add schema validation

    * πŸš€ feat: Implemented Cloudflare Turnstile integration in Login and Registration forms

    * πŸš€ feat: Enhance AppService tests with additional mocks and configuration setups

    * πŸš€ feat: Comment out outdated config version warning tests in AppService.spec.js

    * πŸš€ feat: Remove outdated warning tests and add new checks for environment variables and API health

    * πŸ”§ test: Update AppService.spec.js to use expect.anything() for paths validation

    * πŸ”§ test: Refactor AppService.spec.js to streamline mocks and enhance clarity

    * πŸ”§ chore: removed not needed test

    * Potential fix for code scanning alert no. 5638: Ensure code is properly formatted, use insertion, deletion, or replacement to obtain desired formatting.

    Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>

    * Potential fix for code scanning alert no. 5629: Ensure code is properly formatted, use insertion, deletion, or replacement to obtain desired formatting.

    Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>

    * Potential fix for code scanning alert no. 5642: Ensure code is properly formatted, use insertion, deletion, or replacement to obtain desired formatting.

    Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>

    * Update turnstile.js

    * Potential fix for code scanning alert no. 5634: Ensure code is properly formatted, use insertion, deletion, or replacement to obtain desired formatting.

    Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>

    * Potential fix for code scanning alert no. 5646: Ensure code is properly formatted, use insertion, deletion, or replacement to obtain desired formatting.

    Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>

    * Potential fix for code scanning alert no. 5647: Ensure code is properly formatted, use insertion, deletion, or replacement to obtain desired formatting.

    Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>

    ---------

    Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>

commit 621fa6e1aa2330f9d8fa1da6a8706fabbd787202
Author: matt burnett <[email protected]>
Date:   Thu May 15 09:37:14 2025 -0400

    πŸ”ƒ refactor: `AgentFooter` to conditionally render buttons based on `activePanel` (#7306)

commit f6cc394eabc3298916abfa898b16c5d415bacf0f
Author: andresgit <[email protected]>
Date:   Thu May 15 16:35:48 2025 +0300

    🎨 feat: add `copy-tex` to improve copying KaTeX (#7308)

    When selecting equations and using copy paste, uses the correct latex code.

    Co-authored-by: Ruben Talstra <[email protected]>

commit 5b402a755e83fa668c206c20b7d10aed938b3a07
Author: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Date:   Wed May 14 13:09:52 2025 -0400

    🌍 i18n: Update translation.json with latest translations (#7375)

    Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

commit b0405be9eadb377f6a9ce185fe432fb78e3b186c
Author: Ruben Talstra <[email protected]>
Date:   Wed May 14 19:08:06 2025 +0200

    🌍 i18n: Add `Danish` and `Czech` and `Catalan` localization support (#7373)

    * 🌍 i18n: Add Danish and Czech localization support

    * 🌍 i18n: Correct Czech language code from 'sc-CZ' to 'cs-CZ'

    * 🌍 i18n: Add Catalan localization support

commit 3f4dd08589f13bd31221ac6830b89f63936036cb
Author: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Date:   Wed May 14 13:07:21 2025 -0400

    πŸ“œ docs: Unreleased Changelog (#7321)

    Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

commit d5b399550e9c02b6790783ec7d46cc3a526f9a2b
Author: Danny Avila <[email protected]>
Date:   Tue May 13 15:31:06 2025 -0400

    πŸ“¦ chore: Update API Package Dependencies (#7359)

    * chore: temporarily remove @librechat/agents

    * chore: bump @langchain/google-genai to v0.2.8

    * chore: bump @langchain/google-vertexai to v0.2.8

    * chore: bump @langchain/core to v0.3.55

    * chore: bump @librechat/agents to v2.4.316

    * chore: bump @librechat/agents to v2.4.317

    * chore: update title for Unreleased Changelog PR to include documentation emoji

    * chore: add workflow_dispatch trigger and update Pull Request title for changelog

commit a5ff8253a42339dac2768e2d42d3e3744d91df8c
Author: Danny Avila <[email protected]>
Date:   Tue May 13 13:26:37 2025 -0400

    🎏 feat: Add MCP support for Streamable HTTP Transport [2/2] (#7353)

    - fixes type/packages issues not resolved in #7353

commit 0b44142383bfcb45966c80ed8157bbcc1bfc41b8
Author: Ben Verhees <[email protected]>
Date:   Tue May 13 19:14:15 2025 +0200

    🎏 feat: Add MCP support for Streamable HTTP Transport (#7353)

commit 502617db2495f3204cb747541d046c4ca30fa628
Author: matt burnett <[email protected]>
Date:   Tue May 13 08:24:40 2025 -0400

    πŸ”„ fix: update navigation logic in `useFocusChatEffect` to ensure correct search parameters are used (#7340)

commit f2f285ca1efa2eb4e3f22f8fce04806e82b22d6c
Author: Danny Avila <[email protected]>
Date:   Mon May 12 14:35:14 2025 -0400

    πŸ”‘ fix: use `apiKey` instead of `openAIApiKey` in OpenAI-like Config (#7337)

commit 6dd1b3988651ea4b56b2b84d9ae8e042fbdd0bc1
Author: Marco Beretta <[email protected]>
Date:   Mon May 12 14:12:51 2025 +0200

    πŸ’¬ fix: update aria-label for accessibility in `ConvoLink` (#7320)

commit 5a43f875849f5d650c873b3f494ecf14710b13fc
Author: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Date:   Mon May 12 08:10:58 2025 -0400

    πŸ“œ docs: CHANGELOG for release v0.7.8 (#7290)

    Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

commit 4af72aac9b469a6aa179e8c348cd0476687293b0
Author: matt burnett <[email protected]>
Date:   Fri May 9 13:03:33 2025 -0400

    ✨ feat: implement search parameter updates (#7151)

    * feat: implement search parameter updates

    * Update url params when values change

    reset params on new chat

    move logic to families.ts

    revert unchanged files

    ---------

    Co-authored-by: Danny Avila <[email protected]>

commit f7777a2723e8e51f3ff464d4e672db46905964a5
Author: Danny Avila <[email protected]>
Date:   Thu May 8 13:28:40 2025 -0400

    ✨ v0.7.8 (#7287)

    * ✨ v0.7.8

    * chore: bump data-provider to v0.7.82

    * chore: update CONFIG_VERSION to 1.2.5

    * chore: bump librechat-mcp version to 1.2.2

    * chore: bump @librechat/data-schemas version to 0.0.7

commit e5b234bc7237fa30606d06f68110fa9d2a811fc7
Author: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Date:   Thu May 8 13:09:30 2025 -0400

    πŸ“œ docs: Unreleased Changelog (#7214)

    Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

commit 4f2ed4645056b4a04bcb1f73810e925f99bcdd86
Author: Josh Nichols <[email protected]>
Date:   Thu May 8 12:32:12 2025 -0400

    πŸ‹ feat: Add python to Dockerfile for increased MCP compatibility (#7270)

    Without this, it's not possible to run any MCPs that use python, only node.

    So, add these to enable using things that use `uvx` similar to what
    the documentation already talks about for `npx`.

commit 66093b1eb38462b74d187a89a8f4d0075f40d2c4
Author: Danny Avila <[email protected]>
Date:   Thu May 8 12:12:36 2025 -0400

    πŸ’¬ refactor: MCP Chat Visibility Option, Google Rates, Remove OpenAPI Plugins (#7286)

    * fix: Update Gemini 2.5 Pro Preview Model Name in Token Values

    * refactor: Update DeleteButton to close menu when deletion is successful

    * refactor: Add unmountOnHide prop to DropdownPopup in multiple components

    * chore: linting

    * chore: linting

    * feat: Add `chatMenu` option for MCP Servers to control visibility in MCPSelect dropdown

    * refactor: Update loadManifestTools to return combined tool manifest with MCP tools first

    * chore: remove deprecated openapi plugins

    * chore: linting

    * chore(AgentClient): linting, remove unnecessary `checkVisionRequest` logger

    * refactor(AuthService): change logoutUser logging from error to debug level

    * chore: new Gemini models token values and rates

    * chore(AskController): linting

commit d7390d24ec1a88cc7d049652709467c5cc793a0e
Author: Danny Avila <[email protected]>
Date:   Wed May 7 17:49:42 2025 -0400

    πŸ”„ fix: Ollama Think Tag Edge Case with Tools (#7275)

commit 71105cd49c8d151f67755a4fba8531ee2b59c871
Author: Danny Avila <[email protected]>
Date:   Wed May 7 17:11:33 2025 -0400

    πŸ”„ fix: Assistants Endpoint & Minor Issues (#7274)

    * πŸ”„ fix: Include usage in stream options for OpenAI and Azure endpoints

    * fix: Agents support for Azure serverless endpoints

    * fix: Refactor condition for assistants and azureAssistants endpoint handling

    * AWS Titan via Bedrock: model doesn't support system messages, Closes #6456

    * fix: Add EndpointSchemaKey type to endpoint parameters in buildDefaultConvo and ensure assistantId is always defined

    * fix: Handle new conversation state for assistants endpoint in finalHandler

    * fix: Add spec and iconURL parameters to `saveAssistantMessage` to persist modelSpec fields

    * fix: Handle assistant unlinking even if no valid files to delete

    * chore: move type definitions from callbacks.js to typedefs.js

    * chore: Add StandardGraph typedef to typedefs.js

    * chore: Update parameter type for graph in ModelEndHandler to StandardGraph

    ---------

    Co-authored-by: Andres Restrepo <[email protected]>

commit 3606349a0f1c9ad2242e3c1ea15e09181374f407
Author: Marlon <[email protected]>
Date:   Wed May 7 17:19:06 2025 +0200

    πŸ“ docs: Update `.env.example` Google models (#7254)

    This pull request updates the GOOGLE_MODELS and GOOGLE_TITLE_MODEL examples in the .env.example file to reflect the currently available models on Google AI Studio (Gemini API) and Vertex AI.
    Many of the models previously listed in the example file have since been deprecated or are no longer the primary recommended versions. This discrepancy could lead to confusion for new users setting up the project, potentially causing them to select non-functional or outdated model identifiers, resulting in errors or suboptimal performance.
    The changes in this PR ensure that:
    - The model lists for both Gemini API (AI Studio) and Vertex AI are synchronized with the current offerings.
    - New users have a more accurate and reliable starting point when configuring their environment.
    - The likelihood of encountering issues due to deprecated model names during initial setup is significantly reduced.

commit e3e796293c11c9980dce0449d0d9405ccdc14c74
Author: glowforge-opensource <[email protected]>
Date:   Tue May 6 19:50:11 2025 -0700

    πŸ” feat: Additional Tavily API Tool Parameters (#7232)

    * feat: expose additional Tavily API parameters for tool

    The following parameters are part of Tavily API but were previously not exposed for agents to use via the tool. Now they are. The source documentation is here: https://docs.tavily.com/documentation/api-reference/endpoint/search

    include_raw_content - returns the full text of found web pages (default is false)
    include_domains - limit search to this list of domains (default is none)
    exclude_domains - exclude this list of domains form search (default is none)
    topic - enum of "general", "news", or "finance" (default is "general")
    time_range - enum of "day", "week", "month", or "year" (default unlimited)
    days - number of days to search (default is 7, but only applicable to topic == "news")
    include_image_descriptions - include a description of the image in the search results (default is false)

    It is a little odd that they have both time_range and days, but there it is.

    I have noticed that this change requires a little bit of care in prompting to make sure that it doesn't use "news" when you wanted "general". I've attemtped to hint that in the tool description.

    * correct lint error

    * more lint

    ---------

    Co-authored-by: Michael Natkin <[email protected]>

commit 7c4c3a87966e18495724f3cfa34fb7a3cd7609c4
Author: Danny Avila <[email protected]>
Date:   Tue May 6 22:49:12 2025 -0400

    πŸ”„ fix: URL Param Race Condition and File Draft Persistence (#7257)

    * chore(useAutoSave): linting

    * fix: files attached during streaming disappear when stream finishes

    * fix(useQueryParams): query parameter processing race condition with submission handling, add JSDocs to all functions/hooks

    * test(useQueryParams): add comprehensive tests for query parameter handling and submission logic

commit 20c9f1a78346a58d7700b9c15e10d74ecdb09c5a
Author: andresgit <[email protected]>
Date:   Tue May 6 17:50:09 2025 +0300

    🎨 style: Improve KaTeX Rendering for LaTeX Equations (#7223)

commit 8e1012c5aa30b3eb8779565b9aec178ceb9cb6a9
Author: Danny Avila <[email protected]>
Date:   Tue May 6 10:29:05 2025 -0400

    πŸ›‘οΈ fix: Deep Clone `MCPOptions` for User MCP Connections (#7247)

    * Fix: Prevent side effects in `processMCPEnv` by deep cloning MCPOptions

    The `processMCPEnv` function was modifying the original `MCPOptions` object, leading to unintended side effects where `LIBRECHAT_USER_ID` could be incorrectly shared across different users. This commit addresses this issue by performing a deep clone of the `MCPOptions` object before processing, ensuring that modifications are isolated and do not affect other users.

    * ci: Add tests for processMCPEnv to ensure deep cloning, user ID isolation and environment variable processing

    ---------

    Co-authored-by: Alex C <[email protected]>

commit 7c92cef2b7f2faf816970c7a8bca73c8ad6e4be0
Author: Danny Avila <[email protected]>
Date:   Tue May 6 10:14:17 2025 -0400

    πŸ”– fix: Custom Headers for Initial MCP SSE Connection (#7246)

    * refactor: add custom  to  as workaround to include custom headers to the initial connection request

    * chore: bump MCP client version to 1.2.1 in package-lock and package.json for librechat-mcp

commit 4fbb81c77489c484d3fa5f4e08faf7d91f783b39
Author: Danny Avila <[email protected]>
Date:   Tue May 6 08:40:00 2025 -0400

    πŸ”„ fix: o-Series Model Regex for System Messages (#7245)

    * fix: no system message only for o1-preview and o1-mini

    * chore(OpenAIClient): linting

    * fix: update regex to include o1-preview and o1-mini in noSystemModelRegex

    * refactor: rename variable for consistency with AgentClient

    ---------

    Co-authored-by: Andres <[email protected]>

commit fc6e14efe28e0c40f6453c0e5d9943377ccbfacd
Author: Marco Beretta <[email protected]>
Date:   Mon May 5 15:23:38 2025 +0200

    ✨ feat: Enhance form submission for touch screens (#7198)

    * ✨ feat: Enhance form submission for touch screens

    * chore: add comment

    Co-authored-by: Copilot <[email protected]>

    * chore: add comment

    Co-authored-by: Copilot <[email protected]>

    * chore: linting in AnthropicClient

    * chore: Add anthropic model outputs for Claude 3.7

    * refactor: Simplify touch-screen detection in message submission

    * fix: Correct button rendering order for chat collapse/expand icons

    * Revert "refactor: Simplify touch-screen detection in message submission"

    This reverts commit 8638442a4ce64f4f89e6430e09893cf1736de3d1.

    * refactor: Improve touchscreen detection for focus handling in ChatForm and useFocusChatEffect

    * chore: EditMessage linting

    * refactor: Reorder dropdown items in ExportAndShareMenu

    ---------

    Co-authored-by: Copilot <[email protected]>
    Co-authored-by: Danny Avila <[email protected]>

commit 6e663b24800775e4ce13bf605631fe80b7708263
Author: Danny Avila <[email protected]>
Date:   Sun May 4 10:44:40 2025 -0400

    πŸ› οΈ fix: Conversation Navigation State (#7210)

    * refactor: Enhance initial conversation query condition for better state management and prevent unused network requests

    * ifx: Add Prettier plugin to ESLint configuration

    * chore: linting and typing in convos.spec.ts

    * fix: add back fresh data fetching and improve error handling for  conversation navigation

    * fix: set conversation only with  conversation state change intent, to prevent double queries for messages

commit ddb2141eaca6e31a8e70bf21e0a16a9f7600df7a
Author: matt burnett <[email protected]>
Date:   Fri May 2 15:13:31 2025 -0400

    🧰 chore: ESLint configuration to enforce Prettier formatting rules (#7186)

commit 37b50736bcb6e96c0965aaf6e1cfad28fbf55be0
Author: Danny Avila <[email protected]>
Date:   Fri May 2 15:11:50 2025 -0400

    πŸ”§ fix: Google Gemma Support & OpenAI Reasoning Instructions (#7196)

    * πŸ”„ chore: Update @langchain/google-vertexai to version 0.2.5 in package.json and package-lock.json

    * chore: temp remove agents

    * πŸ”„ chore: Update @langchain/google-genai to version 0.2.5 in package.json and package-lock.json

    * πŸ”„ chore: Update @langchain/community to version 0.3.42 in package.json and package-lock.json

    * πŸ”„ chore: Add license information for @langchain/textsplitters in package-lock.json

    * πŸ”„ chore: Update @langchain/core to version 0.3.51 in package.json and package-lock.json

    * πŸ”„ chore: Update openai dependency to version 4.96.2 in package.json and package-lock.json

    * chore: @librechat/agents to v2.4.30

    * fix: streaming condition in ModelEndHandler to account for boundModel `disableStreaming` setting

    * fix: update regex for noSystemModel and refactor message handling in AgentClient

    * feat: Google Gemma models

    * chore: remove unnecessary empty JSX fragment in PopoverButtons component

commit 5d6d13efe81efb404697f9f78c0c4ab02fcff8ea
Author: Danny Avila <[email protected]>
Date:   Fri May 2 02:43:59 2025 -0400

    🌿 refactor: Unmount Fork Popover on Hide for Performance (#7189)

commit 5efad8f646a8efb7c010e85f355d9ac88b823048
Author: Danny Avila <[email protected]>
Date:   Thu May 1 15:02:51 2025 -0400

    πŸ“¦ chore: Bump Package Security (#7183)

    * πŸ”„ chore: bump supertest to 7.1.0, resolves CVE-2025-46653

    * πŸ”„ chore: update vite to version 6.3.4 and add fdir, picomatch, and tinyglobby as dev dependencies

    * πŸ”„ chore: npm audit fix: remove unused dependencies fdir, picomatch, and tinyglobby from package-lock.json

commit 9a7f763714898ad3b5fbb63821ad7776f0c91ba1
Author: Danny Avila <[email protected]>
Date:   Thu May 1 14:40:39 2025 -0400

    πŸ”„ refactor: Artifact Visibility Management (#7181)

    * fix: Reset artifacts on unmount and remove useIdChangeEffect hook

    * feat: Replace SVG icons with Lucide icons for improved consistency

    * fix: Refactor artifact reset logic on unmount and conversation change

    * refactor: Rename artifactsVisible to artifactsVisibility for consistency

    * feat: Replace custom SVG icons with Lucide icons for improved consistency

    * feat: Add visibleArtifacts atom for managing visibility state

    * feat: Implement debounced visibility state management for artifacts

    * refactor: Add useIdChangeEffect hook to reset visible artifacts on conversation ID change

    * refactor: Remove unnecessary dependency from useMemo in TextPart component

    * refactor: Enhance artifact visibility management by incorporating location checks for search path

    * refactor: Improve transition effects for artifact visibility in Artifacts component

    * chore: Remove preprocessCodeArtifacts function and related tests

    * fix: Update regex for detecting enclosed artifacts in latest message

    * refactor: Update artifact visibility checks to be more generic (not just search)

    * chore: Enhance artifact visibility logging

    * refactor: Extract closeArtifacts function to improve button click handling

    * refactor: remove nested logic from use artifacts effect

    * refactor: Update regex for detecting enclosed artifacts to handle new line variations

commit e6e7935fd8d5b84481c57ef1d46d7f155af73aaf
Author: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Date:   Wed Apr 30 08:54:43 2025 -0400

    πŸ“œ docs: CHANGELOG for release v0.7.8-rc1 (#7153)

    Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

commit 18dc3f8686661dde46d3d347d604c2dab970a68e
Author: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Date:   Tue Apr 29 17:59:11 2025 -0400

    πŸ“œ docs: Unreleased changelog (#6265)

    Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

commit fe512005fca961c6c602bc0b70cd6ad29b6d643b
Author: Danny Avila <[email protected]>
Date:   Tue Apr 29 17:55:25 2025 -0400

    ✨ v0.7.8-rc1 (#7149)

    * ✨ v0.7.8-rc1

    * chore: Enable manual triggering of the Generate Unreleased Changelog workflow

commit da131b6c590b0b32d5ff4fc5be19e96c1ff31a80
Author: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Date:   Tue Apr 29 17:40:50 2025 -0400

    🌍 i18n: Update translation.json with latest translations (#7148)

    Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

commit dd23559d1fd7404be1ada9bd74706efb1d26f2cf
Author: Danny Avila <[email protected]>
Date:   Tue Apr 29 17:39:12 2025 -0400

    πŸ‘ a11y: Improve Fork and SplitText Accessibility (#7147)

    * refactor: Replace Popover with Ariakit components for improved accessibility and UX

    * wip: first pass, fork a11y

    * feat(i18n): Add localization for fork options and related UI elements

    * fix: Ensure Dropdown component has correct z-index for proper layering

    * style: Update Fork PopoverButton styles and remove unused sideOffset prop

    * style: Update text colors and spacing in Fork component for improved readability

    * style: Enhance Fork component's UI by adding select-none class to prevent text selection

    * chore: Remove unused Checkbox import from Fork component

    * fix: Add sr-only span for accessibility in SplitText component

    * chore: Reorder imports in Fork component for better organization

commit a6f0a8244f1ad1696d819a8d087130d226570765
Author: Peter <[email protected]>
Date:   Tue Apr 29 16:02:38 2025 +0200

    πŸ™ fix: Add Redis Ping Interval to Prevent Connection Drops (#7127)

    Co-authored-by: Peter Rothlaender <[email protected]>

commit f04f8f53be6322f70cbf374d308a55d6c66ed8cc
Author: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Date:   Tue Apr 29 09:58:48 2025 -0400

    🌍 i18n: Update translation.json with latest translations (#7126)

    Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

commit a89a3f414648a68e6babced77a995f5f4e9bbbaf
Author: Danny Avila <[email protected]>
Date:   Tue Apr 29 09:55:43 2025 -0400

    πŸ‹ fix: Improve Deepseek Compatbility (#7132)

    * refactor: Update schema conversion to allow nullable optional fields

    * feat: Add support for 'Deepseek' model in response sender logic

    * fix: Normalize endpoint case for legacy content handling in AgentClient (fixes `deepseek-chat` followup issues)

commit 55f5f2d11a29a45ba460c46dab49add019e3b13c
Author: Danny Avila <[email protected]>
Date:   Tue Apr 29 03:49:02 2025 -0400

    πŸ—“οΈ feat: Add Special Variables for Prompts & Agents, Prompt UI Improvements (#7123)

    * wip: Add Instructions component for agent configuration

    * ✨ feat: Implement DropdownPopup for variable insertion in instructions

    * refactor: Enhance variable handling by exporting specialVariables and updating Markdown components

    * feat: Add special variable support for current date and user in Instructions component

    * refactor: Update handleAddVariable to include localized label

    * feat: replace special variables in instructions presets

    * chore: update parameter type for user in getListAgents function

    * refactor: integrate dayjs for date handling and move replaceSpecialVars function to data-provider

    * feat: enhance replaceSpecialVars to include day number in current date format

    * feat: integrate replaceSpecialVars for processing agent instructions

    * feat: add support for current date & time in replaceSpecialVars function

    * feat: add iso_datetime support in replaceSpecialVars function

    * fix: enforce text parameter to be a required field in replaceSpecialVars function

    * feat: add ISO datetime support in translation file

    * fix: disable eslint warning for autoFocus in TextareaAutosize component

    * feat: add VariablesDropdown component and integrate it into CreatePromptForm and PromptEditor; update translation for special variables

    * fix: CategorySelector and related localizations

    * fix: add z-index class to LanguageSTTDropdown for proper stacking context

    * fix: add max-height and overflow styles to OGDialogContent in VariableDialog and PreviewPrompt components

    * fix: update variable detection logic to exclude special variables and improve regex matching

    * fix: improve accessibility text for actions menu in ChatGroupItem component

    * fix: adjust max-width and height styles for dialog components and improve markdown rendering for light vs. dark, height/widths, etc.

    * fix: remove commented-out code for better readability in PromptVariableGfm component

    * fix: handle undefined input parameter in setParams function call

    * fix: update variable label types to use TSpecialVarLabel for consistency

    * fix: remove outdated information from special variables description in translation file

    * fix: enhance unused i18next keys detection for special variable keys

    * fix: update color classes for consistency/a11y in category and prompt variable components

    * fix: update PromptVariableGfm component and special variable styles for consistency

    * fix: improve variable highlighting logic in VariableForm component

    * fix: update background color classes for consistency in VariableForm component

    * fix: add missing ref parameter to Dialog component in OriginalDialog

    * refactor: move navigate call for new conversation to after setConversation update

    * refactor: move message query hook to client workspace; fix: handle edge case for navigation from finalHandler creating race condition for response message DB save

    * chore: bump librechat-data-provider to 0.7.793

    * ci: add unit tests for replaceSpecialVars function

    * fix: implement getToolkitKey function for image_gen_oai toolkit filtering/including

    * ci: enhance dayjs mock for consistent date/time values in tests

    * fix: MCP stdio server fail to start when passing env property

    * fix: use optional chaining for clientRef dereferencing in AskController and EditController
    feat: add context to saveMessage call in streamResponse utility

    * fix: only save error messages if the userMessageId was initialized

    * refactor: add isNotAppendable check to disable inputs in ChatForm and useTextarea

    * feat: enhance error handling in useEventHandlers and update conversation state in useNewConvo

    * refactor: prepend underscore to conversationId in newConversation template

    * feat: log aborted conversations with minimal messages and use consistent conversationId generation

    ---------

    Co-authored-by: Olivier Schiavo <[email protected]>
    Co-authored-by: aka012 <[email protected]>
    Co-authored-by: jiasheng <[email protected]>

commit 0e8041bcac616949c42a68dfb8f108ccc4db5151
Author: Danny Avila <[email protected]>
Date:   Mon Apr 28 18:18:13 2025 -0400

    πŸ”ƒ refactor: Streamline Navigation, Message Loading UX (#7118)

    * chore: fix logging for illegal target endpoints in getEndpointFromSetup

    * fix: prevent querying agent by ID for ephemeral agents

    * refactor: reorder variable declarations in MessagesView for clarity

    * fix: localize 'nothing found' message in MessagesView

    * refactor: streamline navigation logic and enhance loading spinner component in ChatView

    * refactor: simplify loading spinner logic in ChatView component

    * fix: ensure message queries are invalidated after new conversation creation in HeaderNewChat, MobileNav, and NewChat components

    * πŸ› First run dev mode will have error occur.

    πŸ› First run dev mode will have error occur.

    * fix font-size localstorage presist bug

    * Don't ping meilisearch if the search is disabled via env var

    * simplify logic in search/enable endpoint

    * refactor: simplify enable endpoint condition check

    * feat: add useIdChangeEffect hook and integrate it into ChatRoute

    ---------

    Co-authored-by: Ne0 <[email protected]>
    Co-authored-by: TinyTin <[email protected]>
    Co-authored-by: Denis Palnitsky <[email protected]>

commit fc30482f6543fffcf3a04067ef18233f256f58cf
Author: Danny Avila <[email protected]>
Date:   Sun Apr 27 18:28:28 2025 -0400

    πŸͺΆ refactor: Chat Input Focus for Conversation Navigations & ChatForm Optimizations (#7100)

    * refactor: improve ChatView layout by keeping ChatForm mounted

    * feat: implement focusChat functionality for new conversations and navigations

    * refactor: reset artifacts when navigating to prevent any from rendering in a conversation when none exist; edge case, artifacts get created by search route (TODO: use a different artifact renderer for Search markdown)

commit 6826c0ed4308603a842ec589edc87b277d3c17fd
Author: Danny Avila <[email protected]>
Date:   Sun Apr 27 15:13:19 2025 -0400

    πŸ™Œ a11y: Searchbar/Conversations List Focus (#7096)

    * chore: remove redundancy of useSetRecoilState and useRecoilValue with useRecoilState in SearchBar

    * refactor: remove unnecessary focus effect on text area in ChatForm

    * refactor: improve searchbar and clear search button accessibility

    * fix: add tabIndex to Conversations component for improved accessibility, moves focus directly conversation items

    * style: adjust margin in Header component for improved layout symmetry with Nav

    * chore: imports order

commit 550c7cc68a626280006a0f1d4d74d903662c7494
Author: Danny Avila <[email protected]>
Date:   Sun Apr 27 14:03:25 2025 -0400

    🧭 refactor: Modernize Nav/Header (#7094)

    * refactor: streamline model preset handling in conversation setup

    * refactor: integrate navigation and location hooks in chat functions and event handlers, prevent cache from fetching on final event handling

    * fix: prevent adding code interpreter non-image output to file list on message attachment event, fix all unhandled edge cases when this is done (treating the file download as an image attachment, undefined fields, message tokenCount issues, use of `startsWith` on undefined "text") although it is now prevent altogether

    * chore: remove unused jailbreak prop from MinimalIcon component in EndpointIcon

    * feat: add new SVG icons (MobileSidebar, Sidebar, XAIcon), fix: xAI styling in dark vs. light modes, adjust styling of Landing icons

    * fix: open conversation in new tab on navigation with ctrl/meta key

    * refactor: update Nav & Header to use close/open sidebar buttons, as well as redesign "New Chat"/"Bookmarks" buttons to the top of the Nav, matching the latest design of ChatGPT for simplicity and to free up space

    * chore: remove unused isToggleHovering state and simplify opacity logic in Nav component

    * style: match mobile nav to mobile header

commit c0ebb434a67c242a62e8c1bd37d5f854e2bd558d
Author: Danny Avila <[email protected]>
Date:   Sat Apr 26 04:30:58 2025 -0400

    🎨 feat: OpenAI Image Tools (GPT-Image-1) (#7079)

    * wip: OpenAI Image Generation Tool with customizable options

    * WIP: First pass OpenAI Image Generation Tool and integrate into existing tools

    * πŸ”€ fix: Comment out unused validation for image generation tool parameters

    * πŸ”€ refactor: Update primeResources function parameters for better destructuring

    * feat: Add image_edit resource to EToolResources and update AgentToolResources interface

    * feat: Enhance file retrieval with tool resource filtering for image editing

    * refactor: add OpenAI Image Tools for generation and editing, refactor related components, pass current request image attachments as tool resources for editing

    * refactor: Remove commented-out code and clean up API key retrieval in createOpenAIImageTools function

    * fix: show message attachments in shared links

    * fix: Correct parent message retrieval logic for regenerated messages in useChatFunctions

    * fix: Update primeResources to utilize requestFileSet for image file processing

    * refactor: Improve description for image generation tool and clarify usage conditions, only provide edit tool if there are images available to edit

    * chore: Update OpenAI Image Tools icon to use local asset

    * refactor: Update image generation tool description and logic to prioritize editing tool when files are uploaded

    * refactor: Enhance image tool descriptions to clarify usage conditions and note potential unavailability of uploaded images

    * refactor: Update useAttachmentHandler to accept queryClient to update query cache with newly created file

    * refactor: Add customizable descriptions and prompts for OpenAI image generation and editing tools

    * chore: Update comments to use JSDoc style for better clarity and consistency

    * refactor: Rename config variable to clientConfig for clarity and update signal handling in image generation

    * refactor: Update axios request configuration to include derived signal and baseURL for improved request handling

    * refactor: Update baseURL environment variable for OpenAI image generation tool configuration

    * refactor: Enhance axios request configuration with conditional headers and improved clientConfig setup

    * chore: Update comments for clarity and remove unnecessary lines in OpenAI image tools

    * refactor: Update description for image generation without files to clarify user instructions

    * refactor: Simplify target parent message logic for regeneration and resubmission cases

    * chore: Remove backticks from error messages in image generation and editing functions

    * refactor: Rename toolResources to toolResourceSet for clarity in file retrieval functions

    * chore: Remove redundant comments and clean up TODOs in OpenAI image tools

    * refactor: Rename fileStrategy to appFileStrategy for clarity and improve error handling in image processing

    * chore: Update react-resizable-panels to version 2.1.8 in package.json and package-lock.json

    * chore: Ensure required validation for logs and Code of Conduct agreement in bug report template

    * fix: Update ArtifactPreview to use startupConfig and currentCode from memoized props to prevent unnecessary re-renders

    * fix: improve robustness of `save & submit` when used from a user-message with existing attachments

    * fix: add null check for artifact index in CodeEditor to prevent errors, trigger re-render on artifact ID change

    * fix: standardize default values for artifact properties in Artifact component, avoiding prematurely setting an "empty/default" artifact

    * fix: reset current artifact ID before setting a new one in ArtifactButton to ensure correct state management

    * chore: rename `setArtifactId` variable to `setCurrentArtifactId`  for consistency

    * chore: update type annotations in File and S3 CRUD functions for consistency

    * refactor: improve image handling in OpenAI tools by using image_id references and enhance tool context for image editing

    * fix: update image_ids schema in image_edit_oai to enforce presence and provide clear guidelines for usage

    * fix: enhance file fetching logic to ensure user-specific and dimension-validated results

    * chore: add details on image generation and editing capabilities with various models

commit 0ee1dcc479f421292ad70ca7b68c507fdb61cc69
Author: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Date:   Fri Apr 25 09:21:56 2025 -0400

    🌍 i18n: Update translation.json with latest translations (#6667)

    Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

commit e467fbebfa3fe1bc988453cdd3eb0f42011a5825
Author: Daniel (dB.) Doubrovkine <[email protected]>
Date:   Fri Apr 25 09:16:46 2025 -0400

    πŸ“™ docs: CONTRIBUTING.md (#6831)

commit 7f1d01c35a7c9a916dc6d33f9f3915b4a452b4ad
Author: Danny Avila <[email protected]>
Date:   Wed Apr 23 18:56:06 2025 -0400

    πŸ”€ fix: MCP Improvements, Auto-Save Drafts, Artifact Markup (#7040)

    * feat: Update MCP tool creation to use lowercase provider name

    * refactor: handle MCP image output edge cases where tool outputs must contain string responses

    * feat: Drop 'anyOf' and 'oneOf' fields from JSON schema conversion

    * feat: Transform 'oneOf' and 'anyOf' fields to Zod union in JSON schema conversion

    * fix: artifactPlugin to replace textDirective with expected text, closes #7029

    * fix: auto-save functionality to handle conversation transitions from pending drafts, closes #7027

    * refactor: improve async handling during user disconnection process

    * fix: use correct user ID variable for MCP tool calling

    * fix: improve handling of pending drafts in auto-save functionality

    * fix: add support for additional model names in getValueKey function

    * fix: reset form values on agent deletion when no agents remain

commit 150116eefe6e0b4a0e45b1962ef11d3fc86a2533
Author: Marco Beretta <[email protected]>
Date:   Fri Apr 18 17:36:59 2025 +0200

    🎨 style: standardize dropdown styling & fix z-Index layering (#6939)

    * fix: Dropdown settings

    * refactor: classname cleanup

    * refactor: export modal

    * fix: Export dropdown

commit 52f146dd97354791d6d144a6098ae5e39206fcae
Author: Danny Avila <[email protected]>
Date:   Thu Apr 17 00:40:26 2025 -0400

    πŸ€– feat: Support `o4-mini` and `o3` Models (#6928)

    * feat: Add support for new OpenAI models (o4-mini, o3) and update related logic

    * πŸ”§ fix: Rename 'resubmitFiles' to 'isResubmission' for consistency across types and hooks

    * πŸ”§ fix: Replace hardcoded 'pending_req' with CacheKeys.PENDING_REQ for consistency in cache handling

    * πŸ”§ fix: Update cache handling to use Time.ONE_MINUTE instead of hardcoded TTL and streamline imports

    * πŸ”§ fix: Enhance message handling logic to correctly identify parent messages and streamline imports in useSSE

commit 88f4ad7c4799ab5313e48925fbf56a6559479ee4
Author: Marco Beretta <[email protected]>
Date:   Thu Apr 17 03:07:43 2025 +0200

    πŸ” refactor: Search & Message Retrieval (#6903)

    * refactor: conversation search fetch

    * refactor: Message and Convo fetch with paramters and search

    * refactor: update search states and cleanup old store states

    * refactor: re-enable search API; fix: search conversation

    * fix: message's convo fetch

    * fix: redirect when searching

    * chore: use logger instead of console

    * fix: search message loading

    * feat: small optimizations

    * feat(Message): remove cache for search path

    * fix: handle delete of all archivedConversation and sharedLinks

    * chore: cleanup

    * fix: search messages

    * style: update ConvoOptions styles

    * refactor(SearchButtons): streamline conversation fetching and remove unused state

    * fix: ensure messages are invalidated after fetching conversation data

    * fix: add iconURL to conversation query selection

    ---------

    Co-authored-by: Danny Avila <[email protected]>

commit 851938e7a68bc19ccdeeb0eb841a06717a73fc8a
Author: Danny Avila <[email protected]>
Date:   Wed Apr 16 18:14:34 2025 -0400

    πŸ”§ fix: Agent Resource Form, Convo Menu Style, Ensure Draft Clears on Submission (#6925)

    * ✨ style: Adjust z-index for popover UI and update className in ConvoOptions

    * ✨ feat: Add 'spec' field to conversation query selection

    * πŸ› οΈ fix: add back conversationId to use Constants.PENDING_CONVO in useSSE hook on submission to allow text drafts to clear

    * ✨ chore: add .clineignore to .gitignore for Cline configuration

    * ✨ refactor: memoize FileSearchCheckbox component for performance optimization

    * fix: agent resource management by adding tool_resource to agent's tools if missing

commit 6edd93f99e207c3461f06ba13020a618ee121520
Author: Peter <[email protected]>
Date:   Thu Apr 17 00:11:03 2025 +0200

    πŸ—ΊοΈ feat: Add Parameter Location Mapping for OpenAPI actions (#6858)

    * fix: action parameters are assigned to the correct location (query, parameter, header, body)

    * removed copy/paste error

    * added unit tests, only add contenttype if specified

    ---------

    Co-authored-by: Peter Rothlaender <[email protected]>

commit 16aa5ed466fa4a96df5e918a8cabd188222c2ed7
Author: Danny Avila <[email protected]>
Date:   Wed Apr 16 04:28:46 2025 -0400

    πŸ› οΈ fix: Improve Accessibility and Display of Conversation Menu (#6913)

    * πŸ“¦ chore: update @ariakit/react-core to version 0.4.17 in package.json and package-lock.json

    * refactor: add additional ariakit menu props and unmount menu if state changes

    * fix: accessibility issues and incompatibility issues due to non-portaled menu

    * fix: improve visibility and accessibility of conversation options, making sure to expand dynamically when becoming active

    * fix: adjust max width for conversation options popover to improve visibility

commit 000f3a37331463b9036cc6d7913c8dadd6a71d1c
Author: Marco Beretta <[email protected]>
Date:   Wed Apr 16 03:00:06 2025 +0200

    πŸ“’ fix: Invalid `engineTTS` and Conversation State on Navigation (#6904)

    * fix: handle invalid engineTTS values and prevent VoiceDropdown render errors

    * refactor: add verbose developer logging for debugging conversation state issues

    * refactor: remove unnecessary effect for conversationId changes

    * chore: imports

    * fix: include model and entity IDs in conversation query selection

    * feat: add fetchFreshData function to retrieve conversation data on navigation

    * fix: remove unnecessary comment in fetchFreshData function

    * chore: reorder imports in useNavigateToConvo for consistency

    ---------

    Co-authored-by: Danny Avila <[email protected]>

commit d32f34e5d7f41536a030f66db24a036b3a4b7cfb
Author: Danny Avila <[email protected]>
Date:   Tue Apr 15 18:03:56 2025 -0400

    πŸ“ fix: Mistral OCR Image Support and Azure Agent Titles (#6901)

    * fix: azure title model

    * refactor: typing for uploadMistralOCR

    * fix: update conversation ID handling in useSSE for better state management, only use PENDING_CONVO for new conversations

    * fix: streamline conversation ID handling in useSSE for simplicity, only needs state update to prevent draft from applying

    * fix: update performOCR and tests to support document and image URLs with appropriate types

commit 650e9b4f6c7e1ea063638ce10f95fbd53631f4bd
Author: Marco Beretta <[email protected]>
Date:   Tue Apr 15 10:04:00 2025 +0200

    πŸ“œ refactor: Optimize Conversation History Nav with Cursor Pagination (#5785)

    * ✨ feat: improve Nav/Conversations/Convo/NewChat component performance

    * ✨ feat: implement cursor-based pagination for conversations API

    * πŸ”§ refactor: remove createdAt from conversation selection in API and type definitions

    * πŸ”§ refactor: include createdAt in conversation selection and update related types

    * ✨ fix: search functionality and bugs with loadMoreConversations

    * feat: move ArchivedChats to cursor and DataTable standard

    * πŸ”§ refactor: add InfiniteQueryObserverResult type import in Nav component

    * feat: enhance conversation listing with pagination, sorting, and search capabilities

    * πŸ”§ refactor: remove unnecessary comment regarding lodash/debounce in ArchivedChatsTable

    * πŸ”§ refactor: remove unused translation keys for archived chats and search results

    * πŸ”§ fix: Archived Chats, Delete Convo, Duplicate Convo

    * πŸ”§ refactor: improve conversation components with layout adjustments and new translations

    * πŸ”§ refactor: simplify archive conversation mutation and improve unarchive handling; fix: update fork mutation

    * πŸ”§ refactor: decode search query parameter in conversation route; improve error handling in unarchive mutation; clean up DataTable component styles

    * πŸ”§ refactor: remove unused translation key for empty archived chats

    * πŸš€ fix: `archivedConversation` query key not updated correctly while archiving

    * 🧠 feat: Bedrock Anthropic Reasoning & Update Endpoint Handling (#6163)

    * feat: Add thinking and thinkingBudget parameters for Bedrock Anthropic models

    * chore: Update @librechat/agents to version 2.1.8

    * refactor: change region order in params

    * refactor: Add maxTokens parameter to conversation preset schema

    * refactor: Update agent client to use bedrockInputSchema and improve error handling for model parameters

    * refactor: streamline/optimize llmConfig initialization and saving for bedrock

    * fix: ensure config titleModel is used for all endpoints

    * refactor: enhance OpenAIClient and agent initialization to support endpoint checks for OpenRouter

    * chore: bump @google/generative-ai

    * ✨ feat: improve Nav/Conversations/Convo/NewChat component performance

    * πŸ”§ refactor: remove unnecessary comment regarding lodash/debounce in ArchivedChatsTable

    * πŸ”§ refactor: update translation keys for clarity; simplify conversation query parameters and improve sorting functionality in SharedLinks component

    * πŸ”§ refactor: optimize conversation loading logic and improve search handling in Nav component

    * fix: package-lock

    * fix: package-lock 2

    * fix: package lock 3

    * refactor: remove unused utility files and exports to clean up the codebase

    * refactor: remove i18n and useAuthRedirect modules to streamline codebase

    * refactor: optimize Conversations component and remove unused ToggleContext

    * refactor(Convo): add RenameForm and ConvoLink components; enhance Conversations component with responsive design

    * fix: add missing @azure/storage-blob dependency in package.json

    * refactor(Search): add error handling with toast notification for search errors

    * refactor: make createdAt and updatedAt fields of tConvoUpdateSchema less restrictive if timestamps are missing

    * chore: update @azure/storage-blob dependency to version 12.27.0, ensure package-lock is correct

    * refactor(Search): improve conversation handling server side

    * fix: eslint warning and errors

    * refactor(Search): improved search loading state and overall UX

    * Refactors conversation cache management

    Centralizes conversation mutation logic into dedicated utility functions for adding, updating, and removing conversations from query caches.

    Improves reliability and maintainability by:
    - Consolidating duplicate cache manipulation code
    - Adding type safety for infinite query data structures
    - Implementing consistent cache update patterns across all conversation operations
    - Removing obsolete conversation helper functions in favor of standardized utilities

    * fix: conversation handling and SSE event processing

    - Optimizes conversation state management with useMemo and proper hook ordering
    - Impr…
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[Bug]: Visuals stopped working with recent upgrade
3 participants