Skip to main content
Omnara works with the model providers you choose. Before an agent can use a model, your organization connects the provider, configures the model, and grants it to the project: The organization owns the credentials and model settings. Projects receive access through grants, and agent configs reference the provider and model by name. The dashboard guides you through this chain. The CLI and API expose the same resources for automation; CLI examples assume you have run omnara login and omnara config select.

Connect a provider

The examples assume the client, $ORG/orgID, and $PROJ/projectID setup from the quickstart.Store the API key as a secret, then create a provider that references it. The preset supplies the endpoint, API format, and authentication settings:
Keep the returned id, then:
Presets are available for openai, anthropic, and openrouter. For a proxy, local vLLM server, or another compatible endpoint, set the API format, base URL, endpoint path, and authentication method yourself.Omnara fetches the provider’s model catalog when it creates the provider, and on demand with omnara model-providers catalog {model-provider-config-id}, GET …/model-provider-configs/{id}/model-catalog, or sdk.getModelCatalog. The catalog probe can fail without failing the request, which allows private or air-gapped endpoints. Check model_catalog.status; you can configure models manually if needed.A provider cannot be deleted while it still has configured models.
Provider timeouts apply to each attempt, including reasoning and response streaming:
  • request_timeout_ms sets the total deadline, defaulting to 3600000 (60 minutes).
  • idle_timeout_ms limits the wait for response headers or more response data, defaulting to 300000 (5 minutes). Heartbeats count as activity. Increase it for endpoints that can remain silent for longer periods.
Edit these settings in the provider dialog or through the API. Existing total deadlines are retained on upgrade. Use headers to send extra HTTP headers with every request to the provider, and secret_headers to take a header’s value from a secret; put keys and tokens in secret_headers. Set both in the provider dialog or through the API. If a referenced secret is deleted, requests omit that header.

Configure models

A configured model (mdl_…) gives a provider model a name and runtime settings. Agent configs use name; Omnara sends provider_model_slug to the provider. Keeping them separate lets you manage provider details centrally.
Token settings have separate roles:
  • context_window_tokens is the shared input and output window.
  • max_output_tokens is the model’s output capacity. It is optional; selecting a discovered model can prefill it.
  • default_max_output_tokens is an optional output allowance for each request. When omitted, Omnara uses the known output capacity.
Omnara fits the request allowance to the remaining context. If both output settings are omitted, Messages uses 64,000 tokens; Chat Completions and Responses use the provider default. Set an explicit capacity or allowance for Messages endpoints that support less. Agents automatically continue after an output-limit cutoff. Changing a model’s runtime settings creates a new revision (mrev_…). Agents resolve the current revision before each model call, so the new settings apply to later calls from existing agents too.

Grant models to projects

A project needs a model grant (pmog_…) before its configs can use the model.
A grant can apply stricter settings for one project, such as lower token limits, disabled reasoning, or fewer input and output types — set them when creating the grant (for example, with the CLI’s --max-output-tokens or --no-supports-reasoning flags). Settings you omit inherit from the configured model. omnara grant models list shows a project’s grants and omnara grant models delete {model-grant-id} revokes one.Revoking a grant prevents the project from creating new configs with that model. It does not change agents that already use it.

Use it from a config

With the chain complete, this config can now be created in the project:
When you create the config, Omnara checks the provider, model, and project grant. If something is missing, the validation error tells you what to fix.