Best for
- Implementation of a feature or bug fix is complete on a development branch
- All planned commits are in, the user is ready to hand off
- You are about to say "done" and suggest the next action
event4u-app/agent-config/src/skills/finishing-a-development-branch/SKILL.md
Use when the feature is implementation-complete and the next step is 'ship it' — verifies, cleans up, routes to merge/PR/park/discard; never destroys work without explicit confirmation.
Decision brief
Use when the feature is implementation-complete and the next step is 'ship it' — verifies, cleans up, routes to merge/PR/park/discard; never destroys work without explicit confirmation.
Compatibility matrix
| Platform | Status | Evidence | What to check |
|---|---|---|---|
| Codex | Not declared | No explicit evidence | Portability before use |
| Claude Code | Not declared | No explicit evidence | Portability before use |
| Cursor | Not declared | No explicit evidence | Portability before use |
| Gemini CLI | Not declared | No explicit evidence | Portability before use |
Installation
The source command is displayed only when detected. A safe inspection prompt is always available so your agent can explain every action before execution.
npx skills add https://github.com/event4u-app/agent-config --skill "src/skills/finishing-a-development-branch"Inspect the Agent Skill "finishing-a-development-branch" from https://github.com/event4u-app/agent-config/blob/a36d4658de87e81bda8299dc3a01b9b9ce583af5/src/skills/finishing-a-development-branch/SKILL.md at commit a36d4658de87e81bda8299dc3a01b9b9ce583af5. List every install step, command, network request, credential, file read/write, external action, and rollback step. Explain whether it fits my task. Do not install or execute anything until I approve.
Workflow
Before presenting any options, gather context. Do not assume — check:
Implementation of a feature or bug fix is complete on a development branch All planned commits are in, the user is ready to hand off You are about to say "done" and suggest the next action The branch has been idle and the user wants to decide its fate
Route a finished branch to its next state with evidence — merged, pushed for PR, parked, or discarded. Never let a half-verified branch become a PR. Never destroy work without explicit confirmation.
Skipping verification because "it worked a minute ago" is how broken main happens. Discarding because "I assumed the user meant it" is how work gets lost.
Before presenting any options, gather context. Do not assume — check:
Permission review
The documentation asks the agent to run terminal commands or scripts.
git checkout <base-branch>The documentation asks the agent to run terminal commands or scripts.
git pull --ff-onlyEvidence record
| Signal | Value | Evidence type | Meaning |
|---|---|---|---|
| Quality score | 94/100 | Computed | Documentation, specificity, maintenance, and trust rules |
| Repository stars | 7 | Source | Repository attention, not individual Skill quality |
| Compatibility | 0 platforms | Source | Declared in the catalog source record |
| Usage guide | automated source guide | Editorial | Generated or reviewed according to the visible evidence level |
Pinned source
Do NOT use when:
receiving-code-reviewRoute a finished branch to its next state with evidence — merged, pushed for PR, parked, or discarded. Never let a half-verified branch become a PR. Never destroy work without explicit confirmation.
NO MERGE, NO PR, NO DISCARD WITHOUT VERIFIED TESTS + EXPLICIT CHOICE.
Skipping verification because "it worked a minute ago" is how broken
main happens. Discarding because "I assumed the user meant it" is
how work gets lost.
Before presenting any options, gather context. Do not assume — check:
git status — clean, or still dirty?git log --oneline <base>..HEAD — what commits are actually on this
branch?git branch --show-current — the branch name you will be operating onIf a PR already exists for this branch, stop — this is not a
finishing step, route to receiving-code-review
or fix-pr-comments instead.
Run the end-of-work gate before presenting any options — see
verify-completion-evidence.
Steps 1–3 run only when quality.local_auto_run: true; under the
default (false / missing) skip them without asking — the user runs
quality tools manually, remote CI on the PR is the authoritative gate,
and the readiness report says "quality gates delegated to remote CI"
instead of claiming them green:
git status clean — nothing unstaged, no stray filesIf any executed step fails → stop. Report the failure, do not present ship options. Fixing the failure comes first.
# Default: main
BASE=main
# Stacked PR: parent branch
BASE=$(git config branch.$(git branch --show-current).merge | sed 's|refs/heads/||')
If ambiguous, ask: "This branch splits from <guess> — correct?"
before presenting options.
Ask the user exactly one question:
Implementation is verified. What now?
1. Open a Pull Request on <base-branch>
2. Merge locally into <base-branch> (for projects without a PR flow)
3. Keep the branch as-is — I'll handle it later
4. Discard all work on this branch
Do not add recommendations unless the user asks. Each option leads to a different sub-procedure (steps 5a–5d).
prepare-for-reviewreview-changescreate-pr-descriptioncreate-prSee requesting-code-review for
the surrounding discipline.
Use only when the project policy is "no PR required" (solo repos, spike branches, private tooling). For team repos, default to Option 1.
git checkout <base-branch>
git pull --ff-only
git merge --no-ff <feature-branch>
# Re-run the full test suite on the merged tree
<test command>
# Only if green:
git branch -d <feature-branch>
If the post-merge test run fails → git reset --hard ORIG_HEAD, fix
on the feature branch, restart from Option 1/2.
Confirmation gate — require a typed answer, not "y":
This will permanently remove:
- Local branch <name>
- Remote branch <name> (if pushed)
- Commits: <list of SHAs + subjects>
Type "discard <name>" to confirm.
Only on exact match:
git checkout <base-branch>
git branch -D <feature-branch>
# Remove remote only if the user confirms a second time
git push origin --delete <feature-branch>
Log the discarded SHAs so the work can be recovered via git reflog
within the reflog TTL if needed.
If the branch lives in a git worktree:
git worktree remove <path> after the branch
terminal stateAfter the chosen option completes, report:
abcdef", "Branch discarded")git branch -d vs -D — lowercase -d refuses unmerged branches,
uppercase -D forces; only use -D inside the confirmed discard
flowmain — opening a PR to main
invalidates the stackcreate-pr — duplicates work. Trust the gate result if nothing
changed in betweenverify-completion-evidenceprepare-for-reviewcommit,
conventional-commits-writingreview-changescreate-prreceiving-code-reviewBefore reporting "done" after this skill runs:
quality.local_auto_run: true — under the default false
the report states "quality gates delegated to remote CI" insteadFrequently asked questions
Use when the feature is implementation-complete and the next step is 'ship it' — verifies, cleans up, routes to merge/PR/park/discard; never destroys work without explicit confirmation.
The source record exposes this install command: npx skills add https://github.com/event4u-app/agent-config --skill "src/skills/finishing-a-development-branch". Inspect the command and pinned source before running it.
Static rules flagged exec-script in the source; the page lists the matching lines and excerpts.
Alternatives
coreyhaines31/marketingskills
When the user wants to plan, design, or implement an A/B test or experiment, or build a growth experimentation program. Also use when the user mentions "A/B test," "split test," "experiment," "test this change," "variant copy," "multivariate test," "hypothesis," "should I test this," "which version is better," "test two versions," "statistical significance," "how long should I run this test," "growth experiments," "experiment velocity," "experiment backlog," "ICE score," "experimentation program
garrytan/gbrain
End-to-end discipline for turning any large data source (audio libraries, email takeouts, document corpora, chat exports, API dumps) into brain pages at scale. The lifecycle spine: SCHEMA → ACCESS → TRIAL → EVALUATE → IMPROVE → CODIFY → TEST → SKILLIFY → BULK → MONITOR. State is tracked in a durable JSON manifest (see MANIFEST-PATTERN.md) so any crash, session boundary, or subagent fan-out resumes from ground truth instead of memory.
alirezarezvani/claude-skills
App Store Optimization (ASO) toolkit for researching keywords, analyzing competitor rankings, generating metadata suggestions, and improving app visibility on Apple App Store and Google Play Store. Use when the user asks about ASO, app store rankings, app metadata, app titles and descriptions, app store listings, app visibility, or mobile app marketing on iOS or Android. Supports keyword research and scoring, competitor keyword analysis, metadata optimization, A/B test planning, launch checklist
dotnet/skills
Migrates .NET test projects from VSTest to Microsoft.Testing.Platform (MTP). Use when user asks to "migrate to MTP", "switch from VSTest", "enable Microsoft.Testing.Platform", "use MTP runner", set OutputType=Exe only for test projects in Directory.Build.props, or mentions EnableMSTestRunner, EnableNUnitRunner, or UseMicrosoftTestingPlatformRunner. USE FOR: MTP behavioral differences vs VSTest (exit code 8, zero tests discovered, --ignore-exit-code, TESTINGPLATFORM_EXITCODE_IGNORE); centralizing