skills/retro-notes/SKILL.md
Capture AI-readable postmortems after a dev attempt resolves into a project-scoped lessons file that future /big-plan runs can read. Use when: (1) User says 'retro-notes', 'retro', 'capture lessons', 'fail-notes', 'postmortem', (2) A dev session wrapped up that took longer than expected, changed approach mid-way, or had non-obvious gotchas. Reader is a future planning agent.
npx skillsauth add takazudo/claude-resources retro-notesInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Convert lessons from a just-resolved dev attempt into a structured, project-scoped lessons file (/l-lessons-{area} skill) that future planning runs (e.g. /big-plan) can consume. Goal: turn one-time pain into permanent leverage so the next attempt in the same area is faster.
Before writing, confirm two things:
canvas-tools, tauri-window-mgmt, react-form-state). Confirm with the user before writing.The output is a project-scope skill at .claude/skills/l-lessons-{area}/SKILL.md.
One growing file per problem-area, NOT one file per attempt.
.claude/skills/ for any existing l-lessons-* skill that matches the area. If a relevant one exists, append a new dated section to its SKILL.md..claude/skills/l-lessons-{area}/SKILL.md with the frontmatter shown below.---
name: l-lessons-{area}
description: Project lessons learned for {area}. Read PROACTIVELY before planning or implementing work touching {area} — contains traps, root causes, and "watch for next time" notes from previous attempts.
---
Keep description short but concrete enough that planning agents pick it up automatically.
Append (or create) a section using exactly this structure:
## {YYYY-MM-DD} — {short topic}
### What we set out to do
{1–2 sentences. The original goal, not the implementation.}
### Approach we tried first
{The wrong path. Be specific about the abstraction or structural choice — not the symptom.}
### Why it went wrong (root cause)
{The structural cause, not the symptom. See "Symptom vs root cause" below.}
### What worked instead
{The right abstraction or approach.}
### Watch for next time
- {Concrete trap, ideally in "if you see X, you're probably Y" form.}
- {Another trap. Aim for 2–5 bullets, not narrative.}
### Would-skip-if-redoing
{Things that wasted time and are now provably unnecessary. One short paragraph or bullet list.}
The Watch for next time section is the highest-leverage part. Future planning agents will scan it first. Keep bullets concrete and trap-shaped.
When the user offers a symptom-shaped description, probe for the structural cause before writing.
| Symptom (what the user says first) | Root cause (what to actually record) | |---|---| | "zoom was buggy" | "transform threaded through every function instead of inverted at input boundary" | | "form kept losing state" | "state owned by child instead of lifted to parent that survives re-mount" | | "the build was flaky" | "test relied on filesystem ordering not guaranteed by the runtime" | | "performance was bad" | "N+1 query in the render loop, hidden behind an inner abstraction" |
If the user gives a symptom, ask: "What was the actual structural reason that made the symptom show up — what was wrong about the shape of the code, not the bug itself?" Record the structural answer. The symptom can stay as one phrase in What we set out to do or Approach we tried first for context.
Briefly tell the user:
.claude/skills/l-lessons-{area}/SKILL.md and will be picked up by future /big-plan runs (assuming /big-plan is wired to read l-lessons-* skills — that's a separate tweak via /skill-creator).lessons-refactor pass (manual for now) every few months: merge overlapping notes, delete advice for code that no longer exists, promote repeated lessons into broader wisdom./css-wisdom), not a project-scoped one.development
Link Claude Code skill names mentioned in a CodeGrid article (data/{series}/{n}.md) to the author's public claude-resources repo, pinned to the latest commit hash so links don't rot. Use when: (1) user says 'linkify cc resources', 'link the skills', 'link skill names', or invokes /dev-linkify-cc-resources; (2) editing a CodeGrid article that mentions `/commits`, `/pr-complete`, `/skill-creator` or other Claude Code skills and they should point to claude-resources. Only links skills that actually exist in the public repo; skips hypothetical examples and code blocks.
development
Second opinion from Claude Opus on a plan or approach. Use when: (1) Planning phase of /big-plan needs a higher-quality review than /codex-2nd / /gco-2nd / /gcoc-2nd, (2) User says 'opus 2nd' or 'opus opinion', (3) Wanting Anthropic's larger model to critique a plan. Spawns a general-purpose Agent with model: opus that reads the plan file and returns structured feedback. Anthropic quota — not free.
tools
AI-based testing via subagent + a per-task test-flow skill. Use when the user wants to verify something that mechanical assertions can't fully capture — image recognition, visual size/position comparison, animation smoothness, multi-step manual flows that need AI judgment. Triggers: 'AI-based test', 'AI test', 'visual verify', 'image recognition test', 'manual operation test', 'human-eye check', 'verify visually', 'compare screenshots', 'looks the same', 'looks correct'. The skill's job is to (1) author a focused test-flow skill that captures the exact procedure + verdict criteria, then (2) dispatch a verification subagent via the Agent tool that loads BOTH the test-flow skill AND a browser-driving skill (/verify-ui primary, /headless-browser fallback) so the subagent has clear context and consistent verdicts. NEVER uses `claude -p` — subagent dispatch goes through the Agent tool exclusively.
development
End-of-workflow audit of touched GitHub issues, PRs, and branches via a Sonnet subagent. Use when: (1) /big-plan, /x-as-pr, or /x-wt-teams finishes its main work and needs to verify every touched resource is in the right state (closed when done, kept when ongoing, deleted when dead), (2) User says 'cleanup resources', 'audit cleanup', or 'check what should be closed', (3) A long workflow ends and the manager wants a structured paper trail of what it closed/kept/deleted. Auto-execute by default — the Sonnet agent proposes, the manager (you) executes safe actions and prints a final report.