如何在 Mac 上卸载 Supacode
卸载 Supacode 前,先备份设置和仍有需要保留内容的工作树,官方存储说明显示,托管工作树与设置都放在同一个隐藏目录里,本页覆盖官网磁盘映像中的 Mac 应用,不包括它启动的编程 Agent。
先退出,再移除应用
先停止正在运行的 Agent 任务和终端命令,保存项目修改,再按 Cmd + Q 退出 Supacode,核对备份后,把「应用程序」里的 supacode.app 移进废纸篓,仓库和另外安装的 Agent CLI 先留下。
核对本机数据
停止任务、核对备份并退出后,在 Finder 按 Shift + Command + G 打开下面的完整 Library 路径,只把不再需要的数据移到废纸篓,不存在的跳过,共用父目录留着。~/.supacode 里还有要保留的托管工作树时,整个目录都留下;需要的文件和 Git 状态已在外面妥善保存、这里的工作树都不再需要时,用「前往文件夹」打开 ~,按 Shift + Command + . 显示隐藏项目,只把 .supacode 移到废纸篓。关联工作树共用仓库元数据,只复制工作文件不能保留 Git 关系,仍要在别处使用的工作树按 Git 的移动或修复流程处理。Git 工作树说明
~/.supacode保存设置和本地界面状态,当前官方文档还把托管工作树放在~/.supacode/repos,考虑移除父目录前,先复制需要的文件并保留它们与 Git 仓库的关系。~/Library/Application Support/app.supabit.supacode和~/Library/Preferences/app.supabit.supacode.plist在测试中保存应用配置,先复制需要的内容。~/Library/Caches/app.supabit.supacode、~/Library/Caches/SentryCrash/Supacode、~/Library/HTTPStorages/app.supabit.supacode和~/Library/HTTPStorages/app.supabit.supacode.binarycookies是归属明确的应用缓存和网页状态。- 测试中的应用往
~/.codex/hooks.json写入了带条件的托管 hook,卸载后保留,只在 Supacode 工作界面里执行,不要因此删除整个共享文件或其他 Codex 历史。
检查卸载结果
pgrep -ifl supacode
ls -ld /Applications/supacode.app "$HOME/.supacode" "$HOME/Library/Application Support/app.supabit.supacode"
pgrep 没有输出只表示没有找到这个名称,不代表所有辅助进程都已退出,有输出时核对它的实际可执行文件路径,ls 提示路径不存在只说明这一处没有了,权限错误仍无法判断,留下的文件夹也可能是你要保留的数据。
用 Homebrew 安装时
cask 没有单独的卸载辅助程序,zap 涉及精确的支持目录、缓存、HTTP 存储、Cookie 和偏好设置,不包含 ~/.supacode,也不移除共享的 Codex hook。
不运行 zap 时,用下面的命令卸载:
brew uninstall --cask supacode
Mole 会先核对 Homebrew 的整份删除清单,涉及未勾选的数据、共享文件或无法确认的内容时跳过 --zap,已勾选的残留仍由 Mole 清理。自行运行 brew uninstall --cask --zap supacode 会执行 Homebrew 的完整 zap 清单,不会读取 Mole 的勾选状态。
Mole 会列出什么
Mole 默认勾选应用、精确 Bundle ID 的支持目录、偏好设置和可归属缓存,~/.supacode 会列出来供你检查,「卸载时一并移除数据和配置」关闭时不预选,开启后符合条件的自有数据可以预选。这个父目录可能包含工作树,需要的文件和 Git 状态没有妥善保存前,检查并取消勾选,移除应用不要求一并移除它。
这次检查覆盖了什么
2026 年 9 月 25 日,从官网 Mac 包拷出的 Supacode 0.10.8 用 Mole 开发构建实测,首次漏列 ~/.supacode,补上精确的待确认路径后,复测记录了移除结果,没有验证运行中的 Agent 任务、供应商操作或已有工作树的恢复。
