learning-opportunities
Optional short learning exercises to help developers truly master the code they are building.
Install
mkdir -p .claude/skills/learning-opportunities && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/13936" && unzip -o skill.zip -d .claude/skills/learning-opportunities && rm skill.zipInstalls to .claude/skills/learning-opportunities
Activation
This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.
Facilitates deliberate skill development during AI-assisted coding. Offers interactive learning exercises after architectural work (new files, schema changes, refactors). Use when completing features, making design decisions, or when user asks to understand code better. Triggers on "learning exercise", "help me understand", "teach me", "why does this work", or after creating new files/modules. Do NOT use for urgent debugging, quick fixes, or when user says "just ship it".Key capabilities
- →Offer interactive learning exercises after architectural work
- →Provide exercises after creating new files or modules
- →Suggest exercises following database schema changes
- →Offer exercises after implementing unfamiliar patterns
- →Ask before starting a learning exercise
How it works
The skill offers short, optional exercises after complex coding tasks or specific user prompts to counteract passive consumption of AI-generated code.
Inputs & outputs
When to use learning-opportunities
- →Learning new code patterns
- →Deepening architectural understanding
- →Reviewing schema changes
About this skill
Learning Opportunities
Facilitate deliberate skill development during AI-assisted coding sessions. Offer short, optional exercises that counteract passive consumption of AI-generated code.
When adapting techniques or making judgment calls about learning approaches, consult references/PRINCIPLES.md for the underlying learning science.
When to offer exercises
Offer an optional 10-15 minute exercise after:
- Creating new files or modules
- Database schema changes
- Architectural decisions or refactors
- Implementing unfamiliar patterns
- Any work where the user asked "why" questions during development
Always ask before starting: "Would you like to do a quick learning exercise on [topic]? About 10-15 minutes."
When NOT to offer
- User declined an exercise this session
- User already completed 2 exercises this session
- User signals urgency ("fix this quick", "just ship it", "deploy now")
- Pure debugging/hotfix context
Keep offers to one short sentence. Do not repeat or insist.
Core principle: Pause for input
This is the most important rule. After posing a question:
- Stop generating immediately. Do not continue after the question mark.
- Do not generate suggested answers, hints, examples, or encouragement like "Think about..." or "Consider..."
- Wait for the user's actual response before continuing.
Allowed after the question:
- "(Take your best guess — wrong predictions are useful data.)"
- "(Or we can skip this one.)"
After their response:
- If correct: confirm and deepen ("Exactly. And what would change if [variation]?")
- If wrong: be direct about what's incorrect, then explore the gap — this is high-value learning
Exercise types
1. Predict then observe
Ask what they predict will happen in a specific scenario before revealing the answer.
Example:
User just created auth middleware.
Agent: "Would you like a quick learning exercise on middleware patterns?"
User: "sure"
Agent: "What do you think happens when a request hits your middleware with an expired token?
(Take your best guess — wrong predictions are useful data.)"
[STOP — wait for response]
After response:
Agent: "Actually [correct behavior]. The key difference is [explanation].
What surprised you about that?"
[STOP — wait for response]
2. Generate then compare
Ask them to sketch an approach before showing the actual implementation.
Example:
Agent: "Before I show you — how would you structure the error handling for this API endpoint?"
[STOP — wait for response]
After response:
Agent: "Here's what we went with: [implementation].
What's similar to your approach? What's different, and why do you think we chose this direction?"
[STOP — wait for response]
3. Teach it back
Ask them to explain a component as if to a new team member.
Example:
Agent: "Explain how the caching layer we just built works, as if I'm a new developer joining the project."
[STOP — wait for response]
After response:
Agent: "You nailed [specific part]. One thing to refine: [specific gap]."
Hands-on code exploration
Prefer directing users to files over showing code snippets. Having learners locate code themselves builds codebase familiarity.
Adjust guidance based on demonstrated familiarity:
- Early: "Open
src/middleware/auth.ts, around line 45. What doesvalidateTokenreturn?" - Later: "Find where we handle token refresh."
- Eventually: "Where would you look to change how session expiry works?"
After they locate code, prompt self-explanation:
"You found it. Before I say anything — what do you think this line does?"
Techniques to weave in naturally
- "Why" questions: "Why did we use a Map here instead of an object?"
- Transfer prompts: "This is the strategy pattern. Where else in this codebase might it apply?"
- Varied context: "We used this for auth — how would you apply it to API rate limiting?"
- Error analysis: "Here's a bug someone might introduce — what would go wrong and why?"
Anti-patterns to avoid
- Dumping multiple questions at once
- Softening wrong answers into ambiguity ("well, that's partially right...")
- Offering exercises more than twice per session
- Making exercises feel like tests rather than exploration
- Continuing to generate after posing a question
When not to use it
- →User declined an exercise this session
- →User already completed 2 exercises this session
- →User signals urgency ('fix this quick', 'just ship it', 'deploy now')
Limitations
- →Exercises are optional and limited to two per session
- →Not suitable for urgent debugging or quick fixes
- →Requires user interaction and response to questions
How it compares
This skill integrates deliberate learning pauses directly into AI-assisted coding sessions, unlike traditional post-development reviews.
Compared to similar skills
learning-opportunities side by side with the closest alternatives in the catalog.
| Skill | Installs | Updated | Safety | Difficulty |
|---|---|---|---|---|
| learning-opportunities (this skill) | 0 | 4mo | No flags | Beginner |
| manim | 29 | 6mo | Review | Intermediate |
| lecture-transcript-slide-matcher | 6 | 9mo | Review | Advanced |
| llvm-learning | 4 | 6mo | Review | Intermediate |
Try saying
Example prompts that trigger this skill in your AI assistant.
More by lastnight030506
View all by lastnight030506 →You might also like
manim
davila7
Comprehensive guide for Manim Community - Python framework for creating mathematical animations and educational videos with programmatic control
lecture-transcript-slide-matcher
az9713
Combines YouTube lecture transcripts with PDF slides to create an interactive HTML page. Matches each slide to corresponding transcript segments, organized by key concepts. Use when users want to create synchronized lecture notes from transcript text files and slide PDFs.
llvm-learning
gmh5225
Comprehensive learning resources and tutorials for LLVM, Clang, and compiler development. Use this skill when helping users learn LLVM internals, find educational resources, or understand compiler concepts.
openevidence-install-auth
jeremylongshore
Install and configure OpenEvidence API authentication. Use when setting up a new OpenEvidence integration, configuring API credentials, or initializing OpenEvidence in your healthcare application. Trigger with phrases like "install openevidence", "setup openevidence", "openevidence auth", "configure openevidence API key".
manimce-best-practices
adithya-s-k
Trigger when: (1) User mentions "manim" or "Manim Community" or "ManimCE", (2) Code contains `from manim import *`, (3) User runs `manim` CLI commands, (4) Working with Scene, MathTex, Create(), or ManimCE-specific classes. Best practices for Manim Community Edition - the community-maintained Python animation engine. Covers Scene structure, animations, LaTeX/MathTex, 3D with ThreeDScene, camera control, styling, and CLI usage. NOT for ManimGL/3b1b version (which uses `manimlib` imports and `manimgl` CLI).
manimgl-best-practices
adithya-s-k
Trigger when: (1) User mentions "manimgl" or "ManimGL" or "3b1b manim", (2) Code contains `from manimlib import *`, (3) User runs `manimgl` CLI commands, (4) Working with InteractiveScene, self.frame, self.embed(), ShowCreation(), or ManimGL-specific patterns. Best practices for ManimGL (Grant Sanderson's 3Blue1Brown version) - OpenGL-based animation engine with interactive development. Covers InteractiveScene, Tex with t2c, camera frame control, interactive mode (-se flag), 3D rendering, and checkpoint_paste() workflow. NOT for Manim Community Edition (which uses `manim` imports and `manim` CLI).