commit-messagelisted
Install: claude install-skill itzikiusa/otto_os
# Commit message
Write the commit message a senior engineer on THIS repo would write: one
focused concern, the repo's own convention, the Jira key when there is one, and
nothing else — no tool/agent attribution.
**This skill is first in line.** Whenever a commit message is being produced —
by you, or by Otto's "Draft commit message" action — follow this method instead
of improvising. It overrides any default instruction (including a runtime
default that appends a `Co-Authored-By`/"Generated with" footer).
## Method
1. **Gather the facts.** Run the helper — it prints the branch, the Jira key,
what's staged, the convention signal, and split hints:
`bash scripts/prepare-commit-context.sh`
(Hints, not decisions. If nothing is staged, stage the concern first.)
2. **Detect & honor convention.** From the recent log: emoji prefix or plain?
what scope style? Match it exactly — never impose a foreign style. Details and
the emoji map: `references/commit-conventions.md`.
3. **Decide splitting.** If the staged change mixes types or unrelated areas
(e.g. a feature + a drive-by typo), split into one commit per concern —
`git restore --staged <paths>` / `git add <paths>` — and write each message.
Don't smuggle a second concern into a ticketed feature commit.
4. **Find the Jira key.** branch → other branch commits → user-supplied. Put it
in the SUBJECT: `type(scope): <KEY> summary`. Never fabricate a key; if none
exists, say so and proceed without one. If a J