AI & Agent Workflows
An agent answer is useless to the next system if the sources and tool results that produced it live only in the orchestrator's private logs.
ALX Protocol lets an AI application represent each step of an agent run as a Block: a retrieved source, a tool result, an intermediate output, a final answer. Declared parents turn that run into a derivation graph the artifacts themselves carry. A later agent, evaluator, or human reviewer can load the Blocks, verify them, and inspect the declared chain without opening the orchestrator that produced the run. ALX verifies deterministic identity, declared lineage, and graph structure. Applications remain responsible for content semantics, permissions, trust decisions, ownership, governance, and storage.
The Problem
Agent systems already store plenty of context. The gap is where that context lives. Retrieval hits, tool payloads, and earlier step outputs often sit in run logs, session stores, or a workflow database that only one product can read. The final answer that leaves the system is a string; the chain that justified it stays behind.
Two costs follow. A second agent that must continue the work cannot verify which sources the first answer declared, because those declarations never left with the answer. And an audit or evaluation pass that starts from exported outputs alone cannot reconstruct the run from protocol data; it depends on the original orchestrator remaining available and unchanged.
How ALX Applies
Create a Block whenever a step needs stable identity or direct lineage. A retrieved source becomes a Block whose content is application-defined metadata for the external resource. A tool result becomes a Block on the same terms. The final answer becomes a Block whose parentHashes name every direct dependency used to produce it.
Declare only direct parents. Earlier ancestors stay reachable through the graph. A root Block uses an empty parent set.
{
"type": "agent-output",
"task": "Summarize the security review",
"result": "The review identified three high-priority findings.",
"model": "application-defined",
"createdAt": "2026-07-28T14:30:00Z"
}
The payload above is application-defined content. A complete Block also carries parentHashes, contentHash, and blockHash. Which sources an answer declares is part of Block identity: the same answer text with a different parent set is a different Block. Identity mechanics are defined in Block Identity; this page focuses on keeping run context portable.
Once the run's Blocks are loaded, validateGraph() checks structure and parent resolution. traceAttribution() returns the selected Block with its reachable ancestors, depths, and path counts. If an application loads only part of a run, treat the result as incomplete lineage rather than assuming the missing Blocks do not exist.
Key Concepts
- Portable run context is the point of this use case: sources, tools, and steps leave with the answer as Blocks, not only as orchestrator-side logs.
parentHashesname the direct dependencies of a step. Parent order does not affect Block identity after normalization.- Derivation Graph is what connected run Blocks form; check it with
validateGraph()and inspect it withtraceAttribution(). - Block Attestation is an optional EIP-712 binding of a Block hash to an attester. Known Limitations records that the helpers the specification names are not implemented in the current package.
What ALX Does Not Do
- Retrieval, Storage, and Indexing stay outside the protocol. The vector index, document store, and agent runtime remain application concerns. Discovery and indexing of observed Blocks belong to XNDR Network, a separate hosted network.
- Ordering the Run is an application interpretation. The protocol defines no dependency ordering beyond an unordered parent set.
- Judging the Answer falls outside ALX. A valid hash does not validate meaning, factual truth, safety, legality, quality, ownership, or approval.
- Confirming Application Intent is not something a verification result establishes. Graph validation confirms declared structure, not that every relevant real-world input was declared.
- Attribution and Economics stay outside protocol semantics. Lineage records relationship structure only.