Agent skill
writing-commit-messages
Writes Git commit messages. Activates when the user asks to write a commit message, draft a commit message, or similar.
Install this agent skill to your Project
npx add-skill https://github.com/ghostty-org/ghostty/tree/main/.agents/skills/writing-commit-messages
SKILL.md
Writing Commit Messages
Write commit messages that follow commit style guidelines for the project.
Format
<subsystem>: <summary>
<reference issues/PRs/etc.>
<long form description>
Rules
Subject line
- Subsystem prefix: Use a short, lowercase identifier for the
area of code changed (e.g.,
terminal,vt,lib,config,font). Determine this from the file paths in the diff. If changes span the macOS app, usemacos. For GTK, usegtk. For build system, usebuild. Use nested subsystems with/when helpful and exclusive (e.g.,terminal/osc). - Summary: Lowercase start (not capitalized), imperative mood, no trailing period. Keep it concise—ideally under 60 characters total for the whole subject line.
References
- If the change relates to a GitHub issue, PR, or discussion, list
the relevant numbers on their own lines after the subject, separated
by a blank line. E.g.
#1234 - If there are no references, omit this section entirely (no blank line).
Long form description
- Describe what changed, what the previous behavior was, and how the new behavior works at a high level.
- Use plain prose, not bullet points. Wrap lines at ~72 characters.
- Focus on the why and how rather than restating the diff.
- Keep the tone direct and technical without no filler phrases.
- Don't exceed a handful of paragraphs; less is more.
Workflow
- If
.jjis present, usejjinstead ofgitfor all commands. - Run a diff to see what changes are present since the last commit.
- Identify the subsystem from the changed file paths.
- Identify any referenced issues/PRs from the diff context or branch name.
- Draft the commit message following the format above.
- Apply the commit
- Don't push the commit; leave that to the user.
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
handoff
Compact the current conversation into a handoff document for another agent to pick up.
setup-pre-commit
Set up Husky pre-commit hooks with lint-staged (Prettier), type checking, and tests in the current repo. Use when user wants to add pre-commit hooks, set up Husky, configure lint-staged, or add commit-time formatting/typechecking/testing.
scaffold-exercises
Create exercise directory structures with sections, problems, solutions, and explainers that pass linting. Use when user wants to scaffold exercises, create exercise stubs, or set up a new course section.
edit-article
Edit and improve articles by restructuring sections, improving clarity, and tightening prose. Use when user wants to edit, revise, or improve an article draft.
obsidian-vault
Search, create, and manage notes in the Obsidian vault with wikilinks and index notes. Use when user wants to find, create, or organize notes in Obsidian.
migrate-to-shoehorn
Migrate test files from `as` type assertions to @total-typescript/shoehorn. Use when user mentions shoehorn, wants to replace `as` in tests, or needs partial test data.
Didn't find tool you were looking for?