OpenKnowledge
WYSIWYG markdown knowledge-base editor that ships a 21-tool MCP server and skills for coding agents.
OpenKnowledge from Inkeep is a desktop and local-web markdown editor for LLM wikis, specs, and notes over any folder of .md files. Its installer wires an MCP server and skills into Claude Code, Codex, Cursor, and other harnesses; the server exposes search, link-graph, lint, history, and polymorphic write/edit/move tools with git-backed versioning.
- you keep specs and a team wiki as markdown in git and want agents to search, lint, and edit them with history
- you want an Obsidian-like editor that installs its own MCP and skills into Claude Code and Codex
- GPL-3.0
- Semantic search sends content to the embeddings provider; off by default
- Every MCP call takes a cwd; a globally registered server needs it unless the client advertises one root
- Web app needs Node.js 24+ and git
Last activity Sep 3, 2026. Fit: adaptable 2, operable 3.
Adaptable: what is yours to change
Make it yours
Config only15 things to edit
Three YAML layers: ./.ok/config.yml (committed), ~/.ok/global.yml (user), ./.ok/local/config.yml (machine). Keys cover content.dir, contentRules, validation, appearance, autoSync, server, editor, agents.autoApproveOkTools, search.semantic. Env overrides are OK_* (OK_BIND, OK_EXTERNAL_URL, OK_ALLOW_EXTERNAL, OK_MCP_AUTOSTART, OK_EMBEDDINGS_API_KEY). Skills are SKILL.md bundles under .agents/skills/. The repo .env.example only sets VITE_PORT and OTEL_* for development.
- Env vars
OK_BINDOK_EXTERNAL_URLOK_ALLOW_EXTERNALOK_LANGOK_LOG_LEVELOK_OPEN_BROWSEROK_MCP_AUTOSTARTOK_EMBEDDINGS_API_KEYVITE_PORTOTEL_SDK_DISABLED- Config files
.ok/config.yml~/.ok/global.yml.ok/local/config.yml~/.ok/secrets.yml- Prompt files
.agents/skills/*/SKILL.md- Accounts you need
- GitHub (optional, for team sync)OpenAI or a self-hosted embeddings endpoint (optional, semantic search)
Source
- github.com/inkeep/open-knowledge
- GPL-3.0 license
- Last commit Sep 3, 2026
- 3,964 stars
Operable: what an agent can drive
Interface
OfficialMCP serverpublished by the builderlocal
How an agent can drive an Operable Listing, in five levels: native (built for the agent as the primary interface), official (the Builder ships an agent interface), wrapped (a third party wraps the software's API), config (an agent can only drive it by editing files), gui (screen control only). An interface is official only when it is published by the same organization that ships the software. GUI-level Listings are allowed and sorted last.
- Docs
- openknowledge.ai/docs/reference/mcp
- Tools
execsearchlinkslintaudithistoryskillsconfigpalettepreview_urlshare_linkwriteeditdeletemoveinstallimportcheckpointrestore_versionconflictsresolve_conflict
Reach
Partial coverage. 8 of 10 jobs reachable through the stated interface.
| Job | Through the interface | Evidence |
|---|---|---|
| Read and search the knowledge base | Reachable | exec (fs-direct reads with backlinks) and search (BM25 plus optional semantic) |
| Create, edit, move, and delete documents, folders, and assets | Reachable | write, edit, delete, move tools polymorphic over document, folder, template, skill, asset |
| Wiki-link graph and backlinks | Reachable | links tool with backlinks, forward, dead, orphans, hubs, suggest |
| Content rules and lint | Reachable | lint and audit tools; lint fix: true auto-fixes |
| Version history, checkpoints, and restore | Reachable | history, checkpoint, restore_version |
| Manage and import agent skills | Reachable | skills, install, import tools |
| Git and GitHub sync, conflict resolution | Reachable | conflicts and resolve_conflict; auto-sync itself is configured in autoSync.* config |
| Team share links | Reachable | share_link tool |
| Resolve comment annotations | Undetermined | exec returns unresolved comments; no explicit resolve tool seen in the reference |
| In-app AI chat and slides | Not reachable | human UI features; no MCP tool |
Code stack
- Languages
- TypeScript
- Frameworks
- ElectronViteHocuspocus
- Package manager
- npm
- Database
- none
- Hosting target
- local
- Built
- Unknown (recorded, never ranked)
Model stack
- Providers
- OpenAI-compatible embeddings (OpenAI, Ollama, vLLM, LM Studio)
- Models
- text-embedding-3-small
- Keys you need
OK_EMBEDDINGS_API_KEY- Prompts live in
.agents/skills/
Skills
Server ships skill packs (knowledge base, codebase wiki, entity vault, plain notes) and a Claude Code plugin that agents install to use the knowledge store.
- Kind
- bundled
- Paths
packages/server/assets/skills/*/SKILL.mdpackages/server/assets/skills/packs/*/SKILL.mdpackages/plugin/.claude-plugin/plugin.json
Evidence and confidence
| Field | Where it was seen | Confidence |
|---|---|---|
| formFactor | README: desktop app for macOS, Windows, Linux; also a local web UI from the CLI | 85% |
| executionModel | agent integrations and opt-in embeddings; editor works without a model | 75% |
| operability | docs/content/reference/mcp.mdx in the repo, 21 tools, published by Inkeep | 95% |
| effort | openknowledge.ai/docs/reference/configuration: YAML config layers and OK_* env vars | 85% |
| editions | README: 'Private, local, and free'; no paid edition found in docs | 75% |
| active | pushedAt 2026-09-03; Show HN 2026-06-25 with 381 points | – |
| provenance | AGENTS.md present; no statement on how it was written | 30% |
| reach | 90% |
Open questions
- Does Inkeep sell a hosted or team edition of OpenKnowledge, or only its separate Inkeep products?
- Which providers and keys does the in-app AI chat use?
- Is 'official' or 'native' the better level given agents are a first-class co-editor?
Sources
- github.com/inkeep/open-knowledge sourcing:notes-knowledge:community
- openknowledge.ai/docs/reference/mcp analysis
- openknowledge.ai/docs/reference/configuration analysis