跳转到内容

cc-switch老是说环境变量冲突,然后就把这个环境变量删除了 Gemini CLI

Quick fix

忽略环境变量冲突提示以保留系统变量,或升级 cc-switch 至 v3.12.3 以修复 Official 模式下界面无法保存环境变量的问题。

报错原文
写入环境变量后,cc-switch老是说环境变量冲突,然后就把这个环境变量删除了

这两个问题涉及 cc-switch 处理 Gemini CLI 环境变量的不同机制。首先,cc-switch 会将配置项写入 ~/.gemini/.env 文件,如果系统环境变量(如 ~/.zshrc)中已存在同名变量,cc-switch 会提示冲突并尝试删除,因为系统环境变量的优先级更高。其次,在 v3.10.3 之前,Gemini Official 模式下的环境变量无法正确写入 ~/.gemini/.env;该问题在 v3.10.3 中修复,但在 v3.13.0 中又出现了点击保存会清空 .env 内容的新缺陷。

  1. 如果 cc-switch 提示环境变量冲突,且你希望保留系统级环境变量(如 ~/.zshrc 中的配置),请直接无视该提示,不要让其删除。

  2. 对于 Gemini Official 模式下界面设置不生效的问题,请将 cc-switch 升级至 v3.12.3 版本。

  3. 如果在 v3.13.0 中遇到点击保存清空环境变量的问题,请绕过界面,直接手动编辑配置文件添加所需变量。

    ~/.gemini/.env
    GEMINI_API_KEY="你的API_KEY"
    GOOGLE_CLOUD_PROJECT="你的项目ID"
ToolGemini CLI
Version3.8.0 - 3.13.0
PlatformsLinux
为什么 cc-switch 会删除我 ~/.zshrc 里的 GEMINI_API_KEY?
因为 CC Switch 是把配置项写入配置文件,会被优先级更高的环境变量覆盖。如果不想删除环境变量的话,无视这个提示就可以了。
Gemini Official 模式下配置 .env 不可用吗?
并非不可用。v3.10.3 修复了 Official 模式下的环境变量写入逻辑,现在会正确写入 ~/.gemini/.env 文件。如果遇到问题,请确保升级到 v3.12.3 或手动修改文件。

这是一个非官方社区 wiki,与 cc-switch 作者及项目本身无隶属关系。内容整理自项目公开的 GitHub issues。本站不分发任何软件。