เครื่องมือและการเชื่อมต่อคู่มือ
เชื่อมต่อ Crush กับ CheapTokens: provider, โมเดล, คีย์ใน crushrc
เพิ่ม CheapTokens ลงใน Crush ด้วยสองคำสั่ง crushrc: provider แบบ completions และโมเดลที่มีขีดจำกัดจริง; คีย์มาจาก environment variable

ในหน้านี้
หากต้องการเชื่อมต่อ Crush กับ CheapTokens ให้ใส่สองคำสั่งลงใน crushrc ของคุณ: provider add พร้อม base URL https:/ และ - และ model add พร้อม model id แบบเต็ม จากนั้นเปิด Crush กด Ctrl+l เลือกโมเดลและมอบหมายงานให้มัน คีย์จะอยู่ใน environment variable ไม่ใช่ในไฟล์
หากคุณทำตามคู่มือเก่า คู่มือนั้นน่าจะแก้ไข crush.json Crush ยังอ่านไฟล์นั้นอยู่ แต่ README ของมันระบุว่าเลิกใช้แล้ว: config ปัจจุบันคือ crushrc และตั้งแต่ v0.99.0 (29 ตุลาคม 2026) provider --type อธิบายรูปแบบ API ไม่ใช่ผู้ให้บริการ แหล่งข้อมูลคือ Crush README และ release notes ตรวจสอบเมื่อ 10 พฤศจิกายน 2026; release เสถียรล่าสุด ณ วันนั้นคือ v0.100.0
ติดตั้ง Crush#
เลือก package manager ที่คุณมีอยู่แล้ว Crush เป็นไบนารีเดียว จึงไม่สำคัญว่าคุณจะใช้วิธีไหน
ติดตั้ง Crush
Homebrew
brew install charmbracelet/tap/crushnpm
npm install -g @charmland/crushwinget
winget install charmbracelet.crushGo
go install github.com/charmbracelet/crush@latestREADME ยังระบุ repository ของ apt และ yum, Scoop, Nix, Arch และ FreeBSD รัน crush หนึ่งครั้งเพื่อตรวจสอบว่ามันเริ่มทำงานได้ จากนั้นออก
ใส่ CheapTokens ลงใน crushrc#
README อธิบาย crushrc ว่าเป็น "แค่ Bash ที่มี builtin เฉพาะของ Crush" นั่นคือเคล็ดลับทั้งหมด: คุณเขียน shell และ provider add กับ model add คือคำสั่งที่ Crush เข้าใจ Crush ค้นหาไฟล์ตามลำดับนี้: ./.crushrc, ./crushrc แล้วจึง ~/
ดังนั้นคุณเลือกได้ว่าจะให้มันอยู่ที่ไหน .crushrc ระดับโปรเจกต์ใช้กับ repository เดียว; ไฟล์ใน ~/.config/crush/ ใช้ได้ทุกที่ สำหรับการลองครั้งแรก แบบ global ง่ายกว่า
ก่อนอื่นใส่คีย์ลงใน shell ของคุณ สร้างมันในแดชบอร์ด 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มีรายละเอียดบางอย่างที่ควรดูอีกครั้ง:
-คือชื่อของ Crush สำหรับ provider ที่เข้ากันได้กับ OpenAI ซึ่งไม่ใช่ OpenAI เอง- type completions responsesสำหรับการ proxy OpenAI,messagesสำหรับตัวที่เข้ากันได้กับ Anthropicopenai-compatแบบเก่ายังใช้ได้และจะถูก migrate- base URL ลงท้ายด้วย
/v1นั่นคือที่อยู่ CheapTokens สำหรับ Chat Completions แบบ OpenAI; รายการ endpoint ทั้งหมดอยู่ใน เอกสาร CheapTokens $CHEAPTOKENS_ถูกขยายโดย shell ดังนั้นไฟล์จึงไม่มีข้อมูลลับ และAPI_ KEY .crushrcระดับโปรเจกต์สามารถ commit ลง git ได้อย่างปลอดภัย- model id คือแบบเต็ม
deepseek-id แบบสั้นเช่นai/ DeepSeek- V4- Flash- 0731 deepseek-จะถูก API ปฏิเสธ หลังชื่อ provider มี slash ที่สอง เพราะ id เองก็มีหนึ่งตัวv4- flash -คือ 380K แบบปัดเศษของ DeepSeek-V4-Flash และ- context- window 380000 -คือขีดจำกัดต่อคำตอบของมัน นี่คือขีดจำกัดจริงของโมเดลใน CheapTokens: context 380K และสูงสุด 32,768 tokens ต่อคำตอบ ใส่ค่าเหล่านี้ลงใน- default- max- tokens 32768 model addแทนที่จะปล่อยค่าตัวอย่างจาก README (64000 และ 5000)

