A simple VS Code extension that generates Git commit messages from staged changes using AI. It supports multiple LLM providers, custom commit styles, and secure key storage.
Features
- Diff Analysis: Automatically analyzes staged changes to suggest concise commit messages.
- Multiple Providers: Supports Gemini, Groq, and Mistral out of the box.
- Commit Styles: Choose the format that fits your workflow:
- Conventional Commits: Standard format with scope (e.g.,
feat(auth): add login validation). - Emoji Commits: Emojis for quick visual scanning (e.g.,
✨ add login validation). - Basic Commits: Plain text description (e.g.,
update login validation).
- Conventional Commits: Standard format with scope (e.g.,
- Settings View: A clean graphical panel to manage your configuration.
- Secure Key Storage: API credentials are saved locally using VS Code's native
SecretStorageAPI. - Git Integration: Inserts the generated message directly into the VS Code Source Control input field.
Preview
Settings Page
A clean panel allows you to configure your provider, model, style, and API credentials:

Git Integration
Generate commit messages directly from the VS Code Source Control input:

Getting Started
- Stage your changes using Git (
git add). - Run the TeaGit: Open Settings command from the Command Palette (
Ctrl+Shift+P/Cmd+Shift+P) to configure your provider and API key. - Run the TeaGit: Generate AI Commit Message command from the Command Palette or the Git Source Control menu.
Commands
Access these commands via the Command Palette:
| Command | Title | Description |
|---|---|---|
teagit.generateCommitMessage |
TeaGit: Generate AI Commit Message | Analyzes staged changes and generates a commit message. |
teagit.openSettings |
TeaGit: Open Settings | Opens the settings panel to configure preferences. |
Configuration Options
Configure these properties in your VS Code settings.json:
| Setting Key | Type | Default | Description |
|---|---|---|---|
teagit.provider |
string |
"Gemini" |
Selected AI provider (Gemini, Groq, Mistral). |
teagit.model |
string |
"" |
The active model ID. Leave empty to use the provider's default. |
teagit.commitType |
string |
"conventional" |
The style of commit message generated (basic, conventional, emoji). |
teagit.systemPrompt |
string |
"" |
A custom system prompt to override default rules. |
Supported Providers & Default Models
| Provider | Default Model | Valid Alternatives |
|---|---|---|
| Gemini | gemini-3-flash-preview |
gemini-3-flash-lite, gemini-2.5-flash, gemini-2.5-flash-lite |
| Groq | llama-3.3-70b-versatile |
llama-3.1-8b-instant, qwen/qwen3-32b, openai/gpt-oss-120b, moonshotai/kimi-k2-instruct |
| Mistral | devstral-small-2507 |
mistral-small-2506, ministral-8b-2410, ministral-3b-2410 |
Requirements
- Git: Installed and initialized in your workspace.
- Staged files: You must stage files (
git add) for TeaGit to analyze the changes. - API Key: A valid API key for your chosen provider.