Repository navigation
[ENHANCEMENT] Add Opper as a provider #1890
Description
Problem (one or two sentences)
Zoo Code users who want to use Opper, an EU-hosted AI gateway, have to set it up as a generic OpenAI-compatible endpoint by hand: base URL, key and model ids. There is no Opper entry in the provider list.
Context (who is affected and when)
Teams that need EU data residency, or that want one key and one bill across model vendors. Opper is an EU-hosted gateway with one OpenAI-compatible API and one key for 700+ models from 50+ providers. These users hit the gap the first time they open the provider settings.
Desired behavior (conceptual, not technical)
Opper appears in the provider list next to the other gateways. The user pastes an Opper API key, picks a model from a list that is loaded automatically, and starts working. Nothing else to configure.
Constraints / preferences (optional)
Same shape as the existing gateway providers: no new dependencies, no change to defaults, and a model list fetched live so nobody has to maintain a model table by hand.
Request checklist
- I've searched existing Issues and Discussions for duplicates
- This describes a specific problem with clear context and impact
Zoo Code Task Links (optional)
No response
Acceptance criteria (optional)
- Opper is selectable in the provider dropdown.
- With a valid key, the model picker lists Opper's models from
GET https://api.opper.ai/v3/compat/models. - Chat requests go to
https://api.opper.ai/v3/compat/chat/completionswith the selected model id. - A missing or invalid key is reported the same way as for the other providers.
Proposed approach (optional)
Follow the NanoGPT provider added in #1239: provider and settings types in packages/types, a handler and a live model fetcher in src/api/providers, a settings component in webview-ui, the settings strings across the locales, and tests mirroring the NanoGPT specs. Model ids are bare pool names such as claude-sonnet-4-6, and Opper picks the route per request.
I would like to implement this and will comment to claim it.
Disclosure: I work at Opper.
Trade-offs / risks (optional)
A provider/model id such as azure/gpt-5.5 pins one route instead of letting Opper choose; it is passed through unchanged, so both forms work. Otherwise Opper behaves like the other OpenAI-compatible gateways.
Activity
Felixkw12 commentedon Oct 5, 2026
Claiming