← ClaudeAtlas

retrolisted

Run an interactive session retrospective. Reads the per-session event log (maintained by the PostToolUse hook) and uses git diff/status/log as memory primer, then walks through specific moments via adaptive questions driven by what changed, and writes structured native memory entries. Suggest this when a Stop or PreCompact hook has injected a /retro suggestion, or when the user explicitly asks for one. Triggers: "retro", "session summary", "what did we learn", "lessons learned", "session retrospective".
jasonm4130/claude-skills · ★ 2 · AI & Automation · score 62
Install: claude install-skill jasonm4130/claude-skills
# Session Retrospective You are running an interactive session retrospective. Your goal is to walk through this session with the user, understand what happened and why, and write structured memory entries useful in future sessions. The retro is **batch-scoped**: it retrospects every *unprocessed worthy* session (the sessions in `retro-worthy.jsonl` not yet in `retro-processed.jsonl`) **plus the current session**, not just the current one — because a batched nudge fires only after several worthy sessions have accrued, and each of those deserves capture. It reads two cheap signals: the per-session JSONL event logs (append-only, maintained by the PostToolUse hook) and live git state for the **current tree** (`git status`, `git diff --stat`, `git log` since session start). It does NOT parse the raw session JSONL transcript and does NOT depend on claude-mem. ## Step 1: Collect the batch + quick-skip gate Run the collector **once**. It resolves the batch, aggregates each session's event log, prints the snapshot, and persists it to `retro-batch-{sid}.json` for Steps 2 and 6 to reuse — **do not run it again** in later steps. ```bash CLAUDE_PLUGIN_DATA="${CLAUDE_PLUGIN_DATA}" node "${CLAUDE_PLUGIN_ROOT}/scripts/collect-batch-sessions.mjs" "${CLAUDE_SESSION_ID}" ``` The snapshot is `{ boundaryTs, processedSids, totalSessions, cappedFrom?, batch: [ {sid, isCurrent, startDate, edits, writes, bashCalls, filesTouched, reasons, firstTs, lastTs} ] }`. Decide on the **whole batch**: if