README แสดง model add พร้อม id แบบง่ายเท่านั้น (deepseek/) id ของคุณมี slash เพิ่ม ดังนั้นตัวเลือกโมเดลในขั้นตอนถัดไปคือการตรวจสอบจริง: หากโมเดลปรากฏภายใต้ cheaptokens แสดงว่าบรรทัดนั้นถูกอ่านตามที่ต้องการ
ต้องการโมเดลอื่นบนยอดคงเหลือเดียวกันหรือไม่? เพิ่มบรรทัด model add อีกหนึ่งบรรทัดพร้อม id และขีดจำกัดของมันเอง GLM-5.3-Flash คือ zai- (context 390K สูงสุด 8,192 tokens ต่อคำตอบ) และ MiniMax-M2.7 คือ MiniMaxAI/ (context 180K สูงสุด 8,192 tokens ต่อคำตอบ) ให้ - อยู่ที่หรือต่ำกว่าขีดจำกัดคำตอบของโมเดลที่คุณเพิ่ม
เปิด Crush และรันงานแรก#
เริ่ม crush ในโฟลเดอร์โปรเจกต์ กด Ctrl+l เพื่อเปิดตัวเลือกโมเดลและเลือก DeepSeek-V4-Flash จากกลุ่ม cheaptokens README ไม่ได้อธิบายคำสั่ง crushrc สำหรับโมเดลเริ่มต้น ดังนั้นตัวเลือกโมเดลคือวิธีที่ใช้

ตอนนี้ให้งานเล็ก ๆ ที่ตรวจสอบได้ เช่น: Read this repo and tell me which file starts the app, in two lines. คำตอบที่ระบุชื่อไฟล์จริงหมายความว่าทั้งห่วงโซ่ทำงาน: คีย์, base URL, model id
ลองด้วยตัวเองลองดู: คุณกด Ctrl+l แล้วโมเดลไม่อยู่ในรายการ คุณจะตรวจสอบอะไรก่อน?แสดงคำตอบ
ตำแหน่งไฟล์และตัวแปร Crush ค้นหา config ตามลำดับความสำคัญ: ./.crushrc, ./crushrc, ~/ ตรวจสอบว่าโปรเจกต์ไม่มี .crushrc หรือ crushrc อื่นที่มีเนื้อหาต่างกัน และ provider ถูกเพิ่มในไฟล์ที่คุณแก้ไข และ echo $CHEAPTOKENS_ ต้องพิมพ์คีย์ใน shell เดียวกับที่คุณเริ่ม crush
พรอมต์ขออนุญาตมีไว้โดยเจตนา permissions allow <tools> ใน crushrc อนุญาตให้เครื่องมือที่ระบุชื่อรันได้โดยไม่ถาม; --yolo ข้ามทุกพรอมต์ และ README เองก็บอกให้ระวังมากกับมัน
เซสชันเขียนโค้ดมีค่าใช้จ่ายเท่าไร#
ขั้นตอนของ agent ใน terminal เน้น input หนัก: Crush ส่งประวัติ เนื้อหาไฟล์ และ output ของเครื่องมือทุกครั้ง และได้คำตอบกลับมาไม่มาก สมมติว่าแต่ละขั้นตอนส่งเฉลี่ย 30,000 tokens และรับ 2,000 บน DeepSeek-V4-Flash ขั้นตอนนั้นมีค่าใช้จ่าย $0.00065 และราคาเท่ากันทุกชั่วโมง ไม่มีช่วง peak นับรวม input และ output แล้ว ถูกกว่าราคาอ้างอิงของ OpenRouter
ใส่ตัวเลขของคุณเอง: เซสชัน 40 ขั้นตอนแบบนี้ห่างเพียงสไลเดอร์เดียว
เครื่องคำนวณค่าใช้จ่าย
หนึ่งวันของ coding agent ใน 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 |
input ต่อขั้นตอนเพิ่มขึ้นเมื่อเซสชันดำเนินไป ดังนั้นตรวจสอบเซสชันยาวเทียบกับหน้าต่าง 380K ไม่ใช่ค่าเฉลี่ย ราคาต่อ token ปัจจุบันของทุกโมเดลอยู่ในหน้าราคา
หากใช้งานไม่ได้#
Crush เขียน log ในโปรเจกต์ของคุณ . อ่านมันก่อนเดา:
crush logs --tail 500
crush logs --follow
crush --debugคุณยังสามารถใส่ option debug true ลงใน crushrc เพื่อเปิด debug output ไว้ได้ จากนั้นเทียบสิ่งที่เห็นกับ HTTP status ที่ API ส่งกลับ:
- 401: ส่งคีย์ไปแล้วแต่ไม่รู้จัก: พิมพ์ผิดหรือคีย์ถูกเปลี่ยน สร้างหรือคัดลอกใหม่
- 402: ยอดคงเหลือหรือขีดจำกัดของคีย์หมด คำขอที่ไม่มีคีย์เลยก็ดูเหมือนกัน ดังนั้นรัน
echo $CHEAPTOKENS_ใน shell ที่คุณเริ่มAPI_ KEY crushหากคีย์อยู่ที่นั่น ให้เติมยอดคงเหลือ - 429: คำขอมากเกินไปในช่วงเวลาสั้น รอตามค่า
Retry-Afterแล้วลองอีกครั้ง - 400 หรือ "model not found": ดู model id ต้องเป็นแบบเต็มจากเอกสาร พร้อม vendor prefix
หากคุณย้ายมาจาก crush.json โปรดทราบว่า ~/ คือ state ของ Crush ไม่ใช่ config; อย่าแก้ไขด้วยมือ
สำหรับการตั้งค่าเดียวกันในเครื่องมืออื่น ดู เชื่อมต่อ Aider กับ CheapTokens และ เชื่อมต่อ Kilo Code กับ CheapTokens หน้าโมเดลสำหรับ DeepSeek ราคาถูก มีขีดจำกัดของโมเดลที่ใช้ที่นี่



