Skip to content
cccskills
FreePublished on GitHub

openmaic

Set up OpenMAIC and generate interactive classrooms with multiple AI agents. The skill guides hosted or local use, model configuration, and classroom generation, and also supports customizing the product or building with its SDK, a set of development tools.

OriginalShow the original 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).

See how to install

Good for

  • Trying classroom generation with the Live Demo
  • Setting up and checking a local installation
  • Generating a classroom from requirements and materials
  • Customizing OpenMAIC or building with its SDK

Files included (9)

  • SKILL.md6.6 KB
  • references/clone.md886 B
  • references/extend-cookbook.md7.6 KB
  • references/extend-sdk.md5.3 KB
  • references/extend.md7.1 KB
  • references/generate-flow.md18.4 KB
  • references/live-demo.md3.0 KB
  • references/provider-keys.md8.4 KB
  • references/startup-modes.md1.8 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

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.yml and 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 accessCode is 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 repoDir and url only 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:

  1. 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.json under skills.entries.openmaic.config.accessCode. No local setup needed.
  2. Run locally — Clone the repo, configure provider keys, and run on your machine.
  3. 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.

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

Turn past classrooms and chat history into a reusable personal skill for course creation. It examines varied examples, checks recurring patterns and exceptions, and asks for corrections before saving instructions that reflect the user's workflow and quality expectations.

  • Reviewing patterns across past course creation
  • Turning preferred workflows into reusable instructions
  • Checking inferred preferences against examples
THU-MAIC/OpenMAIC41KUpdated Oct 18, 2026

Plan and build a connected series of lessons around learners’ experience and goals. After the user approves the complete lesson list, it creates lessons in order, checks continuity, and organizes them in one folder.

  • Building a seven-day introductory Python course
  • Creating a four-week onboarding program
  • Turning book chapters into separate lessons
THU-MAIC/OpenMAIC41KUpdated Oct 18, 2026

deep-interactive

FreeSummary

Design courses where learners explore ideas by changing parameters, following diagrams, running code, playing games, or inspecting 3D scenes. Each main page focuses on one mechanism or structure, with opening and closing pages framing the learning.

  • Exploring how changing a parameter affects a system
  • Following a diagram to understand structure or flow
  • Learning an idea by modifying and running code
THU-MAIC/OpenMAIC41KUpdated Oct 18, 2026

deep-research

FreeSummary

Create courses grounded in verified external facts, including recent developments, market data, product details, and scientific findings. It researches sources, records which evidence supports each claim, and carries those findings and uncertainties into page plans and content.

  • Creating a course about recent events or industry developments
  • Building lessons around verified market or policy data
  • Teaching product details or scientific findings with sources
THU-MAIC/OpenMAIC41KUpdated Oct 18, 2026

fact-check

FreeSummary

Check important factual claims in courses or supplied content against available materials and authoritative sources. Review numbers, definitions, and contradictions, then receive a concise report with evidence and suggested corrections, or have generated course pages checked before delivery.

  • Checking facts in a completed course
  • Verifying important numbers and technical definitions
  • Finding contradictions between course pages
THU-MAIC/OpenMAIC41KUpdated Oct 18, 2026

feynman-learning

FreeSummary

Build learning activities where learners explain an idea first, then improve their explanation through focused questions. Include plain language, checks on analogies, application to unfamiliar situations, and a record of remaining gaps and next goals.

  • Learn a concept by explaining it in your own words
  • Turn existing materials into explanation-based activities
  • Test explanations without relying on technical terms
THU-MAIC/OpenMAIC41KUpdated Oct 18, 2026

See all skills by THU-MAIC

Report a problem with this skill