macro-inc/macroPublic

Macro is a unified workspace for teams: email, chat, docs, tasks, agents, calls, and CRM — @-linked together with shared AI memory.

AI summary: A unified workspace combining email, messaging, docs, tasks, and CRM into a single computable graph.

Stars
4.9K
+63 today
Forks
479
Watchers
34
Open issues
38
Open PRs
335
Contributors
~26
Commits
7.3K
Branches
1.4K
Views (30d)
2

RustAGPL-3.0Created Nov 8, 2025Last push todayLatest release v2026.10.22.3+216 stars this week+535 this month

Quick answers

What is macro?
A unified workspace combining email, messaging, docs, tasks, and CRM into a single computable graph.
What does macro do?
Macro fundamentally redesigns team software by merging disjointed tools—like Slack, Linear, Notion, and Gmail—into one cohesive operating system built on a shared bidirectional graph. Instead of relying on fragile integrations or switching context, every entity in Macro, whether a task, document, or message, natively cross-references each other. This creates a highly searchable, team-level memory where context is never lost across different operational silos. Built in Rust and SolidJS, the platform prioritizes extreme speed and reliability to ensure teams can manage their entire workflow without the chaos of fragmented SaaS products.
Who is macro for?
Macro is designed for startups and small-to-medium teams suffering from tool fatigue and fragmented communication. It is ideal for highly technical, fast-moving teams that require a central, extremely fast 'operating system' where all company knowledge and workflows are interconnected. Users should be looking for a complete replacement of their existing disjointed SaaS stack.
How do I get started with macro?
https://docs.macro.com
How popular is macro on GitHub?
macro-inc/macro has 4,924 stars and 479 forks on GitHub, and gained 216 stars in the last 7 days.
What license does macro use?
macro-inc/macro is released under the AGPL-3.0 license.

Star history

since Aug 13, 2026
02K4KAug 2026Sep 2026Sep 2026Oct 2026
4.9K stars as of Oct 25, 2026. Measured daily since Aug 13, 2026; GitHub no longer exposes earlier star timestamps.

Update history

3 recorded
  • Oct 25, 2026New release v2026.10.22.3 (previously v2026.10.16.0).
  • Oct 17, 2026New release v2026.10.16.0 (previously v2026.10.7).
  • Oct 8, 2026New release v2026.10.7 (previously v2026.9.28.1).

Contribution activity

