Thank you for contributing! This guide explains how to register a new agent.
-
Fork and clone this repo
-
Create a new directory under
agents/with your agent's slug:agents/my-agent/ ├── agent.toml # Required └── logo.svg # Optional -
Fill in
agent.tomlfollowing the A2A Agent Card schema:name = "My Agent" description = "What your agent does" version = "1.0.0" endpoint = "https://my-agent.example.com/a2a" [provider] organization = "Your Org" url = "https://yourorg.com" [capabilities] streaming = true pushNotifications = false extendedAgentCard = false [[skills]] id = "skill-id" name = "Skill Name" description = "What this skill does" inputModes = ["text"] outputModes = ["text"] [[interfaces]] protocol = "a2a" version = "1.0.0" url = "https://my-agent.example.com/a2a" [securitySchemes.bearer] type = "http" scheme = "bearer"
-
Run validation locally:
pnpm install pnpm run validate
-
Submit your PR
Use the Register New Agent issue template.
Agent TOML files use the A2A Agent Card schema as a standard format for structured metadata. Your agent does not need to implement the A2A protocol — the schema is used purely for registry purposes.
| Field | Type | Description |
|---|---|---|
name |
string | Human-readable agent name |
endpoint |
string (URL) | Agent service endpoint |
provider.organization |
string | Organization operating the agent |
| Field | Type | Description |
|---|---|---|
description |
string | What the agent does |
version |
string | Agent card version |
provider.url |
string (URL) | Organization website |
capabilities |
object | streaming, pushNotifications, extendedAgentCard |
skills |
array | Agent capabilities with id, name, description, I/O modes |
interfaces |
array | Protocol bindings (protocol, version, url) |
securitySchemes |
object | Auth methods (apiKey, http, oauth2, etc.) |
# Install dependencies
pnpm install
# Validate all agents
pnpm run validate
# Generate agents.json
pnpm run generate
# Run the frontend dev server
pnpm run dev