skills/learn/SKILL.md
Create structured lesson plans for learning new concepts or following courses.
npx skillsauth add gregrossdev/gig gig:learnInstall 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.
Read .gig/STATE.md and display:
Version: {version} | Iteration: {iteration} | Status: {status}
Check if .gig/ exists in the current project root.
If NOT present:
Say: "No gig context found. Run /gig:init first." STOP.
If present:
Read .gig/STATE.md for current position.
If status is GATHERING, IMPLEMENTING, or IMPLEMENTED: Say: "An iteration is in progress. Complete it before starting a new lesson plan." STOP.
If status is SPECCED:
Warn: "A locked spec already exists. Running /gig:learn will create a new curriculum. Continue?"
If user says no, STOP.
If user says yes, proceed (spec skill's archiving logic handles the old spec).
If status is IDLE, GOVERNED, or SPECING (resuming): Proceed.
If user provided args containing a URL (http/https):
Say: "Detected external course URL. I'll analyze the course structure and build a curriculum around it."
Set mode to external. Jump to External Course Flow below.
If user provided args containing "from scratch":
Say: "Building a curriculum from scratch."
Set mode to fresh. Jump to Fresh Curriculum Flow below.
If user provided other args: Use the args as the topic. Ask ONE question: "Creating a curriculum from scratch, or following an existing course?"
If no args: Ask: "What do you want to learn? (Topic, course URL, or describe what you're trying to understand)"
Research the topic by launching 2 Explore agents in parallel (Agent tool, subagent_type "Explore"), plus WebSearch:
Synthesize findings from both agents and WebSearch before designing the curriculum.
Design the curriculum:
Present the draft curriculum (see Running Draft below).
Research the course using WebSearch and subagents:
Map to curriculum format:
Present the draft curriculum (see Running Draft below).
After building the curriculum, present it in spec format:
### Curriculum Draft: {Topic}
**Mode:** {from scratch | following {course name}}
**Lessons:** {count}
**Estimated progression:** {description of learning arc}
## Stories (Lessons)
| ID | Lesson | Focus | Prerequisites | Status |
|----|--------|-------|--------------|--------|
| US-001 | {Lesson 1 title} | {concept} | — | NOT COVERED |
| US-002 | {Lesson 2 title} | {concept} | US-001 | NOT COVERED |
| ... | ... | ... | ... | ... |
## Requirements (Learning Objectives)
| ID | Lesson | Objective | How to verify | Priority | Status |
|----|--------|-----------|--------------|----------|--------|
| REQ-001 | US-001 | {Understand X} | {Can explain X, solve Y type problem} | must | NOT COVERED |
| REQ-002 | US-001 | {Apply X to Y} | {Can implement Z pattern} | must | NOT COVERED |
| ... | ... | ... | ... | ... | ... |
Keep refining until:
If the user seems done but gaps remain, surface them: "Before locking, I notice {gap}. Want to add a lesson for it or mark it out of scope?"
Present the complete curriculum in full SPEC.md format.
Map the curriculum to standard spec format:
Scope Notes = focus area)Acceptance Criteria = how to verify learning)Then ask:
Does this curriculum match what you want to learn?
- "lock" / "approve" — write the curriculum and start learning.
- "change X" — adjust lessons, add/remove objectives.
- "not yet" — continue refining.
STOP. Do not write SPEC.md. Wait for approval.
Once the user approves:
Write .gig/SPEC.md with the locked curriculum in standard spec format. Overwrite any existing draft.
Update .gig/STATE.md:
SPECCEDSay:
"Curriculum locked with {N} lessons and {M} learning objectives."
"Run
/gig:gatherto start the first lesson. Each lesson runs through the normal gather→implement→govern flow.""After each lesson, governance generates an article capturing what you learned."
tools
Show current state and suggest the ONE next action to take.
testing
Deep-dive a topic using subagents. Feeds findings into decisions or working memory.
testing
Create milestones with spec elicitation, complete milestones, manage ROADMAP.md, tag releases.
tools
Initialize the gig system in any project. Discovers context, scaffolds .gig/, proposes first milestone. Universal entry point.