commits per day, last 52 weeks
NovDecJanFebMarAprMayJunJulAugSepOctMonWedFri2025-11-02: 0 commits2025-11-03: 0 commits2025-11-04: 0 commits2025-11-05: 0 commits2025-11-06: 0 commits2025-11-07: 0 commits2025-11-08: 3 commits2025-11-09: 20 commits2025-11-10: 17 commits2025-11-11: 29 commits2025-11-12: 27 commits2025-11-13: 28 commits2025-11-14: 27 commits2025-11-15: 11 commits2025-11-16: 1 commit2025-11-17: 29 commits2025-11-18: 17 commits2025-11-19: 26 commits2025-11-20: 30 commits2025-11-21: 17 commits2025-11-22: 3 commits2025-11-23: 2 commits2025-11-24: 19 commits2025-11-25: 10 commits2025-11-26: 10 commits2025-11-27: 1 commit2025-11-28: 14 commits2025-11-29: 0 commits2025-11-30: 1 commit2025-12-01: 31 commits2025-12-02: 22 commits2025-12-03: 12 commits2025-12-04: 12 commits2025-12-05: 19 commits2025-12-06: 2 commits2025-12-07: 0 commits2025-12-08: 27 commits2025-12-09: 21 commits2025-12-10: 13 commits2025-12-11: 34 commits2025-12-12: 19 commits2025-12-13: 0 commits2025-12-14: 0 commits2025-12-15: 46 commits2025-12-16: 25 commits2025-12-17: 17 commits2025-12-18: 25 commits2025-12-19: 10 commits2025-12-20: 0 commits2025-12-21: 0 commits2025-12-22: 7 commits2025-12-23: 9 commits2025-12-24: 0 commits2025-12-25: 0 commits2025-12-26: 0 commits2025-12-27: 1 commit2025-12-28: 2 commits2025-12-29: 7 commits2025-12-30: 2 commits2025-12-31: 2 commits2026-01-01: 0 commits2026-01-02: 1 commit2026-01-03: 0 commits2026-01-04: 0 commits2026-01-05: 12 commits2026-01-06: 20 commits2026-01-07: 33 commits2026-01-08: 18 commits2026-01-09: 43 commits2026-01-10: 1 commit2026-01-11: 0 commits2026-01-12: 35 commits2026-01-13: 37 commits2026-01-14: 16 commits2026-01-15: 39 commits2026-01-16: 2 commits2026-01-17: 2 commits2026-01-18: 0 commits2026-01-19: 9 commits2026-01-20: 33 commits2026-01-21: 19 commits2026-01-22: 15 commits2026-01-23: 14 commits2026-01-24: 0 commits2026-01-25: 0 commits2026-01-26: 27 commits2026-01-27: 19 commits2026-01-28: 21 commits2026-01-29: 15 commits2026-01-30: 11 commits2026-01-31: 2 commits2026-02-01: 0 commits2026-02-02: 16 commits2026-02-03: 25 commits2026-02-04: 25 commits2026-02-05: 25 commits2026-02-06: 25 commits2026-02-07: 0 commits2026-02-08: 3 commits2026-02-09: 27 commits2026-02-10: 24 commits2026-02-11: 13 commits2026-02-12: 23 commits2026-02-13: 10 commits2026-02-14: 0 commits2026-02-15: 0 commits2026-02-16: 5 commits2026-02-17: 22 commits2026-02-18: 23 commits2026-02-19: 27 commits2026-02-20: 27 commits2026-02-21: 0 commits2026-02-22: 2 commits2026-02-23: 13 commits2026-02-24: 21 commits2026-02-25: 21 commits2026-02-26: 17 commits2026-02-27: 22 commits2026-02-28: 0 commits2026-03-01: 0 commits2026-03-02: 20 commits2026-03-03: 15 commits2026-03-04: 18 commits2026-03-05: 15 commits2026-03-06: 21 commits2026-03-07: 2 commits2026-03-08: 1 commit2026-03-09: 19 commits2026-03-10: 29 commits2026-03-11: 19 commits2026-03-12: 28 commits2026-03-13: 20 commits2026-03-14: 0 commits2026-03-15: 0 commits2026-03-16: 30 commits2026-03-17: 19 commits2026-03-18: 34 commits2026-03-19: 27 commits2026-03-20: 18 commits2026-03-21: 9 commits2026-03-22: 0 commits2026-03-23: 31 commits2026-03-24: 26 commits2026-03-25: 33 commits2026-03-26: 31 commits2026-03-27: 15 commits2026-03-28: 0 commits2026-03-29: 0 commits2026-03-30: 33 commits2026-03-31: 32 commits2026-04-01: 17 commits2026-04-02: 16 commits2026-04-03: 7 commits2026-04-04: 0 commits2026-04-05: 0 commits2026-04-06: 28 commits2026-04-07: 30 commits2026-04-08: 25 commits2026-04-09: 29 commits2026-04-10: 21 commits2026-04-11: 0 commits2026-04-12: 0 commits2026-04-13: 29 commits2026-04-14: 26 commits2026-04-15: 32 commits2026-04-16: 26 commits2026-04-17: 21 commits2026-04-18: 0 commits2026-04-19: 0 commits2026-04-20: 38 commits2026-04-21: 38 commits2026-04-22: 31 commits2026-04-23: 43 commits2026-04-24: 44 commits2026-04-25: 0 commits2026-04-26: 0 commits2026-04-27: 32 commits2026-04-28: 21 commits2026-04-29: 31 commits2026-04-30: 31 commits2026-05-01: 21 commits2026-05-02: 0 commits2026-05-03: 0 commits2026-05-04: 34 commits2026-05-05: 23 commits2026-05-06: 28 commits2026-05-07: 19 commits2026-05-08: 27 commits2026-05-09: 0 commits2026-05-10: 0 commits2026-05-11: 23 commits2026-05-12: 35 commits2026-05-13: 40 commits2026-05-14: 21 commits2026-05-15: 28 commits2026-05-16: 1 commit2026-05-17: 0 commits2026-05-18: 41 commits2026-05-19: 28 commits2026-05-20: 36 commits2026-05-21: 44 commits2026-05-22: 28 commits2026-05-23: 0 commits2026-05-24: 0 commits2026-05-25: 8 commits2026-05-26: 41 commits2026-05-27: 38 commits2026-05-28: 35 commits2026-05-29: 27 commits2026-05-30: 0 commits2026-05-31: 2 commits2026-06-01: 21 commits2026-06-02: 38 commits2026-06-03: 22 commits2026-06-04: 20 commits2026-06-05: 18 commits2026-06-06: 0 commits2026-06-07: 0 commits2026-06-08: 48 commits2026-06-09: 60 commits2026-06-10: 48 commits2026-06-11: 46 commits2026-06-12: 25 commits2026-06-13: 1 commit2026-06-14: 0 commits2026-06-15: 36 commits2026-06-16: 45 commits2026-06-17: 24 commits2026-06-18: 28 commits2026-06-19: 15 commits2026-06-20: 0 commits2026-06-21: 0 commits2026-06-22: 38 commits2026-06-23: 21 commits2026-06-24: 25 commits2026-06-25: 25 commits2026-06-26: 1 commit2026-06-27: 0 commits2026-06-28: 0 commits2026-06-29: 22 commits2026-06-30: 37 commits2026-07-01: 16 commits2026-07-02: 20 commits2026-07-03: 9 commits2026-07-04: 0 commits2026-07-05: 0 commits2026-07-06: 50 commits2026-07-07: 37 commits2026-07-08: 62 commits2026-07-09: 43 commits2026-07-10: 42 commits2026-07-11: 4 commits2026-07-12: 2 commits2026-07-13: 40 commits2026-07-14: 43 commits2026-07-15: 46 commits2026-07-16: 46 commits2026-07-17: 30 commits2026-07-18: 6 commits2026-07-19: 1 commit2026-07-20: 37 commits2026-07-21: 16 commits2026-07-22: 38 commits2026-07-23: 42 commits2026-07-24: 19 commits2026-07-25: 2 commits2026-07-26: 2 commits2026-07-27: 25 commits2026-07-28: 31 commits2026-07-29: 27 commits2026-07-30: 26 commits2026-07-31: 24 commits2026-08-01: 0 commits2026-08-02: 1 commit2026-08-03: 11 commits2026-08-04: 22 commits2026-08-05: 32 commits2026-08-06: 9 commits2026-08-07: 31 commits2026-08-08: 0 commits2026-08-09: 2 commits2026-08-10: 32 commits2026-08-11: 20 commits2026-08-12: 24 commits2026-08-13: 19 commits2026-08-14: 7 commits2026-08-15: 1 commit2026-08-16: 0 commits2026-08-17: 15 commits2026-08-18: 26 commits2026-08-19: 28 commits2026-08-20: 30 commits2026-08-21: 25 commits2026-08-22: 8 commits2026-08-23: 2 commits2026-08-24: 21 commits2026-08-25: 32 commits2026-08-26: 24 commits2026-08-27: 24 commits2026-08-28: 14 commits2026-08-29: 1 commit2026-08-30: 3 commits2026-08-31: 35 commits2026-09-01: 23 commits2026-09-02: 32 commits2026-09-03: 33 commits2026-09-04: 30 commits2026-09-05: 4 commits2026-09-06: 2 commits2026-09-07: 5 commits2026-09-08: 27 commits2026-09-09: 32 commits2026-09-10: 28 commits2026-09-11: 19 commits2026-09-12: 0 commits2026-09-13: 0 commits2026-09-14: 34 commits2026-09-15: 22 commits2026-09-16: 59 commits2026-09-17: 48 commits2026-09-18: 50 commits2026-09-19: 11 commits2026-09-20: 10 commits2026-09-21: 51 commits2026-09-22: 52 commits2026-09-23: 68 commits2026-09-24: 46 commits2026-09-25: 48 commits2026-09-26: 19 commits2026-09-27: 12 commits2026-09-28: 51 commits2026-09-29: 56 commits2026-09-30: 27 commits2026-10-01: 39 commits2026-10-02: 43 commits2026-10-03: 36 commits2026-10-04: 10 commits2026-10-05: 85 commits2026-10-06: 80 commits2026-10-07: 66 commits2026-10-08: 38 commits2026-10-09: 54 commits2026-10-10: 2 commits2026-10-11: 21 commits2026-10-12: 23 commits2026-10-13: 49 commits2026-10-14: 43 commits2026-10-15: 44 commits2026-10-16: 41 commits2026-10-17: 4 commits2026-10-18: 20 commits2026-10-19: 56 commits2026-10-20: 54 commits2026-10-21: 92 commits2026-10-22: 72 commits2026-10-23: 89 commits2026-10-24: 40 commits2026-10-25: 12 commits2026-10-26: 0 commits2026-10-27: 0 commits2026-10-28: 0 commits2026-10-29: 0 commits2026-10-30: 0 commits2026-10-31: 0 commits
7,317 commits in the last yearLessMore

