eunomia-bpf/agentsight

lightweight system-level observability for AI Agents

AgentSight – 面向 AI 代理的系统级可观测性

它是什么 – AgentSight 是一款本地优先的监控工具,它像 top 或 strace 监控普通进程一样监控 AI 代理。它使用 eBPF(以及 TLS 流量追踪)实时捕获代理在您的机器上生成的提示词、模型调用、工具调用、文件访问、网络请求和资源使用情况。无需 SDK、代理或代码更改;该工具适用于闭源 CLI,如 Claude Code、Gemini CLI、OpenCode 等。

为什么重要 – 现有的 LLM 可观测性平台(LangSmith、Helicone 等)只能看到应用程序报告的内容。它们遗漏了代理的系统级影响:生成的子进程、文件写入、网络目标,甚至通过 TLS 库传递的明文负载。AgentSight 通过检测内核来填补这一空白,为您提供代理实际行为的可信、端到端视图。

主要功能

  • 实时视图(agentsight top) – 活动会话的排名列表,显示模型使用情况、token 计数、进程族、工具调用、文件和网络活动。
  • 回放/可视化(agentsight vis) – 生成仓库中文件操作的动画 GIF/HTML“Agent Nebula”回放,以及代理调用栈的语义火焰图。
  • 录制(agentsight record -- <cmd>) – 在 eBPF 捕获下运行命令,将所有事件存储在 SQLite agentsight-*.db 文件中。
  • 报告(agentsight report …) – 查询保存的运行记录以获取提示词、token 使用情况、审计跟踪,或导出数据用于仪表板。
  • Web UI – 实时仪表板(进程树、时间线、指标),位于 http://127.0.0.1:7395。
  • OpenTelemetry 导出 – 通过 OTLP/HTTP 发出 GenAI spans(gen_ai.*),用于与可观测性后端集成。

支持的代理(无需额外设置) – Claude Code、Gemini CLI、Kimi Code、Grok Build、基于 Python 的代理(aider、open-interpreter 等)、Docker 容器、Cursor IDE(通过原生会话文件)、CodeBuddy CLI 以及任意命令。

安装 –

  • cargo install agentsight(Rust 工具链)或从 GitHub releases 页面下载预构建二进制文件。
  • 提供适用于 Linux 的 Homebrew 公式(brew tap eunomia-bpf/tap && brew install agentsight)。
  • 提供 Docker 镜像用于隔离环境(需要特权主机访问以使用 eBPF)。

典型工作流程

  1. 启动实时监控 – agentsight top(如果需要 eBPF,请使用 sudo)。
  2. 录制特定运行 – sudo agentsight record -- claude(或将 claude 替换为任何命令)。
  3. 分析 – agentsight report token --group-by dir 查看每个项目的 token 花费,或 agentsight vis 生成可视化回放。
  4. 导出/集成 – agentsight report export -o snapshot.json 或 agentsight debug trace --otel --otel-endpoint http://localhost:4318。

性能与隐私 – 作者报告典型工作负载的 CPU 开销 < 3%。捕获的数据(提示词、文件路径、网络目标)本地存储在 SQLite 文件中,应视为敏感数据。

获取帮助 – 仓库包含 FAQ、详细的构建文档、代理特定注意事项和贡献指南。该项目采用 MIT 许可证,并积极维护(CI 徽章、arXiv 论文、ACM DOI)。

相关

  • 项目
  • 项目
  • 项目
  • 项目
  • 项目