wrap-up
Session-closeout audit — check for unfinished work before ending a conversation, then give a clear verdict. ALWAYS use this skill when the user asks "can we close this chat?", "is there anything else
SKILL.mdskills/wrap-up/SKILL.md
GitHubWrap-Up
Audit the session for loose ends, then deliver a verdict in the format below. Be honest — a missed loose end discovered tomorrow is worse than one more row in the table.
1. Load the output rules
Apply this kit's answer-first rules to this skill's output — in its single-reply mode:
verdict first, no preamble, no recap, no closers, cap lists at 5, matter-of-fact tone. Load
answer-first/SKILL.md from this kit and follow its Rules section. Do not adopt its session
persistence — the user asked to close a chat, not to change your format from here on.
2. Audit (silent — none of this goes in the reply)
Scope: THIS conversation only. Every item you report must trace to something
done, touched, or promised in this chat. Pre-existing state — dirty files you
didn't edit, PRs you didn't open or work on, other people's branches, project
backlog, memory-file TODOs, recalled <system-reminder> context — is OUT OF
SCOPE even when it looks urgent. If you can't point at the turn in this session
that created or committed to it, it does not go in the table. Mentioning it
anyway is the failure mode this rule exists to prevent.
Verify with commands, don't recall from memory:
- In-flight work — subagents, background shells, workflows, monitors, scheduled wakeups started in this session. Pending task notifications count as unfinished.
- Git —
git status+git log @{u}.., filtered to paths this session edited and commits this session authored. Ignore unrelated dirty files and pre-existing unpushed commits. - PRs — only PRs opened, pushed to, reviewed, or babysat in this session. CI running? Review pending? Merged but deploy unverified?
- Promised-but-undone — scan this conversation for "I'll do X", deferred requests, agreed follow-ups not executed.
- Knowledge worth persisting — did this session produce a non-obvious lesson, gotcha, or decision that isn't captured anywhere? Do NOT triage or write it here. If yes, it becomes ONE table row: Item
unsaved session lessons, Statenow, Fixrun reflect. Thereflectskill owns classification, targets, and the approval gate.
If unrelated state is genuinely alarming (e.g. a destructive uncommitted change
you didn't make), it gets at most one line under the table prefixed
FYI (not this session): — never a numbered row, never in the count.
3. Verdict — use one of these two shapes verbatim
Hard cap: 12 lines total. No intro sentence. No "I checked X, Y, Z." No closing offer.
Nothing outstanding
SAFE TO CLOSE — <what the session shipped, ≤12 words>
One line. Stop there.
Items remain
NOT DONE — <N> open
| # | Item | State | Fix |
|---|------|-------|-----|
| 1 | <≤6 words> | now / safe / you | <≤8 words> |
Next: <one action, under 2 minutes>
- Max 5 rows, most urgent first. More than 5 → keep the top 5, add one line:
+<N> minor (ask to list). Stateis exactly one of:now— quick, I can do it this turnsafe— survives the session ending (bot-babysat PR, running cron), no action neededyou— only the user can decide or act
Next:names ONE thing. If anynowrows exist, it's an offer to run them — propose, never auto-execute.
Nothing else. No paragraph explaining the table.