
AI-संचालित CLI टूल जो LLM का उपयोग करके सुरक्षा कमजोरियों, बग्स और एंटी-पैटर्न के लिए कोड की समीक्षा करता है। स्थानीय और क्लाउड प्रदाताओं, git diffs, और CI/CD एकीकरण का समर्थन करता है।
AI-संचालित कोड समीक्षा सीधे आपके टर्मिनल में।
एक कमांड। तुरंत फीडबैक। उत्पादन में जाने से पहले सुरक्षा खामियों, बग्स और खराब पैटर्न को पकड़ता है।
इंस्टॉल · त्वरित आरंभ · उपयोग · प्रदाता · योगदान
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
बस इतना ही। आप AI कोड समीक्षा चला रहे हैं।
पहली बार चला रहे हैं? बिना किसी तर्क के बस 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-संगत API के साथ काम करता है। वह चुनें जो आपके लिए काम करे:
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
Your Code --> codereview CLI --> LLM API --> Structured Terminal Output
(file/diff) (prompt builder) (any provider) (color-coded findings)
$ codereview api/auth.py
Score: 3/10
🔴 CRITICAL — Hardcoded JWT secret
Secret key is hardcoded on line 12.
Suggestion: Use environment variable: os.environ["JWT_SECRET"]
🔴 CRITICAL — No password hashing
Passwords stored in plaintext on line 34.
Suggestion: Use bcrypt: bcrypt.hashpw(password, bcrypt.gensalt())
🟡 WARNING — Token never expires
JWT tokens have no expiration set.
Suggestion: Add exp claim with timedelta
$ git add .
$ codereview --staged
Score: 8/10
🔵 INFO — Consider adding error handling
The new API endpoint doesn't catch ConnectionError.
Suggestion: Wrap in try/except with retry logic.
$ codereview --last 3
Score: 9/10
⚪ STYLE — Inconsistent naming
Mix of snake_case and camelCase in utils.py
Suggestion: Stick to snake_case per 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
या एक alias बनाएँ:
echo 'alias codereview="python3 -m codereview.cli"' >> ~/.zshrc
source ~/.zshrc
PRs का स्वागत है! यह प्रोजेक्ट सक्रिय रूप से बनाए रखा जाता है।
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 क्वेरीज़ |
| ⚪ शैली | नामकरण, फ़ॉर्मेटिंग, दस्तावेज़ीकरण | गुम डॉकस्ट्रिंग, असंगत नामकरण, मृत कोड |