done
Original:🇺🇸 English
Translated
Session retrospective and codification. Run at the end of any significant session to extract learnings, update documentation, and create artifacts that make future sessions smoother. Invoke when: - Finishing a multi-step implementation - After debugging a hard problem - End of any session with 3+ tool calls - "what did we learn?" / "wrap up" / "done" Subsumes /codify-learning (codification is one output, not the only one).
3installs
Sourcephrazzld/claude-config
Added on
NPX Install
npx skill4agent add phrazzld/claude-config doneTags
Translated version includes tags in frontmatterSKILL.md Content
View Translation Comparison →/done — Session Retrospective
Structured reflection that produces concrete artifacts. Not a journal entry —
every finding either becomes a codified artifact or gets explicitly justified
as not worth codifying.
Process
1. Gather Evidence
Reconstruct session from multiple sources:
# What changed
git diff --stat HEAD~N (or unstaged if no commits)
git log --oneline -10
# What was attempted (from conversation context)
- Commands that failed and why
- Bugs encountered and root causes
- Patterns discovered
- User corrections received
# Current state
- Task list status
- Any pending/blocked items2. Categorize Findings
Sort into five buckets:
| Bucket | Question | Example |
|---|---|---|
| Went well | What should we keep doing? | Module separation, lazy imports |
| Friction | What slowed us down? | Guessed at API, wrong return types |
| Bugs introduced | What broke and why? | Dict access on dataclass |
| Missing artifacts | What docs/tools would have prevented friction? | Module API reference |
| Architecture insights | What design decisions proved right/wrong? | SQLite for persistence |
3. Codification Pass
For EACH friction point and bug, evaluate codification targets in order:
Hook → Can we prevent this automatically? (pre-edit)
Lint rule → Can a lint rule catch this at edit time? → invoke /guardrail
Agent → Can a reviewer catch this?
Skill → Is this a reusable workflow?
Memory → Should auto-memory capture this?
CLAUDE.md → Is this a convention/philosophy?
Docs → Does a reference doc need updating?Default: codify. Exception: justify not codifying.
3.5. Retro Append
If this session implemented a GitHub issue, append implementation feedback to
via :
{repo}/.groom/retro.md/retro append- Issue number
- Predicted effort (from issue's effort label) vs actual effort
- Scope changes (what was added/removed during implementation)
- Blockers encountered
- Reusable pattern for future scoping
This feeds the grooming feedback loop — reads retro.md to calibrate
future effort estimates and issue scoping.
/groom3.6. Tune Repo
Run to refresh summaries, update CLAUDE.md/AGENTS.md if drift is detected, and seed memory with new gotchas from the session.
/tune-repo.glance.md4. Execute Codification
For each item to codify:
- Read the target file
- Check for existing coverage (avoid duplication)
- Add the learning in the file's native format
- Verify no conflicts with existing content
Codification targets by type:
| Target | Location | Format |
|---|---|---|
| Hook | | Python/bash script |
| Agent | | YAML agent config |
| Skill update | | Markdown with frontmatter |
| Auto-memory | | Markdown notes |
| CLAUDE.md | | Concise pattern |
| Project docs | Repo | Varies |
5. Report
Output structured summary:
## Session Retrospective
### Went Well
- [item]: [why it worked]
### Friction Points
- [item]: [what happened] → [codified to: file]
### Bugs Introduced & Fixed
- [bug]: [root cause] → [codified to: file]
### Artifacts Created/Updated
- [file]: [what changed]
### Not Codified (with justification)
- [item]: [specific reason]
### Open Items
- [anything left unfinished or flagged for future]Integration
| Consumes | Produces |
|---|---|
| Session context (conversation) | Updated CLAUDE.md staging |
| New/updated skill files |
| Task list state | New/updated hooks |
| Error logs from session | Auto-memory entries |
| New/updated agents | |
|
Hands off to:
- — if codification artifacts should be committed
/commit - — if staging section is getting long (graduate to skills/agents)
/distill
Anti-Patterns
- Writing a retrospective without producing artifacts ("reflecting without codifying")
- Codifying things that are already covered (check existing files first)
- Over-codifying obvious patterns that any model would know
- Creating docs nobody will read (prefer hooks/agents that enforce automatically)
- Skipping the "went well" section (positive reinforcement matters for pattern stability)
Visual Deliverable
After completing the core workflow, generate a visual HTML summary:
- Read
~/.claude/skills/visualize/prompts/done-retro.md - Read the template(s) referenced in the prompt
- Read
~/.claude/skills/visualize/references/css-patterns.md - Generate self-contained HTML capturing this session's output
- Write to
~/.agent/diagrams/retro-{date}.html - Open in browser:
open ~/.agent/diagrams/retro-{date}.html - Tell the user the file path
Skip visual output if:
- The session was trivial (single finding, quick fix)
- The user explicitly opts out ()
--no-visual - No browser available (SSH session)