Hi HN, Nick here. We’re launching OpenKnowledge (https://openknowledge.ai/), a “what you see is what you get” markdown editor that has direct integrations with Claude, Codex, and Cursor. Available as MacOS app or CLI. Fully free/local and OSS (https://github.com/inkeep/open-knowledge).
We built this because we wanted a “Google docs” like experience for writing and sharing markdown files across our team. Obsidian is the best alternative we tried, but found it doesn’t have a true “what you see is what you get” UI and it didn’t integrate well with Claude/Codex outside of community plugins.
So we built OpenKnowledge. It takes shape as:
1. A MacOS app with a file navigator, the WYSIWYG editor, and link explorer.
2. Integrations with the Claude, Codex, and Cursor desktop apps. The agents can open an OpenKnowledge editor within their embedded web browsers for a side-by-side experience.
3. Built-in mcps, skills, and RAG for LLM-wiki and “AI Second Brain” scenarios + spec writing
4. An embedded terminal and CLI for TUI-first users
OSS stack includes: Tiptap/prosemirror, CodeMirror, yjs (CRDT), Electron (MacOS app), Orama, remark/rehype/micromark/mdast, @pierre/trees
On the architecture side, the interesting eng. challenges included:
1. A pipeline to convert ProseMirror to markdown in a bidirectional lossless way. ProseMirror uses ASTs, which are not designed to have byte-fidelity.
2. A dual-observer CRDT to keep the ProseMirror and markdown state in-sync.
The CRDT + git also power a collaborative experience that shows what Agents are doing in the markdown, have undo/redo, and version history. The “Share” and cloud-sync functionality are geared for team collaboration. They feel “no-code” but leverage git/GitHub under the hood, which also means data stays fully private.
In that spirit, we made OpenKnowledge open source for anybody who’s curious or who’d like to contribute.
We’re actively thinking about plugins/extensibility and what’s next. If you have suggestions or feedback, would love to hear it.
For ages I've been looking for a way to easily share & sync a simple knowledgebase (HTML/MD and other files in folders) with my team (= including non-technical people), using Git as the sync/versioning layer, without it being too technical, and without getting vendor lock-in with expensive & unnecessarily complex cloud-based platforms.
Having built-in AI integration without relying on sketchy plugins would be the cherry on top (although, seriously missing the option to connect with any openai-compatible LLM provider like someone else mentioned here).
Seems like this might almost offer exactly that? I'll have to try it out...
I don't understand how Obsidian, a collection of markdown files, isn't already AI friendly. It's hard for me to imagine a more AI-friendly but still usable way to organize your notes.
What we did to go "beyond" is build in skills and an MCP server into the app, and auto-install those into e.g. Claude, Codex, and Cursor formats. Also added a web viewer so that e.g. Claude Desktop can open up the editor directly within it's embedded web viewer.
There is at least one MCP server in Obsidian's community plugins, plus the REST API access capability which is already addressed in several open source MCP plugins.
I use Obsidian as a persistent context store and knowledge graph (..loosely defined, i.e. link/back-link) for both Claude Code and Hermes, while also using it to generate live Wiki pages for working documentation. The native replication and the Git integrations work well keeping it all synchronized across multiple harnesses, as well. I use the native MCP server mentioned above, plus just letting the agent work with the markdown files directly.
That said, having built out all of this manually I'm excited to try out something that addresses much of this out of the box. I'd also be curious about the integration with Hermes/OpenClaw/etc.
Right on. We did a lot of the same and then had to deal with coaching everyone on the team how to do also set it up.
Large inspiration for OpenKnowledge was providing these flows out of the box.
We'll prioritize Hermes/OpenClaw guides next.
Feel free to drop me any feedback as you try it out - @nickgomez on X.
Why not build skills and an MCP for markdown or obsidian? I'm using both at present and it's fine, bit would like to understand the differentiating factor here.
Example of the functionality that's OK specific: we made it so that e.g. Claude Desktop (or Codex, Cursor) can open the OpenKnowledge web viewer within their own embedded web viewers, to make for better side-by-side editing. Since Obsidian is closed source, we wouldn't be able to make that work.
Making the skills/MCP specific to OpenKnowledge allows us to optimize experiences like that.
This. I just open the Obsidian folder (aka "vault") in VS Code and BOOM, it is AI friendly. I just hack on the .md files like I would code with Copilot.
Same flow I had. We did a few things to make the flow easier, like making it easy for Claude Desktop to open the OpenKnowledge web viewer within its own web view. Also exposing things like vector search, etc.
Our goal was you wouldn't need a separate IDE and to work well with the coding agent desktop apps.
But alas -- markdown files on your local machine is indeed the way for being AI friendly.
Fully local, but can't integrate with any local LLM?
I do think a fully OSS Obsidian-like that syncs natively is an impressive accomplishment, though the usefulness of this is limited with OSX being the only supported platform. If an Android app is in the works I'll definitely follow the project!
Got it. MCP Server and CLI is agent-agnostic, so should work with local models/harnesses, but we'll look into more explicit docs around this.
What IDE or harness do you use? We'll take a look.
Personally I just want to see more support for local LLMs. I haven't been doing much coding lately but am interested in setting up Qwen 3.6 if I can obtain the hardware
Agree same. We'll look into explicit guides and integrations with Zed // OpenCode as a starting point, they let you choose your model.
I think it looks great!
Is this following the Open Knowledge Format proposed by Google earlier this month or just a name collision?
https://cloud.google.com/blog/products/data-analytics/how-th...
Two bits:
1. Name collison happenstance. We'd locked in the npm package and domains prior to their announcement.
2. Our templates are Open Knowledge Format compliant and we have an explicit quickstart around making an OKF knowledge base. You can think of OKF as a format/standard for the content, and OpenKnowledge (our app) as an IDE/editor for any type of markdown based content.
Neat, I’ve created a couple OKF based knowledge bases, this looks like a nice way to work with them.
https://github.com/jacquescorbytuech/crm-open-knowledge-wiki
Sweet, let me know the experience, we're actively thinking about how to make OKF KBs editing a good experience. E.g. a linter or other conformant mode.
Congratulations on the launch. It looks neat!
On a side note, I find it interesting that a few recent projects are going for the Open Knowledge name. The Open Knowledge Foundation (https://okfn.org) is one of the first/largest proponents of the open data movement (think of it as a Free Software Foundation but for data, not software). They started in 2004 and developed many of the open data licenses and widely used infrastructure tools like CKAN (an open data portal platform).
Nothing to add, just found it interesting.
Disclaimer: I worked there for a few years.
Biased but great name of course haha.
OKF timing was coincidence, we'd started I take it around the same time they'd started internally.
What's good is that everything is pretty open formats/source and complimentary.
Got this toast/notification message from your desktop app.
> Added ok to your PATH — managed block in ~/.zshrc, ~/.config/fish/conf.d/open-knowledge.fish.
Took a while to see that 'ok' is the name of your product.
Ack ! We made the shorthand for e.g. the CLI and .ok/ configuration folders. Shouldn't show up in the UX strings, we'll clean that up.
Sounds cool. How do agents know what else is going on in the doc? They have an embedded browser and they do like mutation observer type stuff? Or does the integration do polling?
Right now you'd simply prompt it. Working on more direct integration. Turns out they don't make event based back and forth easy.
I'm a sucker for pretty UIs. I already have a company-mandated knowledge base tool, Slite, can they be used together?
Looking into Slite now to check. With OpenKnowledge, the content is just markdown files on-disk, so there shouldn't be anything exclusionary about it. Not sure how/if Slite handles markdown files. Will take a look.
tl;dr: Slite supports import/export Markdown files, so not a native "interop".
Links: https://slite.slite.page/p/5XOO7_tII0D87T/Importing-Files, https://slite.slite.page/p/PxKfPvLrLHj07O/Exporting-Your-Doc...
Recommend trying it for some personal notes/specs/etc. -- can be used independently.
macos only? shame.
CLI + Web viewer are available for Linux and Windows. We tested it and works pretty well.
yea pass..
are you linux or windows? if linux, which distro? Electron support for distros varies so input is appreciated.
I recommend taking a look at appimages or flatpak within Linux if you wish to do so and if you do appimage, try to take an older system within a VM from my understanding as then you wouldn't have issues of glibc which I have sometimes heard. I'd be interested to help if that is of your interest.
Will take a look, appreciate it.
Is there a migration path from Obsidian or Notion? Switching costs are usually what keeps people locked in.
Since Obsidian is just markdown, you can just open an Obsidian vault with OpenKnowledge. We made it so that most Obsidian syntax is supported, like wikilinks.
For Notion, we don't have a migration tool, but you can try the export to markdown approach.
Recommend trying it to get a feel, and if are looking to migrate and facing friction let me know details.
Obsidian is a lot more than "just markdown" though.
For example, with the appropriate plugins like dataview and charts, it's possible to create dashboards, lists, and tables that update automatically based on data elements present in documents or documents themselves. I use it to have views over my to-do lists (daily routine items, tasks that are overdue, upcoming tasks, etc), make dashboards, and show lists of documents edited on a particular date.
I'd love to migrate away from Obsidian towards something that's not proprietary, but I haven't seen anything that allows querying other documents.
That doesn't mean it's a design direction that open knowledge should go in, but just a data point that reducing Obsidian vaults to "just markdown" misses what some users use it for.
Yes makes sense, the database site of it is the primary point we don't support yet. We want to do it in the way we think is best and will keep in mind how to make the experience good for existing Obsidian users.