Coding

Learning Planner

Try it

Personal learning management system with goal setting, spaced repetition scheduling, and progress tracking. Use when: (1) setting learning goals and skill tr...

What it does

Personal learning management system that helps set learning goals, create plans, track progress, and provides spaced repetition review features.

The skill document

Learning Planner

Personal learning management system that helps set learning goals, create plans, track progress, and provides spaced repetition review features.

Features

1. Learning Goal Management

  • Skill tree definition and breakdown
  • Knowledge point hierarchy management
  • Goal priority settings
  • Goal completion time planning

2. Learning Plan Generation

  • Daily learning task generation
  • Weekly learning plans
  • Automatic plan adjustment
  • Learning reminder settings

3. Progress Tracking and Visualization

  • Real-time learning progress tracking
  • Progress visualization charts
  • Learning time statistics
  • Completion rate analysis

4. Spaced Repetition Review System

  • SM-2 algorithm implementation
  • Flashcard-based review
  • Automatic scheduling
  • Forgetting curve optimization

5. Learning Resource Management

  • Resource link bookmarking
  • Resource categorization
  • Resource to knowledge point mapping
  • Resource usage statistics

6. Learning Outcome Evaluation

  • Self-assessment records
  • Test score management
  • Learning effectiveness analysis
  • Ability growth curves

Installation

cd ~/.openclaw/workspace/skills/learning-planner
pip install -e .

# Add to PATH (optional)
ln -s ~/.openclaw/workspace/skills/learning-planner/src/learning_cli.py ~/.local/bin/learning

Usage

Learning Goals

# Create learning goal
learning goal create "Python Programming" --description "Master Python programming language" --deadline 2024-12-31

# Create sub-goals (knowledge point breakdown)
learning goal create "Python Basic Syntax" --parent 1 --priority high
learning goal create "Python OOP" --parent 1 --priority high
learning goal create "Python Advanced Features" --parent 1 --priority medium

# List goals
learning goal list

# View goal details
learning goal show 1

# Update goal progress
learning goal progress 1 --percent 75

# Complete goal
learning goal complete 1

Learning Plans

# Generate today's learning plan
learning plan today

# Generate this week's learning plan
learning plan week

# View plans
learning plan list

# Mark task complete
learning plan complete 1

# Postpone task
learning plan postpone 1 --days 1

Spaced Repetition Review

# Create review card
learning card create "Python list comprehension syntax" --answer "[x for x in iterable if condition]" --tags python,basics

# Today's review
learning review today

# View review statistics
learning review stats

# Manually adjust card difficulty
learning card difficulty 1 --level hard

Learning Resources

# Add resource
learning resource add "Python Official Documentation" --url https://docs.python.org --type documentation --tags python

# Link resource to goal
learning resource link 1 --goal 1

# List resources
learning resource list

# Search resources
learning resource search python

Progress and Reports

# Learning statistics
learning stats

# Generate learning report
learning report --days 30

# View skill tree progress
learning tree

# Learning time statistics
learning time --days 7

Data Storage

Database location: ~/.config/learning-planner/learning.db

# View database path
learning data path

Tech Stack

  • Python 3.8+
  • SQLite data storage
  • Click (CLI framework)
  • Rich (terminal styling)
  • SM-2 spaced repetition algorithm

Data Models

Learning Goals Table (goals)

{
    id: int
    title: str              # Goal name
    description: str        # Description
    parent_id: int          # Parent goal ID
    priority: str           # Priority: low, medium, high
    status: str             # Status: active, completed, paused
    progress: float         # Progress 0-100
    deadline: str           # Deadline
    estimated_hours: int    # Estimated study hours
    completed_hours: int    # Completed hours
    created_at: str
    updated_at: str
}

Learning Plans Table (plans)

{
    id: int
    goal_id: int            # Related goal
    title: str              # Task title
    description: str        # Description
    scheduled_date: str     # Planned date
    estimated_minutes: int  # Estimated duration (minutes)
    status: str             # Status: pending, completed, postponed
    completed_at: str       # Completion time
    created_at: str
}

Review Cards Table (cards)

{
    id: int
    goal_id: int            # Related goal
    front: str              # Card front (question)
    back: str                # Card back (answer)
    tags: str               # Tags
    ease_factor: float      # Difficulty factor
    interval: int           # Interval days
    repetitions: int        # Repetition count
    next_review: str        # Next review time
    last_review: str        # Last review time
    created_at: str
}

Review Records Table (reviews)

{
    id: int
    card_id: int            # Card ID
    quality: int            # Rating 0-5
    reviewed_at: str        # Review time
    time_spent: int         # Time spent (seconds)
}

Learning Resources Table (resources)

{
    id: int
    title: str              # Resource name
    url: str                # Link
    resource_type: str      # Type: video, article, book, documentation
    tags: str               # Tags
    goal_id: int            # Related goal
    notes: str              # Notes
    created_at: str
}

Learning Sessions Table (sessions)

{
    id: int
    goal_id: int            # Related goal
    start_time: str         # Start time
    end_time: str           # End time
    duration: int           # Duration (minutes)
    notes: str              # Notes
}

SM-2 Algorithm Explanation

Spaced repetition algorithm based on SuperMemo-2:

  1. Quality Rating: 0-5 points

    • 5: Perfect response
    • 4: Correct response, hesitated
    • 3: Correct response, difficult
    • 2: Incorrect, close to correct
    • 1: Incorrect, remembered some
    • 0: Completely forgot
  2. Ease Factor (EF): Initial 2.5, range 1.3-2.5

    • EF' = EF + (0.1 - (5-q) * (0.08 + (5-q) * 0.02))
  3. Interval Days:

    • First: 1 day
    • Second: 6 days
    • Nth: Previous interval * EF

Related skills

Find why your productivity system keeps failing, then apply the smallest fix — capacity math, bottleneck routing, durable local notes.

by Iván855 installs69 stars

Generate and edit Draw.io, Mermaid, and Excalidraw diagrams from natural language using a structured JSON spec.

by nssa.io1.0k installs47 stars

Stores durable facts in a categorized, plain-markdown vault on disk, alongside your agent's built-in memory.

by Iván559 installs18 stars

Fetch raw ad creative, app, ranking, and revenue data from AdMapix as structured JSON.

by fly0pants4.3k installs296 stars

Join a video meeting as an AI bot with voice, avatar, and screenshare across four operating modes.

by johnpatternai22 installs8 stars

More from harrylabsj

Browse all skills

Cross-platform price compare for Taobao vs JD, PDD, Vipshop with match-scored buy/wait/avoid calls.

by harrylabsj52 installs2 stars

Get a clear order, switch, add, wait, or skip call on a Meituan deal from visible fees, ETA, reviews, and threshold math.

by harrylabsj44 installs1 stars

Evaluate Pinduoduo deals before you commit — subsidies, group-buy rules, seller risk, and refund terms in one pass.

by harrylabsj34 installs1 stars

Diagnose skill bottlenecks and turn practice logs into a targeted next session.

by harrylabsj35 installs

Get plain-Chinese explanations of routine health checkup reports with abnormal items grouped and prioritized.

by harrylabsj27 installs

Plan Freshippo (盒马鲜生) shopping with freshness checks, delivery-slot advice, and a manual order handoff.

by harrylabsj23 installs