AOM Agents

AOM Agents are ready-made templates and tooling to build agents that consume an AOM surface (input) and produce AOM output. One clear contract: surface in → output out.

Templates

Minimal skeletons in Python 3 and Node 18+ with no dependency on this repo at runtime. Copy one into your project, replace the YOUR LOGIC HERE section, then validate at aom.tools/validate or with the schemas on agentobjectmodel.org.

  • Python: agent_skeleton.py — run with python agent_skeleton.py --input surface.aom.json [--output out.json] [--site-policy site.site.json]
  • Node: agent_skeleton.mjs — run with node agent_skeleton.mjs --input surface.aom.json [--output out.json] [--site-policy site.site.json]

Pass page-level AOM with --input and, optionally, a site-level policy (e.g. /.well-known/aom-policy.json-style) with --site-policy. The effective automation mode is derived from both. Example surface JSON: use spec-bridges/examples/login-ready.aom.json from this repo, or any valid AOM surface from the browser extension or your app.

The downloaded kits (see Downloads) include three example AOM surfaces (login-ready.aom.json, page-open-sandbox.aom.json, page-forbidden.aom.json) and three example site policies (site-open.site.json, site-ready.site.json, site-forbidden.site.json) so you can test allowed, open, and forbidden without extra files.

Downloads

Agent kits are available from Downloads for agent owners: Python Agent Kit and Node Agent Kit (separate zips). You can also clone or copy from the aom-agent-templates/ folder in the repo.

Validation

Validate input (surface) at aom.tools/validate by pasting the URL or JSON. Validate output with the schemas and validators on agentobjectmodel.org.

Registration

Registration is free and gives you a key for logging and identity. It does not block downloads. Keys are shown once. Register at /register-agent/.

Agents use a local config file named aom.kya.agent.json by default. If the file contains agent_name and owner_email (and optionally purpose) but no registration_key, the kit will attempt to auto-register and write the key back to the file.

Recommended naming when multiple agents share a folder: aom.kya.agent.<agent_name>.json (pass with --config).