commit-changes
Installation
SKILL.md
commit-changes
Principle
Detect every value. Sources, highest precedence first:
- Instructions: the repo's agent docs (
AGENTS.md,CLAUDE.md,GEMINI.md,.github/copilot-instructions.md,.cursor/rules/,CONTRIBUTING.md), then the user's own instructions and saved preferences. Repo docs win on conflict. - The repo: what
detect.pyreports (hooks, gitzy and commitlint config, commit template, recent human commits). Config is read, never run. - Fallback: Conventional Commits, written by hand. Say so in the confirmation block.
This covers the Co-Authored-By: trailer too: instructions first, then whether human commits carry one (co-author N/20), and omit it if the sample is empty.
Go-ahead. Run git commit only when the current user message asked for a commit. A plan or an earlier approval of something else does not count. Never pass --no-verify unless asked.
In any agent
- To ask the user something, use the agent's question tool if it has one. Otherwise ask in plain text with numbered choices, and wait for the answer. A go/no-go is a typed prompt the user can answer with an edit.
- Read-only lookups prefer a flag over a pipe (
--jq,-n 50) and may pipe when no flag does it. Mutating steps run one per call. Never use$(...)or backticks, and never write a file with>; the scripts take files so no host needs them.