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. /big-plan auto-reads matching l-lessons-* skills in its Step 1c before planning, so future planning runs in this area pick it up automatically./retro-notes-refactor pass (e.g. once the lessons file accumulates 5+ entries): merge overlapping notes, delete advice for code that no longer exists, promote repeated lessons into broader wisdom./css-wisdom), not a project-scoped one.tools
Acceptance gate for a branch produced by an OpenAI Codex CLI run — usually Codex implementing a /big-plan epic that was handed off to it. Codex reports the work 'done' (or the user flags it WIP with corrections); this skill confirms the branch actually fulfils the original spec, fixes what falls short, and routes larger discoveries into GitHub issues. Use when: (1) User says '/finalize-codex-work', 'finalize codex work', 'confirm the codex work', 'check the codex branch', or 'codex said it's done', (2) A branch is the result of a Codex CLI session and needs verification against its spec issue/PR, (3) After assigning a /big-plan epic to Codex CLI. Pass -m/--merge to run /pr-complete -c at the end.
tools
Read a Figma design node directly from a share URL via the Figma REST API — no Dev Mode subscription, no MCP, no desktop app. Renders the node to PNG and dumps its full style/layout JSON so the design can be described, compared, or implemented. Use whenever the user gives a Figma design URL (figma.com/design/... or /file/...) and wants to see, read, inspect, reference, or implement that node — including `/fig-url-refer <url>`. This is the URL-based counterpart to `/figrefer` (which needs a Dev-plan desktop MCP); prefer this one when the input is a URL rather than a live desktop selection.
tools
Sync the user's Claude Code workflow skills into the OpenAI Codex CLI settings repo ($HOME/.codex) as Codex-native ports, fix the Codex .gitignore for new local state, then commit and push. Use when: (1) user says '/dev-codex-sync-settings-from-claude', 'sync codex settings', 'sync claude skills to codex', 'port skills to codex', or 'update codex from claude'; (2) after updating ~/.claude workflow skills (big-plan, x, x-as-pr, x-wt-teams) and Codex should catch up; (3) the $HOME/.codex repo has drifted behind $HOME/.claude. The ports are condensed Codex-native REWRITES, never file copies.
development
Analyze a video file (mov, mp4, webm, etc.) or a YouTube video by extracting still frames with ffmpeg and reading them chronologically with vision — Claude cannot ingest video files directly. Use whenever the user provides a video file path or YouTube URL and wants to know what happens in it: "read this video", "watch this video", "check this recording", "what happens in this .mov/.mp4", analyzing a screen recording of a UI bug, or verifying UI behavior captured in a video, even if they don't name this skill.