AI Auto-Committer is a powerful desktop application that streamlines your Git workflow by automatically generating meaningful commit messages using AI. It features a modern, user-friendly interface built with CustomTkinter and supports multiple AI providers including Gemini, OpenAI, and Ollama.
- 🤖 AI-Powered Commit Messages - Generate contextual commit messages from your code changes
- 🎨 Modern GUI - Beautiful, responsive interface with light/dark theme support
- 📁 Selective File Staging - Choose which files to include in your commit
- 🔄 Git Operations - Push, pull, and view current branch directly from the app
- 🌐 Multiple AI Providers - Support for Gemini, OpenAI, and Ollama
- ⚙️ Customizable - Configure API keys, models, and system prompts
- 📊 Diff Viewer - Tabbed interface to review changes before committing
📥 Download AI_Auto_Committer.exe
- Download the executable from the link above
- Run
AI_Auto_Committer.exe - Configure your API key and AI provider in Settings (⚙️)
- Start committing!
- Python 3.8 or higher
- Git installed and configured
- API key for your chosen AI provider (Gemini, OpenAI, or Ollama)
-
Clone the repository
git clone https://github.com/eliau2005/AI_Auto_Committer.git cd AI_Auto_Committer -
Install dependencies
pip install -r requirements.txt
-
Run the application
python main.py
-
Configure settings
- Click the Settings button (⚙️) in the top-right corner
- Enter your API key
- Select your AI provider and model
- (Optional) Customize the system prompt
- Choose your preferred theme (Light/Dark)
The application requires the following Python packages:
- customtkinter - Modern UI framework
- Pillow - Image processing for icons
- google-generativeai - Gemini AI integration
- openai - OpenAI API integration
- requests - HTTP requests for Ollama
All dependencies are listed in requirements.txt and will be installed automatically.
To build your own executable:
python build_exe.pyThe executable will be created in the dist/ folder.
-
Select Repository
- Use the dropdown menu to select a recent repository
- Or click "Browse..." to select a new repository
-
Review Changes
- View changed files in the sidebar
- Select/deselect files to include in the commit
- Review diffs in the tabbed viewer
-
Generate Commit Message
- Click "✨ Generate AI Message"
- The AI will analyze your changes and create a commit message
- Edit the title and description as needed
-
Commit
- Click "Commit to [branch]" to commit your changes
- Use Push/Pull buttons to sync with remote
- Gemini - Google's Gemini AI (requires API key)
- OpenAI - ChatGPT and GPT models (requires API key)
- Ollama - Local AI models (no API key needed)
User settings are stored in settings.json (not tracked in Git for privacy).
Choose exactly which files to include in your commit with checkboxes in the sidebar.
View up to 8 file diffs simultaneously in a tabbed interface with syntax highlighting for additions and deletions.
Switch between Light and Dark themes to match your preference.
See your current branch at a glance and perform push/pull operations without leaving the app.
Contributions are welcome! Feel free to:
- Report bugs
- Suggest new features
- Submit pull requests
This project is licensed under the MIT License.
Eliau Elkouby - @eliau2005