| name | commit |
| license | MIT |
| compatibility | Claude Code 2.1.220+. |
| description | Creates commits with Conventional Commits format (feat/fix/docs/refactor/test/chore), automatic scope detection, co-author attribution, and pre-commit hook compliance. Validates staged changes, generates descriptive messages focusing on the 'why', and prevents secrets or generated-only files from being committed. Requires an explicit request naming this skill; plain `git commit` during normal work stays a bare CLI call. Use when committing changes or generating commit messages. |
| argument-hint | [message] |
| context | inherit |
| version | 1.2.0 |
| author | OrchestKit |
| tags | ["git","commit","version-control","conventional-commits"] |
| user-invocable | true |
| disable-model-invocation | false |
| allowed-tools | ["Bash","Read","Write","AskUserQuestion"] |
| skills | ["chain-patterns"] |
| complexity | low |
| persuasion-type | discipline |
| effort | low |
| hooks | {"PreToolUse":[{"matcher":"Bash","command":"${CLAUDE_PLUGIN_ROOT}/hooks/bin/run-hook.mjs skill/commit-convention-loader","once":true},{"matcher":"Bash(git *)","command":"${CLAUDE_PLUGIN_ROOT}/hooks/bin/run-hook.mjs pretool/bash/git-validator"}]} |
| metadata | {"category":"workflow-automation"} |
| triggers | {"keywords":["commit","comit","commit message","stage and commit","save progress","save my progress","wrap it up","conventional commit"],"examples":["commit my changes","create a conventional commit for these files","stage and commit the new tests"],"anti-triggers":["push","pr","pull request","review","rebase","merge"]} |
| invocation_hooks | ["git rev-parse --is-inside-work-tree >/dev/null 2>&1 || echo 'Warning: not inside a git repository'"] |
Smart Commit
Simple, validated commit creation. Run checks locally, no agents needed for standard commits.
Note: If disableSkillShellExecution is enabled (CC 2.1.91), the git repository check won't run. This skill requires a git repository.
Quick Start
/ork:commit
/ork:commit fix typo in auth module
Argument Resolution
COMMIT_MSG = "$ARGUMENTS"
STEP 0: Choose Commit Mode (AskUserQuestion — M118 #1465)
Default is "new commit", but voice-flow needs explicit choice when amend / push / stash is wanted:
AskUserQuestion(questions=[{
"question": "How should this commit land?",
"header": "Commit mode",
"options": [
{"label": "New commit (default)", "description": "Create a new commit, leave HEAD intact"},
{"label": "Amend HEAD", "description": "Fold staged changes into the last commit (LOCAL ONLY — refuses if HEAD is published)"},
{"label": "New commit + push", "description": "Commit then `git push` (refuses on protected branches)"},
{: , : }
]
}])