ملخص سريع
- قم بتثبيت Aider باستخدام
pip install aider-chatوقم بإعداد مفتاح واجهة برمجة التطبيقات للـ LLM (OpenAI/Anthropic/Ollama). - أضف الملفات للسياق باستخدام
/add <file>أو/add --allلمشاركة المستودع بالكامل. - استخدم
/diffللتعديلات الدقيقة، و/wholeلإعادة كتابة الملف بالكامل، و/architectلإعادة الهيكلة عبر ملفات متعددة. - التكامل مع Git يقوم بعمل commits تلقائياً مع رسائل وصفية.
- قم بتكوين
.aider.conf.ymlلحفظ إعدادات النموذج والسلوكيات الافتراضية.
1. التثبيت وإعداد النموذج
تثبيت Aider
# macOS/Linux (يتطلب Python 3.9+)
python -m pip install --upgrade aider-chat
# Windows (PowerShell)
python -m pip install --upgrade aider-chat
# التحقق من التثبيت
aider --version
# المخرجات المتوقعة: aider 0.36.0
ملاحظة هامة: إذا ظهرت رسالة command not found، تأكد من إضافة ~/.local/bin إلى متغير PATH:
export PATH=$PATH:~/.local/bin # أضف إلى ~/.bashrc أو ~/.zshrc
إعداد LLM
يدعم Aider OpenAI، Anthropic، Mistral، والنماذج المحلية عبر Ollama. اختر واحداً:
الخيار 1: OpenAI (GPT-4o)
- احصل على مفتاح واجهة برمجة التطبيقات من OpenAI.
- قم بتعيين المفتاح كمتغير بيئة:
export OPENAI_API_KEY="مفتاحك-هنا" - ابدأ Aider:
aider
الخيار 2: Anthropic (Claude 3.5 Sonnet)
- احصل على مفتاح واجهة برمجة التطبيقات من Anthropic.
- قم بتعيين المفتاح والنموذج:
export ANTHROPIC_API_KEY="مفتاحك-هنا" aider --model claude-3-5-sonnet-20240620
الخيار 3: النماذج المحلية (Ollama)
- قم بتثبيت Ollama وسحب نموذج:
ollama pull llama3 - ابدأ Aider باستخدام النموذج المحلي:
aider --model ollama/llama3
المخرجات المتوقعة:
Aider v0.36.0
Model: claude-3-5-sonnet-20240620 with diff edit format
Git repo: .git with 12 files
Repo-map: using 1.2MB of 2.0MB
استخدم /help لعرض الأوامر داخل الدردشة.
2. إضافة الملفات للسياق
يحتاج Aider إلى "رؤية" الكود الخاص بك لتعديله. استخدم هذه الأوامر في الدردشة:
| الأمر | الوصف |
|---|---|
/add <file> | إضافة ملف واحد للسياق (مثلاً، /add src/main.py). |
/add --all | إضافة جميع الملفات في المستودع (استخدم بحذر—قد يتجاوز حدود سياق LLM). |
/drop <file> | إزالة ملف من السياق. |
/ls | قائمة الملفات الموجودة حالياً في السياق. |
مثال على سير العمل:
# ابدأ Aider في مجلد المشروع
cd ~/projects/my-app
aider
# إضافة الملفات الرئيسية للسياق
/add src/utils.py
/add tests/test_utils.py
ملاحظة هامة: قد يؤدي المستودع الكبير (10K+ ملف) إلى بطء Aider. استخدم /add بشكل انتقائي للملفات ذات الصلة بالمهمة.
3. أوضاع التحرير
يوفر Aider ثلاثة أوضاع للتحرير. اختر بناءً على احتياجات الدقة:
1. /diff (الافتراضي)
- يعرض فرق التغييرات المقترحة قبل تطبيقها.
- الأفضل للتعديلات الصغيرة والدقيقة.
مثال:
المستخدم: /diff
Aider: صف التغيير الذي تريده...
المستخدم: أعد هيكلة الدالة `validate_input` لاستخدام عمليات الإرجاع المبكرة.
المخرجات المتوقعة:
- def validate_input(data):
- if not data:
- return False
- if len(data) > 100:
- return False
- return True
+ def validate_input(data):
+ if not data:
+ return False
+ if len(data) > 100:
+ return False
+ return True
اكتب y لتطبيق التغييرات.
2. /whole
- يعيد كتابة الملف بالكامل.
- استخدم لإعادة الهيكلة الكبيرة أو عندما يكون
/diffمقيداً للغاية.
مثال:
المستخدم: /whole src/utils.py
Aider: ما التغييرات التي تريد إجراؤها على هذا الملف؟
المستخدم: أعد كتابة الملف لاستخدام تلميحات النوع وإضافة docstrings.
3. /architect
- إعادة هيكلة عبر ملفات متعددة مع توجيه عالي المستوى.
- الأفضل للتغييرات عبر الملفات (مثلاً، "انقل منطق المصادقة إلى وحدة جديدة").
مثال:
المستخدم: /architect
Aider: ما التغيير المعماري الذي تريد إجراؤه؟
المستخدم: قسم الملف الضخم `handlers.py` إلى ملفات منفصلة لكل مسار.
4. التكامل مع Git والـ Auto-Commits
يقوم Aider بعمل commits تلقائياً مع رسائل وصفية. قم بتكوين ذلك في .aider.conf.yml:
# .aider.conf.yml
git:
auto_commits: true
commit_message: "aider: {message}" # تخصيص تنسيق رسالة الـ commit
الأوامر:
| الأمر | الوصف |
|---|---|
/git | عرض حالة Git. |
/commit | عمل commit يدوي للتغييرات المرحلية. |
/undo | التراجع عن آخر تغيير (يستخدم git reset). |
ملاحظة هامة: قد تؤدي الـ auto-commits إلى ازدحام السجل. استخدم /commit للتحكم اليدوي أو قم بضغطها لاحقاً:
git rebase -i HEAD~5 # ضغط commits الخاصة بـ Aider
5. استخدام النماذج المحلية عبر Ollama
لأسباب تتعلق بالخصوصية أو توفير التكاليف، استخدم النماذج المحلية:
- قم بتثبيت Ollama وسحب نموذج:
ollama pull codellama:7b - ابدأ Aider باستخدام النموذج المحلي:
aider --model ollama/codellama:7b - (اختياري) قم بتكوين الإعدادات الافتراضية في
.aider.conf.yml:model: ollama/codellama:7b
نصيحة للأداء: استخدم النماذج الأصغر (مثل codellama:7b) للحصول على استجابات أسرع، لكن توقع دقة أقل مقارنة بـ GPT-4o.
6. سير العمل لتحرير ملفات متعددة
يتفوق Aider في التغييرات عبر الملفات. مثال:
المهمة: إضافة تسجيل الدخول إلى وحدة
- أضف الملفات ذات الصلة للسياق:
/add src/app.py /add src/utils/logger.py - صف التغيير:
أضف تسجيل الدخول التصحيحي لجميع الدوال في `app.py`. استخدم المسجل من `utils/logger.py`. - سيقوم Aider بـ:
- استيراد المسجل في
app.py. - إضافة استدعاءات
logger.debug()لكل دالة. - تحديث
logger.pyإذا لزم الأمر (مثلاً، إضافة طريقة تصحيح).
- استيراد المسجل في
ملاحظة هامة: قد تفشل التعديلات عبر الملفات إذا فقد LLM السياق. قسم المهام الكبيرة إلى خطوات أصغر.
7. التكوين وملف .aider.conf.yml
احفظ الإعدادات في .aider.conf.yml لتجنب تكرار الخيارات:
# .aider.conf.yml
model: claude-3-5-sonnet-20240620
dark_mode: true
git:
auto_commits: true
commit_message: "aider: {message}"
cache:
enabled: true # تخزين استجابات LLM للاستعلامات المتشابهة
الإعدادات الرئيسية:
| الإعداد | الوصف | الافتراضي |
|---|---|---|
model | LLM الافتراضي (مثلاً، gpt-4o، ollama/llama3). | gpt-4o |
dark_mode | تفعيل الوضع الداكن في الطرفية. | false |
cache.enabled | تخزين استجابات LLM لتوفير التكاليف. | false |
lint_cmd | الأمر الذي يتم تشغيله بعد التعديلات (مثلاً، ruff check). | null |
نصيحة احترافية: استخدم aider --dump-config لإنشاء ملف تكوين ابتدائي.
بدائل على لمحة سريعة
| الأداة | الأفضل لـ | الفرق الرئيسي |
|---|---|---|
| Cursor | سير العمل القائم على واجهة المستخدم | يتضمن مصحح أخطاء مدمج، تعاون في الوقت الفعلي |
| GitHub Copilot | اقتراحات الكود السريعة | تكامل مع بيئة التطوير، تركيز على ملف واحد |
| Aider | التعديلات عبر ملفات متعددة، تكامل مع Git | يعتمد على CLI، يدعم نماذج متعددة، مفتوح المصدر |
ما الخطوة التالية؟
- جرب إعادة هيكلة صغيرة: استخدم
/diffلتعديل دالة واحدة في قاعدة الكود الخاصة بك. - قم بإعداد الـ auto-commits: قم بتكوين
.aider.conf.ymlلعمل commits تلقائي بالتنسيق المفضل لديك. - استكشف النماذج المحلية: قم بتثبيت Ollama واختبر
codellama:7bللحصول على مساعدة في البرمجة بدون تكلفة.
بالنسبة للفرق التي تتبنى Aider، تقدم Hyperion Consulting استشارات أدوات الذكاء الاصطناعي لدمجها في مسارات CI/CD وسير العمل الأمنية—بما يتماشى مع إطار عمل وضع أمن الذكاء الاصطناعي لـ PROTECT (ضوابط الوصول) وCOMPLY (تسجيل التدقيق) المرحلتين.
