Commit Message Generator
AI-powered commit message generation for VS Code. Automatically generate conventional commit messages based on your staged changes.
Features
- 🤖 AI-powered commit message generation from staged changes
- 🌐 Multi-language support (sync with VS Code UI or specific language)
- ✨ Follows Conventional Commits specification
- 🔑 Supports DeepSeek, OpenAI, Anthropic, and custom providers
- ⚡ Fast and lightweight (no backend required)
- 🔧 Customizable system prompt
Usage
- Stage your changes in Git
- Click the "Generate Commit Message" button in the Source Control panel
- The AI-generated message will appear in the commit message input box
Configuration
Open VS Code settings and search for "Commit Message Generator":
Providers
The extension supports multiple AI providers. Default providers include:
| Provider |
API Format |
Base URL |
Default Model |
| DeepSeek |
OpenAI |
https://api.deepseek.com |
deepseek-v4-flash |
| OpenAI |
OpenAI |
https://api.openai.com |
gpt-4o-mini |
| Anthropic |
Anthropic |
https://api.anthropic.com |
claude-3-haiku-20240307 |
Settings
| Setting |
Description |
Default |
llm-git-commit.providers |
Configure AI providers (id, name, apiFormat, baseUrl, apiKey, models) |
DeepSeek, OpenAI, Anthropic |
llm-git-commit.activeProvider |
ID of the provider to use |
deepseek |
llm-git-commit.activeModel |
ID of the model to use |
deepseek-v4-flash |
llm-git-commit.generation.language |
Language for commit messages |
sync |
llm-git-commit.generation.temperature |
Generation temperature (0-2) |
0.3 |
llm-git-commit.generation.timeout |
Generation timeout (ms) |
30000 |
llm-git-commit.prompt.custom |
Custom system prompt |
(empty) |
llm-git-commit.prompt.includeDiff |
Include git diff in prompt |
true |
llm-git-commit.prompt.maxDiffLength |
Max diff length (characters) |
4000 |
Configuration Example
{
"llm-git-commit.providers": [
{
"id": "deepseek",
"name": "Deepseek",
"apiFormat": "openai",
"baseUrl": "https://api.deepseek.com",
"apiKey": "insert-your-apikey-here",
"models": [
{
"id": "deepseek-v4-flash",
"name": "deepseek-v4-flash"
},
{
"id": "deepseek-v4-pro",
"name": "deepseek-v4-pro"
}
]
}
],
"llm-git-commit.activeProvider": "deepseek",
"llm-git-commit.activeModel": "deepseek-v4-flash"
}
Language Options
sync - Sync with VS Code display language
en - English
zh - 简体中文 (Simplified Chinese)
zht - 繁體中文 (Traditional Chinese)
ko - 한국어 (Korean)
de - Deutsch (German)
es - Español (Spanish)
fr - Français (French)
ja - 日本語 (Japanese)
ru - Русский (Russian)
Recommended Models
- DeepSeek:
deepseek-v4-flash (fast, cost-effective), deepseek-v4-pro (higher quality)
- OpenAI:
gpt-4o-mini (fast, cost-effective), gpt-4o (higher quality)
- Anthropic:
claude-3-haiku-20240307 (fast), claude-3-sonnet-20240229 (balanced)
Development
# Install dependencies
npm install
# Compile
npm run compile
# Watch mode
npm run watch
# Test in VS Code
# Press F5 to open Extension Development Host
Acknowledgments
This project was inspired by the Git Commit Generation feature in Kilo Code, an open-source AI coding agent for VS Code.
The core concept — generating Conventional Commits style messages from staged changes via an SCM panel button — was adapted from Kilo Code's implementation. Thanks to the Kilo Code team for the excellent feature design and architecture reference.
License
MIT