Repository navigation
feat(provider): add llm.buzz - #2481
Conversation
|
No actionable comments were generated in the recent review.
|
| Layer / File(s) | Summary |
|---|---|
Provider registration and tests src/main/provider/defaults.ts, src/main/provider/providerRegistry.ts, test/main/provider/basicApiKeyProviders.test.ts, test/main/provider/defaultProviders.test.ts |
Adds llm.buzz to the provider defaults and registry. Tests check its OpenAI-compatible configuration and disabled catalog entry. |
Provider icon mapping src/renderer/src/components/icons/modelIconRegistry.ts |
Maps the llmbuzz provider key to its icon and adds the icon URL to the monochrome icon set. |
Priority:
Estimated code review effort: 2 (Simple) | ~10 minutes
Change: Feature
Suggested reviewers: zerob13
Merge Risk: 
Minimal · up to 8f4b6
-
The llm.buzz provider is disabled by default and its registration and icon assets are internally consistent, so it is ready to merge.
Pre-merge checks: 
5
-
Full details: Docstring Coverage
-
Explanation
No eligible functions found in the changed files. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff with cyclomatic complexity of at least 2. Documentation-only edits and deletions within surviving functions are included; unchanged diff context and fully deleted functions are excluded. Analyzed 0 functions across 5 files.
-
Finishing Touches
-
🧪 Generate unit tests (beta)
-
- Create a new PR
-
- Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.
Comment @coderabbitai help to get the list of available commands.
zerob13
left a comment
There was a problem hiding this comment.
Verdict: approve. No blocking issue. The registration follows the existing OpenAI-compatible pattern, and the change is insert-only.
What this changes
Adds llm.buzz as a built-in provider that ships disabled, so nothing appears for existing users until they enable it and enter their own API key. Six files: provider defaults, the runtime mapping, one icon, the icon registry, and two tests. No existing line is modified.
Checks
- Registration is correct for this API.
openai-completionswithOPENAI_BASE,modelSource: 'openai',checkStrategy: 'fetch-models',credentialStrategy: 'api-key', embeddings off. This is the same shape xxapi (#2479) was merged with. Because/v1/modelsrequires a key, the fetch-models check also rejects a bad key, so agenerate-textcheck is not needed. - Icon matches the repo convention. Single path,
currentColor, added to the mono set, so it inverts in dark mode like the other mono provider icons. - Tests are proportionate. Two cases, one for the defaults entry and one for runtime resolution, each mirroring the existing per-provider assertions. No duplicated or redundant coverage.
- No breaking change. Provider is disabled by default, the ID does not collide with any catalog profile, and credentials/routing behavior for other providers is untouched.
Nits (non-blocking)
websites.docspoints at the marketing homepage, andwebsites.modelspoints athttps://api.llm.buzz/api/v1/models, which returns 401 JSON in a browser without a key. In the current tree the settings UI only readsapiKeyanddefaultBaseUrl, so both are metadata only. If these links are surfaced later, pointmodelsat a human-readable catalog page.
Validation
Ran vitest run test/main/provider/defaultProviders.test.ts test/main/provider/basicApiKeyProviders.test.ts at 8f4b64b8f: 89 tests passed. Both workflows (PR Check, Package Check) were approved from action_required so CI could start; CI remains the authoritative check.
Review basis: diff against origin/dev (02fdea914), side-by-side with the merged xxapi registration (#2479), current provider settings code paths, and the PR description. Provider endpoint behavior was not exercised with a live key.
Adds llm.buzz as a disabled built-in OpenAI-compatible provider, in the same shape as xxapi (#2479) and the other API-key providers: a defaults entry, a registry entry, an icon and two focused tests. Insertions only; no existing line changes.
llm.buzz is an OpenAI, Anthropic and OpenRouter compatible model gateway: one key reaches many models with failover and per-token pricing. I am affiliated with llm.buzz.
defaults.ts:llmbuzz, base URLhttps://api.llm.buzz/api/v1, disabled by default. Keys at https://app.llm.buzz, model list at https://api.llm.buzz/api/v1/models.providerRegistry.ts:...OPENAI_BASEwithcredentialStrategy: 'api-key'andembeddingStrategy: 'none', resolving to the existingopenai-compatibleruntime withmodelSource: 'openai'andcheckStrategy: 'fetch-models', exactly like xxapi.GET /v1/modelsneeds a key: on 2026-10-29/v1/modelsand/v1/chat/completionsreturned 401 without a valid key, so thefetch-modelscheck rejects a bad key. Model ids are vendor-prefixed (e.g.openai/gpt-5.4-mini).currentColorSVG, registered with the mono icons so it inverts in dark mode.Validation: not run locally. The new cases mirror the existing xxapi assertions in
defaultProviders.test.tsandbasicApiKeyProviders.test.ts; relying on CI.Targets
dev, per CONTRIBUTING.Summary by CodeRabbit