Signals and awards

derived from tracked data
  • Very active

    7,317 commits in 52 weeks

  • Continuous integration

    Automated checks passing

  • Repeat trending

    11 trending appearances

What macro does

Macro fundamentally redesigns team software by merging disjointed tools—like Slack, Linear, Notion, and Gmail—into one cohesive operating system built on a shared bidirectional graph. Instead of relying on fragile integrations or switching context, every entity in Macro, whether a task, document, or message, natively cross-references each other. This creates a highly searchable, team-level memory where context is never lost across different operational silos. Built in Rust and SolidJS, the platform prioritizes extreme speed and reliability to ensure teams can manage their entire workflow without the chaos of fragmented SaaS products.

Macro is designed for startups and small-to-medium teams suffering from tool fatigue and fragmented communication. It is ideal for highly technical, fast-moving teams that require a central, extremely fast 'operating system' where all company knowledge and workflows are interconnected. Users should be looking for a complete replacement of their existing disjointed SaaS stack.

  • Bidirectional Graph Architecture: natively links docs, tasks, messages, and emails so cross-references are permanent and universally searchable.
  • Unified Interface: replaces multiple separate applications with a single, fast workspace designed for focused technical discussions and operations.
  • High-Performance Tech Stack: engineered using Rust for backend reliability and SolidJS for a highly responsive, immediate frontend experience.
  • Modular Block Design: provides purpose-built surfaces for different tasks while ensuring they all communicate flawlessly through the shared backend.
  • Universal Search and Memory: creates a computable company memory where AI agents and team members can instantly locate context across all domains.
  • Integrated Communication: combines a multi-account unified email inbox with internal channels and direct messaging to centralize all correspondence.

Where teams use it

Startup Operating System

Used by small to medium teams to completely replace their fragmented stack of SaaS tools, centralizing all operations into one platform.

Contextual Task Management

Used by engineering teams to link specific codebase discussions in messaging channels directly to actionable tasks and technical documentation.

Unified Client Communication

Used by account managers to track external emails and immediately reference them alongside internal CRM notes and project deliverables.

Cross-Functional Collaboration

Used by product teams to ensure marketing, development, and support are all looking at the exact same, interconnected data and context.

Getting started: https://docs.macro.com

README

main branch

Macro is the all-in-one workspace for you and your team. It unifies email + messages + docs + tasks + agents + CRM into a single fast interface with shared team-level memory. Everything in your workspace is @linked and searchable so your team (and your agents) never have to switch tools.


Why Macro

We built Macro because we wanted a single operating system for our startup. There are many good software products, and we used them all — Slack, Linear, Notion, HubSpot, and Superhuman — but they don't work together as one system. As we scaled our last venture to ~20 people things started to break: every team got their own tools and the company was held together by MCP and Zapier. The company was not computable. It was chaotic.

Macro is a complete redesign of work software from the ground up as a single system.

Designed by us in NYC and Toronto, dogfooded by our team of ~15 for two years. Built in SolidJS and Rust for speed and reliability. We're focused on building something that any small company or team at a larger company can use as their "operating system".


Features

Macro is composed of 'blocks' designed to be modular, extensible, and work together like Lego. For each block, we studied the best prior art and tried to make it even better.

Each surface is purpose-built for its job rather than composed from a generic block primitive — but every one of them shares the same backend; cross-references between a doc and a task, or a channel message and an email, are natively stored as a bidirectional graph.

Block Docs What it does
Email Docs → Multi-account unified inbox, keyboard shortcuts, and shared inboxes. Gmail.
Messages Docs → Channels and direct messages designed for focused technical discussions.
Tasks Docs → Linear-inspired tasks, tightly integrated with channels, email, and agents.
Docs Docs → Real-time collaborative, markdown-native docs built on CRDTs, with @mentions.
Canvas Docs → 2D board with embedded @links to tasks, files, and emails.
Agents Docs → Unified, team-level memory. Can take action on your behalf.
Calls Docs → Recorded, transcribed, and logged to team memory for agents.
File storage Docs → Auto-imported from email and channels, fully searchable.
Pull requests Docs → Linked to tasks, embeddable in channels, available to agents.
CRM Docs → Customer and contact objects, custom properties, email sync, enrichment.

Multiple email inboxes w/ good AI tools, integrated CRM

Macro Mail is inspired by Superhuman's keyboard-first interface with a few key additions:

  1. Multi-account. Triage all your Google accounts in a single inbox, with the same tagging and sharing system. Or triage individually.
  2. Unified inbox: emails, messages, @mentions, and tasks to complete, all in the same list. Use j k and e to navigate everything.
  3. Better AI, with a tools/MCP surface designed to work across inboxes and to help your agents more accurately retrieve information. For example, we expose a unified search tool that allows agents to search all file attachment PDFs (parsed out of email) directly, rather than pulling email threads then attachments. You can also draft, edit and send emails right from AI chats, without opening your email.

