prep
Skill312 starsChanged 10 days agoMITView on GitHub
Session wrap-up. Update memories, check plans, review git state, check inbox, flag loose ends. Use before closing a session or compacting context.
7 other projects use a version of this.
Adopted by
Most recently taken up by
- AcKeskin/contexturetheir own version, first seen Nov 1, 2026
- azamkhanuk/context-centraltheir own version, first seen Oct 11, 2026
- xmeir-dev/skillstheir own version, first seen Oct 4, 2026
- Background-Craft/hydrant-skillstheir own version, first seen Sep 26, 2026
- hazlijohar95/skillstheir own version, first seen Sep 25, 2026
- atharh/career-corpus-kittheir own version, first seen Sep 3, 2026
Other versions7 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 7
- alirezarezvani/gaios★ 37same name
- atharh/career-corpus-kit★ 4same name
- AcKeskin/contexture★ 2same name
- azamkhanuk/context-central★ 2same name
- Background-Craft/hydrant-skills★ 1same name
- hazlijohar95/skills★ 1same name
- xmeir-dev/skills★ 0same name
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository4 other files it gives its agents.
- AGENTS.mdAGENTS.md
- .claude/AGENTS.mdAGENTS.md
- compassSkill
- memoSkill
The file
We split this skill into the rules it gives an agent
11 rules. 0 are common, 6 are distinctive, and 5 are very specific to this project.
0
Common
Most of the 7 edited versions we read keep these.
6
Distinctive
This author's own choices. Worth a look.
5
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 15
Read .trinity/passport.json — re-absorb your identity before writing anything
- Distinctive: line 16
Do ALL of the following, then confirm what was updated
- Distinctive: line 49
Check any DPLANs or FPLANs referenced in this session
- Distinctive: line 50
Update their execution logs, status, decision logs with current state
- Distinctive: line 51
If a plan was completed, note it (but don't close — the user does that)
- Distinctive: line 55
Run git status — report uncommitted changes
- Distinctive: line 56
If there's a logical commit waiting, suggest it (don't commit without asking)
- Very specific: line 61
Run drone @ai_mail inbox 2>/dev/null — report any unread emails
- Very specific: line 63
Run drone @devpulse feedback 2>/dev/null — report unread cross-project feedback.
- Very specific: line 67
Run ONE drone @devpulse compass review — it serves the oldest-unreviewed entry.
- Very specific: line 73
If anything can't survive compaction (e.g., agent IDs needed for resume), write it to local.json todos[] (one line, under 100 chars)
“Common” is measured: kept by at least 6 in 10 of the 7 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Session Wrap-Up
Purpose: Button up everything at the end of a session — or before a /compact. Memories, plans, git — all tidy. Works for both closing out a chat and preparing for compaction.
Workflow: /prep → review output → close chat or /compact
Execution
- Pin the interrupted thread FIRST — before any wrap-up work, write one sentence naming what the conversation was doing when /prep fired (the live task, question, or build mid-flight — "nothing in flight" counts). Prep often auto-triggers mid-task and the wrap-up steps flush the thread from attention; this line is what gets it back. It becomes the Resuming line at the end.
- Read
.trinity/passport.json— re-absorb your identity before writing anything - Do ALL of the following, then confirm what was updated
1. Memories
Each memory file plays a distinct role. Update based on what actually changed this session.
.trinity/passport.json— IDENTITY. Who you are: role, capabilities, principles. Only update if identity genuinely evolved this session..trinity/local.json— YOUR MEMORY. Add/update session entry with a summary of work done. Add key_learnings for anything learned. Update todos[] with current in-flight items — one line each, under 100 chars, no status..trinity/observations.json— YOUR MEMORY OF THE USER. Collaboration insights, preferences, friction points. Skip if nothing new about the user this session.
Entry shape — one rule for all four types
key_learnings, sessions, todos (local.json) and observations (observations.json) all share ONE shape: a list of objects, newest at the top (index 0). Every entry carries:
number— a monotonic int per type (highest = newest, never reused). New entry's number = current max for that type + 1.date— ISO date/datetime.- Plus its text field + extras: key_learnings
{number, date, key, value}· sessions{number, date, summary, status, tags}· todos{number, date, task, priority?}(nostatus— the story lives in sessions and plans) · observations{number, date, note, tags}.
When adding: stamp number + date, then prepend (newest on top). Don't hand-trim sessions/key_learnings/observations — rollover archives the oldest by number to @memory automatically. Todos roll too — the pad holds 10; the oldest by number roll to .backup/todo/<branch>/backlog.json (drone @memory todo backlog reads it, todo restore <n> brings one back). Rolling is not closing: delete done ones by hand (see Reconcile below).
Reconcile todos — verify against reality, don't trust the label
A todo finished in a past session often never gets deleted. Before writing the session entry, audit every todo on the pad against the actual system — the real state, not what you remember:
- Does the file/dir still exist (or is it gone)? Is the code path in or out? Does the README/doc actually say what the todo claims? Does the audit pass?
- Close what's verifiably done → note it in the session entry, then DELETE the todo from the array. The roll only moves the oldest to the backlog, it never closes anything, so a done todo left on the pad pushes a live one off it. Fail honestly — remove only on evidence, never just to tidy the list.
- Re-scope what's partially done → record which sub-items landed, keep the rest open.
- Leave deferred / pending-decision todos open — but confirm they're still real.
Quick checks beat assumptions: ls/find for files, git ls-files/grep for code/docs, drone @sentry audit for standards. This step is the whole point of "close whats done."
2. Active Plans
- Check any DPLANs or FPLANs referenced in this session
- Update their execution logs, status, decision logs with current state
- If a plan was completed, note it (but don't close — the user does that)
3. Git State (Devpulse only)
- Run
git status— report uncommitted changes - If there's a logical commit waiting, suggest it (don't commit without asking)
- Note the current branch and any open PRs
4. Inbox
- Run
drone @ai_mail inbox 2>/dev/null— report any unread emails - Close any that were already processed but not formally closed
- Run
drone @devpulse feedback 2>/dev/null— report unread cross-project feedback; view/reply/clear anything NEW (S304 F46: this box sat unread for 3 months because nothing invoked it)
5. Compass Review (Devpulse only)
- Run ONE
drone @devpulse compass review— it serves the oldest-unreviewed entry. Judge it: still true → confirm; superseded → archive it and note what replaced it; wrong → fix or archive. - One entry per prep, every prep. This is the curation cadence — review only works if it actually runs (DPLAN-0246: all 127 entries sat unreviewed because nothing invoked it).
6. Loose Ends
- Flag anything in-flight: running background agents, dispatched branches waiting for replies, pending decisions
- If anything can't survive compaction (e.g., agent IDs needed for resume), write it to local.json todos[] (one line, under 100 chars)
Confirm
List everything updated. Format:
Prep complete:
- local.json: [what was added]
- Todos: [reconciled vs reality — N done & removed, M re-scoped, K still open]
- observations.json: [updated / skipped]
- Plans: [which ones updated]
- Git: [branch, uncommitted count, suggestion]
- Inbox: [count, action taken]
- Compass: [entry #N reviewed — verdict]
- Loose ends: [any flagged]
Resuming: [the step-0 line — what was in flight when /prep fired, and the next concrete action on it]The Resuming line is the LAST line of the /prep reply, always — even when it's "nothing was in flight; awaiting your direction." If something WAS in flight, don't stop at naming it: pick the thread back up in the same turn (or, before a /compact, make sure the line carries enough for the post-compact self to continue without re-asking). Prep is a pit stop, not a finish line.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

