帮助

恢复 shell 环境变量备份

HaryAI Switch 的「一键修复」在删除任何 export 之前都会把被删的条目存成一份 JSON 备份。如果之后想把某条 export 加回去,这页说明备份在哪里、长什么样、以及怎么手动还原。

备份保存在哪里

每次「一键修复」都会在应用数据目录里生成一份新备份:

macOS~/Library/Application Support/HongqiaoSwitch/env-backups/
Windows%APPDATA%\HongqiaoSwitch\env-backups\

文件名带时间戳,例如 env-backup-20260518_124530.json。

备份文件结构

备份是纯 JSON。conflicts 数组里每一条都是一次被删除的 export:

{
  "backupPath": "...",
  "timestamp": "20260518_124530",
  "conflicts": [
    {
      "varName": "ANTHROPIC_BASE_URL",
      "varValue": "http://example.test",
      "sourceType": "file",
      "sourcePath": "/Users/you/.zshrc:3"
    }
  ]
}
  • varName被删掉的环境变量名
  • varValue删除时的值,还原时直接照搬
  • sourceType"file" 表示 shell 配置文件(macOS / Linux),"registry" 表示 Windows 注册表
  • sourcePath原来的位置:Unix 是「文件路径:行号」,Windows 是注册表键路径

在 macOS / Linux 上还原

  1. 用任意文本编辑器打开备份 JSON。
  2. 对你想还原的每一条,看 sourcePath:冒号前面就是当时这条 export 所在的 shell 配置文件(比如 ~/.zshrc)。
  3. 打开那个文件,在末尾新增一行: export VARNAME="VALUE"
  4. 新开一个 terminal,或者在当前 terminal 里运行 source ~/.zshrc

在 Windows 上还原

  1. 用任意文本编辑器打开备份 JSON。
  2. 打开「系统属性 → 高级 → 环境变量」。
  3. 在「用户变量」或「系统变量」中(根据原始 sourcePath 选对应位置)新建一个变量,变量名用 varName,值用 varValue。
  4. 重新打开 PowerShell 或 cmd 窗口,新值才会被读到。

还原之后再打开 HaryAI Switch 会怎样

如果你把同样的 export 加回去,HaryAI Switch 下次扫描时会再次把它标成冲突。这是预期行为 —— Claude Code 和 Codex 都把 shell 环境变量作为最高优先级的配置来源,只要 shell 里有 export,本应用写入的设置就会被覆盖。如果你希望 export 与本应用共存,把两边都指向同一个 gateway 即可。

清理旧备份

备份不会自动删除。确认本应用的切换工作符合预期之后,可以手动删除不再需要恢复的 env-backup-*.json 文件。

小虹桥 — Claude / Codex 尽在掌握。