Skip to content

Conversation

@sxjeru
Copy link
Contributor

@sxjeru sxjeru commented Jan 4, 2026

💻 Change Type

  • ✨ feat
  • 🐛 fix
  • ♻️ refactor
  • 💄 style
  • 👷 build
  • ⚡️ perf
  • ✅ test
  • 📝 docs
  • 🔨 chore

🔗 Related Issue

🔀 Description of Change

继承自 #9442


  • 模型抓取允许获取本地配置已有的 extendParams 和 searchSetting
  • searchSetting 限定仅 aihubmix、newapi 等透传 providers 可抓取获得
  • extendParams 限定仅透传 providers 可抓取获得所有参数,否则仅 openai/gemini 系模型参数
  • 模型配置界面支持修改 extendParams
  • 重构 extendParams 元件

主要效果,让抓取的模型也支持附加参数功能(和模型内置搜索功能),也允许自行调整单个模型的附加参数功能。

UI 预览:

image

🧪 How to Test

  • Tested locally
  • Added/updated tests
  • No tests needed

📸 Screenshots / Videos

Before After
... ...

📝 Additional Information

sxjeru and others added 6 commits January 3, 2026 22:50
…code reusability and maintainability. Updated GPT52ProReasoningEffortSlider, GPT52ReasoningEffortSlider, GPT5ReasoningEffortSlider, ImageAspectRatioSelect, ImageResolutionSlider, ReasoningEffortSlider, TextVerbositySlider, ThinkingLevel2Slider, ThinkingLevelSlider, and ThinkingSlider to implement controlled and uncontrolled modes. Enhanced aspect ratio selection and resolution sliders with better type safety and default values.
…tory function for better code reuse and maintainability

- Created `createLevelSliderComponent` to handle both controlled and uncontrolled modes for sliders.
- Updated `GPT5ReasoningEffortSlider`, `GPT51ReasoningEffortSlider`, `GPT52ProReasoningEffortSlider`, `GPT52ReasoningEffortSlider`, `ImageResolutionSlider`, `ImageAspectRatioSelect`, `ReasoningEffortSlider`, `TextVerbositySlider`, `ThinkingSlider`, `ThinkingLevelSlider`, and `ThinkingLevel2Slider` to utilize the new factory function.
- Simplified the logic for handling controlled and uncontrolled states in sliders.
- Added tests for the new slider factory to ensure correct behavior in both controlled and uncontrolled modes.
@vercel
Copy link

vercel bot commented Jan 4, 2026

@sxjeru is attempting to deploy a commit to the LobeHub OSS Team on Vercel.

A member of the Team first needs to authorize it.

Copy link
Contributor

@sourcery-ai sourcery-ai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sorry @sxjeru, you have reached your weekly rate limit of 500000 diff characters.

Please try again later or upgrade to continue using Sourcery

@codecov
Copy link

codecov bot commented Jan 4, 2026

Codecov Report

❌ Patch coverage is 74.82014% with 70 lines in your changes missing coverage. Please review.
✅ Project coverage is 75.90%. Comparing base (b3690cb) to head (5877cd5).
⚠️ Report is 5 commits behind head on next.

Additional details and impacted files
@@            Coverage Diff             @@
##             next   #11185      +/-   ##
==========================================
- Coverage   75.91%   75.90%   -0.02%     
==========================================
  Files        1143     1145       +2     
  Lines       88942    89187     +245     
  Branches     9957    12009    +2052     
==========================================
+ Hits        67519    67694     +175     
- Misses      21345    21404      +59     
- Partials       78       89      +11     
Flag Coverage Δ
app 69.57% <86.27%> (+0.03%) ⬆️
database 93.59% <100.00%> (+<0.01%) ⬆️
packages/agent-runtime 89.08% <ø> (ø)
packages/context-engine 83.19% <ø> (ø)
packages/conversation-flow 92.41% <ø> (ø)
packages/file-loaders 88.66% <ø> (ø)
packages/memory-user-memory 70.07% <ø> (ø)
packages/model-bank 100.00% <ø> (ø)
packages/model-runtime 86.59% <67.81%> (-0.30%) ⬇️
packages/prompts 77.43% <ø> (ø)
packages/python-interpreter 92.90% <ø> (ø)
packages/ssrf-safe-fetch 0.00% <ø> (ø)
packages/utils 93.20% <ø> (ø)
packages/web-crawler 95.62% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

