عن المشروع

# Crush مساعد برمجة وكيلي أنيق للطرفية، من تطوير Charmbracelet. يربط أدواتك وقاعدة شيفرتك وسير عملك بنموذج LLM الذي تختاره مباشرة من سطر الأوامر. ## القدرات الرئيسية - **دعم متعدد النماذج**: اختر من مجموعة واسعة من نماذج LLM أو اضبط نموذجك الخاص عبر واجهات متوافقة مع OpenAI أو Anthropic. بدّل النماذج أثناء الجلسة مع الحفاظ على السياق. - **تكامل LSP**: يستخدم بروتوكولات خادم اللغة (Language Server Protocols) لجمع سياق إضافي من قاعدة الشيفرة، على غرار طريقة عمل بيئات التطوير المتكاملة. - **امتداد MCP**: قابل للتوسيع عبر خوادم Model Context Protocol باستخدام ناقلات `http` و`stdio` و`sse`. - **إدارة الجلسات**: حافظ على جلسات عمل وسياقات متعددة لكل مشروع، مع مشاركة مساحة العمل عبر العملاء باستخدام SSE. - **قابل للتهيئة**: ملفات تهيئة `crushrc` مبنية على Bash للمزوّدين والنماذج والأذونات والمهارات المخصصة. يدعم أيضاً تهيئة JSON. - **السمات**: سمات ألوان مدمجة مع معاينة مباشرة وتخصيص عبر لوحة الأوامر (`ctrl+p`). - **مهارات الوكيل**: يدعم معيار [Agent Skills](https://agentskills.io) المفتوح لحزم المهارات القابلة لإعادة الاستخدام والمكتشفة من الأدلة العامة ودلائل المشروع. - **نظام الأذونات**: أذونات أدوات دقيقة — وافق فردياً، أو اسمح/ارفض فئات أدوات، أو تخطَّ المطالبات كلياً باستخدام `--yolo`. - **متعدد المنصات**: يعمل على macOS وLinux وWindows (PowerShell/WSL) وAndroid وFreeBSD وOpenBSD وNetBSD. ## التثبيت متاح عبر Homebrew وNPM وArch Linux (btw) وNix وFreeBSD pkg وDebian/Ubuntu apt وFedora/RHEL yum وWinget وScoop والتثبيت المباشر عبر Go. ## المزوّدون يدعم Charm Hyper (الافتراضي، المركّز على الخصوصية مع عدم الاحتفاظ بالبيانات)، وAnthropic، وOpenAI، وGemini، وOpenRouter، وGroq، وHugging Face، وAmazon Bedrock، وAzure OpenAI، وAlibaba، وغيرها الكثير. يمكن تعيين مفاتيح API عبر متغيرات البيئة أو ملفات التهيئة. يمكن إضافة أي مزوّد تقريباً متوافق مع واجهات OpenAI/Anthropic كمزوّد مخصص. ## إدارة السياق - يحترم `.gitignore` ويدعم `.crushignore` لاستثناءات ملفات إضافية. - ملفات سياق عامة في `~/.config/crush/CRUSH.md` و`~/.config/AGENTS.md` لتعليمات عابرة للمشاريع. - تُثري خوادم LSP وMCP قرارات الوكيل بسياق خاص بالمشروع. ## التهيئة يأتي Crush مع مهارة مدمجة للتهيئة الذاتية. ملف `crushrc` هو سكربت Bash مع أوامر مدمجة خاصة بـ Crush، مما يوفر سلوكاً متطابقاً عبر جميع المنصات بما في ذلك Windows. تُطبَّق أولوية التهيئة على الإعدادات المحلية للمشروع قبل الإعدادات العامة. لا يزال تنسيق تهيئة JSON الأقدم مدعوماً لكنه مهجور.