Remix.run Logo
Show HN: OpenKnowledge – open source AI-first alternative to Obsidian/Notion(github.com)
174 points by engomez 8 hours ago | 78 comments

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 other agents. Available as MacOS app or Web UI+CLI. Fully free/local and OSS.

We built this because we wanted a Notion-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 WYSWIG 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.

psoulos 4 minutes ago | parent | next [-]

The signature figure on the repo shows file contents alongside a chat window. Is this actually supported by the app? I can't figure out how to open a chat window in the app without handing off to an external AI app.

pcthrowaway 4 hours ago | parent | prev | next [-]

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!

engomez 4 hours ago | parent [-]

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.

pcthrowaway 4 hours ago | parent [-]

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

engomez 4 hours ago | parent [-]

Agree same. We'll look into explicit guides and integrations with Zed // OpenCode as a starting point, they let you choose your model.

pcthrowaway 3 hours ago | parent [-]

Amazing, thanks. I've decided to try daily driving this instead of Obsidian, but I'm a bit curious how the syncing works. I copied an Obsidian vault to a new folder, and when I start the import process in OpenKnowledge it asks me if I want it "shared" or "local only". If I select "Shared", where does the git repo live that other instances of OK sync from?

edit: This seems to be "team-oriented" rather than geared towards individuals who might want to edit their notes from multiple devices?

And only seems to be able to sync with github... In addition to my privacy concerns, I'm curious if there could be issues with lots of images and other attachments since git can choke on repos that contain lots of larger files without github's git-lfs extension.

Last question I have is if any plugin system comparable to Obsidian's is planned (or already supported)? I realize this is probably a massive ask for an open-source project, and something Obsidian gets a lot of flack for as well, so I'm certainly not expecting it, but I am curious if it's on the roadmap already

mkt123 2 hours ago | parent | next [-]

To clarify, OpenKnowledge will never publish your project to GitHub automatically. When you init a new project, selecting "Shared" means that OK config files will not be gitignored. Selecting "Local" will add them to your gitignore. Other open knowledge instances can only sync if you have explicitly published your project to GitHub (which you can do from the app) and enabled auto-sync in OpenKnowledge. Some docs related to this can be found here https://openknowledge.ai/docs/features/github-sync and https://openknowledge.ai/docs/features/share.

engomez 3 hours ago | parent | prev [-]

It would make a repo in your own GitHub account. You can choose whether that repo is in your personal GitHub or your GitHub org. We'll make that clearer in the UX.

Feel free to ping me any additional feedback any time (here or @nickgomez on X).

vitorbaptistaa 4 hours ago | parent | prev | next [-]

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.

engomez 4 hours ago | parent [-]

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.

rcarmo 2 hours ago | parent | prev | next [-]

You should just integrate with pi.dev, like I did for https://github.com/rcarmo/piclaw (which has replaced Obsidian for me). I too integrated a terminal and a WYSIWYG Markdown editor (as well as plugins for a mindmap, kanban, etc.)

engomez 2 hours ago | parent [-]

Looks very relevant, will take a look. Definitely looking at built-in-chat-ui, thinking about how to integrate with the harnesses.

iamacyborg 4 hours ago | parent | prev | next [-]

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...

engomez 4 hours ago | parent [-]

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.

iamacyborg 4 hours ago | parent [-]

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

https://github.com/jacquescorbytuech/running-knowledge-base

engomez 4 hours ago | parent [-]

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.

vekker 3 hours ago | parent | prev | next [-]

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...

engomez 3 hours ago | parent [-]

That was our exact stated goal -- felt a lot of the same pain. Feel free to drop me any feedback here or @nickgomez on X.

culi 4 hours ago | parent | prev | next [-]

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.

engomez 4 hours ago | parent | next [-]

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.

rnxrx 3 hours ago | parent | next [-]

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.

engomez 3 hours ago | parent [-]

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.

blharr 2 hours ago | parent [-]

What was complicated about the setup? Its a plug-ins folder... add it in and boom you are ready to go

engomez an hour ago | parent [-]