Components Coverage Δ
Store 67.53% <ø> (ø)
Services 51.57% <ø> (ø)
Server 73.63% <ø> (ø)
Libs 41.53% <ø> (ø)
Utils 93.51% <ø> (ø)
🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@sxjeru sxjeru marked this pull request as ready for review January 4, 2026 06:40
Copilot AI review requested due to automatic review settings January 4, 2026 06:40
@gru-agent
Copy link
Contributor

gru-agent bot commented Jan 4, 2026

There is too much information in the pull request to test.

@dosubot dosubot bot added size:XXL This PR changes 1000+ lines, ignoring generated files. 💄 Design Design and style issues labels Jan 4, 2026
Copy link
Contributor

@sourcery-ai sourcery-ai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sorry @sxjeru, you have reached your weekly rate limit of 500000 diff characters.

Please try again later or upgrade to continue using Sourcery

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR enhances model configuration capabilities by enabling fetching and customization of extendParams and searchSetting for models. It introduces a factory pattern to refactor slider components and adds a comprehensive UI for managing extended parameters in the model configuration interface.

  • Refactored slider components to use a reusable factory pattern with createLevelSliderComponent
  • Added support for fetching extendParams and searchSetting from local model configurations
  • Implemented ExtendParamsSelect component with preview functionality for model settings
  • Enhanced provider implementations (vercelaigateway, openrouter) to automatically detect and configure extended parameters

Reviewed changes

Copilot reviewed 33 out of 33 changed files in this pull request and generated 6 comments.

