بلاگ پر واپس جائیں

ٹولز اور انٹیگریشنزگائیڈ

Crush کو CheapTokens سے جوڑیں: crushrc پرووائیڈر، ماڈل، کلید

دو crushrc کمانڈز کے ساتھ CheapTokens کو Crush میں شامل کریں: ایک completions پرووائیڈر اور حقیقی حدود والا ماڈل؛ کلید ماحولیاتی متغیر سے آتی ہے۔

از CheapTokens Teamشائع شدہ 6 منٹ کا مطالعہ

CheapTokens پرووائیڈر اور ماڈل لائنوں کے ساتھ Crush کنفیگ فائل
اس صفحہ پر
  1. Crush انسٹال کریں
  2. CheapTokens کو crushrc میں ڈالیں
  3. Crush کھولیں اور پہلا کام چلائیں
  4. کوڈنگ سیشن کا خرچ
  5. اگر کام نہ کرے

Crush کو CheapTokens سے جوڑنے کے لیے اپنے crushrc میں دو کمانڈز ڈالیں: provider add، بیس URL https://api.cheaptokens.dev/v1 اور --type completions کے ساتھ، اور model add مکمل ماڈل id کے ساتھ۔ پھر Crush کھولیں، Ctrl+l دبائیں، ماڈل منتخب کریں اور اسے کوئی کام دیں۔ کلید ماحولیاتی متغیر میں رہتی ہے، فائل میں نہیں۔

اگر آپ نے کوئی پرانی گائیڈ فالو کی ہے، تو غالباً وہ crush.json میں ترمیم کرتی ہے۔ Crush اب بھی وہ فائل پڑھتا ہے، لیکن اس کا README اسے deprecated قرار دیتا ہے: موجودہ کنفیگ crushrc ہے، اور v0.99.0 (29 اکتوبر 2026) سے پرووائیڈر --type API فارمیٹ بیان کرتا ہے، وینڈر نہیں۔ ذرائع Crush کا README اور ریلیز نوٹس ہیں، جو 10 نومبر 2026 کو چیک کیے گئے؛ اس تاریخ تک تازہ ترین مستحکم ریلیز v0.100.0 ہے۔

Crush انسٹال کریں#

جو پیکیج مینیجر آپ کے پاس پہلے سے ہے، وہی منتخب کریں۔ Crush ایک ہی بائنری ہے، اس لیے راستے سے فرق نہیں پڑتا۔

Crush انسٹال کریں

Homebrew

bash
brew install charmbracelet/tap/crush

npm

bash
npm install -g @charmland/crush

winget

bash
winget install charmbracelet.crush

Go

bash
go install github.com/charmbracelet/crush@latest

README میں apt اور yum ریپوزٹریز، Scoop، Nix، Arch اور FreeBSD بھی درج ہیں۔ ایک بار crush چلا کر جانچیں کہ یہ شروع ہوتا ہے، پھر باہر آ جائیں۔

CheapTokens کو crushrc میں ڈالیں#

README crushrc کو "صرف Bash، کچھ Crush مخصوص builtins کے ساتھ" بتاتا ہے۔ پورا راز یہی ہے: آپ شیل لکھتے ہیں، اور provider add اور model add وہ کمانڈز ہیں جو Crush سمجھتا ہے۔ Crush فائل کو اس ترتیب سے تلاش کرتا ہے: ./.crushrc، ./crushrc، پھر ~/.config/crush/crushrc۔

تو آپ خود طے کرتے ہیں کہ یہ کہاں رہے۔ پروجیکٹ کے اندر .crushrc صرف ایک ریپوزٹری پر لاگو ہوتا ہے؛ ~/.config/crush/ والا ہر جگہ لاگو ہوتا ہے۔ پہلی کوشش کے لیے گلوبل والا آسان ہے۔

پہلے کلید اپنے شیل میں ڈالیں۔ اسے اپنے CheapTokens ڈیش بورڈ میں بنائیں اور ایکسپورٹ کریں (نیچے دی گئی قدر ایک placeholder ہے):

bash
export CHEAPTOKENS_API_KEY="your-key-here"

پھر ~/.config/crush/crushrc کھولیں اور لکھیں:

bash
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

