- [核心优化] 账号切换时同步写入本地文件凭据 (Sync File-Based Credentials on Account Switch):
- 支持 SSH 与容器无头环境: 修复在 SSH 远程会话、容器或无 D-Bus/Keyring 环境下使用 CLI (
agy) 时,因环境探测自动回退读取~/.gemini/oauth_creds.json而无法感知图形端账号切换的问题。 - 双通道凭据同步与权限保护: 在写入系统 Keyring 的同时,自动同步更新
~/.gemini/oauth_creds.json和~/.gemini/google_accounts.json,并在 Unix 系统上强制设定0o600严格文件权限以保护凭据安全。 - 相关 PR: 详见 PR #3297。
- 支持 SSH 与容器无头环境: 修复在 SSH 远程会话、容器或无 D-Bus/Keyring 环境下使用 CLI (
- [核心修复] OpenAI Responses API 协议全流程兼容性加固 (OpenAI Responses API Hardening):
- 宽松输入归一化: 容错解析客户端未提供
type字段的消息项,并无缝兼容字符串或数组形式的content(含多模态图片内容)。 - 末尾 Assistant 预填充防护: 针对上游拒绝末尾纯文本 Assistant 预填充导致的 400 错误,进行窄范围角色重写;同时自动清洗上下文转换残留的前置孤立工具历史。
- 标准 Responses 格式输出: 统一流式与非流式转换链路,标准化输出
output_text、refusal、reasoning以及顶层function_call结构,彻底解决工具调用丢失及回复空白问题。 - 相关 PR: 详见 PR #3305 (修复 #3302, #3303, #3304)。
- 宽松输入归一化: 容错解析客户端未提供
- [问题修复] 修复 v1internal 接口下的工具配置及混合调用 400 报错 (v1internal ToolConfig Alignment):
- 对齐 Google 工具配置规范: 在 Claude、Gemini、OpenAI 适配器中统一补齐
includeServerSideToolInvocations(camelCase) 与include_server_side_tool_invocations(snake_case)。 - 避免工具混合调用 400 异常: 针对受限的
v1internal架构禁用自定义 Function Calling 与 Google Search 联网搜索的混合调用,避免上游抛出400 Bad Request。 - 相关 PR: 详见 PR #3306。
- 对齐 Google 工具配置规范: 在 Claude、Gemini、OpenAI 适配器中统一补齐
- [问题修复] 修复 Linux/Windows 托盘图标显示为纯黑方块缺陷 (Tray Icon Platform Isolation):
- 平台图标加载隔离: macOS 环境加载
tray-icon.png并启用icon_as_template(true)适配暗黑/明亮菜单栏自适应;Windows / Linux 环境加载原生彩色icon.png并禁用 Template 模式,彻底解决任务栏渲染为纯黑色方块的问题。 - 相关 Issue: 详见 Issue #3286, Issue #3310。
- 平台图标加载隔离: macOS 环境加载