| name | wrapup |
| description | This skill should be used when the user says "wrapup", "wrap up", "end of session", "save state", "handoff", "leave a clean stopping point", "I'm done for now", or "before I close". Quick by default (target under a minute): overwrites docs/handoff.md (≤60 lines) from git evidence — not chat memory — carrying the Deferred ledger forward, then asks exactly two questions: any decisions settled this session (append to docs/decisions.md)? anything blow up worth remembering (append to docs/lessons.md)? The deeper reconcile pass — checking whether the session left plan/prd/AGENTS.md stale, plus structural signals in the session diff (routes → api.md, modules/deps/migrations → architecture.md, visual decisions → design.md), drafting per-edit-confirmed fixes — runs only with --full (weekly use). No status/roadmap files, no auto-commit or push, never runs tests.
|
| argument-hint | [--full] |
| user-invocable | true |
| allowed-tools | Read Glob Grep Bash Write Edit AskUserQuestion |
Wrapup — leave a clean handoff, fast
End the session at a spot a fresh chat (or a post-compaction continuation) can resume
from cold. Quick is the default — the observed alternative to a fast wrapup is no
wrapup. --full adds the reconcile pass; the whole-repo audit stays in
/rad-repo-manager:repo-align.
Two hard rules:
- The one required output is an overwritten
docs/handoff.md. Always write it —
even if nothing changed this session (then it just snapshots the current resting
state). Never finish wrapup without having written it.
- Do not run tests, builds, linters, or any command beyond the read-only git
inspection in step 1.
wrapup only records validation that already ran this
session; it never runs validation itself.
Quick path (default)
1. Gather evidence (not memory)
In one batch:
git status --short
git diff --stat
git log --oneline -10
Determine what changed from the working tree, staged files, and recent commits — not
from a chat summary. Resolve applicable validation commands from the root/scoped
AGENTS.md chain and optional .rad-repo-manager.json via repo_contract.py. For
the Validation line, report only what already ran this session (do not re-run):
take it from the conversation, or — after compaction — from what the PreCompact hook
preserved. If neither source has it, write "Not recorded this session" — never invent
a result.
2. Overwrite the handoff snapshot
Read the current docs/handoff.md first — its ## Deferred — do not re-raise
section carries forward verbatim (prune an item only if its wake condition visibly
fired; say so when you do). Then overwrite the file from
<plugin-root>/templates/handoff.md (where <plugin-root> is either
${CLAUDE_PLUGIN_ROOT}, global config plugins/rad-repo-manager, or local workspace
plugins/rad-repo-manager). Create docs/ first if it doesn't exist. Keep the whole
file ≤60 lines (its L1 budget). Stamp **Updated:** with today's date (failing
that, git log -1 --format=%cs — don't ask). The shape:
- Last completed — 1–3 bullets grounded in the diff / commits / test output.
- Current focus — the current milestone or active task from
docs/plan.md, if present.
- Next action — the single next step to pick up.
- Validation — commands run this session and their result, or "Not run this session."
- Watchouts — only material gotchas; omit if none.
- Deferred — do not re-raise — carried forward, plus anything the owner parked
this session, each as
- <item> (wake: <condition or never>).
3. The two questions
Ask both in one AskUserQuestion round (or ask_question on Antigravity), then stop:
- "Any decisions get settled this session?" — for each one the user names,
append one dated line to
docs/decisions.md (create it with a # Decisions
header if absent): - YYYY-MM-DD · <decision> (<one-line why>). Settled
visual/design decisions go to docs/design.md instead (it's the sole
design-system source) — propose that edit and apply on the user's OK.
- "Anything blow up that's worth remembering?" — for each, append one dated
line to
docs/lessons.md (create with a # Lessons header if absent).
Appends only — never edit existing entries (see
<plugin-root>/references/shelf-spec.md). A "no" to both means write nothing.
That's the quick path. Report the handoff is written and stop — no scans, no
reconcile, no commit. (If the SessionStart trust report was red — handoff >10
commits behind — mention once that --full or /rad-repo-manager:repo-align is
worth it soon.)
--full — the reconcile pass (weekly)
Everything above, plus:
4. Reconcile the core docs with this session
Check whether this session's changes left AGENTS.md, docs/prd.md, or
docs/plan.md stale — scoped to what actually changed (the diff/commits above),
not a whole-repo audit (that's repo-align). Split by ownership:
- Docs this plugin owns —
AGENTS.md operational sections. Offer the specific,
scoped update (one line each: what's stale → what it should say) and apply on the
user's OK. Respect the 40-line budget — if a needed addition would blow it, that's
a rules-audit signal for repo-align, not a reason to overflow.
docs/plan.md — the planner's file. Status-level touches only (a task shipped,
the current milestone advanced) on the user's OK, refreshing its **Updated:**
stamp. If the divergence is structural — milestones obsolete, scope shifted,
the "Now" release essentially shipped — don't restructure: recommend
/rad-planner:replan.
- Docs the user owns —
docs/prd.md, docs/design.md. Draft the exact edit
(old → new) and ask per doc via AskUserQuestion: apply / skip / let me reword.
Apply only on an explicit "apply" for that specific edit — never bundle user-owned
edits into a blanket OK. A skipped edit is restated in one line at the end so it
isn't silently lost.
4b. Structural signals — keep architecture.md and api.md from rotting
Still scoped to this session's diff. These two docs have no other regular
maintainer (align runs rarely), so wrapup --full is where they stay honest.
Check the diff for:
- Route files changed (
app/**/route.*, pages/api/**, framework route
registrations) and docs/api.md exists → draft the matching api.md lines
(add / update / delete per route) and apply on the user's OK.
- Structure changed — a top-level source module added/renamed/removed, a
dependency manifest touched, a migration that changes the system shape — and
docs/architecture.md exists → draft the module-map delta (one row per affected
module, per the shelf-spec format) and apply on the user's OK. If
architecture.md exists but has no ## Module map section yet, note it once and
point at repo-align — don't bolt one on mid-wrapup.
- A visual/design decision settled this session and
docs/design.md exists →
that's the per-edit user-owned flow above, not this one.
No signal in the diff → say nothing, touch nothing. Never scan beyond the
session's changes here.
5. Hygiene pulse — one line, no audit
Run the cheap mechanical scan (python3, or python on Windows):
PLUGIN_ROOT=$( [ -d "./plugins/rad-repo-manager" ] && echo "./plugins/rad-repo-manager" || echo "${CLAUDE_PLUGIN_ROOT:-$HOME/.gemini/config/plugins/rad-repo-manager}" )
python3 "$PLUGIN_ROOT/scripts/repo-scan.py" . --json --no-record
If green, say nothing. If loose ends exist, add one line naming them and pointing
at repo-align — do not file, move, or fix anything here. (Skip silently if Python
is unavailable.)
Commit
Do not auto-commit or push. Tell the user the handoff is written and they can
commit via their normal flow — or run /rad-repo-manager:ship, which is the skill
whose invocation is commit-and-push authorization. If they explicitly ask here,
commit on the current branch with a short message — otherwise leave it.
What this skill does NOT do
- No whole-repo audit, contradiction scan, or doc filing — that's
repo-align. Even
--full's reconcile is scoped to this session's changes.
- Does not run tests, builds, linters, or validators — it only records validation
that already ran.
- Does not edit
docs/prd.md or docs/design.md without an explicit per-edit
"apply"; does not edit existing decisions.md/ideas.md/lessons.md entries —
those files are append-only.
- Does not create
docs/status.md, docs/roadmap.md, docs/implementation-plan.md,
loose root-level handoff/status/audit docs, or redundant scoped agent files.
- No appending to the handoff (overwrite only); no auto-commit or push.
References
<plugin-root>/templates/handoff.md — the snapshot shape, incl. the Deferred section
<plugin-root>/references/shelf-spec.md — the shelf, entry formats, budgets, one-writer table