Install
openclaw skills install adaptive-learningCreate adaptive learning flashcard apps from course materials (URLs, PDFs, or folders). Uses FSRS (Free Spaced Repetition Scheduler) and Bayesian Knowledge Tracing for intelligent review scheduling. Use when asked to create study materials, flashcards, review apps, spaced repetition systems, or adaptive quizzes from course content. Triggers on "make me a study app", "create flashcards for this course", "adaptive learning", "spaced repetition", "review system for [course]".
openclaw skills install adaptive-learningCreate self-contained, browser-based adaptive learning apps from any course material.
file://, no server neededFrom a URL:
1. Fetch the course page, extract topic list and resource links
2. Download HW/Discussion/Lecture PDFs to ~/COURSE_NAME/
From a local folder:
1. List files, identify PDFs and documents
2. Read/parse to understand topics and content
Create questions.json with this schema:
[{
"id": "unique-id",
"topic": "Topic Name",
"topicIndex": 0,
"difficulty": 1,
"question": "Supports $LaTeX$ via KaTeX",
"answer": "Supports $LaTeX$ and \\n for line breaks",
"tags": ["tag1", "tag2"]
}]
Guidelines:
$...$ inline, $$...$$ block) for math\\n for line breaks in question/answer texttopicIndex controls topic ordering (0-based)Run the bundler script:
bash SKILL_DIR/scripts/generate-course.sh <course-id> <questions.json> <output-dir>
Then register the course in engine.js COURSE_REGISTRY:
{ id: 'course-id', name: 'Course Name', desc: 'Description', school: 'School', term: 'Term' }
Open <output-dir>/index.html in a browser. Verify:
| File | Purpose |
|---|---|
index.html | Main page with course selector + learning UI |
style.css | Dark theme, responsive styles |
engine.js | FSRS + BKT engine, question selection, state management |
ts-fsrs.umd.js | FSRS algorithm library (UMD build of ts-fsrs) |
To add a new course to an existing adaptive-learning setup at ~/adaptive-learning/:
questions.json to ~/adaptive-learning/courses/<id>/bash scripts/generate-course.sh <id> questions.json ~/adaptive-learning/framework/COURSE_REGISTRY in engine.js