mrkeyoor.com_
Sat 26 Sept 18:47 UTC
AI Toolsevaluationupdated 26 Aug 2026

OpenKB review

OpenKB turns documents and web pages into a local folder of linked Markdown summaries, concepts, and entity pages that an LLM can query. Instead of relying on a vector database, it spends model calls up front to compile a browsable wiki that can be opened in Obsidian or used by coding agents.

+21stars / 7d
Verdict

Our OpenKB run installed 132 packages and built successfully, but 104 of 1,079 tests failed and 4 more ended in collection or setup errors, so it is a promising research tool rather than a safe unattended knowledge pipeline. Use it for a bounded collection whose generated pages a person will inspect. Avoid it for bulk archives, local-model-only query service, or factual publication without an editorial gate.

We ran it

Lab card: what happened when we ran OpenKBScreenshot of OpenKB (pageindex.ai)
Install✓ · 37s132 packages · 533 MB
Build✓ · 7s
Tests✗ · 152s971 passed · 104 failed · 4 errors of 1079 (pytest)
Known vulns2(pip-audit)
Repo293 files~54,840 lines of source · 29 MB · 2 CI workflows · tests dir

Answers from our run

Does OpenKB build from source?

Dependencies installed in 37 seconds (132 packages), and the build succeeded in 7 seconds. We cloned commit ff54396 into a clean Debian container with 3 CPUs and no project-specific setup.

Do OpenKB's tests pass?

Not all of them: 971 of 1079 passed and 104 failed when we ran the project's own test command (pytest), with 4 collection errors. Some failures need services or credentials a bare container does not have.

Does OpenKB have known vulnerabilities in its dependencies?

pip-audit flagged 2 known advisories in the dependency tree at the time of our run.

Who should not use OpenKB?

Teams backfilling a dense archive: issue 203 reports that repeatedly rewriting growing pages made a roughly 1,100-document corpus impractical and approximated quadratic work.

What are the alternatives to OpenKB?

RAGFlow, Khoj, Haystack. Our OpenKB run installed 132 packages and built successfully, but 104 of 1,079 tests failed and 4 more ended in collection or setup errors, so it is a promising research tool rather than a safe unattended knowledge pipeline.

Setup3/537-second install, but 104 tests failed and model setup remains
Docs5/5Architecture, commands, providers, examples, and API are explained
Community4/53,845 stars and active issue discussion through August 2026
Maturity2/5v0.4.5 has scale, local-model, proxy, and test-suite gaps

Discussed on

  1. hnOpenKB: A Vectorless Knowledge Base for Long Documents3 points

Who it’s for

Researchers who want a durable, inspectable wiki instead of a hidden retrieval index.
Obsidian users who want generated summaries, entity pages, concepts, and wikilinks as normal files.
Claude Code, Codex, and Gemini CLI users who want to turn a focused document set into a reusable agent skill.
Small teams willing to review generated facts and pay the model cost of compiling sources before querying them.

Who it’s NOT for

Teams backfilling a dense archive: issue 203 reports that repeatedly rewriting growing pages made a roughly 1,100-document corpus impractical and approximated quadratic work.
Ollama users who require dependable query and chat loops: issue 205 reproduces raw tool JSON, empty output, incomplete answers, and timeouts across several local models.
Unattended factual publishing: issue 214 documents invented biographical claims and misspellings that a later lint run caught only because a person invoked it.
Custom OpenAI-compatible proxy users ingesting long documents: issue 219 reports that PageIndex did not receive the configured base URL and key, ending in a 401.
Multi-user services requiring accounts and roles: the Workbench starts with authentication off and documents one optional bearer token.

Setup reality

Our sandbox installed 132 Python packages in 37 seconds and used 533 MB. The build passed in 7 seconds. Tests failed after 152 seconds: pytest reported 971 passed, 104 failed, and 4 collection or setup errors out of 1,079. Pip-audit found 2 known vulnerabilities.

A useful run needs an LLM provider through LiteLLM, usually with a model credential. Long PDFs use local PageIndex or an optional cloud key; the web interface needs its extra package and an API token before exposure. Generated pages consume model time and should be reviewed.

The log said async functions were not natively supported and suggested installing an async framework plugin. It also ended with errors in four API-related test modules. The log does not establish whether one missing test dependency explains every failure, so we do not treat the 971 passes as a clean suite.

The output is a wiki that people can inspect

OpenKB asks a model to compile each source into persistent summaries, concepts, entities, cross-links, an index, and a log. The files are ordinary Markdown with wikilinks, so the result stays readable when OpenKB is not running. A researcher can open the folder in Obsidian, correct a page, track it in Git, or point another text tool at it.

The CLI accepts PDFs, office files, HTML, CSV, text, directories, and URLs. It can answer a cited question, keep a chat session, render an interactive graph, produce an HTML slide deck, or distill the wiki into an agent skill. Claude Code, Codex, and Gemini CLI integrations read that compiled material. This is useful when the knowledge base itself, rather than only the chat interface, should remain an artifact.

