Loading...
Loading...
Automated retrospectives — captures learnings at EPIC completion and on manual invocation. EPIC-scoped retros embed a Retrospective section in the EPIC artifact. Cross-epic and time-based retros produce standalone retro docs. Triggers on: 'retro', 'retrospective', 'post-mortem', 'lessons learned', 'debrief', 'what worked', 'what didn't work', 'what did we learn', 'reflect', or automatically after EPIC terminal transitions.
npx skill4agent add cristoslc/swain swain-retro/swain-retro| Scope | Output | Rationale |
|---|---|---|
| EPIC-scoped (auto or explicit) | | The EPIC already contains lifecycle, success criteria, and child specs — it's the single source of truth for "what we shipped and what we learned" |
| Cross-epic / time-based (manual) | Standalone retro doc in | No single artifact owns the scope — a dedicated doc is required |
| Mode | Trigger | Context source | Output | Interactive? |
|---|---|---|---|---|
| Auto | EPIC transitions to terminal state (called by swain-design) | The EPIC and its child artifacts | Embedded in EPIC | No — fully automated |
| Interactive | EPIC transitions to terminal state during a live session | The EPIC and its child artifacts | Embedded in EPIC | Yes — reflection questions offered |
| Manual | User runs | Recent work — git log, closed tasks, transitioned artifacts | Standalone retro doc (required) | Yes |
| Scoped | | Specific artifact and its related work | Embedded in EPIC (if EPIC-scoped) or standalone | Yes |
CompleteAbandonedSuperseded# Get the EPIC and its children
bash "$(find "$(git rev-parse --show-toplevel 2>/dev/null || pwd)" -path '*/swain-design/scripts/chart.sh' -print -quit 2>/dev/null)" deps <EPIC-ID>
# Get closed tasks linked to child specs
TK_BIN="$(cd skills/swain-do/bin && pwd)"
export PATH="$TK_BIN:$PATH"
ticket-query '.status == "closed"' 2>/dev/null | grep -l "<EPIC-ID>\|<SPEC-IDs>"# Recent git activity
git log --oneline --since="1 week ago" --no-merges
# Recently closed tasks
TK_BIN="$(cd skills/swain-do/bin && pwd)"
export PATH="$TK_BIN:$PATH"
ticket-query '.status == "closed"' 2>/dev/null | head -20
# Recently transitioned artifacts
bash "$(find "$(git rev-parse --show-toplevel 2>/dev/null || pwd)" -path '*/swain-design/scripts/chart.sh' -print -quit 2>/dev/null)" status 2>/dev/nulldocs/swain-retro/AbandonedSupersededRetro scope: {EPIC-NNN title / "recent work"} Period: {start date} — {end date} Artifacts completed: {list} Tasks closed: {count} Key commits: {notable commits}
---
name: retro-{topic}
description: {one-line description of the learning}
type: feedback
---
{The pattern or rule}
**Why:** {User's explanation from the retro}
**How to apply:** {When this guidance kicks in}~/.claude/projects/<project-slug>/memory/feedback_retro_{topic}.md/Users/cristos/Documents/code/swain-Users-cristos-Documents-code-swain.agents/MEMORY.md---
name: retro-{topic}
description: {one-line description}
type: project
---
{The fact or observation}
**Why:** {Context from the retro}
**How to apply:** {How this shapes future suggestions}## Retrospective## Lifecycle## Retrospective
**Terminal state:** {Complete | Abandoned | Superseded}
**Period:** {activation date} — {terminal date}
### Summary
{What was accomplished — or for Abandoned/Superseded, what was learned and why work stopped}
### Reflection
{Synthesized findings — from auto-generation or interactive Q&A}
### Learnings captured
| Memory file | Type | Summary |
|------------|------|---------|
| feedback_retro_x.md | feedback | ... |
| project_retro_y.md | project | ... |mkdir -p docs/swain-retrodocs/swain-retro/YYYY-MM-DD-{topic-slug}.md# Retro: {title}
**Date:** {YYYY-MM-DD}
**Scope:** {description of what's covered}
**Period:** {start} — {end}
## Summary
{Brief description of what was completed across the scope}
## Artifacts
| Artifact | Title | Outcome |
|----------|-------|---------|
| ... | ... | Complete/Abandoned/... |
## Reflection
### What went well
{User's responses, synthesized}
### What was surprising
{User's responses, synthesized}
### What would change
{User's responses, synthesized}
### Patterns observed
{User's responses, synthesized}
## Learnings captured
| Memory file | Type | Summary |
|------------|------|---------|
| feedback_retro_x.md | feedback | ... |
| project_retro_y.md | project | ... |BOOKMARK="$(find . .claude .agents -path '*/swain-session/scripts/swain-bookmark.sh' -print -quit 2>/dev/null)"
bash "$BOOKMARK" "Completed retro for {scope} — {N} learnings captured"CompleteAbandonedSuperseded## Retrospective## Retrospectivedocs/swain-retro/# Check standalone retro docs
ls docs/swain-retro/*.md 2>/dev/null | head -10
# Check embedded retros in EPICs
grep -rl "## Retrospective" docs/epic/ 2>/dev/null | head -10