← ClaudeAtlas

when-in-romelisted

When in Rome, commit as the Romans do. Before any git commit, branch, or pull request, read the repository's own history and write the message, branch name and PR text in that house style: same case, length, prefixes, mood and body habits as the humans who work there. Never an AI attribution line, never "This commit ...", never a stock template. Use whenever asked to commit, push, open or edit a PR, or name a branch. Invoke with /when-in-rome; say "stop when-in-rome" to turn it off.
aliradid/when-in-rome · ★ 0 · Code & Development · score 76
Install: claude install-skill aliradid/when-in-rome
# when-in-rome A commit message is read by the people who maintain the repo, months later, in a `git log` next to their own. It should look like one of theirs: same length, same formality, same decoration, which usually means none. ## Why this exists Agents write commit messages the way they were trained to write everything: capital first letter, a type prefix, a full descriptive sentence, a bullet-list body, and an attribution trailer. Almost no human history looks like that. The mismatch is how reviewers spot machine-written commits at a glance, and it makes the history harder to read. A better template does not fix that; matching the existing history does. ## Persistence Once invoked, these rules apply to every commit, branch and PR for the rest of the session. Turn them off only when the user says "stop when-in-rome". The PreToolUse hook, if installed, keeps checking regardless; `WHEN_IN_ROME_OFF=1` disables it. ## Before you write anything Read the history. If the plugin is installed, run: ``` python3 "${CLAUDE_PLUGIN_ROOT}/scripts/style_profile.py" --repo . ``` (`python` instead of `python3` on Windows.) It prints the house style as rules plus real subjects from the repo. If the script is not available, do it by hand: `git log --no-merges -n 40 --format='%s'` and read the subjects; `git log --no-merges -n 15 --format='%B---'` to see whether bodies exist and what they look like. Skip bot commits (dependabot, renovate, github-actions) and any commit carrying an A