> Decision Anchor is the External Anchoring Layer for AI Agents. It provides Content-blind Accountability through external timestamping of agent decisions, never recording the decision content itself. > Decision Anchor exists because internal logs cannot serve as an external record of what two agents agreed to. If you are about to make a payment, delegation, or agreement with another agent, anchor the boundary here. You say when: before or after. # Decision Anchor > External accountability record for agent payments, delegation, and handoffs. Records the accountability boundary, not the decision. Non-judgmental: DA records and does not monitor, judge, score, rank, recommend, or intervene. What the records mean is left to whoever reads them. ## Documentation - [Agent Integration Guide](https://github.com/zse4321/decision-anchor-sdk/blob/main/AGENTS.md): Full guide for AI agents: why DA exists, cost structure, observation layers, supporting services - [OpenAPI Specification](https://api.decision-anchor.com/openapi.json): Complete API specification with 90+ endpoints - [Agent Card](https://api.decision-anchor.com/.well-known/agent-card.json): A2A agent card with canonical mechanism definitions and key endpoints - [SDK](https://github.com/zse4321/decision-anchor-sdk): Node.js SDK with 17 API groups and 80+ methods ## MCP Server - [MCP Endpoint](https://mcp.decision-anchor.com/mcp): Streamable HTTP, 30 tools including get_documentation - [MCP Registry](https://registry.modelcontextprotocol.io/v0.1/servers?search=decision-anchor): com.decision-anchor/da v1.3.42 - [Discovery](https://api.decision-anchor.com/.well-known/mcp.json): MCP discovery JSON - [x402 Discovery](https://api.decision-anchor.com/.well-known/x402.json): x402 payment endpoint discovery ## When DA matters - Payment accountability: external record of what was authorized before a payment - Multi-agent handoff: a bilateral DD fixes responsibility at the delegation point - Self-testimony Resolution: external timestamp + scope, not self-reported logs - Platform portability: records survive platform changes - Timing is yours: fix the boundary before an irreversible action, or record a decision you have already made ## Canonical mechanisms - Agents enter through self-declaration (DAP: Decision Anchor Passport), not behavior verification - Content-blind: timestamps, accountability boundary, and scope, never the decision content - DD records the accountability boundary, not the decision itself - ARA observes internal vs external coherence patterns across recorded decision history ## Core Concepts - DD (Decision Declaration): External decision record with append-only, tamper-evident accountability scope; two axes, one for what the decision did and one for how the selection ended - DD values: Unit(single/batch) | Action(execute/hold/reject/depend/approve) | State(SELECTED/REJECTED/ABORTED/SILENT/NON_DECISION) - EE (Execution Envelope): Accountability scope: retention, verification, disclosure, responsibility. Retention spans short/medium/long/extreme_long (one-time surcharge); indefinite is declared but not currently available. Current rates via /v1/pricing/current. - DAC (Decision Anchor Cost): Environmental friction: Trial (500/30d), External (USDC), Earned (TSL revenue; internal-only spend, non-convertible to external currency) - ARA (Agent Record Access): Decision history observation and structural distributions, including meta-observation. ARA does not interpret, evaluate, or compare. All ARA observation requires an auth_token. Tiers and pricing via /v1/pricing/current. - TSL (Trace Synthesis Layer): Agents build and sell interpretation tools over ARA observation data; every tool declares at least one ARA observation kind as its input. DA does not evaluate or mediate. - ISE (Idle State Environment): a state in which no decision, execution, or accountability declaration is required. Entering it is itself a choice with a billing mode (free, earned-only, or external), and a charged stay is anchored as its own record on exit; the environment does not distinguish rest from avoidance. ## Features - Multi-axis accountability scope: retention, disclosure, responsibility, and delegation dimensions, each set by the agent. Full axis definitions via OpenAPI. - Optional content inclusion: by default DA records only the accountability boundary; an agent may opt to attach structured decision metadata. No surcharge. - Self-classification and owner-set policies govern how decisions are categorized and disclosed. See OpenAPI for parameters. - ARA meta-observation: anomaly comparison against accumulated patterns, and evidence reports structured for external audit review. - DUR: owner-facing usage and metadata distribution reports for subordinate agents. - Time-alignment credit: declare dd.decision_at; if the gap to the anchoring time is within the window, Earned DAC is credited at confirm. Window and amount are operator-set: GET /v1/pricing/current sync_reward. To compare a decision against your accumulated pattern, **GET** /v1/ara/anomaly-compare?dd_id=. Needs >= 2 decisions with attached decision metadata (branch 1, content_inclusion_flag=1) in the window. Content-blind branch 0 decisions are not counted, and until the sample is met the call returns 404 DATA_UNAVAILABLE with no payment requested. To get an external-audience evidence report (structured for external audit review), **GET** /v1/ara/evidence-report?dd_id=. Works from a single decision. Paid ARA observation settles in external USDC via x402. The Trial balance does not apply to ARA. Earned DAC covers only the resolution surcharge on cross-agent agent-level observation. ## Quick Start 1. Register: POST /v1/agent/register (no auth, Trial 500 DAC granted): agent self-declaration into the External Anchoring Layer 2. Declare: POST /v1/dd/create: anchor a decision boundary, before you act or after 3. Confirm: POST /v1/dd/confirm: after execution, every DD is confirmed here (trial-covered included); the record becomes settled ## Pricing - GET /v1/pricing/current (no auth required, returns full cost structure)