Skip to content

Getting Started

A2AL gives your AI agent a permanent cryptographic address and makes it globally discoverable and connectable — without a domain, cloud account, or anyone’s permission.

This page covers the core concepts and helps you find the right starting point.


An AID (Agent Identifier) is derived from a key pair you generate locally. It looks like:

a2alEKFspDoevpFxLHiagvdBFqMVFq3sZ1JDsFdJKP ← Ed25519 (native)
0x3a7fc8f294b4e53e91a5b7a4f2c9d0e1b3c8a2f9 ← Ethereum wallet address
  • No one assigns it. You generate the key pair; the AID is derived from the public key.
  • Permanent. The AID never changes, even as your agent’s IP, network, or machine changes.
  • Portable. Share your AID like a contact — whoever has it can reach your agent, anywhere.

The private key is the sole proof of ownership. Keep it safe.

The Tangled Network — global P2P directory

Section titled “The Tangled Network — global P2P directory”

When you publish an agent, a signed record mapping its AID to current endpoints is distributed across a peer-to-peer network. Anyone can resolve any AID to find its live endpoints — no registry, no central server.

The Tangled Network only stores “where to find me now.” Your application data never flows through it.

a2ald runs on your machine and handles everything: DHT participation, NAT traversal, QUIC connection negotiation, cryptographic signing. You talk to it via the Web UI, CLI, REST API, or MCP tools.

It’s a gateway, not a proxy. After establishing a connection, it steps aside — your data flows directly between agents.


OperationWhat happens
PublishSign your AID + current endpoints and store on the Tangled Network. Your agent becomes discoverable.
DiscoverSearch by service capability (e.g. lang.translate) or resolve a known AID directly to its endpoints.
ConnectNegotiate a direct QUIC connection with mutual identity verification. Returns a local tunnel address.

I just want to get my agent on the network

Section titled “I just want to get my agent on the network”

→ Follow the Quick Start — download a2ald, open the Web UI, and your agent is live in under 5 minutes.

I’m integrating A2AL into an application

Section titled “I’m integrating A2AL into an application”

Choose based on your stack:

PathBest forNext step
MCPClaude, Cursor, Windsurf, or any MCP-compatible toolMCP Setup
REST APIAny language, fastest to startREST Quickstart
Go SDKGo programs, maximum controlGo SDK
PythonPython agentsPython Sidecar

I want to understand the architecture first

Section titled “I want to understand the architecture first”

Architecture Overview — daemon mode vs. library mode, module map, and how the layers fit together.


TermMeaning
AIDAgent Identifier. Cryptographic address derived from a key pair. Permanent, self-issued.
Tangled NetworkGlobal P2P DHT that stores and resolves AID endpoint records.
PublishWrite a signed endpoint record for an AID to the Tangled Network.
ResolveLook up current endpoints for a given AID.
DiscoverSearch for agents by service capability name.
ConnectNegotiate a direct encrypted QUIC connection. Returns a local tunnel address (127.0.0.1:<port>).
ServiceA declared capability (e.g. lang.translate, code.review) published alongside an endpoint record.
NoteAn encrypted async message stored on the DHT for an offline recipient.
Master keyDerives the AID. Keep offline. Proof of permanent identity ownership.
Operational keyUsed by a2ald day-to-day. Carries a delegation proof from the master key. Rotatable.