在 Mac 上卸载 Claude Code、Codex CLI 和 OpenCode
在 Mac 上卸载 Claude Code、Codex CLI 或 OpenCode,先按实际安装方式移除程序,再决定要不要删数据,终端里找不到命令和聊天记录没了是两回事,如果以后还可能用回来,或者还在用桌面应用、编辑器扩展,就先留下数据。
先决定保留什么
动手前把想留的设置和本地对话复制到能打开检查的备份里,不要指望重新登录账号就能恢复本地记录,如果只是想清缓存、继续用这些工具,直接看清理 AI 编程工具占用。
| 工具 | 默认要检查的数据位置 | 移除可能丢掉什么 |
|---|---|---|
| Claude Code | ~/.claude 和 ~/.claude.json |
设置、权限、MCP 配置和对话记录 |
| Codex CLI | ~/.codex |
本地配置、对话和以文件保存的登录信息 |
| OpenCode | ~/.local/share/opencode、~/.config/opencode、~/.cache/opencode |
对话、快照、服务商凭据、配置和缓存 |
路径分别来自 Claude Code 设置说明、Codex 配置说明及其记录位置说明,还有 OpenCode 的存储说明和配置说明,这是一份检查清单,不是一份批量删除清单。
用安装它的包管理器卸载
先完成正在做的工作,结束工具正在运行的会话,包管理器安装的版本只用下面对应的一行,Claude 卸载说明、OpenAI 的安装方式列表和 OpenCode 的安装说明列出了包名,npm uninstall加全局参数移除全局包,Homebrew uninstall移除指定的 formula 或 cask。
| 安装方式 | 卸载命令 |
|---|---|
| Claude Code,npm | npm uninstall -g @anthropic-ai/claude-code |
| Claude Code,Homebrew | brew uninstall --cask claude-code |
| Codex CLI,npm | npm uninstall -g @openai/codex |
| Codex CLI,Homebrew | brew uninstall --cask codex |
| OpenCode,npm | npm uninstall -g opencode-ai |
| OpenCode,Homebrew V1 tap | brew uninstall anomalyco/tap/opencode |
Claude 如果装的是单独命名的 latest 通道 cask,就换成 brew uninstall --cask claude-code@latest,OpenCode 的官方 tap 和 Homebrew 的 opencode formula 可能对应不同大版本,先核对已安装的包名,不要把每一行都跑一遍,也别顺手加 --zap,用了多个 Node 环境时,各环境的全局安装分别检查。
原生安装单独处理
Claude Code 的原生安装,Anthropic 指定了 ~/.local/bin/claude 和 ~/.local/share/claude,退出后确认它们属于这次安装,再把启动链接和程序目录移到废纸篓,~/.claude 留到后面单独决定。
Codex 原生安装的官方安装器源码把默认启动入口放在 ~/.local/bin,运行文件放在 ~/.codex/packages/standalone,检查其中的 codex 和 codex-code-mode-host 入口,确认没有留下的 Codex 安装需要它们后,只把核实过的入口和该运行目录移到废纸篓,CODEX_INSTALL_DIR 和 CODEX_HOME 可以改变位置,这是按安装器布局手动移除,不是一条官方通用卸载命令。
OpenCode 如果是用自己的脚本安装,在命令还可用时使用它的卸载器,先预览,第二行才执行卸载,并保留配置、对话和快照。
opencode uninstall --dry-run --keep-config --keep-data
opencode uninstall --keep-config --keep-data
看清预览再运行第二行,直接用 opencode uninstall 会处理更广的数据范围,即使加了保留参数也要先备份,还在用 OpenCode Desktop 时,共享数据要留下。
退出登录和移除扩展分开决定
如果也想退出登录,在移除程序前处理,Claude 的认证说明记录了 claude auth logout,Codex 的 CLI 参考记录了 codex logout,它的认证说明也说明登录信息可能保存在文件或系统凭据存储里,并与 IDE 扩展共用,退出登录也可能影响扩展。
不再需要的编辑器扩展,到编辑器的扩展或插件管理器里移除,CLI、扩展和桌面应用分别安装,Anthropic 明确提醒其他客户端可能重新创建 ~/.claude,Claude 指南讲桌面应用和单独安装的 Code,OpenCode 指南讲 OpenCode Desktop 及其与 CLI 共用的数据。
确定不要本地数据时再移除
只卸载 CLI,到这里可以停,备份过的数据继续保留,如果明确要重置本地数据,先退出所有共用它的客户端,检查备份,再把第一张表里确认不要的确切位置移到废纸篓,删除 ~/.codex 也会删掉存放在里面的原生运行文件,不是只卸载程序。
自定义配置目录和项目文件要单独看,Anthropic 记录了 CLAUDE_CONFIG_DIR,OpenCode 的 opencode debug paths 可以显示当前数据、配置、缓存和状态目录,卸载前先核对,不要默认路径一定适用,项目里的 .claude、.mcp.json 和 .opencode 可能是团队配置,保留源码和需要的 worktree 改动,不要为了移除助手删掉仓库。
Apple 的废纸篓说明介绍了清空前恢复项目的方法,只有项目还在里面才有这条恢复路径,包管理器卸载不等于把程序备份进废纸篓,需要时从原渠道重装,再从核对过的备份恢复数据,缓存重建也要能拿到所需的包或其他来源。
检查结果,不继续扩大删除范围
新开一个使用 zsh 的终端,按它的命令解析说明查看命令实际指向哪里。
type -a claude
type -a codex
type -a opencode
返回路径、别名或函数就继续检查,可能还有另一份安装,提示找不到只表示这个 shell 无法解析命令,不代表数据和扩展都没了,编辑器单独检查,也确认想保留的数据还在,更大范围的桌面应用移除看 AI 工具残留。
Mole 能处理哪一部分
Mole Mac 的独立 AI 页面可以处理符合条件的旧对话、经过 Git 核对的 worktree 和闲置 CLI 卸载,走专门的 AI 数据删除规则,这些是分别确认的选择,不是把工具的整个用户目录清空。
OpenCode 在 CLI 目录里,符合闲置条件的安装可以列出来卸载,有桌面应用共用数据或已安装的技能需要数据时会保留共享部分,Homebrew 安装的程序交给 Homebrew 卸载,其他符合条件的程序和数据目标移到废纸篓,Claude Code 和 Codex 刻意不在整套工具卸载名单里,要按上面的安装方式手动处理,默认不勾选表示等你决定,不代表以后勾选了还会保留。
常见问题
能卸载 Claude Code,继续用 Claude Desktop 吗?
可以,只移除单独安装的 CLI 和不需要的编辑器扩展,留下的客户端还要用共享数据时就保留,桌面应用也不想要了再按它的指南处理。
为什么卸载后命令还能运行?
新开终端查看命令解析,另一个包管理器、Node 环境、原生入口或 shell 别名都可能提供同名命令,确认是哪一份以后只移除那一份。
重装能恢复删掉的对话吗?
不要指望重装恢复,它提供的是程序,不是已删除本地对话和快照的备份,保留能读取的备份,废纸篓里需要的项目也等核对恢复结果后再处理。