Now liveThe Skillselion MCP - thousands of ranked skills, loaded into your agent mid-task. No install.Get it →
pixel-process-ug avatar

Finishing A Development Branch

  • 67 installs
  • 1 repo stars
  • Updated March 16, 2026
  • pixel-process-ug/superkit-agents

Helps with ai & agent building tasks.

About

finishing-a-development-branch is a Claude Code skill in the AI & Agent Building category.

  • finishing-a-development-branch
  • AI & Agent Building
  • AI-coding skill

Finishing A Development Branch by the numbers

  • 67 all-time installs (skills.sh)
  • +3 installs in the week ending Aug 4, 2026 (Skillselion tracking)
  • Ranked #5,906 of 16,546 AI & Agent Building skills by installs in the Skillselion catalog
  • Data as of Aug 4, 2026 (Skillselion catalog sync)
npx skills add https://github.com/pixel-process-ug/superkit-agents --skill finishing-a-development-branch

Add your badge

Show developers this skill is listed on Skillselion. Paste this into your README.

Listed on Skillselion
Installs67
repo stars1
Last updatedMarch 16, 2026
Repositorypixel-process-ug/superkit-agents

What it does

Helps with ai & agent building tasks.

Files

SKILL.mdMarkdownGitHub ↗

Finishing a Development Branch

Overview

Provide a structured, safe process for completing work on a development branch, including verification, merge strategy selection, and cleanup. This skill ensures no branch is merged without passing tests, and every destructive operation requires explicit user confirmation.

When to Use

  • All planned work on a feature branch is complete
  • A branch is ready for code review or merge
  • Cleaning up after development work is finished
  • Preparing a pull request for team review

Phase 1: Verify All Tests Pass

[HARD-GATE] Do NOT proceed to any merge or PR activity without passing verification.

Before any merge or PR activity, invoke verification-before-completion to confirm:

  • All tests pass (unit, integration, e2e as applicable)
  • No lint errors or warnings
  • Build succeeds
  • No untracked files that should be committed
# Run the project's full verification suite
# Do NOT skip this step even if "tests were passing earlier"

If verification fails, STOP. Fix the failures before proceeding. Do NOT create PRs or merge branches with failing tests.

STOP — Verification must pass before continuing to Phase 2.

Phase 2: Determine Base Branch

Identify the branch to merge into, using this detection logic:

Auto-Detection

# Check for common base branch names
git branch -a | grep -E 'remotes/origin/(main|master|develop)$'

# Check what branch was the fork point
git log --oneline --decorate --graph HEAD...main --first-parent 2>/dev/null
git log --oneline --decorate --graph HEAD...master --first-parent 2>/dev/null

Base Branch Selection Decision Table

ConditionBase BranchConfidence
main existsmainHigh
Only master existsmasterHigh
develop exists and project uses GitFlowdevelopMedium
Multiple candidates foundAsk userRequired
None of the above existAsk userRequired

Verify Base Branch is Up to Date

git fetch origin
git log HEAD..<base-branch> --oneline

If the base branch has advanced since the feature branch was created, inform the user. They may want to rebase or merge base into the feature branch first.

Base Branch Divergence Decision Table

DivergenceAction
Base has 0 new commitsProceed normally
Base has 1-5 new commitsInform user, suggest rebase
Base has 6+ new commitsWarn user, recommend merge or rebase before proceeding
Merge conflicts detectedSTOP — resolve conflicts first

STOP — Confirm the base branch with the user before proceeding.

Phase 3: Present Merge Options

Present exactly these four options to the user. Do NOT add or remove options.

How would you like to finish this branch?

  A) Create PR    -- push and open a pull request for review
  B) Merge        -- merge into <base> with a merge commit
  C) Squash merge -- squash into one commit, merge into <base>
  D) Leave as-is  -- keep the branch, decide later

Option Selection Decision Table

ContextRecommended OptionWhy
Team project with code reviewA) Create PREnables review workflow
Solo project, clean historyB) MergePreserves full branch history
Many WIP commits, messy historyC) Squash mergeClean single commit on base
Work incomplete or uncertainD) Leave as-isNo risk, decide later

