Use OpenAI / Azure OpenAI / DeepSeek / Grok / Gemini / Claude (Anthropic) API to review Git changes, generate conventional commit messages that meet the conventions, simplify the commit process, and keep the commit conventions consistent.
English · 简体中文 · Report Bug · Request Feature
- 🤯 Support generating commit messages based on git diffs using OpenAI / Azure OpenAI / DeepSeek / Grok / Gemini / Claude (Anthropic) API.
- 🧠 Support OpenAI Responses API with configurable reasoning effort and output verbosity.
- 🗺️ Support multi-language commit messages.
- 😜 Support adding Gitmoji.
- 🛠️ Support custom system prompt.
- 📝 Support Conventional Commits specification.
- Search for "AI Commit" in VSCode and click the "Install" button.
- Install it directly from the Visual Studio Code Marketplace.
Note
Make sure your node version >= 16
- Ensure that you have installed and enabled the "AI Commit" extension.
- In VSCode settings, locate the "ai-commit" configuration options and configure them as needed.
- Make changes in your project and add the changes to the staging area (git add).
- (Optional) If you want to provide additional context for the commit message, type it in the Source Control panel's message input box before clicking the AI Commit button.
- Next to the commit message input box in the "Source Control" panel, click the "AI Commit" icon button. After clicking, the extension will generate a commit message (considering any additional context if provided) and populate it in the input box.
- Review the generated commit message, and if you are satisfied, proceed to commit your changes.
Note
If the code exceeds the maximum token length, consider adding it to the staging area in batches.
Note Version >= 0.0.5 Don't need to configure
EMOJI_ENABLEDandFULL_GITMOJI_SPEC, Default Prompt is prompt/with_gitmoji.md, If don't need to useGitmoji. Please setSYSTEM_PROMPTto your custom prompt, please refer to prompt/without_gitmoji.md.
In the VSCode settings, locate the "ai-commit" configuration options and configure them as needed:
| Configuration | Type | Default | Required | Notes |
|---|---|---|---|---|
| AI_PROVIDER | string | openai | Yes | AI Provider to use: openai, gemini, or claude |
| OPENAI_API_KEY | string | None | Yes | Required when AI_PROVIDER is openai. OpenAI token |
| OPENAI_BASE_URL | string | None | No | If using Azure, use: https://{resource}.openai.azure.com/openai/deployments/{model} |
| OPENAI_MODEL | string | gpt-4o | Yes | OpenAI model. Run the Show Available OpenAI Models command to pick from available models |
| AZURE_API_VERSION | string | None | No | Azure API version string |
| OPENAI_TEMPERATURE | number | 0.7 | No | Controls randomness. Range: 0–2. Lower = more focused, Higher = more creative. (Chat Completions only) |
| OPENAI_API_TYPE | string | completion | No | Choose API: completion (Chat Completions) or response (Responses API) |
| OPENAI_REASONING_EFFORT | string | medium | No | Reasoning effort for Responses API: minimal, low, medium, high. Only applies when OPENAI_API_TYPE is response |
| OPENAI_TEXT_VERBOSITY | string | medium | No | Output verbosity for Responses API: low (~1000 tokens), medium (~4000 tokens), high (~16000 tokens) |
| GEMINI_API_KEY | string | None | Yes | Required when AI_PROVIDER is gemini. Gemini API key |
| GEMINI_MODEL | string | gemini-2.0-flash-001 | Yes | Gemini model to use |
| GEMINI_TEMPERATURE | number | 0.7 | No | Controls randomness. Range: 0–2. Lower = more focused, Higher = more creative |
| CLAUDE_API_KEY | string | None | No | Anthropic API key. Leave empty to use Claude CLI (authenticated via claude setup-token). Required when AI_PROVIDER is claude |
| CLAUDE_MODEL | string | claude-sonnet-4-5-20250929 | No | Claude model to use |
| CLAUDE_TEMPERATURE | number | 0.7 | No | Controls randomness. Range: 0–1 |
| AI_COMMIT_LANGUAGE | string | English | Yes | Supports 19 languages |
| SYSTEM_PROMPT | string | None | No | Custom system prompt |
You can use Github Codespaces for online development:
Alternatively, you can clone the repository and run the following commands for local development:
$ git clone https://github.com/sitoi/ai-commit.git
$ cd ai-commit
$ npm installOpen the project folder in VSCode. Press F5 to run the project. This will open a new Extension Development Host window and launch the plugin within it.
Contributions of all types are more than welcome, if you are interested in contributing code, feel free to check out our GitHub Issues to get stuck in to show us what you’re made of.
- auto-commit - https://github.com/lynxife/auto-commit
- opencommit - https://github.com/di-sukharev/opencommit
This project is MIT licensed.

