Zum Hauptinhalt springen
Crush ist Charms quelloffener Terminal-KI-Coding-Agent.
Protokoll: OpenAI-kompatibel
  • Basis-URL: https://api.orcarouter.ai/v1 (enthält das /v1-Suffix)

Installation

npm install -g @charmland/crush
Das npm-Paket ist ein Launcher; der erste Start lädt das Plattform-Binary automatisch herunter (erfordert Netzwerkzugriff).

Konfiguration

Konfigurationsdatei: ~/.config/crush/crush.json (Windows: %USERPROFILE%\.config\crush\crush.json).
{
  "$schema": "https://charm.land/crush.json",
  "providers": {
    "orcarouter": {
      "type": "openai",
      "base_url": "https://api.orcarouter.ai/v1",
      "api_key": "sk-orca-...",
      "models": [
        { "id": "orcarouter/auto", "name": "OrcaRouter Auto", "context_window": 200000, "default_max_tokens": 4096 }
      ]
    }
  }
}
Tausche orcarouter/auto bei Bedarf gegen ein bestimmtes Modell, z. B. anthropic/claude-opus-4.8 oder google/gemini-2.5-flash. Modell-IDs verwenden immer das Format vendor/model.

Ausführen

crush run "Reply with exactly: OK"
Erwartete Ausgabe: OK.

Hinweise

  • Die base_url muss /v1 enthalten.
  • Der erste Start lädt das Binary herunter, daher benötigt der erste Start Netzwerkzugriff.
  • models[].id verwendet das Format vendor/model (z. B. orcarouter/auto, anthropic/claude-opus-4.8).

Thinking / Reasoning aktivieren

Setze es pro Modell in crush.json:
  • Modelle im OpenAI-Stil"reasoning_effort": "high" (Werte low / medium / high) und markiere das Modell mit "can_reason": true.
  • Anthropic-Modelle"think": true (boolescher Schalter für erweitertes Thinking).
"models": [
  { "id": "anthropic/claude-sonnet-4.6", "name": "Sonnet 4.6", "context_window": 200000, "default_max_tokens": 4096, "can_reason": true, "reasoning_effort": "high" }
]
Verifiziert: reasoning_effort: "high" funktioniert gegen OrcaRouter.