Simplify your Git workflows with AI-generated commit messages, branch names, and more.
π€ Smart Commit Messages - Generate meaningful commit messages following conventional commit standards
πΏ Intelligent Branch Names - Create descriptive branch names based on your changes
π Issue Tracker Integration - Link commits to issues automatically
π Changelog Generation - Auto-generate changelogs from Git history
π Multi-language Support - Support for 15+ languages and locales
βοΈ Configurable - Customize prompts, formats, AI models, and behavior
π― Multiple AI Models - Choose from GPT-4o, GPT-4o-mini, GPT-3.5-turbo, and more
# Add the Combo tap
brew tap tolgaOzen/tap
# Install Combo
brew install combo
# Verify installation
combo versionDownload the latest release from GitHub Releases.
git clone https://github.com/tolgaOzen/combo.git
cd combo
make build-
Set up your OpenAI API key:
combo config set openai_api_key sk-your-api-key-here -
Optional: Choose your AI model (default: gpt-4o-mini):
combo config set openai_model gpt-4o-mini # Best balance # combo config set openai_model gpt-4o # Highest quality # combo config set openai_model gpt-3.5-turbo # Most cost-effective
-
Stage some changes:
git add . -
Generate and commit:
combo commit
| Command | Description | Example |
|---|---|---|
combo commit |
Generate AI-powered commit messages | combo commit |
combo branch |
Create intelligent branch names | combo branch |
combo config |
Manage configuration settings | combo config set key value |
combo version |
Show version information | combo version |
Generate conventional commit messages based on your staged changes:
combo commitInteractive Preview:
Generating your commit message...
Here's your commit message:
β€ feat(auth): add OAuth2 integration with Google provider
Would you like to use this message? (Y/n):
Commit Types Supported:
feat- New featuresfix- Bug fixesdocs- Documentation changesstyle- Code style changesrefactor- Code refactoringtest- Adding testschore- Maintenance tasks
Create descriptive branch names from your changes:
combo branchExample Output:
feat/oauth2-google-integration
fix/memory-leak-user-service
docs/api-authentication-guide
Combo stores configuration in ~/.combo/config. The file is created automatically with defaults.
| Setting | Description | Default | Example |
|---|---|---|---|
openai_api_key |
Your OpenAI API key | Required | sk-xxx... |
openai_model |
OpenAI model to use | gpt-4o-mini |
gpt-4o-mini, gpt-4o, gpt-3.5-turbo |
prompt_locale |
Language for prompts | en-US |
en-US, fr-FR, es-ES |
prompt_max_length |
Max commit message length | 72 |
50, 72, 100 |
# Set configuration values
combo config set openai_api_key sk-your-key-here
combo config set openai_model gpt-4o-mini
combo config set prompt_locale en-US
combo config set prompt_max_length 72
# Get configuration values
combo config get openai_api_key
combo config get openai_model
combo config get prompt_locale| Language | Code | Language | Code |
|---|---|---|---|
| English (US) | en-US |
Korean | ko-KR |
| English (UK) | en-GB |
Japanese | ja-JP |
| French | fr-FR |
Chinese (Simplified) | zh-CN |
| Spanish | es-ES |
Chinese (Traditional) | zh-TW |
| German | de-DE |
Portuguese (Brazil) | pt-BR |
| Italian | it-IT |
Russian | ru-RU |
| Arabic | ar-SA |
Hindi | hi-IN |
| Model | Description | Cost | Speed | Quality |
|---|---|---|---|---|
gpt-4o-mini |
Default - Best balance of cost and quality | Low | Fast | High |
gpt-4o |
Latest and most capable model | High | Medium | Highest |
gpt-4-turbo |
High-quality with good speed | High | Medium | High |
gpt-4 |
Original GPT-4 model | High | Medium | High |
gpt-3.5-turbo |
Fast and cost-effective | Very Low | Very Fast | Good |
Recommendations:
- Default:
gpt-4o-mini- Perfect for most use cases - High Quality:
gpt-4o- For complex or critical commits - Budget:
gpt-3.5-turbo- For high-volume usage
# 1. Make your changes
echo "console.log('Hello World');" > app.js
# 2. Stage changes
git add .
# 3. Generate commit message
combo commit
# Output: feat: add hello world console output
# 4. Create a new branch for next feature
combo branch
# Output: feat/user-authentication
# 5. Switch to the new branch
git checkout feat/user-authentication- Git: Version 2.0 or higher
- OpenAI API Key: Required for AI-powered features (Get yours here)
- Internet Connection: For API calls to OpenAI
# Solution: Set your OpenAI API key
combo config set openai_api_key sk-your-key-here# Solution: Stage your changes first
git add .
# Then run combo commit# Solution: Ensure you're in a git repository
git init
# Or check if git is installed
git --version# Solution: Use a supported model
combo config set openai_model gpt-4o-mini
# Check available models in the Supported OpenAI Models section aboveEnable verbose logging for troubleshooting:
export COMBO_DEBUG=1
combo commitWe welcome contributions! Here's how to get started:
-
Fork the repository
-
Create a feature branch:
git checkout -b feature/amazing-feature
-
Make your changes and commit:
combo commit # Use combo to generate your commit message! -
Push to your branch:
git push origin feature/amazing-feature
-
Open a Pull Request
# Clone the repository
git clone https://github.com/tolgaOzen/combo.git
cd combo
# Install dependencies
go mod tidy
# Run tests
make test
# Build the project
make build
# Run linters
make lint-all- Follow Go conventions and
gofmt - Add tests for new functionality
- Update documentation for any API changes
- Use conventional commits for your contributions
- Fast: Commit message generation typically takes 1-3 seconds
- Lightweight: Binary size ~10MB
- Efficient: Minimal API calls with smart caching
- Offline-ready: Configuration and Git operations work offline
- API keys are stored securely in
~/.combo/config - Configuration files are created with restrictive permissions (0750)
- No sensitive data is sent to external services except OpenAI API
- All file operations are validated and sanitized
- Support for additional AI providers (Claude, Gemini)
- GitHub/GitLab integration for automatic PR descriptions
- Team-based configuration sharing
- Plugin system for custom commit types
- Advanced diff analysis and suggestions
- Integration with popular IDEs
- Issues: GitHub Issues
- Discussions: GitHub Discussions
- Documentation: Wiki
Combo is licensed under the MIT License. See the LICENSE file for more details.
Made with β€οΈ by Tolga Ozen
β Star this project if you find it helpful!