Architecture

The .agt ecosystem is composed of four repositories and a registry layer. Everything resolves through the public .agt resolver and records ownership on the Polygon blockchain.

System Components

┌─────────────────────────────────────────────────────────────┐
│  .agt Ecosystem                                             │
│                                                             │
│  ┌──────────┐  ┌──────────────┐  ┌────────────────────┐   │
│  │ Browser  │  │ agt-site     │  │ @agt/resolver SDK  │   │
│  │ (Tauri)  │  │ (Next.js 16) │  │ (TypeScript)       │   │
│  └────┬─────┘  └──────┬───────┘  └─────────┬──────────┘   │
│       │               │                     │               │
│       │  resolve       │  register/config    │  resolve     │
│       │               │                     │               │
│  ┌────┴───────────────┴─────────────────────┴──────────┐   │
│  │              .agt Registry Layer                     │   │
│  │  ┌─────────────────┐  ┌──────────────────────────┐  │   │
│  │  │ Public Resolver  │  │ Registration API         │  │   │
│  │  │ (read-only)      │  │ (zone CRUD, minting,     │  │   │
│  │  │                  │  │  records)                 │  │   │
│  │  └─────────────────┘  └──────────────────────────┘  │   │
│  └──────────────────────────────────────────────────────┘   │
│                          │                                   │
│  ┌───────────────────────┴──────────────────────────────┐   │
│  │              Polygon Blockchain                       │   │
│  │  Registry Contract: 0x465ea4967479A96D4490d575b5a6cC2B4A4BEE65 │
│  │  NFT ownership, on-chain records                      │   │
│  └──────────────────────────────────────────────────────┘   │
└─────────────────────────────────────────────────────────────┘

Repositories

RepoPurposeStack
browserWeb3 browser — first .agt clientTauri v2, Rust, vanilla JS/CSS
agt/agt-siteRegistration site + agent directoryNext.js 16, TypeScript, Tailwind
agt/resolver-sdkStandalone resolver libraryTypeScript, zero dependencies
agt/agtdomains-registerLegacy registration site (archived)Next.js 15, React 19, RainbowKit

How the Pieces Fit Together

The registry exposes two API surfaces: the Public Resolver (read-only, no auth) and the Registration API (authenticated, write access).

  • Browser and @agt/resolver use the public resolver to look up TXT records for any .agt name. This is the read path — no credentials needed.
  • agt-site uses the registration API to create zones, mint NFTs, and write TXT records. This is the write path — server-side only.
  • All registration ultimately records ownership on the Polygon blockchain via the registry contract. The agt-owner field in a manifest can be verified against the on-chain NFT owner.

Resolution Flow

Client calls resolveAgent("exampleagent.agt")
  → GET <public-resolver>/exampleagent.agt
  → Response includes TXT records
  → Parser finds agt-version=1 sentinel
  → Extracts all agt-* fields into AgentManifest
  → Returns structured manifest to caller

The same resolution path works from the Tauri browser (Rust), the resolver SDK (TypeScript), or any HTTP client that can call the public resolver endpoint.