چند تفصیلات دوبارہ دیکھنے کے قابل ہیں:

  • --type completions ان OpenAI-compatible پرووائیڈرز کے لیے Crush کا نام ہے جو خود OpenAI نہیں ہیں۔ responses OpenAI proxying کے لیے ہے، messages Anthropic-compatible والوں کے لیے۔ پرانا openai-compat اب بھی کام کرتا ہے اور migrate ہو جاتا ہے۔
  • بیس URL /v1 پر ختم ہوتا ہے۔ یہ OpenAI طرز کے Chat Completions کے لیے CheapTokens کا پتہ ہے؛ endpoints کی مکمل فہرست CheapTokens ڈاکس میں ہے۔
  • $CHEAPTOKENS_API_KEY شیل کے ذریعے expand ہوتا ہے، اس لیے فائل میں کوئی راز نہیں ہوتا اور پروجیکٹ کا .crushrc محفوظ طریقے سے git میں جا سکتا ہے۔
  • ماڈل id مکمل ہے، deepseek-ai/DeepSeek-V4-Flash-0731۔ deepseek-v4-flash جیسا مختصر id API مسترد کر دیتی ہے۔ پرووائیڈر کے نام کے بعد دوسرا سلیش آتا ہے، کیونکہ id میں خود ایک سلیش ہے۔
  • --context-window 380000 DeepSeek-V4-Flash کے گول 380K ہے، اور --default-max-tokens 32768 اس کی فی جواب حد ہے۔ یہ CheapTokens میں ماڈل کی حقیقی حدود ہیں: 380K context اور فی جواب زیادہ سے زیادہ 32,768 tokens۔ انہیں model add میں ڈالیں، README کی نمونہ قدروں (64000 اور 5000) پر نہ چھوڑیں۔
CheapTokens پرووائیڈر اور ماڈل کے ساتھ crushrc فائل
crushrc: ایک پرووائیڈر لائن اور ایک ماڈل لائن؛ کلید ماحول سے آتی ہے

README model add صرف سادہ id (deepseek/deepseek-chat) کے ساتھ دکھاتا ہے۔ آپ کی id میں ایک اضافی سلیش ہے، اس لیے اگلے مرحلے میں ماڈل پکر ہی اصل جانچ ہے: اگر ماڈل cheaptokens کے تحت نظر آئے، تو لائن ارادے کے مطابق پڑھی گئی۔

اسی بیلنس پر دوسرا ماڈل چاہیے؟ اپنی id اور حدود کے ساتھ ایک اور model add لائن شامل کریں۔ GLM-5.3-Flash zai-org/GLM-5.3-Flash ہے (390K context، فی جواب زیادہ سے زیادہ 8,192 tokens)، اور MiniMax-M2.7 MiniMaxAI/MiniMax-M2.7 ہے (180K context، فی جواب زیادہ سے زیادہ 8,192 tokens)۔ --default-max-tokens کو آپ کے شامل کردہ ماڈل کی جواب کی حد پر یا اس سے کم رکھیں۔

Crush کھولیں اور پہلا کام چلائیں#

کسی پروجیکٹ فولڈر میں crush شروع کریں۔ ماڈل پکر کھولنے کے لیے Ctrl+l دبائیں اور cheaptokens گروپ سے DeepSeek-V4-Flash منتخب کریں۔ README ڈیفالٹ ماڈل کے لیے کوئی crushrc کمانڈ بیان نہیں کرتا، اس لیے پکر ہی راستہ ہے۔

crushrc سے پہلے جواب تک: پرووائیڈر، ماڈل، پکر، کام
کنفیگ سے پہلے جواب تک کا راستہ

اب اسے کوئی چھوٹا اور جانچنے کے قابل کام دیں، مثلاً: Read this repo and tell me which file starts the app, in two lines. کوئی جواب جو کسی حقیقی فائل کا نام لے، اس کا مطلب ہے کہ پوری زنجیر کام کر رہی ہے: کلید، بیس URL، ماڈل id۔

خود آزمائیںآزمائیں: آپ Ctrl+l دباتے ہیں اور ماڈل فہرست میں نہیں ہے۔ آپ سب سے پہلے کیا چیک کریں گے؟جواب دکھائیں

فائل کی جگہ اور متغیر۔ Crush کنفیگ کو ترجیح کے مطابق تلاش کرتا ہے: ./.crushrc، ./crushrc، ~/.config/crush/crushrc۔ چیک کریں کہ پروجیکٹ میں مختلف مواد کے ساتھ کوئی اور .crushrc یا crushrc نہیں ہے، اور پرووائیڈر اسی فائل میں شامل کیا گیا ہے جس میں آپ نے ترمیم کی۔ اور echo $CHEAPTOKENS_API_KEY کو اسی شیل میں کلید پرنٹ کرنی چاہیے جہاں آپ crush شروع کرتے ہیں۔

