Skip to content

RyuCode-Digital-Solution/AI-Commit

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

45 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๐Ÿค– AI Commit

Language Bahasa License Python

An AI-powered commit tool that generates high-quality commit messages and supports multi-project workspaces

AI Commit is a Python utility that leverages the power of AI (Gemini & ChatGPT) to analyze your code changes and automatically generate commit messages that follow the Conventional Commits standard.

Demo


โœจ Key Features

  • ๐Ÿ” Auto-Scan โ€“ Automatically scans repositories when the app starts
  • ๐ŸŽฏ Visual Selection โ€“ Select repositories and files with your mouse
  • ๐Ÿค– One-Click AI โ€“ Generate commit messages with a single click
  • ๐Ÿ“Š Real-time Log โ€“ View all activities in the log panel
  • โš™๏ธ Easy Settings โ€“ Toggle AI provider and auto-push options
  • โœ… Batch Selection โ€“ Select all or clear selection with ease
  • ๐ŸŽจ Modern UI โ€“ Clean and intuitive interface
  • ๐ŸŒ™ Dark Mode โ€“ Switch between light and dark themes
  • ๐Ÿ“ Smart File Matching โ€“ Auto-detect similar files if errors occur
  • โš™๏ธ Settings Manager โ€“ Load/save settings from JSON with error handling
  • ๐Ÿ”ง Settings Dialog โ€“ Organized tab-based interface
  • ๐Ÿค– AI Configuration โ€“ Choose custom models and manage API keys
  • ๐Ÿ™ GitHub Integration โ€“ Username and token support for private repositories
  • ๐Ÿ“‚ Repository Management โ€“ Custom parent folder & recent repositories
  • ๐Ÿ”„ Auto Refresh โ€“ Manually refresh to detect file changes
  • ๐ŸŽฏ Better Organization โ€“ All configurations in one place

Workflow

  1. Open the app โ†’ Auto-scan runs automatically
  2. Select a repository from the dropdown (๐Ÿ”ด indicates changes)
  3. Configure Settings (first-time setup) โ€“ Click โš™๏ธ Settings
  4. Select files to commit (or click Select All)
  5. Click "โž• Add to Stage" to stage files
  6. Click "๐Ÿค– Generate with AI" to create commit messages (or write manually)
  7. Review the message in the text area
  8. Click "โœ… Commit & Push" to commit and push changes

Settings Configuration

Access Settings: Click the โš™๏ธ Settings button in the main window

AI Settings Tab
  • AI Provider: Choose between Gemini or ChatGPT
  • API Key: Enter the API key for the chosen provider
  • Model Selection: Select specific models (gemini-1.5-pro, gpt-4, etc.)
GitHub Tab
  • GitHub Username: Your GitHub username
  • GitHub Token: Personal access token for private repos
  • Auto-configure Git: Automatically set git config with credentials
Repository Tab
  • Parent Folder: Custom folder for scanning repositories
  • Recent Repositories: History of previously opened repos
  • Browse Repository: Manually select a repository folder
  • Refresh Button: Manually refresh to detect changes

Dark Mode

The GUI supports light and dark themes for better eye comfort:

How to enable:

  • Toggle the "๐ŸŒ™ Dark Mode" checkbox in the top-right corner
  • The theme instantly updates for all components

Dark Theme:

  • Comfortable dark background (#1e1e1e)
  • Bright text (#ffffff) for contrast
  • Gray frames (#2d2d2d) for clear separation
  • Deep blue accents (#0e639c) for highlights
  • Perfect for night-time or low-light environments

Light Theme:

  • Bright background (#f0f0f0) for well-lit rooms
  • Black text (#000000) for maximum clarity
  • White frames (#ffffff) for a clean look
  • Bright blue accents (#0078d4) for interactions
  • Best for daytime or bright environments

๐Ÿš€ Installation

Prerequisites

  • Python 3.9 or later
  • Git installed
  • API Key from Gemini or OpenAI

Windows


๐Ÿ”‘ Configuration

Gemini API Key (Free โ€“ Recommended)

  1. Go to Google AI Studio
  2. Sign in with your Google account
  3. Click "Create API Key"
  4. Copy the generated key

OpenAI API Key (Paid)

  1. Go to OpenAI Platform
  2. Log in or create an account
  3. Click "Create new secret key"
  4. Copy the generated key

GitHub Token

  1. Go to GitHub Settings > Tokens
  2. Click "Generate new token"
  3. Select scopes: repo and workflow
  4. Copy the generated token

โ“ FAQ

Q: How do I enable Dark Mode in the GUI?

A:

  1. Open the app
  2. In the top-right corner, check the "๐ŸŒ™ Dark Mode" box
  3. Toggle to switch between light and dark themes
  4. The theme updates instantly across the UI

Dark Mode is useful for:

  • Night-time work
  • Reducing eye strain
  • Low-light environments
  • Personal preference

Q: How do I configure the GitHub token?

A:

  1. Click โš™๏ธ Settings
  2. Open the GitHub tab
  3. Enter your GitHub username and token
  4. Check "Auto-configure Git" for automatic setup
  5. Click Save

Q: How do I add a custom parent folder?

A:

  1. Open Settings โ†’ Repository tab
  2. Click "Browse" next to Parent Folder
  3. Select the folder containing your Git repositories
  4. Click Save
  5. The repository dropdown updates automatically

Q: Is this tool free?

A: The tool itself is 100% free and open-source. For AI usage:

  • Gemini API: Free with a generous daily quota (recommended)
  • OpenAI API: Paid, around $0.002 per commit

Q: Is my data safe?

A:

  • โœ… Only git diff (code changes) is sent to the AI
  • โœ… No data is stored on external servers
  • โœ… API keys and settings are stored locally
  • โš ๏ธ Do not commit files containing secrets/passwords/tokens

๐Ÿค Contributing

Contributions are always welcome!

How to Contribute:

  1. Fork the repository
  2. Create a feature branch
    git checkout -b feature/CoolFeature
  3. Commit your changes
    git commit -m 'feat: add cool feature'
  4. Push to the branch
    git push origin feature/CoolFeature
  5. Create a Pull Request

๐Ÿ™ Credits

  • AI Providers:
  • Standards:
  • Inspired by:
    • aicommits by Nutlope
    • GitHub Copilot

๐Ÿ“ž Support & Contact

Found a Bug?

  • ๐Ÿ› Open an issue with the label bug
  • Include error messages and reproduction steps

Have Suggestions?

  • ๐Ÿ’ก Open an issue with the label enhancement
  • Describe the use case and expected behavior

Need Help?

  • ๐Ÿ“– Read FAQ and Troubleshooting above
  • ๐Ÿ’ฌ Open an issue with the label question
  • ๐Ÿ“ง Email: dev@ryucode.com

Built with โค๏ธ for developers who value clean commit history

โญ Star this repository if you find it useful!

๐Ÿš€ Happy Committing with AI!


๐Ÿ‡ฎ๐Ÿ‡ฉ Baca dalam Bahasa Indonesia

About

AI-powered automatic commit tool that generates quality commit messages and supports multi-project workspace

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •