Skip to content

feat(provider): add llm.buzz - #2481

Merged
zerob13 merged 1 commit into
ThinkInAIXYZ:devfrom
bigconnect:add-llm-buzz-provider
Oct 29, 2026
Merged

zerob13 merged 1 commit into
ThinkInAIXYZ:devfrom
bigconnect:add-llm-buzz-provider

Conversation

@bigconnect

@bigconnect bigconnect commented Oct 29, 2026 •

Copy link
Copy Markdown
Contributor

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 URL https://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_BASE with credentialStrategy: 'api-key' and embeddingStrategy: 'none', resolving to the existing openai-compatible runtime with modelSource: 'openai' and checkStrategy: 'fetch-models', exactly like xxapi.
  • GET /v1/models needs a key: on 2026-10-29 /v1/models and /v1/chat/completions returned 401 without a valid key, so the fetch-models check rejects a bad key. Model ids are vendor-prefixed (e.g. openai/gpt-5.4-mini).
  • Icon: a single-path currentColor SVG, 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.ts and basicApiKeyProviders.test.ts; relying on CI.

Targets dev, per CONTRIBUTING.

Summary by CodeRabbit

  • New Features
    • Added llm.buzz as an OpenAI-compatible model provider, with links to its website, API key setup, documentation, and model catalog. It uses API-key authentication and supports model discovery.
    • The provider is disabled by default and does not support embeddings.

@coderabbitai

coderabbitai Bot commented Oct 29, 2026 •

Copy link
Copy Markdown
Contributor

Review in Change Stack →

No actionable comments were generated in the recent review.

Recent review info
Run configuration
  • Source mode: Auto
  • Repository: Unavailable
  • Branch: Unavailable
  • File: No configuration file from this repository applied
  • Commit: Unavailable
  • Layers: defaults
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: 172f1a7d-86b8-4e3d-896b-35734d37eb96
Commits

Reviewing files that changed from the base of the PR and between 02fdea9 and 8f4b64b.

Files ignored due to path filters: 1
  • src/renderer/src/assets/llm-icons/llmbuzz.svg is excluded by !**/*.svg
Files selected for processing: 5
  • src/main/provider/defaults.ts
  • src/main/provider/providerRegistry.ts
  • src/renderer/src/components/icons/modelIconRegistry.ts
  • test/main/provider/basicApiKeyProviders.test.ts
  • test/main/provider/defaultProviders.test.ts

Included review availability: This review used your included allowance. Your plan provides up to 8 included reviews per hour; 7 remain after this review.

Walkthrough

The change adds llm.buzz as a disabled, OpenAI-compatible provider with API-key credentials, provider resource links, and a renderer icon mapping. Tests cover its registry definition and default catalog entry.

Changes: llm.buzz provider support

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: Normal

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: Passed 5
Check name Status Explanation
Description Check Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check Passed The title clearly and concisely identifies the main change: adding llm.buzz as a provider.
Docstring Coverage Passed 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. Documentat…
Linked Issues check Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check Passed Check skipped because no linked issues were found for this pull request.
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.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@zerob13 zerob13 left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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-completions with OPENAI_BASE, modelSource: 'openai', checkStrategy: 'fetch-models', credentialStrategy: 'api-key', embeddings off. This is the same shape xxapi (#2479) was merged with. Because /v1/models requires a key, the fetch-models check also rejects a bad key, so a generate-text check 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.docs points at the marketing homepage, and websites.models points at https://api.llm.buzz/api/v1/models, which returns 401 JSON in a browser without a key. In the current tree the settings UI only reads apiKey and defaultBaseUrl, so both are metadata only. If these links are surfaced later, point models at 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.

@zerob13
zerob13 merged commit 69b56c3 into ThinkInAIXYZ:dev Oct 29, 2026
12 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants