MarkTechPost新闻
谷歌开源 SAM:面向 AI 智能体的零配置、零信任 P2P 网络
谷歌开源了 Sovereign Agent Mesh(SAM),一个 Apache-2.0 许可的 P2P 覆盖网络,旨在让 AI 智能体跨云、本地和边缘环境安全地发现并调用彼此的 MCP 工具,无需暴露内部端点。其身份系统将 OIDC 转换为 Biscuit 令牌,实现离线授权和默认拒绝。目前公共网格为测试网,生产环境需自托管控制平面。
- 编辑精选
- 智能体AI
- AI智能体
- 人工智能
- AI基础设施
- 应用
- 技术
- 开发者专区
- 语言模型
- 机器学习
- 新发布
- 开源
- 科技新闻
google/sam 并非 Segment Anything。这里的 SAM 指的是 Sovereign Agent Mesh,一个面向自主 AI 智能体的 Apache-2.0 网络项目。它要解决的问题很具体。智能体如今运行在云服务器、本地数据中心、笔记本电脑、树莓派和 Android 设备上。让它们共享工具通常意味着将内部脚本、LLM 端点或私有 API 暴露到公共互联网。SAM 的替代方案是一个零配置、零信任的 P2P 覆盖网络——更接近私有 VPN,但范围限定为基于 Model Context Protocol 的智能体间工具共享。节点自动发现彼此,穿透 NAT,并对每次调用进行密码学授权。
注意:该仓库带有明确免责声明:这不是谷歌官方支持的产品。
可以部署吗?
部分可以。工程上已具备生产形态,但公共网格仍标记为 beta 测试网。
- 现已发布的内容:Go 二进制文件、安装脚本、ghcr.io Docker 镜像、charts/sam-mesh Helm chart、生产级 Kubernetes 指南,以及 Android/iOS 支持。公共测试网为 bananas.sam-mesh.dev。对于真实工作负载,请自行托管控制平面。文档称之为“DIY 模式”,这是实现完全数据与策略控制的路径。
- 公司层面:最适合在多个网络边界运行智能体的中端市场和企业工程组织。单一 VPC 内的初创公司收益较小;一旦智能体跨越云、数据中心和笔记本电脑,价值才会显现。
- 行业:金融服务、医疗保健、公共部门和国防,以及工业或机器人边缘集群。广义上,任何不能将内部工具发布到互联网的受监管组织。
- 应用场景:跨云 MCP 工具共享、本地到云的混合智能体调用、代理推理端点、带凭据注入的沙箱智能体,以及池化热备工作节点。
架构:三个二进制文件
- sam-control-plane — 身份注册、令牌签发、策略分发。
- sam-router — libp2p 引导节点和 GossipSub 路由覆盖网络。
- sam-node — P2P 客户端,提供网格传输、自愈连接和本地 MCP HTTP 接口。
节点通过 sam-node join 加入,然后通过 sam-node run 运行。libp2p 使用 5001/udp 和 5002/tcp;本地 MCP API 默认端口为 8080。
身份:OIDC 进,Biscuit 出
这是有趣的部分。控制平面验证 OIDC JWT,然后将声明转换为 Datalog 事实,并将其封装进 Biscuit 令牌。sub 变为 user(...),每个组变为 group(...),对等节点 ID 绑定为 client_peer_id(...)。
其结果是:节点可离线授权。节点根据自身本地规则评估提交的令牌,无需回连调用。
执行策略为严格的默认拒绝。访问需要显式的能力事实,例如 granted_service_exact(...)。没有内置例外——即使是发现目录 system://sam.catalog 也必须被授予权限。服务使用严格的 type://name 约定,并支持通配符(mcp://*、mcp://build-runner.*)。
每个请求都经过两阶段流水线。阶段 1 根据封禁和撤销缓存对连接进行门控。阶段 2 恰好执行两次 Biscuit 授权器检查。第一次覆盖节点自身的身份令牌,以生成 target_fact 断言。第二次覆盖调用方的令牌。基线检查通过要求连接对等节点 ID 与令牌匹配来阻止重放。
操作员可以在本地进行衰减,例如在晚上 9 点后拒绝写入工具或阻止承包商。本地允许仍然不能绕过控制平面的约束检查。
交互式说明
智能体实际调用什么
节点暴露标准 MCP 工具:discover_remote_services、find_remote_tools 和 call_remote_tool。指南涵盖 Gemini、Claude Code、Claude Desktop、Google Antigravity 和 OpenClaw。sam-node skill install 会写入 SKILL.md,使智能体能够自行将节点上线。注册登录按设计保留给人类操作员。
出口控制:sam-box 和 nano-init
安全出站网关针对的是一个真实的智能体安全缺口。nano-init 在沙箱中作为 PID 1 运行,并设置代理环境变量。对于忽略这些变量的工具,它会通过 LD_PRELOAD 注入一个拦截器,挂钩 C 语言 connect() 系统调用在 80 和 443 端口上的行为。
流量通过 Unix 域套接字到达 sam-box。网关验证 Biscuit,从 secrets.yaml 注入真实凭据,并将请求升级为 HTTPS。智能体沙箱永远不会持有密钥。
一个实用模式:热备智能体池
代码审查者池示例通过普通 MCP 服务将批量工作分发到多个相同的运行中工作节点。管理器通过 DHT 发现学习对等节点,并使用租约跟踪忙碌状态。正确性来自同步租约分配、栅栏令牌、宽限驱逐和 POOL_BUSY 兜底机制。工作节点离线验证短时 HMAC 令牌;其他任何情况均返回 NO_LEASE。
核心要点
- SAM 即 Sovereign Agent Mesh,是一个基于 Apache-2.0 许可的 P2P 覆盖网络——并非 Segment Anything。
- 包含三个二进制组件:控制平面负责身份与策略,路由器负责 libp2p 传输,节点负责 MCP。
- OIDC 声明被转换为 Biscuit Datalog 事实,因此节点可离线完成授权。
- 默认拒绝是绝对原则;就连发现目录也需要显式授权才能访问。
- 生产环境使用意味着需要自托管控制平面——公共网格目前是测试网阶段。
需要与我们合作推广你的 GitHub 仓库、Hugging Face 页面、产品发布或网络研讨会等?欢迎联系我们

Michal Sutter 是一位数据科学专业人士,拥有帕多瓦大学数据科学理学硕士学位。凭借在统计分析、机器学习和数据工程方面的扎实基础,Michal 擅长将复杂数据集转化为可操作的洞察。