Show a summary per file
File Description
src/locales/default/modelProvider.ts Added translations for extended parameters options and their descriptions
src/locales/default/chat.ts Added translation for "Thinking Budget" title
src/features/ChatInput/ActionBar/Model/createLevelSlider.tsx New factory function to create level slider components with controlled/uncontrolled modes
src/features/ChatInput/ActionBar/Model/tests/createLevelSlider.test.tsx Tests verifying factory pattern works in controlled mode without store access
src/features/ChatInput/ActionBar/Model/ThinkingSlider.tsx Refactored to use factory pattern, reducing boilerplate
src/features/ChatInput/ActionBar/Model/ThinkingLevelSlider.tsx Refactored to use factory pattern
src/features/ChatInput/ActionBar/Model/ThinkingLevel2Slider.tsx Refactored to use factory pattern
src/features/ChatInput/ActionBar/Model/TextVerbositySlider.tsx Refactored to use factory pattern
src/features/ChatInput/ActionBar/Model/ReasoningEffortSlider.tsx Refactored to use factory pattern
src/features/ChatInput/ActionBar/Model/LevelSlider.tsx New generic level slider component used by factory
src/features/ChatInput/ActionBar/Model/ImageResolutionSlider.tsx Refactored to use factory pattern
src/features/ChatInput/ActionBar/Model/ImageAspectRatioSelect.tsx Refactored to support controlled/uncontrolled modes for preview
src/features/ChatInput/ActionBar/Model/GPT5ReasoningEffortSlider.tsx Refactored to use factory pattern
src/features/ChatInput/ActionBar/Model/GPT52ReasoningEffortSlider.tsx Refactored to use factory pattern
src/features/ChatInput/ActionBar/Model/GPT52ProReasoningEffortSlider.tsx Refactored to use factory pattern
src/features/ChatInput/ActionBar/Model/GPT51ReasoningEffortSlider.tsx Refactored to use factory pattern
src/features/ChatInput/ActionBar/Model/ControlsForm.tsx Fixed translation key for thinking budget
src/app/.../CreateNewModelModal/tests/ExtendParamsSelect.test.tsx Tests for title key aliases mapping logic
src/app/.../CreateNewModelModal/Form.tsx Added ExtendParamsSelect to model configuration form
src/app/.../CreateNewModelModal/ExtendParamsSelect.tsx New component for selecting and previewing extended parameters
packages/types/src/llm.ts Added settings field to ChatModelCard interface
packages/model-runtime/src/utils/modelParse.ts Added logic to merge extendParams and searchSettings based on provider type
packages/model-runtime/src/utils/modelParse.test.ts Tests for settings merging behavior
packages/model-runtime/src/providers/vercelaigateway/index.ts Updated payload handling and added automatic extendParams detection
packages/model-runtime/src/providers/vercelaigateway/index.test.ts Updated tests for new model prefix format
packages/model-runtime/src/providers/openrouter/type.ts Refactored OpenRouterReasoning interface
packages/model-runtime/src/providers/openrouter/index.ts Updated reasoning handling and added automatic extendParams detection
packages/model-runtime/src/providers/openrouter/index.test.ts Updated tests for new reasoning behavior
packages/database/src/repositories/aiInfra/index.ts Updated settings merge to use deep merge
packages/database/src/repositories/aiInfra/index.test.ts Added tests for settings merge behavior
packages/database/src/models/aiModel.ts Added settings field to model queries
locales/zh-CN/modelProvider.json Added Chinese translations for extended parameters
locales/zh-CN/chat.json Added Chinese translation for thinking budget

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines +129 to +141
if (hasReasoning && model.id.includes('gpt-5')) {
extendParams.push('gpt5ReasoningEffort');
}
if (hasReasoning && model.id.includes('openai') && !model.id.includes('gpt-5')) {
extendParams.push('reasoningEffort');
}
if (hasReasoning && model.id.includes('claude')) {
extendParams.push('enableReasoning', 'reasoningBudgetToken');
}
if (model.id.includes('claude') && writeCacheInputPrice && writeCacheInputPrice !== 0) {
extendParams.push('disableContextCaching');
}
if (hasReasoning && model.id.includes('gemini-2.5')) {
Copy link

Copilot AI Jan 4, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The same brittle string matching pattern exists in openrouter provider. Model ID checks using includes() are prone to false positives. For instance, model.id.includes('gpt-5') on line 129, model.id.includes('openai') on line 132, model.id.includes('claude') on lines 135 and 138, and model.id.includes('gemini-2.5') on line 141 can all match unintended model IDs. Consider implementing a more robust matching strategy with provider-specific prefixes or regex patterns.

Suggested change
if (hasReasoning && model.id.includes('gpt-5')) {
extendParams.push('gpt5ReasoningEffort');
}
if (hasReasoning && model.id.includes('openai') && !model.id.includes('gpt-5')) {
extendParams.push('reasoningEffort');
}
if (hasReasoning && model.id.includes('claude')) {
extendParams.push('enableReasoning', 'reasoningBudgetToken');
}
if (model.id.includes('claude') && writeCacheInputPrice && writeCacheInputPrice !== 0) {
extendParams.push('disableContextCaching');
}
if (hasReasoning && model.id.includes('gemini-2.5')) {
// More robust model id checks to avoid accidental matches on unrelated models
const isOpenAIGpt5Model =
hasReasoning && /^openai\/gpt-5([\/:\-]|$)/.test(model.id);
const isOpenAIReasoningModel =
hasReasoning &&
/^openai\//.test(model.id) &&
!/^openai\/gpt-5([\/:\-]|$)/.test(model.id);
const isClaudeModel = /(^|\/)claude([\/:\-]|$)/.test(model.id);
const isGemini25Model = /(^|\/)gemini-2\.5([\/:\-]|$)/.test(model.id);
if (isOpenAIGpt5Model) {
extendParams.push('gpt5ReasoningEffort');
}
if (isOpenAIReasoningModel) {
extendParams.push('reasoningEffort');
}
if (hasReasoning && isClaudeModel) {
extendParams.push('enableReasoning', 'reasoningBudgetToken');
}
if (isClaudeModel && writeCacheInputPrice && writeCacheInputPrice !== 0) {
extendParams.push('disableContextCaching');
}
if (hasReasoning && isGemini25Model) {

Copilot uses AI. Check for mistakes.
@arvinxx
Copy link
Member

arvinxx commented Jan 11, 2026

@sxjeru There is a conflict that needs to be resolved.


This comment was translated by Claude.

Original Content @sxjeru 有冲突,需要解一下

@vercel
Copy link

vercel bot commented Jan 11, 2026

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Review Updated (UTC)
lobehub Ready Ready Preview, Comment Jan 11, 2026 7:30am

@arvinxx arvinxx merged commit 94e985a into lobehub:next Jan 11, 2026
24 checks passed
@lobehubbot
Copy link
Member

lobehubbot commented Jan 11, 2026

❤️ Great PR @sxjeru ❤️

The growth of project is inseparable from user feedback and contribution, thanks for your contribution! If you are interested in the lobehub developer community, please join our discord and then dm @arvinxx or @canisminor1990. They will invite you to our private developer channel where we discuss lobe-chat development and share AI newsletters from around the world.

@sxjeru sxjeru deleted the extendparam2 branch January 11, 2026 08:05
lobehubbot pushed a commit that referenced this pull request Jan 11, 2026
## [Version&nbsp;2.0.0-next.263](v2.0.0-next.262...v2.0.0-next.263)
<sup>Released on **2026-01-11**</sup>

#### 💄 Styles

- **misc**: ModelParse support to get model settings params & Customize extendParams UI.

<br/>

<details>
<summary><kbd>Improvements and Fixes</kbd></summary>

#### Styles

* **misc**: ModelParse support to get model settings params & Customize extendParams UI, closes [#11185](#11185) ([94e985a](94e985a))

</details>

<div align="right">

[![](https://img.shields.io/badge/-BACK_TO_TOP-151515?style=flat-square)](#readme-top)

</div>
@lobehubbot
Copy link
Member

🎉 This PR is included in version 2.0.0-next.263 🎉

The release is available on:

Your semantic-release bot 📦🚀

0xZZSheep pushed a commit to 0xZZSheep/lobe-chat that referenced this pull request Jan 16, 2026
…extendParams UI (lobehub#11185)

* ✨ feat: 添加扩展参数支持,增强模型配置功能

* 支持更多扩展参数;支持 openrouter

* style: 添加思考预算扩展参数支持,更新相关标签

* Refactor sliders to use a unified LevelSlider component for improved code reusability and maintainability. Updated GPT52ProReasoningEffortSlider, GPT52ReasoningEffortSlider, GPT5ReasoningEffortSlider, ImageAspectRatioSelect, ImageResolutionSlider, ReasoningEffortSlider, TextVerbositySlider, ThinkingLevel2Slider, ThinkingLevelSlider, and ThinkingSlider to implement controlled and uncontrolled modes. Enhanced aspect ratio selection and resolution sliders with better type safety and default values.

* Refactor reasoning effort sliders and related components to use a factory function for better code reuse and maintainability

- Created `createLevelSliderComponent` to handle both controlled and uncontrolled modes for sliders.
- Updated `GPT5ReasoningEffortSlider`, `GPT51ReasoningEffortSlider`, `GPT52ProReasoningEffortSlider`, `GPT52ReasoningEffortSlider`, `ImageResolutionSlider`, `ImageAspectRatioSelect`, `ReasoningEffortSlider`, `TextVerbositySlider`, `ThinkingSlider`, `ThinkingLevelSlider`, and `ThinkingLevel2Slider` to utilize the new factory function.
- Simplified the logic for handling controlled and uncontrolled states in sliders.
- Added tests for the new slider factory to ensure correct behavior in both controlled and uncontrolled modes.

* Reuses i18n keys via alias mapping for param titles

* fix tests
0xZZSheep pushed a commit to 0xZZSheep/lobe-chat that referenced this pull request Jan 16, 2026
## [Version&nbsp;2.0.0-next.263](lobehub/lobehub@v2.0.0-next.262...v2.0.0-next.263)
<sup>Released on **2026-01-11**</sup>

#### 💄 Styles

- **misc**: ModelParse support to get model settings params & Customize extendParams UI.

<br/>

<details>
<summary><kbd>Improvements and Fixes</kbd></summary>

#### Styles

* **misc**: ModelParse support to get model settings params & Customize extendParams UI, closes [lobehub#11185](lobehub#11185) ([94e985a](lobehub@94e985a))

</details>

<div align="right">

[![](https://img.shields.io/badge/-BACK_TO_TOP-151515?style=flat-square)](#readme-top)

</div>
JamieStivala pushed a commit to jaworldwideorg/OneJA-Bot that referenced this pull request Jan 16, 2026
## [Version&nbsp;1.151.0](v1.150.0...v1.151.0)
<sup>Released on **2026-01-16**</sup>

#### ♻ Code Refactoring

- **agentGroup**: Simplify LobeChatGroupChatConfig schema.
- **database**: Renamed to userMemories/index.ts.
- **desktop**: Unify TITLE_BAR_HEIGHT constant to desktop-bridge.
- **misc**: Improve Tools popover component structure and fix UI consistency, migrate Next.js navigation APIs to React Router for SPA, refactor page and notebook document usage, remove the old lobehub plugins, rename chat folder to agent, use fallbackData to prevent useActionSWR auto-fetch.

#### ✨ Features

- **community**: Recommendation for agent & Discover tab, recommended for home & added discover tab, support to report for agent & mcp plugin interaction for recommendation.
- **conversation**: Use native context menu when selection is within current ChatItem.
- **desktop**: Add desktop release service and API endpoint, add local update testing scripts and stable channel API version check, implement history navigation stack, improve macOS permission requests and Full Disk Access detection.
- **electron**: Add custom titlebar for Electron windows.
- **share**: Add topic sharing functionality.
- **userMemories**: Support to assign for extra headers when invoking upstash workflows, support to use customized Qstash client with extra header for workflows.
- **misc**: Add the agent cron job, generate `agent_cron_jobs` in agents, improve baseline alignment for tool items, improve group profile builder, improve group prompt context engine and fix group supervisor response issue, improve PageEditor header UX with DropdownMenu and i18n support, update model definitions and sync i18n, update the agent profiles tools check & agentbuilder tools & publish to market button, update the community user layout action button, update the cron job visiual way, update the cron patterns fields values.

#### 🐛 Bug Fixes

- **@upstash/qstash**: Should properly extract Error message from thrown one.
- **api**: Fix the issue where custom AI Providers cannot use custom APIs.
- **ChatInput**: Add missing MaxTokens setting to params popover.
- **chat**: Reset activeTopicId when switching agent/group.
- **controls**: Update checkbox toggle behavior and pass value to ParamControlWrapper.
- **database**: Remove content validation limits for agent cron jobs.
- **desktop**: Prevent duplicate CORS headers in response, return OFFICIAL_URL in cloud mode for remoteServerUrl selector, update macOS beta icon size for macOS 26.
- **InputEditor**: Ensure lexical placeholder reactively updates on locale change.
- **mcp**: Fix installation check hanging issue in desktop app.
- **settings**: Add instant UI feedback for provider config switches.
- **misc**: Click lobe ai topic trigger create new agent, fix auto add group member crash, fix duplicate agent and group, fix group ux and memory retriever, fix internal editor onTextChange issue and add test case, fix memory search context, fix new topic flick issue, fix page content mismatch when switch quickly, fix thread portal not open correctly, Fix Windows desktop build error with macOS native module, force plain text paste in ChatInput editor, handle will-prevent-unload event to allow app quit, prevent auto navigation to profile when clicking topic, refresh sidebar after sendAsGroup and add E2E tests, slove the settings/profile change but not refresh the profiles.

#### 💄 Styles

- **desktop**: Update macOS beta icon assets.
- **misc**: Add MiniMax-M2.1 and GLM-4.7 for Qiniu provider, fix UI issues with tooltip wrapping and dropdown type, force gpt-5.2 use response api, improve agent loading state, improve cron jobs style, improve todo list, modelParse support to get model settings params & Customize extendParams UI, remember page agent panel width, update i18n, update i18n, update readFile content.

<br/>

<details>
<summary><kbd>Improvements and Fixes</kbd></summary>

#### Code refactoring

* **agentGroup**: Simplify LobeChatGroupChatConfig schema, closes [lobehub#11431](https://github.com/jaworldwideorg/OneJA-Bot/issues/11431) ([a8c6b2c](a8c6b2c))
* **database**: Renamed to userMemories/index.ts, closes [lobehub#11359](https://github.com/jaworldwideorg/OneJA-Bot/issues/11359) ([9dae5ff](9dae5ff))
* **desktop**: Unify TITLE_BAR_HEIGHT constant to desktop-bridge, closes [lobehub#11496](https://github.com/jaworldwideorg/OneJA-Bot/issues/11496) ([e7739e5](e7739e5))
* **misc**: Improve Tools popover component structure and fix UI consistency, closes [lobehub#11356](https://github.com/jaworldwideorg/OneJA-Bot/issues/11356) ([f46837a](f46837a))
* **misc**: Migrate Next.js navigation APIs to React Router for SPA, closes [lobehub#11394](https://github.com/jaworldwideorg/OneJA-Bot/issues/11394) ([2253d46](2253d46))
* **misc**: Refactor page and notebook document usage, closes [lobehub#11345](https://github.com/jaworldwideorg/OneJA-Bot/issues/11345) ([88721eb](88721eb))
* **misc**: Remove the old lobehub plugins, closes [lobehub#11498](https://github.com/jaworldwideorg/OneJA-Bot/issues/11498) ([e5b47df](e5b47df))
* **misc**: Rename chat folder to agent, closes [lobehub#11409](https://github.com/jaworldwideorg/OneJA-Bot/issues/11409) ([7cfb1a3](7cfb1a3))
* **misc**: Use fallbackData to prevent useActionSWR auto-fetch, closes [lobehub#11514](https://github.com/jaworldwideorg/OneJA-Bot/issues/11514) ([d446163](d446163))

#### What's improved

* **community**: Recommendation for agent & Discover tab, closes [lobehub#11445](https://github.com/jaworldwideorg/OneJA-Bot/issues/11445) ([5c102b5](5c102b5))
* **community**: Recommended for home & added discover tab, closes [lobehub#11290](https://github.com/jaworldwideorg/OneJA-Bot/issues/11290) ([8db248c](8db248c))
* **community**: Support to report for agent & mcp plugin interaction for recommendation, closes [lobehub#11289](https://github.com/jaworldwideorg/OneJA-Bot/issues/11289) ([6f98792](6f98792))
* **conversation**: Use native context menu when selection is within current ChatItem, closes [lobehub#11400](https://github.com/jaworldwideorg/OneJA-Bot/issues/11400) ([9778dce](9778dce))
* **desktop**: Add desktop release service and API endpoint, closes [lobehub#11520](https://github.com/jaworldwideorg/OneJA-Bot/issues/11520) ([e3dc5be](e3dc5be))
* **desktop**: Add local update testing scripts and stable channel API version check, closes [lobehub#11474](https://github.com/jaworldwideorg/OneJA-Bot/issues/11474) [lobehub#11513](https://github.com/jaworldwideorg/OneJA-Bot/issues/11513) ([959c210](959c210))
* **desktop**: Implement history navigation stack, closes [lobehub#11341](https://github.com/jaworldwideorg/OneJA-Bot/issues/11341) ([db270d5](db270d5))
* **desktop**: Improve macOS permission requests and Full Disk Access detection, closes [lobehub#11380](https://github.com/jaworldwideorg/OneJA-Bot/issues/11380) ([2d5868f](2d5868f))
* **electron**: Add custom titlebar for Electron windows, closes [lobehub#11438](https://github.com/jaworldwideorg/OneJA-Bot/issues/11438) ([08f6ee3](08f6ee3))
* **share**: Add topic sharing functionality, closes [lobehub#11448](https://github.com/jaworldwideorg/OneJA-Bot/issues/11448) ([ddca165](ddca165))
* **userMemories**: Support to assign for extra headers when invoking upstash workflows, closes [lobehub#11374](https://github.com/jaworldwideorg/OneJA-Bot/issues/11374) ([895e15e](895e15e))
* **userMemories**: Support to use customized Qstash client with extra header for workflows, closes [lobehub#11378](https://github.com/jaworldwideorg/OneJA-Bot/issues/11378) ([3417af4](3417af4))
* **misc**: Add the agent cron job, closes [lobehub#11370](https://github.com/jaworldwideorg/OneJA-Bot/issues/11370) ([10e47d9](10e47d9))
* **misc**: Generate `agent_cron_jobs` in agents, closes [lobehub#11349](https://github.com/jaworldwideorg/OneJA-Bot/issues/11349) ([eefb6cb](eefb6cb))
* **misc**: Improve baseline alignment for tool items, closes [lobehub#11447](https://github.com/jaworldwideorg/OneJA-Bot/issues/11447) ([be8dddd](be8dddd))
* **misc**: Improve group profile builder, closes [lobehub#11452](https://github.com/jaworldwideorg/OneJA-Bot/issues/11452) ([9012b40](9012b40))
* **misc**: Improve group prompt context engine and fix group supervisor response issue, closes [lobehub#11490](https://github.com/jaworldwideorg/OneJA-Bot/issues/11490) ([7d066eb](7d066eb))
* **misc**: Improve PageEditor header UX with DropdownMenu and i18n support, closes [lobehub#11462](https://github.com/jaworldwideorg/OneJA-Bot/issues/11462) ([ae499c9](ae499c9))
* **misc**: Update model definitions and sync i18n, closes [lobehub#11468](https://github.com/jaworldwideorg/OneJA-Bot/issues/11468) ([484ffb3](484ffb3))
* **misc**: Update the agent profiles tools check & agentbuilder tools & publish to market button, closes [lobehub#11501](https://github.com/jaworldwideorg/OneJA-Bot/issues/11501) ([85277fa](85277fa))
* **misc**: Update the community user layout action button, closes [lobehub#11472](https://github.com/jaworldwideorg/OneJA-Bot/issues/11472) ([2dd6d42](2dd6d42))
* **misc**: Update the cron job visiual way, closes [lobehub#11466](https://github.com/jaworldwideorg/OneJA-Bot/issues/11466) ([63d81de](63d81de))
* **misc**: Update the cron patterns fields values, closes [lobehub#11399](https://github.com/jaworldwideorg/OneJA-Bot/issues/11399) ([7632cef](7632cef))

#### What's fixed

* **@upstash/qstash**: Should properly extract Error message from thrown one, closes [lobehub#11465](https://github.com/jaworldwideorg/OneJA-Bot/issues/11465) ([a8142b4](a8142b4))
* **api**: Fix the issue where custom AI Providers cannot use custom APIs, closes [lobehub#11335](https://github.com/jaworldwideorg/OneJA-Bot/issues/11335) ([2c666b8](2c666b8))
* **ChatInput**: Add missing MaxTokens setting to params popover, closes [lobehub#11412](https://github.com/jaworldwideorg/OneJA-Bot/issues/11412) [lobehub#11375](https://github.com/jaworldwideorg/OneJA-Bot/issues/11375) ([3db4389](3db4389))
* **chat**: Reset activeTopicId when switching agent/group, closes [lobehub#11523](https://github.com/jaworldwideorg/OneJA-Bot/issues/11523) ([fde54b0](fde54b0))
* **controls**: Update checkbox toggle behavior and pass value to ParamControlWrapper, closes [lobehub#11363](https://github.com/jaworldwideorg/OneJA-Bot/issues/11363) ([1f1ef94](1f1ef94))
* **database**: Remove content validation limits for agent cron jobs, closes [lobehub#11444](https://github.com/jaworldwideorg/OneJA-Bot/issues/11444) ([04a28d3](04a28d3))
* **desktop**: Prevent duplicate CORS headers in response, closes [lobehub#11350](https://github.com/jaworldwideorg/OneJA-Bot/issues/11350) ([57e725c](57e725c))
* **desktop**: Return OFFICIAL_URL in cloud mode for remoteServerUrl selector, closes [lobehub#11502](https://github.com/jaworldwideorg/OneJA-Bot/issues/11502) ([1d11fac](1d11fac))
* **desktop**: Update macOS beta icon size for macOS 26, closes [lobehub#11348](https://github.com/jaworldwideorg/OneJA-Bot/issues/11348) ([0d1eedf](0d1eedf))
* **InputEditor**: Ensure lexical placeholder reactively updates on locale change, closes [lobehub#11352](https://github.com/jaworldwideorg/OneJA-Bot/issues/11352) ([72e796b](72e796b))
* **mcp**: Fix installation check hanging issue in desktop app, closes [lobehub#11524](https://github.com/jaworldwideorg/OneJA-Bot/issues/11524) ([b9341c3](b9341c3))
* **settings**: Add instant UI feedback for provider config switches, closes [lobehub#11362](https://github.com/jaworldwideorg/OneJA-Bot/issues/11362) ([a758d01](a758d01))
* **misc**: Click lobe ai topic trigger create new agent, closes [lobehub#11508](https://github.com/jaworldwideorg/OneJA-Bot/issues/11508) ([2443189](2443189))
* **misc**: Fix auto add group member crash, closes [lobehub#11387](https://github.com/jaworldwideorg/OneJA-Bot/issues/11387) ([fe4ff91](fe4ff91))
* **misc**: Fix duplicate agent and group, closes [lobehub#11411](https://github.com/jaworldwideorg/OneJA-Bot/issues/11411) ([bc8aea4](bc8aea4))
* **misc**: Fix group ux and memory retriever, closes [lobehub#11481](https://github.com/jaworldwideorg/OneJA-Bot/issues/11481) ([033ca92](033ca92))
* **misc**: Fix internal editor onTextChange issue and add test case, closes [lobehub#11509](https://github.com/jaworldwideorg/OneJA-Bot/issues/11509) ([e5eb03e](e5eb03e))
* **misc**: Fix memory search context, closes [lobehub#11393](https://github.com/jaworldwideorg/OneJA-Bot/issues/11393) ([9f51a4c](9f51a4c))
* **misc**: Fix new topic flick issue, closes [lobehub#11473](https://github.com/jaworldwideorg/OneJA-Bot/issues/11473) ([c53d372](c53d372))
* **misc**: Fix page content mismatch when switch quickly, closes [lobehub#11505](https://github.com/jaworldwideorg/OneJA-Bot/issues/11505) ([0cb1374](0cb1374))
* **misc**: Fix thread portal not open correctly, closes [lobehub#11475](https://github.com/jaworldwideorg/OneJA-Bot/issues/11475) ([e6ff90b](e6ff90b))
* **misc**: Fix Windows desktop build error with macOS native module, closes [lobehub#11417](https://github.com/jaworldwideorg/OneJA-Bot/issues/11417) ([67a8114](67a8114))
* **misc**: Force plain text paste in ChatInput editor, closes [lobehub#11414](https://github.com/jaworldwideorg/OneJA-Bot/issues/11414) ([70daf13](70daf13))
* **misc**: Handle will-prevent-unload event to allow app quit, closes [lobehub#11406](https://github.com/jaworldwideorg/OneJA-Bot/issues/11406) ([cbeb013](cbeb013))
* **misc**: Prevent auto navigation to profile when clicking topic, closes [lobehub#11500](https://github.com/jaworldwideorg/OneJA-Bot/issues/11500) ([1e03005](1e03005))
* **misc**: Refresh sidebar after sendAsGroup and add E2E tests, closes [lobehub#11450](https://github.com/jaworldwideorg/OneJA-Bot/issues/11450) ([8376a80](8376a80))
* **misc**: Slove the settings/profile change but not refresh the profiles, closes [lobehub#11497](https://github.com/jaworldwideorg/OneJA-Bot/issues/11497) ([f1e2111](f1e2111))

#### Styles

* **desktop**: Update macOS beta icon assets, closes [lobehub#11368](https://github.com/jaworldwideorg/OneJA-Bot/issues/11368) ([3623e58](3623e58))
* **misc**: Add MiniMax-M2.1 and GLM-4.7 for Qiniu provider, closes [lobehub#10982](https://github.com/jaworldwideorg/OneJA-Bot/issues/10982) ([695784d](695784d))
* **misc**: Fix UI issues with tooltip wrapping and dropdown type, closes [lobehub#11495](https://github.com/jaworldwideorg/OneJA-Bot/issues/11495) ([9d90eba](9d90eba))
* **misc**: Force gpt-5.2 use response api, closes [lobehub#11373](https://github.com/jaworldwideorg/OneJA-Bot/issues/11373) ([f7f3631](f7f3631))
* **misc**: Improve agent loading state, closes [lobehub#11511](https://github.com/jaworldwideorg/OneJA-Bot/issues/11511) ([3bb7f33](3bb7f33))
* **misc**: Improve cron jobs style, closes [lobehub#11420](https://github.com/jaworldwideorg/OneJA-Bot/issues/11420) ([d1602f6](d1602f6))
* **misc**: Improve todo list, closes [lobehub#11533](https://github.com/jaworldwideorg/OneJA-Bot/issues/11533) ([a4b71e9](a4b71e9))
* **misc**: ModelParse support to get model settings params & Customize extendParams UI, closes [lobehub#11185](https://github.com/jaworldwideorg/OneJA-Bot/issues/11185) ([94e985a](94e985a))
* **misc**: Remember page agent panel width, closes [lobehub#11389](https://github.com/jaworldwideorg/OneJA-Bot/issues/11389) ([801b624](801b624))
* **misc**: Update i18n, closes [lobehub#11425](https://github.com/jaworldwideorg/OneJA-Bot/issues/11425) ([87fbed2](87fbed2))
* **misc**: Update i18n, closes [lobehub#11360](https://github.com/jaworldwideorg/OneJA-Bot/issues/11360) ([da09825](da09825))
* **misc**: Update readFile content, closes [lobehub#11485](https://github.com/jaworldwideorg/OneJA-Bot/issues/11485) ([050499b](050499b))

</details>

<div align="right">

[![](https://img.shields.io/badge/-BACK_TO_TOP-151515?style=flat-square)](#readme-top)

</div>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment