# OmniKB

A scenario-based knowledge base question-answering system that turns uploaded documents into an LLM-generated wiki with a linked knowledge graph, then publishes each scenario as its own public question-answering page or an API-authenticated knowledge base for an AI agent.

OmniKB imports documents, pasted text or crawled URLs as a knowledge source, then has an LLM analyze the content in two steps to generate structured wiki pages for entities, concepts and sources, linked with bidirectional wikilinks and visualized as a force-directed knowledge graph. Each scenario binds its own knowledge sources, system prompt, UI template and API key, and can be published with one click as a public question-answering page at its own URL, embedded on a website, or used as a dedicated knowledge base for an AI agent, with different scenarios kept independent of each other.

Conversations use progressive disclosure over a large context window: a full index of the wiki is available up front, and a tool reads individual wiki pages on demand as the conversation needs more detail, streamed token by token. An MCP interface exposes the same wiki-reading and URL-preview tools to Claude or another AI agent, and an agent-driven scenario editor can restyle or rewrite a published page from natural-language instructions.

The backend is FastAPI with SQLite, deployable as a single Python process or with Docker, and supports DeepSeek or other OpenAI-compatible LLM providers.

Website: https://github.com/fivif/OmniKB
