
Security News
Another Round of TEA Protocol Spam Floods npm, But It’s Not a Worm
Recent coverage mislabels the latest TEA protocol spam as a worm. Here’s what’s actually happening.
smart-commits-ai
Advanced tools
Secure AI-powered Git commit message generator with enterprise-grade security. Automatically creates conventional commit messages using Groq, OpenRouter, or Cohere APIs. Source: https://github.com/Joshi-e8/ai-commit-generator.git
AI-powered commit messages for ANY project - React, Flutter, Go, Python, and more!
Transform your Git workflow with AI that understands your code changes and generates perfect conventional commit messages. Works with any programming language and any project type.
This tool works as a Git pre-commit hook that analyzes your staged changes and generates professional commit messages using AI APIs (Groq, OpenRouter, Cohere).
# Universal installer - works on macOS, Linux, Windows
curl -fsSL https://raw.githubusercontent.com/Joshi-e8/ai-commit-generator/main/install.sh | bash
# Install via NPM (no Python knowledge required)
npm install -g smart-commits-ai
# Or use without global install
npx smart-commits-ai install
# Works everywhere, no local setup needed
docker run --rm -v $(pwd):/workspace joshi/smart-commits-ai install
# For Python developers
pip install smart-commits-ai
| Method | Best For | Setup Time | Dependencies |
|---|---|---|---|
| One-Line Script | Any team | 30 seconds | Auto-detected |
| NPM Package | JS/React/Node teams | 15 seconds | Node.js |
| Docker | DevOps/Containerized | 20 seconds | Docker only |
| Python Package | Python developers | 10 seconds | Python 3.8+ |
Choose your preferred AI provider:
# Navigate to ANY Git repository (React, Flutter, Go, Python, etc.)
cd your-awesome-project
# Install Git hook
smart-commits-ai install
# Add your API key
echo "GROQ_API_KEY=your_key_here" >> .env
# Normal Git workflow - AI handles the message!
git add src/components/Button.js
git commit # ✨ AI generates: "feat(ui): add Button component with hover effects"
That's it! Every git commit now uses AI. 🎉
# Install via NPM (feels native to JS developers)
npm install smart-commits-ai
npx smart-commits-ai install
# Example AI-generated commits:
# feat(components): add responsive navigation bar with mobile menu
# fix(api): resolve authentication token refresh issue
# style(ui): update button hover animations and color scheme
# One-line install
curl -fsSL https://raw.githubusercontent.com/Joshi-e8/ai-commit-generator/main/install.sh | bash
# Example AI-generated commits:
# feat(widgets): implement custom date picker with theme support
# fix(navigation): resolve back button behavior on Android
# perf(images): optimize asset loading and caching strategy
# Docker approach (no dependencies)
docker run --rm -v $(pwd):/workspace joshi/smart-commits-ai install
# Example AI-generated commits:
# feat(api): add user authentication middleware with JWT
# fix(db): resolve connection pool timeout issues
# refactor(handlers): improve error handling and logging
# Universal installer
bash <(curl -fsSL https://raw.githubusercontent.com/Joshi-e8/ai-commit-generator/main/install.sh)
# Works with: Python, C++, C#, PHP, Ruby, Swift, Kotlin, and more!
type(scope): description format# Your changes: Added a new Button component with TypeScript
git add src/components/Button.tsx
git commit
# 🤖 AI generates: "feat(components): add Button component with TypeScript and hover animations"
# Your changes: Fixed navigation issue on Android
git add lib/screens/home_screen.dart
git commit
# 🤖 AI generates: "fix(navigation): resolve back button behavior on Android devices"
# Your changes: Added user authentication middleware
git add src/middleware/auth.go
git commit
# 🤖 AI generates: "feat(auth): implement JWT middleware with role-based access control"
# Your changes: Added indexes for better performance
git add migrations/add_user_indexes.sql
git commit
# 🤖 AI generates: "perf(db): add indexes on user table for faster queries"
{
"devDependencies": {
"smart-commits-ai": "^1.0.4"
},
"scripts": {
"postinstall": "smart-commits-ai install",
"commit": "git commit"
}
}
# Add to team setup docs
echo 'alias smart-commits="docker run --rm -v $(pwd):/workspace joshi/smart-commits-ai"' >> ~/.bashrc
# .github/workflows/commits.yml
- uses: joshi-e8/smart-commits-ai-action@v1
with:
api_key: ${{ secrets.GROQ_API_KEY }}
ai-commit-generator/
├── README.md # This file
├── TEAM_SETUP_GUIDE.md # Detailed team documentation
├── pyproject.toml # Python package configuration
├── src/
│ └── ai_commit_generator/
│ ├── __init__.py # Package initialization
│ ├── cli.py # Command-line interface
│ ├── core.py # Main commit generation logic
│ ├── config.py # Configuration management
│ ├── api_clients.py # AI API clients
│ └── git_hook.py # Git hook management
├── templates/
│ ├── .commitgen.yml # Configuration template
│ └── .env.example # Environment template
├── tests/ # Test suite
├── examples/ # Usage examples
└── legacy/ # Original bash scripts
├── install_hook.sh # Legacy installer
└── hooks/
└── prepare-commit-msg # Legacy hook script
# Install Git hook in current repository
smart-commits-ai install
# Install with configuration files
smart-commits-ai install --config
# Force overwrite existing hook
smart-commits-ai install --force
# Check installation status
smart-commits-ai status
# Test with current staged changes
smart-commits-ai test
# Uninstall hook
smart-commits-ai uninstall
# Generate message for staged changes
smart-commits-ai generate
# Generate without writing to file (dry run)
smart-commits-ai generate --dry-run
# Generate and save to specific file
smart-commits-ai generate --output commit-msg.txt
# Show current configuration
smart-commits-ai config --show
# Validate configuration
smart-commits-ai config --validate
.env)# Choose one provider
GROQ_API_KEY=gsk_your_key_here
# OPENROUTER_API_KEY=sk-or-your_key_here
# COHERE_API_KEY=your_cohere_key_here
.commitgen.yml)api:
provider: groq
commit:
max_chars: 72
types: [feat, fix, docs, style, refactor, test, chore]
scopes: [api, ui, auth, db, config]
prompt:
template: |
Generate a conventional commit message for:
{{diff}}
# Copy to shared location
cp -r ai-commit-generator /shared/tools/
# Team members install from shared location
/shared/tools/ai-commit-generator/install_hook.sh
# Create internal repo
git init ai-commit-generator
git add .
git commit -m "feat: add AI commit message generator"
git remote add origin https://github.com/your-org/ai-commit-generator.git
git push -u origin main
# Team members clone and install
git clone https://github.com/your-org/ai-commit-generator.git
cd your-project
../ai-commit-generator/install_hook.sh
# Create distributable package
tar -czf ai-commit-generator.tar.gz ai-commit-generator/
# Team members download and extract
curl -sSL https://your-server/ai-commit-generator.tar.gz | tar -xz
./ai-commit-generator/install_hook.sh
prompt:
template: |
You are a senior developer. Generate a commit message for:
{{diff}}
Requirements:
- Use conventional commits
- Be specific about business impact
- Maximum {{max_chars}} characters
# Fast and efficient
GROQ_MODEL=llama-3.1-8b-instant
# More detailed
GROQ_MODEL=llama-3.3-70b-versatile
# Creative (if available)
GROQ_MODEL=gemma2-9b-it
DEBUG_ENABLED=true
tail -f .commitgen.log
| Issue | Solution |
|---|---|
| "API key not found" | Check .env file, ensure correct variable is set |
| "jq: command not found" | Install jq: brew install jq or apt install jq |
| "Rate limit exceeded" | Wait 1 minute or switch to different provider |
| "Hook not working" | Reinstall: ./install_hook.sh |
| "ImportError: dlopen... incompatible architecture" | Apple Silicon Fix: pip3 uninstall -y charset-normalizer requests && pip3 install --no-cache-dir --force-reinstall charset-normalizer requests |
| "ModuleNotFoundError: No module named 'chardet'" | Architecture mismatch: Run the Apple Silicon fix above |
| Provider | Speed | Cost | Models | Best For |
|---|---|---|---|---|
| Groq | ⚡ Very Fast | 🆓 Free | Llama 3, Mixtral | Teams, Daily Use |
| OpenRouter | 🐌 Medium | 💰 Paid | Claude, GPT-4 | Premium Quality |
| Cohere | ⚖️ Fast | 🆓 Free Tier | Command-R | Enterprise |
git checkout -b feature/amazing-featuregit commit -m 'feat: add amazing feature'git push origin feature/amazing-featureMIT License - see LICENSE file for details.
"We migrated our entire React team (12 developers) to Smart Commits AI in one day. Now our commit history is consistent and descriptive!" — Frontend Team Lead
"Works perfectly with our Flutter CI/CD pipeline. No Python knowledge required for the mobile team." — Mobile Developer
"The Docker approach was perfect for our polyglot microservices architecture." — DevOps Engineer
| Team Type | Traditional Approach | With Smart Commits AI |
|---|---|---|
| React/Next.js | Inconsistent messages | Professional conventional commits |
| Flutter/Mobile | "fix", "update" messages | Descriptive widget/feature commits |
| Backend APIs | Generic descriptions | Specific endpoint/middleware commits |
| Full-Stack | Mixed commit styles | Unified team standards |
Transform ANY team's commit messages today! 🚀
Works with React, Flutter, Go, Python, Java, C++, and every other language.
FAQs
Secure AI-powered Git commit message generator with enterprise-grade security. Automatically creates conventional commit messages using Groq, OpenRouter, or Cohere APIs. Source: https://github.com/Joshi-e8/ai-commit-generator.git
We found that smart-commits-ai demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
Recent coverage mislabels the latest TEA protocol spam as a worm. Here’s what’s actually happening.

Security News
PyPI adds Trusted Publishing support for GitLab Self-Managed as adoption reaches 25% of uploads

Research
/Security News
A malicious Chrome extension posing as an Ethereum wallet steals seed phrases by encoding them into Sui transactions, enabling full wallet takeover.