* fix: update model checks to include supported reasoning and thinking token models
* fix: simplify thinking button visibility logic in Inputbar component
* feat(OpenAI): new Responses API support
- Added OpenAICompatibleProvider to handle requests for OpenAI-compatible models.
- Updated ProviderSettings to reflect changes in provider types from 'openai' to 'openai-compatible'.
- Enhanced model validation and response handling in OpenAIProvider to support new input formats.
- Refactored existing components to accommodate the new provider structure and ensure compatibility with OpenAI's response API.
- Incremented store version to 98 to reflect changes in provider types and settings.
- Updated migration logic to convert existing 'openai' provider types to 'openai-compatible' where applicable.
* refactor(OpenAI): update model validation and response handling
- Renamed `isOpenAIModel` to `isOpenAILLMModel` for clarity in model type checking.
- Updated references to the new model validation function across `OpenAICompatibleProvider` and `OpenAIProvider`.
- Enhanced web search model validation logic to accommodate new model checks.
- Refactored `getOpenAIWebSearchParams` to return structured parameters based on model type.
- Improved citation formatting in message blocks for better web search results handling.
* fix(OpenAICompatibleProvider): reset timestamps for first token handling
- Updated logic to reset timestamps for the first token and content when no prior thinking content is present.
- Added comments for clarity on the purpose of the changes and marked a temporary fix for timestamp handling.
* refactor(OpenAICompatibleProvider): improve code readability with consistent formatting
* fix(OpenAIProvider): refine service tier logic for model identification
* fix: eslint error
* fix(OpenAIProvider): enhance response metrics tracking in streaming process
* feat(OpenAIProvider): add timeout handling for model requests
---------
Co-authored-by: 自由的世界人 <3196812536@qq.com>
* refactor: add Linux support for margin adjustments in MinappPopupContainer and McpSettingsNavbar
* refactor: adjust margin and padding for Linux support in MinappPopupContainer and McpSettingsNavbar
* refactor: enhance Linux support in MinappPopupContainer by updating button group class condition
* feat: TextEditPopup support translation assistant
* polish: ensure safe state updates in TextEditPopup during unmount
* test: make delay assertion more lenient in unclassified utils tests
* feat: add loading indicator to translation button in TextEditPopup
* feat: 支持自定义助手地址
feat: 支持自定义助手地址
* feat: 更新多语言支持,添加“defaultaides”字段至隐私设置,并修改默认智能体的值为设置中的引用。
* feat: 更新默认助手设置,修复函数命名错误并优化状态管理
* refactor: update agent loading logic to use settings and improve error handling
* refactor: update DefaultaidesSettings to use custom hook for state management and replace icon in DataSettings
* fix: improve error message formatting in callMCPTool function
* feat: 添加多语言支持的默认助手设置,包括英文、日文、俄文和中文的翻译。
* refactor: 优化智能体加载逻辑,合并本地和远程智能体,并改进错误处理。
* feat: add import functionality for agents and update translations in multiple languages.
* feat: implement agent import functionality with validation and error handling.
* feat(i18n): add import success and error messages for agents in multiple languages.
* fix(i18n): standardize import success message key across multiple languages.
* refactor(i18n): remove default aides section from multiple language files
* refactor(i18n): update Traditional Chinese translations for agent management and privacy settings.
* feat(i18n): add import functionality for agents with URL and file options, including error handling and translations in multiple languages.
* refactor(i18n): rename 'defaultaides' to 'defaultAgent' across multiple language files and update related settings.
* refactor(AgentsPage): remove unused addAgent function from useAgents hook.
---------
Co-authored-by: 上房揭瓦 <hoaobo@foxmail.com>
Co-authored-by: George Zhao <georgezhao@SKJLAB>
Co-authored-by: suyao <sy20010504@gmail.com>
* chore(dependencies): update electron-builder and related dependencies to version 26.0.15
* chore(electron-builder): update portable build configuration and clean up artifact build script
- Set buildUniversalInstaller to false for portable builds in electron-builder configuration.
- Removed obsolete condition for deleting portable files in artifact build completion script.
* fix(OpenAIProvider): enhance token budget calculation in OpenRouter
* fix(OpenAIProvider): update budget token calculation and adjust effort ratio for improved reasoning support
feat(messageOperations): add editMessageBlocks functionality and update message handling logic
- Introduced editMessageBlocks to update properties of message blocks.
- Enhanced editMessage to include error handling and logging.
- Updated useTopicMessages to accept topic ID directly.
- Refactored MessageMenubar to utilize editMessageBlocks for editing messages.
- Improved saveMessageAndBlocksToDB for better state management.
* feat: implement store synchronization across windows
- Added new IPC channels for store synchronization: StoreSync_Subscribe, StoreSync_Unsubscribe, StoreSync_OnUpdate, and StoreSync_BroadcastSync.
- Integrated store sync service in various components, including the main IPC handler and renderer store.
- Removed the MiniWindowReload IPC channel as it was no longer needed.
- Updated the store configuration to support synchronization of specific state slices.
* refactor: remove custom CSS functionality from IPC and related components
- Removed the App_SetCustomCss channel and associated handlers from the IPC and ConfigManager.
- Updated the renderer components to eliminate references to custom CSS settings.
- Refactored the MiniWindow component to manage custom CSS directly without IPC communication.
- Added new IPC channels for store synchronization: StoreSync_Subscribe, StoreSync_Unsubscribe, StoreSync_OnUpdate, and StoreSync_BroadcastSync.
- Integrated store sync service in various components, including the main IPC handler and renderer store.
- Removed the MiniWindowReload IPC channel as it was no longer needed.
- Updated the store configuration to support synchronization of specific state slices.
* feat: implement ThinkingPanel for managing reasoning effort and token limits
- Added ThinkingPanel component to handle user settings for reasoning effort and thinking budget.
- Introduced ThinkingSelect and ThinkingSlider components for selecting reasoning effort and adjusting token limits.
- Updated models and hooks to support new reasoning effort and thinking budget features.
- Enhanced Inputbar to integrate ThinkingPanel and provide a toggle for enabling thinking features.
- Updated translations and styles for new components.
* refactor: enhance ThinkingPanel and related components for improved reasoning effort management
- Updated ThinkingPanel to streamline token mapping and error messaging.
- Refactored ThinkingSelect to utilize a list for better UI interaction.
- Enhanced ThinkingSlider with styled components for a more intuitive user experience.
- Adjusted model checks in the configuration to support new reasoning models.
- Improved translations for clarity and consistency across languages.
* feat: close ThinkingPanel on outside click
* feat(icons): add new lightbulb icons and update reasoning effort settings in translations
- Introduced new SVG icons for lightbulb states (off, on at 10%, 50%, and 90%).
- Added "Off" reasoning effort option in English, Japanese, Russian, Simplified Chinese, and Traditional Chinese translations.
- Refactored Inputbar and ThinkingButton components to integrate new reasoning effort logic and icon display.
* feat(thinking): refactor reasoning effort management and introduce new lightbulb icon
- Removed ThinkingPanel, ThinkingSelect, and ThinkingSlider components to streamline reasoning effort management.
- Added new MdiLightbulbAutoOutline icon for the auto reasoning effort option.
- Updated reasoning effort logic in ThinkingButton to support 'auto' and fallback options.
- Enhanced translations for reasoning effort options across multiple languages.
- Adjusted model configurations to integrate new reasoning effort settings.
* refactor(messageThunk): update multi-model dispatch logic for improved assistant handling
- Changed the parameter from baseAssistantId to assistant object for better clarity.
- Updated tasksToQueue structure to include assistant configuration instead of just ID and model.
- Enhanced the creation of assistant messages to utilize the full assistant object.
* chore(messageThunk): remove unused comment for clarity in multi-model response handling
* fix(ThinkingButton): update quick panel title for reasoning effort settings
* fix(GeminiProvider, OpenAIProvider): apply Math.floor to budget calculations for improved accuracy
---------
Co-authored-by: ousugo <dkzyxh@gmail.com>
Co-authored-by: Teo <cheesen.xu@gmail.com>