Vibeleaderboard
Index / tool
Visit www.openappa.com
Category
Developer Tools
Rank
No. 1010Tools index

Previous survey · No. 1015 ·

Type
TOOL
Use case
Security & Identity
Latest release
v0.42.0
Date

About

OpenAPPA is a deterministic guardrail system from Archestra for AI agents connected to many tools, built around a policy language that is specific to the data rather than to each use case, so policies don't need updating as new agents are added. It combines this with techniques like remedy plans and a dual-LLM pattern to keep agents completing their tasks while blocking sensitive data leaks, and plugs into any agent loop via pre- and post-tool-call hooks.

What it does

OpenAPPA is a checkpoint process that sits between an AI agent and its tools. As the agent reads things, the runtime records how sensitive and how trustworthy that content is, and before each tool call runs it asks one question: may data carrying this label go to this destination? Rules live in a declarative config file. The decision engine reads only the session's recorded event log, makes no network or disk calls, and so returns the same answer on every replay. It ships as a Rust binary that hooks into Claude Code, and as a library other agent hosts can embed.

Why it's ranked here

The idea is information-flow control, an established security technique, applied to agent tool calls, with a companion paper accepted at a NeurIPS 2026 workshop. The engineering matches the ambition: MIT licensed, a Rust workspace split into separate engine, policy, runtime and adapter crates, a design that blocks every action when the checker is silent, and an installer that verifies checksums. The project's own benchmarks report zero successful attacks across 1,320 evaluations at 88 to 90 percent task completion, though those numbers come from the authors' harnesses. The README calls it a preview and an RFC whose config may break, which limits production trust for now.

What's good

Determinism is structural, not promised: the engine performs no input or output and reads no clock, so one log always yields one verdict. A policy edit opens new sessions under the new rules while running sessions keep the policy they started with. Failure is closed: a runtime that does not answer means the action is blocked. The opt-in file mode goes further than hooks can, moving reads and writes behind the runtime so a copied file inherits its source's sensitivity even though the model never sees the bytes. The installer pins one release, checks its checksum and refuses archive entries that escape their directory.

Tradeoffs

This is a preview: the README warns config and wire formats may break without compatibility shims, and the file mode is marked draft and experimental. The standalone runtime accepts only the Claude Code harness today; other agents go through embedding or Archestra's proxy. Fail-closed cuts both ways: if the background process stops, every action in a protected session is blocked, including the commands you would use to fix it. Saved integration tokens sit in plaintext at rest, guarded only by Unix file permissions. Release binaries cover Linux and macOS only, and Linux needs glibc 2.34 or newer. The headline benchmark figures are self-run.

How to use it well

It suits teams whose agents touch both private data and public outputs, such as internal documents alongside a public repository or a chat channel. Start with the Claude Code plugin to watch policies decide on real work, then write rules for your actual tools and wire the bundled replay and config-check commands into CI so policy changes are tested before merge. Start the runtime before sessions open. It does not classify content or sign in to MCP connectors on its own: sensitivity comes from the labels and annotators you declare, so the protection is exactly as good as the policy you write.

Technical notes+

Cargo.toml defines a Rust 2024 workspace (resolver 3) with crates for the engine, policy compiler, event log, package model, runtime and per-host adapters (Claude Code, Amp, kagent), denies dead_code workspace-wide, and builds the release at opt-level s except appa-engine and sha2 at opt-level 3 because the engine replays the whole trajectory before every decision. appa-engine/src/lib.rs describes the core as a function of the event log with no IO or clock: labels fold by minimum trust and intersected audience over the chain self, internal, public plus group references, and annotator answers are pinned to the call's canonical digest so replay never re-consults. appa-policy/src/lib.rs compiles the TOML dialect into the engine's RegistryConfig. appa-runtime/src/main.rs serves hooks over axum on 127.0.0.1:8787 by default, exposes health, policy-key and binary-fingerprint endpoints, and withholds session-scoped Claude Code environment variables from a runtime it starts. appa-adapter-claude-code/src/lib.rs keeps the adapter to pure parse and render translations depending only on appa-runtime-api. appa-runtime/FILE-MEDIATION.md specifies the draft file mode: a one-shot vouch keyed by tool name plus RFC 8785 arguments, pinned version, digest and Label, atomic staged replacement, and a reservation that blocks further file calls after an unclean operation. appa-runtime/Cargo.toml puts the server stack behind a daemon feature and offers PostgreSQL storage behind a postgres feature; SQLite is bundled. scripts/appa-install.sh supports Linux and macOS on x86_64 and aarch64, forces HTTPS, verifies SHA256SUMS and rejects absolute or parent-escaping archive entries. bench/README.md states Corp and AgentThreatBench are rule-scored with one LLM-judged Tau task, and that published results live in a private GCS bucket.

Observed

License
MIT
Language
Rust (edition 2024 Cargo workspace)
Policy format
Declarative TOML compiled into the engine registry at startup
Interfaces
CLI binary, embeddable Rust library, MCP server, loopback HTTP hook endpoint
Agent hosts
Claude Code plugin; kagent deployment preparation; Archestra LLM proxy
Platform support
Release binaries for Linux and macOS on x86_64 and aarch64; Windows via zip from the releases page
Install surface
curl installer with SHA256 verification, or cargo install from a checkout
Storage
Bundled SQLite event log; PostgreSQL behind a build feature
Project status
Preview and RFC per the README; file mediation mode marked draft
Benchmarks in repository
Corp, AgentThreatBench and Tau harnesses, rule-scored except one LLM-judged Tau task

Read from README.md, Cargo.toml, LICENSE.md, appa-runtime/README.md, appa-runtime/Cargo.toml, appa-runtime/FILE-MEDIATION.md, appa-runtime/src/main.rs, appa-policy/src/lib.rs, appa-engine/src/lib.rs, appa-adapter-claude-code/src/lib.rs, appa-package/src/lib.rs, marketplace/README.md, bench/README.md, scripts/appa-install.sh, Dockerfile.

Tags

ai-guardrailsagent-securitydata-leak-preventionpolicy-languagellmarchestra

Tech Stack

RustDocker

Comments (0)

No comments yet

Editorially curated, with community endorsements as a secondary signal. Corrections welcome.