عن المشروع

AI Commits هي أداة سطر أوامر تولّد رسائل Git commit من تغييراتك المُجهّزة باستخدام مزوّد ذكاء اصطناعي تختاره. وهي موزّعة على npm وتتطلب Node.js الإصدار 22 أو أحدث. يبدأ الإعداد بتثبيت عام (`npm install -g aicommits`) يتبعه `aicommits setup`، الذي يرشدك خلال اختيار المزوّد وتهيئة مفتاح API واختيار النموذج وصيغة رسالة commit المفضلة. تشمل المزوّدات المدعومة TogetherAI وOpenAI وGroq وxAI وOpenRouter وOllama (محلي) وLM Studio (محلي) وأي نقطة نهاية مخصصة متوافقة مع OpenAI. يمكن أيضًا كتابة الإعدادات مباشرة لاستخدامها في CI/CD عبر `aicommits config set`. الاستخدام المعتاد هو تجهيز الملفات عبر `git add` ثم تشغيل `aicommits`. تُمرَّر الأعلام غير المعروفة إلى `git commit`. تشمل خيارات سطر الأوامر البارزة `--all` لتجهيز التغييرات المتعقَّبة، و`--clipboard` لنسخ الرسالة بدلًا من إجراء commit، و`--generate` لإنتاج عدة رسائل مرشّحة، و`--exclude` لاستبعاد ملفات من التحليل، و`--description` لإضافة متن، و`--type` لاختيار صيغة، و`--prompt` لتعليمات مخصصة، و`--no-verify` لتجاوز الـ hooks، و`--yes` لتخطي التأكيد. ويتوفر اختصار باسم `aic`. تتوفر خمس صيغ لرسائل commit: plain وconventional وconventional+body وgitmoji وsubject+body. يمكن للمطالبات المخصصة توجيه اللغة أو النبرة أو التركيز. يمكن تثبيت Git hook من نوع `prepare-commit-msg` عبر `aicommits hook install` بحيث تولّد استدعاءات `git commit` العادية رسالة تُفتح في محرّرك للمراجعة. تُحلّ الإعدادات بالترتيب التالي: وسائط سطر الأوامر، ثم متغيرات البيئة، ثم ملف الإعدادات، ثم القيم الافتراضية. تشمل الإعدادات OPENAI_API_KEY وOPENAI_BASE_URL وOPENAI_MODEL وprovider وlocale وgenerate count وtimeout وmax-length وtype. وتدير أوامر مثل `aicommits config` و`aicommits config get` و`aicommits config set` و`aicommits model` و`aicommits update` الإعدادات والترقيات. تقرأ الأداة لقطة Git المُجهّزة فقط، لذا لا تُرسل التعديلات غير المُجهّزة إلى النموذج. يذكر README أن توليد عدة رسائل يستهلك رموزًا أكثر وبالتالي يكلّف أكثر.