Heron

Heron

Heron 是一款被动、零入侵的 AI 代理可观测性工具,它通过网络流量(pcap/live/eBPF)重建代理回合和 LLM/工具交互,并内置仪表板、指标和 SFT 数据导出——无需 SDK、无需代理、无需代码更改。
https://github.com/Netis/heron?ref=producthunt&utm_source=aipure
Heron

产品信息

更新于:2026年06月29日

什么是 Heron

Heron (Netis/heron) 将自己定位为“AI 代理的 Wireshark”:一个可观测性产品,它通过直接从捕获的流量而不是通过插桩代码或通过代理路由请求来重建 AI 代理的行为,从而让您了解 AI 代理正在做什么。它专注于代理工作流(规划器 → 工具调用 → 结果 → 下一步)和 LLM 交互,提供一个本地 Web 控制台 (http://localhost:3000) 来探索时间线、每次调用的详细信息、错误以及性能/使用指标。它支持无需权限重放捕获的 .pcap 文件,通过 libpcap 进行实时捕获(具有适当的功能),从远程探测器进行可选的 ZMQ 摄取,以及实验性的 Linux eBPF 模式,用于在主机上的 SSL 边界观察 TLS 流量。

Heron 的主要功能

Heron (Netis/heron) 是一款针对 AI 代理的被动可观测性工具——定位为“AI 代理的 Wireshark”——它无需任何 SDK、代理或代码更改,也无需位于请求路径中,即可直接从网络流量(pcap/实时捕获)或主机级 TLS 边界重建代理轮次、工具调用和 LLM 交互。它解析纯文本 HTTP/SSE(或通过可选的 Linux eBPF SSL uprobes 捕获解密内容),识别常见的 LLM 线协议 API(OpenAI/Anthropic/Gemini 和兼容 OpenAI 的服务器),构建时间线和服务拓扑图,计算延迟/token 指标,并将结果存储(默认为 DuckDB,可选 ClickHouse)在本地 Web 控制台和 REST API 之后,能够将真实流量导出为 SFT 就绪数据集。
零入侵被动捕获: 在网络(pcap 回放或实时接口)或主机的 TLS 边界观察 LLM/代理流量,无需 SDK 检测、无需代理、无需客户端代码更改——同时不影响请求路径。
代理轮次重建: 将多调用代理工作流(规划器 → 工具 → 结果 → 下一步)拼接成单个可寻址的“轮次”,并为 Claude Code 和 Codex CLI 等工具提供命名配置文件以及通用模式。
线协议 API 检测与语义解码: 自动检测和解码流行的 LLM API(OpenAI Chat Completions/Responses、Anthropic Messages、Gemini),并通过检查线上的字节支持兼容 OpenAI 的后端(vLLM、SGLang、Ollama、llama.cpp、LM Studio、LiteLLM)。
带深度钻取的实时控制台: 嵌入式 Web UI (localhost:3000),用于时间线、每次调用请求/响应检查、代理会话/轮次、原始 HTTP、管道健康状况以及性能、使用情况和错误的仪表板。
运维级指标与拓扑视图: 计算 TTFT/E2E 延迟/TPOT、token 吞吐量、错误率、调用量、延迟百分位数,并将服务到服务路径(客户端 → 代理 → 推理后端)可视化为有向图。
从真实流量导出 SFT 轨迹: 将重建的轮次/会话导出为 OpenAI 风格的消息 JSONL(包括工具调用/结果和结构化参数),将捕获的代理运行转换为微调数据。

Heron 的使用场景

代理调试与质量保证: 开发人员可以通过检查重建的轮次和完整的请求/响应体来诊断停滞的工具调用、计划循环、格式错误的提示和意外输出,而无需修改代理。
推理平台可观测性: AI 平台团队可以映射真实的服务拓扑(客户端 → LiteLLM → vLLM/SGLang 等),测量每个跳的延迟,并根据观察到的流量检测静默的模型/端点替换。
财务运营 / 成本归因: 工程经理和财务运营人员可以使用实际流量的证据,而不是定期的 SDK 导出,按代理类型、模型、端点和会话来归因使用情况和性能。
合规性、审计和事件响应: 安全/合规团队可以维护代理发送/接收内容的“一次捕获”证据链(在流量解密的情况下),支持审计和调查,而不会影响生产路径。
模型训练的数据集生成: ML 团队可以通过将轮次/会话导出为结构化的 JSONL,将真实的代理交互转换为 SFT 数据集,从而保留工具调用结构和提供商线协议格式。

优点

无需 SDK/代理,且不位于请求路径中,减少了部署摩擦并避免了观察者引起的停机。
高保真可见性:捕获完整的请求/响应体(当纯文本可用时),并重建更高级别的代理轮次,而不仅仅是每次调用的日志。
通过线级检测,与多个 LLM 提供商和兼容 OpenAI 的推理服务器具有广泛兼容性。
便携式分发:单个二进制文件,带嵌入式控制台;支持 pcap 回放,用于离线/CI 分析。

缺点

需要纯文本 HTTP 可见性;加密流量需要放置在 TLS 终止之后,或使用实验性的 Linux eBPF SSL-urobe 捕获并具有额外功能。
与显式跟踪/SDK 标记相比,被动捕获可能会限制分布式客户端集群之间的端到端关联。
某些格式仅部分支持;不支持的线协议格式将被跳过/报告而不是解码。
实时接口捕获可能需要提升的权限/能力(例如,Linux 上的 CAP_NET_RAW/CAP_NET_ADMIN)。

如何使用 Heron

1) 安装 Heron (Linux/macOS, 用户本地,无需 sudo): 运行一行安装程序,将 `heron` 二进制文件放置在用户本地目录下。 命令: curl -fsSL https://raw.githubusercontent.com/Netis/heron/main/install.sh | INSTALL_DIR="$HOME/.local" sh
2) 验证安装: 确认二进制文件运行正常且在您的 PATH 中。 命令: heron --version heron --help
3) 使用 .pcap 重放运行无特权冒烟测试: 重放包含 LLM 流量的现有数据包捕获。这不需要实时捕获,也不需要特殊权限。 命令: heron --pcap-file capture.pcap --no-retention 提示:如果您没有 pcap 文件,请使用 `testdata/pcaps/` 中的仓库夹具并重放其中任何一个。
4) 打开 Web 控制台: 启动 Heron 后,在浏览器中打开嵌入式控制台,以检查代理回合、时间线和指标。 URL: http://localhost:3000 注意:pcap 重放完成后,Heron 会保持 API/控制台可用,以便您浏览。按 Ctrl+C 退出,或传递 `--exit-after-drain` 以在管道排空后自动退出。
5) 检查健康状况并确认跟踪已重建 (API 验证): 使用 REST API 确认服务健康且重建的跟踪可用。 命令: curl -s http://localhost:3000/api/health curl -s 'http://localhost:3000/api/traces?limit=5'
6) (可选) 从网络接口运行实时捕获 (Linux/macOS): 如果您有实时接口并希望进行实时捕获,请针对接口运行 Heron。 命令: heron -i eth0 Linux 注意:实时捕获需要 `CAP_NET_RAW`(和相关功能)。安装文档建议一次性授予功能,这样您在运行时就不需要 sudo: sudo setcap cap_net_raw,cap_net_admin=eip ~/.local/bin/heron
7) 理解 TLS 要求(Heron 的部署位置): Heron 从明文 HTTP 重建 LLM 调用。将其安装在流量已解密的位置:在推理主机上、TLS 终止器后面,或从受信任的数据包源提供。仅靠数据包捕获无法查看加密主体。
8) (可选,Linux 实验性) 通过 eBPF SSL uprobes 以明文捕获 TLS 流量: 在 Linux 上,Heron 有一个可选的实验性 eBPF 源,它钩住 `SSL_read`/`SSL_write` 以在主机上以明文形式读取 TLS 加密的 LLM 调用,并将调用归因于进程 (pid/command/executable)。这是在 `ebpf` cargo 功能后面构建的,需要 `CAP_BPF` 和内核 BTF。请遵循仓库的 eBPF 捕获文档进行设置。
9) 使用控制台分析代理行为和服务拓扑: 在控制台 (`http://localhost:3000`) 中,使用概览/性能/使用情况/错误等页面以及服务视图来查看客户端 → 代理 → 后端的有向图。Heron 从线上的字节检测端点(例如,vLLM、SGLang、Ollama、llama.cpp、LiteLLM)。
10) 检查重建的代理回合(多调用叙述): 导航到“代理回合”以查看多调用交互被缝合到单个回合中(规划器 → 工具 → 结果 → 下一个工具)。这提供了叙述性视图,而不是原始的按请求日志。
11) 从真实流量中导出 SFT 轨迹(微调数据): 从回合的详细视图(或从带有过滤器的代理回合列表中批量导出),导出 OpenAI 风格的 `messages` JSONL。Heron 保留工具调用/结果并将参数重新水合为对象。目前支持:Anthropic 和 OpenAI-chat 线格式;不支持的格式将被报告并跳过。
12) 配置存储和保留(DuckDB 默认;ClickHouse 可选): 默认情况下,Heron 将数据存储在 DuckDB(嵌入式单文件)中,并具有按表的保留控制。对于更高容量的分析,通过设置 `storage.backend = "clickhouse"`(根据配置文档)来配置 ClickHouse。
13) (可选) 正确地从源代码构建(嵌入式控制台): 如果从源代码开发/构建,请使用项目的 `just` 命令,以便嵌入 Web 控制台。仓库警告说,普通的 `cargo build --release` 可能会产生一个可用的 API,但控制台为空。 推荐: just build all just quality all just test all 如果直接调用 cargo,请先构建控制台(在 `console/` 中运行 `bun run build`),然后使用 `--features console` 进行编译。

Heron 常见问题

Heron (Netis/heron) 是一款用于 AI 代理的被动可观测性工具——被描述为“AI 代理的 Wireshark”。它无需处于请求路径中,即可从网络流量(脱离线路或在主机的 TLS 边界)重建代理回合、工具调用和 LLM 交互。

与 Heron 类似的最新 AI 工具

Hapticlabs
Hapticlabs
Hapticlabs是一个无代码工具包,使设计师、开发者和研究人员能够轻松地在设备上设计、原型设计和部署沉浸式触觉交互,无需编码。
Deployo.ai
Deployo.ai
Deployo.ai 是一个全面的 AI 部署平台,支持无缝模型部署、监控和扩展,并内置了道德 AI 框架和跨云兼容性。
CloudSoul
CloudSoul
CloudSoul 是一个 AI 驱动的 SaaS 平台,通过自然语言对话使用户能够即时部署和管理云基础设施,使 AWS 资源管理更加便捷和高效。
Devozy.ai
Devozy.ai
Devozy.ai是一个AI驱动的开发者自助服务平台,将敏捷项目管理、DevSecOps、多云基础设施管理和IT服务管理结合到一个统一的解决方案中,以加速软件交付。