Use when the user says "commit", "commit changes", "save progress", or wants to create a git commit. Composes a conventional commit message with the correct scope and ticket ID.
Create a well-formatted conventional commit with the correct scope and ticket ID.
Read $SKILLS_ROOT/prime-project/session-state.md for:
Read $SKILLS_ROOT/prime-project/project-configs/{project-name}.json for:
If neither session state nor project config is available, ask the user for the scope and ticket ID directly. The skill works standalone.
When working in the claude-home repo (detected when the git remote is claude-home or the repo root is ~), only stage whitelisted paths — the home directory contains non-repo files that must never be staged:
git add .claude/ symphony/ README.md
Do not use git add -u or git add . for the home directory.
Format: type(scope): description [TICKET-ID]
Valid types: Conventional commits! - feat, fix, refactor, chore, docs, style, test, perf, ci, build
Rules:
scope-empty: never). Never omit it.commitScopeapps/<name>/ → use <name> as scopelibs/<name>/ → use <name> as scoperoutes/<name>/ → use <name> as scoperoot, repo, workspace, ciExamples:
feat(payroll-backend): add processing period support [PAYR-1234]
fix(payroll-backend): correct tax calculation for overtime [PAYR-5678]
test(payroll-backend): add integration tests for payroll preview [PAYR-4503]
chore(repo): update commitlint config [WS-1234]
ci(ci): add new GitHub Actions workflow [WS-5678]
git status and git diff --staged to understand changeswhich mise nvm fnm node. If undetected, ask the user. Git hooks require the same node version as the repo package.json. Store the answer in session state.--no-verify — if hooks fail, fix the underlying issuemise exec -- git commit -m "...". ~/.nvm/nvm.sh && nvm use && git commit -m "..."eval "$(fnm env)" && fnm use && git commit -m "..."asdf exec git commit -m "..."--force-with-lease$SKILLS_ROOT/prime-project/session-state.md to implementing or testing as appropriatecreate-pr."