本次修复针对「应用配置」时 PUT /api/config 对部分字段的误覆盖:后端将 multi_agent.tool_search_always_visible_tools 改为可选指针,仅在 JSON 中显式携带该字段时才更新,避免请求未带白名单却被写成空数组;设置页保存机器人配置时从当前配置带回 session、钉钉/飞书的身份回退开关,并在写入 YAML 时同步落盘这些字段,避免与仅写表单项导致的内存与文件不一致;同时将「应用配置」里误写死的 batch_use_multi_agent: false 改为沿用 currentConfig 中的值,防止每次应用都把批量任务多代理开关关掉。
The fix addresses accidental overwrites on PUT /api/config when applying settings from the UI: tool_search_always_visible_tools is now an optional pointer so the whitelist is only updated when that field is explicitly present in JSON, preventing an omitted key from clearing the list; robot settings preserve session and DingTalk/Lark fallback flags from the loaded config in the request, and updateRobotsConfig now persists those fields to YAML so runtime state matches the file; batch_use_multi_agent is no longer hardcoded to false in “apply settings” and instead follows currentConfig, so enabling batch multi-agent in YAML is not reset on every save.