maester365 / maester
git clone https://github.com/maester365/maester.git
2.3.0 · 14d ago
🔥 on GitHub Trending today
Maester is a test automation framework to help you stay in control of your Microsoft security configuration.
+1
stars, 24h · #553
—
stars, 7 days
—
stars, 30 days
1.2k
★ total
290
forks · 68 open issues
Star history starts 2026-10-20; the chart appears after the second daily snapshot.
LanguagePowerShell
LicenseMIT
Created2023-11-16 (2y ago)
Last pushtoday
Watchers20
OwnerOrganization
Seen on GitHub Trending
- 2026-10-20 — #5 daily in powershell · +1 ★
GitHub topics
Links
- GitHub: github.com/maester365/maester
- Homepage: https://maester.dev
- Releases · Issues · Hacker News mentions
README excerpt
# 🔥 Maester **Monitor your Microsoft 365 tenant's security configuration using Maester!** > [!WARNING] > **Maester 3.0 is now the preview build** > > The **preview** build on the PowerShell Gallery is now Maester 3.0. It has breaking changes: most notably, **PowerShell 7.4 or later is required** (Windows PowerShell 5.1 is no longer supported). Custom tests, including Pester tests, keep working; `Convert-MtTest` converts them to the new native format. > > **If your automation installs the preview build** (`-AllowPrerelease`, or `maester_version: preview` in the GitHub Action) and isn't ready for 3.0, **switch to the release build**: drop `-AllowPrerelease` or pin `-RequiredVersion 2.3.0`, and use `maester_version: latest` in the action. > > Read the Maester 3.0 announcement and Upgrading from 2.x. > [!NOTE] > **Contributions are open again** > > The Maester 3.0 rewrite is in `main`. Checks are now native tests (`Test. .ps1` and `Test. .md`), and the repository has a new folder layout. Before you open a pull request, read Writing tests and the contributing guide. If your pull request was opened before 3.0, rebase it on `main`; `Convert-MtTest` converts Pester-format checks to native tests. Maester is an open source **PowerShell-based test automation framework** designed to help you monitor and maintain the security configuration of your Microsoft 365 environment. To learn more about Maester and to get started, visit Maester.dev. --- > [!WARNING] > > Known Issue: We recommend *not* using v3.9.2 of the **ExchangeOnlineManagement** module at this time. Many users experience errors while connecting with v3.9.2 but previous versions are generally reliable. This is an issue with the ExchangeOnlineManagement module and not Maester itself. ## Key Features - **Automated Testing**: Maester provides a comprehensive set of automated tests to ensure the security of your Microsoft 365 setup. - **Customizable**: Tailor Maester to your specific needs with your own tests, per-tenant configuration and test parameters. - **Formatted Results**: Export results in CSV, Excel, HTML, JSON, or Markdown format. - **Notifications**: Send notification of results to email, Teams, or Slack. - **CI/CD Workflows**: Run Maester in a GitHub, Azure DevOps, or GitLab pipeline. - **And much more...** --- ## Getting Started ### Installation Maester needs PowerShell 7.4 or later on Windows, Linux or macOS. [code] The tests ship inside the module, so there is nothing else to install or download. ## Running Maester [code] To also run your own tests, or to change settings with a `maester-config.json`, keep them in a folder and pass it with `-Path` (or run from that folder): [code] To learn more see maester.dev. ### Running Maester in a National Cloud Environment An optional parameter, `-Environment`, can be utilized on `Connect-Maester` to specify the name of the national cloud environment to connect to. By default global cloud is used. Allowed values include: - Global (default, if p