Skip to content

feat: add OrcaRouter as a named remote provider preset - #1

Open
armyluki-wq wants to merge 1 commit into
yanzhao77:masterfrom
armyluki-wq:feat/orcarouter-provider-preset
Open

feat: add OrcaRouter as a named remote provider preset#1
armyluki-wq wants to merge 1 commit into
yanzhao77:masterfrom
armyluki-wq:feat/orcarouter-provider-preset

Conversation

@armyluki-wq

Copy link
Copy Markdown

What

ModelForge 3.x lets desktop users manage remote OpenAI-compatible model services on the unified Models page, where named presets (Zhipu AI, OpenAI) make first-class providers one click away. This PR adds OrcaRouter to that preset list.

Selecting OrcaRouter in the provider dialog fills:

  • NameOrcaRouter
  • Base URLhttps://api.orcarouter.ai/v1
  • Default modelorcarouter/auto (OrcaRouter's adaptive router that picks the cheapest live model for each request)
  • ProtocolResponses API (recommended), matching the other presets

Users keep getting the backend's encrypted-key handling, /models verification, and Responses→Chat Completions fallback — OrcaRouter just becomes a first-class named provider instead of an anonymous custom base URL.

Why

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 orcarouter as a first-class provider means ModelForge 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.

Changes

  • client/pyside6/components/provider_dialog.py — add the OrcaRouter preset entry and the field-fill handler, mirroring the existing OpenAI preset wiring.
  • tests/test_provider_presets.py — new offscreen preset coverage asserting the preset is listed and fills name/base_url/model/protocol correctly.

Verification

  • ruff check on both changed files: clean.
  • Existing provider suites pass: tests/test_remote_provider_protocol.py, tests/test_remote_provider_verification.py, tests/test_model_readiness_service.py (13 passed).
  • Live check through the backend remote-provider path (OpenAIRuntime, responses-first): GET /v1/models → 200 with 203 models including orcarouter/auto; chat and streaming round-trips both returned 200 through the Responses API.

Discord: discord.gg/YEubt8enRA · X: https://x.com/OrcaRouter

I'm an engineer on the OrcaRouter team.

Adds OrcaRouter to the desktop remote-provider preset dropdown alongside
Zhipu AI and OpenAI. Selecting the preset fills the OpenAI-compatible
base URL and the orcarouter/auto adaptive router model, so users can
connect the gateway as a first-class provider instead of a custom base
URL. Includes offscreen preset coverage for the dialog.

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