Git Commit Message Assistant
A small VS Code extension that generates clear, conventional Git commit messages
based on the actual diff — directly inside the Source Control view.
No prompts.
No chat UI.
Just practical developer tooling.
What this extension does
- Analyzes real
git diff (staged preferred)
- Suggests clean, conventional commit messages
(feat(scope): summary)
- Inserts the message directly into the Git commit input
- Explains why a suggestion was generated (files, heuristics, scope)
Designed to speed up commits without getting in your way.
How to use
- Open any Git repository in VS Code
- Make changes (optionally stage them)
- Open Source Control
- Click the ✨ button in the Source Control header
or run
Commit Assistant: Generate Commit Message
Select a suggestion → it will be inserted into the commit message field.
Explain mode (why this message?)
Each suggestion can be explained:
- Click the ⓘ icon in the suggestion list
- Or run Commit Assistant: Explain Last Suggestion
You’ll see:
- which files were considered
- added / removed lines
- detected scope
- classification heuristics
This makes the tool predictable and trustworthy.
Features
- SCM integration
One-click button directly in the Source Control view
- Conventional Commits
feat, fix, refactor, docs, test, …
- Smart scope inference
Monorepo-aware (packages/, apps/, src/, services/, etc.)
- Explainable output
No black box
- Offline-first
No network calls, no API keys
Commands
- Commit Assistant: Generate Commit Message
- Commit Assistant: Insert Best Commit Message
- Commit Assistant: Explain Last Suggestion
Configuration
Search for Commit Assistant in VS Code settings.
Key options:
commitAssistant.diffSource
preferStaged | staged | unstaged
commitAssistant.scope.strategy
path | gitRootFolder
commitAssistant.autoInsert
Insert into Git input automatically
commitAssistant.debug
Enable debug output
What this is not
- Not a ChatGPT wrapper
- Not a prompt-based tool
- Not guessing based on commit history
The goal is deterministic, explainable suggestions
based on the code you actually changed.
Development
npm install
npm run compile
| |