agentos-conformance (Python 3.11+). Like the SDKs, it isn’t published on PyPI yet: it ships with AgentOS as a Python package you install with pip or uv. Running an agent from its bundle needs Docker.
Run it
./my-agent is the bundle folder with agentos.yaml. In Docker the agent runs on an internal network of its own with the platform’s container limits, and gets a mock of the agent-facing platform API, an OpenAI-compatible mock model gateway, and a host that isn’t the platform’s.
The kit invokes every case in the bundle’s conformance.yaml, plus one case per capability that has none (its input made from the input schema), and prints a PASS, FAIL or SKIP line per check, then N passed, N failed, N skipped. On a failure in Docker, the container’s last output follows.
Exit codes:
0 all passed, 1 a check failed, 2 it couldn’t run (a bad bundle or conformance.yaml, no Docker).
What it checks
GET /healthanswers, and an unknown capability answersfailed.- Every answer has the contract’s shape and the expected status. A
completedoutput matches the capability’s output schema; afailedone has a code and message the platform keeps; asuspendedone names the hold the invocation asked for, and the resume after a decision answers too. - A streaming answer reports its result, and a stream whose result the platform refuses reports
failed. - The run token goes only to platform hosts and only while its invocation runs, every model call carries it, and it isn’t carried along a redirect off the platform.
- A compare-and-set write that meets a conflict is retried (the mock answers each case’s first conditional write with 409
version_conflict). - Child runs started again by a later invocation of the run keep their Idempotency-Keys, and child inputs and reported outputs match the bundle’s schemas.
Invoke bodies from the kit carry an extra field in
context. Agents must ignore fields they don’t know, as AgentOS may add more.conformance.yaml
Put it next toagentos.yaml:
conformance.yaml
Other keys are errors.
In CI
.github/workflows/agent.yml
The mock platform for your own tests
agentos-conformance mock serves the mock platform alone and prints its URLs as one JSON line, so an agent’s own tests, in any language, can drive it:
--spec ./my-agent gives the mock the bundle’s capabilities, so it checks child runs and reported outputs against their schemas. Without it, only capabilities it has issued invocations for can be started as child runs. --reply TEXT sets what the mock model answers.
