From vgv-wingspan
Creates a feature branch or worktree before writing artifacts. Detects the base branch, infers a branch name from context, and confirms with the user.
How this skill is triggered — by the user, by Claude, or both
Slash command
/vgv-wingspan:create-branch feature name or contextWhen to use
Use when user says "create a branch", "set up workspace", "start a feature branch", or "new branch".
feature name or contextThis skill is limited to the following tools:
The summary Claude sees in its skill listing — used to decide when to auto-load this skill
Set up a feature branch or worktree before the first artifact is written. Called by `/brainstorm` and `/plan` to keep files off the default branch.
Set up a feature branch or worktree before the first artifact is written. Called by /brainstorm and /plan to keep files off the default branch.
$ARGUMENTS
This may be a feature description, brainstorm topic, plan title, or empty (when called by another skill, the conversation context provides the description).
Run:
git rev-parse --abbrev-ref HEAD
Compare the result against the base branch detected by running:
${CLAUDE_SKILL_DIR}/scripts/detect-base-branch.sh
If the current branch is NOT the base branch (and not HEAD): the session is already on a feature branch. Skip silently — return control to the caller without any output.
If the current branch IS the base branch (or HEAD for detached state): proceed to Step 2.
Build a branch name in the format <type>/<kebab-topic>.
Default to feat/. Use fix/, refactor/, or chore/ when the context makes the type obvious.
Derive a kebab-case slug from the feature description or conversation context:
<type>/<slug>) stays under 60 charactersUse the AskUserQuestion tool to confirm the branch name and workspace type:
Question: "Set up workspace? Proposed branch: <type>/<kebab-topic>"
Options:
git checkout -b <name> (changes carry over to the new branch)EnterWorktreeThe "Other" option (auto-provided) lets users enter a custom branch name. If a custom name is provided, use it as-is for git checkout -b.
If the user selects "Skip": return control to the caller without changes.
Run:
git checkout -b <branch-name>
Before creating, check for uncommitted changes:
git status --porcelain
If the output is non-empty, use AskUserQuestion to warn:
Question: "You have uncommitted changes that will stay in your original working tree. The worktree starts from a clean checkout. Continue?"
Options:
git checkout -bIf proceeding with worktree, call the EnterWorktree tool with the branch name.
If EnterWorktree fails (e.g., already in a worktree), fall back to git checkout -b and inform the user.
npx claudepluginhub verygoodopensource/very-good-claude-code-marketplace --plugin vgv-wingspanCreates and switches to a new Git branch from an inline description, conversation context, or local diffs. Preserves uncommitted changes. Use for starting fresh or moving in-progress work to a named branch.
Creates git branches following Sentry naming conventions by analyzing changes and classifying branch types. Useful for standardizing branch creation.
Creates git branches following Sentry naming conventions. Automatically determines branch type and description from arguments or local diff. Useful when starting new work.