Keeping the MCPs/skills cross-compatible across the different harnesses, and also getting non-eng folks familiar with git.

culi an hour ago | parent | prev | next [-]

Don't take this the wrong way, but couldn't this have been a plugin?

engomez an hour ago | parent [-]

We wanted to make our own editor experience, allows us to do things like proper WYSWIG editing (Notion-like editor). MCP/AI integrations were one piece.

coldbrewed 3 hours ago | parent | prev [-]

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.

engomez 3 hours ago | parent [-]

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.

outside1234 3 hours ago | parent | prev [-]

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.

engomez 3 hours ago | parent | next [-]

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.

tomComb 2 hours ago | parent | prev [-]

But there’s no good WYSIWIG markdown editor extension for VS code.

culi an hour ago | parent [-]

Well there's quite a few options. The most popular I think is also open source (Markdown for Humans). Not sure what disqualifies it as "good" to you

engomez an hour ago | parent [-]

Our bar was "Notion-grade", i.e. drag and drop blocks, slash commands, select to highlight/bold, etc.

I don't think I'd seen an extension that does that. It was a technically very hard problem, rich text editors usually use a lossy intermediary format (e.g. prosemirror).

simonebrunozzi 2 hours ago | parent | prev | next [-]

How do you make money, and how will you pay for your salaries?

engomez 2 hours ago | parent [-]

Don't ask our VCs. Kidding -- we're taking a look at what would make sense for a cloud solution. E.g. richer team collaboration, etc.

engomez 2 hours ago | parent [-]

