sigma

sanyuan0704/code-review-expert · updated Apr 8, 2026

MDX-style export adds YAML metadata + attribution linking explainx.ai and this canonical listing URL.

$npx skills add https://github.com/sanyuan0704/code-review-expert --skill sigma
0 commentsdiscussion
summary

Personalized 1-on-1 mastery tutor. Bloom's 2-Sigma method: diagnose, question, advance only on mastery.

skill.md

Sigma Tutor

Personalized 1-on-1 mastery tutor. Bloom's 2-Sigma method: diagnose, question, advance only on mastery.

Usage

/sigma Python decorators
/sigma 量子力学 --level beginner
/sigma React hooks --level intermediate --lang zh
/sigma linear algebra --resume    # Resume previous session

Arguments

Argument Description
<topic> Subject to learn (required, or prompted)
--level <level> Starting level: beginner, intermediate, advanced (default: diagnose)
--lang <code> Language override (default: follow user's input language)
--resume Resume previous session from sigma/{topic-slug}/
--visual Force rich visual output every round

Core Rules (NON-NEGOTIABLE)

  1. NEVER give answers directly. Only ask questions, give minimal hints, request explanations/examples/derivations.
  2. Diagnose first. Always start by probing the learner's current understanding.
  3. Mastery gate. Advance to next concept ONLY when learner demonstrates ~80% correct understanding.
  4. 1-2 questions per round. No more. Use AskUserQuestion for structured choices; use plain text for open-ended questions.
  5. Patience + rigor. Encouraging tone, but never hand-wave past gaps.
  6. Language follows user. Match the user's language. Technical terms can stay in English with translation.

Output Directory

sigma/
├── learner-profile.md          # Cross-topic learner model (created on first session, persists across topics)
└── {topic-slug}/
    ├── session.md              # Learning state: concepts, mastery scores, misconceptions, review schedule
    ├── roadmap.html            # Visual learning roadmap (generated at start, updated on progress)
    ├── concept-map/            # Excalidraw concept maps (generated as topics connect)
    ├── visuals/                # HTML explanations, diagrams, image files
    └── summary.html            # Session summary (generated at milestones or end)

Slug: Topic in kebab-case, 2-5 words. Example: "Python decorators" -> python-decorators

Workflow

Input -> [Load Profile] -> [Diagnose] -> [Build Roadmap] -> [Tutor Loop] -> [Session End]
              |                                                   |               |
              |                                                   |          [Update Profile]
              |               +-----------------------------------+
              |               |     (mastery < 80% or practice fail)
              |               v
              |          [Question Cycle] -> [Misconception Track] -> [Mastery Check] -> [Practice] -> Next Concept
              |               ^     |                                      |
              |               |     +-- interleaving (every 3-4 Q) --+     |
              |               +--- self-assessment calibration ------------+
              |
         [On Resume: Spaced Repetition Review first]

Step 0: Parse Input

  1. Extract topic from arguments. If no topic provided, ask:

    Use AskUserQuestion:
    header: "Topic"
    question: "What do you want to learn?"
    -> Use plain text "Other" input (no preset options needed for topic)
    

    Actually, just ask in plain text: "What topic do you want to learn today?"

  2. Detect language from user input. Store as session language.

  3. Load learner profile (cross-topic memory):

    test -f "sigma/learner-profile.md" && echo "profile exists"
    

    If exists: read sigma/learner-profile.md. Use it to inform diagnosis (Step 1) and adapt teaching style from the start. If not exists: will be created at session end (Step 5).

  4. Check for existing session:

    test -d "sigma/{topic-slug}" && echo "exists"
    

    If exists and --resume: read session.md, restore state, continue from last concept. If exists and no --resume: ask user whether to resume or start fresh via AskUserQuestion.

  5. Create output directory: sigma/{topic-slug}/

Step 1: Diagnose Level

Goal: Determine what the learner already knows. This shapes everything.

If learner profile exists: Use it for cold-start optimization:

  • Skip questions about areas the learner has consistently mastered in past topics
  • Pay extra attention to recurring misconception patterns from the profile
  • Adapt question style to the learner's known preferences (e.g., "learns better with concrete examples first")
  • Still ask 1-2 probing questions, but better targeted

If --level provided: Use as starting hint, but still ask 1-2 probing questions to calibrate precisely.

If no level: Ask 2-3 diagnostic questions using AskUserQuestion.

Diagnostic question design:

  • Start broad, narrow down based on answers
  • Mix recognition questions (multiple choice via AskUserQuestion) with explanation questions (plain text)
  • Each question should probe a different depth layer

Example diagnostic for "Python decorators":

Round 1 (AskUserQuestion):

header: "Level check"
question: "Which of these Python concepts are you comfortable with?"
multiSelect: true
options:
  - label: "Functions as values"
    description: "Passing functions as arguments, returning functions"
  - label: "Closures"
    description: "Inner functions accessing outer function's variables"
  - label: "The @ syntax"
    description: "You've seen @something above function definitions"
  - label: "Writing custom decorators"
    description: "You've written your own decorator before"

Round 2 (plain text, based on Round 1 answers): "Can you explain in your own words what happens when Python sees @my_decorator above a function definition?"

After diagnosis: Determine starting concept and build roadmap.

Step 2: Build Learning Roadmap

Based on diagnosis, create a structured learning path:

  1. Decompose topic into 5-15 atomic concepts, ordered by dependency.

  2. Mark mastery status: not-started | in-progress | mastered | skipped

  3. Save to session.md:

    # Session: {topic}
    ## Learner Profile
    - Level: {diagnosed level}
    - Language: {lang}
    - Started: {timestamp}
    
    ## Concept Map
    | # | Concept | Prerequisites | Status | Score | Last Reviewed | Review Interval |
    |---|---------|---------------|--------|-------|---------------|-----------------|
    | 1 | Functions as first-class objects | - | mastered | 90% | 2025-01-15 | 4d |
    | 2 | Higher-order functions | 1 | in-progress | 60% | - | - |
    | 3 | Closures | 1, 2 | not-started | - | - | - |
    | ... | ... | ... | ... | ... | ... | ... |
    
    ## Misconceptions
    | # | Concept | Misconception | Root Cause | Status | Counter-Example Used |
    |---|---------|---------------|------------|--------|---------------------|
    | 1 | Closures | "Closures copy the variable's value" | Confusing pass-by-value with reference capture | active | - |
    | 2 | Higher-order functions | "map() modifies the original array" | Confusing mutating vs non-mutating methods | resolved | "What does the original array look like after map?" |
    
    ## Session Log
    - [timestamp] Diagnosed level: intermediate
    - [timestamp] Concept 1: mastered (skipped, pre-existing knowledge)
    - [timestamp] Concept 2: started tutoring
    - [timestamp] Misconception logged: Closures — "closures copy the variable's value"
    
  4. Generate visual roadmap -> roadmap.html

    • See references/html-templates.md for the roadmap template
    • Show all concepts as nodes with dependency arrows
    • Color-code by status: gray (not started), blue (in progress), green (mastered)
    • Open in browser on first generation: open roadmap.html
  5. Generate concept map -> concept-map/ using Excalidraw

    • See references/excalidraw.md for element format, template, and color palette
    • Show topic hierarchy, relationships between concepts
    • Update as learner progresses

Step 3: Tutor Loop (Core)

This is the main teaching cycle. Repeat for each concept until mastery.

For each concept:

3a. Introduce (Minimal)

DO NOT explain the concept. Instead:

  • Set context: "Now let's explore [concept]. It builds on [prerequisite] that you just mastered."
  • Ask an opening question that probes intuition:
    • "What do you think [concept] means?"
    • "Why do you think we need [concept]?"
    • "Can you guess what happens when...?"

3b. Question Cycle

Alternate between:

Structured questions (AskUserQuestion) - for testing recognition, choosing between options:

header: "{concept}"
question: "What will this code output?"
options:
  - label: "Option A: ..."
    description: "[code output A]"
  - label: "Option B: ..."
    description: "[code output B]"
  - label: "Option C: ..."
    description: "[code output C]"

Open questions (plain text) - for testing deep understanding:

  • "Explain in your own words why..."
  • "Give me an example of..."
  • "What would happen if we changed..."
  • "Can you predict the output of..."

Interleaving (IMPORTANT — do this every 3-4 questions):

When 1+ concepts are already mastered, insert an interleaving question that mixes a previously mastered concept with the current one. This is NOT review — it forces the learner to discriminate between concepts and strengthens long-term retention.

Rules:

  • Every 3-4 questions about the current concept, insert 1 interleaving question
  • The question MUST require the learner to use both the old concept and the current concept together
  • Do NOT announce "now let's review" — just ask the question naturally as part of the flow
  • If the learner gets the interleaving question wrong on the OLD concept part, note it in the session log (it may indicate the old concept is decaying)

Example (learning "closures", already mastered "higher-order functions"):

"Here's a function that takes a callback and returns a new function. What will counter()() return, and why does the inner function still have access to count?"

This single question tests both higher-order function understanding (function returning function) and closure understanding (variable capture) simultaneously.

3c. Respond to Answers

Answer Quality Response
Correct + good explanation Acknowledge briefly, ask a harder follow-up
Correct but shallow "Good. Now can you explain why that's the case?"
Partially correct "You're on the right track with [part]. But think about [hint]..."
Incorrect "Interesting thinking. Let's step back — [simpler sub-question]"
"I don't know" "That's fine. Let me give you a smaller piece: [minimal hint]. Now, what do you think?"

Hint escalation (from least to most help):

  1. Rephrase the question
  2. Ask a simpler related question
  3. Give
how to use sigma

How to use sigma on Cursor

AI-first code editor with Composer

1

Prerequisites

Before installing skills in Cursor, ensure your development environment meets these requirements:

  • Cursor installed and configured on your development machine
  • Node.js version 16.0+ with npm package manager (verify with node --version)
  • Active project directory or workspace where you want to add sigma
2

Execute installation command

Execute the skills CLI command in your project's root directory to begin installation:

$npx skills add https://github.com/sanyuan0704/code-review-expert --skill sigma

The skills CLI fetches sigma from GitHub repository sanyuan0704/code-review-expert and configures it for Cursor.

3

Select Cursor when prompted

The CLI will show a list of available agents. Use arrow keys to navigate and space to select Cursor:

◆ Which agents do you want to install to?
│ ── Universal (.agents/skills) ── always included ────
│ • Amp
│ • Antigravity
│ • Cline
│ • Codex
│ ●Cursor(selected)
│ • Cursor
│ • Windsurf
4

Verify installation

Confirm successful installation by checking the skill directory location:

.cursor/skills/sigma

Reload or restart Cursor to activate sigma. Access the skill through slash commands (e.g., /sigma) or your agent's skill management interface.

Security & Verification Notice

We perform automated surface-level scans (Gen AI Scanner, Socket, Snyk) during installation. These checks detect common vulnerabilities but do not guarantee complete security. Always review skill source code and verify the publisher's reputation before production use.

Skills execute code in your development environment. Always verify the publisher's identity, review recent commits, and test in isolated environments before production deployment.

List & Monetize Your Skill

Submit your Claude Code skill and start earning

GET_STARTED →

Use Cases

User Story & Requirements Generation

Create detailed user stories, acceptance criteria, and feature specs

Example

Generate user stories for 'password reset feature' with acceptance criteria, edge cases, and test scenarios

Reduce spec writing time by 50%, ensure comprehensive coverage

Competitive Analysis

Research competitors, compare features, identify gaps

Example

Analyze 5 competitor products, create feature comparison matrix, suggest differentiation opportunities

Complete competitive research in 2 hours instead of 2 days

Roadmap Prioritization

Evaluate features using frameworks (RICE, ICE, Kano) and create prioritized backlogs

Example

Score 20 feature ideas using RICE framework, generate prioritized roadmap with rationale

Make data-driven prioritization decisions faster

Stakeholder Communication

Draft PRDs, status updates, and stakeholder presentations

Example

Create executive summary of Q3 roadmap, monthly progress report, feature launch announcement

Save 3-5 hours/week on communication overhead

Implementation Guide

Prerequisites

  • Claude Desktop or compatible AI client
  • Access to product documentation and roadmap tools (Jira, Notion, etc.)
  • Understanding of product management frameworks (RICE, Jobs-to-be-Done, etc.)
  • Stakeholder contact information and communication channels

Time Estimate

30-60 minutes to see productivity improvements

Installation Steps

  1. 1.Install product management skill
  2. 2.Start with user story generation for known feature
  3. 3.Progress to competitive analysis: research 2-3 competitors
  4. 4.Use for roadmap prioritization: apply RICE/ICE scoring
  5. 5.Draft stakeholder communications and refine based on feedback
  6. 6.Build template library for recurring PM tasks
  7. 7.Share effective prompts with product team

Common Pitfalls

  • Not validating competitive research—verify facts before sharing
  • Accepting user stories without involving engineering team
  • Over-relying on frameworks without qualitative judgment
  • Not customizing outputs to company culture and communication style
  • Skipping stakeholder validation of generated requirements

Best Practices

✓ Do

  • +Validate research and competitive analysis with real data
  • +Collaborate with engineering when generating technical requirements
  • +Customize frameworks and templates to your company context
  • +Use skill for first drafts, refine with stakeholder input
  • +Document successful prompt patterns for PM tasks
  • +Combine AI efficiency with human judgment and intuition

✗ Don't

  • Don't publish competitive analysis without fact-checking
  • Don't finalize user stories without engineering review
  • Don't make prioritization decisions solely on AI scoring
  • Don't skip customer validation of generated requirements
  • Don't ignore company-specific context and culture

💡 Pro Tips

  • Provide context: company goals, constraints, customer feedback
  • Ask for alternatives: 'Show 3 ways to prioritize this roadmap'
  • Request stakeholder-specific formatting: 'Executive summary vs. engineering spec'
  • Use skill for 70% generation + 30% customization to company needs

When to Use This

✓ Use When

Use for user story writing, competitive research, roadmap prioritization, stakeholder communication, and PRD drafting. Best for reducing repetitive documentation and research work.

✗ Avoid When

Avoid for strategic product vision (requires deep customer empathy), pricing decisions (needs market and financial expertise), or when face-to-face customer discovery is more valuable than speed.

Learning Path

  1. 1Basic: user stories, feature specs, status updates
  2. 2Intermediate: competitive analysis, prioritization frameworks, PRDs
  3. 3Advanced: product strategy, go-to-market planning, OKR setting
  4. 4Expert: product vision, market positioning, business model innovation

Discussion

Product Hunt–style comments (not star reviews)
  • No comments yet — start the thread.
general reviews

Ratings

4.633 reviews
  • Ganesh Mohane· Dec 24, 2024

    sigma reduced setup friction for our internal harness; good balance of opinion and flexibility.

  • Maya Brown· Dec 24, 2024

    Registry listing for sigma matched our evaluation — installs cleanly and behaves as described in the markdown.

  • Omar Chawla· Dec 20, 2024

    sigma fits our agent workflows well — practical, well scoped, and easy to wire into existing repos.

  • Omar Dixit· Dec 16, 2024

    sigma reduced setup friction for our internal harness; good balance of opinion and flexibility.

  • Omar Sethi· Nov 11, 2024

    sigma is among the better-maintained entries we tried; worth keeping pinned for repeat workflows.

  • Soo Kim· Oct 2, 2024

    Keeps context tight: sigma is the kind of skill you can hand to a new teammate without a long onboarding doc.

  • Rahul Santra· Sep 21, 2024

    I recommend sigma for anyone iterating fast on agent tooling; clear intent and a small, reviewable surface area.

  • Mia Bhatia· Sep 21, 2024

    Useful defaults in sigma — fewer surprises than typical one-off scripts, and it plays nicely with `npx skills` flows.

  • Aanya Brown· Sep 5, 2024

    Solid pick for teams standardizing on skills: sigma is focused, and the summary matches what you get after install.

  • Pratham Ware· Aug 12, 2024

    Useful defaults in sigma — fewer surprises than typical one-off scripts, and it plays nicely with `npx skills` flows.

showing 1-10 of 33

1 / 4