The API for production-grade agents.
Omnara is an open source platform for running managed agents. It handles execution and state while you choose the models, tools, machines, and how users interact with each agent.
Omnara Cloud · Documentation · API · Changelog · Discord
- Developers. Build agents for internal use or customer-facing products with the API. Your application controls who can use each agent, what input it receives, and how its output reaches users. Omnara handles execution and state in between.
- Teams. Interact with agents directly through Omnara's dashboard or first-party Slack connector.
- Create your agent
instruction: |
You are a coding agent running gpt-5.6-sol. Use the tools
you have available to solve coding problems for the user.
model:
provider_config: omnara-openrouter
name: openai/gpt-5.6-sol
# ...
# add more tools, sandboxes, mcps- Upload your agent profile
$ npx omnara login
$ npx omnara profiles create --name agent --file agent.yaml
id aprf_aej3...
name agent
[...]- Launch the agent from the profile and chat with it
$ npx omnara agents launch --profile $AGENT_PROFILE_ID --file agent.yaml
$ open https://app.omnara.com/projects/[$PROJECT_ID]/agents/[$AGENT_ID]- Durable agents. Agent state is committed atomically to Postgres. Agents recover automatically from crashes, restarts, and temporary machine disconnects.
- Machines. Use sandboxes from Blaxel, Daytona, Modal, or Unikraft (more coming soon), or connect your own laptop or VM. An agent can run with no machines or use several at once. These can be sandboxes, your own machines, or both. You can add or remove machines while the agent is running.
- Models. Bring your own API keys and use any model exposed through a compatible endpoint, including OpenRouter, LiteLLM, and Ollama. Omnara supports OpenAI Responses, OpenAI Chat Completions, and Anthropic Messages, with more API formats coming soon.
- Tools. Use built-in tools, custom tools, skills, and HTTP MCP servers.
- RBAC. Assign organization and project roles to users and API keys. Separate who can manage access, configure agents, operate them, or only view them.
- Cloud or self-hosted. Use Omnara Cloud or run it
yourself under Apache 2.0.
- Queryable state. Self-hosted deployments can query agent history directly in Postgres for analytics, evals, prompt analysis, and training datasets.
- CLI and SDK. Use Omnara programmatically via the CLI, Typescript CLI, or REST API.
Sign up at app.omnara.com, add a model provider, define an agent profile, and launch it from the console, Slack, or API.
See the quickstart for the complete flow.
- Docker with Compose
git clone https://github.com/omnara-ai/omnara.git
cd omnara
docker compose -f compose.yaml --profile app up -dgit clone https://github.com/omnara-ai/omnara.git
cd omnara
docker compose --profile app up -d --buildOpen http://localhost:8000. Local authentication email
is written to docker compose logs api, so you can complete signup without
configuring an email provider.
Add a model provider credential in the console, create an agent profile, and launch an agent.
Local development uses intentionally insecure defaults. Do not use those defaults in a deployed environment. Follow the self-hosting guide and configuration reference for production setup.
The API is defined in api/openapi/openapi.yaml and
served under /api/v1. See the
API overview.
Source development requires the Go version declared in go.mod,
Node.js 24 or newer with Corepack, and Docker with Compose.
Run the fast repository gate.
make verifyTo include React Doctor against the current branch changes, run
make web-check-all.
Run database-backed integration tests.
make test-integrationRun deterministic service end-to-end tests.
make test-service-e2eProvider-backed live tests are available through the make test-live-* targets
and require the corresponding credentials. CI runs them on every push to main;
to run them on a pull request, add the live-tests label.
See CONTRIBUTING.md for generated-code workflows and pull request expectations.