Commit Graph

58 Commits

Author SHA1 Message Date
Chen Tao
4adc12cfb4 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
eeee0717
0ba95353df feat(knowledge base): enhance knowledge base with rerank model 2025-03-18 21:47:06 +08:00
kangfenmao
0c3e623819 refactor: improve proxy configuration handling in IPC 2025-03-17 18:00:42 +08:00
kangfenmao
667e4426a5 feat: refactor IPC handlers for binary management and update localization strings
commit 97d251569690462763810270ad850ad6b0057ac9
Author: kangfenmao <kangfenmao@qq.com>
Date:   Mon Mar 17 10:24:43 2025 +0800

    feat: refactor IPC handlers for binary management and update localization strings

    - Simplified IPC handlers for checking binary existence and retrieving binary paths by removing unnecessary await statements.
    - Updated localization strings in English, Japanese, Russian, Simplified Chinese, and Traditional Chinese to change "Install Dependencies" to "Install".
    - Removed the MCPSettings component, replacing it with a new InstallNpxUv component for better management of binary installations.

commit d0f6039c7659a0f4cc97555434999c731ea07f9f
Author: Vaayne <liu.vaayne@gmail.com>
Date:   Sun Mar 16 23:52:18 2025 +0800

    feat: enhance showAddModal to pre-fill form with server details

commit dde8253dc8bdffb482b9af19a07bc89886a19d3a
Author: Vaayne <liu.vaayne@gmail.com>
Date:   Sun Mar 16 23:27:17 2025 +0800

    feat: add binary management APIs and enhance MCP service for dependency installation

commit d8fda4b7b0e238097f1811850517bd56fe0de0df
Author: Vaayne <liu.vaayne@gmail.com>
Date:   Sun Mar 16 21:57:34 2025 +0800

    fix: improve error logging in MCPService and streamline tool call response handling in OpenAIProvider

commit e7af2085a66989d9be546701e4f5308e1008cb18
Author: Vaayne <liu.vaayne@gmail.com>
Date:   Sun Mar 16 15:14:32 2025 +0800

    fix: lint

commit 2ef7d16298a1270df26974158140015b8cbd91bc
Author: Vaayne <liu.vaayne@gmail.com>
Date:   Sat Mar 15 21:11:26 2025 +0800

    feat: implement uv binary installation script and integrate with MCP service

commit d318b4e5fc8b506e6d4b08490a9e7ceffe9add80
Author: Vaayne <liu.vaayne@gmail.com>
Date:   Sat Mar 15 20:28:58 2025 +0800

    feat: add uv binary installation script and enhance MCP service command handling
