Перейти к основному содержанию
Crush — это open-source терминальный AI-агент для кодинга от Charm.
Протокол: OpenAI-совместимый
  • Базовый URL: https://api.orcarouter.ai/v1 (включает суффикс /v1)

Установка

npm install -g @charmland/crush
Пакет npm — это лаунчер; при первом запуске бинарный файл для платформы скачивается автоматически (требуется доступ к сети).

Настройка

Файл конфигурации: ~/.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 }
      ]
    }
  }
}
Замените orcarouter/auto на конкретную модель, если предпочитаете, например anthropic/claude-opus-4.8 или google/gemini-2.5-flash. Идентификаторы моделей всегда используют формат vendor/model.

Запуск

crush run "Reply with exactly: OK"
Ожидаемый вывод: OK.

Примечания

  • base_url должен включать /v1.
  • При первом запуске скачивается бинарный файл, поэтому начальный старт требует доступа к сети.
  • models[].id использует формат vendor/model (например, orcarouter/auto, anthropic/claude-opus-4.8).

Включение thinking / reasoning

Задайте это для каждой модели в crush.json:
  • Модели в стиле OpenAI"reasoning_effort": "high" (значения low / medium / high), и отметьте модель "can_reason": true.
  • Модели Anthropic"think": true (булев переключатель расширенного мышления).
"models": [
  { "id": "anthropic/claude-sonnet-4.6", "name": "Sonnet 4.6", "context_window": 200000, "default_max_tokens": 4096, "can_reason": true, "reasoning_effort": "high" }
]
Проверено: reasoning_effort: "high" работает с OrcaRouter.