Long documents avoid vectors but still consume model work

Short documents pass through MarkItDown and are read in full. PDFs of at least 20 pages take the PageIndex route, which builds a tree and summaries for model-guided retrieval. PageIndex runs locally by default, while its optional cloud service adds OCR and other processing for difficult PDFs. Avoiding a vector database removes one service; it does not make indexing free.

Each new source can update 10 to 15 wiki pages according to the README. OpenKB generates a source summary, reads existing concepts and entities, rewrites relevant pages, and updates the index. Issue 203 shows how that incremental design can hurt a dense backfill. On roughly 1,100 documents, recurring pages grew and were regenerated repeatedly, pushing individual updates into minutes and making total work resemble quadratic growth.

What happened when we ran it

Our sandbox installed commit ff54396 in 37 seconds, adding 132 Python packages and consuming 533 MB. The build completed successfully in 7 seconds. The checkout contained 293 files and about 54,840 lines of source. Two CI workflow files and a tests directory were present, while no Dockerfile was found.

The test command exited 1 after 152 seconds. Pytest counted 1,079 tests: 971 passed, 104 failed, and 4 produced collection or setup errors. The final failure said async functions were not natively supported and suggested plugins such as anyio or pytest-asyncio. Four API modules ended as errors. That tail does not prove one plugin caused all 108 unsuccessful outcomes, so the honest result is a failed suite.

Pip-audit found 2 known vulnerabilities in the installed environment. Our run did not compile a private corpus, pay for a hosted model, assess retrieval accuracy, or compare answers with source documents. The 533 MB disk figure covers installed code, not a working knowledge base plus its source files, generated wiki, images, and model-side usage.

Hosted models are the easier route today

The documented start is short: install OpenKB, initialize a folder, choose a LiteLLM model, place its credential in .env, and add a document. OAuth-backed providers can avoid a conventional API key. The Workbench and REST API require a web extra and listen locally; authentication is off by default, so OPENKB_API_TOKEN belongs in the configuration before any proxy exposes port 7566.

Local provider support needs qualification. Issue 205 reports that document addition worked through Ollama, while query and chat did not reliably finish tool calls. Tested outcomes included raw JSON, {}, empty responses, invented tool names, and timeouts across several models. LiteLLM compatibility gets a request to the model, but OpenKB still depends on that model and adapter completing a structured agent loop correctly.

Issue 219 identifies another split between short and long paths. With a custom OpenAI-compatible proxy, short documents worked, but a PDF over the 20-page threshold failed with a 401. The report says PageIndex did not inherit the configured base URL and credential. Users with private gateways should test both document paths rather than assuming a successful Markdown ingest proves long-PDF support.

Generated claims need a human editor

A compiled wiki makes model errors durable. Issue 214 gives specific examples: a misspelled name, an unsupported description of a historical figure, and fabricated details about the reporter's family and location. A later openkb lint call caught some errors, but only after a person remembered to run it. Citations reduce the effort needed to inspect a claim; they do not make the claim true.

For a serious collection, put linting and source comparison after every ingest batch. Review entity merges, biographical statements, contradictions, and any page that changed across several sources. The Skill Factory adds validation, evaluation, history, and rollback for the packaged skill, but those controls do not substitute for checking the knowledge written into the wiki.

July code activity and August reports show a young project

GitHub showed 3,845 stars and 45 open issues and pull requests when fetched. Release v0.4.5 was published July 20, 2026, and the last push was July 22. Issue discussion continued into August, including proxy and packaging reports. That is a live community around a young 0.x project, not evidence that the current branch has resolved its ingestion and local-model limits.

OpenKB earns a trial because its plain-file output is genuinely useful. Start with a small, representative set, then record model spend, compilation time, page churn, and factual corrections before importing more. The failed 1,079-test run makes that staged approach more important: the architecture is interesting, but our measured checkout did not clear its own suite.

Alternatives

ProjectWhat it isPick it when
RAGFlow gh↗A retrieval application centered on document parsing, indexing, search, and grounded chat.pick this instead when you want a service-style RAG application rather than a compiled Markdown wiki.
KhojA personal AI assistant that searches notes, files, and connected sources.pick this instead when an end-user assistant matters more than generated concept pages.
Haystack gh↗A Python framework for custom retrieval and agent pipelines.pick this instead when developers need control over indexing and retrieval components inside an application.

What people are saying

  1. [github-trending] VectifyAI/OpenKB

Sources

  1. OpenKB repository and README
  2. OpenKB v0.4.5 release
  3. Bulk-ingestion scaling report
  4. Ollama query and chat failures
  5. Compilation hallucination examples
  6. Custom proxy failure on long documents

More ai tools reviews

gallery · undress-service · khazix-skills · nobodywho · desktop-cc-gui · langextract · the whole board →