deep-interactive
GitHub设计以动手操作为核心的交互式课程,通过模拟、代码或游戏等组件引导学习者探索机制。适用于需观察变量变化或结构的过程性教学内容。
Trigger Scenarios
Install
npx skills add THU-MAIC/OpenMAIC --skill deep-interactive -g -y
SKILL.md
Frontmatter
{
"name": "deep-interactive",
"title": "深度交互",
"description": "Deep Interactive courses. Plans the course so the learner manipulates something on most pages — simulations, diagrams they explore, code they run, games, 3D scenes — with slides reserved for the opening frame and the closing consolidation. Use when the topic has a mechanism, a variable to vary, a process to trace, or a structure to inspect."
}
Deep Interactive course design
Default to doing, not reading. A page earns the slide type only when the
learner has nothing to manipulate on it.
Structure
- Scene 1 is a
slide: it frames the question the course answers and tells the learner what they are about to play with. One page, no more. - The body is
interactive. Each body scene isolates one mechanism, one variable, one structure — so the learner can change it and watch the result. - The last scene is a
slideor aquizthat consolidates what the manipulation showed. - Consecutive interactive scenes must not use the same
widgetType. Two simulations in a row is a design failure; vary the modality as the concept moves from "watch it" to "trace it" to "predict it".
Choosing a widget type
| widgetType | Use when the learner should… |
|---|---|
simulation |
vary parameters and watch a system respond in real time |
diagram |
explore structure, flow or hierarchy by expanding and following |
code |
read, modify and run a short program that embodies the idea |
game |
make repeated decisions under a rule set and see the score move |
visualization3d |
inspect a spatial object or scene from angles a slide cannot show |
widgetOutline
Every interactive scene must carry a widgetOutline populated for its type —
an interactive scene with an empty widget outline degrades to a generic page and
defeats the whole point.
simulation:concept,keyVariables(the actual sliders/inputs)diagram:diagramType,nodes(withlabel, andparentIdfor hierarchy)code:language,conceptgame:gameType,challenge,playerControlsvisualization3d:visualizationType,objects,interactions
Scene naming
Titles name what the learner does or discovers, not the topic heading.
- Good: 「拖动倾角,看射程怎么变」「顺着数据流走一遍」「猜下一步会发生什么」
- Bad: 「抛体运动」「数据流概述」「知识点回顾」
keyPoints
For an interactive scene, keyPoints describe the interaction and what it
reveals — what the learner changes, what they observe, what conclusion the
observation forces. Not a bullet list of facts to be read out.
Version History
- c60198c Current 2026-08-28 15:16


