Skip to main content
Guide the completion of development work by verifying tests, presenting clear options, and handling the chosen workflow. This skill ensures work is production-ready before integration.

Core Principle

Verify tests → Present options → Execute choice → Clean up Never merge untested code. Always give clear options. Always clean up when appropriate.
Always announce at start: “I’m using the finishing-a-development-branch skill to complete this work.”

The Process

Step 1: Verify Tests

Before presenting options, verify tests pass:
If tests fail:
Stop. Don’t proceed to Step 2. If tests pass: Continue to Step 2.

Step 2: Determine Base Branch

Or ask: “This branch split from main - is that correct?”

Step 3: Present Options

Present exactly these 4 options:
Don’t add explanations - keep options concise. The user knows what they mean.

Step 4: Execute Choice

Then: Cleanup worktree (Step 5)
Then: Cleanup worktree (Step 5)
Report: “Keeping branch <name>. Worktree preserved at <path>.”Don’t cleanup worktree.
Confirm first:
Wait for exact confirmation.If confirmed:
Then: Cleanup worktree (Step 5)

Step 5: Cleanup Worktree

For Options 1, 2, 4: Check if in worktree:
If yes:
For Option 3: Keep worktree.

Quick Reference

Common Pitfalls

Problem: Merge broken code, create failing PRFix: Always verify tests before offering options
Problem: “What should I do next?” → ambiguousFix: Present exactly 4 structured options
Problem: Remove worktree when might need it (Option 2, 3)Fix: Only cleanup for Options 1 and 4
Problem: Accidentally delete workFix: Require typed “discard” confirmation

Decision Tree

Red Flags

Never:
  • Proceed with failing tests
  • Merge without verifying tests on result
  • Delete work without confirmation
  • Force-push without explicit request
Always:
  • Verify tests before offering options
  • Present exactly 4 options
  • Get typed confirmation for Option 4
  • Clean up worktree for Options 1 & 4 only

Integration with Other Skills

Called by

  • subagent-driven-development (Step 7) - After all tasks complete
  • executing-plans (Step 5) - After all batches complete

Pairs with

  • using-git-worktrees - Cleans up worktree created by that skill