Skip to main content

adp-manifest

PyPI Downloads Python License Spec

A Python reference implementation of the Agent Deliberation Protocol (ADP) specification — the consensus protocol that multi-agent systems use to reach calibrated, falsifiable decisions together. ADP defines proposals, weights, tallies, falsification, termination, and reversibility tiers.

This library is one of several reference implementations (TypeScript) of the same spec. The spec itself is at adp-manifest.dev and is the source of truth; this library implements what the spec says.

Zero runtime dependencies. Requires Python 3.10+.

Looking for a runnable agent? This library is the protocol core — data types, weighting math, and an in-memory orchestrator. For a full federation-ready agent runtime with HTTP endpoints, journal persistence, Ed25519 signing, signed calibration snapshots, ACB pricing, and MCP integration, install @ai-manifests/adp-agent (TypeScript/Node).

Install

pip install adp-manifest

Or from source:

git clone https://github.com/ai-manifests/adp-ref-lib-py.git
cd adp-ref-lib-py
pip install -e .

Quick example

from adp_manifest import (
    DeliberationOrchestrator,
    DeliberationConfig,
    Proposal,
    Stake,
    Justification,
    Vote,
    StakeMagnitude,
    CalibrationScore,
    compute_weight,
)

proposal = Proposal(
    agent_id="did:adp:test-runner-v1",
    domain="code.correctness",
    vote=Vote.APPROVE,
    confidence=0.82,
    stake=Stake(magnitude=StakeMagnitude.MEDIUM, domain="code.correctness"),
    justification=Justification(rationale="all tests pass", evidence_refs=[]),
    dissent_conditions=[],
)

calibration = CalibrationScore(value=0.78, sample_size=42)
weight = compute_weight(proposal, calibration)
# weight ≈ 0.82 × 0.78 × stake_factor(MEDIUM) × sample_size_discount(42)

API

All public symbols are exported from the adp_manifest package root.

Enums & primitive types

Vote, ReversibilityTier, DissentConditionStatus, TerminationState, StakeMagnitude

Protocol types

Proposal, ProposalAction, BlastRadius, DomainClaim, Justification, Stake, DissentCondition, VoteRevision, Amendment, CalibrationScore, AgentRegistration, TallyResult

Weighting functions

  • compute_weight(proposal, calibration) — canonical proposal weight per ADP §4.2
  • compute_decay(age, half_life) — time decay of calibration evidence
  • stake_factor(magnitude) — maps StakeMagnitude to its numeric factor
  • apply_sample_size_discount(weight, n) — Wilson-interval sample-size discount

Orchestrator

  • DeliberationOrchestrator — in-memory state machine that runs a deliberation through proposal → tally → falsification → termination. Takes a DeliberationConfig. Intended for prototypes, tests, and embedded-in-process use. For production distributed deliberation, see @ai-manifests/adp-agent (TypeScript/Node).

Testing

pip install -e .[dev]
pytest

Spec

This library implements the Agent Deliberation Protocol specification. Read the spec at adp-manifest.dev. If the spec and this library disagree, the spec is correct and this is a bug.

License

Apache-2.0 — see LICENSE for the full license text and NOTICE for attribution.

Metadata

Release files for adp-manifest 1.0.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for adp-manifest 1.0.0
File Size Uploaded
adp_manifest-1.0.0.tar.gz 15.0 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for adp-manifest 1.0.0
File Interpreter ABI Platform
adp_manifest-1.0.0-py3-none-any.whl Python 3 none any Details

Total release size: 28.1 kB

Release files / adp_manifest-1.0.0.tar.gz

Download URL adp_manifest-1.0.0.tar.gz
Size 15.0 kB
Tags Source
SHA-256 checksum
How to use checksums
9256e94c4bba698986f8459a76509222f9260c8dc6c8b999b83af561a16c36aa
BLAKE2b-256 checksum
How to use checksums
9d3621f584276c343c763755aaf6311b5e6ba31feabfbcf24e4cc4dc775b634b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.11.3

Release files / adp_manifest-1.0.0-py3-none-any.whl

Download URL adp_manifest-1.0.0-py3-none-any.whl
Size 13.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
226c85362a4437f8ecb4e0cbfb52e398c647a737033a638b844c8eb6c6d5a1e0
BLAKE2b-256 checksum
How to use checksums
d78ccd4796fc4a03eac028b846de2f6deba7e851f85769bde79264a6b12d00c1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.11.3

Release history Release notifications | RSS feed

This release

1.0.0 This release

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page