
OpenMAIC Skill
Skill清华大学 THU-MAIC 团队开源的多智能体互动课堂 OpenMAIC 的官方技能:给一个主题或一份 PDF,就能生成含课件、测验、互动模拟、项目式学习和 AI 老师讲解的整堂课。可用官网在线版的访问码,或本地部署并配置大模型 API Key。
name: openmaic
description: OpenMAIC assistant for setting up, generating, and extending OpenMAIC. Use when the user wants to use OpenMAIC, generate a multi-agent interactive classroom, or build on / extend / customize OpenMAIC and its @openmaic/* SDK (secondary development, 二开) — covers Live Demo or local setup, startup modes, provider keys, classroom generation, and secondary development (forking, providers/storage/themes, routes, or the renderer/editor).
user-invocable: true
metadata: { "openclaw": { "emoji": "🏫" } }
OpenMAIC Skill
Use this as a guided, confirmation-heavy SOP. Do not compress the whole setup into one reply and do not perform state-changing actions without explicit user confirmation.
Core Rules
- Move one phase at a time.
- Before any state-changing action, ask for confirmation.
- If local state already exists, show what you found and ask whether to keep it.
- Do not assume the OpenClaw agent's own model or API key will be reused by OpenMAIC.
- OpenMAIC classroom generation uses OpenMAIC's server-side model configuration (
openmaic.ymland the model settings in the web app). - This skill must not rely on any request-time model or provider overrides.
- Only that server-side configuration may control provider selection and defaults.
- Do not default to asking the user to paste API keys into chat.
- Prefer guiding the user to edit local config files themselves.
- Do not offer to write API keys into config files on the user's behalf.
- Once setup is complete and the user clearly asks to generate a classroom, do not ask for a second confirmation before submitting the generation job.
- Keep confirmations for local file reads such as reading a PDF from disk before uploading it.
Optional Skill Config
If present, read defaults from ~/.openclaw/openclaw.json under:
{
"skills": {
"entries": {
"openmaic": {
"enabled": true,
"config": {
"accessCode": "sk-xxx",
"repoDir": "/path/to/OpenMAIC",
"url": "http://localhost:3000"
}
}
}
}
}
- If
accessCodeis present, default to Live Demo mode and skip the mode-selection prompt — unless the user's intent is to extend/build on OpenMAIC (see the exception in Phase 0). - Use
repoDirandurlonly as defaults for local mode. - Still confirm before acting.
SOP Phases
0. Choose Mode
First check skill config for accessCode. If present, announce that a stored access code was found and proceed directly to Live Demo mode (load references/live-demo.md, skip phases 1–4). Do not ask the user to paste the code again. Exception: if the user's stated intent is to extend / build on / customize OpenMAIC or consume the @openmaic/* SDK (二次开发 / 二开 / SDK), do not auto-shortcut — go to the extend branch below regardless of accessCode. A returning Live Demo user who now wants to do 二开 should be routed to extend, not silently sent back to Live Demo.
If no accessCode in config (or the extend exception above applies), ask the user how they want to use OpenMAIC:
- Use the OpenMAIC Live Demo (recommended for quick start) — The cloud edition: the version officially deployed and hosted by the OpenMAIC team at open.maic.chat. Requires an access code (starts with
sk-). Get yours by signing in at https://open.maic.chat, clicking your account in the top-right corner, opening "访问码设置" (access code settings), and generating a code; then add it to~/.openclaw/openclaw.jsonunderskills.entries.openmaic.config.accessCode. No local setup needed. - Run locally — Clone the repo, configure provider keys, and run on your machine.
- Extend or build on OpenMAIC (二次开发) — Fork the repo and customize the product, or consume the
@openmaic/*SDK to build something new.
If the user chooses Live Demo mode, load references/live-demo.md and skip phases 1–4. If the user chooses local mode, proceed to phase 1 as usual. If the user chooses to extend/build on OpenMAIC, load references/extend.md and skip the setup/generation phases.
1. Clone Or Reuse Existing Repo
Load references/clone.md.
Use this when the user has not installed OpenMAIC yet or when you need to confirm which local checkout to use.
2. Choose Startup Mode
Load references/startup-modes.md.
Use this after the repo location is confirmed. Present the available startup modes, recommend one, and wait for the user's choice.
3. Configure Provider Keys
Load references/provider-keys.md.
Use this before starting classroom generation. Recommend a provider path and tell the user exactly what to edit themselves (openmaic.yml and .env.local, or the model settings in the web app). If generation later fails due to provider/model/auth issues, return to this phase and direct the user to update the same configuration.
After the core LLM key is configured, ask the user if they want to enable optional features (web search, image generation, video generation, TTS). Each is a slot with its own provider — see the "Optional Features" section in provider-keys.md.
4. Start And Verify OpenMAIC
After the user has chosen a startup mode and configured keys, start OpenMAIC using the chosen method, then verify the service with GET {url}/api/health.
5. Generate A Classroom
Load references/generate-flow.md.
Use this only after the service is healthy. Confirm before reading local files to upload. If the user has already clearly asked to generate, do not ask for a second confirmation before submitting the generation job, and then follow the polling loop until it succeeds or fails (a failed job may be retried; see the generate flow). Only send the supported fields (requirement, materialIds) for generation requests; optional features follow the server's provider config. Uploads and the submission must resolve to the same owner: in anonymous-cookie mode reuse the same cookie jar on every request. For long-running jobs, prefer sparse polling and tell the user to check back later if the turn ends before completion.
Response Style
- Keep each step short and explicit.
- Prefer 2-3 concrete options when the user must choose.
- Always include the recommended option first and explain why in one sentence.
- After a step completes, say what changed and what the next confirmation is for.
- When returning a classroom link, place the raw absolute URL on its own line with no bold, markdown link syntax, code formatting, or tables.
相关资源

Web Video Presentation
Skill把文章或讲稿改写成口播稿,再做成点击推进的 16:9 网页演示,录屏即可得到讲解视频,可选合成配音,适合教师录课、B 站/YouTube 教程和产品讲解。需要 Node.js 环境;配音需 MiniMax 或 OpenAI 的 API Key,也可换成其他 TTS。
ConardLi/garden-skills12.8k
MarsWave Skills(ListenHub)
SkillListenHub 官方技能合集:让 agent 把主题、文章或链接做成播客、讲解视频和幻灯片,也能配音、克隆音色、配乐和生图,适合做课程音频与短视频。需要 ListenHub 账号(有免费额度)和 listenhub 命令行工具。
marswaveai/skills79
MulmoCast CLI
CLI用 JSON/YAML 格式的 MulmoScript 写好讲稿、说话人与画面,mulmo 命令即可生成配音和插图,合成为视频、播客、幻灯片或 PDF,可把讲义、报告做成讲解视频。需要 Node.js、FFmpeg 和 OpenAI API Key,其他厂商的 Key 可选。
receptron/mulmocast-cli474
notebooklm-py
CLI非官方 Python 库与 CLI,让 agent 操控 Google NotebookLM(现更名 Gemini Notebook):批量导入资料、基于来源带引用问答,生成播客、视频、幻灯片、测验与闪卡并批量下载,自带 agent skill。依赖未公开接口,需登录 Google 账号。
teng-lin/notebooklm-py19.7k
Gemini Notebook (NotebookLM) CLI & MCP Server
CLI非官方的 NotebookLM(现名 Gemini Notebook)命令行 nlm 与 MCP 服务器:老师和学生可让 AI 批量建笔记本、导入网页和文档,生成音频概述、测验、闪卡、思维导图和幻灯片,用于备课与复习。依赖未公开接口,需登录 Google 账号,可能随官方改版失效。
jacob-bd/gemini-notebook-mcp-cli6.3k
anything2explainer
Skill输入一个主题或一篇文章,自动调研、写解说词、配音、分镜并逐镜做动画,产出带字幕、章节卡和进度条的中英文科普讲解视频,适合老师做课程视频。需要 Node.js、ffmpeg 与 Python 环境,中文默认用免费的 edge-tts 配音;按时长约需 1–3 小时;工具包仅限非商业免费使用,商用需作者授权。
Vincentwei1021/anything2explainer2.1k