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
6 changes: 3 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -629,13 +629,13 @@ the current catalog at **[radar.omniroute.online/planos](https://radar.omniroute
<td align="center" width="76"><picture><source media="(prefers-color-scheme:dark)" srcset="https://cdn.jsdelivr.net/npm/@lobehub/icons-static-png@1.91.0/dark/goose.png"/><img src="https://cdn.jsdelivr.net/npm/@lobehub/icons-static-svg@1.91.0/icons/goose.svg" width="40" alt="Goose"/></picture><br/><sub><b>Goose</b></sub><br/><sub>                           </sub></td>
<td align="center" width="76"><img src="./public/providers/cli-generic.svg" width="40" alt="Open Interpreter"/><br/><sub><b>Open Interpreter</b></sub><br/><sub>                           </sub></td>
<td align="center" width="76"><img src="./public/providers/cli-generic.svg" width="40" alt="Warp AI"/><br/><sub><b>Warp AI</b></sub><br/><sub>                           </sub></td>
<td align="center" width="76"><img src="./public/providers/cli-generic.svg" width="40" alt="Agent Deck"/><br/><sub><b>Agent Deck</b></sub><br/><sub>                           </sub></td>
<td align="center" width="76"><a href="https://deyin.ai"><img src="./public/deyin.svg" width="40" alt="deyin.ai"/><br/><sub><b>deyin.ai</b></sub><br/><sub>                           </sub></a></td>
</tr>
</table>
</div>

<div align="center">
<b>+ also works with</b> · Kiro · Command Code · Antigravity · Windsurf · AMP · <b>any OpenAI-compatible tool</b>
<b>+ also works with</b> · Agent Deck · Kiro · Command Code · Antigravity · Windsurf · AMP · <b>any OpenAI-compatible tool</b>
</div>

<sub>📖 Per-tool setup for all 36 tools (26 CLI Code's + 10 CLI Agents) → [`docs/reference/CLI-TOOLS.md`](docs/reference/CLI-TOOLS.md) · 🧩 OpenCode plugin → [`@omniroute/opencode-provider`](https://www.npmjs.com/package/@omniroute/opencode-provider)</sub>
Expand Down Expand Up @@ -725,7 +725,7 @@ of your shell history. → [CLI Integrations](docs/guides/CLI-INTEGRATIONS.md)
<td align="center" width="150"><img src="./public/providers/pollinations.svg" width="42" alt="Pollinations"/><br/><b>Pollinations</b><br/><sub>GPT, Llama, Claude<br/>No key needed</sub></td>
<td align="center" width="150"><img src="./public/providers/cloudflare.svg" width="42" alt="Cloudflare AI"/><br/><b>Cloudflare AI</b><br/><sub>50+ models<br/>10K neurons/day</sub></td>
<td align="center" width="150"><img src="./public/providers/nvidia.svg" width="42" alt="NVIDIA NIM"/><br/><b>NVIDIA NIM</b><br/><sub>GLM, MiniMax<br/>~40 RPM free</sub></td>
<td align="center" width="150"><img src="./public/providers/cerebras.svg" width="42" alt="Cerebras"/><br/><b>Cerebras</b><br/><sub>GLM 4.7, GPT-OSS<br/>1M tokens/day</sub></td>
<td align="center" width="150"><img src="./public/openference.svg" width="42" alt="Openference"/><br/><b>Openference</b><br/><sub>Qwen3.8 27B, Llama 3.2<br/>Free tier</sub></td>
<td align="center" width="150"><img src="./public/providers/openrouter.svg" width="42" alt="OpenRouter"/><br/><b>OpenRouter</b><br/><sub>:free models<br/>+$10 → higher RPM</sub></td>
</tr>
</table>
Expand Down
8 changes: 4 additions & 4 deletions docs/reference/PROVIDER_REFERENCE.md
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
---
title: "Provider Reference"
version: 3.8.51
lastUpdated: 2026-09-17
lastUpdated: 2026-09-18
---

# Provider Reference

> **Auto-generated** from `src/shared/constants/providers.ts` — do not edit by hand.
> Regenerate with: `npm run gen:provider-reference`
> **Last generated:** 2026-09-17
> **Last generated:** 2026-09-18

Total providers: **359**. See category breakdown below.

Expand Down Expand Up @@ -71,7 +71,7 @@ Use the dashboard at `/dashboard/providers` to enable, configure, and test each
| `kilocode` | `kc` | Kilo Code | OAuth | — | — |
| `kimi-coding` | `kmc` | Kimi Code CLI | OAuth | [link](https://www.kimi.com/code?aff=omniroute) | Sign in with the same Kimi account used by Kimi Code CLI. OmniRoute uses the CLI OAuth flow and Kimi Coding Plan endpoints. |
| `kiro` | `kr` | Kiro AI | OAuth | — | Free tier: 50 credits/month (~25K–100K tokens). ⚠️ Kiro ToS prohibits third-party proxy/harness use. |
| `openference` | `of` | Openference | OAuth | [link](https://openference.com) | Sign in with your Openference account to route requests through api.openference.com. An active plan is required for inference — OAuth may authenticate but return 402 without one. |
| `openference` | `of` | Openference | OAuth | [link](https://openference.com) | Sign in with your Openference account to route requests through api.openference.com. Includes free-tier access to Qwen3.8 27b and Llama 3.2 3B — see openference.com/pricing for current plan terms. |
| `qoder` | `if` | Qoder | OAuth | — | — |
| `trae` | `tr` | Trae | OAuth | [link](https://trae.ai) | Trae is an AI-native IDE by ByteDance (SOLO remote agent). Authorize via trae.ai in the popup, or sign in at solo.trae.ai and paste the Cloud-IDE-JWT (sent as 'Authorization: Cloud-IDE-JWT <token>', ~14-day lifetime) as the access token; web_id/biz_user_id/user_unique_id/scope/tenant/region propagate via providerSpecificData. No headless refresh for pasted tokens — re-paste on expiry. |
| `xai-oauth` | `xao` | xAI OAuth (Grok) | OAuth | [link](https://x.ai) | Sign in with xAI to use api.x.ai models such as Grok 4.5. This is separate from Grok Build JWT sessions, which use cli-chat-proxy.grok.com and grok-build model aliases. |
Expand Down Expand Up @@ -280,7 +280,7 @@ Use the dashboard at `/dashboard/providers` to enable, configure, and test each
| `openai` | `openai` | OpenAI | API key | [link](https://platform.openai.com) | — |
| `opencode-go` | `opencode-go` | OpenCode Go | API key | [link](https://opencode.ai/go) | — |
| `opencode-zen` | `opencode-zen` | OpenCode Zen | API key | [link](https://opencode.ai/zen) | — |
| `openference-api` | `ofa` | Openference API | API key | [link](https://openference.com) | Free plan: 3-day trial with open-source models — no credit card required |
| `openference-api` | `ofa` | Openference API | API key | [link](https://openference.com) | Free tier: includes Qwen3.8 27b and Llama 3.2 3B — see openference.com/pricing for current terms |
| `openrouter` | `openrouter` | OpenRouter | API key, aggregator | [link](https://openrouter.ai) | Free models at $0/token with :free suffix - 20 RPM / 200 RPD |
| `openvecta` | `openvecta` | OpenVecta | API key | [link](https://openvecta.com) | Free credits on signup for OpenAI-compatible inference across LLMs, embeddings, and reasoning models |
| `opper` | `opper` | Opper | API key, aggregator | [link](https://opper.ai) | — |
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,5 +14,9 @@ export const openference_apiProvider: RegistryEntry = buildOpenAiCompatibleRegis
baseUrl: "https://api.openference.com/v1/chat/completions",
responsesBaseUrl: "https://api.openference.com/v1/responses",
passthroughModels: true,
models: [{ id: "GLM-5.2", name: "GLM 5.2", contextLength: 850000 }],
models: [
{ id: "GLM-5.2", name: "GLM 5.2", contextLength: 850000 },
{ id: "Qwen3.8 27b", name: "Qwen3.8 27B", contextLength: 262144 },
{ id: "Llama 3.2 3B", name: "Llama 3.2 3B", contextLength: 131072 },
],
});
6 changes: 5 additions & 1 deletion open-sse/config/providers/registry/openference/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -21,5 +21,9 @@ export const openferenceProvider: RegistryEntry = {
clientIdDefault: resolvePublicCred("openference_id"),
tokenUrl: "https://openference.com/oauth/token",
},
models: [{ id: "GLM-5.2", name: "GLM 5.2", contextLength: 850000 }],
models: [
{ id: "GLM-5.2", name: "GLM 5.2", contextLength: 850000 },
{ id: "Qwen3.8 27b", name: "Qwen3.8 27B", contextLength: 262144 },
{ id: "Llama 3.2 3B", name: "Llama 3.2 3B", contextLength: 131072 },
],
};
13 changes: 13 additions & 0 deletions public/deyin.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
5 changes: 5 additions & 0 deletions public/openference.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
3 changes: 2 additions & 1 deletion src/shared/constants/providers/apikey/inference-hosts.ts
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,8 @@ export const APIKEY_PROVIDERS_INFERENCE = {
textIcon: "OF",
website: "https://openference.com",
hasFree: true,
freeNote: "Free plan: 3-day trial with open-source models — no credit card required",
freeNote:
"Free tier: includes Qwen3.8 27b and Llama 3.2 3B — see openference.com/pricing for current terms",
},
poolside: {
id: "poolside",
Expand Down
14 changes: 11 additions & 3 deletions src/shared/constants/providers/oauth.ts
Original file line number Diff line number Diff line change
Expand Up @@ -44,9 +44,10 @@ export const OAUTH_PROVIDERS = {
textIcon: "OF",
website: "https://openference.com",
hasFree: true,
freeNote: "Free plan: 3-day trial with open-source models — no credit card required",
freeNote:
"Free tier: includes Qwen3.8 27b and Llama 3.2 3B — see openference.com/pricing for current terms",
authHint:
"Sign in with your Openference account to route requests through api.openference.com. An active plan is required for inference — OAuth may authenticate but return 402 without one.",
"Sign in with your Openference account to route requests through api.openference.com. Includes free-tier access to Qwen3.8 27b and Llama 3.2 3B — see openference.com/pricing for current plan terms.",
},
"grok-cli": {
id: "grok-cli",
Expand Down Expand Up @@ -142,7 +143,14 @@ export const OAUTH_PROVIDERS = {
subscriptionRisk: true,
riskNoticeVariant: "oauth",
},
github: { id: "github", serviceKinds: ["llm"], alias: "gh", name: "GitHub Copilot", icon: "code", color: "#333333" },
github: {
id: "github",
serviceKinds: ["llm"],
alias: "gh",
name: "GitHub Copilot",
icon: "code",
color: "#333333",
},
"gitlab-duo": {
id: "gitlab-duo",
serviceKinds: ["llm"],
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ const SPEC = {
website: "https://openference.com",
chatUrl: "https://api.openference.com/v1/chat/completions",
modelsUrl: "https://api.openference.com/v1/models",
expectedSeedIds: ["GLM-5.2"],
expectedSeedIds: ["GLM-5.2", "Qwen3.8 27b", "Llama 3.2 3B"],
};

test("APIKEY_PROVIDERS.openference-api is registered with the canonical identity", () => {
Expand Down
2 changes: 1 addition & 1 deletion tests/unit/openference-oauth-provider.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -124,7 +124,7 @@ test("Openference is registered as an OAuth gateway with default executor", asyn
assert.equal(openferenceProvider.baseUrl, "https://api.openference.com/v1/chat/completions");
assert.deepEqual(
openferenceProvider.models?.map((model) => model.id),
["GLM-5.2"]
["GLM-5.2", "Qwen3.8 27b", "Llama 3.2 3B"]
);
assert.equal(hasSpecializedExecutor("openference"), false);

Expand Down
Loading