Smart Commit AI

A VS Code extension that generates meaningful Git commit messages using AI. Powered by Gemini and OpenRouter APIs, it helps you write better commit messages with emoji support.
Features
- 🤖 AI-powered commit message generation
- 🎨 Multiple commit message styles:
- Conventional Commits
- Gitmoji
- Custom
- Haiku
- ✨ Automatic emoji support
- 🎯 Smart analysis of staged changes
- 📝 Clean and intuitive UI in the sidebar
- 🔄 Automatic git repository detection
- 📦 First-time setup assistance
Installation
- Open VS Code
- Press
Ctrl+Shift+X
to open the Extensions view
- Search for "Smart Commit"
- Click Install
Configuration
- Get your API key from either:
- Open VS Code Settings (
Ctrl+,
)
- Search for "Smart Commit"
- Enter your API key in the appropriate field
- (Optional) Choose your preferred commit message style
Usage
- Click the commit icon in the VS Code activity bar (left sidebar)
- Stage your changes using Git
- Click "Generate Commit Message" in the sidebar
- Review the generated message
- Click "Commit Changes" to commit with the generated message
Commit Message Styles
Conventional Commits
feat: add user authentication
fix: resolve login page crash
docs: update API documentation
Gitmoji
✨ Add user authentication
🐛 Fix login page crash
📝 Update API documentation
Custom
[Feature] Add user authentication
[Bugfix] Resolve login page crash
[Documentation] Update API documentation
Haiku
Code changes made
Improving the system now
Better than before
Requirements
- VS Code 1.60.0 or higher
- Git repository
- Gemini API key or OpenRouter API key
Extension Settings
smartCommit.geminiApiKey
: Your Gemini API key
smartCommit.openRouterApiKey
: Your OpenRouter API key
smartCommit.style
: Commit message style (conventional, gitmoji, custom, haiku)
smartCommit.useEmoji
: Enable/disable emoji support
Known Issues
Release Notes
0.0.1
Initial release of Smart Commit:
- AI-powered commit message generation
- Multiple commit message styles
- Emoji support
- Sidebar UI
- Git integration
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature
)
- Commit your changes (
git commit -m 'Add some amazing feature'
)
- Push to the branch (
git push origin feature/amazing-feature
)
- Open a Pull Request
License
This project is licensed under the MIT License - see the LICENSE file for details.
Support
If you encounter any issues or have suggestions, please:
- Check the known issues
- Open an issue on GitHub
Acknowledgments