Claude Code 是 Anthropic 推出的编程智能体,在你的 Mac 的终端中运行。它会读取你的项目、编辑文件并代表你运行 shell 命令,而其中每一项操作都可能产生网络连接。本文梳理 Anthropic 文档中关于 Claude Code 如何在 macOS 上运行、它能访问什么以及哪些连接属于正常的说明,然后展示如何用 FireAI 监视这些连接。凡是来自 Anthropic 文档的事实,其来源均列于文末。
Claude Code 是什么,如何在 Mac 上运行
Anthropic 的设置页面列出了在 macOS 上安装 Claude Code 的三种方式。推荐的原生安装程序是一个 curl 脚本,它会下载二进制文件并在后台自行更新。Homebrew 提供两个 cask:稳定渠道的 claude-code 和最新渠道的 claude-code@latest,通过 Homebrew 安装的版本不会自动更新。此外还有一个全局 npm 包 @anthropic-ai/claude-code;据同一页面所述,它安装的是同一个原生二进制文件,而安装后的 claude 二进制文件本身不会调用 Node。文档说明,在 macOS 上该二进制文件由“Anthropic PBC”签名并经过 Apple 公证,你可以用 codesign --verify --verbose 进行检查。
# check the signature of the claude binary, as the setup page describes
codesign --verify --verbose ./claude它能访问什么,以及文档所述的权限模型
Claude Code 以启动它的账户所具有的权限运行。Anthropic 的安全页面描述了两种起始方式。在 Manual 模式下,它以只读方式启动,在编辑文件、运行测试或执行命令之前会先询问,而一组内置的只读命令,例如 ls、cat 和 git status,无需询问即可运行。Auto 模式是交互式终端和 VS Code 会话的内置起始模式:由一个单独的分类器模型审查各项操作,并拦截它判定为不安全的操作,同时你明确设置的询问和拒绝规则仍然适用。
文档中有三处细节与网络行为相关。第一,从网络获取内容的命令,例如 curl 和 wget,默认不会被自动批准。第二,工作目录的边界只是一个权限询问,因此你批准的 Bash 命令仍然可以写入你的用户账户能够写入的任何位置。第三,可选的沙箱化 Bash 工具通过 /sandbox 配置,在操作系统层面对 shell 命令实施文件系统和网络隔离。Anthropic 指出,沙箱只覆盖 shell 命令,文件工具、MCP 服务器和钩子都在沙箱之外运行。
安全页面还指出,没有任何系统能够完全免疫所有攻击,并建议审查建议的命令、避免把不受信任的内容直接通过管道传给 Claude,以及对涉及外部网络服务的脚本使用虚拟机。
Claude Code 文档列出的域名
Anthropic 的网络配置页面列出了独立 CLI 所需的 URL。以下是厂商文档中与防火墙最相关的部分:
| 主机 | 文档所述用途 |
|---|---|
| api.anthropic.com | Claude API 请求、WebFetch 域名安全检查、功能开关获取和遥测事件记录 |
| claude.ai、claude.com、platform.claude.com | 账户登录和 OAuth 令牌交换 |
| mcp-proxy.anthropic.com | 来自 claude.ai 的 MCP 连接器 |
| downloads.claude.ai | 原生安装程序、自动更新程序、更新检查和插件下载 |
| registry.npmjs.org | 通过 npm 和 bun 安装 Claude Code、安装插件,以及通过 npx 启动的 MCP 服务器 |
| github.com、raw.githubusercontent.com | 克隆插件市场;/release-notes 的更新日志源 |
| http-intake.logs.us5.datadoghq.com、browser-intake-us5-datadoghq.com | 可选的运行遥测和错误报告;文档说明可通过 DISABLE_TELEMETRY 或 CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC 禁用 |
同一页面说明,Claude Code 遵循标准的 HTTPS_PROXY 和 HTTP_PROXY 变量,不支持 SOCKS 代理。此列表之外的流量,例如 Claude 运行的构建命令所访问的软件包仓库,属于项目自身的流量,而不是 Claude Code 的流量。
为什么网络视角仍有帮助
权限询问向你展示 Claude Code 想要运行的命令。它们不会显示由你之前批准的命令、MCP 服务器、插件或仓库中的脚本所产生的每一个连接。网络层面的视角回答的是一个范围更窄且互补的问题:在智能体工作期间,这台机器实际连接到了哪里。FireAI 的 Agent profile 正是为回答这个问题而设计的。
用 FireAI 监视 Claude Code
FireAI 是 HisnLabs 开发的 macOS 防火墙,自 1.0.2 版起提供一项名为 Agent profile 的功能。它能识别 19 种 AI 智能体,学习每种智能体通常连接到哪里,并标记异常行为供你审查。Claude Code 是通过其代码签名来识别的。

