ActPlane

Security & Safety 💻 C ⚖️ MIT 🟢 Actively maintained
97 stars

ActPlane is an eBPF-based policy engine that enforces information-flow policies for AI agent harnesses at the OS kernel level. It provides deterministic runtime enforcement and observability, solving the problem of probabilistic prompt constraints and bypassable tool-layer guards. It is for developers building or using AI agent harnesses that need fine-grained, lineage-aware control over agent actions.

✨ Key features

  • Kernel-level enforcement via eBPF, covering exec, file, and network operations.
  • Process-lineage-aware rules that follow subprocess trees across any tool path.
  • Data-flow constraints tracking labels across fork/exec and file read/write edges.
  • Causal ordering with 'since' clauses for temporal rules like test-before-commit.
  • Corrective feedback to agents via hooks and MCP, not just blocking.
  • Prebuilt CO-RE eBPF object, no clang/llvm/libbpf required at runtime.

🎯 Use cases

  • Enforce sandboxing rules like no git push or writes outside /src for an AI coding agent.
  • Prevent deletion of build cache unless explicitly asked, with bypassable conditions.
  • Notify agents when schema changes require regenerating code or updating docs.
  • Require running tests before committing, with staleness tracking on file edits.
  • Confine sub-agents or untrusted commands to read-only or no-network domains.

📦 Installation

🧰 Requirements: Linux kernel 5.10+ with BTF (/sys/kernel/btf/vmlinux); full runtime requires 6.1+; root or CAP_BPF+CAP_SYS_ADMIN for run/watch; Rust toolchain for installation.

cargo install actplane

To build from source:

git clone --recurse-submodules https://github.com/eunomia-bpf/ActPlane
cd ActPlane
cargo build --release -p actplane

🚀 Usage

actplane init                                  # write a starter actplane.yaml
actplane compile                               # validate rules (no privileges)
actplane doctor                                # diagnose hooks, MCP, kernel support

codex                                         # MCP auto-attach tries passwordless sudo
sudo -E actplane run claude -p "review this repo"

⚠️ Good to know

Linux 5.10-6.0 supports only static exec/file/IPv4 policies with file suffixes up to 16 bytes; attach is post-hoc and does not reconstruct history before attach; requires root or specific capabilities for run/watch.

❓ FAQ

What Linux kernel versions are supported?

Linux 5.10+ with BTF is required. Linux 5.10-6.0 supports static exec/file/IPv4 policies with file suffixes up to 16 bytes; the full runtime requires 6.1+.

Do I need to install clang/llvm or libbpf?

No, the eBPF program ships prebuilt (CO-RE, architecture independent), so only a Rust toolchain is needed for installation.

How does ActPlane provide feedback to agents?

It integrates with agent hook systems (e.g., Codex, Claude Code) via actplane feedback-hook and also offers an MCP server to expose policy and feedback.

Can I attach ActPlane to an already-running agent?

Yes, using 'actplane attach --pid <pid>' but it is post-hoc: future events are tracked, but labels and history from before the attach are not reconstructed.

📊 Repository

Stars★ 97
Forks🍴 8
Open issues🐛 2
Last commit🕒 Sep 4, 2026
Created📅 May 2026
Language💻 C
License⚖️ MIT

🤖 Overview, features, install steps and FAQ were generated from the project's README on Sep 4, 2026. Always check the original source before running commands.