未安装 / not installed or not executable - CC Switch
Quick fix
升级 CC Switch 至 v3.20.0+ 以修复自定义 npm prefix 及 macOS 检测失败,Windows 误报多处安装需升级至 v3.16.5+。
Symptom
Section titled “Symptom”未安装 / not installed or not executableCC Switch 的「本地环境检查」在早期版本中存在多个检测逻辑缺陷,导致不同平台下出现不同的异常变种。在 Windows 下,若修改了 npm 全局包的 prefix,旧版检测逻辑因硬编码 %APPDATA%\npm 会导致工具被误报为未安装;在 macOS 下,通过 brew 安装 node 并用 npm 全局安装的工具无法被正确识别。此外,Windows 下 npm 生成的 .cmd 等包装脚本曾被误判为多个独立实例,导致误报“检测到多处安装”。对于 WSL 与 Windows 宿主机,单个实例仅能管理一套配置目录。
将 CC Switch 升级至 v3.20.0 或更高版本。该版本重做了 Windows CLI 检测逻辑(合并注册表 PATH、扫描自定义 npm prefix),并修复了 macOS 下 Codex/Gemini/OpenCode 的检测问题。
若遇到 npm 包装脚本导致的“检测到多处安装”误报,请确保版本至少为 v3.16.5,该版本已调整候选可执行文件枚举逻辑并对同目录包装脚本去重。
若需在 Windows 和 WSL 中分开管理配置,请在 CC Switch「设置」中自定义各 CLI 工具的配置目录(如 ~/.gemini/),或运行两个 CC Switch 实例分别指定不同的配置路径。
Affected Versions
Section titled “Affected Versions”Source Issues
Section titled “Source Issues”本页汇总自 4 个真实 issue
- 为什么终端里命令正常运行,但 CC Switch 显示未安装?
- 这通常是因为你修改了 npm 全局包的 prefix(如 npm config set prefix),而旧版 CC Switch 仅硬编码扫描 %APPDATA%\npm。升级至 v3.20.0+ 即可自动读取真实的 npm prefix 并正确识别。
- Windows 下提示“检测到多处安装”是怎么回事?
- npm 在 Windows 上全局安装时会生成无后缀脚本及 .cmd/.ps1 包装文件。v3.16.0 至 v3.16.4 的诊断逻辑会将它们误认为多个独立安装。升级至 v3.16.5+ 即可自动去重。
- 如何同时管理 Windows 宿主机和 WSL 中的配置目录?
- 单个 CC Switch 实例只能管理一套目录配置。你可以通过在「设置」中自定义 CLI 工具目录指向 WSL 的挂载路径,或者运行两个 CC Switch 实例分别管理。
这是一个非官方社区 wiki,与 cc-switch 作者及项目本身无隶属关系。内容整理自项目公开的 GitHub issues。本站不分发任何软件。