منصوبے کے بارے میں
claude-code-rlm، Claude Code کے لیے ایک ہک ہے جو مین ماڈل کے پرامپٹ کو ہینڈل کرنے سے پہلے کوڈ بیس پر پری ریسرچ کرتا ہے۔ بنیادی ماڈل (Opus یا Sonnet) کو اپنی پہلی ٹول کالز صرف رہنمائی حاصل کرنے میں خرچ کرنے دینے کے بجائے، یہ ہک پہلے تیز رفتار اور سستے Haiku ماڈل کو ریپوزٹری ایکسپلور کرنے کے لیے بھیجتا ہے اور نتائج کو انجیکٹڈ سیاق و سباق کے طور پر مین ماڈل کو فراہم کرتا ہے۔
یہ کیسے کام کرتا ہے
1. Claude Code، UserPromptSubmit ہک کے ذریعے rlm-hook.mjs کو کال کرتا ہے، اور stdin پر JSON پاس کرتا ہے جس میں prompt، cwd اور transcript_path جیسے فیلڈز ہوتے ہیں۔
2. معمولی ان پٹس کو فوری طور پر چھوڑ دیا جاتا ہے: وہ پرامپٹس جو کنفیگرڈ کم از کم لمبائی سے چھوٹے ہوں، سادہ شیل کمانڈز (ls, pwd, cat, echo, git status, npm, yarn)، ایک لفظی توثیق، /help، /clear اور /compact جیسی سلیش کمانڈز، اور کوڈ سے بھرپور پیسٹس جہاں آدھے سے زیادہ ان پٹ کوڈ بلاکس پر مشتمل ہو۔
3. پرامپٹ اور ورکنگ ڈائریکٹری کے SHA-256 ہیش کو ایک فائل کیش کے خلاف چیک کیا جاتا ہے جس کا ڈیفالٹ TTL ایک گھنٹہ ہے۔
4. کیش مس ہونے پر، کنفیگرڈ Haiku ماڈل کے ساتھ Claude CLI کو لانچ کیا جاتا ہے، جسے Read، Glob، Grep اور git Bash تک محدود رکھا جاتا ہے، اور اسے ایک سسٹم پرامپٹ دیا جاتا ہے جس میں اسے ٹول کالز کی ایک قابلِ ترتیب تعداد کے اندر کوڈ بیس کو ایکسپلور کرنے کی ہدایت کی جاتی ہے۔
5. Haiku اپنی تحقیقات کو ایک عارضی JSON فائل میں لکھتا ہے؛ ہک انہیں ایک منظم rlm_preresearch بلاک میں فارمیٹ کرتا ہے جس میں ارادہ (intent)، خلاصہ، متعلقہ فائلیں، موجودہ پیٹرنز، حالیہ تبدیلیاں، تجویز کردہ طریقہ کار، ٹاسک اور وارننگز شامل ہوتی ہیں، پھر اسے stdout پر پرنٹ کرتا ہے تاکہ Claude Code اسے صارف کے پرامپٹ سے پہلے انجیکٹ کر سکے۔
6. کوئی بھی ناکامی، بشمول ٹائم آؤٹ، API غلطیاں اور JSON پارس غلطیاں، بغیر کسی آؤٹ پٹ کے ختم ہو جاتی ہیں، تاکہ ہک گفتگو میں رکاوٹ یا خرابی پیدا نہ کرے۔
موڈز اور کنفیگریشن
سب کچھ انوائرمنٹ ویری ایبلز کے ذریعے کنفیگر کیا جاتا ہے۔ ایجنٹک موڈ (جو کہ ڈیفالٹ ہے) ٹول پر مبنی ایکسپلوریشن کو فعال کرتا ہے اور کیش مس ہونے پر تقریباً 20 سیکنڈ لیتا ہے؛ فاسٹ موڈ ٹول کالز کے بغیر مختصر تجزیہ کرتا ہے جس میں تقریباً 4 سیکنڈ لگتے ہیں۔ دیگر سیٹنگز میں ماڈل کا نام، کل ٹائم آؤٹ، کیش TTL، کم از کم اور زیادہ سے زیادہ ان پٹ لمبائی، زیادہ سے زیادہ ٹول ٹرنز، کیش اور لاگ پاتھز، اور ایک میٹرکس فائل شامل ہے۔ ایک اختیاری SDK-Direct موڈ سب پراسیس کے بجائے API کی کے ساتھ Anthropic SDK کا استعمال کرتا ہے۔
README میں بیان کردہ اضافی خصوصیات میں ایک اختیاری سیمیٹک کیش شامل ہے جو ایک کنفیگرڈ کوسائن سیمیلیریتھریش ہولڈ کے خلاف ایمبیڈنگز کا موازنہ کرتا ہے، سیاق و سباق کا دوبارہ استعمال جو حالیہ RLM بلاکس کو دیکھتا ہے تاکہ ایک ہی ارادے یا فائلوں کا دوبارہ تجزیہ کرنے سے بچا جا سکے، اور ایک میٹرکس JSONL لاگ جس کے ساتھ ایک بنڈل شدہ ڈیش بورڈ (جو مقامی طور پر پورٹ 9876 پر چلتا ہے) ہے جو لیٹنسی ڈسٹری بیوشن، کیش ہٹ ریٹ، فی موڈ کارکردگی اور تخمینہ شدہ Haiku لاگت دکھاتا ہے۔
رپورٹ کردہ لیٹنسی کے اعداد و شمار: اسکیپ کرنے پر تقریباً 27 ملی سیکنڈ، کیش ہٹ پر تقریباً 37 ملی سیکنڈ، مس ہونے پر ایجنٹک موڈ میں تقریباً 20 سیکنڈ، اور فاسٹ موڈ میں تقریباً 4 سیکنڈ۔
ضروریات اور انسٹالیشن: Node.js 18 یا اس سے نیا ورژن اور PATH پر Claude Code CLI۔ فراہم کردہ انسٹال اسکرپٹ ہک کو Claude ہکس ڈائریکٹری میں کاپی کرتا ہے اور اسے ایگزیکیوٹیبل بناتا ہے؛ Claude Code سیٹنگز فائل میں کمانڈ اور ٹائم آؤٹ کے ساتھ ایک ہک انٹری شامل کرنا ضروری ہے۔ ٹیسٹنگ اور بینچ مارکنگ npm اسکرپٹس کے ذریعے چلائی جاتی ہے، اور انٹیگریشن ٹیسٹ کے لیے لائیو claude بائنری کی ضرورت ہوتی ہے۔ یہ پروجیکٹ MIT لائسنس کے تحت جاری کیا گیا ہے۔
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.