Passer au contenu principal
Crush est l’agent de codage IA open-source en ligne de commande de Charm.
Protocole : compatible OpenAI
  • Base URL : https://api.orcarouter.ai/v1 (inclut le suffixe /v1)

Installation

npm install -g @charmland/crush
Le paquet npm est un lanceur ; la première exécution télécharge automatiquement le binaire de la plateforme (nécessite un accès réseau).

Configuration

Fichier de configuration : ~/.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 }
      ]
    }
  }
}
Remplacez orcarouter/auto par un modèle spécifique si vous le préférez, par ex. anthropic/claude-opus-4.8 ou google/gemini-2.5-flash. Les ID de modèles utilisent toujours le format vendor/model.

Exécution

crush run "Reply with exactly: OK"
Sortie attendue : OK.

Notes

  • La base_url doit inclure /v1.
  • La première exécution télécharge le binaire, le démarrage initial nécessite donc un accès réseau.
  • models[].id utilise le format vendor/model (par ex. orcarouter/auto, anthropic/claude-opus-4.8).

Activer la réflexion / le raisonnement

Définissez-le par modèle dans crush.json :
  • Modèles de style OpenAI"reasoning_effort": "high" (valeurs low / medium / high), et marquez le modèle "can_reason": true.
  • Modèles Anthropic"think": true (bascule booléenne pour la réflexion étendue).
"models": [
  { "id": "anthropic/claude-sonnet-4.6", "name": "Sonnet 4.6", "context_window": 200000, "default_max_tokens": 4096, "can_reason": true, "reasoning_effort": "high" }
]
Vérifié : reasoning_effort: "high" fonctionne avec OrcaRouter.