Інструменти та інтеграціїПосібник
Підключення Crush до CheapTokens: провайдер, модель і ключ у crushrc
Додайте CheapTokens до Crush двома командами crushrc: провайдер completions і модель із реальними лімітами; ключ надходить зі змінної середовища.

На цій сторінці
Щоб підключити Crush до CheapTokens, додайте дві команди у свій crushrc: provider add з базовою URL-адресою https:/ та -, а також model add з повним ідентифікатором моделі. Потім відкрийте Crush, натисніть Ctrl+l, виберіть модель і дайте їй завдання. Ключ зберігається у змінній середовища, а не у файлі.
Якщо ви дотримувалися старішого посібника, він, ймовірно, редагує crush.json. Crush досі читає цей файл, але в його README його названо застарілим: поточна конфігурація — crushrc, а починаючи з v0.99.0 (29 жовтня 2026) провайдер --type описує формат API, а не постачальника. Джерела — README Crush і примітки до випуску, перевірені 10 листопада 2026; останній стабільний випуск на цю дату — v0.100.0.
Встановлення Crush#
Виберіть будь-який менеджер пакетів, який у вас уже є. Crush — це один бінарний файл, тому не має значення, який шлях ви оберете.
Встановлення Crush
Homebrew
brew install charmbracelet/tap/crushnpm
npm install -g @charmland/crushwinget
winget install charmbracelet.crushGo
go install github.com/charmbracelet/crush@latestУ README також перелічено репозиторії apt і yum, Scoop, Nix, Arch і FreeBSD. Запустіть crush один раз, щоб перевірити, що він запускається, потім вийдіть.
Додавання CheapTokens у crushrc#
У README crushrc описано як «просто Bash із кількома вбудованими функціями, специфічними для Crush». У цьому вся суть: ви пишете shell, а provider add і model add — це команди, які розуміє Crush. Crush шукає файл у такому порядку: ./.crushrc, ./crushrc, потім ~/.
Тож ви вибираєте, де він буде розташований. Локальний для проєкту .crushrc застосовується до одного репозиторію; той, що в ~/.config/crush/, застосовується всюди. Для першої спроби глобальний простіший.
Спочатку додайте ключ у свій shell. Створіть його в панелі керування CheapTokens і експортуйте (значення нижче — заповнювач):
export CHEAPTOKENS_API_KEY="your-key-here"Потім відкрийте ~/ і напишіть:
provider add cheaptokens --type completions \
--base-url "https://api.cheaptokens.dev/v1" \
--api-key "$CHEAPTOKENS_API_KEY"
model add cheaptokens/deepseek-ai/DeepSeek-V4-Flash-0731 \
--name "DeepSeek-V4-Flash" \
--context-window 380000 \
--default-max-tokens 32768Кілька деталей варто розглянути уважніше:
-— це назва Crush для провайдерів, сумісних з OpenAI, які не є самим OpenAI.- type completions responses— для проксіювання OpenAI,messages— для сумісних з Anthropic. Старийopenai-compatдосі працює і мігрується.- Базова URL-адреса закінчується на
/v1. Це адреса CheapTokens для Chat Completions у стилі OpenAI; повний список кінцевих точок — у документації CheapTokens. $CHEAPTOKENS_розгортається shell, тому файл не містить секретів, і проєктнийAPI_ KEY .crushrcможна безпечно додати в git.- Ідентифікатор моделі — повний,
deepseek-. Скорочений ідентифікатор, як-отai/ DeepSeek- V4- Flash- 0731 deepseek-, відхиляється API. Після назви провайдера йде другий слеш, бо сам ідентифікатор містить один.v4- flash -— це округлені 380K від DeepSeek-V4-Flash, а- context- window 380000 -— його ліміт на відповідь. Це реальні ліміти моделі в CheapTokens: 380K контексту і до 32 768 токенів на відповідь. Вкажіть їх у- default- max- tokens 32768 model addзамість того, щоб залишати зразкові значення з README (64000 і 5000).