Macro email thread with actions, tags, and properties in the sidebar

  1. Multitasking ability — Macro has a built-in window manager that lets you create 3+ splits (scales with monitor size) so you can draft emails while reviewing prior threads.
  2. Company/Contact objects. Macro has native CRM capability so you can cmd+k to a contact, like [email protected] to see all emails between you and that person, or companies, to see all emails and files between everyone on your team and everyone at that company, e.g. @acme.com. All of this right from your email without having to open a heavyweight CRM like HubSpot or Salesforce. Email aggregation by contact or company is also available to your agents so they can better assist with CRM-type queries and actions.

Macro Mail lives in the same interface as channels, docs, tasks, and code. From any email, hit "task" to create a linked task, e.g. a ticket for an engineer from a customer support email. @mention emails in documents, e.g. @Re: Contract Signature.eml inside of Todos.md. In Macro, your email is brought into the fold with all of your tools, and your team, in the same permissions system: just hit Share to share an email to any DM or channel — no need to screenshot.

Email docs →


Team chat for focused technical discussions

Macro Chat is designed to be more focused than Slack. The first couple of replies show inline and the rest collapse into a thread, so a busy channel stays readable. Threads are permissioned severally so you can share threads across channels by copying links. Everything is stored in a bidirectional graph, so tasks @link to messages that created them, customer support emails tie into support channels, CRM records get updated when they're discussed in messages, etc. The core idea is that (i) messaging should be the centerpiece around which tasks, mail, docs, and content management are built, all in a lightweight way, and agents should be first-class citizens like human users and (ii) messaging needs to be more focused and readable for technical conversations, and not turn into battles where context is lost and progress is indistinguishable from noise.

Macro #Engineers channel with threads, mentions, and an inline GitHub check

Messages docs →


Task management built around chat

Linear recently published a report that issue tracking is dead. We agree with that, but the stronger form is that issue tracking never really worked, at least for us. We really tried and we blamed ourselves, but as we talked to other companies, it turns out that nobody was using their issue tracker "correctly". And if that's the case, the problem is the design of the tool, not the companies that use it.

The core problem with traditional issue trackers or project management tools is that they get out of date. The reason they get out of date is that (i) they're a separate system from where the conversation really happens in team chat (e.g. Slack, Macro, Discord, etc.) and (ii) they don't add much benefit beyond tracking the work. They're a chore with near-term costs and only the promise of long-term benefit. They're too rigid compared to a 2D canvas, too opinionated, and don't match how your project actually functions.

The solution isn't to forgo tracking entirely. We tried that and it was a different form of chaos. The solution we've found is lightweight issues tightly coupled to your channels and DMs, so that issue tracking naturally occurs where the conversation itself happens.

Macro tasks list grouped by assignee, with a task detail showing its source message and linked PR

Creating tasks in Macro is easy. Where possible, tasks created are bidirectionally linked to the creating context (e.g. a customer email) so the full chain is auditable from "why are we doing this" → task → agent → pull request, all in one system.

  • Create a task from an email
  • From anywhere via c t
  • From a markdown doc with /task
  • From any - [ ] bullet by highlighting and clicking "Task"
  • @Macro create tasks in any channel or DM
  • In any agent chat
  • Via external MCP, API or SDK

Tasks docs →


@linked markdown docs powered by CRDTs

We wanted everything in a single markdown editor without switching tools.

  • Native markdown compatibility and bulk/import export (see "file over app" paradigm)
  • Live collaboration with CRDTs and Cloudflare durable objects make it feel like you're editing on the same computer. Edits come in ~instantly instead of ka-chunking like Google Docs
  • Version control: history and forking, with a neat UI for scrubbing history. This is still in v1, there's a lot to do to get it closer to git, or we may eventually add git compatibility.
  • Offline editing and reconciliation.
  • @-linked to everything in your workspace: email, docs, tasks, messages, channels, companies, contacts, etc. Like Notion but multi-modal
  • Mobile-friendly, in our iOS app or on the web (Android app coming soon)
  • Agent native editing, powered by swarms of agents operating as peers in the CRDT collaboration system like human collaborators. See Wolf's tech blog on this. Use via MCP or internal agent.

A PRD in Macro with tags, assignees, properties, and references

Agents can edit documents that are open or closed. One interesting use case for agentic editing is to maintain team-context. For example we have a Macro Automation that runs daily to update our in-office Pool Games markdown doc. It scans through all of the channels to see if anyone has one and then updates the doc. If somebody has already edited the doc, it can know that and forgo the update. Conflicts are handled natively by the CRDT collaboration system.

Docs →


CRM that keeps itself up to date

The problem with standalone CRM is the same as with task trackers: it's not up to date. The CRM only partially reflects reality, so if you want to know what the latest status on a deal is you still have to message the AE/SDR and ask for context. CRMs are also too rigid and closed-source, while DIY CRMs in Airtable/Notion don't provide email aggregation by Company/Contact/Deal that is the core feature of CRM. We went through all the CRMs, including the new AI-native ones, and while they're well-designed they're just structurally set up to fail over time.

Macro fixes this by colocating your CRM with your team chat and email, instead of having a separate system. When you @mention a company record in a message, your team can click that record to see the latest — it's much faster than navigating to your CRM to find the record, going back to Slack and pasting it in, and this speed difference makes all the difference. Secondly, @mentioning a Company/Contact creates a bidirectional link between that message and the record, so from the record later you can trace the conversations that happened. This fixes the core issue we had with Attio/HubSpot/Salesforce: the actual important conversation about a deal happens not in the CRM but over messages. Macro makes this a feature rather than making you feel disorganized about it. It's not your fault, it was the CRM's fault!

Macro CRM board grouped by pipeline stage

