claude-code-commits
Already using Claude Code? Get commit messages for free — one click, zero config.
Stop writing commit messages by hand. This extension uses the Claude Code CLI you already have installed to analyze your staged changes and generate clean, conventional commit messages — right in the Source Control panel.
No API keys. No extra subscriptions. If you have Claude Code CLI, you're ready to go.
Quick Start
- Install the extension
- Stage your changes
- Click the sparkle button in Source Control
- Review, edit if needed, commit
That's it. Works out of the box.
Features
- One-click generation — Sparkle button in the Source Control title bar, or use the command palette
- Multiple commit styles — Conventional (
type(scope): desc), prefix (type: desc), or simple (plain message)
- Flexible diff source — Analyze staged changes, all working tree changes, or auto-detect
- Zero config needed — Built-in prompt works immediately; customize only if you want to
- Custom commit rules — Drop a markdown file in your workspace to define your own commit style
- Model selection — Switch between Haiku (fast), Sonnet (balanced), or Opus (most capable)
- Safe by design — Only populates the message box. Never commits, pushes, or runs any git write operations
Requirements
| Requirement |
Details |
| VS Code |
1.109.0 or later |
| Claude Code CLI |
Install here — must be on your PATH and authenticated |
| Git |
Installed and initialized in your workspace |
Settings
| Setting |
Default |
Description |
sparkleCommit.claudeModel |
haiku |
Model alias (sonnet, opus, haiku) or full model name |
sparkleCommit.commitStyle |
conventional |
Message format: conventional, prefix, or simple |
sparkleCommit.diffSource |
staged |
Changes to analyze: staged, all, or auto |
sparkleCommit.commitRulesPath |
.vscode/commit-rules.md |
Path to custom commit rules file (overrides commitStyle) |
Customizing the Prompt
By default the extension uses a built-in Conventional Commits prompt. To override it:
- Create a file at
.vscode/commit-rules.md (or set a custom path via sparkleCommit.commitRulesPath)
- Write your commit rules in plain text or markdown
- The extension will use your file instead of the default
If the file is missing or unreadable, the built-in default kicks in automatically.
Feedback & Ideas
This extension is actively maintained and shaped by its users. If you have a feature request, found a bug, or just want to suggest how commit messages could be smarter — open an issue:
Open an issue on GitHub
Some ideas to get you started:
- Commit styles you'd like supported (e.g., emoji, gitmoji, custom prefixes)
- Language support for non-English commit messages
- Workflow improvements (multi-repo, monorepo, staged file filtering)
- Anything that would make this your default commit workflow
Every suggestion helps. Even a quick "I wish it could..." is useful.
Release Notes
1.1.0
- Built-in default prompt — works out of the box, no template file needed
- Custom prompt override via configurable rules file path
- Commit style setting — conventional, prefix, or simple formats
- Diff source setting — staged, all, or auto-detect
- Marketplace discoverability improvements (categories + keywords)
1.0.1
- Initial release — one-click commit message generation with Claude Code CLI
License
LICENSE
| |