WeKnora is a self-hostable knowledge framework that turns document collections into something an agent can query. It is built around three modes: retrieval-augmented question answering over a knowledge base, a ReAct agent that plans multi-step work across retrieval, MCP tools, skill sandboxes, and web search, and a Wiki mode in which agents distil raw documents into interlinked Markdown pages with a knowledge graph, manual editing, revision history, and one-click rollback.
Documents arrive by upload, URL import, or auto-sync from Feishu wiki and Drive, Lark, GitLab, Tencent IMA, Notion, Yuque, and RSS feeds. More than ten formats parse, including PDF, Word, PowerPoint, Excel, Markdown, HTML, EPUB, MHTML, images, CSV, JSON, and XMind, with optical character recognition, vision-language description, and audio transcription available per upload batch. A folder tree preserves the directory layout of uploads, and retrieval chunks can be edited in the interface with per-version diffs, rollback, and automatic reindexing.
Retrieval combines BM25 sparse search, dense vectors, GraphRAG, and parent-child chunking over an HNSW-accelerated 1024-dimension pgvector index, with fan-out across several vector stores. Answers carry inline citations and a references drawer that separates knowledge-base sources from web results, and an end-to-end test view reports recall hit rate alongside BLEU and ROUGE scores.
Every layer is swappable: model providers, embedding models, vector databases, object storage, and IM channels are configured rather than compiled in. Agents reach the system through a built-in MCP server (29 tools over stdio, SSE, and HTTP transports), a CLI that emits a stable JSON envelope by default, a REST API with scoped keys, a Chrome extension, a WeChat mini program, and an embeddable website widget. Workspaces enforce a four-tier role matrix of owner, admin, contributor, and viewer with per-knowledge-base ownership and an audit log.
Operational surfaces include AES-256-GCM encryption for stored credentials, gRPC TLS between the app and the document reader, an SSRF-safe HTTP client, sandbox isolation for skills, and OIDC ID-token verification. Langfuse is the tracing backend for ReAct loops, token accounting, tool calls, and pipeline traces, and a system-admin dashboard shows queue depth, per-model concurrency, and failed tasks with manual retry.
Features
- Three answer modes: RAG question answering, a ReAct agent, and agent-generated Wiki pages with a knowledge graph
- Skill catalogue and sandboxes: skills install from ClawHub, SkillHub, git, or a zip onto session-persistent Docker, E2B, or Cube sandboxes with per-tenant network policy
- Long-term memory: cross-session profile, preference, fact, task, and interest memory with auto-extraction, user confirmation, and on-demand search
- Data sources: incremental and full sync from Feishu, Lark, GitLab, Tencent IMA, Notion, Yuque, and RSS
- Retrieval strategies: BM25, dense vectors, GraphRAG, parent-child chunking, and HNSW pgvector indexing with multi-store fan-out
- Chunk and wiki editing: per-version snapshots, line-level diffs, one-click rollback, and automatic reindexing after an edit
- Model providers: OpenAI, Azure OpenAI, Anthropic, DeepSeek, Qwen, Zhipu, Hunyuan, Doubao, Gemini, MiniMax, NVIDIA, Novita, SiliconFlow, OpenRouter, Requesty, LiteLLM, and Ollama
- Vector stores: PostgreSQL with pgvector, Elasticsearch, OpenSearch, Milvus, Weaviate, Qdrant, Apache Doris, and Tencent VectorDB
- Object storage: local, MinIO, AWS S3, Volcengine TOS, Alibaba OSS, Kingsoft KS3, and Huawei OBS, with several instances per workspace
- Chat channels: WeCom, Feishu, Lark, QQBot, Slack, Telegram, DingTalk, Mattermost, WeChat, and Yunzhijia, plus an embeddable web widget
- Agent access: an MCP server with 29 tools, a JSON-first CLI with mcp serve, scoped API keys, and a four-tool plugin for a coding harness