We haven't innovated on the core idea of CRM other than what you read in the above paragraph. None of this should be that interesting:

  • Kanban board and customizable deal stages, list view, saved views, shareable views, personal and team views, etc.
  • "Notes" on the company actually use the same system as channels/DMs, so you can @mention and do all of the things you expect in a channel. Basically, every deal gets its own channel, automatically, that's pinned right to the deal record
  • @mention the company or contact from any note, message, task, pull request, etc., to create a bidirectional link between the record and that thing. For example, @mention a company from an engineering task to note their request. It all ties together.

CRM docs →


Agents and unified team-level memory

Since Macro has the team context in a single database, it is uniquely positioned to offer team-level memory with full context of all of the operations of the business. We do this every day via a cron job. Your memory is updated from team conversations, your DMs, your sent and received emails, tasks created and completed, etc. All of this is synthesized together in one pass, rather than severally, and combined with your previous memory to form the new memory output. The net result:

  • Macro has the best memory on what you're working on and what you care about vs. chatbots that only build memory from prior chats
  • This memory is available to external agents via MCP, or any AI model (OpenAI, Google, Anthropic, etc.) through the model picker for maximum portability
  • The memory is plainly stored in markdown so you can export it as you please. To manually update it, just ask the AI to remember something/update your memory

Team memory comes in quite handy. For example, I took a screenshot of some features I'd written in a paper notepad and asked the agent to create tickets and assign to the appropriate engineer which it did perfectly without any runtime tool use.

A Macro task being handed off to a coding agent, with a linked branch

Memory isn't supposed to encompass everything. Macro also has a tool/MCP surface with near 100% coverage of the things you can do in Macro's UI, so that your agents aren't limited in what they can do like they are in most SaaS. There are also no rate limits on MCP.

Agents docs →

Your coding agents can use Macro too. Point Claude Code, Codex, or any MCP client at your workspace:

claude mcp add --transport http macro https://mcp-server.macro.com/mcp

See MCP setup and agent recipes for what they can do once connected.


How it all works together

As we've discussed above, each of the blocks is designed to be best-in-class. We have thoughtfully designed each of Chat, Docs, Email, Agents, etc., to improve on your status quo individually. But where it all comes together is how it's more than the sum of its modules; it's how they work together.

Bidirectional @linking. @mention a doc in a message and both know about each other. Your workspace becomes a web of context you can navigate in either direction.

Channel-based permissions. Anything you @mention in a channel is automatically shared with its members. Join a channel, gain access; leave, lose it. No permission-request dance.

Unified memory. Agents remember what your whole team is doing across email, messages, tasks, docs, and calls, not just your own chat history. Refreshed nightly.

One inbox. Emails, channel messages, task assignments, @mentions, and agent responses all land in one place, split into Signal and Noise. Keyboard-first throughout.

Deeper reading: key concepts covers blocks, mentions, properties, and permissions; the FAQ covers comparisons, licensing, and self-hosting.


Using the hosted app

Sign up and connect your Gmail or Google Workspace account. Macro runs in any modern browser, with an iOS app for your phone. The getting started guide takes you from a fresh account to a working setup in about 15 minutes. Coming from Notion, Slack, Superhuman, or Linear? See Switch to Macro.


Running it locally

To run the frontend against hosted services, or to run the local stack, follow Running locally.

To contribute, see CONTRIBUTING.md.


Layout

macro/
├── apps/
│   ├── web/       SolidJS client — browser, Tauri desktop, mobile
│   └── docs/      docs.macro.com
├── services/      42 deployable services, workers, and Lambda handlers
├── crates/        167 Rust libraries — domain logic, models, db clients
├── packages/      shared TypeScript — collaboration, lexical-core, loro-mirror
├── infra/         Pulumi definitions
├── docker/        local Compose stack
├── nix/           pinned dev shell and build inputs
└── tooling/       repo scripts and code generators

Services follow a hexagonal layout: inbound adapters, a domain core with ports, outbound adapters. docs/development/style-guide.md has the conventions and CONTRIBUTING.md covers the PR process.


Security

ISO 27001 and SOC 2 Type II badges

Enterprise-grade security. Zero data retention with model providers, including no training on customer data. SOC 2 Type II certified. We welcome responsible security reports and pay bounties in accordance with severity and impact. Send reports to [email protected].


License

Macro is fully open source — not "open core" — under the GNU Affero General Public License v3.0. See LICENSE.txt for details.

You can self-host Macro under the terms of the AGPLv3; the FAQ covers what that involves. If you want to build on top of Macro under a different license, contact [email protected]. For managed hosting or commercial arrangements, contact [email protected].


Community

Have an idea, want to contribute, or want to work on Macro?


Star us on GitHub

If Macro is interesting/useful to you, please scroll up and give the repo a star (scroll to the top of this page -> click Star in top right). Stars are how most users hear about Macro because they move us up GitHub's search and trending pages.

Star history for macro-inc/macro, from launch to 4320 stars
View on GitHub

Recent activity

commits and pull requests

Releases and announcements

