Software_development_department retrospective
git clone https://github.com/tranhieutt/software_development_department
T=$(mktemp -d) && git clone --depth=1 https://github.com/tranhieutt/software_development_department "$T" && mkdir -p ~/.claude/skills && cp -r "$T/.claude/skills/retrospective" ~/.claude/skills/tranhieutt-software-development-department-retrospective && rm -rf "$T"
.claude/skills/retrospective/SKILL.mdWhen this skill is invoked:
-
Read the argument to determine whether this is a sprint retrospective (
) or a milestone retrospective (sprint-N
).milestone-name -
Read the sprint or milestone plan from the appropriate location:
- Sprint plans:
production/sprints/ - Milestone definitions:
production/milestones/
Extract: planned tasks, estimated effort, owners, and goals.
- Sprint plans:
-
Read the git log for the period covered by the sprint or milestone to understand what was actually committed and when.
-
Scan for completed and incomplete tasks by comparing the plan against actual deliverables. Check for:
- Tasks completed as planned
- Tasks completed but modified from the plan
- Tasks carried over (not completed)
- Tasks added mid-sprint (unplanned work)
- Tasks removed or descoped
-
Scan the codebase for TODO/FIXME trends:
- Count current TODO/FIXME/HACK comments
- Compare to previous sprint counts if available (check previous retrospectives)
- Note whether technical debt is growing or shrinking
-
Read previous retrospectives (if any) from
orproduction/sprints/
to check:production/milestones/- Were previous action items addressed?
- Are the same problems recurring?
- How has velocity trended?
-
Generate the retrospective:
## Retrospective: [Sprint N / Milestone Name] Period: [Start Date] -- [End Date] Generated: [Date] ### Metrics | Metric | Planned | Actual | Delta | |--------|---------|--------|-------| | Tasks | [X] | [Y] | [+/- Z] | | Completion Rate | -- | [Z%] | -- | | Story Points / Effort Days | [X] | [Y] | [+/- Z] | | Bugs Found | -- | [N] | -- | | Bugs Fixed | -- | [N] | -- | | Unplanned Tasks Added | -- | [N] | -- | | Commits | -- | [N] | -- | ### Velocity Trend | Sprint | Planned | Completed | Rate | |--------|---------|-----------|------| | [N-2] | [X] | [Y] | [Z%] | | [N-1] | [X] | [Y] | [Z%] | | [N] (current) | [X] | [Y] | [Z%] | **Trend**: [Increasing / Stable / Decreasing] [One sentence explaining the trend] ### What Went Well - [Observation backed by specific data or examples] - [Another positive observation] - [Recognize specific contributions or decisions that paid off] ### What Went Poorly - [Specific issue with measurable impact -- e.g., "Feature X took 5 days instead of estimated 2, blocking tasks Y and Z"] - [Another issue with impact] - [Do not assign blame -- focus on systemic causes] ### Blockers Encountered | Blocker | Duration | Resolution | Prevention | |---------|----------|------------|------------| | [What blocked progress] | [How long] | [How it was resolved] | [How to prevent recurrence] | ### Estimation Accuracy | Task | Estimated | Actual | Variance | Likely Cause | |------|-----------|--------|----------|--------------| | [Most overestimated task] | [X] | [Y] | [+Z] | [Why] | | [Most underestimated task] | [X] | [Y] | [-Z] | [Why] | **Overall estimation accuracy**: [X%] of tasks within +/- 20% of estimate [Analysis: Are we consistently over- or under-estimating? For which types of tasks? What adjustment should we apply?] ### Carryover Analysis | Task | Original Sprint | Times Carried | Reason | Action | |------|----------------|---------------|--------|--------| | [Task that was not completed] | [Sprint N-X] | [N] | [Why] | [Complete / Descope / Redesign] | ### Technical Debt Status - Current TODO count: [N] (previous: [N]) - Current FIXME count: [N] (previous: [N]) - Current HACK count: [N] (previous: [N]) - Trend: [Growing / Stable / Shrinking] - [Note any areas of concern] ### Previous Action Items Follow-Up | Action Item (from Sprint N-1) | Status | Notes | |-------------------------------|--------|-------| | [Previous action] | [Done / In Progress / Not Started] | [Context] | ### Action Items for Next Iteration | # | Action | Owner | Priority | Deadline | |---|--------|-------|----------|----------| | 1 | [Specific, measurable action] | [Who] | [High/Med/Low] | [When] | | 2 | [Another action] | [Who] | [Priority] | [When] | ### Process Improvements - [Specific change to how we work, with expected benefit] - [Another improvement -- keep it to 2-3 actionable items, not a wish list] ### Summary [2-3 sentence overall assessment: Was this a good sprint/milestone? What is the single most important thing to change going forward?]
-
Save the retrospective to the appropriate location:
- Sprint:
production/sprints/sprint-[N]-retrospective.md - Milestone:
production/milestones/[milestone-name]-retrospective.md
Create the directory if it does not exist.
- Sprint:
-
Output a summary to the user with: completion rate, velocity trend direction, top blocker, and the most important action item.
Guidelines
- Be honest and specific. Vague retrospectives ("communication could be better") produce vague improvements. Use data and examples.
- Focus on systemic issues, not individual blame.
- Limit action items to 3-5. More than that dilutes focus.
- Every action item must have an owner and a deadline.
- Check whether previous action items were completed. Recurring unaddressed items are a process smell.
- If this is a milestone retrospective, also evaluate whether the milestone goals were achieved and what that means for the overall project timeline.
Protocol
- Question: Reads sprint number or milestone name from argument
- Options: Skip
- Decision: Skip — retrospective is advisory
- Draft: Full retrospective shown in conversation before saving
- Approval: "May I write to
?"production/retrospectives/retro-[name].md
Output
Deliver exactly:
- Retrospective document saved to
production/retrospectives/retro-[sprint/milestone].md - Velocity delta — this sprint vs previous (faster/slower/same + %)
- Top pattern — the single most recurring theme (positive or negative)
- Action items: max 5, each with owner and deadline — verified not repeats from last retro