THU-MAIC/OpenMAIC
Learning ResourcesTurns a topic or uploaded material into an interactive AI-taught classroom with slides, quizzes and simulations.
OpenMAIC (Open Multi-Agent Interactive Classroom) is an open-source, self-hosted platform that turns a prompt or document into a replayable classroom: slides, quizzes, interactive HTML simulations and project-based activities, presented by AI teachers and classmates that speak, draw on a whiteboard and discuss with the learner. It suits educators, course creators and learners who want generated lessons rather than a plain chat answer, and who are willing to run a server.
How a lesson gets made
There are two generation modes. Standard mode uses a two-stage pipeline: an outline from the topic or attached material, then a rich scene for each outline item. Deep Interactive Mode builds hands-on units instead — 3D visualizations, process simulations, mini-games, mind maps and in-browser programming exercises, all responsive across desktop, tablet and phone — with the AI teacher able to operate the interface to point things out. Materials can be PDF, Word, PowerPoint, spreadsheets, text, images, audio or video; extractors convert what they support into generation input. If audio/video extraction is unavailable, those materials are marked failed rather than silently producing an empty transcript.
Running it
The app is Next.js/TypeScript and self-hosted. Local use needs Node.js ≥ 22.19, pnpm ≥ 10 and PostgreSQL 16; without DATABASE_URL the server refuses to start and exits. Generation runs inside a long-running server process, so it continues after the browser leaves the page. This is why Vercel/serverless hosting is supported only up to 1.1.x — 1.2.0 and later need a long-running Node process plus PostgreSQL, via Docker Compose or pnpm start. The supplied Compose file is explicitly a personal installation: it listens on localhost only and runs single-user, so publishing it to a network without setting ACCESS_CODE lets anyone who can reach the port own and delete the whole library.
Models are declared server-side in openmaic.yml, mapping providers to uses such as outline, slide content, speech and search; keys stay in .env.local. Many extras are opt-in: local providers (Lemonade), local speech recognition (FunASR), document parsing (MinerU), self-hosted TTS with voice cloning (VoxCPM2), and MP4 export, which requires a separate Chromium+FFmpeg render container — without it, export falls back to a project ZIP.
Output and upgrades
Classrooms export as editable PPTX, an offline single HTML file that plays the lesson, or a ZIP for backup and transfer between deployments; the offline export inlines external assets so it can play on an air-gapped network, though courses exported before that feature need re-exporting. Upgrades deserve attention: 1.3.0 requires stopping all old instances and offers no rollback below 1.3.0, 1.2.0 changed identity/ownership modes that should be set before first start, and Compose deployments have their own upgrade notes. The repository is MIT-licensed, including commercial use, but two bundled workspace packages carry their own terms (one LGPL-3.0-or-later). Agent-workbench integration (OpenClaw, Codex and others) is optional and depends on that separate workbench.
Written by AI from the project's README, updated October 31, 2026. The project's own docs are the source of truth.