Wrap it up
Quick answer
- 01What is it?
- Session conclusion and handoff generator. This skill should be used when the user signals the end of a working session, phrases like "wrap it up", "create a handoff", "summarize this session", "document what we did". It stands out by giving wrap it up a defined shape, so the agent asks for better context and returns a more usable result.
- 02Inputs
- Context the agent needs: your goals, audience, constraints, and any source material the skill asks for.
- 03Output
- A ready-to-use result: the analysis, copy, or recommendations the agent produces.
Add this skill
Install as a package
Installs this one skill package for your coding agent, including any supporting files that skill ships with — not every skill in the repository. Read the tutorial.
$ npx skills add andymccutcheon/skills --skill wrap-it-upSkill instructions
The instruction file for this skill. The skill also includes other files you need to install to use it.
Wrap It Up
Overview
Decompose the current working session into three structured, persistent outputs designed for maximum continuity and minimum onboarding cost across sessions. Every output is written to a standard location under .goose/session/ so the companion boot-up skill can discover them automatically.
Output Locations
All outputs are written relative to the project root. When no project root is discernible, use the current working directory.
| Output | Path | Purpose |
|---|---|---|
| Session Log | .goose/session/SESSION_LOG.md | Chronological, factual record of the session |
| Handoff Doc | .goose/session/HANDOFF.md | Agent-optimized brief for the next session |
| Codebase Docs | Project-appropriate locations (README.md, CHANGELOG.md, docs/, etc.) | Updated living documentation |
The assets/ directory in this skill contains template files that can be referenced for structure. The references/ directory contains detailed format specifications.
Workflow
Phase 1: Gather Session Intelligence
Before writing any output, collect the following data. Use scripts and shell commands to avoid consuming context window on raw data.
Git intelligence — Run scripts/gather-session-stats.sh from the project root. This script captures:
- Files changed (staged and unstaged)
- Commit range (first and last commit touched this session)
- Diff summary (files touched, insertions, deletions)
- Branch and remote status
If the script is not available or the project is not a git repo, gather equivalent information manually with individual commands.
Conversation intelligence — Extract from the current conversation:
- The user's original request(s) and how they evolved
- Every explicit decision made and the rationale
- Every error encountered and how it was resolved
- Files created, modified, or deleted (cross-reference with git)
- Patterns or conventions established
- Work that was explicitly deferred or left incomplete
Codebase intelligence — Note the current state of:
- Project structure (run
treeat depth 2-3 if not already known) - Key configuration files and their purpose
- Active dependencies and versions
- Environment-specific setup (API keys needed, services running, ports in use)
Phase 2: Produce the Session Log
Write .goose/session/SESSION_LOG.md. This is the authoritative factual record.
Load references/session-log-format.md for the complete format specification. At minimum, the log must include:
- Header: Session date, duration (approximate), project/repo
- Objectives: What the user set out to accomplish
- Chronological Log: Time-ordered entries covering every significant action
- Each entry: timestamp (approximate), action taken, files affected, outcome
- Mark decisions with
[DECISION]and errors with[ERROR]/[RESOLVED]
- Key Decisions: Extracted list of every decision with rationale
- Errors & Resolutions: Every error encountered and its fix
- File Manifest: Every file created or modified, with a one-line summary of changes
- Deferred Work: Explicit list of items mentioned but not completed
- Environment Notes: Services running, ports used, credentials needed, gotchas
Phase 3: Update Codebase Documentation
Identify all living documentation that should reflect the session's changes. Load references/doc-update-guide.md for detailed heuristics.
Read-before-write rule: Always read the current state of a documentation file before editing it. Never overwrite documentation blindly.
Files to consider updating:
README.md— If new features, setup steps, or usage patterns were addedCHANGELOG.md— If this project maintains one, append an entrydocs/directory — Any architecture docs, API docs, or guides affected by changesCLAUDE.md— If project conventions or instructions for AI agents changed.cursor/rules/or similar — If project-specific AI rules were modified
Update principles:
- Additive by default — append or insert; never remove existing content unless it is factually incorrect
- Minimal and precise — add only what a future reader needs; do not narrate
- Cross-reference the session log for full context (
see .goose/session/SESSION_LOG.md)
Phase 4: Produce the Handoff Document
Write .goose/session/HANDOFF.md. This is the most critical output — it is the primary document the boot-up skill reads to onboard the next session.
Load references/handoff-format.md for the complete format specification.
The handoff is agent-optimized: it prioritizes information density and structural predictability over narrative prose. Every section follows a consistent schema that the boot-up skill can parse efficiently.
Required sections:
- Continuity Key — 1-2 sentence summary of where things stand, formatted for immediate comprehension
- Active Context — The 3-5 most important facts the next agent must know
- Current Task Stack — What was being worked on, in priority order, with completion status
- Technical Surface — Key files, their roles, and what needs attention in each
- Decisions Register — Every decision made, with rationale, in compact form
- Blockers & Open Questions — What is blocking progress, what needs answers
- Next Actions — Concrete, ordered list of the first 3-5 things to do in the next session
- Environment Quick-Start — The exact commands to get running again
- Reference Index — Links to SESSION_LOG.md, updated docs, and any other relevant files
Phase 5: Verify and Summarize
After writing all outputs:
- Verify every file path referenced actually exists
- Confirm git status aligns with the file manifest
- Present a terse summary to the user covering:
- Files produced (paths)
- Documentation updated (paths)
- Top 3 next actions from the handoff
- One-line session summary
Quick Reference
- Session log format:
references/session-log-format.md - Handoff format:
references/handoff-format.md - Doc update heuristics:
references/doc-update-guide.md - Stats gathering script:
scripts/gather-session-stats.sh
Keywords
wrap up, handoff, session summary, document session, end session, finalize, session log, HANDOFF.md, SESSION_LOG.md, summarize work, next session, onboarding
Common questions
How do I install Wrap it up in Cursor, Claude Code, or Codex?
Run npx skills add andymccutcheon/skills --skill wrap-it-up in the project where you want it, then ask your agent for the skill by name. The --skill flag installs only Wrap it up, not every skill in the repository.
Where does Wrap it up come from and what license is it under?
Wrap it up comes from the andymccutcheon/skills repository on GitHub. The skill is published under the MIT license.
Prefer plain text? Read the Wrap it up guide as markdown.
Related skills
More from Block