255 total
  1. v2026.10.22.3v2026.10.22.3Oct 23, 2026160 downloads

    ## What's Changed * feat(email): connect users to their whole Google address book by @jbecke in https://github.com/macro-inc/macro/pull/7737 * fix(search): restore channel message snippets by @ehayes2000 in https://github.com/macro-inc/macro/pull/7829 * fix(desktop): allow camera and microphone in the macOS app by @ehayes2000 in https://github.com/macro-inc/macro/pull/8577 * feat(agents)!: remove the Claude Cloud harness and @claude agent by @ehayes2000 in https://github.com/macro-inc/macro/pull/8474 * feat(hotkeys): show the current view's shortcuts with ? by @synoet in https://github.com/macro-inc/macro/pull/8230 * refactor(agent-harness): resolve public URLs from service definitions by @404Wolf in https://github.com/macro-inc/macro/pull/8560 * fix(teams): link an owner's trial subscription to their team by @jbecke in https://github.com/macro-inc/macro/pull/8574 * feat(email): open DMs with colleagues and top contacts on inbox connect by @jbecke in https://github.com/macro-inc/macro/pull/7739 * fix(calendar): strip Macro call links from exported .ics files by @gbirman in https://github.com/macro-inc/macro/pull/8571 * feat(email): add mail-client keys for drafts, threads

  2. v2026.10.22.2v2026.10.22.2Oct 22, 202696 downloads
  3. v2026.10.22.0v2026.10.22.0Oct 22, 202621 downloads

    ## What's Changed * fix(tasks): open a task's linked PR in Macro instead of GitHub by @jbecke in https://github.com/macro-inc/macro/pull/8471 * test(marketing): wait for interactive demo before navigation by @chaitbuilds in https://github.com/macro-inc/macro/pull/8473 * fix(agents): show sdk operations in inline activity by @404Wolf in https://github.com/macro-inc/macro/pull/8384 * feat(settings): add a team settings group with a Members page by @jbecke in https://github.com/macro-inc/macro/pull/8355 * Sean/safari cache fixes by @seanaye in https://github.com/macro-inc/macro/pull/8472 * feat(crm): tasks, email, calls, and notes tabs/views by @dev-rb in https://github.com/macro-inc/macro/pull/8093 * fix(call): restore call import tests after the provider and event merges by @404Wolf in https://github.com/macro-inc/macro/pull/8467 * feat(auth): handle Microsoft admin approval when linking Outlook by @gbirman in https://github.com/macro-inc/macro/pull/8432 * fix(crm): show long pipeline card fields in full when expanded by @gbirman in https://github.com/macro-inc/macro/pull/8444 * feat(mcp): add OpenAI ChatGPT Apps Directory submission package by @ehayes2000 in https://githu

  4. v2026.10.21.1v2026.10.21.1Oct 21, 2026207 downloads

    ## What's Changed * feat(comments): fold long margin comments behind show more by @jbecke in https://github.com/macro-inc/macro/pull/8459 * fix(marketing): tighten mobile preview spacing and correct divider by @chaitbuilds in https://github.com/macro-inc/macro/pull/8470 * feat(crm): open CRM settings inside the Customers pane by @gbirman in https://github.com/macro-inc/macro/pull/8447 * fix(crm): make CRM settings match the rest of Settings by @gbirman in https://github.com/macro-inc/macro/pull/8446 **Full Changelog**: https://github.com/macro-inc/macro/compare/v2026.10.21.0...v2026.10.21.1

  5. v2026.10.21.0v2026.10.21.0Oct 21, 202636 downloads

    ## What's Changed * fix(deps): upgrade zip and ammonia to clear cargo-deny advisories by @synoet in https://github.com/macro-inc/macro/pull/8253 * fix(hotkeys): ignore keyless key events and scope duplicate-token warning by @synoet in https://github.com/macro-inc/macro/pull/8205 * fix(crm): show split close beside the collapsed CRM sidebar toggle by @synoet in https://github.com/macro-inc/macro/pull/8218 * fix(mentions): keep bin headers steady when View all disappears by @synoet in https://github.com/macro-inc/macro/pull/8224 * feat(crm): add deal and contact form to pipelines by @synoet in https://github.com/macro-inc/macro/pull/8211 * fix(graphql-soup): gate cache sessions and defer draft recovery by @synoet in https://github.com/macro-inc/macro/pull/7923 * fix(crm): open a shared pipeline link while Customers is open by @synoet in https://github.com/macro-inc/macro/pull/8223 * fix(desktop): let Pipedream Connect load in its iframe on macOS by @synoet in https://github.com/macro-inc/macro/pull/8226 * fix(database): make every table cell clickable across the full row height by @synoet in https://github.com/macro-inc/macro/pull/8216 * fix(email): open Cc and Bcc from the

Code frequency

additions and deletions
+1.4M-1.4MWeek of 2025-10-26: +2,975 linesWeek of 2025-10-26: -281 linesWeek of 2025-11-02: +602,147 linesWeek of 2025-11-02: -0 linesWeek of 2025-11-09: +22,308 linesWeek of 2025-11-09: -19,068 linesWeek of 2025-11-16: +48,508 linesWeek of 2025-11-16: -34,531 linesWeek of 2025-11-23: +16,311 linesWeek of 2025-11-23: -8,180 linesWeek of 2025-11-30: +100,233 linesWeek of 2025-11-30: -94,964 linesWeek of 2025-12-07: +19,031 linesWeek of 2025-12-07: -23,242 linesWeek of 2025-12-14: +40,319 linesWeek of 2025-12-14: -29,016 linesWeek of 2025-12-21: +3,460 linesWeek of 2025-12-21: -1,568 linesWeek of 2025-12-28: +9,119 linesWeek of 2025-12-28: -4,686 linesWeek of 2026-01-04: +36,856 linesWeek of 2026-01-04: -39,182 linesWeek of 2026-01-11: +84,335 linesWeek of 2026-01-11: -41,086 linesWeek of 2026-01-18: +29,994 linesWeek of 2026-01-18: -23,441 linesWeek of 2026-01-25: +28,940 linesWeek of 2026-01-25: -27,793 linesWeek of 2026-02-01: +27,209 linesWeek of 2026-02-01: -17,199 linesWeek of 2026-02-08: +40,352 linesWeek of 2026-02-08: -29,807 linesWeek of 2026-02-15: +33,378 linesWeek of 2026-02-15: -22,034 linesWeek of 2026-02-22: +24,026 linesWeek of 2026-02-22: -7,634 linesWeek of 2026-03-01: +46,791 linesWeek of 2026-03-01: -18,043 linesWeek of 2026-03-08: +27,865 linesWeek of 2026-03-08: -12,389 linesWeek of 2026-03-15: +32,843 linesWeek of 2026-03-15: -10,060 linesWeek of 2026-03-22: +35,406 linesWeek of 2026-03-22: -21,993 linesWeek of 2026-03-29: +23,177 linesWeek of 2026-03-29: -11,461 linesWeek of 2026-04-05: +35,138 linesWeek of 2026-04-05: -21,786 linesWeek of 2026-04-12: +30,674 linesWeek of 2026-04-12: -12,767 linesWeek of 2026-04-19: +100,687 linesWeek of 2026-04-19: -50,373 linesWeek of 2026-04-26: +81,458 linesWeek of 2026-04-26: -97,472 linesWeek of 2026-05-03: +42,456 linesWeek of 2026-05-03: -28,097 linesWeek of 2026-05-10: +37,003 linesWeek of 2026-05-10: -18,295 linesWeek of 2026-05-17: +55,419 linesWeek of 2026-05-17: -41,175 linesWeek of 2026-05-24: +79,048 linesWeek of 2026-05-24: -46,093 linesWeek of 2026-05-31: +47,436 linesWeek of 2026-05-31: -18,412 linesWeek of 2026-06-07: +80,742 linesWeek of 2026-06-07: -22,649 linesWeek of 2026-06-14: +35,909 linesWeek of 2026-06-14: -15,573 linesWeek of 2026-06-21: +41,261 linesWeek of 2026-06-21: -20,195 linesWeek of 2026-06-28: +77,073 linesWeek of 2026-06-28: -17,403 linesWeek of 2026-07-05: +1,358,281 linesWeek of 2026-07-05: -1,269,410 linesWeek of 2026-07-12: +607,201 linesWeek of 2026-07-12: -537,017 linesWeek of 2026-07-19: +87,033 linesWeek of 2026-07-19: -17,332 linesWeek of 2026-07-26: +192,645 linesWeek of 2026-07-26: -22,876 linesWeek of 2026-08-02: +108,070 linesWeek of 2026-08-02: -22,309 linesWeek of 2026-08-09: +76,614 linesWeek of 2026-08-09: -20,802 linesWeek of 2026-08-16: +236,520 linesWeek of 2026-08-16: -81,039 linesWeek of 2026-08-23: +152,129 linesWeek of 2026-08-23: -17,421 linesWeek of 2026-08-30: +386 linesWeek of 2026-08-30: -159 linesOct 26, 2025Aug 30, 2026
+4.9M lines added, -2.9M removed over the last year.

