Skip to main content
ClaudeWave
Skill83 estrellas del repoactualizado 2mo ago

review

Use when user asks about their learning progress or wants study guidance. Triggers on "how am I doing", "my progress", "what should I study next", "show my scores", "what are my weak areas", "review my learning", "how well do I know X", or any request to see quiz results, track improvement, or decide what to focus on next. Also use when the user seems unsure what to study — this skill provides data-driven recommendations.

Instalar en Claude Code
Copiar
git clone --depth 1 https://github.com/kirilxd/claude-tutor /tmp/review && cp -r /tmp/review/skills/review ~/.claude/skills/review
Después abre una sesión nueva de Claude Code; el skill carga automáticamente.

SKILL.md

# Review — Learning Progress Dashboard

**ALWAYS** use the `AskUserQuestion` tool when asking the user questions, in any context. If you have too many questions for the tool, split them up into multiple calls.

## Overview

Show the user their learning progress across all topics or for a specific topic. Display quiz scores, module completion, weak areas, score trends, and actionable next steps.

## Data Schemas

The review skill reads data written by the learn and quiz skills. Here are the formats you'll encounter:

**index.json** (`~/.claude/learning/index.json`) — master registry:
```json
{
  "topics": {
    "topic-slug": {
      "displayName": "Topic Name",
      "planFile": "plans/topic-slug-2026-03-01.json",
      "progressFile": "progress/topic-slug.json",
      "created": "2026-03-01",
      "lastActivity": "2026-03-01",
      "level": "beginner",
      "modulesCompleted": 0,
      "modulesTotal": 5,
      "quizzesTaken": 1,
      "overallScore": 0.8
    }
  }
}
```

**Plan files** (`~/.claude/learning/plans/<slug>-<date>.json`) — contain `modules[]` with `id`, `title`, `objectives`, `keyConcepts`, `estimatedTime`, `resources[]`.

**Progress files** (`~/.claude/learning/progress/<slug>.json`) — contain `quizzes[]` (each with `date`, `module`, `score`, `total`, `questions[]`), `weakAreas[]`, `strongAreas[]`, `overallScore` (percentage 0-100, not fraction).

Progress files now also contain `spacedRepetition` — a map of concept labels to SM-2 scheduling data (`easeFactor`, `intervalDays`, `nextReview`, `repetitions`). Concepts with `nextReview` at or before today are due for review.

## Process

### Step 1: Load Data

Read `~/.claude/learning/index.json`.

**If file doesn't exist or is empty:**
- Tell the user: "No learning data found yet. Use /learn <topic> to start your first topic!"
- Stop here.

**If user specified a topic** (e.g., `/review kubernetes`):
- Load that topic's plan and progress files
- Show detailed single-topic view

**If no topic specified:**
- Load all topics from index
- Show overview of all topics

### Step 2: Display Progress

**All-topics overview format:**

```
── Learning Progress ─────────────────────────────

[Topic Name] (started [date])
  Module 1: [Title]    [progress bar] [score]%  ([N] quizzes)
  Module 2: [Title]    [progress bar] not started
  ...
  Weak areas: [list]
  Next step: [actionable suggestion]

[Topic Name 2] ...

── Due for Review ────────────────────────────────
  [Topic]: [N] concepts due ([list top 3 concept names])
  [Topic 2]: [N] concepts due ([list top 3])

  Run /quiz [topic] to review these concepts.
──────────────────────────────────────────────────

── Summary ───────────────────────────────────────
  Active topics: [N]
  Total quizzes taken: [N]
  Average score: [N]%
  Suggested focus: [topic — reason]
──────────────────────────────────────────────────
```

**Due for review section:**

If any concepts have `nextReview` at or before today across any topic, show the "Due for Review" block between the per-topic details and the Summary (as shown above). If no concepts are due, omit this block entirely.

**Progress bar rendering:**
- Use Unicode block characters: `█` for filled, `░` for empty
- 10 characters wide
- Based on quiz scores for that module (no quizzes = all empty)

**Single-topic detailed format:**
- Show all modules with per-module quiz history
- Show score trend if multiple quizzes (e.g., "Module 1: 60% → 75% → 90%")
- List all weak and strong areas
- Show total time estimated vs modules completed
- Suggest specific module to focus on next

### Step 3: Recommend Next Action

Always end with one clear, actionable suggestion:

- If concepts are due for review (nextReview <= today): "You have [N] concepts due for review in [topic]. Run `/quiz [topic]` to keep them fresh — spaced repetition works best when you review on schedule."
- If a topic has weak areas: "Retake the quiz on [topic] focusing on [weak area]. Use `/quiz [topic]`"
- If a module is unstarted: "Start Module [N]: [title]. Check `/resources [topic]` for study materials"
- If all modules are strong: "Great work on [topic]! Consider exploring a related topic or increasing the difficulty"
- If multiple topics exist: prioritize the one with lowest score or most staleness
dashboardSkill

Use only when user explicitly asks to "open dashboard", "show dashboard", "launch dashboard", or "learning UI". Opens a local web interface for viewing and editing learning plans, quiz progress, and spaced repetition data.

learnSkill

Use when user wants to learn a topic or create a study plan. Triggers on "teach me", "I want to learn", "explain X to me", "study", "help me understand", "where do I start with", "how do I get into", or any request to understand a subject in depth. Covers both technical topics (programming, system design, DevOps) and general knowledge (history, science, languages, music theory). Also use when someone asks for a "learning path", "roadmap", or "curriculum" for a topic — even if they don't explicitly say "learn".

quizSkill

Use when user wants to be tested or quizzed on any topic. Triggers on "quiz me", "test me", "test my knowledge", "practice questions", "check my understanding", or when asking for a quiz on something they've been learning. Also use when user finishes a learning module and wants to check understanding. Works with or without a prior learning plan.

resourcesSkill

Use when user asks for learning resources, recommendations, or materials on any topic. Triggers on "find me resources", "what should I read about", "best tutorials for", "recommend a book on", "good courses for", "where can I learn more about", "any videos on", or any request for curated study materials. Also use when user wants to browse what's available before committing to a full learning plan — this skill works with or without an existing plan.