About wrap-up
wrap-up is a session-ending skill for recording work in Obsidian. It guides an agent through resolving a project, checking handoff notes, writing session and daily notes, and reporting archive candidates.
Key features
- 01Six-step end-of-session workflow
- 02Resolve project mapping and tags
- 03Load and clean up handoff notes
- 04Write Obsidian session and daily notes
- 05Collect older daily notes for archiving
- 06Report paths, changes, and open items
Use cases
- 01Document a completed work session in Obsidian
- 02Carry relevant handoff details into session notes
- 03Identify older daily notes for monthly archiving
Install
Copy the command and run it in a terminal.
npx skills add https:/ / github.com/ adeonir/ agent-skills --skill wrap-upAfter installing, type/wrap-upin Claude Code to confirm it loaded.
Bundled files
References and scripts installed along with SKILL.md.
README.mdagents/openai.yamlreferences/bootstrap.mdhandoff.mdmapping.mdnotes.mdscripts/registry.pyDetails
From the project READMEWrap Up Session
Triggers
- End-of-session command (
/wrap-up) → run the workflow below
End-of-session documentation to Obsidian. The skill is single-trigger: every invocation runs the full workflow.
Workflow
mapping → handoff:Load → notes (compose) → handoff:Cleanup → archive offer
Copy this checklist and tick it off:
Progress:
- [ ] Step 1: Resolve the project entry
- [ ] Step 2: Load the handoff
- [ ] Step 3: Write the session note and the daily note
- [ ] Step 4: Clear the handoff
- [ ] Step 5: Collect past-month daily notes
- [ ] Step 6: Report
Step 1. Resolve the project. Load mapping.md and resolve the project entry and the base tags. When the registry or the entry is missing, load bootstrap.md as mapping directs. Every later step depends on this output. Done when the entry's name, obsidian.path, and tags are known.
Step 2. Load the handoff. Load handoff.md and run its Load phase — the consolidated handoff at .artifacts/HANDOFF.md, when present, feeds the note content. It enters as a claim to check, not as authority: record the current state where the session's work superseded a claim, and report a claim only when the session's work does not explain the contradiction. A handoff that describes work this session did not do is not used and not cleared. Done when the handoff fields are in working context, or the handoff is known to be absent or unrelated.
Step 3. Write the notes. Load notes.md and write the Obsidian session note and the daily note. If a draft fails the check in notes.md, rewrite it and check again before writing. Done when each configured write returned success or a failure to report.
Step 4. Clear the handoff. Run the Cleanup phase of handoff.md — clear the handoff once every configured note write succeeded. Done when the handoff is empty, or preserved because a write failed.
Step 5. Collect past months. Offer to archive past months as notes.md sets out — daily notes from earlier months still at the root of Daily/ are listed in the report, and moved into their monthly folder only on the user's yes. Done when the list is collected, or none exist.
Step 6. Report. End with one report: the session note path when one was written and the daily note path, what the notes record in one to three sentences — what changed, on an update — and the open items: a handoff left untouched because it belongs to another session, a handoff claim the session's work does not explain, a failed write, and the past-month daily notes awaiting the archive answer, grouped by target folder. Never paste either note. Done when the report carries the note paths, the summary, and every open item, or states that none exist.
Run the six steps in one pass. The initial invocation authorizes the first four: never pause for confirmation between them, never preview the note content in chat, and report only at the end. Two exceptions: the bootstrap questions on a first run in Step 1, and the archive question in Step 5, asked once alongside the report.