Agent Governance Protocol (AGP)
AGP is an experimental governance layer for multi-agent systems.
It defines how independent agents or authorities can propose, review, approve, reject, veto and audit high-impact decisions without trusting a single coordinator as the sole source of truth.
Status: experimental. AGP is not yet a production standard.
120-Second Demo
Run the public AGP demo with no external dependencies:
python3 examples/120_second_demo/demo.py
Fast mode:
python3 examples/120_second_demo/demo.py --fast
Valid governance path:
python3 examples/120_second_demo/demo.py --happy-path --fast
The demo shows a coordinator changing a deployment payload after approval. A coordinator-trusting workflow accepts it because the approval count is still present. AGP rejects it because the approvals are bound to the exact approved input.
Whitepaper
The current public review draft is:
AGP Whitepaper v0.9.2 — A Deterministic Governance Layer for Multi-Agent Systems
The whitepaper is experimental, is not a production standard, and has not yet received independent security review.
Why AGP?
- MCP connects models to tools and data.
- A2A-style protocols let agents communicate.
- Workflow engines coordinate execution.
- AGP governs collective decisions.
A workflow can record that a deployment was approved. AGP additionally aims to make the authority snapshot, evidence, ballots, resolution and history independently verifiable.
Core properties
- deterministic resolution;
- canonical serialization;
- independent Python and Go implementations;
- Ed25519 signed envelopes;
- replay, expiration and revocation checks;
- append-only transparency log;
- external audit receipts;
- conformance and adversarial test vectors.
Architecture
flowchart LR
P[Proposal] --> E[Evidence]
E --> B[Signed ballots]
B --> R[Deterministic resolution]
R --> L[Transparency log]
L --> A[Independent audit]
AGP vs. a conventional workflow
| Property | Workflow | AGP |
|---|---|---|
| Coordinates steps | Yes | Yes |
| Deterministic replay across implementations | Not inherent | Yes |
| Signed authority actions | Optional/custom | Built into profile |
| Evidence version validation | Optional/custom | Yes |
| Revocation-aware decisions | Optional/custom | Yes |
| Tamper-evident history | Optional/custom | Yes |
| Independent audit without trusting coordinator | Not inherent | Yes |
AGP is intentionally more complex. For low-risk internal automation, a conventional workflow is usually the better choice.
Reproducible results
AGP v0.3 Conformance: 260/260 passed
AGP v0.4 Signed Conformance: 10/10 passed
AGP v0.5 Transparency: 8/8 passed
AGP vs Workflow benchmark: 8/8 attacks detected by AGP
The workflow baseline in the benchmark detected 0/8 because it treated coordinator state as authoritative. This is a limited experimental benchmark, not a claim that all workflow engines are insecure.
Trust Primitive Engine quick start
The AGP Trust Primitive Engine 2.3 is published on PyPI as agp-tpe.
Requirements:
- Python 3.12+
Install it without cloning this repository:
python -m pip install agp-tpe
Verify the installed distribution and packaged schemas:
python - <<'PY'
from importlib.metadata import version
from trust_primitive_engine import DEFAULT_SCHEMA_DIR
print("agp-tpe", version("agp-tpe"))
print("schemas:", DEFAULT_SCHEMA_DIR)
assert DEFAULT_SCHEMA_DIR.is_dir()
PY
Use the stable public facade:
from trust_primitive_engine import (
TrustPolicyEvaluationError,
evaluate_trust_policy,
)
try:
result = evaluate_trust_policy(
signed_context=signed_context,
policy=policy,
keyring=keyring,
policy_set=policy_set,
)
except TrustPolicyEvaluationError as exc:
print(exc.code, exc.detail)
else:
print(result["status"])
A real evaluation requires an AGP signed Decision Context, a Trust Policy, and the corresponding verification keyring. See the Trust Primitive Engine integration guide for the complete input contract, policy references, failure handling, and command-line examples.
TPE 2.3 remains experimental and has not received an independent security audit.
Repository benchmark quick start
Requirements:
- Python 3.10+
- Go 1.22+
git clone https://github.com/agpprotocol/agp.git
cd agp
python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements-v0.4.txt
python3 run_benchmark_all.py
Expected final line:
AGP BENCHMARK COMPLETE
Repository map
spec/ Conformance profile
python/ Python resolver
go/ Go resolver
signed/ Signed envelope conformance
transparency/ Append-only audit log
benchmark/ AGP vs workflow experiment
examples/ Reference scenarios
docs/ Architecture, threat model and evaluation
What AGP does not claim
AGP does not:
- replace authentication, authorization or IAM;
- replace orchestration engines;
- guarantee that evidence is factually true;
- eliminate compromised members;
- solve governance for every multi-agent system;
- claim production maturity.
Current research question
Do high-impact multi-agent systems need a portable, independently verifiable governance layer distinct from communication and orchestration?
Documentation
License
Apache License 2.0. See LICENSE.
Release files for agp-tpe 2.3.4
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| agp_tpe-2.3.4.tar.gz | 33.7 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| agp_tpe-2.3.4-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 97.7 kB
Release files / agp_tpe-2.3.4.tar.gz
| Download URL | agp_tpe-2.3.4.tar.gz |
|---|---|
| Size | 33.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
2f7aecaf4af2913723c0b77a76190b924774f1c65c9541fe75704bd59a97c2c4
|
|
BLAKE2b-256 checksum How to use checksums |
db4b30573f58ebf2b62e15c062a1072e08f71f116529efb24854f51a1ca15e06
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jul 25, 2026.
Transparency logRelease files / agp_tpe-2.3.4-py3-none-any.whl
| Download URL | agp_tpe-2.3.4-py3-none-any.whl |
|---|---|
| Size | 64.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
68d9958e07a03f3eb374bad21bed5b51fe944535dbb889d2144d595adce2b734
|
|
BLAKE2b-256 checksum How to use checksums |
c8b06d454c34d55873fb665ec87554201d044c6f5e675124534bbd0fcff4e810
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jul 25, 2026.
Transparency log