如何在 Mac 上卸载 Cockpit Tools
Cockpit Tools 是一款开源的桌面应用,用来管理 Codex、Cursor、Windsurf、Antigravity、Grok CLI 等 AI 编码工具的多个账号,来自它的 GitHub 项目。它的 README 说,它管理的账号、公共配置、日志、备份和实例配置都存在 ~/.cockpit_tools,里面包括登录令牌,所以把这个文件夹当作机密。切换账号时它还会把选中的登录写进别的工具自己的目录,比如 ~/.codex、~/.grok 和 ~/.zcode/v2。移除任何东西之前先想好要留什么。本文覆盖项目 GitHub Release 里的 Apple 芯片磁盘映像,它没有 Homebrew cask。
退出并移除应用
- 先记下之后还要用的账号,不再需要的账号在 Cockpit Tools 里删除,README 建议在公共或共用电脑上用完删除账号再退出应用。想把整套都留下的话,把
~/.cockpit_tools拷到安全的地方,应用里的导出并不是完整的登录备份,README 说 Grok CLI 的导出不含令牌,无法恢复登录。 - 退出 Cockpit Tools。README 说关闭按钮可以设成最小化到托盘,所以从托盘或菜单栏图标退出,或者在窗口最前时按 Command + Q。测试里应用一共 5 个进程,Mole 的状态页把它们合成一行 Cockpit Tools。
- 打开访达,进入「应用程序」,把 Cockpit Tools 拖进废纸篓。
测试里没有记录到 Cockpit Tools 的登录项或启动代理。
数据在哪里
在访达按 Shift + Command + G 逐项打开,不存在的路径跳过即可。
| 位置 | 内容 | 处理建议 |
|---|---|---|
~/.cockpit_tools |
按 README,是各平台的账号、公共配置、日志、备份和实例配置,受管实例在 instances/<platform> 下(按平台分目录)。用 COCKPIT_TOOLS_DATA_DIR 指定了自定义目录的话,数据在那个目录 |
先拷出要留的,再移除。Mole 不会列出。 |
~/.antigravity_cockpit |
这个文件夹以前的名字。README 说已有安装会从旧名字建一个指向新文件夹的链接,所以它可能是链接,也可能是更早的真实文件夹 | 和 ~/.cockpit_tools 一起处理。Mole 不会列出。 |
~/.codex、~/.grok、~/.zcode/v2 |
Codex、Grok CLI 和 ZCode 自己的登录,Cockpit Tools 切换账号时会改写它们 | 保留。它们属于那些工具,移除 Cockpit Tools 之后,那里仍是你最后一次切换到的账号。 |
登录钥匙串里服务名为 gemini、账户为 antigravity 的条目 |
Antigravity 自己的登录信息,按 Cockpit Tools 的源码,切换 Antigravity 账号时会改写它 | 保留。它属于 Antigravity,里面是你最后一次切换到的账号。Mole 不会列出钥匙串条目。 |
~/Library/Application Support/cockpit-tools |
测试里 8 KB | 移除。Mole 会列出供审查,默认勾选。 |
~/Library/Caches/com.jlcodes.cockpit-tools |
缓存,测试里 324 KB | 移除。Mole 默认勾选。 |
~/Library/WebKit/com.jlcodes.cockpit-tools |
网页视图的存储,测试里 946 KB | 移除。Mole 默认勾选。 |
getconf DARWIN_USER_CACHE_DIR 和 getconf DARWIN_USER_TEMP_DIR 打印出的文件夹里名为 com.jlcodes.cockpit-tools 的临时缓存 |
测试里是空的 | 随应用一起移除。Mole 默认勾选。 |
检查结果
pgrep -il cockpit-tools
lsof -nP -iTCP:19528 -sTCP:LISTEN
ls -d "$HOME/.cockpit_tools" "$HOME/.antigravity_cockpit" "$HOME/Library/Application Support/cockpit-tools" "$HOME/Library/WebKit/com.jlcodes.cockpit-tools"
pgrep没有输出,表示 Cockpit Tools 没在跑。打印出一行就是还活着的进程,从托盘或菜单栏图标退出它,或者重启一次 Mac。lsof没有输出,表示 19528 端口上没有进程在监听,README 把它写作本地 WebSocket 服务的默认端口,测试没有记录这个端口。有输出的话,那一行就是占着端口的进程,改过设置的话也可能是别的程序。ls打印出来的路径仍然存在,留了账号的话~/.cockpit_tools还在是正常的。No such file or directory表示该路径已经没了。
账号和订阅
Cockpit Tools 没有自己的账号,README 说它不需要单独注册平台账号。移除它不会让你退出 Codex、Cursor 等服务的登录,也不会取消和它们之间的任何东西,这些登录仍留在上面说的各工具自己的目录里。
Mole 会列出什么
Mole 会勾选应用本体、缓存、网页视图存储和两个临时缓存文件夹,~/Library/Application Support/cockpit-tools 会列出供审查,默认勾选。Mole 不会列出 ~/.cockpit_tools 和其他工具的目录,所以里面的账号和令牌会一直留着,直到你自己处理。移除之前 Mole 会请 Cockpit Tools 退出。
这次检查覆盖了什么
2026 年 11 月 9 日,这次检查从项目的 GitHub Release 下载了 Apple 芯片磁盘映像 1.3.80,sha256 与官方发布一致,把应用拷进「应用程序」后打开一次、退出。随后用源码构建、重新签名的 Debug 版 Mole 勾上全部审查行卸载,没有使用 Mole 的公证发布版。Mole 把 5 行连同应用本体移进了废纸篓,没有失败项,也没有留下归到 Cockpit Tools 名下的东西。首次启动后 ~/.cockpit_tools 是否存在,这次没有检查。状态页显示一行 Cockpit Tools,5 个进程,Mole 没有找到更新渠道,也就没有执行更新。没有添加任何账号,所以切换账号、受管实例、本地 WebSocket 服务和其他工具的登录文件都没有测。
