Bracket - The memory layer for your business

byβ€’
Bracket turns the conversations already happening across your business into a living, continuously updated memory. Connect Gmail, Slack, Figma and GitHub, or add meeting notes and transcripts. Bracket automatically captures requirements, decisions, scope, deliverables, deadlines and changes as they happen. Then ask Bracket about anything that happened or generate replies using the full context. No more manually keeping another tool up to date.

Add a comment

Replies

Best

Hey Product Hunt πŸ‘‹

We’re back β€” but Bracket is almost a completely different product this time.

When I first built Bracket, the idea was simple: explain your project once, and Bracket would turn that context into a structured workspace.

Then I realized something slightly annoying πŸ˜…

The moment you finish organizing your work, it starts becoming outdated.

A decision happens in Slack.
A requirement changes over email.
Someone leaves important feedback in Figma.
Engineering ships something on GitHub.
And half the context from a meeting never makes it anywhere.

So Tanay and I rebuilt Bracket around one question:

What if your workspace could remember all of this for you?


Today, Bracket connects to Gmail, Slack, Figma and GitHub, and can also understand meeting notes and transcripts.

As work happens, Bracket keeps track of what actually matters β€” requirements, decisions, scope, deliverables, deadlines and changes.

And because it remembers that context, you can ask Bracket things like:

β€œWhy did the launch date change?”

…and get an answer with the original source.

It can even use that same memory to help you write replies without making you explain the entire situation again.

There’s still a lot we want to improve. That’s actually why we’re here.

Try Bracket with something real and tell us where it breaks, what feels unnecessary, or what you wish it remembered. We’ll be hanging around here all day and would genuinely love to talk.

Thanks for giving Bracket another look ❀️

β€” Saksham & Tanay

Β congrats on the launch!

Β Thanks Dmitrii! πŸ™Œ Would love for you to actually give Bracket a spin too. It’s completely free right now, and feedback from a fellow builder like you would genuinely mean a lot. Especially the things you think we should improve πŸ˜„

Β Does the change detection work across Gmail, Slack, Figma, and GitHub ?

Β Yes, that's exactly the idea! Bracket connects with Gmail, Slack, Figma, and GitHub, and keeps track of relevant changes across conversations and project activity, whether it's a new requirement, a scope change, a decision, or an updated deadline.

Instead of manually checking four different tools to figure out what changed, you can see that context together in Bracket.

Would love for you to try it with a real project, Dipanshu. It's free right now, and I'd genuinely appreciate your feedback on how well it works for your workflow! πŸ™Œ

A small launch-day update πŸ‘€

Bracket somehow made it to #8 today, which we genuinely weren’t expecting, especially because this launch accidentally went live while Tanay and I were both out of town πŸ˜…

But here’s something I’m curious about:

If you saw today but didn’t try it, what stopped you?

Was it unclear what Bracket does? Too much setup? Not relevant to your workflow? Something else?

Bracket is free to try right now, and I’d genuinely rather hear what’s stopping people than collect more upvotes.

Be brutally specific. We’re listening.

When two memories conflict, how do you manage that ?

Β I’d treat them as competing versions of context, not overwrite either one. Keep both with their sources and timestamps, identify what changed, and ask for clarification when the conflict can't be resolved confidently. That's actually one of the problems we're solving with Bracket.

Capturing decisions and scope changes straight from Slack and Gmail is where most teams quietly lose context, so building a memory layer around that is smart. Curious how you handle conflicting information when two threads say different things about the same deliverable.

Great question, . Bracket doesn’t silently overwrite one piece of context with another. When information conflicts, it keeps the source and timeline behind both, so you can see what changed and where it came from. If recency alone can’t resolve it, we’d rather surface the conflict than confidently remember the wrong thing.

Would actually love for you to try Bracket with a real project once. It’s free right now, and given the exact problem you pointed out, I’d genuinely be curious to see where it works or breaks for you. Would love your feedback.

+1 to this. Conflicting context is exactly the kind of thing that gets interesting once Bracket is connected to a real projectπŸ˜…

, would genuinely love for you to throw a real project at it and tell us where our assumptions break.

curious how it resolves conflicts, not just captures info. say a decision gets made in a Slack thread but the Figma doc still shows the old version, or two people say different things about scope in different channels. does Bracket flag that as a contradiction for someone to resolve, or just go with whichever is most recent?

Β Great question. We don’t want β€œmost recent” to automatically mean β€œcorrect.”

In a case like that, Bracket keeps the source and timeline of both pieces of context. If Slack says the scope changed but Figma still reflects the older version, it can identify that inconsistency rather than silently replacing one with the other.

Where the intent is clear, Bracket can understand what changed and preserve the history. Where it’s genuinely ambiguous, we’d rather surface the conflict for someone to resolve than confidently make the wrong assumption.

This is actually one of the areas we’re actively refining, so I’d love for you to throw a real-world case like this at Bracket and see where it breaks πŸ˜„