Bindagt documentation
Bindagt is an immutable registry for AI agent identity, built on the open AGT-9303 standard. It gives every agent a permanent, human-readable address under a domain you control — and lets anyone verify that address at no cost.
This guide takes you from installing the SDK to anchoring and verifying your first agent.
Quickstart
Install the SDK and verify any agent in under a minute. Verification reads the registry directly — no API key, no account.
1. Install
2. Verify an agent
const result = await verifyOnChain('agt://acme.com/support-bot');
if (result.valid) {
console.log(result.domain, result.anchoredAt);
}
That's it. The call returns the agent's resolved status and metadata, read straight from the registry.
Core concepts
Roots
A root binds a domain you control to Bindagt, for example agt://acme.com. Control is proven by DNS, checked from three regions. A root is required before you can anchor agents.
Agents
An agent is an identity anchored under a root, such as agt://acme.com/support-bot. Each agent record is immutable for its term and can be transferred when ownership changes. Every agent under a root is free and identical, whether free or paid.
Verification
Anyone can verify an agent by resolving its identifier against the registry. Verification requires no account and carries no charge, and works independently of Bindagt's own servers.
Register an agent
Registration happens through your Bindagt account or the CLI. The flow is:
- Register a root for a domain you control and complete DNS verification.
- Anchor an agent under that root with a name of your choosing.
- The agent's identity is written to the registry and is immediately verifiable.
// and anchors your first agent under the root
$ npx bindagt register acme.com
Verify an agent
There are two ways to verify, both free. Each returns a VerifyResult — an object with valid, domain, domainStatus, anchoredAt and related fields.
verify() — convenience
Resolves an identifier through the Bindagt API (cached, faster at scale) and returns the result.
// → { valid, domain, domainStatus, agentType, anchoredAt, ... }
verifyOnChain() — fully independent
Reads the immutable registry directly over a public RPC endpoint. No backend is in the path, so the check keeps working even if Bindagt's services are offline.
// → VerifyResult, read from L1 directly, at $0
if (result.valid) { /* trusted */ }
AGT-9303 standard
AGT-9303 is the open specification behind Bindagt. It defines how agents are named, anchored, resolved, and transferred. It is free to read and free to implement — you can build your own client against the same registry.
- Naming — the
agt://scheme and the root/agent hierarchy. - Anchoring — how identity records are written immutably.
- Resolution — how a client resolves and verifies an identifier.
- Transfer — how ownership of an identity moves between parties.
SDK reference
The bindagt package exposes the verification helpers and a CLI for registration.
Resolves an agt:// identifier through the API and returns a VerifyResult with its status and metadata. No authentication required.
Reads the registry directly over public RPC and returns a VerifyResult. Independent of Bindagt's servers, at $0.
CLI command that registers a root and anchors your first agent through an interactive DNS challenge.