Commit staged with Generated Message
Step 1: Analyze Staged Changes
Run these commands using the Bash tool to gather context:
- •
git diff --staged --name-only- List staged files - •
git diff --staged --stat- Diff stats summary - •
git log --oneline -5- Recent commit style - •
git diff --staged- Review detailed staged changes. Size guard: if--statshows >10 files or >500 lines changed, skip the full diff and rely on--stat+--name-onlyto generate the message.
Step 2: Generate Commit Message
Use the Read tool to check .gitmessage for commit message format and syntax.
The commit message body MUST include (concisely — no padding, no redundancy):
- •What changed: bullet points per file or logical group
- •Symbols added/removed (when applicable): functions, classes, tests
- •Diff stats: lines added/removed (from
--statsummary line) — MUST be the last line of the body- •Format:
+ symbol_name,- symbol_name - •Omit for config/docs/formatting-only changes
- •Format:
Keep the message laser-focused. Do not repeat the subject line in the body.
Step 3: Pause for Approval
Please review the commit message.
- •Approve: "yes", "y", "commit", "go ahead"
- •Edit: Provide your preferred message
- •Cancel: "no", "cancel", "stop"
Step 4: Commit
Once approved:
- •
git commit --gpg-sign -m "[message]"- Commit staged changes with approved message (GPG signature mandatory) - •
git status- Verify success