cd /news/ai-agents/agentsight-system-wide-ai-agent-prof… · home › topics › ai-agents › article
[ARTICLE · art-164945] src=eunomia.dev ↗ pub= topic=ai-agents verified=true sentiment=↑ positive

AgentSight: System-wide AI agent profiling and monitoring with eBPF

The eunomia-bpf project released AgentSight, a local-first observability tool that uses eBPF and TLS traffic tracing to profile AI agents system-wide without an SDK, proxy, or vendor integration. AgentSight monitors active sessions, model and tool calls, file and network activity, and correlates LLM traffic with process execution, and the project says it runs around Claude Code, Codex, Gemini CLI, OpenCode, OpenClaw, or any command, including closed-source CLIs. The tool targets the gap left by application-level observability products such as LangSmith, Langfuse, Phoenix and Helicone, which the project says miss subprocess executions, plaintext LLM payloads at SSL/TLS call boundaries, and cross-boundary behavior.

by read9 min views4 publishedNov 5, 2026
AgentSight: System-wide AI agent profiling and monitoring with eBPF
Image: Eunomia (auto-discovered)

English | 中文 AI agents can run commands, rewrite files, spawn processes, and contact remote services—but when a run fails, stalls, or behaves unexpectedly, their logs rarely tell the whole story.

AgentSight is a local-first top/ strace-like observability tool for AI agents. It connects prompts, model calls, and tool decisions to their real effects on your machine.

  • See what the agent is doing now. Monitor active sessions, processes, resource, model and tool calls, file and network activity.
  • Understand failures and improve agent behavior. Connect prompts and skills to errors, then turn them into better instructions and skills.
  • Find where time, tokens, and resources go. Spot slow steps, retry loops, repeated model or tool calls, token-heavy sessions, and resource-hungry processes.
  • Audit data movement and security-sensitive effects. See which services received requests, which files changed, and whether agents stayed and give safety/security suggestions.
  • Use it with your existing agents. Run AgentSight around Claude Code, Codex, Gemini CLI, OpenCode, OpenClaw, or any command—without an SDK, proxy, or vendor integration.

No SDK, no proxy, no vendor integration. AgentSight observes with eBPF and TLS traffic tracing, so it works even when the agent is a closed-source CLI. ✨ Zero SDK Required

Quick Start #

Live sessions ranked by model, session tokens, health, process family, tool calls, file activity, and network activity

Agent Nebula replays how coding agents read, write, create, rename, and delete files across the ACTplane repository

Width is system-effect weight; the uneven stack height shows prompt, tool-call, process, and effect paths ending at different depths. See the agentpprof guide for the other profiles and how widths and stack depths are drawn.

🚀 Why AgentSight? #

Traditional Observability vs. System-Level Monitoring

Application-level tools such as LangSmith, Langfuse, and Phoenix are great for traces, prompts, tokens, evals, and latency when you own the application code. Gateway/proxy tools such as Helicone are useful when you can route provider traffic through a managed endpoint.

AgentSight focuses on the layer those tools often miss: what the agent actually does at the system boundary. It observes existing binaries and CLI agents without SDKs or proxies, then correlates LLM traffic with process execution, file access, and system activity.

Challenge Application-Level Tools AgentSight Solution
Framework Adoption ❌ SDK, callback, or gateway integration per app ✅ Drop-in system tracer, no code changes
Closed-Source CLIs ❌ Limited to what the tool exposes or logs ✅ Observes existing binaries and CLI agents from outside
Agent-Controlled Logs ❌ Logs can be incomplete, disabled, or modified ✅ Kernel-level events independent of app logging
TLS LLM Traffic ❌ Visible when routed through SDKs/proxies ✅ Captures plaintext at SSL/TLS calls without a proxy
System Actions ❌ Often misses subprocesses and local file activity ✅ Tracks process execution, file access, and resource use
Cross-Boundary Behavior ❌ Traces usually stop at framework/process boundaries ✅ Correlates LLM traffic with process and file events

AgentSight captures critical interactions that application-level tools miss:

  • Subprocess executions that bypass instrumentation
  • Plaintext LLM payloads at SSL/TLS call boundaries
  • File operations and system resource access
  • Cross-boundary behavior across LLM, process, and file events

Usage #

