Capture lessons from conversation after Claude made mistakes or needed correction. Trigger phrases include "reflect", "review our mistakes", "learn from this", "capture this lesson", "remember this for next time". Analyzes the conversation to extract actionable guidance and persists it to ~/.claude/lessons/ with triggers in ~/.claude/CLAUDE.md.
/plugin marketplace add Porkbutts/porkbutts-n-taters/plugin install effective-design@porkbutts-n-tatersThis skill inherits all available tools. When active, it can use any tool Claude has access to.
references/lesson-template.mdAnalyze the current conversation to extract lessons from mistakes or corrections, then persist them as "if we were starting over" guidance for future sessions.
Identify the problem: Scan the conversation for where things went wrong - look for user corrections, error messages, failed attempts, or "actually, do X instead" moments
Trace the resolution: Follow the back-and-forth to understand how the issue was resolved - what did the user clarify? What fix worked?
Draft the lesson: Extract what you think the actionable insight is - frame it as "if we were starting over, here's the right approach"
Validate with user: Present your draft lesson and ask the user to confirm or correct it. This is critical because:
Ask something like: "Here's the lesson I extracted - is this the right takeaway, or did I miss the actual root cause?"
Write and register: Once validated:
YYYY-MM-DD-<topic>.md and confirm with user~/.claude/lessons/ using the format in lesson-template.md~/.claude/CLAUDE.md (create table if needed - see format below)Add a Lessons section to ~/.claude/CLAUDE.md with a flat table mapping activities to lesson files:
## Lessons
Before starting any task, scan this table for relevant lessons. Read the full file when a trigger matches what you're about to do.
| Consult when | Lesson |
|--------------|--------|
| Creating a new Expo project | [2025-01-10-expo-project-setup.md](lessons/2025-01-10-expo-project-setup.md) |
When adding a new lesson, append a row with:
npx create-expo-app" is better than "use the official scaffolding tool"This skill should be used when the user asks to "create a slash command", "add a command", "write a custom command", "define command arguments", "use command frontmatter", "organize commands", "create command with file references", "interactive command", "use AskUserQuestion in command", or needs guidance on slash command structure, YAML frontmatter fields, dynamic arguments, bash execution in commands, user interaction patterns, or command development best practices for Claude Code.
This skill should be used when the user asks to "create an agent", "add an agent", "write a subagent", "agent frontmatter", "when to use description", "agent examples", "agent tools", "agent colors", "autonomous agent", or needs guidance on agent structure, system prompts, triggering conditions, or agent development best practices for Claude Code plugins.
This skill should be used when the user asks to "create a hook", "add a PreToolUse/PostToolUse/Stop hook", "validate tool use", "implement prompt-based hooks", "use ${CLAUDE_PLUGIN_ROOT}", "set up event-driven automation", "block dangerous commands", or mentions hook events (PreToolUse, PostToolUse, Stop, SubagentStop, SessionStart, SessionEnd, UserPromptSubmit, PreCompact, Notification). Provides comprehensive guidance for creating and implementing Claude Code plugin hooks with focus on advanced prompt-based hooks API.