2025-03-17 10:25:48 +08:00
kangfenmao
5cefbbcdaa refactor(MCP): Simplify IPC handlers and improve server management 2025-03-11 13:52:36 +08:00
kangfenmao
5d9089ff79 refactor(MCPService): Rename MCP service file and implement comprehensive server management 2025-03-11 10:08:38 +08:00
suyao
8639333ace feat(Proxy): Implement proxy management system
- Add ProxyManager service to handle system, custom, and no proxy configurations
- Integrate proxy support for Gemini, Knowledge, and WebDav services
- Add fetch-socks and undici for advanced proxy handling
- Enhance proxy configuration with environment variable and session management
2025-03-11 09:56:40 +08:00
Vaayne
ad3b13352f feat(MCPService): Implement IPC communication for server management and updates 2025-03-11 09:55:59 +08:00
kangfenmao
0d64965ef7 refactor: Extract file path utility functions
Move hardcoded file path generation logic to dedicated utility functions in file.ts, improving code modularity and reducing duplication across services and IPC handlers
2025-03-09 17:33:46 +08:00
LiuVaayne
8fc69ec679 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
2025-03-06 11:35:29 +08:00
kangfenmao
f728230793 feat(app-update): Refactor update handling and add manual update dialog
- Modify AppUpdater to separate update dialog logic
- Add new IPC handler for manually showing update dialog
- Update renderer hooks and store to track downloaded update state
- Switch import for UpdateInfo from electron-updater to builder-util-runtime
2025-03-05 14:33:10 +08:00
kangfenmao
379e92918d revert: some proxy errors in main process (#2294) 2025-03-01 23:17:44 +08:00
SuYao
f1e6f6b78f fix: some proxy errors in main process (#2294)
* formatter proxy config type

* fix: some proxy errors in main process

* chore: Remove debug logging in ProxyManager
2025-02-27 16:46:05 +08:00
kangfenmao
f62caba4e9 feat: add aihubmix oauth 2025-02-07 22:27:28 +08:00
kangfenmao
e35af87035 feat: add file reading functionality and integrate system agents
- Introduced FileService to handle file reading operations via IPC.
- Implemented a new IPC handler for reading files, enhancing the application's ability to access and manage data.
- Integrated system agents from a JSON file, allowing dynamic loading of agent data into the application.
- Updated the AgentsPage and AddAssistantPopup components to utilize the new system agents, improving user experience and functionality.
- Enhanced application state management by adding resourcesPath to the runtime state, ensuring proper resource handling across components.
2025-01-22 14:35:38 +08:00
kangfenmao
6692f6035d feat: add a startup switch for quick assistant 2025-01-19 19:22:25 +08:00
kangfenmao
0f3c7aa648 feat: add mini window 2025-01-19 13:59:32 +08:00
Nanami
82266800e6 feat: add support for qwenlm and image upload (#726)
* feat: add support for qwenlm and image upload

* fix: qwenlm return

* feat: add provider config
2025-01-14 18:59:19 +08:00
kangfenmao
509566dc07 fix: @google/generative-ai local compilation issue #682
close #682
2025-01-07 23:18:18 +08:00
kangfenmao
b4da93da74 feat: add gemini files support 2025-01-07 16:49:11 +08:00
kangfenmao
3f44e1e4ac fix: the minimum width limit of the window is too large #544
close #544
2025-01-06 16:25:00 +08:00
kangfenmao
3e64fa2025 fix: knowledge bugs 2024-12-23 10:48:40 +08:00
kangfenmao
7cb381be40 feat: knowledge base 2024-12-19 09:24:20 +08:00
kangfenmao
7ecf3f093c style: update api key input field formatting and validation 2024-12-03 12:24:25 +08:00
kangfenmao
5a6d2652f0 refactor: shortcuts feature 2024-12-03 10:23:53 +08:00
kangfenmao
e47311afd2 feat: add shortcut feature 2024-12-02 18:03:38 +08:00
kangfenmao
f253ca4103 fix: update ipc handle to retrieve update information 2024-11-30 20:22:00 +08:00
kangfenmao
b007f8a437 fix: proxy 2024-11-25 15:57:16 +08:00
kangfenmao
4a37192961 feat: clear app cache 2024-11-25 11:16:24 +08:00
kangfenmao
0581c347f6 feat: improve proxy configuration handling 2024-11-23 14:21:08 +08:00
kangfenmao
518a3b26b6 feat: added data folder 2024-11-19 18:48:57 +08:00
kangfenmao
1bd190e986 feat: added proxy settings and handling functionality 2024-11-18 14:05:17 +08:00
injurka
bc479a999d feat: added settings for minimize to tray instead of closing 2024-11-11 23:49:18 +08:00
kangfenmao
b34de79ca3 feat: add the ability to display the application in tray #297 2024-11-09 08:42:09 +08:00
kangfenmao
a81960bd7b chore(version): 0.8.10 2024-11-07 23:06:42 +08:00
injurka
ddc39d1fd4 added locale for context-menu 2024-11-06 22:09:28 +08:00
kangfenmao
bddedb7759 refactor: main code 2024-11-02 23:32:59 +08:00
kangfenmao
2f05435ce6 feat: export to word 2024-11-02 21:45:23 +08:00
kangfenmao
3b08ee2720 feat: added file download functionality and improved api 2024-10-30 00:32:27 +08:00
kangfenmao
1cbe342940 feat: use real file path 2024-10-27 18:58:23 +08:00
kangfenmao
051d46bf5d fix: old version of the backup file cannot be restored. 2024-10-12 10:09:52 +08:00
kangfenmao
dde77d03e2 feat: add webdav settings component and backup user data files #69 2024-09-29 16:44:18 +08:00
kangfenmao
4bddbb04ce feat: backup all files
1. remove window.api.compress window.api.decompress
2024-09-27 22:35:22 +08:00
kangfenmao
31626bde46 feat: export topic message as image #103 2024-09-22 00:16:36 +08:00
kangfenmao
ca3150c6ed feat: Improved file management and added new features.
- Updated file manager to use FileManager class instead of File class.
- Improved file management functionality with features for finding duplicate files, file uploading, and storage management.
- Added styles to wrap and truncate text in a no-drag area.
- Added explicit file extensions to imageExts constant.
- Added the 'paste long text as file' input setting.
- Added image file display and UI improvements for file names and overflow.
- Improved file paste and long text handling functionality.
- awaited onSendMessage function call and added message to chat completion.
- Implemented new option to paste long text as file in the Settings page.
- Updated content display logic to include file origin name along with the file content for text files.
- Improved functionality for handling image and text file contents in the Gemini chat provider.
- Updated file content formatting logic for text files with origin name and content prefix.
- Added a new setting "pasteLongTextAsFile" and its corresponding action to the application settings.
2024-09-19 10:51:30 +08:00
kangfenmao
540f0126d8 feat: copy and paste files or images 2024-09-18 21:18:42 +08:00
kangfenmao
b9bb0c0f40 feat: add file attachment 2024-09-18 18:00:49 +08:00
kangfenmao
3e8a00f3a5 fix: backup and restore 2024-09-16 14:59:42 +08:00
kangfenmao
7eb56ef2d1 refactor: update file management to use filetype instead of filemetadata 2024-09-14 16:08:43 +08:00
kangfenmao
be6c2c14b7 refactor: remove sqlite3 use dexie 2024-09-14 15:25:56 +08:00