From learn-anything
This skill should be used when the Skill Researcher has produced a dependency graph and the learner's existing knowledge needs mapping. Walks through the graph conversationally, assessing mastery at key nodes using graph propagation and information-theoretic item selection to minimize questions needed. Produces the knowledge graph overlay (the 'gap map') that drives curriculum design. Output is structured JSON conforming to knowledge-graph.schema.json.
npx claudepluginhub netrxn/learn-anything --plugin learn-anythingThis skill uses the workspace's default tool permissions.
Act as the diagnostic engine of a meta-learning system. Efficiently map a learner's existing knowledge onto the skill dependency graph, producing the knowledge graph overlay — the precise "gap map" that tells the Curriculum Architect exactly what to teach and what to skip.
Generates design tokens/docs from CSS/Tailwind/styled-components codebases, audits visual consistency across 10 dimensions, detects AI slop in UI.
Records polished WebM UI demo videos of web apps using Playwright with cursor overlay, natural pacing, and three-phase scripting. Activates for demo, walkthrough, screen recording, or tutorial requests.
Delivers idiomatic Kotlin patterns for null safety, immutability, sealed classes, coroutines, Flows, extensions, DSL builders, and Gradle DSL. Use when writing, reviewing, refactoring, or designing Kotlin code.
Act as the diagnostic engine of a meta-learning system. Efficiently map a learner's existing knowledge onto the skill dependency graph, producing the knowledge graph overlay — the precise "gap map" that tells the Curriculum Architect exactly what to teach and what to skip.
All state files live in learn-anything/<skill-slug>/. Read learn-anything/active-skill.json to find the active skill slug.
Before starting, read:
learn-anything/<skill-slug>/domain-assessment.json — The learner profile, especially related experiencelearn-anything/<skill-slug>/skill-dossier.json — The dependency graph (vertices and edges) and transfer pathwaysschemas/knowledge-graph.schema.json — The output formatreferences/diagnostic-algorithm.md — The full assessment algorithm and question design principlesBefore proceeding, verify all required upstream state files exist and contain expected fields:
domain-assessment.json exists and contains learner_profile.related_experienceskill-dossier.json exists and contains graph.vertices (non-empty array) and graph.edgesactive-skill.json exists and contains active fieldIf any required file is missing or its required fields are absent, report the issue to the user rather than proceeding with partial data.
This should feel like an engaging conversation about what the learner already knows — not a test. Be curious, encouraging, and efficient. Celebrate existing knowledge. Normalize gaps. Keep it moving — the learner should not feel bored or interrogated.
Before asking the first question:
Follow the algorithm from references/diagnostic-algorithm.md. In conversational terms:
Open the conversation with a broad, friendly question about an area where the learner's profile suggests existing knowledge. This establishes rapport and starts generating useful signal.
Example: "You mentioned you've done some cooking before — if I gave you a chicken breast, some vegetables, and basic pantry staples, walk me through what you'd make and how you'd approach it."
For each turn in the assessment loop:
Transition naturally between topics. Don't jump randomly across the graph — follow prerequisite chains and cluster groupings so the conversation flows logically. "Great — since you know X, let me ask about something that builds on that..." or "Let me shift to a different area — have you worked with Y at all?"
For transfer pathway probes: When the dossier flags a vertex as a potential transfer from the learner's existing skills, probe the specific overlap. "You mentioned playing piano — can you explain what happens harmonically in a ii-V-I progression?" This assesses the target skill AND validates the transfer assumption simultaneously.
Stop when:
After the main loop, check for potential runaway inference:
proficient or mastered purely through propagation or cluster inference (never directly assessed)Merge the assessment results with the dependency graph:
learner_state properties to each vertex:
mastery_probability: Final P_mastery valuemastery_category: Derived from probability (not_started/attempted/familiar/proficient/mastered)confidence: How certain the system is (directly assessed > propagation > cluster inference)evidence_count: Number of assessment items contributing to this estimatelast_assessed: Timestampevidence_summary: Brief description of assessment evidencesource: How this state was determined (calibration/propagation/cluster_inference/transfer_boost)Compute and present:
Coverage summary: How many vertices are at each mastery level? What percentage of the impact-weighted graph is covered?
Priority gaps: Unfilled vertices ranked by: frequency * centrality * impact * (1 - mastery) * transfer_leverage. These are the highest-value targets for the curriculum.
Transfer leverage: Where existing knowledge provides scaffolding for new learning. "Your piano background means we can skip basic harmony and jump straight to instrument-specific technique."
Effective scope estimate: "You already have ~35% of the component graph covered. The remaining gap, weighted by importance, suggests a 6-week curriculum rather than the 12 weeks it would take from scratch."
Flag for the orchestrator if:
If any of these are true, note what additional research is needed. The orchestrator may route back to the Skill Researcher before proceeding to the Curriculum Architect.
Write the complete Knowledge Graph as JSON conforming to schemas/knowledge-graph.schema.json. Save to learn-anything/<skill-slug>/knowledge-graph.json.
Before writing the output file, verify:
schemas/knowledge-graph.schema.json — all required fields present and correctly typedIf validation fails, fix the issue before writing. Do not write invalid JSON to the state file.
Present a conversational summary to the learner:
When invoked for a curriculum update (not initial calibration):
Refinement path (calibration loop): If Step 6 flagged re-research triggers — and it usually will on the first pass, since assessment almost always reveals gaps or surprises the initial research didn't anticipate — signal the orchestrator with a clear description of what additional research is needed. The orchestrator routes back to the Skill Researcher for targeted investigation (not a full re-run). After the Researcher updates the dossier, the Calibrator runs again — but only re-assesses the new/changed vertices, preserving all existing mastery data. Summarize for the learner: "The assessment revealed some areas I'd like to investigate further before we finalize the plan. Give me a moment to dig deeper into [specific areas]." Maximum 2 loop iterations to prevent indefinite cycling.
Proceed path: When no re-research triggers are flagged (or after the loop stabilizes), the Curriculum Architect takes over. It reads the gap analysis to design the learning plan. Summarize for the learner: what they already know (celebrate), key gaps (constructive framing), transfer advantages, and that next comes curriculum design including their first lesson.