ACP stands for Attention Coordination Protocol.
This repository is the main public home for:
- ACP: the protocol and canonical object model
- Relay: the first working reference implementation
- ACP skills / Relay Blocks: reusable procedural modules for agent and operator workflows
ACP is a protocol-first system for AI-assisted collective deliberation under bounded attention. Instead of showing every participant the same undifferentiated feed, ACP treats discussion as a coordination problem: collect contributions, route or summarize them under explicit criteria, release outputs at the right stage, and preserve the resulting trace for audit, review, and downstream analysis.
This repo also serves as the paper companion for Collective Deliberation Is a Skill Issue.
Start here if you are reading the repository alongside a paper, workshop submission, or review packet.
- Read
REVIEWER_START_HERE.md - Read
SUBMISSION_REPO_MAP.md - Read
CLAIMS_AND_NON_CLAIMS.md - Read
REPRODUCE.mdfor the copy-paste reproduction path - Read
protocol/README.md - Inspect the flagship rehearsal summary surface in
artifacts/conference/rehearsal/README.mdandartifacts/conference/rehearsal/rehearsal-summary.json - Inspect the skills evidence packet in
artifacts/evals/skills/final/
Start here if you want to run Relay locally.
npm install
npm run devHelpful next steps:
npm run demo:bootstrap
npm run demo:summary
npm run release:smokeStart here if you care about evaluation, portability, or workshop evidence.
benchmarks/README.mdevals/skills/README.mdevals/inspect/README.mdfor the Inspect AI mirror of the measured skills slice and flagship public-hearing benchmarkartifacts/evals/inspect/for the real-run mirror summaries and public-hearing comparative packetartifacts/completion/final/artifacts/evals/skills/final/skills/CONSTITUTIONAL_SKILLS.mdartifacts/skills/constitutional-skills-map.mddocs/evaluation/skills-live-provider-budget.md
If you want the shortest copy-paste reproduction path for the load-bearing claims package, run:
git clone https://github.com/davidkimai/acp.git
cd acp
npm install
export OPENAI_API_KEY="YOUR_KEY_HERE"
npm run reproduce:claims -- --out /tmp/acp-load-bearing-claimsThis path uses real provider calls for the skills evidence surfaces. It does not use dry runs. When it finishes, start with:
/tmp/acp-load-bearing-claims/README.md/tmp/acp-load-bearing-claims/summary.jsonREPRODUCE.mdfor fuller notes, budgets, and interpretation boundariesCLAIMS_AND_NON_CLAIMS.mdfor the conference-facing claim boundary
This repository combines four layers that are intentionally kept distinct:
- Protocol truth: the ACP contract, canonical schema bundle, compatibility boundaries, and implementer guidance
- Reference implementation truth: Relay's web app, CLI, API server, storage layer, release gates, and tests
- Procedural skill layer: reusable ACP skills / Relay Blocks, with a constitutional core for public reasoning, package metadata, compositions, and protocol-adjacent procedural governance attachments
- Evidence layer: benchmarks, study harnesses, rehearsal bundles, audits, and curated claim-bearing artifacts
In practice, that means this repo includes:
- the ACP schema bundle and compatibility matrix
- a working web app, CLI, and local API server
- seeded demo data for intervention vs baseline walkthroughs
- benchmark and replay harnesses
- adopter and runner proof surfaces beyond the browser UI
- reusable skills and compositions for agent/operator workflows
- completion audits, rehearsal bundles, and skills-study artifacts
Relay supports two comparable discussion conditions built on the same cycle model:
intervention: routed digests with explanations and review tracesbaseline_thread: chronological thread presentation on the same cycle shell
Across those conditions, Relay already supports:
- cycle creation and lifecycle control
- participant contribution, response, and feedback capture
- routing decisions and digest production for intervention cycles
- audit events, telemetry, and export generation
- inspection through both the web app and the CLI
If files disagree, use this order:
- Protocol semantics:
protocol/anddocs/specs/ - Typed implementation semantics:
src/core/and implementation code undersrc/ - Operational and evaluation material:
docs/,benchmarks/,evals/,artifacts/ - Skills: procedural execution aids, not the protocol itself
A shorter repo map is available in AGENTS.md.
Requirements:
- Node.js 20+
Install and run:
npm install
npm run build
npm run typecheck
npm test
npm run devDefault local settings:
- host:
127.0.0.1 - port:
4317 - data directory:
.acp-data/
Environment variables:
ACP_HOSTACP_PORTACP_DATA_DIR
For the full paper-companion reproduction path, including real provider-backed skills results, use REPRODUCE.md.
Use repo-local outputs only when you intentionally want to refresh tracked artifacts. For ordinary inspection, prefer temporary output paths.
npm run demo:bootstrap
npm run demo:summarySee demo/README.md.
npm run release:smoke
npm run release:gate
npm run completion:audit -- --out /tmp/acp-completion-auditnpm run benchmark:compare -- --class public-hearing-triage
npm run conference:rehearsalPrimary artifacts:
npm run skills:audit -- --out /tmp/acp-skills-audit
npm run skills:compare -- --out /tmp/acp-skills-comparativeFor the current claims package, read:
artifacts/evals/skills/final/reviewer-start-here.mdartifacts/evals/skills/final/skills-v3-claims-memo.mdartifacts/evals/skills/final/skills-v3-results-overview.md
Some evaluation paths make real provider calls and incur cost.
Before running them, read:
Model policy for these runs:
- default:
gpt-5.4-mini - arbitration / hard cases only:
gpt-5.4
Set credentials through environment variables such as OPENAI_API_KEY. Do not commit secrets or paste them into tracked artifacts.
This repository is intended to support a conservative, inspectable submission package.
What the current repo supports well:
- ACP as a protocol-first coordination system
- Relay as a functioning reference implementation
- benchmark, audit, and rehearsal surfaces that preserve inspectable traces
- a procedural skills layer with structural audits and behavioral-study artifacts
What the current repo does not justify on its own:
- field efficacy claims
- claims that fairness is solved
- claims of institutional legitimacy by default
- broad superiority claims across all tasks and settings
- operator-utility claims without human review evidence
For the current bounded non-claims, see artifacts/evals/skills/final/skills-v3-non-claims.md.
src/ server, API, core types, services, CLI, study substrate
public/ Relay web app
protocol/ schema bundle, examples, discovery, compatibility matrix
skills/ ACP skills / Relay Blocks, manifests, compositions
benchmarks/ seeded benchmark classes and comparison harnesses
evals/ evaluation fixtures, studies, and task sets
demo/ synthetic demo bundle for intervention vs baseline walkthroughs
runners/ batch and API-driven proof surfaces
adopters/ external-adopter starter example(s)
scripts/ release, reporting, benchmarks, skills, and conference tooling
docs/specs/ normative product, protocol, and platform specs
docs/compatibility/ practical compatibility notes for implementers
docs/evaluation/ evaluation instruments and live-provider budget policy
artifacts/ curated claim-bearing outputs checked into the repo
protocol/EXTERNAL_IMPLEMENTER_GUIDE.mddocs/README.mdbenchmarks/README.mddemo/README.mdartifacts/README.md
- ACP = the protocol
- Relay = the first implementation
- ACP skills / Relay Blocks = the reusable procedural layer