feat: add Gonka Broker as an LLM provider#12906
Conversation
|
All contributors have signed the CLA ✍️ ✅ |
|
I have read the CLA Document and I hereby sign the CLA |
|
The only failing check is jetbrains-tests, and it's failing on the flaky testAutocomplete() IDE-integration test (com.intellij.ide.starter.driver UI driver, AssertionFailedError at Autocomplete.kt:42), surrounded by headless X-server/xkbcomp/AT-SPI warnings. This is unrelated to this PR: Kotlin/Java compilation and the :test unit tests pass, and the change only adds an inert OpenAI-compatible provider (plus two entries in autodetect.ts) — nothing that touches autocomplete. All TypeScript checks (core, packages/openai-adapters, e2e) are green. Could a maintainer re-run the jetbrains-tests job? Thanks! |
|
Hi @sestinj — gentle bump 🙏 The only red check is the flaky jetbrains-tests (testAutocomplete UI test) — our diff touches zero JetBrains code, so it's unrelated infra flake. Could a maintainer re-run it? CLA signed, everything else green. Thanks! |
Description
Adds Gonka Broker as a first-class, named LLM provider. Gonka Broker is an OpenAI-compatible gateway to decentralized Gonka compute, implemented as a thin subclass of the existing
OpenAIprovider.Because the provider exposes a public, OpenAI-compatible
/v1/modelsendpoint, users can setmodel: AUTODETECTand Continue discovers the available models automatically — no hardcoded model list, so no follow-up PR is needed when models change.This mirrors the existing OpenAI-compatible gateway providers (e.g. Nebius, Tensorix). It adds the provider class + registration, the
openai-adaptersroute, the VS Code config-schema entry, the onboarding UI entry, and a docs page. The provider serves chat/completions only, so it is intentionally not added to the embeddings or reranker enums.Files:
core/llm/llms/Gonkabroker.ts— new provider class extendingOpenAI(apiBasehttps://proxy.gonkabroker.com/v1/).core/llm/llms/index.ts— register the provider inLLMClasses.core/llm/autodetect.ts— addgonkabrokertoPROVIDER_HANDLES_TEMPLATINGandPARALLEL_PROVIDERS.packages/openai-adapters/src/index.ts— routegonkabrokerthroughopenAICompatible.packages/openai-adapters/src/types.ts— addgonkabrokerto the OpenAI-compatible provider union.gui/src/pages/AddNewModel/configs/providers.ts— onboarding entry (usesAUTODETECT).extensions/vscode/config_schema.json— addgonkabrokerto the model-provider enum + onboarding description.docs/customize/model-providers/more/gonkabroker.mdx— provider documentation page.docs/docs.json— add the docs page to the "More Providers" sidebar.AI Code Review
@continue-reviewChecklist
Screen recording or screenshot
Config-only provider — it adds no new UI surface beyond the standard provider entry. Verified against the live API through the
openai-adapterspath:AUTODETECTdiscovered the served models from/v1/models.MiniMaxAI/MiniMax-M2.7returned a valid response.Tests
No automated tests were added, consistent with the existing OpenAI-compatible provider additions (e.g. Nebius, Tensorix), which add none. Verified manually with a real API key:
AUTODETECTreturns the live model list fromhttps://proxy.gonkabroker.com/v1/models.chatCompletionNonStreamtoMiniMaxAI/MiniMax-M2.7returns a valid completion.Summary by cubic
Add
gonkabrokeras an OpenAI-compatible LLM provider for chat/completions, withAUTODETECTmodel discovery from the public/v1/modelsendpoint.Gonkabrokerprovider extendingOpenAIwithapiBasehttps://proxy.gonkabroker.com/v1/.openAICompatibleinpackages/openai-adaptersand added to its provider types.LLMClasses; added to templating and parallel-provider lists for autodetect.config_schema.jsonenum entry and onboarding UI entry (usesAUTODETECT).Written for commit 2d1e0f0. Summary will update on new commits.