Help us improve
Share bugs, ideas, or general feedback.
From vibekit
Integrates a user-approved vibe branch into the main flow via local merge, pull request, or branch cleanup. Requires prior review sign-off and explicit user selection of action.
npx claudepluginhub rizukirr/vibekit --plugin vibekitHow this skill is triggered — by the user, by Claude, or both
Slash command
/vibekit:finish-branchThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Take a verified, reviewed, user-approved vibe branch and integrate it into the user's main flow. This is the only skill in the pipeline that performs outward-facing actions — merges, pushes, PR creation. Every one of those actions requires explicit user selection, in this skill, right now. A previous `yes` from `review-pack` authorizes this skill to *run*; it does not authorize any specific out...
Verifies implementation then offers options to merge locally, create PR with verification steps, keep, or discard Git branches at development completion.
Runs verification checks, reviews the diff, picks the integration path (merge, PR, squash, stacked PR), writes the PR/merge message, pushes, and cleans up branches and worktrees.
Use when implementation is finished, tests are green, and you need to decide how to land the work - presents structured integration paths for local merge, pull request, deferral, or abandonment
Share bugs, ideas, or general feedback.
Take a verified, reviewed, user-approved vibe branch and integrate it into the user's main flow. This is the only skill in the pipeline that performs outward-facing actions — merges, pushes, PR creation. Every one of those actions requires explicit user selection, in this skill, right now. A previous yes from review-pack authorizes this skill to run; it does not authorize any specific outward action.
review-pack returned yes.verify-gate verdict ready.review-pack sign-off.Do not invoke:
ready.yes.If any prerequisite fails, stop and surface it. In particular, if new commits have landed since review-pack, re-run review-pack on the current HEAD — do not integrate unreviewed work.
finish-branch: review approved. How do you want to integrate?
(1) Merge into <base> locally.
git switch <base> && git merge --no-ff vibe/<slug>
Does not push. Does not delete the branch.
(2) Open a pull request.
Pushes vibe/<slug> to origin and opens a PR against <base> via `gh pr create`.
Title: <suggested>
Body: <suggested, see §PR body template>
Does not merge. Does not delete.
(3) Keep the branch, do nothing.
No push, no merge. Useful if you want to review offline or share manually.
(4) Abandon the branch.
Deletes the branch and (if using worktree mode) removes the worktree.
Destructive. Double-confirms before running.
Pick a number.
Only the option the user picks runs. If they want multiple (e.g. merge locally AND push), they run finish-branch again for the second action.
Commands (announce first, execute after):
git switch <base>
git merge --no-ff vibe/<slug> -m "merge: <feature> — <spec slug>"
Do not delete the vibe branch. Leave branch and worktree intact so the user can iterate or roll back. A later finish-branch invocation can clean up.
On conflict: stop immediately, announce the conflict, leave the merge in the conflicted state. Do not attempt auto-resolution. The user decides whether to resolve manually or git merge --abort.
Prerequisites on top of the general ones:
gh is installed and authenticated, or the user's configured PR-creation command is available.origin exists.Commands:
git push -u origin vibe/<slug>
gh pr create --base <base> --head vibe/<slug> \
--title "<suggested title>" \
--body "<body from template>"
Derive from the spec's title: e.g. spec toKebabCase → PR title feat: add toKebabCase utility.
Do not default to the vibe run id. Use the spec's semantic title.
## Summary
<one-line, from the spec's Goals section>
## Changes
<bulleted list, one per plan task>
## Testing
<commands run + pass summary from the verify-gate report>
## Spec
`<path to spec>` (status: approved)
## Plan
`<path to plan>`
## Verification
`<path to verify-gate report>` — verdict: ready
## Review
`<path to review-pack document>` — user signed off
Include the artifact paths verbatim; reviewers follow them to reconstruct the run.
Push output and PR URL are captured verbatim in the finish-branch log. Do not summarize.
No-op action. Announce:
finish-branch: kept vibe/<slug>. No push, no merge.
Branch and worktree remain.
Record the run as complete-but-not-integrated. The user can come back later and run finish-branch again with a different option.
Destructive. Requires a double confirm:
Abandon vibe/<slug>? This deletes the branch and removes the worktree if any.
Commits will be reachable for ~90 days via reflog but are otherwise lost.
Type `abandon <slug>` exactly to confirm.
On correct confirmation:
git worktree remove .vibe-worktrees/<run-id> # if worktree mode
git branch -D vibe/<slug>
On wrong confirmation string: cancel the action. Do not ask again. User re-invokes the skill if they really mean it.
git reset --hard on main / master / the user's base branch.--no-verify, --no-gpg-sign) unless the user explicitly asks in this invocation.If any safety rule would be violated, stop and surface the condition. The user has to unblock, not the skill.
finish-branch: merged vibe/<slug> into <base> (local, no push).
or
finish-branch: PR opened — <url>.
or
finish-branch: kept vibe/<slug>.
or
finish-branch: abandoned vibe/<slug>.
Nothing else.