Macro Inc. License: AGPL-v3 Explained with Commercial Options

The Macro Inc. project is released under the GNU Affero General Public License version 3 (AGPL-v3), requiring source code disclosure for all public deployments including SaaS.

The macro-inc/macro repository is a fully open-source project with specific licensing implications for developers and organizations. Understanding the Macro Inc. license terms is essential before integrating, deploying, or extending the codebase—especially given its copyleft requirements and commercial licensing alternative.

What License Does Macro Inc. Use?

The project uses AGPL-v3, a strong copyleft license designed to protect user freedoms in network-distributed applications.

Key AGPL-v3 Requirements

  • Source code availability: Any publicly deployed instance must provide the complete source code to all users
  • Network use is distribution: Unlike GPL, AGPL treats accessing the software over a network as distribution, triggering the copyleft obligation
  • Derivative works: All modifications and extensions must be released under AGPL-v3
  • Commercial alternative: Proprietary use requires contacting Macro Inc. for a separate license

Where to Find the License in the Repository

Two critical files document the Macro Inc. license:

File Location Purpose
LICENSE.txt Repository root Complete AGPL-v3 legal text
README.md Lines 38–42 License summary and commercial contact

In README.md, the maintainers explicitly state: "Macro is fully open source … under the GNU Affero General Public License v3.0"【/cache/repos/github.com/macro-inc/macro/main/README.md#L38-L42】. The full license text resides in LICENSE.txt【/cache/repos/github.com/macro-inc/macro/main/LICENSE.txt#L1-L3】.

Working with the License in Code

Display License Information in a CLI Tool

use std::fs;

fn main() {
    // Load the license file bundled with the project
    let license = fs::read_to_string("LICENSE.txt")
        .expect("Unable to read LICENSE.txt");
    println!("Macro is licensed under AGPL‑v3:\n\n{}", license);
}

This Rust pattern reads the bundled LICENSE.txt at runtime, useful for --license CLI flags or about dialogs.

Validate License in CI Pipelines

#!/usr/bin/env bash

# Ensure the repository contains a LICENSE file and that it mentions AGPL

if grep -q "GNU Affero General Public License" LICENSE.txt; then
  echo "✅ License file present and AGPL‑v3 confirmed"
else
  echo "⚠️ License file missing or does not contain AGPL‑v3"
  exit 1
fi

This validation script ensures compliance checks pass before builds or releases.

Add License Headers to Source Files

//! Macro – AGPL‑v3
//!
//! This file is part of the Macro project and is subject to the
//! terms of the GNU Affero General Public License version 3.
//! See `LICENSE.txt` for the full license text.

fn some_feature() {
    // implementation …
}

Header comments clarify licensing terms for downstream users and support automated license scanning tools.

AGPL-v3 Implications for Different Use Cases

Self-Hosted Internal Deployments

Organizations running Macro strictly for internal use without external network access face minimal obligations. Standard internal modifications need not be published.

SaaS and Public-Facing Deployments

Any service making Macro available over a network—including multi-tenant SaaS products—must:

  1. Provide complete source code to all users
  2. Include build instructions and installation scripts
  3. License all derivative works under AGPL-v3

This requirement makes AGPL-v3 unsuitable for proprietary SaaS products without a commercial license.

Embedding in Proprietary Products

Direct incorporation into closed-source applications violates AGPL-v3 terms. The README's license section provides contact information for obtaining a commercial license that permits proprietary use.

Summary

  • Macro Inc. license: GNU Affero General Public License v3.0 (AGPL-v3)
  • Key files: LICENSE.txt (full text), README.md lines 38–42 (summary)
  • Network trigger: SaaS deployments must disclose source code
  • Commercial option: Available for proprietary use cases
  • Compliance practice: Add headers to new files and validate in CI

Frequently Asked Questions

Can I use Macro Inc. in a closed-source SaaS product?

No. The Macro Inc. license (AGPL-v3) requires you to publish the complete source code of any publicly accessible deployment. To keep your code proprietary, you must contact Macro Inc. for a commercial license as referenced in the README.md license section.

What is the difference between GPL and AGPL for this project?

Standard GPL only requires source disclosure when software is distributed as binaries. AGPL extends this to network use—anyone accessing Macro through a web interface or API receives the right to request source code. This closes the "SaaS loophole" that GPL leaves open.

Where can I find the exact license text for Macro Inc.?

The complete legal text is in LICENSE.txt at the repository root【/cache/repos/github.com/macro-inc/macro/main/LICENSE.txt#L1-L3】. The README.md contains a plain-language summary at lines 38–42 with commercial licensing contact information【/cache/repos/github.com/macro-inc/macro/main/README.md#L38-L42】.

Does internal use trigger AGPL obligations?

No. If Macro runs entirely within your organization without external network access, standard internal use does not require source publication. The AGPL network provision applies only when users outside your organization interact with the software over a network.

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:

Share the following with your agent to get started:
curl -s "https://instagit.com/install.md"

Works with
Claude Codex Cursor VS Code OpenClaw Any MCP Client

Maintain an open-source project? Get it listed too →