Manifest Specification

The .agt manifest is a signed JSON document describing an AI agent's identity, capabilities, endpoints, keys, and payments. For names on the AGT Registry it is the v3 manifest: the owner signs it with their wallet, and the registry holds the on-chain pointer to it. Any client can verify authorship without trusting any intermediary registry, gateway, or directory.

For the canonical specification document, see /spec or spec/agt-manifest-v3-draft.md. This page is the developer-facing summary.

Where the pointer lives

On the AGT Registry, the manifest pointer is stored on-chain — the registry records the manifest URI for the name, and the DNS TXT agt-manifest= record is a downstream projection of it. Resolvers read the pointer from the registry, so there is no DNS round-trip in the trust path. The URI can be ipfs:// (content-addressed), https://, or an inline data: URI.

Manifest Document

{
  "agt": "3.0",
  "name": "exampleagent.agt",
  "owner": "0x912D39E13b0bDAe2C5Cf5D0E2f9F4B38aE9c7f6a",
  "updated": "2026-09-07T05:00:00Z",
  "description": "Research and source citation agent.",
  "icon": "https://exampleagent.example/icon.png",
  "website": "https://exampleagent.example",
  "keys": [
    { "id": "sig-1", "purpose": "agent-auth", "type": "secp256k1", "publicKey": "0x04...", "revoked": false }
  ],
  "endpoints": [
    { "protocol": "mcp",  "url": "https://exampleagent.example/mcp", "version": "2025-11-05" },
    { "protocol": "a2a",  "url": "https://exampleagent.example/.well-known/agent.json" },
    { "protocol": "http", "url": "https://exampleagent.example/api/v1" }
  ],
  "capabilities": [
    { "id": "research", "description": "Searches sources and synthesizes a cited summary." },
    { "id": "summarization" }
  ],
  "pricing": { "model": "freemium", "free_tier": "10 queries/day",
               "paid": { "currency": "USDC", "amount": "0.01", "unit": "per_request", "chain": "polygon" } },
  "payments": [ { "rail": "x402", "chain": "polygon", "address": "0x912D...7f6a", "token": "USDC" } ],
  "delegation": { "principal": "0xABC...", "scope": ["read", "quote"], "expires": "2027-01-01T00:00:00Z" },
  "registrations": [ { "standard": "erc-8004", "chainId": 137, "registry": "0x8004...", "agentId": "42" } ],
  "signature": "0x7f3e8d4c..."
}

Fields

FieldRequiredDescription
agtyesSpec version. "3.0".
nameyesThe .agt name this manifest describes. Lowercase.
owneryesOwner wallet address. Must equal the registry owner of the name at verification time.
updatedyesISO 8601 timestamp.
description, icon, websitenoHuman-facing identity fields.
keysnoAgent public keys. Each has a purpose (agent-auth, encryption, custom), a type, a publicKey, and a revoked flag. Rotate by publishing a new manifest.
endpointsnoOne entry per protocol: protocol, url, and an optional version.
capabilitiesnoCapability ids (see the vocabulary below), each with an optional description and JSON Schema input/output.
pricingnoHow the agent charges: model (free/freemium/paid/contact), optional free_tier and paid terms.
paymentsnoPayment rails the agent accepts: rail, chain, address, token.
delegationno"This agent acts for this principal": principal address, scope, and optional expires.
registrationsnoInterop identities in other standards (erc-8004, did, ens).
signatureyesEIP-191 signature over the canonicalized manifest (see below).

Signing & Verification

Manifests are canonicalized with keys sorted lexicographically at every level and no insignificant whitespace (JCS-lite; RFC 8785 for full conformance). Signing is EIP-191 personal_sign by the wallet that owns the name — the private key never leaves the wallet.

