Helps developers finish a branch with merge, PR, or cleanup workflows.
Copy the install command and let the AI configure it · recommended for beginners
Please install the "Finishing a Development Branch" skill from askskill: 1. Download https://raw.githubusercontent.com/obra/clank/main/skills/collaboration/finishing-a-development-branch/SKILL.md 2. Save it as ~/.claude/skills/finishing-a-development-branch/SKILL.md 3. Reload skills and tell me it's ready
I have finished work on the feature/login-refactor branch. Give me a safe wrap-up workflow: check working tree status, sync the main branch, handle possible conflicts, merge into main, and finally delete the local and remote branch. List the commands step by step and explain each one.
A clear Git wrap-up workflow with commands for checking, syncing, merging, conflict handling, and branch cleanup.
I want to finish the feature/payment-retry branch without merging directly. Help me create a wrap-up checklist for opening a pull request, including commit cleanup, pushing the branch, change notes, and a suggested PR title and description template.
A complete checklist for submitting a PR, including recommended commands and a PR title and description template.
I experimented on the experiment/cache-test branch and decided not to keep it. Show me how to confirm there are no unsaved changes, how to back up any commits I may need, and then safely delete the local branch; if a remote branch exists, clean that up too.
A safe branch disposal workflow covering change checks, commit backup, and local/remote branch deletion.
Guide completion of development work by presenting clear options and handling chosen workflow.
Core principle: Verify tests → Present options → Execute choice → Clean up.
Announce at start: "I'm using the Finishing a Development Branch skill to complete this work."
Before presenting options, verify tests pass:
# Run project's test suite
npm test / cargo test / pytest / go test ./...
If tests fail:
Tests failing (<N> failures). Must fix before completing:
[Show failures]
Cannot proceed with merge/PR until tests pass.
Stop. Don't proceed to Step 2.
If tests pass: Continue to Step 2.
# Try common base branches
git merge-base HEAD main 2>/dev/null || git merge-base HEAD master 2>/dev/null
Or ask: "This branch split from main - is that correct?"
Present exactly these 4 options:
Implementation complete. What would you like to do?
1. Merge back to <base-branch> locally
2. Push and create a Pull Request
3. Keep the branch as-is (I'll handle it later)
4. Discard this work
Which option?
Don't add explanation - keep options concise.
# Switch to base branch
git checkout <base-branch>
# Pull latest
git pull
# Merge feature branch
git merge <feature-branch>
# Verify tests on merged result
<test command>
# If tests pass
git branch -d <feature-branch>
Then: Cleanup worktree (Step 5)
# Push branch
git push -u origin <feature-branch>
# Create PR
gh pr create --title "<title>" --body "$(cat <<'EOF'
## Summary
<2-3 bullets of what changed>
## Test Plan
- [ ] <verification steps>
EOF
)"
Then: Cleanup worktree (Step 5)
Report: "Keeping branch <name>. Worktree preserved at <path>."
Don't cleanup worktree.
Confirm first:
This will permanently delete:
- Branch <name>
- All commits: <commit-list>
- Worktree at <path>
Type 'discard' to confirm.
Wait for exact confirmation.
If confirmed:
git checkout <base-branch>
git branch -D <feature-branch>
Then: Cleanup worktree (Step 5)
For Options 1, 2, 4:
Check if in worktree:
git worktree list | grep $(git branch --show-current)
If yes:
git worktree remove <worktree-path>
For Option 3: Keep worktree.
| Option | Merge | Push | Keep Worktree | Cleanup Branch |
|---|---|---|---|---|
| 1. Merge locally | ✓ | - | - | ✓ |
| 2. Create PR | - | ✓ | ✓ | - |
| 3. Keep as-is | - | - | ✓ | - |
| 4. Discard | - | - | - | ✓ (force) |
Skipping test verification
Open-ended questions
Automatic worktree cleanup
No confirmation for discard
Never:
Always:
Called by:
Pairs with:
Write evergreen comments focused on what and why, not historical context.
Compare 2-3 approaches before execution to choose a stronger solution.
Plan with pseudocode first, refine approaches, then translate into working code.
Search past Claude Code chats to recover facts, decisions, and context.
Design systems by hiding implementation details behind domain-level interfaces.
Name code by domain meaning to improve clarity and team alignment.
Helps decide merge, PR, or cleanup steps after branch work is complete.
Finalize completed work by committing, pushing, and opening reviewed pull requests.
Create, switch, and verify Git branches before starting implementation work.
Generate standardized Git commits from diffs with logical grouping support.
Merge session branch changes back into the base branch cleanly.
Apply the right commit prefix, reviewer, and test plan for code changes.