Commits per week

last 52 weeks
4230Week of 2025-11-02: 3 commitsWeek of 2025-11-09: 159 commitsWeek of 2025-11-16: 123 commitsWeek of 2025-11-23: 56 commitsWeek of 2025-11-30: 99 commitsWeek of 2025-12-07: 114 commitsWeek of 2025-12-14: 123 commitsWeek of 2025-12-21: 17 commitsWeek of 2025-12-28: 14 commitsWeek of 2026-01-04: 127 commitsWeek of 2026-01-11: 131 commitsWeek of 2026-01-18: 90 commitsWeek of 2026-01-25: 95 commitsWeek of 2026-02-01: 116 commitsWeek of 2026-02-08: 100 commitsWeek of 2026-02-15: 104 commitsWeek of 2026-02-22: 96 commitsWeek of 2026-03-01: 91 commitsWeek of 2026-03-08: 116 commitsWeek of 2026-03-15: 137 commitsWeek of 2026-03-22: 136 commitsWeek of 2026-03-29: 105 commitsWeek of 2026-04-05: 133 commitsWeek of 2026-04-12: 134 commitsWeek of 2026-04-19: 194 commitsWeek of 2026-04-26: 136 commitsWeek of 2026-05-03: 131 commitsWeek of 2026-05-10: 148 commitsWeek of 2026-05-17: 177 commitsWeek of 2026-05-24: 149 commitsWeek of 2026-05-31: 121 commitsWeek of 2026-06-07: 228 commitsWeek of 2026-06-14: 148 commitsWeek of 2026-06-21: 110 commitsWeek of 2026-06-28: 104 commitsWeek of 2026-07-05: 238 commitsWeek of 2026-07-12: 213 commitsWeek of 2026-07-19: 155 commitsWeek of 2026-07-26: 135 commitsWeek of 2026-08-02: 106 commitsWeek of 2026-08-09: 105 commitsWeek of 2026-08-16: 132 commitsWeek of 2026-08-23: 118 commitsWeek of 2026-08-30: 160 commitsWeek of 2026-09-06: 113 commitsWeek of 2026-09-13: 224 commitsWeek of 2026-09-20: 294 commitsWeek of 2026-09-27: 264 commitsWeek of 2026-10-04: 335 commitsWeek of 2026-10-11: 225 commitsWeek of 2026-10-18: 423 commitsWeek of 2026-10-25: 12 commitsNov 2, 2025Oct 25, 2026
7.3K commits in the last 52 weeks.

When work happens

