How to use agent-atoms

Read the catalog over HTTPS

Every artifact is served under stable URLs with correct content-types:

curl https://agent-atoms.com/exports/catalog.json
curl https://agent-atoms.com/atoms/persona/code-reviewer.json
curl https://agent-atoms.com/agents/code-reviewer.json
curl https://agent-atoms.com/schemas/composition-v1.json

Resolve an agent composition

An agent composition lists references to atoms by URI and version. To instantiate the agent, fetch each referenced atom and assemble: persona → tools → capabilities → role boundaries → isolation.

// pseudo-code
const composition = await fetch("/agents/code-reviewer.json").then(r => r.json());
const refs = composition.references;
const persona = await fetch(uriToUrl(refs.persona.ref)).then(r => r.json());
const tools = await Promise.all(refs.tools.map(r => fetch(uriToUrl(r.ref)).then(r => r.json())));
const capabilities = await Promise.all(refs.capabilities.map(r => fetch(uriToUrl(r.ref)).then(r => r.json())));
const isolation = await fetch(uriToUrl(refs.isolation.ref)).then(r => r.json());
const agent = compileAgent({ persona, tools, capabilities, isolation });

Compatibility rules

Rules in /exports/catalog.json (under the rules key) declare predicates over atoms. Example: capability/exec-with-approval requires isolation in {container-with-allowlist, ephemeral-vm, seccomp-restricted}. A composition that violates a require-effect rule is malformed.

Cross-framework portability

v0.1 ships the catalog and its JSON Schema; compilers to specific agent frameworks (LangChain, AutoGen, CrewAI) are v0.2 work — they translate tool-definition atoms into the framework's native tool signature, and bind capability-declaration atoms to the framework's permission model.