Generates and validates conventional branch names. Use for any branch naming or renaming, such as when asked to "name this branch".
Scanned 9/2/2026
Install to Claude Code
npx -y skills add erclx/canon --skill git-branch --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Git Branch?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/erclx-git-branch)More formats (shields.io, HTML) on the badges page.
---
name: git-branch
description: Generates and validates conventional branch names. Use for any branch naming or renaming, such as when asked to "name this branch".
---
# Git branch
Before generating a branch name, read:
- `${CLAUDE_SKILL_DIR}/../../standards/branch.md`: format, types, length limit, and constraints
Follow it exactly.
## Context
Run these commands in parallel to gather git context:
- `git branch --show-current 2>/dev/null || echo "NO_BRANCH"`
- `git rev-parse --verify "origin/$(git branch --show-current)" 2>/dev/null && echo "EXISTS" || echo "LOCAL_ONLY"`
- `git log main..HEAD --oneline 2>/dev/null || echo "NO_COMMITS"`
## Guards
- If already on main or master, stop: `❌ Cannot rename a protected branch.`
- If branch name already follows conventions, stop: `✅ Branch name already follows conventions.`
- If no commits and no args provided, stop: `❌ No commits or description to derive a branch name from.`
## Response format
### Preview
- **Current:** <current_branch>
- **Suggested:** <suggested_name>
- **Length:** <count>/50
- **Status:** <LOCAL_ONLY | EXISTS on remote>
- **Analysis:** <brief explanation of type choice>
If EXISTS on remote, warn and stop:
```plaintext
⚠️ Branch exists on remote. Rename manually via GitHub UI or gh CLI to avoid breaking open PRs.
```
After outputting the preview, execute the final command immediately. Claude Code's tool permission dialog is the confirmation gate. Do not wait for user input.
### Final command
Only output if LOCAL_ONLY:
```bash
git branch -m <current> <suggested>
```
## After execution
Respond with exactly one line:
`✅ Renamed: <current> → <suggested>`
Do not add any other text.
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!