Status: Editor's Draft Editor: Pouyan Ahmadpour Latest revision: Unreleased
This is a working draft. The Daena Protocol is not yet stable; section numbering, normative requirements, and the data model are all subject to change until v1.0. Comments and proposals are welcomed in the issue tracker and as DPIPs.
Daena is an open protocol for publishing verifiable, agent-native information on the internet. A Daena document is a structured, cryptographically signed expression of a publisher's facts, capabilities, and presentation hints — designed to be consumed natively by software agents and optionally rendered for humans.
This document specifies the data model, addressing scheme, protocol verbs, signing and verification, and human-rendering conventions of Daena Protocol v0.
The web was designed for human consumption. AI agents operating on behalf of humans must currently scrape, parse, and infer their way through HTML pages, producing results that are lossy at best and hallucinated at worst.
Daena defines a parallel, machine-native layer of the internet: a layer where every publisher exposes a signed source of truth that agents read directly, and from which human-readable views are derived rather than the other way around.
- Source-of-truth inversion. The agent layer is canonical; the human layer is derived.
- Verifiability by default. Every fact carries a cryptographic signature from its publisher.
- Human interface preserved. Daena documents are always renderable to a human view.
- Open by specification. The protocol is governed openly under the Daena Foundation (forthcoming).
- Composable and minimal. v0 specifies the smallest viable surface; complexity is opt-in.
The keywords MUST, MUST NOT, SHOULD, SHOULD NOT, and MAY in this document are to be interpreted as described in RFC 2119 when, and only when, they appear in all capitals.
Defined terms appear in italics on first use and are normatively defined in GLOSSARY.md.
A Daena document is a JSON-encoded object with the following top-level fields:
daena— protocol version string (e.g."0")publisher— publisher identity (a DID)facts— array of signed fact objectscapabilities— array of capability objectsrender— optional render hintssignature— document-level signature over the above
Normative schema and JSON examples to be specified.
Each Daena document is published under a publisher identity, expressed as a Decentralized Identifier (DID).
DID methods supported by v0 to be specified.
The daena top-level field declares the protocol version. Consumers MUST refuse to process documents whose version they do not support.
Version negotiation rules to be specified.
A fact is a typed, dated, signed statement made by a publisher about a subject.
Fields and schema to be specified.
Facts carry a type URI that identifies the vocabulary under which the fact is interpreted.
v0 reserved vocabularies and extension mechanism to be specified.
Each fact is signed by its publisher such that any party may verify authorship and integrity without contacting the publisher.
Signature algorithm and canonicalization rules to be specified.
A capability is a named action a publisher offers to agents, with typed parameters and optional authentication and payment requirements.
Fields and schema to be specified.
Authentication mechanisms to be specified.
Capabilities MAY declare a price. v0 specifies an optional payment binding compatible with existing payment networks.
Payment binding to be specified.
Render hints are optional metadata that guide a renderer in generating a human-readable view. Render hints MUST NOT affect the semantic meaning of facts or capabilities.
Render-hint vocabulary to be specified.
Daena defines four verbs over HTTPS:
Returns the subset of a Daena document matching a structured query.
Invokes a capability with parameters, authentication, and (optionally) payment.
Establishes a live connection that pushes updates as facts change.
Returns the publisher's current signing keys and revocation state, enabling third-party verification.
Wire format, transport bindings, and error model to be specified.
How agents find the Daena document for a given entity.
Discovery mechanisms (DNS, well-known URI, registry) to be specified.
To be specified — key management, replay, downgrade attacks, signature stripping, malicious render hints, etc.
To be specified — publisher pseudonymity, query telemetry, consent for personally identifying facts, etc.
See github.com/daena-protocol/examples for runnable Daena documents across multiple verticals.
See CHANGELOG.md.
To be added.