2372 Commits

Author SHA1 Message Date
kangfenmao
88143ba695 chore: update LLM providers and migration logic
- Incremented the version of the persisted reducer from 80 to 81.
- Introduced a new constant `INITIAL_PROVIDERS` to define the initial state of LLM providers.
- Refactored migration functions to utilize `INITIAL_PROVIDERS` for adding providers to the state, improving maintainability and readability.
- Updated migration logic to ensure new providers are added correctly during state migrations.
2025-03-19 13:48:41 +08:00
Chen Tao
0ddcecabdf
feat: support Github Copilot (#2432)
* feat: support Github Copilot

* feat: finish i18n translate

* fix: add safeStorage

* clean code

* chore: remove vision model

*  feat: add Model Context Protocol (MCP) support (#2809)

*  feat: add Model Context Protocol (MCP) server configuration (main)

- Added `@modelcontextprotocol/sdk` dependency for MCP integration.
- Introduced MCP server configuration UI in settings with add, edit, delete, and activation functionalities.
- Created `useMCPServers` hook to manage MCP server state and actions.
- Added i18n support for MCP settings with translation keys.
- Integrated MCP settings into the application's settings navigation and routing.
- Implemented Redux state management for MCP servers.
- Updated `yarn.lock` with new dependencies and their resolutions.

* 🌟 feat: implement mcp service and integrate with ipc handlers

- Added `MCPService` class to manage Model Context Protocol servers.
- Implemented various handlers in `ipc.ts` for managing MCP servers including listing, adding, updating, deleting, and activating/deactivating servers.
- Integrated MCP related types into existing type declarations for consistency across the application.
- Updated `preload` to expose new MCP related APIs to the renderer process.
- Enhanced `MCPSettings` component to interact directly with the new MCP service for adding, updating, deleting servers and setting their active states.
- Introduced selectors in the MCP Redux slice for fetching active and all servers from the store.
- Moved MCP types to a centralized location in `@renderer/types` for reuse across different parts of the application.

* feat: enhance MCPService initialization to prevent recursive calls and improve error handling

* feat: enhance MCP integration by adding MCPTool type and updating related methods

* feat: implement streaming support for tool calls in OpenAIProvider and enhance message processing

* fix: finish_reason undefined

* fix migrate

* feat: add rate limit and warning

* feat: add delete copilot token file

feat: add login message

feat: add default headers and change getCopilotToken algorithm

* fix

* feat: add rate limit

* chore: change apihost

* fix: remove duplicate apikey

* fix: change api host

* chore: add vertify first tooltip

---------

Co-authored-by: 亢奋猫 <kangfenmao@qq.com>
Co-authored-by: LiuVaayne <10231735+vaayne@users.noreply.github.com>
2025-03-19 13:24:50 +08:00
Zhengfei Li
f9f2586dc4
opt: optimise local dev with fixed yarn (#3456) 2025-03-19 13:18:11 +08:00
d5v
e8ae776084 feat: image attachment copy and download (#3488) 2025-03-19 13:16:01 +08:00
yuna0x0
9655b33903 fix(GeminiProvider): filterEmptyMessages in Gemini provider 2025-03-19 13:14:29 +08:00
fullex
1a2a382916 fix: too many listeners 2025-03-19 13:10:53 +08:00
SuYao
16d9be4ce4
feat: Support search info with search summary model (#2443)
* feat: Add search summary model and related functionality

- Introduce new search summary model configuration in settings
- Implement search summary prompt and model selection
- Add support for generating search keywords across providers
- Update localization files with new search summary model translations
- Enhance web search functionality with search summary generation

* refactor: Improve web search error handling and async flow

* fix: Update migration version for settings search summary prompt

* refactor(webSearch): Remove search summary model references from settings and localization files

- Deleted search summary model entries from English, Japanese, Russian, Chinese, and Traditional Chinese localization files.
- Refactored ModelSettings component to remove search summary model handling.
- Updated related services and settings to eliminate search summary model dependencies.

* refactor(llm): Remove search summary model from state and related hooks
2025-03-19 13:09:47 +08:00
shiquda
8374cd508d feat: enable automatic conversion of math code to $$ during export 2025-03-19 13:08:13 +08:00
PilgrimLyieu
e0ba3b8968 feat(PlantUML): Add zoom and copy functionality to PlantUML image component 2025-03-19 13:07:30 +08:00
schnee
68acbe8f3d docs: update the contributor guide link in readme 2025-03-19 12:47:23 +08:00
Chen Tao
68d7815332
fix: knowledgebase rerank undefined (#3561)
* fix: knowledgebase rerank undefined

* chore
2025-03-19 11:22:35 +08:00
Hao He
6ab0a89a98
Fix/knowledge-file-ext-case (#3545) 2025-03-18 23:10:16 +08:00
eeee0717
15ab8407e4 chore: fetch rerank model and fix placeholder 2025-03-18 21:47:06 +08:00
eeee0717
b50f8a4c11 feat(knowledge base): enhance knowledge base with rerank model 2025-03-18 21:47:06 +08:00
kangfenmao
359f6e36e9 chore(version): 1.1.7 2025-03-18 20:29:20 +08:00
George·Dong
a04757c0d9 fix(NewContextButton): Incorrect relation to showInputEstimatedTokens setting 2025-03-18 20:14:43 +08:00
kangfenmao
ab8600864e refactor: implement useNavBackgroundColor hook for dynamic navbar background
- Replaced direct background color logic in Navbar and Sidebar components with useNavBackgroundColor hook for improved maintainability.
- Updated navbar background color variable in index.scss for consistency across components.
- Enhanced handling of background color based on window style and application state.
2025-03-18 19:53:11 +08:00
deadmau5v
d22a101fd1
feat(quick-assistant): Add setting - Auto-paste to Quick Assistant (#3484)
* feat(quick-assistant): Add setting - Auto-paste to Quick Assistant

* refactor(quick-assistant): Rename `auto_paste_to_quick_assistant` to `read_clipboard_at_startup`

- Rename the "auto_paste_to_quick_assistant" feature to "read_clipboard_at_startup"
2025-03-18 19:51:54 +08:00
fullex
2d1ab70818
fix: [ #3221 ] should not enable shortcut of quickAssistant when it's not available (#3228) 2025-03-18 18:06:08 +08:00
Chris Wan
99ac5986ee feat: add hunyuan to function calling models 2025-03-18 18:03:07 +08:00
kangfenmao
9ae7c5101e chore: update LICENSE agreement with clearer commercial use terms
- Revised commercial licensing section to specify conditions requiring written authorization for modifications, enterprise services, hardware bundling, large-scale procurement, and public cloud services.
- Enhanced clarity in contributor agreement terms regarding license adjustments and commercial usage of contributed code.
- Updated language for better understanding and compliance with Apache License 2.0.
2025-03-18 18:01:29 +08:00
kangfenmao
889331005e fix: correct apiKey URL in provider configuration 2025-03-18 18:00:52 +08:00
ousugo
b3fbe35efe refactor: add isNameManuallyEdited flag to topic management
- Introduced isNameManuallyEdited property to the Topic type for better tracking of manual edits.
- Updated topic update logic to set isNameManuallyEdited based on user actions in the TopicsTab.
- Enhanced autoRenameTopic function to respect manual edits and prevent automatic renaming when applicable.
2025-03-18 17:55:46 +08:00
Pleasurecruise
3fdbb5a9da fix: update url 2025-03-18 17:38:53 +08:00
Konjac-XZ
5b0b36dc5c fix: trim() in Translation may result in malformed Markdown output for certain models. 2025-03-18 17:33:32 +08:00
shiquda
60eb08a982
feat: add support for citation preview (#3354)
* feat: add support for citation preview

#3217

* feat(MessageContent): Add HTML entity encoding to enhance the security of quoted data

* fix(MessageContent): recognize citation format like `[[1]]`
2025-03-18 16:48:07 +08:00
kangfenmao
570d6aeaf1 feat(i18n): add support for pasted text and images in message attachments across multiple languages
- Introduced new translations for "Pasted Text" and "Pasted Image" in English, Japanese, Russian, Simplified Chinese, and Traditional Chinese.
- Updated FileManager to format file names based on their type, enhancing user experience when handling pasted content.
2025-03-18 16:34:13 +08:00
kangfenmao
8df09b4ecc style: Add .selectable class to Container for improved text selection handling 2025-03-18 15:36:01 +08:00
lizhixuan
d35f15574e style: Disable text selection globally with selective text input exceptions 2025-03-18 15:04:30 +08:00
PilgrimLyieu
f21bf3d860 fix(mermaid): Mermaid theme not change after theme toggling 2025-03-18 14:38:50 +08:00
kangfenmao
4dacea04a6 fix: mini window send message 2025-03-18 14:37:59 +08:00
happyZYM
4939fc8b03
fix: fix uv and bun install on linux (#3514) 2025-03-18 13:58:20 +08:00
kangfenmao
b4c71b4dd3 refactor: enhance theme handling and style adjustments in MinApp and Navbar components
- Added theme context usage in MinApp for dynamic background styling based on the current theme.
- Updated Navbar component by removing the AssistantSettingsPopup and associated TitleText for a cleaner interface.
- Adjusted border radius in MessageHeader for a more consistent design across components.
2025-03-18 13:41:16 +08:00
kangfenmao
6870390b9f refactor: update styles and theme handling in Sidebar and MessageHeader components
- Removed box-shadow from container styles for a cleaner look.
- Adjusted color variables for better contrast and consistency across themes.
- Enhanced Sidebar component to utilize theme context for icon styling.
- Modified MessageHeader to change font size and apply a specific font family for better readability.
2025-03-18 13:11:40 +08:00
d5v
495656ec9d fix: MCP switch button display bug (#3481) 2025-03-18 12:06:07 +08:00
Vaayne
1e4bc56780 refactor: update tool content handling for GPT and Dashscope models in OpenAIProvider 2025-03-18 10:53:25 +08:00
Vaayne
48a6c4d017 refactor: handle tool content differently for doubao and deepseek models in OpenAIProvider 2025-03-18 10:53:25 +08:00
kangfenmao
e5342cd414 chore(version): 1.1.5 2025-03-17 18:12:30 +08:00
kangfenmao
2941aadd0f refactor: improve proxy configuration handling in IPC 2025-03-17 18:00:42 +08:00
kangfenmao
4597d2a930 lint: fix eslint 2025-03-17 17:56:26 +08:00
kangfenmao
456ad612aa refactor: enhance MCPService error handling and improve loading state in MCPSettings
- Updated MCPService to use a dedicated method for setting server active status upon activation errors, improving code clarity.
- Added loading state management in MCPSettings to provide user feedback during server activation toggles, enhancing the user experience.
2025-03-17 17:46:51 +08:00
kangfenmao
899c183c5c refactor: improve installation scripts for bun and uv with success logging
- Updated the installation scripts for bun and uv to log success messages upon successful completion.
- Enhanced error handling to maintain existing functionality while providing clearer feedback during installation.
2025-03-17 17:38:37 +08:00
kangfenmao
a83c153531 refactor: simplify bun and uv installation scripts for improved clarity and functionality
- Removed the getLatestBunVersion and getLatestUvVersion functions to streamline version handling.
- Updated download functions to use temporary filenames and ensure proper cleanup of downloaded files.
- Enhanced directory management by ensuring the output directory is correctly referenced and cleaned up if empty.
- Refactored the install functions to directly use detected platform and architecture, improving readability and maintainability.
2025-03-17 17:25:56 +08:00
kangfenmao
6a187fd370 refactor: update AttachmentButton styling and integrate into Inputbar
- Adjusted the font size of the PaperClipOutlined icon in the AttachmentButton for better visibility.
- Integrated the AttachmentButton into the Inputbar component, replacing the TranslateButton in one instance for improved functionality.
2025-03-17 15:40:41 +08:00
kangfenmao
827d5c58d0 refactor: update file type handling and sorting in FilesPage component
- Changed the default file type state to 'document' for better initial filtering.
- Introduced a temporary file sorting function to prioritize non-temporary files in the displayed list.
- Adjusted the file retrieval logic to apply sorting consistently for both 'all' and specific file types.
2025-03-17 15:24:26 +08:00
kangfenmao
e11bb16307 feat: add provider alayanew 2025-03-17 15:08:48 +08:00
Vaayne
b316c3ae64 feat: enhance OpenAIProvider to handle diverse content types in tool responses 2025-03-17 14:40:56 +08:00
kangfenmao
07ad7f0622 refactor: streamline argument handling in MCPService activation method
- Updated the MCPService's activate method to handle server arguments more efficiently by using a fallback to an empty array if no arguments are provided.
- This change improves the clarity and robustness of the argument management within the service.
2025-03-17 14:02:13 +08:00
kangfenmao
0863cfb2af refactor: update MCPService and process utilities for improved binary management
- Refactored MCPService to streamline command handling for 'npx' and 'uvx', removing unnecessary installation checks and directly retrieving binary paths.
- Updated getBinaryPath and isBinaryExists functions to be asynchronous, enhancing their reliability in checking binary existence and paths.
- Cleaned up imports and removed unused dependencies for better code clarity.
2025-03-17 13:47:33 +08:00
kangfenmao
0e44f9cd2a refactor: reorganize DisplaySettings component for improved layout
- Moved the assistant icon settings to a new position within the DisplaySettings component for better user experience.
- Cleaned up the code by removing redundant sections and ensuring consistent structure in the settings layout.
2025-03-17 13:11:38 +08:00