Claude Code 是 FireAI 根据其开发者代码签名进行核验的三种智能体之一,因此匹配结果不只是一个名称。
FireAI 还会识别智能体的子进程,例如智能体运行的 shell、git 或 curl,方法是沿着进程的父进程向上追溯,直到找到该智能体。因此,这些连接会被计为智能体自己的连接。
FireAI 会标记什么
- 在最初的 3 天里,FireAI 学习该智能体通常联系的目的地,并按域名分组。在此学习期内不会标记任何内容。
- 此后,学习所得基线之外首次出现的目的地会被标记以供审查。
- 上传峰值也会被标记:某一小时内该智能体的上传量至少是其此前最繁忙一小时的 4 倍,且不少于 25 MB。
Agent profile 只使用元数据,即主机名和字节数。FireAI 从不读取连接的有效载荷,也无法读取加密连接的内部内容。
为 Claude Code 进行设置
- 安装 FireAI 并完成设置,然后像平常一样继续使用 Claude Code。3 天学习期从 FireAI 看到的内容开始计算。
- 打开 Suggestions,查看 AI agents 卡片。它列出 FireAI 已识别的智能体,以及它对每个智能体学到的内容。
- 当 Claude Code 访问一个它从未联系过的目的地时,标记会出现在 AI agents 卡片和 Quick Review 中。向左滑动为拦截,向右滑动为“It’s fine”(没问题)。
- Block 会为发起连接的进程创建一条规则。“It’s fine”会把该目的地加入智能体的基线,使其不再被标记。
- 若要让智能体只访问它已经在用的地方,请在安全模式菜单中选择 Agent profile,它与 Home、Coffee shop、Paranoid 和 Under attack 并列。智能体完成学习后,连接到基线之外目的地的请求会被拦截,而不只是被标记。
- 被拦截的目的地会出现在 AI agents 卡片中,并附有 Allow 和 Keep blocked 两个选项。Allow 会把它加入基线,智能体随即可以访问。Keep blocked 会创建一条拦截规则,使该目的地在所有模式下都保持被拦截。
局限
- FireAI 无法阻止提示注入。隐藏在网页或文件中的提示仍可能操纵智能体。FireAI 能做的是标记数据离开你的 Mac 的路径,并允许你拦截该路径。
- FireAI 看不到提示、MCP 工具的内容,也看不到 Claude Code 读取了哪些文件,例如 ~/.ssh。TLS 隐藏了有效载荷,而且 FireAI 并不在智能体内部。
- 很快就退出的子进程可能会被遗漏,而且子进程是按路径而非签名匹配的。
- 在 3 天学习期内不会标记任何内容。
- 在 Agent profile 模式下,直接连接到没有主机名的裸 IP 地址时,会按地址进行匹配。如果智能体常用的某项服务从一个新地址响应,该连接在你允许之前会被拦截。
- FireAI 对标记所作的平实说明依据的是它测量到的事实。它从不声称某个目的地安全或危险,决定权在你。
相关指南
同样的方法适用于 FireAI 识别的其他智能体:Claude 桌面 App、Cursor、ChatGPT Mac App、Codex CLI、OpenClaw、Hermes Agent、Gemini CLI、GitHub Copilot CLI、Amp、Qwen Code、opencode、Aider、Goose、Crush、Windsurf、Kiro、Trae、Meta 的 Muse、由 Python 或 Node 运行的任何其他 AI 智能体。完整的功能说明见 Agent profile 文档。
FireAI 和 HisnLabs 在其中扮演的角色
Claude Code 在行动之前会先询问。网络防火墙为它连接到哪里提供了第二重视角。
FireAI 是 HisnLabs 自己的产品:一款直接在 Mac 上运行的 AI 防火墙。它用通俗易懂的语言显示你的应用建立的每一个连接,并让你决定哪些数据可以离开你的 Mac——它的 AI 在本地运行,因此你的流量永远不会发送给我们或任何其他人。HisnLabs 的安全研究团队负责让这些判断保持准确:归类哪些域名只是普通的遥测、哪些属于真正的服务,追踪连接背后的国家和网络,并用真实的流量模式训练设备端模型(FireAI Pilot 功能)——这一切都不会离开你的 Mac。
你可以阅读它背后的技术决策,或试用 FireAI 17 天:HisnLabs 出品的 FireAI。
