Liminal - A workspace & 2nd brain for you, your agent, and your team

by
Your agent writes files locally in markdown and HTML, the formats it already speaks. Liminal renders them as clean UI instantly and syncs to your team in real time. Share a link and everyone sees the same live workspace, editable in the browser. No sending markdown over Slack, no hosting your own HTML, no waiting on Google Drive. No MCP calls, no proprietary formats, no wasted tokens. Over time, it becomes a shared second brain for your team and every agent working with you.

Add a comment

Replies

Best

Hey Product Hunt 👋

I'm Justin, the maker of Liminal, and I'm stoked to finally share what I've been building!

Heads up: this is the first cut. I'm launching now to find out if the friction I've been feeling is real for other people too. Please let me know if you run into any bugs or problems, I'll get them fix asap!

Quick backstory

Last summer, the way I work changed. Agents got good enough to become the place I did the work. Claude Code became my main interface, the intelligence layer everything flowed through. My job shifted from writing and producing to directing an agent to do it.

Notion and Google Docs weren't built for this. They were bolting agents into their apps, but that's not where my agent lived, and their MCPs were slow and expensive to talk to. Claude Code worked much better and faster with local markdown files, a format the agent already speaks. So I stopped writing in Notion and Google Docs and went all in on local markdown.

I was doing all of this in VS Code because that's where I coded. But viewing and editing markdown there is clunky. You use the preview to render it nicely, then jump to the raw side to actually edit. So I built a WYSIWYG editor on top of the local files.

Then I tried to share something. Nobody wants to be sent a raw markdown file, and Google Drive doesn't render it nicely. Passing files back and forth killed any hope of collaboration. So I built real-time live collaboration on top of local files: a lightweight CLI watches your workspace folder and syncs bidirectionally with the cloud. Share a link and your teammate opens the same live workspace in a browser. Their edits land back on your disk instantly.

Once that worked, the thing I hadn't designed for showed up. My agent and my teammates' agents were all reading and writing into the same workspace. Liminal had quietly become a shared second brain. Company knowledge that keeps updating and compounding as the team works, sitting on every agent's local disk as plain files they can directly access.

What Liminal is

A collaborative workspace for humans, agents, and teams. Your AI-native second brain. Bring your own agents. Own your files.

How it works:

🟢 Work with your agent, not just through it. Your agent writes files to disk in markdown or HTML. Liminal renders them as clean UI the moment they save. Review and edit naturally in the browser, without wrestling with raw markdown.

🟢 Share instantly, without the friction. A lightweight CLI syncs your workspace to the cloud in real time. Send a link and your teammate is in the same live workspace. No sending markdown over Slack, no hosting your own HTML, no waiting on Google Drive.

🟢 A shared second brain for every agent on the team. Files live locally, so every agent has direct access to everything the team has written, decided, and learned. No external calls, no lag, no losing context between sessions.

🟢 No middleman, no MCP tax. Direct file access means no MCP round-trips, no proprietary formats, no wasted tokens. Context is cheap, fast, and always fresh.

The ask

Would love your feedback, especially if you're living in Claude Code, Codex, or another agent all day: does this map to your experience, or am I solving a problem only I have?

Justin

The concurrent write answer above covers editing at the same time, but I'm curious about the offline case: if you're working locally with the sync CLI not running, say on a flight, does everything just work as plain markdown with nothing lost?

yup! All the files sit locally on your machine so you have always-on offline access. Once you sync back up, there’s merging and conflict resolution baked in to handle any changes that conflict

 good to know!. Since conflict resolution is UI-based today, does reconnecting after a long stretch offline surface one clean diff to work through, or could it come back as several scattered conflicts across files if a teammate's agent was also writing during that window?

You asked whether this maps to people living in Claude Code all day, and from my desk the answer is yes, the friction is real. My whole setup runs on a folder of markdown memory files with an index loaded each session, and it quietly became the most durable part of my workflow because notes survive every context reset. The failure mode I keep hitting is staleness, a note written three weeks ago names a file or a flag that no longer exists and the agent recommends it confidently anyway. Does Liminal do anything to age or flag entries when the thing a note points to changes, or is pruning still on the human?

 Right now Liminal has no opinions about your data and files, it's just a workspace that makes collaboration between humans, agents, and teams easy and accessible, but I can see a future where it does more than that!

'work with your agent, not just through it' is the real reframe. when two agents write the same file at once, does it merge or last-write-win?

there’s merging and version control, though right now conflict resolutions is done in the UI. Next step is to make it so agents can handle that for you!

finally something that doesn't make me wrangle markdown back and forth. plugged in an agent output and it just showed up as a clean page my coworker could edit, which honestly felt kind of magical

 I'm glad you found the experience useful!

Love the positioning.

What type of teams are seeing the most value so far?

this is one of those launches where the backstory tracks exactly with my own workflow - i ended up doing the same VS-Code-preview-then-raw-edit dance before giving up and just living in Claude Code with a folder of notes. the part i'm most curious about is scale rather than sync: once a team's second brain grows to a few hundred files across months of work, how do you actually find the right one? plain markdown in folders works great at 20 files and turns into its own kind of clutter at 500 - is there real search/structure on top, or is it still mostly relying on the agent to know where to look?

You're not solving a problem only you have. I've run exactly this architecture for months — a folder of markdown that multiple agents on multiple machines read and write, synced through git because nothing better existed. It quietly became the most load-bearing thing in my stack, so the friction is real and so is the payoff.

Some conventions from living it, offered as free product opinions since you said Liminal doesn't have any yet:

Per-writer append-only files — each machine and agent gets its own daily log — make conflicts structurally rare instead of resolved-after-the-fact. Shared files become the exception, and the exceptional ones are the ones worth merge UI.

One small always-loaded index with a hard rule that detail lives elsewhere. At 500 files the index is the search: the agent greps the index, not the corpus. Omri's question is the one that decides whether this scales.

An authoritative current-state file that wins when it disagrees with older notes. Abdullah's staleness case bites hardest — my standing rule is that notes record what was true when written, and anything actionable gets re-verified before an agent acts on it. A tool that aged or flagged entries when the thing they point to disappears would be the first genuinely new feature in this category.

And merging over last-write-wins is the right call — this week two of my agents wrote the same knowledge as different commits and taught me that multi-writer brains want merge semantics everywhere, not just the editor. Good launch. This one's aimed at a real hole.