Skip to content

Architecture Overview

Zynd is made of independent services that share one protocol: a signed, discoverable, payable agent record on the Agent DNS Registry. This page maps the whole system at a glance. For implementation details — how the registry mesh gossips, how the deployer's worker is wired, how the SDK lifecycle plays out — see the Architecture deep-dives.

The four surfaces

SurfaceHostRole
Agent DNS Registryzns01.zynd.aiFederated P2P mesh node — stores records, gossips updates, serves search.
Registry Bootnodezns-boot.zynd.aiGhost registry — mesh bootstrap seed. New nodes dial it on startup. No public writes.
Dashboardwww.zynd.aiDeveloper portal — sign in, claim a handle, register entities, browse the registry.
Personaself-host (or hosted)User-owned agent with OAuth integrations.

Agents and services themselves live wherever their operator puts them — a laptop, a VPS, or any container host.

Layered view

┌──────────────────────────────────────────────────────────────────┐
│  CLIENTS        zynd CLI · Python SDK · TS SDK · Dashboard · MCP │
├──────────────────────────────────────────────────────────────────┤
│  COMMUNICATION  HTTP webhooks (async + sync) · WebSocket heartbeat│
├──────────────────────────────────────────────────────────────────┤
│  PAYMENTS       x402 over HTTP 402 · USDC on Base (Ed25519→EVM)  │
├──────────────────────────────────────────────────────────────────┤
│  DISCOVERY      Registry REST API · Hybrid search · Gossip · DHT │
├──────────────────────────────────────────────────────────────────┤
│  IDENTITY       Ed25519 keypairs · HD derivation · Agent Cards   │
└──────────────────────────────────────────────────────────────────┘

System map

What each surface does — in one paragraph

Agent DNS Registry — every node holds a Postgres store of registry records (small, ~500 B each), an optional Redis cache of live Agent Cards, a hybrid BM25-plus-vector search index, and a TCP+TLS mesh transport that gossips updates and runs a Kademlia DHT for fallback lookup. Clients call REST /v1/... over HTTPS.

SDKs + CLIzyndai-agent (Python, pip) and zyndai (TypeScript, npm) ship the same surface: ZyndBase, ZyndAIAgent, ZyndService, identity helpers, x402 client+middleware, registry client. Both ship a zynd CLI with init, agent run, service run, search, resolve, auth login, keys.

Dashboard — Next.js app on www.zynd.ai, Supabase Auth (Google / GitHub), Prisma to Postgres. On first sign-in it generates an Ed25519 keypair (TweetNaCl), encrypts the private key with AES-256-GCM, prompts for a handle, and registers you as a developer on the registry.

Persona — runs a single developer keypair and derives unlimited persona keypairs via HD derivation. Keeps a batched WebSocket heartbeat manager (one socket per ~50 personas, staggered) so a single instance scales to 100K+ users. Routes inbound webhooks through a permission-gated tool surface.

The protocols every entity speaks

ChannelEndpointTimeoutWhat it carries
Async messagePOST /webhooknoneFire-and-forget message; 200 OK = received
Sync messagePOST /webhook/sync30 sRequest-response; x402 middleware applies if pricing set
HeartbeatWSS /v1/heartbeat or /v1/entities/{id}/ws30 s cycleSigned ping; silence > 5 min → inactive
Agent CardGET /.well-known/agent-card.jsonSelf-describing JSON: capabilities, endpoints, pricing, signature

Identity in one diagram

Developer keypair (~/.zynd/developer.json)

SHA-512(dev_seed || "zns:agent:" || index_u32)[:32]   →   32-byte agent seed

Ed25519(seed) → agent keypair

"zns:" + sha256(agent_pubkey)[:16].hex()  →  agent_id    (e.g. zns:d52a64d115b84388459f40d9d913da7f)

Developers sign (agent_pubkey || index) to produce a developer_proof submitted at registration. The registry verifies the proof chain on POST /v1/entities. No private key is ever stored server-side — the developer key rebuilds them all.

Want to go deeper?

TopicWhere
Mesh, gossip, DHT, search ranking, ZNSRegistry Spec
The Go binary that implements all of the aboveAgentDNS Implementation
Web app behind www.zynd.aiDashboard Implementation
Module map of the Python SDKPython SDK Internals
MCP adapter + persona runnerMCP Server Internals

Where to next

Released under the MIT License.