How to use the atoms directory

One request, every catalog

Everything an agent needs to discover the Convergent Systems atoms ecosystem is at one URL:

curl https://atoms.convergent-systems.co/directory.json

Shape

{
  "ecosystem": "convergent-systems",
  "spec": "atoms-spec/v1",
  "built_at": "2026-05-21T22:00:00.000Z",
  "summary": {
    "total": 13,
    "live": 4,
    "bootstrap": 9
  },
  "catalogs": [
    {
      "name": "prompt-atoms",
      "version": "0.1.0",
      "status": "live",
      "domain": "prompt-atoms.com",
      "pages_url": "https://prompt-atoms.pages.dev",
      "github_url": "https://github.com/convergent-systems-co/prompt-atoms",
      "federation": "xdao.co",
      "purpose": "Prompt engineering as a canonical, machine-readable, ...",
      "atom_types": ["persona", "constraint", "format-instruction", "tool-use-template", "refusal-pattern", "output-schema"],
      "composition_type": "prompts",
      "composition_dir": "prompts",
      "rule_types": ["model-compatibility", "token-length-constraint", "format-compatibility"],
      "runtime_consumers": ["aish", "olympus"],
      "license": "Apache-2.0",
      "live": {
        "catalog_url": "https://prompt-atoms.pages.dev/exports/catalog.json",
        "atoms": 50,
        "compositions": 2,
        "rules": 2,
        "built_at": "2026-05-21T..."
      }
    },
    {
      "name": "compliance-atoms",
      "version": "0.1.0",
      "status": "bootstrap",
      "atom_types": [...],
      "composition_type": "frameworks",
      "live": null
    }
  ]
}

Fields

Consuming a specific catalog

Each live catalog publishes its full content at <pages_url>/exports/catalog.json. Example:

curl https://prompt-atoms.pages.dev/exports/catalog.json | jq '.atoms[0]'

Caching

The directory is cached for 60s at the edge (Cache-Control: public, max-age=60). CORS is open (Access-Control-Allow-Origin: *) so any client can fetch.

Rebuild cadence

The directory rebuilds on every push to main of convergent-systems-co/atoms. To force a refresh, push a no-op commit or re-run the deploy workflow.