Runtime API and custom harnesses¶
ATLAS is designed so harnesses can integrate without reimplementing taxonomy finding, trace persistence, or learning thresholds.
Runtime contract¶
A harness should:
- start an ATLAS session when a task starts;
- pass a mandatory trace output or config containing
trace_output; - let Finding resolve the active taxonomy;
- invoke checkpoint or advisory gates at meaningful boundaries;
- invoke the final gate before completion;
- record one canonical trace at session end.
Taxonomy selection contract¶
Finding returns:
- a concrete
taxonomy_idwhen--inherit <taxonomy_id>is supplied; nonewhen there is no inherited taxonomy or the interactive picker chooses start-from-zero.
The runtime maps none to built-in MAST. Finding itself does not load MAST as a store record.
Public commands for harnesses¶
| Command | Use |
|---|---|
atlas-find |
Taxonomy selection and interactive picker. |
atlas-dashboard |
Dashboard process and local Web API. |
atlas-traces |
Trace status and inspection. |
atlas-register-taxonomy |
Store a completed taxonomy record. |
atlas-import-traces |
Build a taxonomy from existing trace files. |
atlas-doctor |
Validate paths, config, and optional dependencies. |
atlas-status |
Inspect one program's active taxonomy, pending traces, learning state, usage totals, last errors, and recent decisions. |
What should stay harness-specific¶
Each harness owns:
- how it represents events;
- how it extracts tool/subagent output;
- which boundaries are meaningful enough to call ATLAS;
- how it displays blocking messages to the agent.
ATLAS owns:
- taxonomy selection;
- final-gate protocol validation;
- trace persistence;
- dashboard state;
- generation/refinement trigger timing;
- taxonomy storage.
See INTEGRATION.md for a broader pipeline integration guide. See WEB_API.md for the localhost dashboard API response shapes.