Articles/Platform Integration

Macro: Project Memory for Site Works

Platform IntegrationArchitecture Pattern
By Vanya SmytheOctober 19, 20264 min readVerified Oct 19, 2026
macro(primary)
macromcpagent-memorysite-worksstatus-reportingself-hostingagpl

Read what Macro is

Macro puts email, chat, documents, tasks, calls and a customer-relationship module in one workspace, where any item can link to any other through an @-mention and a shared AI memory reads across all of them. Macro, the company that publishes it as macro-inc, describes itself in the README as about 15 people in New York and Toronto. The back end is Rust; the front end is TypeScript on SolidJS. On 19 October 2026 the repository had 4,727 stars, 463 forks and 327 open issues and pull requests, a first commit dated 8 November 2025 and a last commit dated that same day, and its newest release, v2026.10.18.0, was the fifteenth calendar-versioned tag in 13 days.

Check the licence and its history

Macro moved from the source-available Business Source Licence to the AGPL-3.0 on 31 May 2026, according to its own FAQ. Contributors sign a contributor licence agreement, which keeps the right to relicense with Macro, and the company sells alternative licences to firms that want other terms. One file does not fit: apps/web/LICENSE reads 'Copyright 2023 CoParse, Inc. All rights reserved.' beside the AGPL grant at the root, and a search of the repository on 19 October found no statement reconciling the two. A firm's lawyer will ask.

Read the self-hosting terms closely

The AGPL lets anyone run Macro on their own servers, and the README says so: 'You can self-host Macro under the terms of the AGPLv3', with managed hosting and commercial arrangements handled through a separate address. The FAQ is more candid. It says self-hosting is allowed but 'hasn't been our primary focus' as of June 2026, that the hosted service holds the Apple, Google Mail and GitHub approvals, and that Macro sublicenses LiveKit for calls, FusionAuth for sign-in and PostHog for analytics, 'so you'd have to maintain licenses to those services or disable them'. Macro's own post on why it is open source goes further, calling self-hosting something 'we don't really recommend except for certain military and healthcare use cases'.

And the repository bears that out. It holds no production compose file, no Helm chart and no self-host guide; production runs on AWS under Pulumi, with Fargate, RDS, Kafka, SQS and OpenSearch, plus Cloudflare Workers for document sync. That leaves a firm two real options today: the hosted service, which offers an EU region, or a self-hosted workspace arranged with Macro, which its partners page also offers to firms setting one up for clients. An install from the repository by the firm's own staff is legal and undocumented.

Know what the agent can reach

Every night Macro refreshes a personal and a team memory from the day's emails, messages, tasks, documents and call transcripts, and stores it as markdown in Postgres, with tasks shared to team memory by default, calls shared too unless someone opts a call out, and emails shared 'where it makes sense', for example in the customer-relationship module. A remote MCP server opens the workspace to an agent over OAuth on every plan, the free one included. Two limits shape any design on top of it. Its content-search tool matches one to three literal words, not meanings, and read-project lists a project's documents and chats but not the email threads filed in it.

Build the Friday report from source

The solution I would build on Macro is project memory for site works, such as a battery-room retrofit or a battery-storage installation that a contractor runs for a utility or an industrial client. Each site gets a project folder, the client a company record and the crew a channel; the engineer files client threads into the project, and Macro records and transcribes the site calls. A routine runs every Friday as the engineer, drafts the week's status report, reads anything dated this week from the source items rather than from the nightly memory, cites each line with an @-mention of the email, call or document behind it, and flags any line where memory and source disagree. It finds the email threads that read-project misses through list-entities and a search, and files them into the project. It also searches a short list of the firm's own site terms, 'hold point', 'isolation', 'outage', 'variation' and 'defect', because a keyword search finds only what someone tells it to look for. The engineer opts calls about pricing and claims out of team memory, so the crew's shared memory never carries them. The draft opens a send-email review card, which the engineer reads, corrects and approves. The routine never calls send-confirmed-email, so nothing reaches the client without that approval.

See the design, its diagram and the demo at the solution. For now, self-hosting Macro starts with an email, not an install.

Subscribe to engineering insights

Get notified when we publish new technical articles.

Topics

Unsubscribe anytime. View our Privacy Policy.