Close out a session without leaving it half-shipped.
Verifies every change is committed, pushed, and green, confirms it is live, updates the notes, and hands back a summary with a rollback path.
Inside: The done-check, the live verify, the next-session note, and the rollback.
Install it in one line, or paste it in.
~/.claude/skills/ and runs automatically when it is relevant.Connect your context. Set it to your motion.
it reads status, the branch, and whether local matches the remote.
it confirms the build is green on the right commit before it calls it done.
| Set this | What it is | Example |
|---|---|---|
| Your definition of done | What "shipped" means for you | committedpushed to maindeploy greenverified live |
| Your verify step | How you confirm it is live | load the URLrun the testcheck the dashboard |
| Your notes location | Where the next-session brief lives | a context docan issuea channel message |
| Your rollback | How you undo the last change | the previous good commit or release |
Everything the skill does, in full.
Runs the safety pass at the end of a work session so you never leave the work half-shipped. It checks that everything is committed and pushed, the build or deploy is green, the change is actually live and verified, and the notes are updated so the next session starts warm. Then it hands you a short summary with live links, open items, and how to roll back. It is the lock-up, not the learning pass. Pair it with a handoff note and a reflect pass.
- 11. Inventory what changed
List every change this session and where each is supposed to show up. Anything not on the list does not get verified, so the list has to be honest.
- 22. Commit and push
Confirm the working tree is clean, everything is committed with a real message, and local matches the remote. Uncommitted work is the most common way a session is lost.
- 33. Confirm green
If there is a build, CI, or deploy, confirm it is passing on the exact commit you pushed. Not a previous one.
- 44. Verify live
Actually load the thing. Check the change is present in production, not just in the diff. For anything visual, look at it.
- 55. Update the notes
Write the next-session brief: current state, open items, where things live. Convert any "today" to a real date.
- 66. Hand back the summary
Report what shipped with live links, what is still open, and the one command or commit to roll back if needed.
- Nothing is reported as done unless it was confirmed live. Unverifiable items are flagged.
- Local must match the remote before closeout passes.
- The summary always includes a rollback path.
- Closeout is the safety pass only. It does not rewrite the work or the skills; that is the reflect pass.
CLOSEOUT: green Shipped: - New pricing page, live at /pricing (verified) - Fixed the signup redirect (verified, tested) Committed + pushed: main @ a1b2c3d, matches origin Deploy: READY on a1b2c3d Open items: mobile spacing on the hero (not blocking) Rollback: revert to 9f8e7d6
Where an operator takes this next.
The checklist catches what memory would have missed. Here is the version that runs it without being asked.
The lock-up happens the same way every time, whether you remember to run it carefully or not.
Wire this as the last step of a scheduled Claude task or a git hook so nothing gets left half-shipped by accident.
Connect your deploy target, Vercel for example, so the verify-live step checks production directly instead of you loading the page.
Send the closeout report to Slack automatically so a teammate picking up next session starts warm without asking you what happened.
One skill is the on-ramp.
A single skill does one job. Chained into a playbook, or run as a full build, it becomes a system. Here is where this one plugs in.