Adversarial Audit Engine banner
eddo-cto eddo-cto

Adversarial Audit Engine

Security community

Description

Cross-model audit engine for documents and technical artifacts: hallucination gate on verbatim quotes, claim verification, blind adversarial review across different model vendors, Type-I error control. Dependency-free Python core + Claude Code plugin. Never reports "validated" on internal grounds — only a human does.

Installation

This entry records only its repository, not the path inside it, so there is no exact command to give. Open the source below and copy the folder into ~/.claude/skills/, or the file into ~/.claude/agents/.

README

[![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.21288401.svg)](https://doi.org/10.5281/zenodo.21288401) [![tests](https://github.com/eddo-cto/adversarial-audit-engine/actions/workflows/tests.yml/badge.svg)](https://github.com/eddo-cto/adversarial-audit-engine/actions/workflows/tests.yml)

Adversarial Audit Engine

Audits a document or technical artifact by trying to **falsify** it: blind adversarial review across **different model vendors**, a deterministic grounding gate that blocks any finding not backed by a verbatim quote, explicit control of the falsifier's own **Type-I error**, and a code-enforced closure discipline. A hive of adversarial roles attacks the artifact; a dependency-free Python core enforces the rules. It never reports "validated" on internal grounds: **only a human validates.**

**[Read the story — how it was built and hardened across many adversarial rounds](STORY.md)**

**Status: stable (v1.1.0).** A tool that *multiplies* a competent human reviewer — it does not replace one, and it is not an oracle. The public API and the trust-protocol invariants are frozen for 1.x (**[`API.md`](plugins/adversarial-audit-engine/API.md)**). Tested across many adversarial self-audit rounds and on real cases (a consensus protocol, incident RCA, threat modeling, multi-regulation conflicts, scientific peer review), with the auditor's own Type-I error calibrated on a control battery.

What is enforced in code (the trust protocol)

The value is not detection accuracy; it is that the discipline lives in **ordinary Python**, each rule pinned by a test, so it behaves identically every run and cannot be talked out of by a prompt:

  • Non-closure is cryptographic. VALIDATED requires a valid HMAC of the ledger digest under a key the operator holds outside the model's reach (aae/attestation.py); the model authors the payload but not the key, so it cannot sign its own validation.
  • Independence is attested, not claimed. Cross-vendor review