omnara-ai/omnara

Goomnara.com

The open-source alternative to Claude Managed Agents

agent-infrastructuremanaged-agentsdurable-agentscoding-agents
Croissance des étoiles
Étoiles
2.8k
Forks
218
Croissance hebdomadaire
+43
Issues
2
1k2k
sept. 25janv. 26mai 26sept. 26
ArtefactsGo Modules
README

Omnara

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 · Discord

Who it is for

  • 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.

Getting Started

  1. 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
  1. Upload your agent profile
$ npx omnara login
$ npx omnara profiles create --name agent --file agent.yaml
id                  aprf_aej3...
name                agent
[...]
  1. 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]

Features

  • 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, 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.

Get started

Omnara Cloud

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.

Self-host

Requirements

  • Docker with Compose

Run published images

git clone https://github.com/omnara-ai/omnara.git
cd omnara
docker compose -f compose.yaml --profile app up -d

Build from source

git clone https://github.com/omnara-ai/omnara.git
cd omnara
docker compose --profile app up -d --build

Open 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.

API

The API is defined in api/openapi/openapi.yaml and served under /api/v1. See the API overview.

Development

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 verify

To include React Doctor against the current branch changes, run make web-check-all.

Run database-backed integration tests.

make test-integration

Run deterministic service end-to-end tests.

make test-service-e2e

Provider-backed live tests are available through the make test-live-* targets and require the corresponding credentials.

See CONTRIBUTING.md for generated-code workflows and pull request expectations.

Community

GitHub Issues · Discord · Security

License

Apache License 2.0