Verification is three-way:

  1. Signature recovery: the signer recovered from signature MUST equal the manifest's owner.
  2. On-chain owner check: the manifest's owner MUST equal the current owner of the name in the AGT Registry.
  3. CID check (when the URI is ipfs://): the fetched bytes MUST hash to the CID in the pointer. (Defends against gateway tampering.)

On any failure, resolvers surface verified: false with reasons rather than silently dropping the document — but clients MUST NOT trust an unverified manifest.

Resolution Algorithm

  1. Derive the token ID from the label.
  2. Read ownerOf, active/expiry, and the manifest pointer from the AGT Registry.
  3. Fetch the manifest from its URI (ipfs:// via configurable gateways, https://, or data:), parse, and run the three verification checks.
  4. If the registry has no pointer, fall back to DNS TXT for legacy names (agt-manifest= for a v2 JSON manifest, agt-version=1 for a v1 inline manifest).
  5. Return { name, owner, active, manifest, verified, reasons }.

Protocol Vocabulary

IDDescription
mcpModel Context Protocol (Anthropic).
a2aAgent-to-Agent Protocol (Google).
httpREST or RPC over HTTP/HTTPS.
wsWebSocket.
grpcgRPC.

Custom protocol IDs are permitted. Lowercase, hyphenated.

Payment Rails

RailDescription
x402HTTP 402 pay-per-request settlement.
evmDirect EVM token transfer.
lightningBitcoin Lightning.

Custom rails are permitted.

Capability Vocabulary

70 reference capabilities across 8 categories. Capability inputs and outputs use JSON Schema Draft 2020-12. Custom IDs permitted.

Language

IDDescription
researchGathers, synthesizes, and cites information from multiple sources.
summarizationCondenses long-form content into concise summaries.
translationTranslates text between natural languages.
content-writingGenerates articles, blog posts, documentation, or other long-form written content.
copywritingProduces marketing copy, ad text, taglines, and promotional content.
editingProofreads, corrects grammar, and improves style and clarity.
paraphrasingRestates text in different words while preserving meaning.
extractionPulls structured data from unstructured text (entities, dates, amounts).
classificationCategorizes text by topic, sentiment, intent, or other criteria.
question-answeringAnswers questions using provided context or general knowledge.
fact-checkingVerifies claims against authoritative sources.
reasoningPerforms multi-step logical reasoning and problem solving.
brainstormingGenerates creative ideas, alternatives, and divergent options.

Code

IDDescription
code-generationWrites source code from natural language specifications.
code-reviewAnalyzes code for bugs, style issues, and improvement opportunities.
code-explanationExplains what code does in plain language.
debuggingIdentifies and fixes software bugs.
testingWrites or executes tests and reports results.
refactoringRestructures code for clarity or performance without changing behavior.
code-documentationGenerates docstrings, READMEs, and technical reference for code.
database-queryGenerates, optimizes, or explains SQL and database queries.
code-completionProvides inline code suggestions and autocompletion.

Data

IDDescription
data-analysisPerforms statistical analysis and extracts insights from structured data.
data-visualizationCreates charts, graphs, dashboards, and visual data representations.
data-cleaningNormalizes, deduplicates, and corrects data quality issues.
data-transformationConverts data between formats, schemas, or structures (ETL).
mathSolves mathematical problems and performs symbolic or numeric computation.
forecastingBuilds predictive models and generates time-series forecasts.
anomaly-detectionIdentifies outliers and unexpected patterns in data.
reportingGenerates structured reports and executive summaries from data.
embeddingGenerates vector embeddings for text, images, or other inputs.
clusteringGroups similar items together based on features or content.
rankingScores and prioritizes items by relevance, quality, or other criteria.

Search & Retrieval

IDDescription
searchLooks up records, names or resources by query in a specific corpus or registry.
web-searchSearches the public internet for information.
semantic-searchRetrieves results based on meaning rather than keyword matching.
document-searchSearches across document collections, PDFs, or knowledge bases.
knowledge-retrievalQueries structured knowledge bases or performs retrieval-augmented generation.
citationFinds, formats, and verifies references and source attributions.

Media

IDDescription
image-generationCreates images from text prompts or other inputs.
image-editingModifies, enhances, or transforms existing images.
image-analysisExtracts information, labels, or descriptions from images.
video-generationCreates video content from text, images, or other inputs.
video-analysisExtracts information, scenes, or transcripts from video.
audio-transcriptionConverts spoken audio into text.
audio-generationProduces speech, music, or sound effects from text or other inputs.
ocrExtracts text from images, scans, or documents via optical character recognition.
designCreates UI mockups, graphics, layouts, or other visual design work.
3d-modelingGenerates or manipulates three-dimensional models and scenes.

Communication

IDDescription
chatEngages in real-time conversational interaction with users or other agents.
email-draftingComposes, formats, and suggests email messages.
meeting-notesTranscribes, summarizes, and extracts action items from meetings.
presentationCreates slides, pitch decks, and structured visual presentations.
tutoringProvides educational instruction, explanations, and guided learning.
customer-supportHandles support queries, troubleshooting, and issue resolution.
negotiationFacilitates structured dialogue toward agreement or compromise.

Automation

IDDescription
web-scrapingExtracts structured data from web pages.
api-integrationConnects to and orchestrates third-party APIs.
workflow-automationAutomates multi-step business or technical workflows.
schedulingManages time-based tasks, reminders, and calendar operations.
monitoringObserves systems, services, or data streams and reports on status changes.
deploymentManages CI/CD pipelines, releases, and software deployments.
file-managementOrganizes, converts, moves, and manages files and directories.
notificationSends alerts, messages, and notifications across channels.
data-entryFills forms, inputs data, and automates manual entry tasks.

Security

IDDescription
vulnerability-scanningAssesses systems and code for security weaknesses.
compliance-checkingVerifies adherence to policies, regulations, and standards.
threat-detectionIdentifies potential security threats and suspicious activity.
access-controlManages permissions, roles, and authentication policies.
encryptionHandles data encryption, decryption, and key management.

Security Considerations

  • Public gateways are untrusted — resolvers must verify the CID matches the fetched content.
  • On-chain ownership is the ground truth. A valid signature proves authorship at signing time; always resolve the current pointer and owner from the registry. Manifests signed by a previous owner become invalid after transfer.
  • Manifests are public. Never include secrets, API keys, or private data.
  • Key rotation and revocation are done by setting keys[].revoked and publishing a new signed manifest.
  • Treat all manifest text as untrusted input in agent prompts (prompt-injection surface).
  • Endpoints SHOULD use HTTPS. Clients SHOULD warn before connecting to plain HTTP.

Legacy manifests

Two earlier formats remain readable but are not written for new names: v1 (each field as a separate inline DNS TXT record, no signature) and v2 (a signed JSON document on IPFS with "agt": "2.0"). Resolvers fall back to DNS TXT to read these for names that predate the registry; new registrations and migrated names write v3.

References

  • RFC 8785 — JSON Canonicalization Scheme (JCS)
  • EIP-191 — Signed Data Standard
  • EIP-55 — Mixed-case checksum address encoding
  • ENSIP-9 — Multichain address resolution
  • ERC-8004 — Agent identity registration
  • JSON Schema Draft 2020-12
  • IPFS CIDv1 — multibase, multihash, multicodec