Agent skill

Classroom Stage Design Method

by THU-MAIC in THU-MAIC/OpenMAIC

Baseline procedure for building one new classroom stage: settle the page plan with you, create the stage, write the roster, then generate each page in order.

MITAuto-check passedEducation

Install Classroom Stage Design Method

skills CLI
$ npx skills add THU-MAIC/OpenMAIC --skill stage-design -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install THU-MAIC/OpenMAIC stage-design --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/THU-MAIC/OpenMAIC.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/agent-runtime/stage-design .claude/skills/stage-design && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
stage-design
GitHub stars
40k
Token cost
~1.4k tokens
SKILL.md length
821 words
Files
1
Skills in repo
25
Repo updated
First seen
Licence
MIT

At a glance

Baseline procedure for building one new classroom stage: settle the page plan with you, create the stage, write the roster, then generate each page in order.

  • Works in 5 steps: Plan the stage in the conversation.… → create_stage with the settled course… → set_roster, before any page is… → …
  • Building a brand-new classroom stage from scratch
  • SKILL.md covers The build sequence, When generate_scene fails, Narration audio follows… and Before you call the stage done
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

A stage is one classroom with one agreed plan, one roster and one deck of pages. The skill covers only building a new stage that has no saved pages yet; a stage that already has pages is edited with a different skill. The agent proposes a page plan itself, giving each page a title, a type of slide, quiz, interactive or pbl, and a brief of its teaching intent, then settles it with you through `ask_user` before creating anything.

Next come `create_stage` and `set_roster`, which must happen before any page exists. The roster has exactly one teacher and at least two agents in total, each with a concrete persona and a voice taken from `list_voices` or from `register_voice`. Then `generate_scene` runs once per page in ascending order. Topic skills may shape the contents, but this sequence stays the same under all of them. The description adds rules on re-synthesizing narration and on what must hold before a stage counts as done.

When your agent uses it

  • Building a brand-new classroom stage from scratch
  • Rebuilding a stage that has no saved pages
  • Writing a classroom roster with a teacher and learner personas

Example prompts

  • “Plan and build a classroom on the causes of the French Revolution, and confirm the page plan with me first.”
  • “Create a stage for an introductory statistics course with one teacher and two student agents.”
  • “Rebuild the empty onboarding stage using the standard build sequence.”

Requirements

  • The classroom runtime tools such as `create_stage`, `set_roster` and `generate_scene`

Workflow steps