weekday and hour
SunMonTueWedThuFriSat036912151821Sun 0:00 — 5 commitsSun 1:00 — 2 commitsSun 2:00 — 0 commitsSun 3:00 — 0 commitsSun 4:00 — 0 commitsSun 5:00 — 0 commitsSun 6:00 — 0 commitsSun 7:00 — 0 commitsSun 8:00 — 2 commitsSun 9:00 — 5 commitsSun 10:00 — 9 commitsSun 11:00 — 3 commitsSun 12:00 — 3 commitsSun 13:00 — 4 commitsSun 14:00 — 16 commitsSun 15:00 — 12 commitsSun 16:00 — 12 commitsSun 17:00 — 4 commitsSun 18:00 — 24 commitsSun 19:00 — 11 commitsSun 20:00 — 4 commitsSun 21:00 — 8 commitsSun 22:00 — 7 commitsSun 23:00 — 3 commitsMon 0:00 — 8 commitsMon 1:00 — 1 commitsMon 2:00 — 0 commitsMon 3:00 — 0 commitsMon 4:00 — 0 commitsMon 5:00 — 0 commitsMon 6:00 — 0 commitsMon 7:00 — 1 commitsMon 8:00 — 16 commitsMon 9:00 — 60 commitsMon 10:00 — 88 commitsMon 11:00 — 118 commitsMon 12:00 — 149 commitsMon 13:00 — 114 commitsMon 14:00 — 164 commitsMon 15:00 — 171 commitsMon 16:00 — 166 commitsMon 17:00 — 138 commitsMon 18:00 — 125 commitsMon 19:00 — 65 commitsMon 20:00 — 20 commitsMon 21:00 — 16 commitsMon 22:00 — 4 commitsMon 23:00 — 7 commitsTue 0:00 — 1 commitsTue 1:00 — 1 commitsTue 2:00 — 1 commitsTue 3:00 — 0 commitsTue 4:00 — 0 commitsTue 5:00 — 2 commitsTue 6:00 — 0 commitsTue 7:00 — 2 commitsTue 8:00 — 30 commitsTue 9:00 — 66 commitsTue 10:00 — 95 commitsTue 11:00 — 148 commitsTue 12:00 — 136 commitsTue 13:00 — 126 commitsTue 14:00 — 141 commitsTue 15:00 — 152 commitsTue 16:00 — 174 commitsTue 17:00 — 171 commitsTue 18:00 — 124 commitsTue 19:00 — 60 commitsTue 20:00 — 24 commitsTue 21:00 — 15 commitsTue 22:00 — 14 commitsTue 23:00 — 10 commitsWed 0:00 — 3 commitsWed 1:00 — 0 commitsWed 2:00 — 2 commitsWed 3:00 — 1 commitsWed 4:00 — 0 commitsWed 5:00 — 0 commitsWed 6:00 — 2 commitsWed 7:00 — 2 commitsWed 8:00 — 19 commitsWed 9:00 — 53 commitsWed 10:00 — 101 commitsWed 11:00 — 151 commitsWed 12:00 — 156 commitsWed 13:00 — 117 commitsWed 14:00 — 152 commitsWed 15:00 — 153 commitsWed 16:00 — 159 commitsWed 17:00 — 150 commitsWed 18:00 — 128 commitsWed 19:00 — 74 commitsWed 20:00 — 27 commitsWed 21:00 — 24 commitsWed 22:00 — 12 commitsWed 23:00 — 9 commitsThu 0:00 — 2 commitsThu 1:00 — 3 commitsThu 2:00 — 1 commitsThu 3:00 — 0 commitsThu 4:00 — 0 commitsThu 5:00 — 0 commitsThu 6:00 — 1 commitsThu 7:00 — 0 commitsThu 8:00 — 28 commitsThu 9:00 — 51 commitsThu 10:00 — 109 commitsThu 11:00 — 118 commitsThu 12:00 — 134 commitsThu 13:00 — 111 commitsThu 14:00 — 156 commitsThu 15:00 — 147 commitsThu 16:00 — 180 commitsThu 17:00 — 162 commitsThu 18:00 — 106 commitsThu 19:00 — 42 commitsThu 20:00 — 19 commitsThu 21:00 — 14 commitsThu 22:00 — 10 commitsThu 23:00 — 7 commitsFri 0:00 — 4 commitsFri 1:00 — 1 commitsFri 2:00 — 0 commitsFri 3:00 — 0 commitsFri 4:00 — 0 commitsFri 5:00 — 0 commitsFri 6:00 — 0 commitsFri 7:00 — 2 commitsFri 8:00 — 12 commitsFri 9:00 — 40 commitsFri 10:00 — 101 commitsFri 11:00 — 121 commitsFri 12:00 — 109 commitsFri 13:00 — 107 commitsFri 14:00 — 132 commitsFri 15:00 — 142 commitsFri 16:00 — 137 commitsFri 17:00 — 132 commitsFri 18:00 — 77 commitsFri 19:00 — 31 commitsFri 20:00 — 21 commitsFri 21:00 — 8 commitsFri 22:00 — 6 commitsFri 23:00 — 13 commitsSat 0:00 — 7 commitsSat 1:00 — 7 commitsSat 2:00 — 0 commitsSat 3:00 — 0 commitsSat 4:00 — 3 commitsSat 5:00 — 5 commitsSat 6:00 — 4 commitsSat 7:00 — 5 commitsSat 8:00 — 3 commitsSat 9:00 — 5 commitsSat 10:00 — 6 commitsSat 11:00 — 7 commitsSat 12:00 — 15 commitsSat 13:00 — 5 commitsSat 14:00 — 7 commitsSat 15:00 — 12 commitsSat 16:00 — 14 commitsSat 17:00 — 14 commitsSat 18:00 — 10 commitsSat 19:00 — 11 commitsSat 20:00 — 8 commitsSat 21:00 — 12 commitsSat 22:00 — 9 commitsSat 23:00 — 7 commits
Commit volume by weekday and hour (UTC). Larger dots mean more commits.
DateListRankStars gained
Aug 22, 2026weekly#10+1,456
Aug 21, 2026weekly#10+1,456
Aug 20, 2026weekly#6+2,557
Aug 19, 2026weekly#5+2,627
Aug 18, 2026weekly#5+2,724
Aug 17, 2026weekly#6+2,588
Aug 16, 2026daily#4+436
Aug 16, 2026weekly#6+2,434
Aug 15, 2026daily#4+436
Aug 14, 2026daily#4+1,239
Aug 13, 2026daily#2+227
  • openclaw/openclaw

    The AI that really does things. Any OS. Any Platform. The lobster way. 🦞

    393.1K stars · TypeScript

  • morluto/rea

    Reverse engineer anything with agents, from app behavior down to native binaries.

    384.8K stars · TypeScript

  • obra/superpowers

    An agentic skills framework & software development methodology that works.

    305.1K stars · Shell

  • affaan-m/ECC

    The agent harness performance optimization system. Skills, instincts, memory, security, and research-first development for Claude Code, Codex, Opencode, Cursor and beyond.

    288.9K stars · JavaScript

  • NousResearch/hermes-agent

    The agent that grows with you

    257.1K stars · Python

  • n8n-io/n8n

    Fair-code workflow automation platform with native AI capabilities. Combine visual building with custom code, self-host or cloud, 400+ integrations.

    208.6K stars · TypeScript