Amp 是 Ampcode 推出的编程智能体,可以在网页上、通过命令行工具或在原生 App 中使用。与纯本地工具不同,它把对话作为线程保存在 ampcode.com 上,因此网络流量本身就是其工作方式的一部分。“amp coding agent security”和“is amp safe”这类搜索,需要的正是对其文档内容的平实说明。本文提供这样的说明,然后展示 HisnLabs 开发的 macOS 网络防火墙 FireAI 如何在你的 Mac 上监视 Amp 的连接。
Amp 是什么,如何在 Mac 上运行
使用手册称 Amp 为编程智能体和开发环境,可在网页、CLI 以及 macOS 和 iOS App 中使用,线程可以在它们之间延续。它支持通过 MCP 进行定制。CLI 文档给出了一个安装脚本(curl -fsSL https://ampcode.com/install.sh | bash),支持 macOS、Linux 以及通过 WSL 运行的 Windows,并说明 CLI 可以在你的机器上、在文档称为 orb 的云环境中,或在已连接的 runner 上运行智能体。账户通过 amp login、amp account list 和 amp logout 管理,AMP_API_KEY 环境变量优先于已保存的账户。
它能访问什么,数据去向何处
安全页面称,Amp 会收集代码片段和对话线程,包括用户消息、模型响应、代码上下文和工具结果,而不会查看、存储、克隆或索引整个代码库。它声明密钥类信息在进入线程或到达外部服务之前会被自动脱敏。代码片段会被发送到多家模型提供方,主要基础设施托管在 Google Cloud 上,公司表示所有基础设施都在位于美国的服务器上运行。已删除的线程会在 30 天内被移除。这些是厂商的声明,我们无法独立验证。
影响其行为的设置
设置文档列出了位于 ~/.config/amp/settings.json 的用户设置和位于 .amp/settings.json 的工作区设置。相关的键包括:用于禁用特定工具的 amp.tools.disable、用于配置 MCP 服务器的 amp.mcpServers、按仓库设置线程隐私的 amp.defaultVisibility,以及控制 ampcode.com 是否可以远程创建线程的 amp.remoteThreadCreation.enabled。工作区管理员可以应用覆盖本地设置的托管设置。所查阅的页面没有详细描述权限询问机制,因此请查看最新的使用手册,了解 Amp 在运行命令之前会询问什么。
用 FireAI 监视 Amp
FireAI 是 HisnLabs 开发的 macOS 设备端防火墙。其 Agent profile 功能把 Amp 列为它识别的 19 种 AI 智能体之一,并通过运行时所运行的脚本识别 Amp,这是 Agent profile 针对通过 node、bun、deno 或 python 启动的智能体所采用的方法。智能体的子进程,例如它启动的 shell、git 或 curl,会通过向上追溯父进程而归属于它。随后,FireAI 会在最初 3 天学习 Amp 通常联系哪些目的地,按域名分组,在此期间不标记任何内容。此后,首次出现的目的地会在 Suggestions、AI agents 卡片和 Quick Review 中被标记。上传峰值也会被标记:某一小时内该智能体的上传量至少是其此前最繁忙一小时的 4 倍,且不少于 25 MB。
FireAI 只使用元数据,即主机名和字节数,从不读取连接的有效载荷。默认情况下,它只作标记,把决定留给你。在 Agent profile 安全模式下,它会更进一步:学习结束后,连接到基线之外目的地的请求会被拦截,直到你点按 Allow;Keep blocked 则会把这次拦截变成一条在所有模式下都有效的规则。
逐步设置
- 安装 FireAI 并完成首次运行设置,参见 Install and finish setup。
- 像平常一样使用 Amp 3 天。FireAI 会在后台学习其目的地,此时还不会标记任何内容。
- 打开 Suggestions,找到 AI agents 卡片。出现标记时,阅读那句平实的说明,然后在 Quick Review 中向左滑动拦截,或向右滑动选择“It’s fine”(没问题)。
- 如果希望智能体只访问它已经在用的地方,请在安全模式菜单中选择 Agent profile,它与 Home、Coffee shop、Paranoid 和 Under attack 并列。
- 有内容被拦截时,打开 AI agents 卡片,选择 Allow 将其加入基线,或选择 Keep blocked 创建拦截规则。
局限
- FireAI 无法阻止提示注入。它通过标记数据离开你的 Mac 的路径并允许你拦截该路径来限制损害。
- FireAI 看不到 Amp 的提示、MCP 工具的内容、技能,也看不到它读取了哪些文件,因为 TLS 隐藏了有效载荷,而且 FireAI 并不在智能体内部。
- Amp 是按脚本名称匹配的,因此 FireAI 只是对它进行标注,而不是验证:只有 Claude Code、Claude 和 Cursor 会根据其开发者的签名进行核验。
- 由于 Amp 的设计就是把代码上下文发送到其服务和模型提供方,向其常用域名的大量上传是预期之内的;峰值标记只会在某一小时的上传量至少是此前最繁忙一小时的 4 倍且超过 25 MB 时触发。
- Amp 在云端 orb 或远程 runner 上完成的工作发生在你的 Mac 之外,FireAI 看不到。
- 在 3 天学习期内不会标记任何内容,上传峰值只会被标记,不会被拦截。
- 由于目的地按域名分组,智能体已在使用的域名下的新服务器会被视为已知。
该功能的说明见 Agent profile 文档。
FireAI 识别的其他智能体也有各自的指南:Claude Code、Claude 桌面 App、Cursor、ChatGPT Mac App、OpenAI Codex CLI、OpenClaw、Hermes Agent、Gemini CLI、GitHub Copilot CLI、Qwen Code、opencode、Aider、Goose、Crush、Windsurf、Kiro、Trae、Meta 的 Muse、由 Python 或 Node 运行的任何 AI 智能体。
FireAI 和 HisnLabs 在其中扮演的角色
Amp 按设计就会把代码上下文发送给模型提供方。FireAI 会显示并可以拦截它访问的任何新目的地。
FireAI 是 HisnLabs 自己的产品:一款直接在 Mac 上运行的 AI 防火墙。它用通俗易懂的语言显示你的应用建立的每一个连接,并让你决定哪些数据可以离开你的 Mac——它的 AI 在本地运行,因此你的流量永远不会发送给我们或任何其他人。HisnLabs 的安全研究团队负责让这些判断保持准确:归类哪些域名只是普通的遥测、哪些属于真正的服务,追踪连接背后的国家和网络,并用真实的流量模式训练设备端模型(FireAI Pilot 功能)——这一切都不会离开你的 Mac。
你可以阅读它背后的技术决策,或试用 FireAI 17 天:HisnLabs 出品的 FireAI。
