도구 및 통합가이드
Crush를 CheapTokens에 연결: crushrc provider, 모델, 키
두 개의 crushrc 명령으로 CheapTokens를 Crush에 추가하세요: completions provider와 실제 한도가 있는 모델; 키는 환경 변수에서 가져옵니다.

Crush를 CheapTokens에 연결하려면 crushrc에 두 개의 명령을 넣으세요: 기본 URL https:/와 함께 provider add, 그리고 -, 그리고 전체 모델 id와 함께 model add. 그런 다음 Crush를 열고 Ctrl+l를 누르고, 모델을 선택한 뒤 작업을 주세요. 키는 파일이 아니라 환경 변수에 남습니다.
이전 가이드를 따랐다면 아마 crush.json를 편집했을 것입니다. Crush는 여전히 그 파일을 읽지만, README에서는 이를 deprecated라고 부릅니다: 현재 설정은 crushrc이고, v0.99.0(2026년 10월 29일)부터 provider --type은 벤더가 아니라 API 형식을 설명합니다. 출처는 Crush README와 릴리스 노트이며, 2026년 11월 10일에 확인했습니다. 그 날짜 기준 최신 안정 릴리스는 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@latestREADME에는 apt와 yum 저장소, Scoop, Nix, Arch, FreeBSD도 나열되어 있습니다. 시작되는지 확인하려면 crush을 한 번 실행한 뒤 종료하세요.
crushrc에 CheapTokens 넣기#
README는 crushrc를 "Crush 전용 빌트인이 몇 개 있는 그냥 Bash"라고 설명합니다. 그게 전부입니다: 셸을 작성하고, provider add과 model add은 Crush가 이해하는 명령입니다. Crush는 이 순서로 파일을 찾습니다: ./.crushrc, ./crushrc, 그다음 ~/.
그래서 위치는 직접 고릅니다. 프로젝트 로컬 .crushrc는 한 저장소에만 적용되고, ~/.config/crush/에 있는 것은 어디서나 적용됩니다. 처음 시도할 때는 전역 파일이 더 쉽습니다.
먼저 키를 셸에 넣으세요. CheapTokens 대시보드에서 생성하고 export하세요(아래 값은 자리 표시자입니다):
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몇 가지 세부 사항은 다시 볼 가치가 있습니다:
-은 OpenAI 자체가 아닌 OpenAI 호환 provider에 대한 Crush 이름입니다.- type completions responses은 OpenAI 프록시용,messages는 Anthropic 호환 provider용입니다. 예전openai-compat도 여전히 작동하며 마이그레이션됩니다.- 기본 URL은
/v1로 끝납니다. 이것은 OpenAI 스타일 Chat Completions에 대한 CheapTokens 주소입니다. 전체 엔드포인트 목록은 CheapTokens 문서에 있습니다. $CHEAPTOKENS_은 셸에서 확장되므로 파일에는 비밀이 없고, 프로젝트API_ KEY .crushrc는 안전하게 git에 넣을 수 있습니다.- 모델 id는 전체 id인
deepseek-입니다.ai/ DeepSeek- V4- Flash- 0731 deepseek-같은 짧은 id는 API에서 거부됩니다. provider 이름 뒤에 슬래시가 하나 더 오는데, id 자체에 슬래시가 있기 때문입니다.v4- flash -은 DeepSeek-V4-Flash의 반올림된 380K이고,- context- window 380000 -은 답변당 한도입니다. 이것이 CheapTokens에서 해당 모델의 실제 한도입니다: 380K 컨텍스트와 답변당 최대 32,768 토큰. README의 샘플 값(64000과 5000)을 그대로 두지 말고- default- max- tokens 32768 model add에 넣으세요.

README는 model add를 간단한 id(deepseek/)로만 보여줍니다. 여러분의 id에는 슬래시가 하나 더 있으므로, 다음 단계의 모델 선택기가 실제 확인입니다: 모델이 cheaptokens 아래에 나타나면 해당 줄이 의도대로 읽힌 것입니다.
같은 잔액으로 다른 모델을 쓰고 싶으신가요? 자체 id와 한도를 가진 model add 줄을 하나 더 추가하세요. GLM-5.3-Flash는 zai-(390K 컨텍스트, 답변당 최대 8,192 토큰)이고, MiniMax-M2.7은 MiniMaxAI/(180K 컨텍스트, 답변당 최대 8,192 토큰)입니다. -은 추가하는 모델의 답변 한도 이하로 유지하세요.
Crush를 열고 첫 작업 실행#
프로젝트 폴더에서 crush를 시작하세요. Ctrl+l을 눌러 모델 선택기를 열고 cheaptokens 그룹에서 DeepSeek-V4-Flash를 선택하세요. README에는 기본 모델에 대한 crushrc 명령이 설명되어 있지 않으므로 선택기가 방법입니다.

이제 작고 확인 가능한 것을 주세요. 예를 들어: Read this repo and tell me which file starts the app, in two lines. 실제 파일을 언급하는 답변이 나오면 전체 체인이 작동한다는 뜻입니다: 키, 기본 URL, 모델 id.
직접 해보기시도해 보세요: Ctrl+l을 눌렀는데 모델이 목록에 없습니다. 무엇을 먼저 확인하시겠습니까?정답 보기
파일 위치와 변수입니다. Crush는 우선순위에 따라 설정을 찾습니다: ./.crushrc, ./crushrc, ~/. 프로젝트에 내용이 다른 .crushrc나 crushrc가 없는지, 그리고 편집한 파일에 provider가 추가되었는지 확인하세요. 그리고 echo $CHEAPTOKENS_은 crush을 시작하는 같은 셸에서 키를 출력해야 합니다.
권한 프롬프트는 의도적으로 있습니다. crushrc의 permissions allow <tools>은 지정된 도구를 묻지 않고 실행하게 하고, --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 --debugcrushrc에 option debug true을 넣어 디버그 출력을 켜 둘 수도 있습니다. 그런 다음 보이는 것을 API가 반환한 HTTP 상태와 대조하세요:
- 401: 키가 전송되었지만 인식되지 않았습니다: 오타 또는 교체된 키입니다. 다시 생성하거나 복사하세요.
- 402: 잔액 또는 키의 한도가 소진되었습니다. 키 없이 보낸 요청도 똑같이 보이므로,
crush을 시작하는 셸에서echo $CHEAPTOKENS_를 실행하세요. 키가 있으면 잔액을 충전하세요.API_ KEY - 429: 짧은 시간에 너무 많은 요청입니다.
Retry-After값을 기다린 뒤 다시 시도하세요. - 400 또는 "model not found": 모델 id를 보세요. 문서에 있는 전체 id여야 하며, 벤더 접두사가 포함되어야 합니다.
crush.json에서 옮겨 왔다면, ~/은 설정이 아니라 Crush의 상태이므로 손으로 편집하지 마세요.
다른 도구에서 같은 설정을 하려면 Aider를 CheapTokens에 연결과 Kilo Code를 CheapTokens에 연결을 참고하세요. 저렴한 DeepSeek 모델 페이지에는 여기서 사용한 모델의 한도가 있습니다.



