Gemini CLI 修复 VS Code 重新激活时的 Disposable 泄漏

godququ5-code · ghdev · 2026-07-24

这个 PR 修复了 google-gemini/gemini-cli 的 vscode-ide-companion 扩展生命周期 bug。

activate() 里两处注册调用被错误地包进了一个逗号表达式,导致 gemini.diff.accept 命令和 onDidChangeWorkspaceFolders 监听器虽然创建了,却没有真正加入 context.subscriptions。结果是这些 Disposable 无法在停用时释放,重新激活时会报“命令已存在”,而残留的工作区监听还会在 IDEServer 停止后继续触发 syncEnvVars()。

这次修改移除了多余括号,并补了回归测试,确认两个 Disposable 都会被正确登记。

原文链接 →

「编程与Agent」频道最新

更多「编程与Agent」频道 AI 资讯 →