OpenMAIC License: Understanding the MIT Licensing and Usage Terms
OpenMAIC is released under the MIT License, permitting free commercial use, modification, and distribution of the core codebase, with third-party packages retaining their respective licenses.
The THU-MAIC/OpenMAIC repository is an open-source AI-powered classroom orchestration framework. Understanding the OpenMAIC license terms is essential for developers integrating the generation pipeline, agent runtime, or React frontend components into their own projects.
MIT License Declaration in Repository Files
The MIT License governs OpenMAIC across multiple canonical files in the repository root.
The LICENSE File
The full legal text resides in the repository’s LICENSE file at the project root. This file contains the standard MIT grant:
“Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the “Software”), to deal in the Software without restriction…”
This declaration explicitly allows unrestricted use, reproduction, and distribution of both source and binary forms.
package.json License Field
The package.json file at the repository root declares the license metadata for package managers:
{
"license": "MIT"
}
This field ensures automated tooling and dependency scanners correctly identify the project’s licensing terms.
README Badge
The [README.md](https://github.com/THU-MAIC/OpenMAIC/blob/main/README.md) displays a visual license indicator:
[](LICENSE)
This badge provides immediate visual confirmation of the OpenMAIC license status for repository visitors.
Third-Party Package Licensing Exceptions
While the core codebase is MIT-licensed, the packages/ directory contains third-party components with distinct licensing terms that you must honor when redistributing:
packages/mathml2omml— Licensed under LGPL-3.0-or-later, requiring source code disclosure if you modify and redistribute this specific package.packages/pptxgenjs— Licensed under MIT, compatible with the core project terms.
When distributing OpenMAIC as a complete bundle, compliance requires adhering to the strictest license present in your specific deployment configuration.
Core Modules Covered by the MIT License
All foundational architecture layers developed by the THU-MAIC team fall under the MIT License:
| Module | Path | Function |
|---|---|---|
| Generation Pipeline | @openmaic/generation |
Two-stage outline and scene generation |
| Agent Runtime | lib/server/agent-runtime/ |
PostgreSQL-backed session management |
| Storage Layer | packages/@openmaic/storage/ |
Browser, HTTP, PostgreSQL, and S3 abstractions |
| Orchestration Engine | lib/orchestration/ |
LangGraph state machine coordination |
| Playback Engine | lib/playback/ |
Classroom state machine and live interaction |
| Action Engine | lib/action/ |
Implementation of 28+ action types (speech, whiteboard, effects) |
| UI Components | components/, app/ |
React workbench and slide editor |
These directories contain the primary intellectual property released under the permissive MIT terms.
How to Verify the OpenMAIC License Programmatically
For CI/CD pipelines or automated compliance checking, you can programmatically validate the license using Node.js:
import { readFileSync } from 'fs';
import path from 'path';
// Resolve the LICENSE file relative to the project root
const licensePath = path.resolve(process.cwd(), 'LICENSE');
const licenseText = readFileSync(licensePath, 'utf8');
// Simple sanity check: confirm the MIT header is present
if (licenseText.includes('MIT License')) {
console.log('✅ OpenMAIC is MIT-licensed');
} else {
console.warn('⚠️ License header not found');
}
This script reads the LICENSE file at runtime and verifies the presence of the MIT header, ensuring your deployment contains the expected legal terms.
SPDX License Identifiers for Contributors
When contributing new source files to the repository, include the SPDX identifier to maintain license clarity:
// SPDX-License-Identifier: MIT
// © 2026 THU-MAIC
export function helloWorld() {
console.log('Hello, OpenMAIC!');
}
The SPDX-License-Identifier: MIT comment enables automated license scanning tools to catalogue the file correctly without parsing the full license text.
Summary
- OpenMAIC is released under the MIT License, found in the
LICENSEfile and declared inpackage.json. - The core codebase—including orchestration, generation, storage, and UI modules—is fully MIT-licensed for commercial and private use.
- Third-party packages in
packages/mathml2omml(LGPL-3.0-or-later) andpackages/pptxgenjs(MIT) retain their original licenses. - You can verify the license programmatically by checking for "MIT License" in the root
LICENSEfile. - Contributors should add
SPDX-License-Identifier: MITheaders to new files for automated compliance tracking.
Frequently Asked Questions
What license is OpenMAIC released under?
OpenMAIC is released under the MIT License. This permissive license allows you to use, copy, modify, merge, publish, distribute, sublicense, and sell copies of the software, provided the copyright notice and permission notice are included in all copies.
Can I use OpenMAIC for commercial projects?
Yes. The MIT License explicitly permits commercial use without restriction. You can integrate the lib/orchestration/ LangGraph state machine, @openmaic/generation pipeline, or React components into proprietary products without releasing your source code, provided you include the original MIT license notice for the OpenMAIC portions.
Are there any licensing restrictions on third-party packages in OpenMAIC?
Yes. While the core codebase is MIT-licensed, the packages/mathml2omml directory is under LGPL-3.0-or-later, which requires you to provide source code if you modify and redistribute that specific package. The packages/pptxgenjs package is also MIT-licensed. Always verify the LICENSE file within each subdirectory before redistribution.
How do I check the OpenMAIC license in my local installation?
Navigate to the root directory of your cloned repository and open the LICENSE file, or run cat LICENSE | grep "MIT License" in your terminal. For automated verification in build pipelines, use the Node.js script provided above to programmatically confirm the MIT header exists in the license text.
Have a question about this repo?
These articles cover the highlights, but your codebase questions are specific. Give your agent direct access to the source. Share this with your agent to get started:
curl -s "https://instagit.com/install.md" Maintain an open-source project? Get it listed too →