macOS 客户端配置指南
macOS 上 Clash Verge Rev 与 Mihomo Party 的安装(含 Homebrew 命令)、订阅导入、系统代理与 TUN 模式的选择,重点讲解如何通过环境变量让 Claude Code、Codex CLI 等终端工具走代理,附常见问题处理表。

macOS 上配置机场客户端与 Windows 思路一致,但有几个平台特有的点:Homebrew 可以一条命令完成安装与升级、Gatekeeper 会拦截未公证的应用、以及对开发者来说最重要的终端代理问题。本文以 Clash Verge Rev 和 Mihomo Party 为主,按「安装 → 订阅 → 代理方式 → 终端工具 → 问题处理」展开,重点照顾使用 Claude Code、Codex CLI 的用户。
安装
使用 Homebrew(推荐)
如果已经安装了 Homebrew,两个客户端都可以通过 Cask 安装:
# Clash Verge Rev
brew install --cask clash-verge-rev
# Mihomo Party
brew install --cask mihomo-party
# 升级
brew upgrade --cask clash-verge-rev
Homebrew 安装的好处是版本管理统一、升级方便,并且不需要手动处理 DMG 文件。
手动下载
从项目 GitHub Releases 页面下载 DMG。注意区分芯片架构:
| 文件名特征 | 适用机型 |
|---|---|
aarch64 / arm64 | Apple Silicon(M 系列芯片) |
x64 / x86_64 | Intel 芯片 |
Apple Silicon 机器安装 x64 版本可以通过 Rosetta 运行,但 TUN 模式可能出现兼容问题,务必选对架构。
处理 Gatekeeper 提示
首次打开可能出现「无法打开,因为无法验证开发者」。处理方法二选一:
- 系统设置 → 隐私与安全性 → 滚动到底部 → 点击「仍要打开」。
- 终端执行:
xattr -cr "/Applications/Clash Verge.app"
ℹ️ 说明
第二种方法移除的是 macOS 为下载文件添加的隔离标记,并不改变应用本身。只对从官方 Releases 页面下载的文件执行此操作。
导入订阅
两个客户端的操作几乎相同:
- 从机场用户中心复制 Clash 订阅链接。
- 打开客户端「订阅」页面(Mihomo Party 中为「订阅管理」),粘贴链接后点击导入。
- 配置卡片出现并显示流量与到期信息即为成功。
- 右键配置卡片设置自动更新间隔,建议 1440 分钟。
导入失败的处理见 订阅更新失败怎么办。
系统代理与 TUN 模式
macOS 上两种流量接管方式的差异与 Windows 相同,但系统层面的表现略有不同。
系统代理
客户端开启系统代理后,会修改「系统设置 → 网络 → 当前网络 → 详细信息 → 代理」中的 HTTP、HTTPS 和 SOCKS 代理。Safari、Chrome、大多数 GUI 应用会自动遵守。
Clash Verge Rev 默认提供「代理守卫」选项,防止其他软件或系统更新重置代理设置。如果经常遇到代理「莫名其妙关掉」,可以开启它。
TUN 模式
TUN 模式需要客户端安装一个系统辅助程序(Helper),首次开启时会要求输入管理员密码。开启后客户端创建虚拟网卡 utun,所有流量在网络层被接管。
# 对应的内核配置片段
tun:
enable: true
stack: system # macOS 上 system 栈通常表现最好
auto-route: true
auto-detect-interface: true
dns-hijack:
- any:53
TUN 模式下无需为终端工具单独设置环境变量,但与企业 VPN、部分安全软件可能冲突。
| 方式 | 适用对象 | 优点 | 缺点 |
|---|---|---|---|
| 系统代理 | 浏览器、GUI 应用 | 无需管理员权限、稳定 | 终端与部分应用不生效 |
| TUN 模式 | 全部应用含终端 | 一次配置全覆盖 | 需要 Helper,可能与 VPN 冲突 |
| 环境变量 | 终端工具 | 精确控制、不影响其他应用 | 每个 shell 都要设置 |
终端代理:给 Claude Code 与 Codex CLI 用
这是 macOS 用户最常遇到的问题:浏览器一切正常,但 Claude Code 或 Codex CLI 在终端里报连接超时。原因是终端程序不读取系统代理设置,必须通过环境变量告诉它们代理在哪里。
临时设置(当前终端窗口有效)
客户端默认混合端口为 7897(Clash Verge Rev)或 7890(部分版本与 Mihomo Party),以客户端「设置」页面显示的端口为准。
export HTTP_PROXY="http://127.0.0.1:7897"
export HTTPS_PROXY="http://127.0.0.1:7897"
export ALL_PROXY="socks5://127.0.0.1:7897"
export NO_PROXY="localhost,127.0.0.1,::1"
设置后在同一窗口运行 Claude Code 或 Codex CLI 即可。可以先用 curl 验证:
curl -s -o /dev/null -w "%{http_code}\n" https://api.anthropic.com/
返回 200 或 4xx 状态码都说明代理通了(4xx 是服务端对未带凭证请求的正常响应),超时则说明代理未生效。
永久设置(写入 shell 配置)
macOS 默认 shell 是 zsh,把下面的内容追加到 ~/.zshrc:
# 代理开关函数:输入 proxy_on 开启,proxy_off 关闭
proxy_on() {
export HTTP_PROXY="http://127.0.0.1:7897"
export HTTPS_PROXY="http://127.0.0.1:7897"
export ALL_PROXY="socks5://127.0.0.1:7897"
export NO_PROXY="localhost,127.0.0.1,::1"
echo "proxy on"
}
proxy_off() {
unset HTTP_PROXY HTTPS_PROXY ALL_PROXY NO_PROXY
echo "proxy off"
}
执行 source ~/.zshrc 后,用 proxy_on 和 proxy_off 切换。用函数而不是直接 export 的好处是,不需要代理时(例如连接内网服务)可以随时关闭。
💡 提示
大小写两套变量(HTTP_PROXY 与 http_proxy)不同程序读取的可能不同。为了保险可以两套都设置。Claude Code 与 Codex CLI 读取大写版本即可正常工作。
Git 与包管理器
开发者还会用到 Git、npm、pip 等工具,它们的代理设置各自独立:
# Git
git config --global http.proxy http://127.0.0.1:7897
git config --global https.proxy http://127.0.0.1:7897
# npm
npm config set proxy http://127.0.0.1:7897
npm config set https-proxy http://127.0.0.1:7897
不想逐个配置时,开启 TUN 模式是最省事的方案。Codex CLI 的完整环境配置见 Codex 网络环境配置,Claude 相关的线路选择见 Claude 稳定机场指南。
为终端工具选节点
Claude Code 与 Codex CLI 一次任务会连续发起多次模型调用,持续数分钟。建议:
- 在客户端为 AI 策略组手动固定一个节点,不用「自动选择」。
- 优先选择晚高峰丢包率低的节点,专线优于中转。
- 任务进行中不要切换节点或切换代理模式。
节点评估方法见 AI 工具网络延迟与连接稳定性分析。
常见问题速查表
| 现象 | 可能原因 | 处理 |
|---|---|---|
| 应用无法打开,提示无法验证开发者 | Gatekeeper 拦截 | 隐私与安全性中「仍要打开」或 xattr 命令 |
| 系统代理开启后自动关闭 | 其他软件重置了代理设置 | 开启「代理守卫」 |
| TUN 模式开启失败 | Helper 未安装或权限不足 | 重新安装 Helper,输入管理员密码 |
| TUN 开启后断网 | 与 VPN 或安全软件冲突 | 关闭冲突软件,切换 TUN 栈 |
| 浏览器正常、终端超时 | 终端未设置代理 | 设置环境变量或开 TUN |
| 终端设置代理后 curl 返回 407 | 端口写错或客户端未开启混合端口 | 核对设置页面的端口 |
| 升级后配置丢失 | 配置目录变化 | 从备份恢复或重新导入订阅 |
| 内网服务无法访问 | 内网地址被代理 | 在 NO_PROXY 中添加内网段 |
小结
macOS 上客户端的核心配置只有三件事:用 Homebrew 装好客户端、导入订阅、决定流量接管方式。普通用户开系统代理即可;使用 Claude Code、Codex CLI 的开发者要么在 shell 配置里加一个代理开关函数,要么直接开 TUN 模式。为 AI 终端工具固定一个低丢包节点,是避免长任务中途失败的关键。Windows 用户可以参考对应的 Windows 客户端使用指南,更多客户端资料见 客户端栏目。
总结
- macOS 日常使用选系统代理,终端工具用环境变量或 TUN 模式接管
- Homebrew 安装客户端最省事,升级也只需一条命令
- Claude Code 与 Codex CLI 不读系统代理,必须显式设置 HTTPS_PROXY 等变量
常见问题
QmacOS 上 Clash Verge Rev 和 Mihomo Party 怎么选?
两者内核相同,功能接近。Clash Verge Rev 使用更广、教程更多;Mihomo Party 对 macOS 系统代理和 TUN 的处理在近期版本中更顺畅。可以都装上试一周,保留顺手的那个。
Q为什么 Safari 能上网,终端里的 curl 却超时?
系统代理只对遵守它的应用生效,终端程序默认不读取。需要在终端设置 HTTP_PROXY、HTTPS_PROXY 环境变量指向客户端的混合端口,或者开启 TUN 模式接管全部流量。
Q首次打开提示「无法验证开发者」怎么办?
这是 macOS Gatekeeper 对未经公证应用的提示。在「系统设置 → 隐私与安全性」底部点击「仍要打开」,或在终端用 xattr 命令移除隔离属性。开源客户端通常没有购买 Apple 开发者证书。
参考资料与信息来源
- Clash Verge Rev 官方文档 · macOS 安装与 TUN 模式说明
- Mihomo Party 项目页 · 发布版本与功能说明
- Homebrew Cask · Cask 包的安装与更新



