feat(model): add OrcaRouter as an official model provider - #1629
feat(model): add OrcaRouter as an official model provider#1629XiaoHuo888-hue wants to merge 1 commit into
Conversation
Add OrcaRouter to the Official Providers catalog so users can connect the OrcaRouter gateway (https://api.orcarouter.ai/v1) with a single click instead of filling a generic OpenAI-compatible endpoint by hand. - Register ORCAROUTER in ModelProviderType and the OpenAI-compatible vendor group - Add the OrcaRouter provider card with pre-filled base URL and label/i18n (en/zh) - Add the orcarouter.svg provider icon - Add unit tests covering the provider registration and mapping - Introduce a small test-only path-alias loader so unit tests can import modules that use the @/ alias Signed-off-by: XiaoHuo888-hue <jinhao.song@myflashcloud.com>
|
XiaoHuo888-hue seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account. You have signed the CLA already but the status is still pending? Let us recheck it. |
|
Thanks for the contribution, but I'm going to recommend against this and close it.
This also isn't a one-off integration request for Astron: the identical "add OrcaRouter as a provider" change has been opened across 30+ unrelated projects in the last day or two (CopilotKit, langfuse, google/adk-java, gptel, obsidian-copilot, and many more). That mass-templated pattern is what we treat as promotional outreach rather than a genuine integration need. For what it's worth, Astron users who want to use OrcaRouter today already can, via the generic OpenAI-compatible endpoint — no code change required. If the OrcaRouter team would like an official, named provider card, please open an issue proposing it so the maintainers can weigh it, rather than a pre-built PR. Closing for now. |
Description
Add OrcaRouter as an official model provider in the Model Management page, mirroring the existing DeepSeek/MiniMax provider cards.
OrcaRouter is an OpenAI-compatible LLM routing gateway: a single API key routes chat requests across leading models (
orcarouter/auto). 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 gives users a one-click, named OrcaRouter provider (pre-filled
https://api.orcarouter.ai/v1base URL) instead of having to fill a generic OpenAI-compatible endpoint by hand.Type of Change
Changes
src/types/model.ts: registerORCAROUTERinModelProviderTypesrc/pages/model-management/utils/provider-group.ts: map OrcaRouter to the OpenAI-compatible vendor group; add theOrcaRouteroption to the Official Providers filtersrc/pages/model-management/utils/provider.ts: resolve theOrcaRouterprovider labelsrc/pages/model-management/official-model/official-model-home.tsx: add the OrcaRouter provider card (base URLhttps://api.orcarouter.ai/v1, modelorcarouter/auto) + provider iconsrc/pages/model-management/components/modal-component.tsx/grouped-provider-cards.tsx: treat OrcaRouter as an OpenAI-compatible providersrc/locales/en-En/model.ts+src/locales/zh-ZH/model.ts: provider label + card descriptionsrc/assets/imgs/modelManage/providers/custom/orcarouter.svg: provider icon_tests_/model-provider-orcarouter.test.js: unit tests for provider registration, vendor mapping, and catalog option_tests_/alias-loader.mjs+package.json: test-only@/path-alias loader so unit tests can import modules that reference the Vite aliasTesting
npm run test:unit: 65/65 pass (61 baseline + 4 new OrcaRouter tests)npm run type-check: 0 new errors (3,763 pre-existing errors on cleanmain, none in touched files)npx eslinton touched files: 0 errorsnpx prettier --checkon touched files: cleannpm run build: successPOST https://api.orcarouter.ai/v1/chat/completionswith modelorcarouter/auto→ HTTP 200, OpenAI-compatiblechoicesresponse. The backend's model-validation path (OpenAI-compatible response check) accepts this shape unchanged.Checklist
Disclosure: I'm an engineer on the OrcaRouter team.