Skip to main content
AgentOS runs agents written with any framework. Each page in this section is a complete bundle — agentos.yaml, Dockerfile and code — that you can zip and deploy as it is. Every one was built and checked with the conformance kit against the versions named on its page.

Bringing an existing agent

Your agent’s code stays as it is. Three changes connect it to AgentOS:
1

Serve the contract

Wrap the agent’s entry point in a handler that answers POST /invoke and GET /health. With the SDKs this is a few lines: a function per capability, passed to serve.
2

Send model calls to the gateway

Point the framework’s OpenAI-compatible client at inv.llm.base_url with the run token header (inv.llm.headers), and use the model names from config.models in agentos.yaml. Usage, cost, guardrails and model changes then work without touching your code again. See Calling models.
3

Declare what it needs

List its capabilities with input and output schemas, its secrets, and the hosts it calls (network.allow) in agentos.yaml. Then zip and deploy.
When the framework can pause for a person, the run is held and the decision arrives in the Review queue. The pages show how each framework’s pause becomes an AgentOS approval.

Examples

Keep code that runs before an ask idempotent: on the resume, the handler runs again from the top. Key side effects by run_id and a step name. See Human approvals.

Framework not listed?

Anything that can serve HTTP and call an OpenAI-compatible endpoint works, in any language. Follow the agent contract directly, or use the SDKs and their framework adapters, then check it with the conformance kit.