← 返回更新日志

Gemini CLI v0.39.0

2026-04-23 · GitHub 原文
## 更新内容 * refactor(plan): 简化策略优先级并合并只读规则,由 @ruomengz 提交于 https://github.com/google-gemini/gemini-cli/pull/24849 * feat(test-utils): 添加内存使用集成测试框架,由 @sripasg 提交于 https://github.com/google-gemini/gemini-cli/pull/24876 * feat(memory): 添加 /memory inbox 命令以查看提取的技能,由 @SandyTao520 提交于 https://github.com/google-gemini/gemini-cli/pull/24544 * chore(release): 将版本号提升至 0.39.0-nightly.20260408.e77b22e63,由 @gemini-cli-robot 提交于 https://github.com/google-gemini/gemini-cli/pull/24939 * fix(core): 确保在所有进程执行路径中都能稳健地清理沙箱,由 @ehedlund 提交于 https://github.com/google-gemini/gemini-cli/pull/24763 * chore: 将 ink 版本更新至 6.6.8,由 @jacob314 提交于 https://github.com/google-gemini/gemini-cli/pull/24934 * v0.38.0-preview.0 的更新日志,由 @gemini-cli-robot 提交于 https://github.com/google-gemini/gemini-cli/pull/24938 * chore: 忽略 conductor 目录,由 @JayadityaGit 提交于 https://github.com/google-gemini/gemini-cli/pull/22128 * v0.37.0 的更新日志,由 @gemini-cli-robot 提交于 https://github.com/google-gemini/gemini-cli/pull/24940 * feat(plan): 在计划模式中激活技能时需要用户确认,由 @ruomengz 提交于 https://github.com/google-gemini/gemini-cli/pull/24946 * feat(test-utils): 添加 CPU 性能集成测试框架,由 @sripasg 提交于 https://github.com/google-gemini/gemini-cli/pull/24951 * fix(cli-ui): 在 Windows Terminal 中启用 Ctrl+Backspace 进行单词删除,由 @dogukanozen 提交于 https://github.com/google-gemini/gemini-cli/pull/21447 * test(sdk): 为 GeminiCliSession 添加单元测试,由 @AdamyaSingh7 提交于 https://github.com/google-gemini/gemini-cli/pull/21897 * fix(core): 解决 Windows 符号链接绕过问题并稳定沙箱集成测试,由 @ehedlund 提交于 https://github.com/google-gemini/gemini-cli/pull/24834 * fix(cli): 恢复编辑和写入工具确认中的文件路径显示,由 @jwhelangoog 提交于 https://github.com/google-gemini/gemini-cli/pull/24974 * feat(core): 优化 shell 工具描述显示逻辑,由 @jwhelangoog 提交于 https://github.com/google-gemini/gemini-cli/pull/24903 * fix(core): 动态注入会话 ID 以解决恢复问题,由 @scidomino 提交于 https://github.com/google-gemini/gemini-cli/pull/24972 * 将 ink 版本更新至 6.6.9,由 @jacob314 提交于 https://github.com/google-gemini/gemini-cli/pull/24980 * 通用化评估基础设施以支持更多类型的评估、组织和命名套件队列,由 @gundermanc 提交于 https://github.com/google-gemini/gemini-cli/pull/24941 * fix(cli): 通过轻量级父进程优化启动速度,由 @sehoon38 提交于 https://github.com/google-gemini/gemini-cli/pull/24667 * refactor(sandbox): 在 macOS Seatbelt 实现中使用集中式沙箱路径,由 @ehedlund 提交于 https://github.com/google-gemini/gemini-cli/pull/24984 * feat(cli): 优化紧凑模式下的工具输出格式,由 @jwhelangoog 提交于 https://github.com/google-gemini/gemini-cli/pull/24677 * fix(sdk): 跳过损坏的 sendStream 测试以解除 nightly 构建阻塞,由 @SandyTao520 提交于 https://github.com/google-gemini/gemini-cli/pull/25000 * refactor(core): 在 Linux 沙箱中使用集中式路径解析,由 @ehedlund 提交于 https://github.com/google-gemini/gemini-cli/pull/24985 * 支持 ctrl+shift+g,由 @jacob314 提交于 https://github.com/google-gemini/gemini-cli/pull/25035 * feat(core): 将子代理工具重构为统一的 invoke_subagent 工具,由 @abhipatel12 提交于 https://github.com/google-gemini/gemini-cli/pull/24489 * fix(core): 添加显式 git 身份环境变量以防止沙箱检查点错误,由 @mrpmohiburrahman 提交于 https://github.com/google-gemini/gemini-cli/pull/19775 * fix: 当 FooterConfigDialog 关闭且未更改时,尊重 hideContextPercentage 设置,由 @chernistry 提交于 https://github.com/google-gemini/gemini-cli/pull/24773 * fix(cli): 在请求取消期间抑制未处理的 AbortError 日志,由 @euxaristia 提交于 https://github.com/google-gemini/gemini-cli/pull/22621 * 自动化文档审计,由 @g-samroberts 提交于 https://github.com/google-gemini/gemini-cli/pull/24567 * feat(cli): 实现 useAgentStream 钩子,由 @mbleigh 提交于 https://github.com/google-gemini/gemini-cli/pull/24292 * refactor(plan) 清理默认计划 toml 文件,由 @ruomengz 提交于 https://github.com/google-gemini/gemini-cli/pull/25037 * refactor(core): 移除遗留的子代理包装工具,由 @abhipatel12 提交于 https://github.com/google-gemini/gemini-cli/pull/25053 * fix(core): 在 RetryInfo 中为 503 错误遵守 retryDelay,由 @yunaseoul 提交于 https://github.com/google-gemini/gemini-cli/pull/25057 * fix(core): 使用 AbortSignal 在 MessageBus 中修复子代理内存泄漏,由 @abhipatel12 提交于 https://github.com/google-gemini/gemini-cli/pull/25048 * feat(cli): 在 AppContainer 中连接 useAgentStream,由 @mbleigh 提交于 https://github.com/google-gemini/gemini-cli/pull/24297 * feat(core): 将聊天记录迁移至 JSONL 流式传输,由 @spencer426 提交于 https://github.com/google-gemini/gemini-cli/pull/23749 * fix(core): 清除 OAuth 流程中的 5 分钟超时以防止内存泄漏,由 @spencer426 提交于 https://github.com/google-gemini/gemini-cli/pull/24968 * fix(sandbox): 集中化异步 git worktree 解析并强制执行只读安全策略,由 @ehedlund 提交于 https://github.com/google-gemini/gemini-cli/pull/25040 * feat(test): 添加高容量 shell 测试并优化性能测试框架,由 @sripasg 提交于 https://github.com/google-gemini/gemini-cli/pull/24983 * fix(core): 静默处理列出目录结构时的 EPERM 错误,由 @scidomino 提交于 https://github.com/google-gemini/gemini-cli/pull/25066 * v0.37.1 的更新日志,由 @gemini-cli-robot 提交于 https://github.com/google-gemini/gemini-cli/pull/25055 * fix: 解码 API 错误消息中的 Uint8Array 和多字节 UTF-8,由 @kimjune01 提交于 https://github.com/google-gemini/gemini-cli/pull/23341 * 自动化文档审计结果,由 @g-samroberts 提交于 https://github.com/google-gemini/gemini-cli/pull/22755 * debugging(ui): 添加可选的 debugRainbow 设置,由 @jacob314 提交于 https://github.com/google-gemini/gemini-cli/pull/25088 * fix: 通过清理监听器和根闭包解决生命周期内存泄漏,由 @spencer426 提交于 https://github.com/google-gemini/gemini-cli/pull/25049 * docs(cli): 更新 f12 描述以更精确,由 @JayadityaGit 提交于 https://github.com/google-gemini/gemini-cli/pull/15816 * fix(cli): 将 /settings 标记为不安全并发运行,由 @jacob314 提交于 https://github.com/google-gemini/gemini-cli/pull/25061 * fix(core): 移除缓冲区切片以防止大输出流导致 OOM,由 @spencer426 提交于 https://github.com/google-gemini/gemini-cli/pull/25094 * feat(core): 在工具调用记录中持久化子代理 agentId,由 @abhipatel12 提交于 https://github.com/google-gemini/gemini-cli/pull/25092 * chore(core): 将代码库调查员轮次限制提高到 50,由 @abhipatel12 提交于 https://github.com/google-gemini/gemini-cli/pull/25125 * refactor(core): 将 execute() 参数整合为 ExecuteOptions,由 @mbleigh 提交于 https://github.com/google-gemini/gemini-cli/pull/25101 * feat(core): 在系统提示中添加战略重新评估指导,由 @aishaneeshah 提交于 https://github.com/google-gemini/gemini-cli/pull/25062 * fix(core): 更新时保留 shell 执行配置字段,由 @jasonmatthewsuhari 提交于 https://github.com/google-gemini/gemini-cli/pull/25113 * docs: 添加 vi 快捷键并澄清 MCP 沙箱设置,由 @chrisjcthomas 提交于 https://github.com/google-gemini/gemini-cli/pull/21679 * fix(cli): 将会话 ID 传递给交互式 shell 执行,由 @jasonmatthewsuhari 提交于 https://github.com/google-gemini/gemini-cli/pull/25114 * fix(cli): 解决因 C1 控制字符导致的文本消毒数据丢失问题,由 @euxaristia 提交于 https://github.com/google-gemini/gemini-cli/pull/22624 * feat(core): 添加大内存回归测试,由 @cynthialong0-0 提交于 https://github.com/google-gemini/gemini-cli/pull/25059 * fix(core): 解决 PTY 耗尽和孤立的 MCP 子进程泄漏问题,由 @spencer426 提交于 https://github.com/google-gemini/gemini-cli/pull/25079 * chore(deps): 通过 npm audit fix 更新易受攻击的依赖项,由 @scidomino 提交于 https://github.com/google-gemini/gemini-cli/pull/25140 * perf(sandbox): 通过原生 ACL 应用优化 Windows 沙箱初始化,由 @ehedlund 提交于 https://github.com/google-gemini/gemini-cli/pull/25077 * chore: 从 keytar 切换到 @github/keytar,由 @cocosheng-g 提交于 https://github.com/google-gemini/gemini-cli/pull/25143 * fix: 改进文件读取中的音频 MIME 规范化和验证,由 @junaiddshaukat 提交于 https://github.com/google-gemini/gemini-cli/pull/21636 * docs: 更新 docs-audit 以包含 PR 正文中的更改,由 @g-samroberts 提交于 https://github.com/google-gemini/gemini-cli/pull/25153 * docs: 更正强制身份验证类型的文档,由 @cocosheng-g 提交于 https://github.com/google-gemini/gemini-cli/pull/25142 * fix(cli): 从确认队列计数中排除 update_topic,由 @Abhijit-2592 提交于 https://github.com/google-gemini/gemini-cli/pull/24945 * 修复 trace 的 streamWrapper 内存问题,由 @anthraxmilkshake 提交于 https://github.com/google-gemini/gemini-cli/pull/25089 * fix(core): 修复非自动模型的配额页脚并改进显示,由 @jackwotherspoon 提交于 https://github.com/google-gemini/gemini-cli/pull/25121 * docs(contributing): 澄清问题的自我分配政策,由 @jmr 提交于 https://github.com/google-gemini/gemini-cli/pull/23087 * feat(core): 添加与 /memory inbox 集成的技能修补支持,由 @SandyTao520 提交于 https://github.com/google-gemini/gemini-cli/pull/25148 * 停止在模型响应中抑制思考和文本,由 @gundermanc 提交于 https://github.com/google-gemini/gemini-cli/pull/25073 * fix(release): 在 nightly 版本中为 git hash 添加前缀以防止 semver 规范化,由 @SandyTao520 提交于 https://github.com/google-gemini/gemini-cli/pull/25304 * feat(cli): 提取 QuotaContext 并解决无限渲染循环,由 @Adib234 提交于 https://github.com/google-gemini/gemini-cli/pull/24959 * refactor(core): 提取并集中化沙箱路径工具,由 @ehedlund 提交于 https://github.com/google-gemini/gemini-cli/pull/25305 * feat(ui): 添加滚动动量增强功能,由 @devr0306 提交于 https://github.com/google-gemini/gemini-cli/pull/24447 * fix(core): 使用 isbinaryfile 替换自定义二进制检测以正确处理 UTF-8 (U+FFFD),由 @Anjaligarhwal 提交于 https://github.com/google-gemini/gemini-cli/pull/25297 * feat(agent): 实现工具控制显示协议(步骤 2-3),由 @mbleigh 提交于 https://github.com/google-gemini/gemini-cli/pull/25134 * 除非处于 terminalBuffer 模式,否则停止显示滚动条,由 @jacob314 提交于 https://github.com/google-gemini/gemini-cli/pull/25320 * feat: 在代理配置中支持 MCP 服务器的 auth 块,由 @TanmayVartak 提交于 https://github.com/google-gemini/gemini-cli/pull/24770 * fix(core): 将 GEMINI_PLANS_DIR 暴露给钩子环境,由 @Adib234 提交于 https://github.com/google-gemini/gemini-cli/pull/25296 * feat(core): 为计划模式模型路由实现静默回退,由 @jerop 提交于 https://github.com/google-gemini/gemini-cli/pull/25317 * fix: 在 fetchJson 中更正重定向计数递增,由 @KevinZhao 提交于 https://github.com/google-gemini/gemini-cli/pull/24896 * fix(core): 防止 ModelRouterService finally 块中的二次崩溃,由 @gundermanc 提交于 https://github.com/google-gemini/gemini-cli/pull/25333 * feat(core): 引入解耦的 ContextManager 和 Sidecar 架构,由 @joshualitt 提交于 https://github.com/google-gemini/gemini-cli/pull/24752 * docs(core): 更新通才代理文档,由 @abhipatel12 提交于 https://github.com/google-gemini/gemini-cli/pull/25325 * chore(mcp): 通过脆弱的字符串匹配检查 MCP 错误代码,由 @jackwotherspoon 提交于 https://github.com/google-gemini/gemini-cli/pull/25381 * feat(plan): 更新计划模式提示以允许显示计划内容,由 @ruomengz 提交于 https://github.com/google-gemini/gemini-cli/pull/25058 * test(core): 改进沙箱集成测试覆盖率并修复操作系统特定的失败,由 @ehedlund 提交于 https://github.com/google-gemini/gemini-cli/pull/25307 * fix(core): 对密钥链回退日志使用 debug 级别,由 @ehedlund 提交于 https://github.com/google-gemini/gemini-cli/pull/25398 * feat(test): 添加亚洲语言性能测试,由 @cynthialong0-0 提交于 https://github.com/google-gemini/gemini-cli/pull/25392 * feat(cli): 在 AskUser 多行回答中启用鼠标点击定位光标,由 @Adib234 提交于 https://github.com/google-gemini/gemini-cli/pull/24630 * fix(core): 将 kmscon 终端检测为支持真彩色,由 @claygeo 提交于 https://github.com/google-gemini/gemini-cli/pull/25282 * ci: 添加代理会话漂移检查工作流,由 @adamfweidman 提交于 https://github.com/google-gemini/gemini-cli/pull/25389 * 在适用情况下使用 macos-latest-large 运行器,由 @scidomino 提交于 https://github.com/google-gemini/gemini-cli/pull/25413 * v0.37.2 的更新日志,由 @gemini-cli-robot 提交于 https://github.com/google-gemini/gemini-cli/pull/25336 * fix(patch): 将 a4e98c0 cherry-pick 到 release/v0.39.0-preview.0-pr-25138 以修补版本 v0.39.0-preview.0 并创建版本 0.39.0-preview.1,由 @gemini-cli-robot 提交于 https://github.com/google-gemini/gemini-cli/pull/25766 * fix(patch): 将 d6f88f8 cherry-pick 到 release/v0.39.0-preview.1-pr-25670 以修补版本 v0.39.0-preview.1 并创建版本 0.39.0-preview.2,由 @gemini-cli-robot 提交于 https://github.com/google-gemini/gemini-cli/pull/25776 ## 新贡献者 * @dogukanozen 在 https://github.com/google-gemini/gemini-cli/pull/21447 中完成了首次贡献 * @AdamyaSingh7 在 https://github.com/google-gemini/gemini-cli/pull/21897 中完成了首次贡献 * @chernistry 在 https://github.com/google-gemini/gemini-cli/pull/24773 中完成了首次贡献 * @kimjune01 在 https://github.com/google-gemini/gemini-cli/pull/23341 中完成了首次贡献 * @anthraxmilkshake 在 https://github.com/google-gemini/gemini-cli/pull/25089 中完成了首次贡献 * @jmr 在 https://github.com/google-gemini/gemini-cli/pull/23087 中完成了首次贡献 * @TanmayVartak 在 https://github.com/google-gemini/gemini-cli/pull/24770 中完成了首次贡献 * @KevinZhao 在 https://github.com/google-gemini/gemini-cli/pull/24896 中完成了首次贡献 * @claygeo 在 https://github.com/google-gemini/gemini-cli/pull/25282 中完成了首次贡献 **完整更新日志**: https://github.com/google-gemini/gemini-cli/compare/v0.38.2...v0.39.0