Macro is the all-in-one workspace that combines email, messages, docs, tasks, code, agents, calls, and CRM. With team-level memory, you can query your entire workspace and never lose context.
This is the 2nd launch from Macro. View more

Macro
Launching today
Macro is the all-in-one workspace that combines email, messages, docs, tasks, code, agents, calls, and CRM. With team-level memory, you can query your entire workspace and never lose context.






Free Options
Launch Team


Macro
Hey Product Hunt!
I'm Jacob, the founder and CEO of Macro, an open source, all-in-one workspace.
In our last startup, we ran on Slack + Linear + Notion + Superhuman + 17 other tools. All of these are fine individually but as we scaled it became chaotic to manage, and information was everywhere.
We built Macro to replace siloed apps and put them all into a unified workspace with shared AI memory.
Already Macro has:
Email inspired by Superhuman, with better AI for triaging ("Signal vs. Noise")
Notion-like documents with fast CRDT's instead of last-write-wins, @linked to everything
Messaging, like Slack, but more focused for deep work
Linear-like tasks but deeply integrated with channels, auto-created and auto-assigned
Video calls with Google Meet performance that are transcribed and added to your team
A unified brain for all of this, in one place, and much more
We've also chosen to be open source in order to keep customizability at the core of our company. You can check out the repo here https://github.com/macro-inc/macro and see what we're building in the Pull Requests tab.
Macro is an ambitious project. But that's also what makes it so useful and fun to work on.
Give it a try: https://macro.com/
The unified surface demos well, but the hard part is team memory respecting permissions at retrieval time. If I query 'the workspace' and the answer lives in a doc or DM I'm not on, does retrieval enforce ACLs per chunk, or is the index shared and you filter after? We built agent memory over mixed-permission sources and the lesson was that access control has to live inside retrieval, not the prompt, or the model will happily quote something the user was never allowed to see. Being open source makes that auditable, which is a real plus.
Macro
@dipankar_sarkar Yea, there's no right answer and it's a hard problem. From a design perspective there's a couple options (i) let some LLM decide (ii) manually grant permissions at runtime (iii) the agent inherits permissions of some human. Four our case, at least for now, we've chosen ~3:the access control inherits from the user that launched the agent or that referenced them in the channel. This works pretty well and hasn't let to any embarrassments yet, since your agent is restricted to accessg things you have access to, it generally matches users' expectations and fails understandably.
Huge shoutout for going open source with this 👏 @jacob_beckerman qq Is there a native desktop app with global shortcuts for quick capture, or is everything running out of the browser for now?
Macro
@vikramp7470 Thanks Vikram - we believe the successor to legacy SaaS will be an open, modular, extensible workspace. I also believe most startups die from apathy: the most important thing you have to do as a founder is make a dent in the universe. If we succeed in improving things for users, I'm confident this is a great business as well. And over time as Macro matures, it will be silly to use proprietary closed-source SaaS when there's a unified and open alternative.
Right now there's a mobile app that's native with Tauri, which we will also use to make the Mac and Windows apps eventually. For now it's browser-only on desktop - would this be a top priority for you? Personally I prefer email in a desktop app, so I see the use caee, but since Arc browser I'm mostly using we versions of apps, except sometimes Figma for local fonts.
How does the team-level memory actually work across all those different tools, especially for things like email threads from a few months back that I barely remember starting?
Macro
@zehra6lwq Recall (in the sense of precision and recall) is a problem for all AI systems, and humans too ;). One of the biggest benefits of having all your workspace in one database (Macro) not spread across a bunch of apps is the unified memory aiding in recall. Macro's Unified Search tool available to the agent allows it to search through all content types, rather than having to execute multiple MCP calls, dedup resonses, order chronologically, then make more calls to further investigate. Of course, our approach saves cost (tokens) and time (tokens, again) but it also improves performance on these types of queries.
Shared memory is the hook here, but the trust boundary feels just as important. Can teams choose which channels, docs, or calls get added to agent memory, or is everything in the workspace queryable by default?
Macro
@novamaker01 Great question. We have what we call Channel based permissions permissions (see https://docs.macro.com/product/channels) which means whenever you something in a channel is is auto-shared with participants. Compare that to, say, Notion + Slack or GDocs + Slack, where you need to also remember to manually share your link with everyone in the channel. Then, the memory system is built from your permissions because all Macro agents inherit your permissions; so memory includes all channels you're a part of, all email accounts connected, external services via MCP, and the text content of all channels, including Macro Calls aka standups/huddles spawned from those channels!
As I'm writing this, I'm realizing how important permissions is for building team-level memory. TBH we don't think about this much internally as we use Macro because it "just works". But yes, it would be a lot harder otherwise because you have no centralized permissions controller.
The shared memory part is the bit I’m most curious about. Feels like a lot of tools are getting better at storing more context, but more context is not always the same as useful context. How does Macro decide what is actually worth remembering? Is it mostly things I tell it to save, or does it start picking up patterns from how I work over time?
Macro
@tobiasfleischer What is worth remembering? That's a good research topic! Probably, whatever is salient, especially in light of future requests you expect the user to make. For us, right now, it depends highly on what you connect and who you're working with. My memory system is mostly filled with biographical details, history of the company (Macro), and what things I prefer and don't in AI responses, who I work with and what they're the technical owners for, and some quite personal information about my partner and pets (picked up from my connected personal email) and family.
(if you want to know what Macro knows about you so far, you can ask for it's memory dumb - after using it for a few months mine is super impressive)
the super-app graveyard is real. slack tried to be your inbox, docs, calls, CRM. teams too. both ended up as chat with a lot of tabs nobody clicks. the thing that would actually make one of these work is the connective tissue between the parts. team memory is that, if it knows who said what where.
genuine question: is the memory a permission-scoped graph or a flat corpus? that's where team products either become invaluable or become HR nightmares.
Macro
@thenameisarian Thanks for your comments Mustafa - see my reply to Dipankar!