.claude/skills/commit-spec/SKILL.md
Create comprehensive commit message from spec phases and commit all changes
npx skillsauth add Hoang604/get-thing-done commit-specInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Core responsibilities:
Flow: Gather Summaries → Synthesize → Commit </objective>
<context> **Required files:**./.gtd/<task_name>/ROADMAP.md — To identify completed phases./.gtd/<task_name>/{phase}/SUMMARY.md — For each completed phaseOutput:
The commit message should tell a coherent story, not just list what each phase did.
Use conventional commit types: feat, fix, refactor, docs, test, chore, etc.
Include all important changes, but keep the message readable.
</philosophy> <process>Read ./.gtd/<task_name>/ROADMAP.md to identify completed phases.
# Verify at least one phase is complete
if ! grep -q "✅ Complete" "./.gtd/<task_name>/ROADMAP.md"; then
echo "Error: No completed phases found"
exit 1
fi
For each completed phase, read ./.gtd/<task_name>/{phase}/SUMMARY.md.
Extract:
Create a comprehensive commit message:
Format:
{type}({scope}): {short description}
{Body: narrative of what was accomplished and why}
## Behaviour Changes
**Before:** {consolidated before state}
**After:** {consolidated after state}
## Implementation Details
{High-level summary of how it was implemented across phases}
Phase 1: {brief summary}
Phase 2: {brief summary}
...
## Breaking Changes
{If any, list them here, otherwise omit this section}
Guidelines:
git add .
git commit -F- <<'EOF'
{generated commit message}
EOF
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
GTD ► SPEC COMMITTED ✓
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Phases committed: {count}
Files changed: {count}
Commit message preview:
{first 3 lines of commit message}
...
─────────────────────────────────────────────────────
▶ View Full Commit
git show HEAD
─────────────────────────────────────────────────────
feat(user-auth): implement JWT-based authentication system
Added complete JWT authentication with refresh tokens, role-based
access control, and secure session management. This replaces the
legacy session-based authentication system.
## Behaviour Changes
**Before:** Users authenticated via server-side sessions stored in
memory. Sessions expired after 30 minutes of inactivity. No role-based
permissions.
**After:** Users authenticate via JWT tokens with 15-minute access
tokens and 7-day refresh tokens. Role-based middleware enforces
permissions at route level. Tokens stored securely in httpOnly cookies.
## Implementation Details
Authentication flow now uses industry-standard JWT practices with proper
token rotation and secure storage.
Phase 1: Created JWT service with token generation and validation
Phase 2: Implemented auth middleware and route protection
Phase 3: Added refresh token rotation and revocation
Phase 4: Integrated role-based access control
</examples>
<forced_stop> STOP. The workflow is complete. Do NOT automatically run the next command. Wait for the user. </forced_stop>
testing
manual trigger by user, do not auto invoke
tools
manual trigger by user, do not auto invoke
development
Trace execution paths and document how code actually behaves. Use when you need to understand how features work, walk through code flows, explain component behavior, trace where data comes from, understand relationships between components, or audit for orphaned events and dead code.
testing
Guide users through a structured workflow for co-authoring documentation. Use when user wants to write documentation, proposals, technical specs, decision docs, or similar structured content. This workflow helps users efficiently transfer context, refine content through iteration, and verify the doc works for readers. Trigger when user mentions writing docs, creating proposals, drafting specs, or similar documentation tasks.