Skip to content

feat: add OrcaRouter as a named model provider - #503

Open
XiaoHuo888-hue wants to merge 1 commit into
andrewyng:mainfrom
XiaoHuo888-hue:feat/orcarouter-provider
Open

feat: add OrcaRouter as a named model provider#503
XiaoHuo888-hue wants to merge 1 commit into
andrewyng:mainfrom
XiaoHuo888-hue:feat/orcarouter-provider

Conversation

@XiaoHuo888-hue

Copy link
Copy Markdown

Summary

Adds OrcaRouter as a named model provider, wired the same way the existing OpenRouter and other OpenAI-compatible aggregator providers are registered — so the model picker, config reference, and docs stay consistent.

Changes

  • coworker/providers/registry.py — new orcarouter descriptor: prefilled https://api.orcarouter.ai/v1 endpoint, ORCAROUTER_API_KEY env var, and sk-orca- key detection (ordered before the sk-or- OpenRouter check, server-side).
  • coworker/providers/matrix.py — curated orcarouter: matrix entries for Claude Sonnet 5, GPT-5.5, and DeepSeek V4 Pro (context windows verified against the OrcaRouter pricing API).
  • coworker/server/manager.py — suggested models for the add-model form.
  • GUI — OrcaRouter logo (orcarouter.svg), provider gallery keys link, and client-side sk-orca- key detection in api.ts.
  • README.md — OrcaRouter added to the supported-provider line.
  • Tests — descriptor / verify / routing coverage in test_providers.py and test_provider_verify.py.

OrcaRouter is an OpenAI-compatible model routing gateway that brings 150+ models from OpenAI, Anthropic, Google, DeepSeek, Qwen, MiniMax and xAI behind a single endpoint and API key. Beyond routing, it runs gateway-level, zero-trust security for AI agents on the same endpoint — screening every prompt/response and governing every tool call on a default-deny basis, with no application code changes. This PR registers it as a named provider so users can opt in directly.

I'm an engineer on the OrcaRouter team.

QA

  • pytest tests/test_providers.py tests/test_provider_router.py tests/test_provider_verify.py — 77 passed.
  • Full backend suite: 1148 passed (24 pre-existing environment failures, confirmed identical on a clean tree: missing optional deps boto3/slack-bolt and Windows-permission checks).
  • GUI: npx tsc --noEmit clean; npx vitest run — 111 passed.
  • Live-tested against the real OrcaRouter API with a valid key: key verify, complete(), stream(), and a tool round-trip all pass through the new provider path.

Registers OrcaRouter (https://www.orcarouter.ai) as a first-class
OpenAI-compatible provider, mirroring the existing OpenRouter wiring:
prefilled endpoint, ORCAROUTER_API_KEY (sk-orca- keys), server + GUI key
detection, verify support, three curated matrix models (Claude Sonnet 5,
GPT-5.5, DeepSeek V4 Pro), a GUI logo and keys link, and tests.

Co-Authored-By: Claude <noreply@anthropic.com>
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.

1 participant