> Keiro Labs API documentation - Omnigent Setup
> Page: https://docs.keirolabs.ai/omnigent.html
> Markdown: https://docs.keirolabs.ai/omnigent.md
> Agent index: https://docs.keirolabs.ai/llms.txt
> API base URL: https://api.keirolabs.ai/v1
> Auth: send "Authorization: Bearer <api-key>" with a key created in the
> Keiro console (https://console.keirolabs.ai/api-keys). Use credentials saved by
> `keiro setup`, or resolve the key from a secret manager or an owner-only
> secret file and pass it to the client explicitly. Never read another
> provider's variable, and never put raw key material in environment
> variables, code, docs, or logs.

# Use eb1 with Omnigent

Omnigent is an open-source coding agent that supports custom gateways in its
own configuration file. Registering Keiro there runs Omnigent's agents on the
public eb1 models. There is nothing to install from Keiro, and no fork or
local proxy is involved.

## Before you configure

1. Open [API keys](https://console.keirolabs.ai/api-keys).
2. Create a dedicated key for this Omnigent installation.
3. Keep the newly revealed secret available in your password manager until
   setup is complete.

A dedicated key lets you inspect and revoke Omnigent traffic independently
from production application traffic.

## Configure

Omnigent reads providers from `~/.omnigent/config.yaml`. Append the Keiro
entry once; if the file already has a `providers:` section, merge the `keiro`
entry into it by hand instead.

```bash
umask 077

KEIRO_BASE_URL=https://api.keirolabs.ai/v1

cat >> ~/.omnigent/config.yaml <<EOF
providers:
  keiro:
    kind: gateway
    default: true
    anthropic:
      base_url: ${KEIRO_BASE_URL%/v1}
      api_key: <api-key>
      models:
        default: eb1-preview
    openai:
      base_url: ${KEIRO_BASE_URL}
      wire_api: responses
      api_key: <api-key>
      models:
        default: eb1-preview
EOF

chmod 600 ~/.omnigent/config.yaml
```

`umask 077` makes a newly created file owner-only from the moment it exists;
the `chmod` covers a config file that predates this run. Open
`~/.omnigent/config.yaml` in your editor and replace both `<api-key>` values
with the key secret you created — do not paste the secret into a terminal
command, which would save it in shell history.

Omnigent reads provider credentials only from this file, so unlike the Codex
and Claude Code setups the secret is stored here in plaintext. Use a
dedicated key for Omnigent, keep the file owner-only, and revoke that key in
the console if the machine is shared or lost.

The two family entries are deliberate and differ in one detail each:

- The `anthropic` family takes the API root without the `/v1` suffix.
  Omnigent appends request paths itself, so a base URL that already ends in
  `/v1` produces `404`s on this family.
- The `openai` family takes the `/v1` base URL and requires
  `wire_api: responses`. Without it, Omnigent's codex integration cannot talk
  to Keiro.

Each family needs its own `models.default`; `eb1-preview` is the recommended
default for both.

## Models

Omnigent enumerates models from `GET /v1/models` with the configured key, so
its model picker lists the public eb1 models:

- `eb1-preview`
- `eb1-frontier-preview`
- `eb1-fast-preview`
- `eb1-efficient-preview`

These four public model IDs are the whole catalog. See [Models](models.md)
for what each one is for.

## Authentication

The `api_key` value is sent as `Authorization: Bearer`, the same credential
form as every other public endpoint. See [API auth](api-auth.md). A `401`
means the configured key is missing, invalid, or revoked.

Requests from Omnigent appear in Keiro Usage and Logs like other API traffic.

## Managed Sandbox limitation

Managed "Omnigent on Databricks" Sandbox hosts pin their own endpoints and
cannot use custom gateway entries like the one above. This setup applies to
Omnigent running on your own machine.

## Rotate the Omnigent key

1. Create a replacement dedicated key in the console.
2. Update both `api_key` values in `~/.omnigent/config.yaml`.
3. Start Omnigent and verify a harmless request.
4. Delete the old key in the console.

## Related pages

- [API keys](api-keys.md)
- [API auth](api-auth.md)
- [Models](models.md)
- [Responses](responses.md)
- [Usage and billing](usage-billing.md)
- [Omnigent documentation](https://omnigent.ai/quickstart/install)