У README model add показано лише з простим ідентифікатором (deepseek/). Ваш ідентифікатор має додатковий слеш, тому справжня перевірка — це вибір моделі на наступному кроці: якщо модель з'являється в групі cheaptokens, рядок було прочитано як задумано.
Хочете іншу модель на тому самому балансі? Додайте ще один рядок model add з її власним ідентифікатором і лімітами. GLM-5.3-Flash — це zai- (390K контексту, до 8 192 токенів на відповідь), а MiniMax-M2.7 — це MiniMaxAI/ (180K контексту, до 8 192 токенів на відповідь). Тримайте - на рівні або нижче ліміту відповіді моделі, яку додаєте.
Відкриття Crush і запуск першого завдання#
Запустіть crush у теці проєкту. Натисніть Ctrl+l, щоб відкрити вибір моделі, і виберіть DeepSeek-V4-Flash із групи cheaptokens. У README не описано команди crushrc для моделі за замовчуванням, тому вибір моделі — це спосіб.

Тепер дайте їй щось маленьке й перевірне, скажімо: Read this repo and tell me which file starts the app, in two lines. Відповідь, яка називає реальний файл, означає, що весь ланцюжок працює: ключ, базова URL-адреса, ідентифікатор моделі.
Спробуйте саміСпробуйте: ви натискаєте Ctrl+l, а моделі немає в списку. Що перевіряєте першим?Показати відповідь
Розташування файлу і змінну. Crush шукає конфігурацію за пріоритетом: ./.crushrc, ./crushrc, ~/. Перевірте, що в проєкті немає іншого .crushrc або crushrc з іншим вмістом, і що провайдера додано у файл, який ви редагували. І echo $CHEAPTOKENS_ має виводити ключ у тому самому shell, де ви запускаєте crush.
Запити дозволів існують навмисно. permissions allow <tools> у crushrc дозволяє названим інструментам запускатися без запиту; --yolo пропускає всі запити, і сам README каже бути дуже обережним із ним.
Скільки коштує сесія програмування#
Крок агента в терміналі насичений вхідними даними: Crush щоразу надсилає історію, вміст файлів і вивід інструментів, а отримує скромну відповідь. Скажімо, середній крок надсилає 30 000 токенів і отримує 2 000. На DeepSeek-V4-Flash такий крок коштує $0.00065, і ціна однакова в будь-яку годину, без пікових часів. Якщо рахувати вхідні й вихідні разом, це дешевше за довідкову ціну OpenRouter.
Підставте свої числа: сесія з 40 таких кроків — за один рух повзунка.
Калькулятор вартості
Один день агента програмування в Crush
Вхідні токени на запит: 30 000 · Вихідні токени на запит: 2 000 · Запитів на день: 40
| Модель | За день | За місяць |
|---|---|---|
| GLM-5.3-Flash$0.02$0.04 | $0.0272 | $0.816 |
| DeepSeek-V4-Flash$0.015$0.10 | $0.026 | $0.78 |
| MiniMax-M2.7$0.05$0.15 | $0.072 | $2.16 |
Вхідні дані на крок зростають у міру сесії, тому перевіряйте довгу сесію щодо вікна 380K, а не середнього значення. Поточні ціни за токен для кожної моделі — на сторінці цін.
Якщо не працює#
Crush пише журнал у вашому проєкті, .. Прочитайте його, перш ніж гадати:
crush logs --tail 500
crush logs --follow
crush --debugТакож можна додати option debug true у crushrc, щоб постійно тримати вивід налагодження. Потім зіставте побачене з HTTP-статусом, який повернув API:
- 401: ключ надіслано, але не розпізнано: друкарська помилка або замінений ключ. Створіть або скопіюйте його знову.
- 402: баланс або ліміт ключа вичерпано. Запит без ключа взагалі виглядає так само, тому виконайте
echo $CHEAPTOKENS_у shell, де ви запускаєтеAPI_ KEY crush. Якщо ключ там є, поповніть баланс. - 429: забагато запитів за короткий час. Зачекайте значення
Retry-Afterі спробуйте знову. - 400 або "model not found": подивіться на ідентифікатор моделі. Він має бути повним, з документації, з префіксом постачальника.
Якщо ви перейшли з crush.json, зверніть увагу, що ~/ — це стан Crush, а не конфігурація; не редагуйте його вручну.
Щоб налаштувати те саме в інших інструментах, дивіться Підключення Aider до CheapTokens і Підключення Kilo Code до CheapTokens. На сторінці моделі дешевого DeepSeek вказано ліміти моделі, використаної тут.



