commit · getsentry — Claude Code skill: Sentry-style commit messages
A skill that drafts Sentry-style conventional commits with issue references and blocks direct commits to main.
npx skills add getsentry/skills --skill commit -a claude-codeWhat commit does
The commit skill handles the message side of committing. It starts with git branch --show-current: on main or master the agent creates a feature branch, and if the branch is still the default one it stops rather than committing. Changes get grouped so that each commit holds one coherent, independently reviewable change.
The message follows <type>(<scope>): <subject> with optional body and footer. Allowed types are feat, fix, ref, perf, docs, test, build, ci, chore, style, meta, license and revert. The subject goes in imperative present tense, capitalized, no trailing period, 70 characters or fewer, and every line stays under 100. Breaking changes take a ! before the colon plus a BREAKING CHANGE: footer. Use Fixes <issue> to close an issue and Refs <issue> to link one.
One rule is about privacy: customer and organization names, user emails, ticket contents, secrets and PII stay out of the message. Describe the technical symptom instead. The commit itself is created with git commit and separate -m arguments per paragraph and footer, so no interactive editor opens. That last part is where teams with a different convention will feel friction — the skill enforces its own format, and you either adopt it or rewrite history by hand.
What it helps with
- draft a conventional commit message
- avoid committing straight to main
- split edits into separately reviewable commits
- link a commit to an issue with Fixes or Refs
- keep customer names and PII out of commit messages
Example prompts for the agent
- commit these changes in Sentry style
- draft a commit message for the current branch
- commit the fix and close SENTRY-5678
How to install commit
1Skills CLI (Vercel)
npx skills add getsentry/skills --skill commit -a claude-code2Manually: put the files in place
~/.claude/skills/commit/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/commit/
1Skills CLI (Vercel)
npx skills add getsentry/skills --skill commit -a codex2Manually: put the files in place
.agents/skills/commit/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add getsentry/skills --skill commit -a cursor2Manually: put the files in place
.cursor/skills/commit/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install getsentry/skills commit2Manually: put the files in place
.github/skills/commit/SKILL.md1Skills CLI (Vercel)
npx skills add getsentry/skills --skill commit -a gemini-cli2Platform CLI
gemini skills install https://github.com/getsentry/skills --path skills/commitManually: put the files in place
.devin/skills/commit/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add getsentry/skills --skill commit -a opencodeClaude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
Step by step, with commands for each platform: How to install skills in Claude Code: five ways
Questions about commit
How do I install the commit skill in Claude?
Run npx skills add getsentry/skills --skill commit -a claude-code. The skill file lands at ~/.claude/skills/commit/SKILL.md.
What does the commit skill do?
It writes Sentry-style commit messages: type, optional scope, imperative subject, body and a footer with the issue reference. It also checks the branch and refuses to commit on main or master.
Which commit types are allowed?
feat, fix, ref, perf, docs, test, build, ci, chore, style, meta, license and revert. Refactoring without behavior changes uses ref, formatting without logic changes uses style.
Source text
SKILL.md · Apache-2.0
--- name: commit description: Use for every request to commit changes or draft a commit message. Creates Sentry-style conventional commits with issue references. --- # Sentry Commit Messages ## Before Committing ```bash git branch --show-current ``` If the branch is `main` or `master`, create a feature branch unless the user explicitly requested a direct commit. Re-check the branch and stop if it is still `main` or `master`. Commit one coherent, independently reviewable change at a time. ## Message Rules Use: ```text <type>(<scope>): <subject> <optional body> <optional footer> ``` - Scope is optional. Add `!` before `:` for a breaking change. - Write the subject in imperative, present tense; capitalize it, omit the trailing period, and keep it at 70 characters or fewer. - Keep every line under 100 characters. - Use the body only when useful. Explain what changed and why, including previous behavior or motivation when it helps. - Never include customer or organization names, user emails, support ticket contents, secrets, or PII. Describe the technical symptom instead. Allowed types: `feat`, `fix`, `ref`, `perf`, `docs`, `test`, `build`, `ci`, `chore`, `style`, `meta`, `license`, and `revert`. Use `ref` for refactoring without behavior changes, `style` for formatting without logic changes, and `meta` for repository metadata. ## Footers - `Fixes <issue>` closes an issue when merged. - `Refs <issue>` links an issue without closing it. - For breaking changes, add `BREAKING CHANGE: <impact>`. ## Creating the Commit Use separate `-m` arguments for paragraphs and footers. Never put literal `\n` sequences in a commit message or open an interactive editor. ```bash git commit -m "fix(api): Handle null response in user endpoint" \ -m "Return 404 when the user API finds a deleted account." \ -m "Fixes SENTRY-5678" ```
© getsentry · Apache-2.0 · getsentry/skills
Similar skills
All skills for Git and GitHub →commit by other authors comes first.