AgentCap Vibe 项目

eBPF 驱动的 AI Agent 行为可观测性监控工具

项目简介

AgentCap 是一款基于 eBPF 技术的开源监控工具,专门用于观测 AI 编程 Agent 在你机器上的一举一动。Claude Code、Cursor、Codex、OpenClaw、Gemini CLI 等主流 Agent 在运行时会产生大量系统调用——执行二进制工具、访问文件、发起网络请求——这些行为大多数对用户不可见。AgentCap 通过 Linux 内核级别的 eBPF 探针,在不修改任何 Agent 代码、不添加任何 SDK 的前提下,完整记录每个 Agent 的活动,并将其以 Prometheus 指标的形式暴露出来,最后通过 Grafana 仪表板直观呈现。它开箱即用,支持十余种主流 Agent,10 分钟内即可完成部署并看到第一份活动仪表板。

核心功能

  • 无侵入式监控:无需在 Agent 端安装任何 SDK 或修改配置,直接在内核层面拦截系统调用,现有 Agent 无需重启即可接入监控
  • 子进程归属追踪:Agent 调用的 bash、node、curl 等子进程的指标归属于启动它的父 Agent,而非孤立地显示
  • 多 Agent 识别:开箱支持 OpenClaw、Claude Code、OpenAI Codex、Gemini CLI、aider、opencode、goose、cline、Continue、Cursor、Qwen Code 等十余种 Agent,可按需添加任意进程名
  • DNS 域名追踪:通过 eBPF LSM 钩子拦截 DNS 查询请求,呈现每个 Agent 查询过的域名(仅覆盖直接 DNS 解析路径,DoH/DoT 因技术限制不可见)
  • 端口与连接审计:记录每个 Agent 发起的所有网络连接的目标端口,配合域名信息可用于审计"Agent 是否访问了非预期地址"
  • 文件访问监控:区分读/写模式,记录每个 Agent 打开过的文件路径,检测是否有文件被意外写入
  • CPU、内存、网络 I/O 统计:按 Agent 聚合的 CPU 时间、网络收发字节数和文件读写字节数统计
  • Grafana 仪表板:开箱提供完整的 Grafana 仪表板 JSON,一键导入即可看到 Agent 活动的可视化视图
  • Docker 一键演示:make demo 启动包含 Prometheus + Grafana + AgentCap 的完整演示环境,无需任何配置

技术实现

AgentCap 的架构分为内核态 BPF 模块和用户态 Collector 两部分:

内核态 BPF 程序(src/bpf/agentcap.bpf.c)通过三种机制挂载:tracepoint(生命周期事件)、LSM 钩子(socket_connect/socket_sendmsg)和 fexit trampoline(实际网络接收字节和文件 I/O)。BPF 程序通过 LPM(最长前缀匹配)字典存储 Agent 进程名列表,确保匹配查找为 O(1) 复杂度,不随 Agent 数量线性增长。

用户态 Collector(Rust 实现)从 BPF ring buffer 读取生命周期事件(fork/exec/exit),从 hash map 读取聚合统计指标(每秒轮询一次),并解析 DNS 域名信息。Collector 通过 yeet 工具链完成 BPF 程序的编译和加载,无需手动处理 CO-RE(Compile Once – Run Everywhere)复杂性。

网络流量归属通过进程树追踪实现:每个被监控的 Agent 进程作为树的根节点,fork/exec 产生的所有子进程自动继承父节点的 agent label,确保 curl、bash、node 等被 Agent 调用的工具的执行记录正确归因。

快速上手

  • 安装 yeet 工具链:curl -fsSL https://yeet.cx | sh(安装 yeet CLI + yeetd 守护进程)
  • 认证:yeet login(注册/登录账号)
  • 验证环境:yeet status,确保输出 Status: Ok.
  • 启动 AgentCap:
    git clone https://github.com/yeet-src/agentcap && cd agentcap
    make up

    此命令编译 BPF 程序、加载内核模块,并在 127.0.0.1:9464 启动 Prometheus 指标端点

  • 导入 Grafana 仪表板:make wire 输出 Prometheus scrape config 和 Grafana dashboard import 步骤
  • 一键演示:make demo 启动完整 Docker 环境,在 http://localhost:3000/d/agentcap/agent-activity 查看仪表板
  • 停止:make down

适用人群

  • 安全审计团队:需要了解 AI Agent 在企业环境中实际访问了哪些网络地址和文件
  • 开发者:想追踪自己的 AI 编程 Agent 调用了哪些工具、产生了多少系统调用
  • DevOps 工程师:在 Kubernetes 或物理服务器上运行 AI 编程工具,需要纳入统一可观测性体系
  • AI 安全研究人员:采集 Agent 行为数据集,分析行为模式和潜在风险

团队信息

由 AI 猎手自动发现

评论与建议

0 条评论