AI-powered commit message generation for Git Extensions
- AI-generated commit messages — generates conventional commit messages from staged diffs
- Auto-fill mode — automatically writes the commit message as you stage/unstage files
- Cancel AI — stops pending generation and restores message editing and the commit buttons
- Commit template — also available as a selectable template in the commit dialog dropdown
- Multiple LLM providers:
- Anthropic (Claude)
- OpenAI
- GitHub Copilot
- Claude Code
- OpenCode
Version 7.x targets Git Extensions 7.2.1 and requires the .NET 10 Desktop Runtime (x64), version 10.0.9 or later 10.x. Use AI Tools 6.x with Git Extensions 6.x.
Install via GitExtensions.PluginManager:
- Open Git Extensions → Tools → Plugin Manager
- Search for AI Tools
- Install and restart Git Extensions
Open Plugins → AI Tools in Git Extensions to configure:
| Setting | Description | Default |
|---|---|---|
| Enabled | Enable/disable the plugin | true |
| Auto-fill on stage/unstage | Automatically fill the commit message box | true |
| Provider | LLM provider to use | GitHub Copilot |
| API Key | API key (optional for GitHub Copilot / Claude Code / OpenCode) | — |
| Model override | Use a specific model instead of the provider default | — |
| Commit types | Comma-separated list of allowed conventional commit types | feat, fix, refactor, ... |
| Custom instructions | Appended to the built-in prompt | — |
- With auto-fill enabled (default): The commit message is generated automatically when you stage or unstage files and updates as you go.
- With auto-fill disabled: Select the "AI: Generate commit message" template from the commit message dropdown to trigger generation.
- Excluded assets: Files under
wwwroot/*/assets/**anywhere in the repository are omitted from both the diff summary and file contents sent to AI. The*matches one application directory (for example,scorteams); all nested asset files are excluded. If only these assets are staged, the AI provider is not called. - To cancel generation: Click Cancel AI at the bottom of the commit button panel. The previous message is restored unless you have already edited it, and late responses are ignored. Auto-fill resumes on the next stage/unstage action; you can also select the AI template to generate again.
Requires Windows and the .NET 10 SDK.
dotnet build -c Debug
The build automatically downloads Git Extensions 7.2.1 to gitextensions.shared/v7.2.1. After building, the plugin DLL and translations are copied to gitextensions.shared/v7.2.1/UserPlugins/GitExtensions.AITools for testing. Launch gitextensions.shared/v7.2.1/GitExtensions.exe to try the plugin.
To build against an existing Git Extensions 7.2.1 installation, override the reference path (the build also copies the plugin there):
dotnet build -c Debug -p:GitExtensionsPath="C:\Tools\GitExtensions"The build rejects binaries from a different Git Extensions major version. The versioned download folder keeps older development installations separate.
To pack as a NuGet package:
dotnet pack -c Release
Run the regression tests (requires Git on PATH; uses temporary Git repositories, simulated AI responses, and a local YouTrack test server):
dotnet run --project tests/GitExtensions.AITools.Tests -c ReleaseContributions are welcome! To get started:
- Fork the repository
- Create a branch from
develop - Make your changes and push to your fork
- Open a pull request targeting
develop
Please make sure the CI build passes before requesting a review.
Made by JBTremblay · Sponsor