docs: document OrcaRouter as a named provider in the Crush guide - #1048
docs: document OrcaRouter as a named provider in the Crush guide#1048putraperdana1207-pixel wants to merge 1 commit into
Conversation
There was a problem hiding this comment.
Important
The configuration users are told to copy does not satisfy Crush's current model schema and should be updated before merging.
Reviewed changes in 639b0029: the new OrcaRouter setup in the Crush guide.
- Provider setup: Adds OrcaRouter's OpenAI-compatible endpoint and
orcarouter/automodel configuration. - Secret injection: Declares
ORCAROUTER_API_KEYthrough a 1Password-backed env-spec value and launches Crush throughvarlock run.
azure/gpt-5.6-sol | 𝕏
| "type": "openai-compat", | ||
| "base_url": "https://api.orcarouter.ai/v1", | ||
| "api_key": "$ORCAROUTER_API_KEY", | ||
| "models": [ |
There was a problem hiding this comment.
This explicit model entry is incomplete under Crush's current JSON schema: models also require pricing, context-window, token-limit, reasoning, and attachment fields, so users copying this example will not get a valid model configuration. Please switch the example to the current crushrc commands (model discovery can avoid hard-coding those fields), or supply a schema-complete legacy model.
Technical details
# Use a valid current Crush configuration
## Affected sites
- `packages/varlock-website/src/content/docs/guides/ai-tools/crush.mdx:27` - recommends the deprecated `~/.config/crush/crush.json` format
- `packages/varlock-website/src/content/docs/guides/ai-tools/crush.mdx:34` - starts an explicit model object that omits required fields
## Required outcome
- Give readers a configuration accepted by current Crush while retaining `$ORCAROUTER_API_KEY`, `https://api.orcarouter.ai/v1`, and access to `orcarouter/auto`.
## Suggested approach
- Use `~/.config/crush/crushrc` with `provider add orcarouter --type openai-compat --base-url "https://api.orcarouter.ai/v1" --api-key "$ORCAROUTER_API_KEY"`; current Crush discovers models for an `openai-compat` provider when no explicit model list is supplied.
- Upstream references: https://github.com/charmbracelet/crush/blob/main/docs/config/README.md and https://github.com/charmbracelet/crush/blob/main/schema.json
What
Adds OrcaRouter as a named provider example in the Crush guide.
Varlock's AI Tools docs show how to inject provider API keys into terminal coding agents so secrets never sit in a plain text
.envor shell history. The Crush page already listsOPENROUTER_API_KEYand other provider keys, and shows anOPENROUTER_API_KEYentry in the.env.schemaexample. This PR adds the same first-class treatment for OrcaRouter: a short section showing theopenai-compatprovider entry incrush.json(mirroring how Crush documents custom OpenAI-compatible providers such as DeepSeek), anORCAROUTER_API_KEYentry in the schema, and thevarlock run -- crushlaunch command.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 it as a named provider in this guide means Crush users on varlock 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.
Verification
bun run build:libspassed (27 packages).bun run astro buildfor@varlock/websitepassed, 130 pages built, and the generated/guides/ai-tools/crush/page contains the new section.https://api.orcarouter.ai/v1) returns 200 with a valid OpenAI-compatible response.I'm an engineer on the OrcaRouter team.