OpenViking
OpenViking is an open-source context database for AI agents. It unifies agent memory, knowledge RAG, and skills, organizing context as a navigable filesystem for retrieval and reuse.
Visit volcengine/OpenVikingOverview
OpenViking is an open-source context database for AI agents that organizes knowledge, memory, and skills as a virtual filesystem under viking://. Agents can browse, search, and read context as files, with generated summaries and layered access. It connects with popular agent harnesses and provides benchmarks showing improved long-term memory accuracy and token efficiency.
Key Features
- One filesystem for knowledge, memory, and skills: resources, user memories, and skills each get a viking:// URI for browsing and retrieval.
- Directory-scoped semantic search that runs queries within project or memory subtrees instead of scanning a flat vector index.
- Layered context with L0 abstracts, L1 overviews, and L2 full details so agents can judge relevance before reading source content.
- Sessions become inspectable Markdown files, and ov compile can organize source material into a wiki, knowledge graph, or report.
- Integrations with agent harnesses including Claude Code, Codex, Cursor, OpenClaw, Hermes, OpenCode, and MCP clients.
- Benchmarks report 80%+ long-term memory accuracy across agent frameworks and up to 63% reduction in input tokens versus baselines.
Use Cases
- Providing cross-session memory for coding agents such as Claude Code, Codex, and Cursor through hooks, plugins, or MCP.
- Organizing and retrieving knowledge from project documentation and GitHub repositories for retrieval-augmented generation.
- Improving long-term memory accuracy and reducing token costs when connecting agent frameworks like OpenClaw, Hermes, and Claude Code.
- Building custom agent integrations with Python, Go, or TypeScript SDKs and the HTTP API.
Getting Started
- Install the package with pip install openviking --upgrade.
- Run openviking-server init to configure providers and models.
- Run openviking-server doctor to check configuration and connectivity.
- Start the server with openviking-server.
- Use the ov CLI to add resources, run searches, and inspect context with commands like ov add-resource, ov find, and ov grep.
Deployment & Requirements
- Requires Python 3.10+ and access to an embedding model and a VLM, either cloud or local.
- The open-source server runs under AGPLv3 and requires no activation key; configure authentication before exposing it beyond localhost.
- A Docker and deployment guide is available, and a desktop app beta supports macOS and Windows x64.
Before You Adopt
- License: AGPL-3.0. Review its terms before using, modifying, or distributing the project.
- The server requires an embedding model and a VLM, which can be cloud or local external dependencies.
- The desktop app is currently in beta and limited to macOS and Windows x64.
- The self-managed commercial edition is activated by a license key and adds distributed deployment and official support.