Gondolabeta
Guides

Ante

Reach Gondola from Antigma Labs' Ante the quick way with two env vars, or add it as a named provider in catalog.json, and run any Venice model paid per request in USDC on Base.

1

Create an API key

Sign in with your Base wallet at /keys and mint a Gondola API key. Keys start with gnd_. It authenticates every request and each call is charged in USDC against your Gondola balance.

Top up USDC on Base once at /wallet. The same balance powers the browser chat and every tool you connect.

2

Point Ante at Gondola

Ante ships a built-in openai-compatible provider that reads its endpoint from two env vars, no config file needed:

shell
export OPENAI_COMPATIBLE_BASE_URL=https://api.gondola-ai.com/v1
export OPENAI_COMPATIBLE_API_KEY=gnd_xxxx
shell
ante --provider openai-compatible --model claude-sonnet-5

For a named gondola provider that shows up alongside your other providers (and survives adding a second, unrelated OpenAI-compatible endpoint later), add a block to ~/.ante/catalog.json instead:

~/.ante/catalog.json
{
  "providers": {
    "gondola": {
      "display_name": "Gondola",
      "base_url": "https://api.gondola-ai.com/v1",
      "wire_style": "OpenAiCompatible",
      "auth": { "bearer": { "env_key": "GONDOLA_API_KEY" } },
      "preferred_models": [
        {
          "id": "claude-sonnet-5",
          "description": "General agent work",
          "context_limit": 1000000,
          "max_tokens": 64000
        },
        {
          "id": "qwen3-coder-480b-a35b-instruct-turbo",
          "description": "Coding specialist",
          "context_limit": 256000,
          "max_tokens": 65536
        }
      ]
    }
  }
}
shell
export GONDOLA_API_KEY=gnd_xxxx
ante --provider gondola --model claude-sonnet-5
Both paths at once
The quick env vars configure Ante's one built-in openai-compatible slot, shared by anything using that same provider key. The named gondola entry is independent and can coexist with it. Pick the named path if you also want to reach a different OpenAI-compatible service at the same time.
3

Pick a model

The catalog block above lists claude-sonnet-5 (general agent work) and qwen3-coder-480b-a35b-instruct-turbo (coding specialist). Any id from the live catalog works the same way; copy context_length and max_completion_tokens into context_limit and max_tokens:

shell
curl https://api.gondola-ai.com/v1/models
Explicit --model always reaches the model, listed or not
If you pass --provider gondola --model <id> for an id that isn't in preferred_models, Ante still sends it: an explicit provider choice is authoritative. Listing a model is only about showing up in the picker and setting the provider's no-argument default (Ante picks its heaviest weight_class when you run --provider gondola with no --model).
4

Notes and troubleshooting

Cap the price on unattended runs
The named catalog path accepts static request headers via http_headers. Set x-gondola-max-factor (0 to 1) to refuse anything priced above that ceiling instead of paying more, or x-gondola-max-charge-usd for a hard dollar limit per request:
~/.ante/catalog.json (merge into the gondola block)
{
  "providers": {
    "gondola": {
      "http_headers": { "x-gondola-max-charge-usd": "0.50" }
    }
  }
}

Omitting these headers means no ceiling, and a request with no cheaper capacity can fall through to Gondola's own backup key at Venice list price. This only works on the named provider path: the quick env vars have no header field to set.

Catalog edits need a restart
catalog.json is read once per process. Restart Ante after editing it. ~/.ante can be relocated with the ANTE_HOME env var if you keep it elsewhere.

If a request returns insufficient balance, top up at /wallet. Real usage and spend per key live at /keys.

Keep going
All setup guidesOpenHarness guideZot guideLive prices