(We're same team behind Inkeep -- already have a healthy biz).

abdullin 3 hours ago | parent | prev | next [-]

Nice approach.

Personally I’ve been trying very hard to migrate away from git+Obsidian project setup according to the OpenAI Harness Engineering. It works wonderfully in Codex Desktop.

The only gotcha - I want to share knowledge bases with the team in a way that is:

(1) versioned (a la git, not Notion) (2) usable from any chat (a la MCP) (3) basic access controls for team setup. (4) works through the interface that optimizes accuracy and token use across agentic architectures and LLMs.

Funnily enough, 4 is the easiest one (I have a platform for agent training and verification where I publish fun challenges for agents in simulated worlds around agentic commerce and personal OSes. With 98M agentic interactions recorded, that is already enough information for tuning)

Still figuring 1 and 3, though.

engomez 3 hours ago | parent [-]

Gotcha. We're optimizing for the same scenarios, may be worth a look at our implementation in case transferable to yours. See:

#1 - the "autosync" and GitHub integrations do exactly this.

#2 - The app auto-instals skills/MCP server configs for a few harnesses

#4 - We embedded agentic-search capabilities via the MCP server (e.g. we virtualize 'ls' and 'cat' so we can enrich it for the agent for better hierchical navigation).

abdullin 2 hours ago | parent [-]

#1 - the tricky part there is in scenarios from a few AI Native teams. There often are a multiple agents rolling out linked changesets to a bunch of documents on behalf of controlling humans. Eg updating compliance policy, and references and change log and current procedures at the same time.

So changesets have to be atomic across multiple documents and semantic (so that agents can resolve the changes). Weak per-document versioning isn’t enough here.

#4. Nice! Same story, but also virtualizing ripgrep, find and tree (plus MD-aware outline mode). With that setup even agents with weaker local models (eg runnable on DGX Spark) can solve complex tasks in the Agentic Commerce domain.

engomez 2 hours ago | parent [-]

Got it, makes sense. And neat ideas for the virtualization, will take a look.

gman83 3 hours ago | parent | prev | next [-]

I've been using my opencode go subscription for Obsidian, saving my Claude sub for actual coding. Any reason why it's limited to Codex, Claude, and Cursor?

engomez 2 hours ago | parent | next [-]

OpenCode is next on the queue. Each has it's quirks, just working through quality testing each.

copperx 3 hours ago | parent | prev | next [-]

What AI plugin do you use in Obsidian?

smrtinsert 2 hours ago | parent | prev [-]

100% second for OpenCode. for a lot of people it's becoming a very important second choice. I use it for cheaper models when my $20 claude code runs out for the day and I get a lot out of it.

engomez 2 hours ago | parent [-]

Yup, we're working on it, should have integration eod or tomorrow.

harikb 3 hours ago | parent | prev | next [-]

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.

engomez 3 hours ago | parent [-]

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.

sizero 3 hours ago | parent | prev | next [-]

Neat, trying it out now. Are the Open Knowledge skills actually needed, if this is just markdown and folders? The skills are large, I'd prefer not filling up context.

engomez 3 hours ago | parent [-]

Skills / MCPs are not hard requirement, they're tailored for the desktop agents to be able to leverage built in tools we make available for e.g. agentic search over the content and manipulating the open knowledge web viewer and editor.

engomez 3 hours ago | parent [-]

The skills should be pretty progressive disclosure optimized but we'll do an audit.

sizero 2 hours ago | parent [-]

Nice, thanks! On my first run on Codex desktop, it said the equivalent of “skill too large, reading it in chunks”. I have the pro subscription.

engomez an hour ago | parent [-]

Got it, investigating.

claudiacsf 8 hours ago | parent | prev | next [-]

I'm a sucker for pretty UIs. I already have a company-mandated knowledge base tool, Slite, can they be used together?

engomez 8 hours ago | parent [-]

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.

engomez 7 hours ago | parent [-]

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.

montroser 4 hours ago | parent | prev | next [-]

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?

engomez 4 hours ago | parent [-]

Right now you'd simply prompt it. Working on more direct integration. Turns out they don't make event based back and forth easy.

Natfan 4 hours ago | parent | prev | next [-]

macos only? shame.

engomez 4 hours ago | parent | next [-]

CLI + Web viewer are available for Linux and Windows. We tested it and works pretty well.

beanjuiceII 4 hours ago | parent | prev [-]

yea pass..

engomez 4 hours ago | parent [-]

are you linux or windows? if linux, which distro? Electron support for distros varies so input is appreciated.

Imustaskforhelp 4 hours ago | parent [-]

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.

engomez 3 hours ago | parent [-]

Will take a look, appreciate it.

toobulkeh an hour ago | parent | prev | next [-]

Looks powerful. If you focus on notion-like elements you’ll go far. The product roadmap is there—their pricing is nuts.

engomez 36 minutes ago | parent [-]

Appreciate it. Editor should already be pretty "Notion-grade", more to do though.

What functionality is most important to you re:Notion?

jack_hanlon an hour ago | parent | prev | next [-]

how does this differ from Rowboat ?

engomez 38 minutes ago | parent [-]

Haven't tried it, will take a look.

High level general purpose "IDE" for document editing (think Google Docs, Notion), that also exposes MCP/Skills for LLM wiki/second-brain scenarios.

Seems Rowboat is more focused on the personal assistant angle, we defer to your own agent (Claude, Codex, etc.) to do the LLM work.

handfuloflight 3 hours ago | parent | prev | next [-]

I think it looks great!

engomez 3 hours ago | parent [-]

Appreciate it !

devCassius 8 hours ago | parent | prev | next [-]

Is there a migration path from Obsidian or Notion? Switching costs are usually what keeps people locked in.

engomez 7 hours ago | parent [-]

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.

jfim 3 hours ago | parent [-]

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.

engomez 3 hours ago | parent [-]

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.

smrtinsert 2 hours ago | parent | prev | next [-]

Just my personal pref with your roadmap, don't waste time on the electron app, I would never use it. A webapp definitely with OpenCode support big on the list as well.

engomez 2 hours ago | parent [-]

Ack !

re: Web app do you mean local web UI, or web hosted?

jubilanti an hour ago | parent [-]

Look into Tauri, not electron

jrm4 3 hours ago | parent | prev [-]

Nothing personal, but there genuinely ought to be consequences for using "open source" in the context of something like this tied to proprietary AI services.

Local models should be the first choice in that framing.

engomez 2 hours ago | parent [-]

Integration with local models/harnesses is top the queue. What IDE or Harness do you use?

We're looking at OpenCode/Zed next but open to input.