STOP — Wait for user to select an option. Do NOT assume a default.

Phase 4: Execute Chosen Option

Option A: Create Pull Request

# Push the branch
git push -u origin <branch-name>

# Generate PR title from branch name or recent commits
# Generate PR body from commit messages and diff summary
gh pr create --title "<title>" --body "<body>"

PR Title Generation:

  • Derive from branch name: feature/add-auth becomes Add authentication
  • Keep under 70 characters
  • Use imperative mood

PR Body Generation:

  • Summarize the changes (what and why)
  • List key modifications
  • Note any breaking changes
  • Include test plan

Option B: Merge Locally

# Switch to base branch
git checkout <base-branch>

# Merge feature branch
git merge <feature-branch>

# Delete the feature branch
git branch -d <feature-branch>

Confirmation required before executing the merge.

Option C: Squash Merge

# Switch to base branch
git checkout <base-branch>

# Squash merge
git merge --squash <feature-branch>

# Commit with a comprehensive message
git commit -m "<squash commit message>"

# Delete the feature branch
git branch -d <feature-branch>

Squash commit message should summarize all changes from the branch, not just the last commit.

Confirmation required before executing the squash merge.

Option D: Leave Branch As-Is

No action needed. Inform the user:

Branch <branch-name> left as-is.
You can return to it later with: git checkout <branch-name>

Phase 5: Cleanup

After executing options A, B, or C, perform cleanup:

Remove Worktree (if applicable)

If the branch was developed in a git worktree:

# Navigate out of the worktree first
git worktree remove <worktree-path>
git worktree prune

Clean Up Remote Tracking (Option B and C only)

If the branch was previously pushed:

# Delete remote branch after local merge
git push origin --delete <branch-name>

Confirmation required before deleting remote branches.

Verify Final State

git status
git log --oneline -5

Confirm the base branch is in the expected state.

Confirmation Requirements

[HARD-GATE] The following operations require explicit user confirmation before execution. Do NOT proceed on assumption. Always ask.

OperationWhy Confirmation Is Required
Merge into base branchChanges base branch history
Squash mergeLoses individual commit history
Delete local branchCannot be undone if not pushed
Delete remote branchAffects other collaborators
Force remove worktreeMay discard uncommitted changes
Rebase onto updated baseRewrites commit history

Anti-Patterns / Common Mistakes

Anti-PatternWhy It Is WrongWhat to Do Instead
Merging without running testsBroken code reaches base branchAlways run full verification first
Skipping base branch freshness checkMerge conflicts discovered lategit fetch and check divergence
Auto-selecting merge strategyUser may prefer different approachAlways present all four options
Deleting branch without confirmationData loss riskAsk before every deletion
Creating PR with failing CIWastes reviewer timeFix CI before creating PR
Squash message from last commit onlyLoses context of full branch workSummarize all changes in squash msg
Leaving stale remote branchesCluttered repositoryClean up remote after merge
Force-pushing after PR creationDestroys review commentsAvoid force-push on PR branches

Error Handling

ErrorAction
Merge conflictsReport conflicts, ask user to resolve, do NOT auto-resolve
Push rejectedFetch and check if rebase/merge is needed
PR creation failsCheck gh auth status, report error details
Branch already deletedSkip deletion, continue with remaining cleanup
Tests failSTOP immediately, do NOT merge or create PR
Base branch does not exist on remoteAsk user to confirm the correct base

Integration Points

SkillIntegration
verification-before-completionMust invoke in Phase 1 before any merge activity
using-git-worktreesCleanup includes worktree removal if applicable
git-commit-helperSquash commit message follows conventional commit format
code-reviewPR creation (Option A) feeds into code review workflow
planningBranch completion is the final step of plan execution
deploymentMerge to main/release may trigger deployment pipeline

Skill Type

RIGID — Follow this process exactly. Every phase must be completed in order. Do NOT skip verification. Do NOT merge without user confirmation. Do NOT assume a merge strategy. Do NOT delete branches without asking.

Related skills

This week in AI coding

Five minutes, every Monday - the tools, releases and tactics for developers.

unsubscribe anytime.