
أداة CLI مدعومة بالذكاء الاصطناعي تراجع الكود بحثًا عن الثغرات الأمنية والأخطاء والأنماط المعاكسة باستخدام نماذج اللغات الكبيرة. تدعم المزودين المحليين والسحابيين، وgit diffs، والتكامل مع CI/CD.
مراجعة الكود المدعومة بالذكاء الاصطناعي في الطرفية الخاصة بك.
أمر واحد. تغذية راجعة فورية. يكتشف الثغرات الأمنية، الأخطاء، والأنماط السيئة قبل أن تصل إلى الإنتاج.
تثبيت · البدء السريع · الاستخدام · المزوّدون · المساهمة
يرسل codereview الكود الخاص بك إلى LLM ويعيد مراجعة منظمة وملونة مباشرة في الطرفية الخاصة بك — مع تصنيفات الشدة وإشارات الأسطر واقتراحات إصلاح ملموسة.
لا متصفح. لا حاجة لـ PR. لا انتظار لزملاء الفريق. فقط:
codereview app.py
git clone https://github.com/jaydendancer12/ai-code-review.git
cd ai-code-review
./install.sh
أو يدويًا:
git clone https://github.com/jaydendancer12/ai-code-review.git
cd ai-code-review
pip install -e .
يتم تثبيت جميع التبعيات (rich, requests) تلقائيًا. لا شيء آخر لتكوينه.
يحتاج codereview إلى LLM لتحليل الكود الخاص بك. أسرع خيار مجاني هو Groq — بدون بطاقة ائتمان، لا نسخة تجريبية، مجاني فقط.
export GROQ_API_KEY="gsk_your_key_here"
لجعله دائمًا (حتى لا تضطر لتعيينه في كل جلسة طرفية):
# لـ zsh (الافتراضي على Mac)
echo 'export GROQ_API_KEY="gsk_your_key_here"' >> ~/.zshrc
source ~/.zshrc
# لـ bash (الافتراضي على Linux)
echo 'export GROQ_API_KEY="gsk_your_key_here"' >> ~/.bashrc
source ~/.bashrc
codereview --init groq
codereview yourfile.py
هذا كل شيء. أنت تقوم بمراجعات كود بالذكاء الاصطناعي.
هل هذه أول مرة تشغله؟ فقط اكتب codereview بدون وسائط وسيرشدك خلال الإعداد بالكامل.
codereview app.py
codereview src/auth.py src/db.py src/api.py
git add .
codereview --staged
codereview --last 3
codereview --diff origin/main
cat suspicious_code.py | codereview --stdin
codereview app.py --model gpt-4
codereview app.py --provider ollama
codereview --setup
يعمل codereview مع أي واجهة برمجة تطبيقات متوافقة مع OpenAI. اختر ما يناسبك:
export GROQ_API_KEY="gsk_your_key_here"
codereview --init groq
# 1. تثبيت Ollama
# Mac: قم بالتحميل من https://ollama.com
# Linux: curl -fsSL https://ollama.com/install.sh | sh
# 2. سحب نموذج
ollama pull llama3
# 3. تشغيل الخادم
ollama serve
# 4. التهيئة (لا حاجة لمفتاح API)
codereview --init ollama
export OPENAI_API_KEY="sk-..."
codereview --init openai
export ANTHROPIC_API_KEY="sk-ant-..."
codereview --init anthropic
يتم تخزين الإعدادات في ~/.codereview/config.json:
{
"provider": "groq",
"model": "llama-3.3-70b-versatile",
"base_url": "https://api.groq.com/openai/v1",
"max_tokens": 2048,
"temperature": 0.2
}
لا يتم تخزين مفاتيح API مطلقًا في ملف الإعدادات. يتم قراءتها من متغيرات البيئة فقط.
export CODEREVIEW_API_KEY="any-key" # تجاوز شامل
export CODEREVIEW_MODEL="gpt-4" # تجاوز النموذج
codereview app.py --model gpt-4 --provider openai
الكود الخاص بك --> واجهة سطر الأوامر لـ codereview --> LLM API --> مخرجات طرفية منظمة
(ملف/فرق) (منشئ الاستفسار) (أي مزوّد) (نتائج ملونة)
codereview ملفك، فرق git، التغييرات المُعدّة، أو الإدخال القياسي$ codereview api/auth.py
النتيجة: 3/10
🔴 حرجة — سر JWT مشفر في الكود
المفتاح السري مشفر في الكود في السطر 12.
الاقتراح: استخدم متغير بيئة: os.environ["JWT_SECRET"]
🔴 حرجة — لا تجزئة لكلمة المرور
كلمات المرور مخزنة بنص عادي في السطر 34.
الاقتراح: استخدم bcrypt: bcrypt.hashpw(password, bcrypt.gensalt())
🟡 تحذير — الرمز المميز لا ينتهي صلاحيته أبدًا
رموز JWT لا تحتوي على تاريخ انتهاء.
الاقتراح: أضف مطلب exp مع timedelta
$ git add .
$ codereview --staged
النتيجة: 8/10
🔵 معلومات — فكر في إضافة معالجة للأخطاء
نقطة النهاية API الجديدة لا تلتقط ConnectionError.
الاقتراح: لفها في try/except مع منطق إعادة المحاولة.
$ codereview --last 3
النتيجة: 9/10
⚪ أسلوب — تسمية غير متناسقة
خليط من snake_case وcamelCase في utils.py
الاقتراح: التزم بـ snake_case وفقًا لـ PEP 8.
أضف إلى سير عمل GitHub Actions الخاص بك:
name: Code Review
on: [pull_request]
jobs:
review:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- uses: actions/setup-python@v5
with:
python-version: "3.10"
- run: pip install ai-code-review
- run: codereview --diff origin/main
env:
GROQ_API_KEY: ${{ secrets.GROQ_API_KEY }}
ai-code-review/
├── codereview/
│ ├── __init__.py # الإصدار
│ ├── cli.py # واجهة سطر الأوامر + الإعداد لأول تشغيل
│ ├── reviewer.py # استدعاءات LLM API + تحليل الاستجابة
│ ├── formatter.py # تنسيق المخرجات الطرفية الغنية
│ ├── git_utils.py # أدوات استخراج ملفات/فروق git
│ └── config.py # إدارة الإعدادات + معالجة مفاتيح API
├── tests/
│ ├── test_reviewer.py # اختبارات تحليل المراجعة
│ └── test_git_utils.py # اختبارات أدوات git
├── setup.py
├── pyproject.toml
├── LICENSE
└── README.md
لم تقم بتعيين مفتاح API الخاص بك. أسرع خيار مجاني:
# 1. احصل على مفتاح مجاني على https://console.groq.com
# 2. عيّنه:
export GROQ_API_KEY="gsk_your_key_here"
codereview --init groq
يتم حظر عميل HTTP الخاص بك بواسطة Cloudflare. تأكد من أنك محدث:
git pull
pip install -e .
تم إهمال النموذج. أعد التهيئة للحصول على أحدث نموذج:
codereview --init groq
خادم Ollama لا يعمل:
ollama serve
ثم حاول مرة أخرى في طرفية جديدة.
لم يتم تثبيت التبعيات. قم بتشغيل:
pip install rich requests
أو أعد التثبيت:
pip install -e .
لم يقم التثبيت بإضافته إلى PATH الخاص بك. استخدم مباشرة:
python3 -m codereview.cli yourfile.py
أو أنشئ اسمًا مستعارًا:
echo 'alias codereview="python3 -m codereview.cli"' >> ~/.zshrc
source ~/.zshrc
مرحبًا بطلبات السحب! هذا المشروع يتم صيانته بنشاط.
git clone https://github.com/jaydendancer12/ai-code-review.git
cd ai-code-review
pip install -e .
pip install pytest
pytest -v
MIT — راجع LICENSE
إذا أنقذك codereview من خطأ، فامنحه ⭐
بُني بواسطة Jayden Dancer
| الشدة | ما يجده | مثال |
|---|
| 🔴 حرجة | ثغرات أمنية، فقدان بيانات، أعطال | حقن SQL، eval() على إدخال المستخدم، أسرار مشفرة في الكود |
| 🟡 تحذير | أخطاء، معالجة مفقودة للأخطاء، ظروف تسابق | قسمة على صفر، استثناءات غير معالجة، تسرب الموارد |
| 🔵 معلومة | تحسينات أداء، أنماط أفضل | تخصيصات غير ضرورية، تخزين مؤقت مفقود، استعلامات N+1 |
| ⚪ أسلوب | التسمية، التنسيق، التوثيق | توثيق مفقود، تسمية غير متناسقة، كود ميت |