DaoXE в Crush

Crush — терминальный агент для кодинга от Charm Bracelet. Его тип провайдера openai-compat принимает любой OpenAI-совместимый эндпоинт — DaoXE ставится двумя командами в crushrc.

Обновлено 2026-09-15

Crush ведёт агентные сессии кодинга в терминале: правит файлы, запускает команды, читает контекстные файлы проекта. Конфиг — Bash-файл, а путь для не-OpenAI эндпоинтов — тип openai-compat, ровно форма DaoXE (гайд по дешёвым API).

Зачем направлять Crush через DaoXE#

  • Агентный кодинг на ваших моделях. Планировщик, правки и вызовы инструментов Crush едут на зарегистрированном провайдере — один ключ DaoXE покрывает сотни моделей от ~25 провайдеров.
  • Конфиг — Bash-файл. crushrc запускается как .bashrc при старте, поэтому ключи можно брать из менеджера паролей, а не хранить в JSON.
  • Слоты large и small. Сильная модель для основного цикла и дешёвая для фоновых задач ложатся прямо на каталог DaoXE.

Настройка в Crush#

  1. Зарегистрируйте провайдера. В ~/.config/crush/crushrc: provider add daoxe --type openai-compat --base-url "https://daoxe.com/v1" --api-key "${DAOXE_API_KEY:?set DAOXE_API_KEY}" — собственный пример openai-compat в доках использует base URL с /v1 на конце и ключ через shell-подстановку.
  2. Зарегистрируйте модель. model add daoxe/YOUR_EXACT_MODEL_ID с точным ID из GET /v1/models, плюс --context-window и при желании --can-reason / --supports-images — эти флаги способностей решают, что Crush попросит у модели.
  3. Заполните слоты. model large daoxe/YOUR_EXACT_MODEL_ID для основного цикла; model small daoxe/YOUR_SMALL_MODEL_ID для фоновой работы. Ссылки всегда в форме provider/model — как печатает crush models.
  4. Запустите сессию. Выполните crush в проекте; в TUI будут модели провайдера. crush models печатает текущие выборы large/small.
bash
# ~/.config/crush/crushrc — register DaoXE as an openai-compat provider
provider add daoxe \
  --type openai-compat \
  --base-url "https://daoxe.com/v1" \
  --api-key "${DAOXE_API_KEY:?set DAOXE_API_KEY}"

# register a model, then put it in the large (coding) slot
model add daoxe/YOUR_EXACT_MODEL_ID --name "DaoXE primary" --context-window 128000
model large daoxe/YOUR_EXACT_MODEL_ID

Что важно учесть

Модели регистрируются на провайдера: Crush читает список models и умеет сливать с автонайденными — при включённом discover_models (по умолчанию) ваши явные записи побеждают подтянутые, но запись провайдера без зарегистрированной модели всё равно требует model add. Контекстное окно — ваш ввод: примеры в доках всегда передают --context-window; ошибка рулит суммаризацией и обрезкой Crush, а не API. Ключ подставляется шеллом: crushrc — это Bash — ${DAOXE_API_KEY:?…} громко упадёт при пустой переменной, а пустое значение --api-key ушло бы как есть, так что guard обязателен. Доверенный конфиг: Crush исполняет crushrc с вашими шелл-привилегиями, и доки предупреждают не запускать его в каталоге, чей конфиг вы не читали — держите ключи DaoXE в своём crushrc, а не в проектном. Больше клиентов — в заметки по настройке клиентов.

Убедитесь, что отдают настоящую модель#

Сначала проверьте эндпоинт, а не клиент — если это не работает, настройки не помогут:

bash
export DAOXE_API_KEY="your_api_key"

# List the exact model IDs your account can call
curl --fail-with-body --show-error --silent \
  https://daoxe.com/v1/models \
  -H "Authorization: Bearer ${DAOXE_API_KEY}"

Проверьте эндпоинт вне агента, затем сравните сложный промпт с официальным API при temperature 0:

bash
curl --fail-with-body --show-error --silent \
  https://daoxe.com/v1/chat/completions \
  -H "Authorization: Bearer ${DAOXE_API_KEY}" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "YOUR_EXACT_MODEL_ID",
    "max_tokens": 64,
    "messages": [{"role": "user", "content": "Say hello in one sentence."}]
  }'

Проверяйте нас, а не верьте на слово

Направьте открытый бенчмарк на DaoXE и на официальный API и сравните при temperature 0. Затем изучите, как поймать подмену модели, чтобы дешёвый эндпоинт не подменил вам модель на меньшую.

Частые вопросы#

Crush работает с DaoXE?

Да — provider add daoxe --type openai-compat --base-url "https://daoxe.com/v1" плюс ключ, затем model add daoxe/YOUR_EXACT_MODEL_ID.

Тип openai или openai-compat?

openai-compat — README Crush велит использовать его для «не-OpenAI провайдеров с OpenAI-совместимыми API»; openai — для проксирования через сам OpenAI.

Почему Crush не видит мою модель?

Модели берутся из зарегистрированного списка провайдера (слитого с автонайденными, если включено). Зарегистрируйте свою: model add daoxe/YOUR_EXACT_MODEL_ID — одна запись провайдера моделей не добавляет.

Сколько стоит?

По моделям и аккаунту — актуальные цены; пополнение — фиксированные 1 ¥ = $1 квоты.

Попробуйте DaoXE — и проверьте его сами

Один ключ для GPT, Claude, Gemini, DeepSeek и других. Направьте открытый бенчмарк на нас и сравните — не верьте на слово.