5 steps, taken from the first numbered list in SKILL.md.

  1. Plan the stage in the conversation. Propose the page plan yourself —
  2. create_stage with the settled course title (pass the series folder's
  3. set_roster, before any page is generated. Write the classroom the
  4. generate_scene for EACH settled page, in ascending order — one
  5. list_scenes to verify every page you settled is actually persisted.

What it can do on your machine

Read from SKILL.md and the folder at commit 6a84dbe. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md.

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Classroom Stage Design Method loads about 1.4k tokens when it runs. Until then it costs about 120 tokens; SKILL.md has 821 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~120
When it runs · the whole SKILL.md, loaded when a task matches
~1.4k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from THU-MAIC/OpenMAIC at commit 6a84dbe, republished under its MIT licence (© THU-MAIC). 821 words, ~1,410 tokens.

Download SKILL.mdSave it as .claude/skills/stage-design/SKILL.md (or your agent's skills folder).
name
stage-design
description
The baseline method for building ONE stage — a single classroom — with this runtime. Covers how the plan is settled in conversation, the order the generation tools are called in, how the classroom roster is written, when narration has to be re-synthesized, and what must be true before a stage is called done. Load this before generating or rebuilding any stage from scratch, whatever its subject; it is the floor the topic skills build on, not an alternative to them.
title
课堂设计

Building one stage

A stage is one classroom: one settled plan, one roster, one deck of pages. This is how a stage is built here, whatever its subject.

A topic skill (deep-interactive, vocational, deep-research, teacher-style-clone, …) may shape what the stage contains — its structure, its page types, how scenes are named — and where one is active its instructions win on those questions. The sequence below is not one of those questions: it is the same under every topic skill. Read this one first, then the topic skill.

Nothing here applies to a stage that already has pages. A stage with persisted pages is edited, not built (see pro-editing).

The build sequence

Build a NEW stage only when there are no persisted pages yet. Then, in this order:

  1. Plan the stage in the conversation. Propose the page plan yourself — each page with its title, type (slide / quiz / interactive / pbl) and brief (this page's teaching intent and content outline, the same information a planned outline slot used to carry) — in page order. Settle the plan with the user through ask_user before creating anything: there is no outline tool to plan with, so the plan is your words and their sign-off. A topic skill's structural constraints are a diagnostic the runtime checks against the real stage after each page; you decide how to act on it.
  2. create_stage with the settled course title (pass the series folder's folderId when the stage is part of a series, so it is filed in the same call). From here on, pass the returned stageId to every stage tool.
  3. set_roster, before any page is generated. Write the classroom the user settled: exactly one teacher, at least two agents in total, each with a concrete persona (2-3 sentences on personality and teaching/learning style, in the stage language) and a voice — call list_voices first and bind one of the returned providerId::voiceId pairs, or the exact pair register_voice returned for a cloned voice; omit the binding when no usable voice exists. Every page's content and narration is written for the roster that exists when the page is generated, so a roster settled late is a roster half the stage never saw.
  4. generate_scene for EACH settled page, in ascending order — one page per call, never more. Pass the page's settled title, type and brief (plus materialFacts when the page's content comes from attached material); no planned outline is needed. A pbl page is generated the same way and lands as a full PBL project (projectV2) from its brief; a failed generation reports an error and writes nothing. Each call is the durable checkpoint for its page: the page survives an interruption only once the call has returned.
  5. list_scenes to verify every page you settled is actually persisted.

None of the planning steps is a place to stop: a turn ends when a page actually landed, when ask_user is waiting on the user, or when the stage is done by the check below. Reporting what you have planned, imported or confirmed leaves the user holding an empty deck.

Show full SKILL.md (312 more words)Show less

When generate_scene fails

Track generation attempts by stageId + order. Changing the title or brief, or generating another page in between, does not reset the attempt.

  • For prompt-unavailable or another deterministic failure, do not repeat the same call.
  • For invalid-model-output, change the brief without changing the settled teaching intent, then retry once. Retry once for a clearly transient provider failure too.
  • If that retry fails, do not call generate_scene again for that target during this run. Leave the page unwritten, continue with later pages in the same stage, and name the gap when wrapping up. Do not call ask_user after every failed page or silently drop the page from the settled plan.

Use list_scenes to reconcile persisted pages with the settled plan. A stage with a missing page can be wrapped up after later pages are built, but it is not done; name each gap and its latest failure instead of claiming completion.

Narration audio follows narration text

When a page's narration is written or reworded with patch_stage on an /actions/... JSON Pointer, call generate_tts on that page. A reworded speech line has no audio until the page is re-synthesized, so narration text that was changed and not re-synthesized ships as a silent page.

Before you call the stage done

Every settled page has to be persisted — a stage is done when the deck is complete, not when it is planned or half built.

Every speech action must have audio. read_stage each page at path:/scenes/<order|id> with detail:"source", check the audioId field on its speech actions, and call generate_tts on any page that is missing it. Read what those actions say while you are there: narration that talks about material this stage does not teach is a defect, whatever its audio status. Only then is the stage finished.

When every settled page is persisted, say so to the user in one or two sentences.

© THU-MAIC, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in skills/agent-runtime/stage-design of THU-MAIC/OpenMAIC.

Open the folder on GitHubat commit 6a84dbe

Compare with similar skills

Classroom Stage Design Method next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Classroom Stage Design Method compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Classroom Stage Design Method this skillTHU-MAIC/OpenMAIC40k—~1.4kAutomated safety check: PassMIT
Competency UnpackerGarethManning/education-agent-skills837—~4.5kAutomated safety check: PassCustom licence
HTML Ppt Course Modulesanqiufong/slides-from-anything132—~1.1kAutomated safety check: PassApache-2.0
Course Builderrevfactory/harness-1001.3k—~1.8kAutomated safety check: PassApache-2.0
AI Engineering Placement Quizrohitg00/ai-engineering-from-scratch66k—~2kAutomated safety check: PassMIT
AnythingAtlasLiuziyu77/AnythingAtlas195—~3.6kAutomated safety check: PassApache-2.0

Similar skills

  • Competency Unpacker

    GarethManning/education-agent-skills

    Unpack a broad standard or competency descriptor into specific, assessable success criteria and sub-skills.

    837 GitHub stars~4.5k tokensUpdated 1 mo ago
    EducationAuto-check passed
  • HTML Ppt Course Module

    sanqiufong/slides-from-anything

    Online-course / workshop module deck — warm paper background + Playfair serif, persistent left sidebar of learning objectives, MCQ self-check page.

    132 GitHub stars~1.1k tokensUpdated today
    EducationAuto-check passed
  • Course Builder

    revfactory/harness-100

    A full production pipeline where an agent team collaborates to design online courses all at once — curriculum, lesson plans, quizzes, and hands-on labs.

    1.3k GitHub stars~1.8k tokensUpdated 6 mo ago
    EducationAuto-check passed
  • AI Engineering Placement Quiz

    rohitg00/ai-engineering-from-scratch

    Runs a 10-question quiz across five areas to place a learner in the AI Engineering from Scratch curriculum, so they skip what they already know.

    66k GitHub stars~2k tokensUpdated today
    EducationAuto-check passed
  • AnythingAtlas

    Liuziyu77/AnythingAtlas

    Researches an unfamiliar topic and delivers a verified resource guide and a staged, timed learning roadmap as matching Markdown and HTML files.

    195 GitHub stars~3.6k tokensUpdated 1 mo ago
    EducationAuto-check passed
  • Codex Skill Self-Assessment

    FlorianBruniaux/claude-code-ultimate-guide

    Runs an interactive quiz in a quick or comprehensive mode, scores your skill level by topic and generates a personalized learning path with practice projects.

    6.1k GitHub stars~2.3k tokensUpdated 2 days ago
    EducationAuto-check passed

More from THU-MAIC/OpenMAIC

All 25 skills in this repo
  • Guides setup, classroom generation and secondary development for OpenMAIC, the multi-agent interactive classroom, one confirmed phase at a time.

    40k GitHub stars~1.7k tokensUpdated today
    Auto-check: notes
  • Designs a Chinese K-12 classroom for one OpenMAIC stage around the core-literacy model, using authentic tasks, performance assessment and observable evidence.

    40k GitHub stars~2.4k tokensUpdated today
    Auto-check passed
  • Maps the structure of an OpenMAIC stage document so an agent can find the right path, read it and patch quizzes, widgets, actions and project pages without guessing.

    40k GitHub stars~2.4k tokensUpdated today
    Auto-check passed
  • Designs a review-and-practice lesson around an independent first attempt, targeted feedback, supported practice, a fresh independent check and a next step.

    40k GitHub stars~1.1k tokensUpdated today
    Auto-check passed
  • Derives a reusable personal skill for course-making from a representative sample of the user's own past classrooms and chat history, confirmed with them before saving.

    40k GitHub stars~678 tokensUpdated today
    Auto-check passed
  • Curriculum Planner

    THU-MAIC/OpenMAIC

    Plans a multi-classroom series such as a seven-day course, clarifies the brief in rounds, gets sign-off on the full lesson list, then builds each stage in a shared folder.

    40k GitHub stars~2.8k tokensUpdated today
    Auto-check passed

Categories

Questions about Classroom Stage Design Method

What does Classroom Stage Design Method do?

Baseline procedure for building one new classroom stage: settle the page plan with you, create the stage, write the roster, then generate each page in order. A stage is one classroom with one agreed plan, one roster and one deck of pages. The skill covers only building a new stage that has no saved pages yet; a stage that already has pages is edited with a different skill.

When should I use Classroom Stage Design Method?

Classroom Stage Design Method fits situations like: building a brand-new classroom stage from scratch; rebuilding a stage that has no saved pages; writing a classroom roster with a teacher and learner personas.

How do I install Classroom Stage Design Method in Claude Code?

Run `npx skills add THU-MAIC/OpenMAIC --skill stage-design -a claude-code`. Or copy the skill folder (skills/agent-runtime/stage-design in THU-MAIC/OpenMAIC) into .claude/skills/stage-design in your project. Claude Code loads it when a task matches its description.

How do I install Classroom Stage Design Method in Codex?

Run `npx skills add THU-MAIC/OpenMAIC --skill stage-design -a codex`. Or copy the skill folder (skills/agent-runtime/stage-design in THU-MAIC/OpenMAIC) into .agents/skills/stage-design in your project. Codex loads it when a task matches its description.

Can I use Classroom Stage Design Method in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add THU-MAIC/OpenMAIC --skill stage-design -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/stage-design, .gemini/skills/stage-design, .github/skills/stage-design and .opencode/skills/stage-design in your project.

What does Classroom Stage Design Method need to run?

SKILL.md names no scripts, command-line tools or credentials: Classroom Stage Design Method is instructions for the agent only. Our summary lists: The classroom runtime tools such as `create_stage`, `set_roster` and `generate_scene`.

Does Classroom Stage Design Method access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Classroom Stage Design Method safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Classroom Stage Design Method use?

Classroom Stage Design Method is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Classroom Stage Design Method use?

About 1.4k tokens (SKILL.md is roughly 5.6k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Classroom Stage Design Method?

Skills that share tags, products or a category with Classroom Stage Design Method: Competency Unpacker (GarethManning/education-agent-skills, 837 stars), HTML Ppt Course Module (sanqiufong/slides-from-anything, 132 stars), Course Builder (revfactory/harness-100, 1.3k stars) and AI Engineering Placement Quiz (rohitg00/ai-engineering-from-scratch, 66k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Classroom Stage Design Method?

THU-MAIC (a GitHub organization) maintains it in THU-MAIC/OpenMAIC, which has 40,213 GitHub stars. The repository holds 25 skills in this directory. The repository was last updated on October 9, 2026.

Source: THU-MAIC/OpenMAIC on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.