You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+40-1Lines changed: 40 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -16,7 +16,9 @@ You're already investing in Claude Code – whether it's Pro, Max ×5, or Max ×
16
16
17
17
-**One-click commit message generation**: The sparkle button ✨ you know and love, right in VS Code's Source Control panel
18
18
-**Powered by your Claude CLI**: Uses your existing Claude installation – no extra API keys or subscriptions needed
19
-
-**Context-aware analysis**: Understands your git diff to generate meaningful, conventional commit messages
19
+
-**Context-aware analysis**: Understands your git diff to generate meaningful commit messages
20
+
-**Flexible commit styles**: Choose from conventional commits, prefix-only, simple descriptions, or create your own custom template
21
+
-**Custom prompt templates**: Full control over AI prompts with `{diff}` and `{stats}` template variables
20
22
-**Edit with feedback**: Not satisfied? Click "Edit with feedback" to refine the message with AI assistance
21
23
-**Multi-line commit support**: Generate detailed commits with body and footer for complex changes
22
24
-**Model selection**: Choose between Haiku (fast), Sonnet (balanced), or Opus (most capable)
@@ -77,6 +79,8 @@ This extension keeps it simple with optional settings:
77
79
*`claudeCommit.keepCoAuthoredBy`: Keep Co-Authored-By signature in commit message (only works in Claude Code managed mode) – defaults to `false`
78
80
*`claudeCommit.messageAutoCloseSeconds`: Auto-close timeout for success message in seconds (0 to disable) – defaults to `5`
79
81
*`claudeCommit.privacyMode`: Restrict temporary prompt file permissions to owner-only on Linux/macOS – defaults to `false`
82
+
*`claudeCommit.commitStyle`: Commit message style format (`conventional`, `prefix`, `default`, or `custom`) – defaults to `conventional`
83
+
*`claudeCommit.customPromptTemplate`: Custom prompt template with `{diff}` and `{stats}` variables (only used when commitStyle is `custom`) – defaults to empty
80
84
81
85
## Configuration Examples
82
86
@@ -177,6 +181,41 @@ Set to `0` to disable auto-close and keep the success message visible until manu
177
181
```
178
182
Restricts temporary prompt file permissions to owner-only (0600) on Linux/macOS. Windows ignores this setting.
179
183
184
+
### Commit message styles
185
+
186
+
#### Conventional Commits (default)
187
+
```json
188
+
{
189
+
"claudeCommit.commitStyle": "conventional"
190
+
}
191
+
```
192
+
Generates: `feat(auth): added user login`
193
+
194
+
#### Prefix only (without scope)
195
+
```json
196
+
{
197
+
"claudeCommit.commitStyle": "prefix"
198
+
}
199
+
```
200
+
Generates: `feat: added user login`
201
+
202
+
#### Simple description (no prefix)
203
+
```json
204
+
{
205
+
"claudeCommit.commitStyle": "default"
206
+
}
207
+
```
208
+
Generates: `added user login`
209
+
210
+
#### Custom prompt template
211
+
```json
212
+
{
213
+
"claudeCommit.commitStyle": "custom",
214
+
"claudeCommit.customPromptTemplate": "Generate a concise commit message following our team's style.\n\nChanges:\n{stats}\n\nDiff (first 6000 chars):\n{diff}\n\nFormat: <category>: <description>\nCategories: feature, bugfix, refactor, docs, test, chore\nReturn only the commit message."
215
+
}
216
+
```
217
+
Use `{diff}` for git diff content (automatically limited to first 6000 characters) and `{stats}` for change statistics. This allows complete control over the prompt sent to Claude.
Copy file name to clipboardExpand all lines: package.json
+25Lines changed: 25 additions & 0 deletions
Original file line number
Diff line number
Diff line change
@@ -152,6 +152,31 @@
152
152
"default": false,
153
153
"markdownDescription": "Privacy mode: Restrict temporary prompt file permissions to owner-only (0600). When disabled, uses default permissions (0644). **Note: This option only takes effect on Linux/macOS. On Windows, file permissions are managed by the OS and this setting is ignored.**",
154
154
"order": 11
155
+
},
156
+
"claudeCommit.commitStyle": {
157
+
"type": "string",
158
+
"enum": [
159
+
"conventional",
160
+
"prefix",
161
+
"default",
162
+
"custom"
163
+
],
164
+
"default": "conventional",
165
+
"enumDescriptions": [
166
+
"Conventional Commits with scope - feat(auth): added user login",
167
+
"Type prefix only - feat: added user login",
168
+
"Simple description - added user login",
169
+
"Custom template using {diff} and {stats} variables"
170
+
],
171
+
"markdownDescription": "Commit message style format. Choose 'custom' to use your own prompt template.",
172
+
"order": 12
173
+
},
174
+
"claudeCommit.customPromptTemplate": {
175
+
"type": "string",
176
+
"default": "",
177
+
"markdownDescription": "Custom prompt template. Use `{diff}` for diff content and `{stats}` for change statistics. Only used when commitStyle is set to 'custom'. Example: `Generate a commit message for:\n\n{stats}\n\n{diff}`",
0 commit comments