Tools
Gondola Provider
Gondola provider plugin for OpenClaw: pay-per-request Venice AI inference, USDC on Base
Install
openclaw plugins install @gondola-market/openclaw-gondola-provider
README
# openclaw-gondola-provider
Adds [Gondola (gondola-ai.com)](https://gondola-ai.com) as a model provider for
[OpenClaw](https://openclaw.ai).
Gondola is a pay-as-you-go marketplace for Venice AI inference. Each request is
routed to the cheapest available supplier and settled in USDC on Base. One
OpenAI-compatible endpoint, no subscription, no Venice account. Prompts and
completions are never persisted.
## What you get
- A `gondola` provider in `openclaw models`, the setup wizard, and
`--provider gondola`
- 14 curated models out of the box, refreshed at runtime from Gondola's public
`GET /v1/models` (105 chat models as of the last catalog refresh)
- Real per-model prices, context windows, and tool-support flags, so OpenClaw's
cost estimates match what you are actually charged
- Your remaining Gondola balance in OpenClaw's usage panel
## Get an API key
1. Mint a key at <https://gondola-ai.com/wallet?tab=keys> (format: `gnd_...`)
2. Top up USDC on Base once at <https://gondola-ai.com/wallet>
3. Setup guides for other tools: <https://gondola-ai.com/guides>
## Install
```sh
openclaw plugins install @gondola-market/openclaw-gondola-provider
```
Or from ClawHub:
```sh
openclaw plugins install clawhub:@gondola-market/openclaw-gondola-provider
```
Straight from the repo, without npm:
```sh
openclaw plugins install git:github.com/Gondola-Market/openclaw-gondola-provider
```
## Configure
The setup wizard prompts for the key. To skip it:
```sh
export GONDOLA_API_KEY=gnd_...
openclaw models set gondola/claude-sonnet-5
```
The CLI flag `--gondola-api-key <key>` works anywhere provider flags are
accepted. Pinned in config:
```json5
{
models: {
providers: {
gondola: {
baseUrl: "https://api.gondola-ai.com/v1",
apiKey: "${GONDOLA_API_KEY}",
api: "openai-completions",
},
},
},
agents: { defaults: { model: { primary: "gondola/claude-sonnet-5" } } },
}
```
## Models
Curated defaults (default model: `claude-sonnet-5`):
| Model | Context | Notes |
| --- | --- | --- |
| `claude-opus-5` | 1M | frontier coding, code mode capable |
| `claude-sonnet-5` | 1M | default, strong coding at a workhorse price |
| `claude-fable-5` | 1M | hardest reasoning, code mode capable |
| `openai-gpt-56-sol` | 1M | frontier GPT |
| `openai-gpt-53-codex` | 400K | code-tuned GPT |
| `gemini-3-6-flash` | 1M | fast, cheap, vision |
| `grok-4-5` | 500K | vision, code |
| `kimi-k3` | 1M | open weights, agentic coding |
| `zai-org-glm-5-2` | 1M | open weights, cheap long context |
| `minimax-m27` | 198K | cheap agentic coding |
| `qwen3-coder-480b-a35b-instruct-turbo` | 256K | code specialist |
| `deepseek-v4-flash` | 1M | cheapest capable, good aux model |
| `zai-org-glm-4.7-flash` | 128K | ultra cheap utility model |
| `venice-uncensored-1-2` | 128K | uncensored, vision |
The full live catalog (105 chat models, plus image and video models reachable
through Gondola's other endpoints) loads automatically once the plugin is
active. Any id from <https://api.gondola-ai.com/v1/models> can be used directly:
```sh
openclaw models set gondola/qwen3-5-397b-a17b
```
If a model is missing from the picker, add it to your config:
```json5
{
models: {
providers: {
gondola: { models: [{ id: "qwen3-5-397b-a17b", name: "Qwen 3.5 397B" }] },
},
},
}
```
## Wire formats
The provider is registered as `openai-completions` against
`https://api.gondola-ai.com/v1`, which is the path this plugin is tested on.
Gondola also serves an Anthropic-compatible surface at
`https://api.gondola-ai.com/v1/messages` (the same key, the same balance). If
you would rather drive Gondola through the Anthropic protocol, declare a second
provider entry with `api: "anthropic-messages"`:
```json5
{
models: {
providers: {
"gondola-anthropic": {
baseUrl: "https://api.gondola-ai.com/v1",
apiKey: "${GONDOLA_API_KEY}",
api: "anthropic-messages",
models: [{ id: "claude-sonnet-5", name: "Claude Sonnet 5 (Anthropic wire)" }],
},
},
},
}
```
Note that `claude-haiku-*` does not exist on Gondola, so tools that expect a
small fast Claude model need it pointed elsewhere.
## Balance and payments
The plugin authenticates with `GONDOLA_API_KEY`; each request is metered
against your prepaid USDC balance, and OpenClaw's usage view reads it from
`GET /v1/balance`. Every response also carries `x-gondola-balance`.
Separately, Gondola's API accepts accountless per-request x402 payments (HTTP
402 challenges, USDC on Base) for clients that speak the protocol natively.
OpenClaw is not one of them, so this plugin always uses key auth.
## Updating
```sh
openclaw plugins update @gondola-market/openclaw-gondola-provider
```
Prices in the shipped fallback catalog are a snapshot; the live catalog always
wins at runtime. Maintainers refresh the snapshot with:
```sh
node scripts/refresh-catalog.mjs
```
## Compatibility
Targets the OpenClaw plugin API `>=2026.7.1`. The plugin ships plain ESM
JavaScript with no build step and no runtime dependencies; it imports only
`openclaw/plugin-sdk/provider-entry`, `openclaw/plugin-sdk/provider-model-shared`,
and `openclaw/plugin-sdk/provider-onboard` from the host.
## License
MIT
tools
Comments
Sign in to leave a comment