create-branch
Create a git branch following Sentry naming conventions. Use when asked to "create a branch", "new branch", "start a branch", "make a branch", "switch to a new branch", or when starting new work on the default branch.
Best use case
create-branch is best used when you need a repeatable AI agent workflow instead of a one-off prompt.
Create a git branch following Sentry naming conventions. Use when asked to "create a branch", "new branch", "start a branch", "make a branch", "switch to a new branch", or when starting new work on the default branch.
Teams using create-branch should expect a more consistent output, faster repeated execution, less prompt rewriting.
When to use this skill
- You want a reusable workflow that can be run more than once with consistent structure.
When not to use this skill
- You only need a quick one-off answer and do not need a reusable workflow.
- You cannot install or maintain the underlying files, dependencies, or repository context.
Installation
Claude Code / Cursor / Codex
Manual Installation
- Download SKILL.md from GitHub
- Place it in
.claude/skills/create-branch/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How create-branch Compares
| Feature / Agent | create-branch | Standard Approach |
|---|---|---|
| Platform Support | Not specified | Limited / Varies |
| Context Awareness | High | Baseline |
| Installation Complexity | Unknown | N/A |
Frequently Asked Questions
What does this skill do?
Create a git branch following Sentry naming conventions. Use when asked to "create a branch", "new branch", "start a branch", "make a branch", "switch to a new branch", or when starting new work on the default branch.
Where can I find the source code?
You can find the source code on GitHub using the link provided at the top of the page.
SKILL.md Source
# Create Branch
Create a git branch following Sentry naming conventions.
Keep this workflow non-interactive unless the user explicitly asks to choose the name manually.
## Workflow
1. Resolve the prefix:
- First try `gh api user --jq .login`
- Then `git config github.user`
- Then the local part of `git config user.email`
- Then `whoami`
- Sanitize to lowercase ASCII letters, digits, and hyphens; if empty, use `local`
2. Resolve the work description:
- If `$ARGUMENTS` is present, use it
- Otherwise inspect:
```bash
git diff
git diff --cached
git status --short
```
- If there are local changes, derive a short description from the diff
- If there are no local changes, use a generic description like `repo-maintenance`, `tooling-update`, or `work-in-progress`
3. Classify the branch type:
| Type | Use when |
|------|----------|
| `feat` | New functionality |
| `fix` | Broken behavior now works |
| `ref` | Behavior stays the same, structure changes |
| `chore` | Maintenance of existing tooling/config |
| `perf` | Same behavior, faster |
| `style` | Visual or formatting only |
| `docs` | Documentation only |
| `test` | Tests only |
| `ci` | CI/CD config |
| `build` | Build system |
| `meta` | Repo metadata |
| `license` | License changes |
When unsure: use `feat` for new things, `ref` for restructuring, `chore` for maintenance.
4. Generate `<prefix>/<type>/<short-description>`.
Keep `<short-description>` kebab-case, ASCII-only, and ideally 3 to 6 words.
5. Choose the base without prompting:
```bash
git branch --show-current
git remote | grep -qx origin && echo origin || git remote | head -1
git symbolic-ref refs/remotes/<remote>/HEAD 2>/dev/null | sed 's|refs/remotes/<remote>/||' | tr -d '[:space:]'
```
- If default branch detection fails, fall back to `main`, then `master`, then the current branch
- If on a detached HEAD, branch from the current commit
- If already on a non-default branch, branch from the current branch
- Only switch to the default branch when the user explicitly asks
6. Avoid collisions by appending `-2`, `-3`, and so on until the name is unused locally and remotely.
7. Create the branch:
```bash
git checkout -b <branch-name>
```
Report the final branch name, but do not stop for confirmation.
## References
- [Sentry Branch Naming](https://develop.sentry.dev/sdk/getting-started/standards/code-submission/#branch-naming)Related Skills
branch-naming-helper
Branch Naming Helper - Auto-activating skill for DevOps Basics. Triggers on: branch naming helper, branch naming helper Part of the DevOps Basics skill category.
create-design-system-rules
Generates custom design system rules for the user's codebase. Use when user says "create design system rules", "generate rules for my project", "set up design rules", "customize design system guidelines", or wants to establish project-specific conventions for Figma-to-code workflows. Requires Figma MCP server connection.
git-branch-cleanup
Analyzes and safely cleans up local Git branches. Categorizes branches by merge status, staleness, and remote tracking. Provides interactive selection with safety guards. Use when the user wants to clean up branches, delete old branches, organize Git branches, or asks about which branches can be safely deleted.
recipe-create-vacation-responder
Enable a Gmail out-of-office auto-reply with a custom message and date range.
recipe-create-task-list
Set up a new Google Tasks list with initial tasks.
recipe-create-shared-drive
Create a Google Shared Drive and add members with appropriate roles.
recipe-create-presentation
Create a new Google Slides presentation and add initial slides.
recipe-create-meet-space
Create a Google Meet meeting space and share the join link.
recipe-create-gmail-filter
Create a Gmail filter to automatically label, star, or categorize incoming messages.
recipe-create-feedback-form
Create a Google Form for feedback and share it via Gmail.
recipe-create-expense-tracker
Set up a Google Sheets spreadsheet for tracking expenses with headers and initial entries.
recipe-create-events-from-sheet
Read event data from a Google Sheets spreadsheet and create Google Calendar entries for each row.