Commit message gate
Local-first Agent Skill Runtime for packaging SOPs, schemas, preflight checks, run records, and MCP tools as executable skill capsules.
npx -y skills add iiwish/skillrun --skill commit_message_gateAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 0 stars0 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
SKILL.md
1.5 KB, 344 tokens by cl100k_base, as published. Nobody here has run it
Commit Message Gate
Purpose
This SkillRun capsule validates a proposed Git commit message before an agent uses it. It is designed to move Conventional Commits rules out of fragile prompts and into a typed, testable preflight boundary.
SOP
- Accept only concise Conventional Commits subject lines.
- Require one of the supported types:
feat,fix,docs,style,refactor,perf,test,chore,build,ciorrevert. - Require
type: summaryortype(scope): summarywith exactly one space after the colon. - Keep the subject at or below 70 characters.
- Reject multiline messages in this capsule. Longer release notes belong in a separate artifact or PR body, not the commit subject.
- Do not stage files automatically.
Execution Boundary
By default this capsule only validates and returns a normalized subject. If
perform_commit is set to true, it may run git commit -m <message> for
already staged changes only. It never runs git add ..
Required Context
message: proposed commit subject.perform_commit: defaults tofalse.
Recovery Guidance
If this capsule returns PolicyViolation, rewrite the commit subject according
to the llm_hint and retry. If it returns DependencyError, inspect the local
Git repository state before retrying.
Prohibited Behavior
- Do not auto-stage files.
- Do not include multiline explanations in the commit subject.
- Do not bypass a rejected message by calling Git directly.
What ships with it: 4 files
4.0 KB alongside SKILL.md, 1 of them executable
examples/
- default.input.json82 B
- invalid.input.json156 B
- action.pyruns3.5 KB
- skillrun.config.json282 B