اجازت کے پرامپٹ جان بوجھ کر موجود ہیں۔ crushrc میں permissions allow <tools> نامزد ٹولز کو بغیر پوچھے چلنے دیتا ہے؛ --yolo ہر پرامپٹ چھوڑ دیتا ہے، اور README خود کہتا ہے کہ اس میں بہت احتیاط کریں۔

کوڈنگ سیشن کا خرچ#

ٹرمینل میں ایجنٹ کا ایک قدم input-heavy ہوتا ہے: Crush ہر بار تاریخ، فائل کا مواد اور ٹول آؤٹ پٹ بھیجتا ہے، اور معمولی جواب واپس ملتا ہے۔ فرض کریں ایک اوسط قدم 30,000 tokens بھیجتا ہے اور 2,000 وصول کرتا ہے۔ DeepSeek-V4-Flash پر اس قدم کا خرچ $0.00065 ہے، اور قیمت کسی بھی وقت یکساں ہے، کوئی peak times نہیں۔ input اور output ملا کر گننے پر یہ OpenRouter کی reference قیمت سے سستا ہے۔

اپنے اعداد ڈالیں: ایسے 40 قدموں کا سیشن ایک سلائیڈر کی دوری پر ہے۔

لاگت کیلکولیٹر

Crush میں کوڈنگ ایجنٹ کا ایک دن

فی درخواست ان پٹ ٹوکنز: 30,000 · فی درخواست آؤٹ پٹ ٹوکنز: 2,000 · فی دن درخواستیں: 40

ماڈلفی دنفی ماہ
GLM-5.3-Flash$0.0272$0.816
DeepSeek-V4-Flash$0.026$0.78
MiniMax-M2.7$0.072$2.16

سیشن کے ساتھ ساتھ فی قدم input بڑھتا ہے، اس لیے طویل سیشن کو اوسط کے بجائے 380K ونڈو کے مقابلے میں جانچیں۔ ہر ماڈل کی موجودہ فی-token قیمتیں قیمتوں کے صفحے پر ہیں۔

اگر کام نہ کرے#

Crush آپ کے پروجیکٹ میں لاگ لکھتا ہے، ./.crush/logs/crush.log۔ اندازہ لگانے سے پہلے اسے پڑھیں:

bash
crush logs --tail 500
crush logs --follow
crush --debug

آپ debug آؤٹ پٹ جاری رکھنے کے لیے crushrc میں option debug true بھی ڈال سکتے ہیں۔ پھر جو آپ دیکھتے ہیں اسے API کے واپس کردہ HTTP اسٹیٹس سے ملائیں:

  • 401: کلید بھیجی گئی لیکن پہچانی نہیں گئی: کوئی ٹائپو یا تبدیل شدہ کلید۔ اسے دوبارہ بنائیں یا کاپی کریں۔
  • 402: بیلنس یا کلید کی حد ختم ہو گئی ہے۔ بغیر کلید کی درخواست بھی ایسی ہی دکھتی ہے، اس لیے اسی شیل میں echo $CHEAPTOKENS_API_KEY چلائیں جہاں آپ crush شروع کرتے ہیں۔ اگر کلید موجود ہے، تو بیلنس ٹاپ اپ کریں۔
  • 429: مختصر وقت میں بہت زیادہ درخواستیں۔ Retry-After قدر کا انتظار کریں اور دوبارہ کوشش کریں۔
  • 400 یا "model not found": ماڈل id دیکھیں۔ یہ ڈاکس والی مکمل id ہونی چاہیے، وینڈر prefix کے ساتھ۔

اگر آپ crush.json سے منتقل ہوئے ہیں، تو نوٹ کریں کہ ~/.local/share/crush/crush.json Crush کی حالت ہے، کنفیگ نہیں؛ اسے ہاتھ سے نہ بدلیں۔

دوسرے ٹولز میں یہی سیٹ اپ کے لیے، Aider کو CheapTokens سے جوڑیں اور Kilo Code کو CheapTokens سے جوڑیں دیکھیں۔ سستے DeepSeek کا ماڈل صفحہ یہاں استعمال شدہ ماڈل کی حدود رکھتا ہے۔