Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 7 additions & 6 deletions docs/providers-and-models.md
Original file line number Diff line number Diff line change
Expand Up @@ -69,17 +69,18 @@ class BaseLLMProvider {

### Extended provider catalog

WebBrain also ships 76 disabled-by-default provider cards sourced from the
OpenCode provider catalog snapshot at commit
`62e4641235d7847dadc60da37cca8a023dd54fc1`. Together with the original
cards, Settings contains **106 built-in providers on Chromium** and **105 on
Firefox**; the difference is the Chromium-only in-browser WebGPU runtime.
WebBrain also ships 77 disabled-by-default provider cards. Most are sourced
from the OpenCode provider catalog snapshot at commit
`62e4641235d7847dadc60da37cca8a023dd54fc1`; provider-specific additions use
their official API documentation. Together with the original cards, Settings
contains **107 built-in providers on Chromium** and **106 on Firefox**; the
difference is the Chromium-only in-browser WebGPU runtime.

| IDs |
|---|
| `302ai`, `abacus`, `aihubmix`, `alibaba-coding-plan`, `alibaba-coding-plan-cn`, `azure-cognitive-services`, `bailing`, `baseten`, `berget`, `cerebras`, `chutes`, `clarifai`, `cloudferro-sherlock`, `cohere`, `cortecs`, `deepinfra`, `digitalocean`, `dinference`, `drun`, `evroc`, `fastrouter`, `friendli` |
| `google-vertex`, `google-vertex-anthropic`, `helicone`, `iflowcn`, `inception`, `inference`, `io-net`, `jiekou`, `kilo`, `kimi-for-coding`, `kuae-cloud-coding-plan`, `llama`, `lucidquery`, `meganova`, `minimax-cn-coding-plan`, `minimax-coding-plan`, `moark`, `modelscope`, `morph` |
| `nano-gpt`, `nebius`, `nova`, `novita-ai`, `ollama-cloud`, `opencode`, `opencode-go`, `ovhcloud`, `perplexity`, `perplexity-agent`, `poe`, `privatemode-ai`, `qihang-ai`, `qiniu-ai`, `requesty`, `scaleway`, `siliconflow`, `siliconflow-cn`, `stackit` |
| `nano-gpt`, `nebius`, `nova`, `novita-ai`, `ollama-cloud`, `opencode`, `opencode-go`, `orcarouter`, `ovhcloud`, `perplexity`, `perplexity-agent`, `poe`, `privatemode-ai`, `qihang-ai`, `qiniu-ai`, `requesty`, `scaleway`, `siliconflow`, `siliconflow-cn`, `stackit` |
| `stepfun`, `submodel`, `synthetic`, `tencent-coding-plan`, `upstage`, `v0`, `venice`, `vercel`, `vivgrid`, `vultr`, `wandb`, `xiaomi`, `zai-coding-plan`, `zenmux`, `zhipuai`, `zhipuai-coding-plan` |

Most use the OpenAI-compatible Chat Completions contract and bearer API keys.
Expand Down
1 change: 1 addition & 0 deletions src/chrome/icons/providers/SOURCES.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,5 +14,6 @@ Most brand marks come from [Lobe Icons](https://github.com/lobehub/lobe-icons)
| sglang | SGLang official `logo_square` (`sgl-project/sglang`) |
| webbrain_cloud | WebBrain extension icon |
| 302ai, abacus, aihubmix, alibaba-coding-plan, alibaba-coding-plan-cn, azure-cognitive-services, bailing, baseten, berget, cerebras, chutes, clarifai, cloudferro-sherlock, cohere, cortecs, deepinfra, digitalocean, dinference, drun, evroc, fastrouter, friendli, google-vertex, google-vertex-anthropic, helicone, iflowcn, inception, inference, io-net, jiekou, kilo, kimi-for-coding, kuae-cloud-coding-plan, llama, lucidquery, meganova, minimax-cn-coding-plan, minimax-coding-plan, moark, modelscope, morph, nano-gpt, nebius, nova, novita-ai, ollama-cloud, opencode, opencode-go, ovhcloud, perplexity, perplexity-agent, poe, privatemode-ai, qihang-ai, qiniu-ai, requesty, scaleway, siliconflow, siliconflow-cn, stackit, stepfun, submodel, synthetic, tencent-coding-plan, upstage, v0, venice, vercel, vivgrid, vultr, wandb, xiaomi, zai-coding-plan, zenmux, zhipuai, zhipuai-coding-plan | OpenCode provider icon set at commit `62e4641235d7847dadc60da37cca8a023dd54fc1` (MIT); DInference SVG normalized with a `viewBox` |
| orcarouter | OrcaRouter official docs favicon (`Continuum-AI-Corp/docs`, MIT) |

Brand trademarks remain property of their owners; used only for provider identification in the settings UI.
5 changes: 5 additions & 0 deletions src/chrome/icons/providers/orcarouter.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
8 changes: 5 additions & 3 deletions src/chrome/src/providers/provider-catalog.js

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 1 addition & 0 deletions src/firefox/icons/providers/SOURCES.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,5 +14,6 @@ Most brand marks come from [Lobe Icons](https://github.com/lobehub/lobe-icons)
| sglang | SGLang official `logo_square` (`sgl-project/sglang`) |
| webbrain_cloud | WebBrain extension icon |
| 302ai, abacus, aihubmix, alibaba-coding-plan, alibaba-coding-plan-cn, azure-cognitive-services, bailing, baseten, berget, cerebras, chutes, clarifai, cloudferro-sherlock, cohere, cortecs, deepinfra, digitalocean, dinference, drun, evroc, fastrouter, friendli, google-vertex, google-vertex-anthropic, helicone, iflowcn, inception, inference, io-net, jiekou, kilo, kimi-for-coding, kuae-cloud-coding-plan, llama, lucidquery, meganova, minimax-cn-coding-plan, minimax-coding-plan, moark, modelscope, morph, nano-gpt, nebius, nova, novita-ai, ollama-cloud, opencode, opencode-go, ovhcloud, perplexity, perplexity-agent, poe, privatemode-ai, qihang-ai, qiniu-ai, requesty, scaleway, siliconflow, siliconflow-cn, stackit, stepfun, submodel, synthetic, tencent-coding-plan, upstage, v0, venice, vercel, vivgrid, vultr, wandb, xiaomi, zai-coding-plan, zenmux, zhipuai, zhipuai-coding-plan | OpenCode provider icon set at commit `62e4641235d7847dadc60da37cca8a023dd54fc1` (MIT); DInference SVG normalized with a `viewBox` |
| orcarouter | OrcaRouter official docs favicon (`Continuum-AI-Corp/docs`, MIT) |

Brand trademarks remain property of their owners; used only for provider identification in the settings UI.
5 changes: 5 additions & 0 deletions src/firefox/icons/providers/orcarouter.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
8 changes: 5 additions & 3 deletions src/firefox/src/providers/provider-catalog.js

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

26 changes: 22 additions & 4 deletions test/run.js
Original file line number Diff line number Diff line change
Expand Up @@ -48608,15 +48608,15 @@ test('extended provider catalog is complete, mirrored, safe, and excluded-provid
iflowcn inception inference io-net jiekou kilo kimi-for-coding
kuae-cloud-coding-plan llama lucidquery meganova minimax-cn-coding-plan
minimax-coding-plan moark modelscope morph nano-gpt nebius nova novita-ai
ollama-cloud opencode opencode-go ovhcloud perplexity perplexity-agent poe
privatemode-ai qihang-ai qiniu-ai requesty scaleway siliconflow
ollama-cloud opencode opencode-go orcarouter ovhcloud perplexity
perplexity-agent poe privatemode-ai qihang-ai qiniu-ai requesty scaleway siliconflow
siliconflow-cn stackit stepfun submodel synthetic tencent-coding-plan
upstage v0 venice vercel vivgrid vultr wandb xiaomi zai-coding-plan zenmux
zhipuai zhipuai-coding-plan
`.trim().split(/\s+/);
const excluded = ['github-models', 'github-copilot', 'gitlab', 'sap-ai-core'];

assert.equal(expectedIds.length, 76);
assert.equal(expectedIds.length, 77);
assert.deepEqual(ProviderCatalogCh.ADDITIONAL_PROVIDER_IDS, expectedIds);
assert.deepEqual(ProviderCatalogFx.ADDITIONAL_PROVIDER_IDS, expectedIds);
assert.deepEqual(
Expand All @@ -48630,7 +48630,7 @@ test('extended provider catalog is complete, mirrored, safe, and excluded-provid
['firefox', ProviderManagerFx, 'src/firefox'],
]) {
const defaults = new PM()._defaultConfigs();
const expectedDefaultCount = label === 'chrome' ? 106 : 105;
const expectedDefaultCount = label === 'chrome' ? 107 : 106;
assert.equal(
Object.keys(defaults).length,
expectedDefaultCount,
Expand Down Expand Up @@ -48707,6 +48707,24 @@ test('extended provider catalog is complete, mirrored, safe, and excluded-provid
assert.equal(ProviderCatalogCh.ADDITIONAL_PROVIDER_DEFAULTS['perplexity-agent'].apiFormat, 'responses');
assert.equal(ProviderCatalogCh.ADDITIONAL_PROVIDER_DEFAULTS['azure-cognitive-services'].model, '');
assert.equal(ProviderCatalogCh.ADDITIONAL_PROVIDER_DEFAULTS['kimi-for-coding'].model, 'kimi-for-coding');
assert.deepEqual(
{
baseUrl: ProviderCatalogCh.ADDITIONAL_PROVIDER_DEFAULTS.orcarouter.baseUrl,
model: ProviderCatalogCh.ADDITIONAL_PROVIDER_DEFAULTS.orcarouter.model,
supportsVision: ProviderCatalogCh.ADDITIONAL_PROVIDER_DEFAULTS.orcarouter.supportsVision,
supportsTools: ProviderCatalogCh.ADDITIONAL_PROVIDER_DEFAULTS.orcarouter.supportsTools,
supportsAskStreaming: ProviderCatalogCh.ADDITIONAL_PROVIDER_DEFAULTS.orcarouter.supportsAskStreaming,
apiKeyUrl: ProviderCatalogCh.ADDITIONAL_PROVIDER_DEFAULTS.orcarouter.apiKeyUrl,
},
{
baseUrl: 'https://api.orcarouter.ai/v1',
model: 'orcarouter/auto',
supportsVision: true,
supportsTools: true,
supportsAskStreaming: true,
apiKeyUrl: 'https://www.orcarouter.ai/console',
},
);
assert.deepEqual(
ProviderCatalogCh.ADDITIONAL_PROVIDER_UI['kimi-for-coding'].suggestions,
['kimi-for-coding', 'kimi-for-coding-highspeed', 'k3'],
Expand Down
Loading