Prerequisites

  • Windows, macOS, or Linux :top ,bind ,vis , andreport can use agent-native session files without eBPF
  • Linux kernel : 4.1+ with eBPF support (5.0+ recommended) forrecord and the eBPF-backed debug commands
  • sudo access on Linux : optional fortop ; eBPF is enabled automatically when sudo is already available

For source builds, see docs/build.md.

Rust Library

Rust applications can depend on agentsight-capture to reuse the same eBPF runners, agent-native sources, analyzers, event model, materialized view, and sinks as the agentsight binary. The CLI is published separately as the agentsight package and is the library's primary consumer.

Installation

Homebrew on Linux

The current Homebrew formula supports Linux x86-64.

Cargo or Release Binary

For local use, install with cargo install agentsight or download the latest release binary, then start with agentsight top. Use the examples below when you want to record a specific command or inspect saved sessions.

GitHub releases provide agentsight-x86_64 and agentsight-aarch64 for Linux. The unsuffixed agentsight asset remains an x86_64 compatibility alias. Native Windows builds are exercised by the Windows CI workflow; until a Windows release asset is published, download its agentsight-windows-x86_64 artifact or build the collector crate from source.

For Linux and Windows installation, background monitoring, Node binding, automatic startup, upgrades, and removal, see

Installation and Automatic Startup.

Docker

Docker is useful for container, CI, or isolated Linux environments, but it still needs privileged host access for eBPF. See docs/docker.md.

Build from Source

Build requirements and source build commands live in docs/build.md.

Replay a Repository Session

Run agentsight vis inside a Git worktree. It scans matching local Claude, Codex, and Gemini sessions without sudo, then writes an animated replay to

output/agent-nebula.gif: GIF export requires local Chromium and FFmpeg. Use agentsight vis -o output/agent-nebula.html for a self-contained HTML artifact that needs neither dependency to generate.

Querying Past Sessions

Every record session is automatically saved to an agentsight-*.db SQLite file in the current directory. Start with the live and record commands, then

use agentsight report for structured queries: On supported Linux kernels, process FILE_OPEN events include resolved paths, read/write/exec access, and overlay layer and inode metadata. See the process probe reference for the JSON fields and older-kernel fallback.

Offline Agent pprof Profiles

Use agentpprof when you want a no-sudo pprof/folded-stack/SVG summary of local Codex or Claude session history:

The tokens view is the best first flamegraph for cost analysis: it aggregates real local Codex/Claude development sessions by project, agent, session tag, prompt tag, model, and token kind.

Offline token profile generated from real local bpf-benchmark coding-agent sessions

See [ext/pprof/README.md](ext/pprof/README.md) for CLI details and the
[agentpprof profiling guide](docs/agentpprof.md#example-flamegraphs) for

flamegraph examples, rendering, view selection, and deterministic tagging rules.

Web Interface

During a session, visit http://127.0.0.1:7395 for live traffic, process trees, and metrics:

  • Overview Dashboard (landing):http://127.0.0.1:7395/ — tokens, model calls, process/file/network effects, resource shape, and friction signals for the whole session, with drill-down into the detail views.
- **Timeline View** :[http://127.0.0.1:7395/timeline](http://127.0.0.1:7395/timeline)
- **Process Tree** :[http://127.0.0.1:7395/tree](http://127.0.0.1:7395/tree)
- **Event Log** :[http://127.0.0.1:7395/logs](http://127.0.0.1:7395/logs)
- **Metrics View** :[http://127.0.0.1:7395/metrics](http://127.0.0.1:7395/metrics)

For a saved SQLite session, run `agentsight report serve --db run.db` and open the same routes.

Process tree visualization for agent subprocesses and file activity

Timeline visualization for LLM, process, file, and network events

Metrics visualization for memory and CPU usage

Try the live demo to explore a real recorded Claude Code session in the browser.

Supported Agents

Privileges: eBPF probes need root. Use sudo for live capture commands.

record auto-discovers binaries, SSL libraries, and container processes. Works out of the box for:

Agent Command
Claude Code sudo ./agentsight record -- claude
Gemini CLI sudo ./agentsight record -- gemini
Kimi Code sudo ./agentsight record -- kimi
Grok Build sudo ./agentsight record -- grok
| Python (aider, open-interpreter, …) | `sudo ./agentsight record -c python` | 
| Docker containers (OpenClaw, …) | `sudo ./agentsight record -c node --binary-path docker://openclaw` | 

| Cursor (IDE) | agentsight top reads its local sessions, no sudo needed | | CodeBuddy CLI | agentsight top reads~/.codebuddy/projects ;sudo ./agentsight record -c codebuddy attaches the running Node process |

| Any command | sudo ./agentsight record -- <command> | See docs/agents.md for agent-specific setup, SSL quirks, browser capture, MCP stdio, and advanced flags.

OpenTelemetry Export

AgentSight can export captured LLM calls as OpenTelemetry GenAI (gen_ai.*) spans over OTLP/HTTP — standards-compliant agent telemetry for any agent, with zero in-process instrumentation.

See docs/otel.md for collector setup and backend integration.

❓ Frequently Asked Questions #

Q: What permissions does AgentSight need? A: top uses live eBPF process capture when you run it with sudo or your user already has passwordless/cached sudo. Without eBPF privileges, it falls back to process snapshots and native agent session files. With record -- <command>, the monitored agent still runs as your normal user; only the probes are elevated.

Q: What's the performance impact? A: Our evaluation reports less than 3% CPU overhead for typical traced agent workloads.

Q: Where does captured data go? A: record stores sessions as agentsight-*.db files in the current directory by default, and report reads the latest matching file from that directory unless you pass --db. When no default DB exists, report commands warn and fall back to local Claude/Codex/Gemini agent sessions where available. monitor stores its weekly background DBs under ~/.agentsight/monitor, while top only shows live sessions. Use agentsight report, agentsight report list, agentsight report audit --json, and agentsight report token to inspect prior runs. Captured data can include prompts, responses, paths, headers, and network targets, so treat logs and DBs as sensitive.

Q: Why doesn't AgentSight capture traffic from Claude Code, Node.js, or Gemini CLI? A: These applications statically link their SSL library (BoringSSL for Claude/Bun, OpenSSL for all Node.js — both NVM and system installs) into their own binary instead of using system libssl.so, so there's nothing for sslsniff to hook by default. AgentSight handles this for you: record -- <command> always discovers the binary, and record -c node now auto-discovers the Node binary too. For Claude attach mode, pass --binary-path. See the "Zero-Config: record" and "Monitoring Node.js AI Tools" sections.

Q: Can AgentSight trace IDE agents like Cursor? A: Not through eBPF. They are Electron apps that mostly run on macOS or Windows, their TLS sits inside a stripped framework binary and a helper process, and Cursor's API traffic is protobuf rather than JSON, so even a successful capture produces no LLM events. Support for these agents goes through the agent-native session path instead. See IDE-Based Agents for the details.

Q: What should I check if tracing fails? A: Verify you are on Linux with eBPF support, have sudo or CAP_BPF/ CAP_SYS_ADMIN, and are using record -- <command> or the correct --binary-path for statically linked agents.

🤝 Contributing #

We welcome contributions! After cloning and building (see docs/build.md), you can:

Key Resources

- [CLAUDE.md](https://github.com/eunomia-bpf/agentsight/blob/master/CLAUDE.md) - Project guidelines and architecture
- [docs/design/README.md](https://github.com/eunomia-bpf/agentsight/blob/master/docs/design/README.md) - archived design notes and research drafts

📄 License #

MIT License - see LICENSE for details. 💡 The Future of AI Observability: As AI agents become more autonomous and capable of self-modification, traditional observability approaches become insufficient. AgentSight provides independent, system-level monitoring for safe AI deployment at scale.

Continue exploring

  • Last updated

  • Oct 4, 2026

  • First published

  • Jun 2, 2026

  • Contributors

  • github-actions[bot], Littlefisher619, 云微, LinuxDev9002, +1 more Was this page helpful?

── more in #ai-agents 4 stories · sorted by recency
── more on @agentsight 3 stories trending now
sponsored brought to you by zahid.host 4,200+ EU-deployed projects
reading about agents? ship yours in a single git push.

Run your AI side-project on zahid.host

EU-based hosting, git-push deploys, automatic HTTPS, no cold starts. Free tier with a custom domain — perfect for shipping the agent you just read about.

$git push zahid main
→ Live at https://your-agent.zahid.host ✓
Get free account → Pricing
from €0/mo · no card required
LIVE [news/agentsight-system-wi…] indexed:0 read:9min 2026-11-05 · —