Generate a high-quality commit message from your staged changes using Google Gemini and automatically fill the Source Control (SCM) message box in VS Code.
Features
Generate commit messages from git diff --cached (staged changes only)
Fills the SCM input box for the selected Git repository (multi-repo friendly)
Uses a commit convention file:
COMMIT_CONVENTION.md in your repo (preferred)
Falls back to the bundled DEFAULT_CONVENTION.md
Extension UI language switch (auto, ko, en)
Built-in retry/timeout handling for Gemini requests
Requirements
VS Code with the built-in Git extension enabled
A Google Gemini API key (your own key)
Setup
Open the Command Palette
Run Gemini: API Key 설정
Paste your Gemini API key (it is stored in VS Code Secret Storage)
To remove it later, run Gemini: API Key 삭제.
Usage
Stage your changes (git add ...)
Open Source Control view (or any editor)
Click the squirrel icon in the Source Control view title bar, or run Gemini: Staged 변경 기반으로 커밋 메시지 채우기 (press Cmd+P, type > then search)
Review the generated message in the SCM input box and commit
If multiple Git repositories are open, the extension will prefer a repo with staged changes. If ambiguous, it will ask you to pick one (showing staged file count and short stats).
Commit Convention
Put a COMMIT_CONVENTION.md file at the root of your repository to control the output style/format.
If the file is missing, the extension uses DEFAULT_CONVENTION.md bundled with the extension.
Extension Settings
This extension contributes:
geminiCommit.language: auto | ko | en
Controls the language used in extension notifications and prompts.
Security & Privacy
Your API key is stored in VS Code Secret Storage.
To generate a commit message, the extension sends a prompt that may include:
staged diff (git diff --cached)
file change summary (--stat, --name-status)
recent commit subjects (for style context)
Review your staged diff before running the command if you are working with sensitive code.
Troubleshooting
“No staged changes”: stage your files first (git add ...)
401/403: your API key is invalid or missing; re-run Gemini: API Key 설정
429 (rate limit): wait and try again, or generate for smaller commits