Awesome-omni-skill committing-staged-with-message
Generate commit message for staged changes, pause for approval, then commit. Stage files first with `git add`, then run this skill.
install
source · Clone the upstream repo
git clone https://github.com/diegosouzapw/awesome-omni-skill
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/diegosouzapw/awesome-omni-skill "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/tools/committing-staged-with-message" ~/.claude/skills/diegosouzapw-awesome-omni-skill-committing-staged-with-message-7bd4fb && rm -rf "$T"
manifest:
skills/tools/committing-staged-with-message/SKILL.mdsource content
Commit staged with Generated Message
Step 1: Analyze Staged Changes
Run these commands using the Bash tool to gather context:
- List staged filesgit diff --staged --name-only
- Diff stats summarygit diff --staged --stat
- Recent commit stylegit log --oneline -5
- Review detailed staged changes. Size guard: ifgit diff --staged
shows >10 files or >500 lines changed, skip the full diff and rely on--stat
+--stat
to generate the message.--name-only
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
summary line) — MUST be the last line of the body--stat- 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:
- Commit staged changes with approved message (GPG signature mandatory)git commit --gpg-sign -m "[message]"
- Verify successgit status