如何在 Mac 上卸载 Wave Terminal
Wave Terminal 把设置、SSH 连接和加密后的密钥放在 ~/.config/waveterm,工作区和标签页放在 ~/Library/Application Support/waveterm,以后还想要回这套配置的话,动手之前先把前一个文件夹复制出来。Shell 历史、各种 dotfile 和项目文件都不属于 Wave,卸载后原样留着。这篇覆盖从 waveterm.dev 下载的版本(装好后叫 Wave.app)和 Homebrew cask wave。
先保存配置
Wave 的配置文档把所有设置文件都放在 ~/.config/waveterm,里面有 settings.json、记着你在 Wave 里加过的 SSH 和 WSL 连接的 connections.json,还有主题、预设和小组件,v0.9.0 之前的老版本用的是 ~/.waveterm/config,手上是哪个就把哪个复制到别处。
存在 Wave 里的密钥按官方说明加密后放在 Wave 的配置目录,解密用的钥匙存在 macOS 钥匙串里,所以只复制文件夹,换一台 Mac 未必能把这些密钥带回来,只存在 Wave 里的密码先另外记好。~/.ssh/config 里的主机属于你自己的 SSH 配置,不归 Wave 管,卸载应用不会动它。
退出 Wave,移除应用
- 从 Wave 菜单退出应用,它在窗口之外还跑着一个后台服务
wavesrv。 - 打开「活动监视器」搜索 Wave,确认 Wave、几个 Helper 进程和
wavesrv都已退出,测试时应用一退出它们就一起结束了。 - 在访达的「应用程序」里把 Wave 移到废纸篓。
两次测试都没看到 Wave 注册登录项或启动代理,「登录项与扩展」里没有要关的东西。
如果 Wave 往远程机器上装过辅助程序 wsh,按连接文档的说法它在每台远程主机的 ~/.waveterm/bin/wsh,在这台 Mac 上卸载应用碰不到那些机器,不再用 Wave 连某台主机时,再到那台主机上删掉这个文件夹。
Wave 的数据放在哪里
在访达按 Shift + Command + G 逐个打开,不存在的跳过。
| 位置 | 里面是什么 | 如何处理 |
|---|---|---|
~/.config/waveterm |
设置、连接、主题、小组件和加密的密钥文件 | 先备份,要重装就留着 |
~/Library/Application Support/waveterm |
Wave 的数据目录,按它的源代码,工作区和标签页的本地数据库在这里 | 不需要找回布局时再删 |
~/Library/Application Support/Wave |
Electron 外壳的浏览器引擎缓存,测试机上看到的 | 退出后可以删 |
~/Library/Caches/waveterm |
测试时首次启动建的空缓存文件夹 | 可以删 |
~/Library/Preferences/dev.commandline.waveterm.plist |
应用偏好设置 | 想干净重装时删 |
~/.waveterm |
v0.9.0 之前版本的配置目录,也是 Homebrew zap 清单里唯一的路径 | 先看里面有什么,新装的版本可能没有它 |
两个 Application Support 文件夹和那个缓存文件夹是在测试机上看到的,Wave 文档里没有写。
检查结果
应用进废纸篓后,在「终端」里运行这两条只读命令:
pgrep -il wave
ls -d ~/.config/waveterm "$HOME/Library/Application Support/waveterm" ~/.waveterm
pgrep没有输出,说明没有 Wave 进程在跑,列出wavesrv或Wave Helper,说明应用还有一部分开着,先退出再动数据,名字里带 wave 的其他程序也会被匹配到,看清进程名再判断。ls会打印仍然存在的文件夹,其余的提示「No such file or directory」,保留了设置时~/.config/waveterm还在是正常的,权限报错是另一种结果,先查清原因,别直接当成已经删掉。
用 Homebrew 安装时
wave 这个 cask 的 zap 清单只有一条路径 ~/.waveterm,也就是老版本的配置目录。自己运行 brew uninstall --cask --zap wave 会把它移进废纸篓,不看你在 Mole 里勾了什么,~/.config/waveterm 和两个 Application Support 文件夹则原样留下。想什么都不动,就不加 zap:
brew uninstall --cask wave
只有 zap 清单里每条路径都在 ~/Library 下、没有碰到你没勾选的行、也没有被其他已装应用认领时,Mole 才加 --zap。~/.waveterm 在 ~/Library 之外,所以 Mole 卸载 Homebrew 装的 Wave 时不加 --zap,你勾选的行由 Mole 自己处理。
Mole 会列出什么
以下是 Mole 对 waveterm.dev 下载版 Wave 的处理:
~/.config/waveterm、~/Library/Application Support/waveterm和~/Library/Caches/waveterm会列出,但默认不勾选,不主动勾上,设置和工作区就都留着。~/Library/Application Support/Wave会列出,但默认不勾选,里面的 Chromium 缓存文件夹,比如Cache、Code Cache和GPUCache,是单独的行,默认勾选。~/Library/Application Support/waveterm里的logs文件夹、dev.commandline.waveterm偏好设置文件、最近文稿列表和按 bundle ID 存放的临时缓存,默认勾选。~/.waveterm和wsh在远程主机上装的东西不会列出。
这次检查覆盖了什么
2026 年 9 月 19 日,从官方磁盘映像把 Wave 拷进「应用程序」,打开后用 Mole 1.15 的 Preview 构建卸载,没有 Homebrew 安装记录。2026 年 9 月 26 日又从同一个官方下载地址重装,打开一次,没有添加连接或密钥,再用 Mole 的开发构建全选卸载。Mole 的「状态」页把 Wave 显示成一行,8 个进程约 443 MB,wavesrv 也折在里面,15 项全部进了废纸篓,没有留下进程或启动项,只剩那个空的 ~/Library/Caches/waveterm,因为 Mole 当时还没有列出它。SSH 连接、密钥、远程 wsh 和 Homebrew cask 都没有测到。
