Commit Graph

1828 Commits

Author SHA1 Message Date
MyPrototypeWhat
d998604e96 fix: messages pause bug (#3343)
* refactor: Simplify message resend logic and enhance abort controller handling

- Updated MessageMenubar to streamline message resend functionality.
- Improved abort controller management in BaseProvider and related services.
- Adjusted sendMessage to handle both single and multiple assistant messages.
- Enhanced logging for better debugging and tracking of message flow.

* feat: Enhance message handling and queue management

- Updated Inputbar to include mentions in dispatched messages.
- Introduced appendMessage action to manage message insertion at specific positions in the state.
- Improved sendMessage logic to handle mentions and maintain message order.
- Refactored getTopicQueue to accept options for better queue configuration.

* refactor: Improve abort handling and message operations

- Refactored useMessageOperations to streamline message pausing logic.
- Enhanced abort controller in BaseProvider to handle abort events more effectively.
- Updated OpenAIProvider to utilize new abort handling mechanism.
- Adjusted fetchChatCompletion to set message status based on abort conditions.
- Improved message dispatching in sendMessage for better queue management.

* refactor: Enhance signal promise handling in BaseProvider and OpenAIProvider

- Updated signal handling in BaseProvider to use a structured signalPromise object for better clarity and management.
- Adjusted error handling in OpenAIProvider to correctly catch and throw errors from the signalPromise.
- Improved overall abort handling logic to ensure robust message operations.

* fix:lint
2025-03-14 17:57:33 +08:00
Xunjin ZHENG
4119eed2fd feat: Enhance API key verification and multi-key support for web search providers (#3346)
* feat(websearch): implement API key formatting and add WebSearchApiCheckPopup for multiple keys validation

- Introduced a new WebSearchApiCheckPopup component to validate multiple API keys.
- Added formatApiKeys function to standardize API key input.
- Updated WebSearchProviderSetting to utilize the new popup for checking multiple keys.
- Enhanced error handling and user feedback for API key validation.

* feat(settings): enhance API key validation for providers and web search

- Updated ApiCheckPopup to handle both provider and web search API key validation.
- Refactored key checking logic to differentiate between provider and web search types.
- Removed the obsolete WebSearchApiCheckPopup component and integrated its functionality into ApiCheckPopup.
- Adjusted WebSearchProviderSetting to utilize the updated ApiCheckPopup for checking multiple keys.
2025-03-14 17:41:38 +08:00
kangfenmao
069a66a8f5 docs: Update README and add development documentation
- Reformatted sections in README.md for better readability.
- Added new development documentation in docs/dev.md to guide setup and installation processes.
- Updated Japanese and Chinese README translations to reference the new development documentation.
2025-03-14 16:51:43 +08:00
kangfenmao
ead8e8b64e chore(workflows): Update Yarn version to 4.6.0 in CI and release workflows 2025-03-14 16:49:43 +08:00
George·Dong
6cb87f053a refactor(actions): Add nightly and pr-ci workflows 2025-03-14 16:34:23 +08:00
eeee0717
c968e4c00a fix(websearch): add apihost check button and format apihost end without '/' 2025-03-14 14:51:25 +08:00
kangfenmao
e3e94ad2ce chore(version): 1.1.3 2025-03-14 14:19:03 +08:00
kangfenmao
66cb53a51c chore: Update package.json scripts for improved build and testing workflow
- Reorganized scripts to include a new build check that runs tests, type checks, and i18n checks before publishing.
- Restored and structured type checking and linting scripts for better clarity and usability.
- Ensured post-installation dependencies are correctly handled.
2025-03-14 14:18:38 +08:00
kangfenmao
a9cbbffbe3 refactor: Update message handling and improve Inputbar functionality
- Modified Inputbar to include a new resizeTextArea function for better text area management.
- Adjusted MessageGroup and MessageStream components to remove unnecessary props and streamline message handling.
- Enhanced message dispatching logic in the messages store for improved state management.
- Cleaned up unused imports and code in Message components to enhance readability and maintainability.
2025-03-14 13:41:17 +08:00
Hao He
f1e7f90326 refactor: optimize file loader with switch-case structure
* Enhance update error logging and fix duplicate type import

- Improve error logging in AppUpdater with more detailed error information and timestamps
- Remove duplicate MCPServer type import in Inputbar component

* refactor: optimize file loader with switch-case structure
2025-03-14 13:30:21 +08:00
ousugo
9dd2a60cc6 feat(Inputbar): Add file type validation message for unsupported files
- Implemented a message notification for users when attempting to upload unsupported file types in the Inputbar component.
2025-03-14 13:20:19 +08:00
alexcodelf
ad0d860b02 feat: add model Provider GPUStack 2025-03-14 13:04:03 +08:00
kangfenmao
9df9e46ddf feat(i18n): Add baseUrlTooltip to multiple language files for improved user guidance 2025-03-14 12:35:56 +08:00
SuYao
43248322f0 feat(MCP): Support GLM-4-alltools (#3304)
- Added Gemma3 as a vision model.
- Improved functioncall model check logic.
- Introduced a new method to clean tool call arguments, ensuring proper formatting and extraction of parameters.
- Adjusted tool call handling in OpenAIProvider to accommodate new GLM-4-alltools model checks and argument processing.
2025-03-14 12:30:26 +08:00
Vaayne
163998ca0f feat(prompts): Translate prompts to English and enhance clarity 2025-03-14 11:48:56 +08:00
ousugo
3ca0a99b3c refactor(GeminiProvider): Enhance message handling for Gemma models 2025-03-14 11:47:03 +08:00
ousugo
65d89cf759 feat(GeminiProvider): Add isGemmaModel function and update model handling
Introduce isGemmaModel function to identify Gemma models and adjust system instruction handling in GeminiProvider based on model type. Ensure proper message formatting for Gemma models during chat initialization.
2025-03-14 11:47:03 +08:00
eeee0717
5f35fceb25 fix: exa return empty content 2025-03-14 11:46:32 +08:00
kangfenmao
cf12fffaea feat(Inputbar): Introduce NewContextButton and refactor context handling
- Added NewContextButton component to manage new context creation with a dedicated button.
- Refactored Inputbar to utilize the new NewContextButton, improving code organization.
- Removed deprecated context shortcut handling from Inputbar.
- Enhanced MCPToolsButton visibility logic based on model type.
2025-03-14 10:54:36 +08:00
kangfenmao
97a76200ea refactor: Update completions method signatures and enhance documentation
- Reordered parameters in completions methods across AiProvider, AnthropicProvider, GeminiProvider, and OpenAIProvider to improve consistency.
- Added detailed JSDoc comments for methods to clarify parameter usage and functionality.
- Ensured mcpTools parameter is consistently included in completions method signatures.
2025-03-14 10:44:03 +08:00
kangfenmao
8974ff89ce feat(OpenAIProvider): Add file content extraction and enhance message handling
- Implemented a method to extract file content from messages, supporting text and document types.
- Updated message parameter handling to include file content when the model does not support files.
- Added detailed JSDoc comments for new methods and existing functionalities for better documentation.
2025-03-14 10:29:59 +08:00
Vaayne
4381d6b46e fix: enhance MCPToolResponse structure and improve argument parsing in tool calls 2025-03-14 09:36:02 +08:00
Yrom Wang
950a922a8b fix: tool call handling in OpenAIProvider (#2953) 2025-03-13 22:28:59 +08:00
Chris Wan
42fc107503 fix(OpenAIProvider): Enhanced function arguments fault tolerance (#3267) 2025-03-13 21:40:02 +08:00
SuYao
a98fcfb68d fix(models): Update function_call provider check to exclude embedding models (#3281) 2025-03-13 21:35:21 +08:00
George·Dong
95782579e7 feat(AddAgentPopup, AssistantPromptSettings): Add token count display for prompts
- Implement token counting functionality in both AddAgentPopup and AssistantPromptSettings components.
- Display the token count dynamically as the user types in the prompt text area.
- Refactor text area components to include a styled token count indicator.
2025-03-13 21:25:58 +08:00
Hao He
2d1d644c3c Fix/fs-rmdir-deprecation (#3296) 2025-03-13 20:45:45 +08:00
Xat
de1305e7db fix(settings): Change padding to margin in SettingHelpLink styling 2025-03-13 18:29:03 +08:00
George·Dong
add699ef03 fix(BaseProvider, KnowledgeService): Enhance getMessageContent() & getKnowledgeBaseReferences()
- handle empty message content
2025-03-13 18:20:41 +08:00
beyondkmp
87c22aa52c patch epub: replace zipfile with zipread 2025-03-13 18:01:39 +08:00
ousugo
130d4067ef fix(TopicsTab): Ensure active topic is updated correctly on deletion
- Added a check to update the active topic only if the deleted topic is currently active, preventing potential errors in topic navigation.
2025-03-13 17:58:07 +08:00
Carter Cheng
2548004d15 fix(ui): improve chat navigation buttons UX and fix scroll interference
This commit enhances the chat navigation buttons with a more intelligent
visibility system that prevents interference with scrolling while maintaining
easy access to navigation controls.

Key improvements:
- Replace static trigger area with dynamic cursor position tracking to allow
  unobstructed scrolling
- Show navigation buttons only when cursor is near the button area or when
  actively interacting with them
- Add throttled mouse position detection (50ms) for better performance
- Use passive scroll event listeners for smoother scrolling
- Implement smarter auto-hide behavior with 1.5s timeout when cursor leaves
  the button area

This change resolves the issue where navigation buttons would interfere with
scrolling when the cursor was in the detection area, creating a more seamless
user experience.
2025-03-13 17:56:06 +08:00
ousugo
0d8714f8dc fix(export): Improve error handling and success messaging for markdown export
- Added result check after saving markdown files to ensure success messages are only shown when the save operation is successful.
- Standardized error message keys for consistency.
2025-03-13 17:51:51 +08:00
MyPrototypeWhat
aa8f79ecc9 fix(MessageMenubar, useMessageOperations): Enhance loading state handling
- Added loading state checks in MessageMenubar to prevent actions during loading.
- Updated useMessageOperations to await database updates for message operations.
- Improved error handling for message edits and resends to ensure proper state management.
2025-03-13 17:51:17 +08:00
suyao
17ce23b678 fix(OpenAIProvider): Add type property to thinking model 2025-03-13 17:32:51 +08:00
MyPrototypeWhat
066c8e1c29 fix:Resolve bug where clearing context was invalid 2025-03-13 16:35:09 +08:00
MyPrototypeWhat
968750f870 fix:https://github.com/CherryHQ/cherry-studio/issues/3249
- Removed ContextMenuOverlay component and integrated its styles directly into the Dropdown component for cleaner code.
2025-03-13 14:40:04 +08:00
牡丹凤凰
31105567d2 Update README.ja.md 2025-03-13 14:16:41 +08:00
牡丹凤凰
d4cefa6481 Update README.zh.md 2025-03-13 14:16:19 +08:00
牡丹凤凰
bfc256abbb Update README.md 2025-03-13 14:15:51 +08:00
kangfenmao
3682368eb1 chore(version): 1.1.2 2025-03-13 07:57:34 +08:00
kangfenmao
50e6e1b2b1 fix(MCPSettings, OpenAIProvider): Update settings and content handling
- Prevent modal from closing on mask click in MCPSettings
- Ensure tool call response content is properly formatted as a string in OpenAIProvider
2025-03-13 00:43:41 +08:00
ousugo
da5ea7b8cd refactor(PaintingsList): Reposition new painting button
Move the NewPaintingButton component to be rendered before the DragableList and remove unnecessary margin-top styling
2025-03-13 00:03:14 +08:00
ousugo
b448021076 feat(PaintingsStore): Modify painting addition order
Change addPainting method to use unshift instead of push, ensuring new paintings are added to the beginning of the list
2025-03-13 00:03:14 +08:00
Chris Wan
d9e336f136 fix(MCPSettings): MCP server environment variables parsing error
If there is one or more equal (=) sign in value part, all would be lost
2025-03-13 00:02:04 +08:00
suyao
c02a06ba7b refactor(Proxy): Improve system proxy monitoring and configuration handling 2025-03-13 00:01:17 +08:00
suyao
58b730320f refactor(Proxy): Update proxy configuration handling 2025-03-13 00:01:17 +08:00
kangfenmao
3c819b8379 fix(package): update @modelcontextprotocol/sdk to use a patch for platform-specific shell handling 2025-03-12 23:59:18 +08:00
kangfenmao
3820df7645 chore(version): 1.1.1 2025-03-12 20:31:41 +08:00
MyPrototypeWhat
5dfae94e24 fix: abortError handle 2025-03-12 20:19:48 +08:00