feat: add OrcaRouter as a first-class provider - #1464
feat: add OrcaRouter as a first-class provider#1464martinzudergaming-a11y wants to merge 1 commit into
Conversation
Add OrcaRouter (OpenAI-compatible AI gateway) as a named provider, mirroring the NanoGPT/OpenRouter wiring: new provider identifier, RouterProvider-based handler, public model catalog fetcher, settings schema, UI component, validation, and locale strings. Closes Zoo-Code-Org#1463
|
Important Review skippedAuto reviews are limited based on label configuration. 🏷️ Required labels (at least one) (1)
Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: ASSERTIVE Plan: Team Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
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 |
Review processThanks for contributing. This comment tracks the review sequence and the next action.
Current step: Wait for the required CI checks to finish. |
Add OrcaRouter as a first-class provider in the API profile settings.
OrcaRouter is an OpenAI-compatible AI gateway built for both models and agents. Like OpenRouter, it exposes a provider/model namespace across many models — but it also combines adaptive routing, automatic failover, zero-markup inference, observability, guardrails, and agent-tool governance behind the same endpoint. Adding
orcarouteras a named provider means Zoo Code users can use that stack directly, without treating OrcaRouter as an anonymous custom base URL. It also 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 mirrors the existing NanoGPT provider wiring in your provider registry: new
orcarouteridentifier inprovider-identifiers.ts, a handler extendingRouterProviderover the OpenAI protocol, a fetcher for the public model catalog athttps://api.orcarouter.ai/v1/models, settings schema, UI component, validation, and i18n strings. The model picker stays consistent with the other dynamic providers.Verification
tsc --noEmitgreen across all packages;pnpm test7933 passed (webview + src).GET /v1/models→ 204 models; streaming and non-streaming chat completions via the same OpenAI SDK client both returned 200.Discord: discord.gg/YEubt8enRA · X: https://x.com/OrcaRouter
I'm an engineer on the OrcaRouter team.
Closes #1463