Use when implementation is complete, all tests pass, and you need to decide how to integrate the work - guides completion of development work by verifying work is complete (tests, requirements, code review, TDD compliance) and presenting structured options for merge, PR, or cleanup
Guides completion of verified development work and presents structured options for merging, creating a PR, or cleanup.
npx claudepluginhub bacchus-labs/wranglerThis skill inherits all available tools. When active, it can use any tool Claude has access to.
Guide completion of development work by presenting clear options and handling chosen workflow.
Core principle: Verify completeness (tests, requirements, code review, TDD) → Present options → Execute choice → Clean up.
BEFORE presenting options, verify work is ACTUALLY complete:
Run full test suite:
npm test
# or
pytest
# or
cargo test
# or
go test ./...
Required output:
If tests fail: STOP. Fix tests. Cannot proceed with incomplete work.
Check verifying-before-completion requirements checklist:
If ANY unchecked: Work is NOT complete. Finish requirements first.
Check verifying-before-completion code review gate:
Valid exceptions (ONLY these):
If code review required but not obtained: STOP. Request code review first.
If claiming exception: Document which exception (1, 2, or 3) and provide evidence.
Check verifying-before-completion TDD certification:
If TDD violated: Work is NOT complete. Violations must be fixed.
Verify no errors, warnings, or deprecations:
If output not pristine: Clean up before proceeding.
ONLY if ALL sections (1.1-1.5) are complete: Continue to Step 2.
If ANY section incomplete:
This is a GATE. You cannot proceed without complete verification.
# 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?"
Prerequisites verified (from Step 1):
Since work is VERIFIED complete, you have these 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 in worktree:
git worktree remove <worktree-path>
If NOT in worktree (main branch):
For Option 3: Keep worktree (if one exists).
| 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:
If you find yourself:
THEN:
Proceeding without complete Step 1 verification violates verifying-before-completion.
Called by:
Pairs with: