AI/TLDR

OpenViking

A context database an agent browses like a filesystem, not a black-box vector store

Agent MemoryOpen source
Latest
v0.4.16
Updated
21 Aug 2026
Language
Python
License
AGPL-3.0
Coverage
2 stories
$pip install openviking --upgrade

What's new

v0.4.1621 Aug 2026

OpenViking 0.4.16 let VikingBot find, cache and run Skills stored on a remote OpenViking server, and added a per-user memory extraction policy for admins. The experimental Resource Relations API was removed.

Latest news

Overview

OpenViking is an open-source context database for AI agents, published by Volcengine. It stores three kinds of context — memories, resources, and skills — as entries in a single virtual filesystem under the viking:// protocol, so an agent locates and manipulates its own context with ls, tree, find, and grep instead of issuing opaque queries at a vector store. Each entry gets a URI, which makes context addressable the way a developer's files are.

Every entry is processed on write into three layers: L0, a one-sentence abstract for a quick relevance check; L1, an overview with core information and usage scenarios for planning; and L2, the full original data, read only when needed. Directories carry their own L0 and L1 layers, so relevance can be judged before any full file is opened. Retrieval works the same way: vector search first locates the highest-scoring directory and then drills down layer by layer, and each query preserves its browsing trajectory so a wrong-looking result can be traced to the path that produced it.

Sessions feed back into memory — after a session commits, OpenViking asynchronously extracts user preferences and agent experience into long-term storage. It installs as a Python server with an ov client CLI, has documented integrations for Claude Code, Codex, OpenClaw, Hermes, Cursor, TRAE, OpenCode and pi, and publishes reproduction scripts for its LoCoMo and tau2-bench evaluations in the repository.

What it does

  • One viking:// filesystem for memories, resources and skills, browsed with ls, tree, find and grep so context is addressed deterministically
  • Three-tier processing (L0 abstract, L1 overview, L2 details) with on-demand loading, so a task pulls only as deep as it needs
  • Directory-recursive retrieval: vector search locates the best-scoring directory first, then drills down, keeping surrounding context intact
  • Observable retrieval — every query keeps its directory-browsing trajectory, so a wrong result can be traced to the path that produced it
  • Session commit extracts user preferences and agent experience into long-term memory asynchronously
  • Drop-in integrations for Claude Code, Codex, OpenClaw, Hermes, Cursor, TRAE, OpenCode and pi that inject recall and auto-commit session memory

Getting started

OpenViking needs Python 3.10 or later. The pip install brings both the server and the ov client CLI; an interactive wizard handles provider setup. A hosted playground is available at openviking.ai/studio if you want to try it before installing.

Install and initialise the server

init is an interactive wizard for providers, models and ov.conf; it supports Volcengine, OpenAI, Codex OAuth, Kimi, GLM and local Ollama. doctor validates the config, Python version, provider connectivity and disk space without a running server.

bashbash
pip install openviking --upgrade
openviking-server init
openviking-server doctor
openviking-server

Add a resource and browse it

The install already includes the ov client. Add a repository or document set, then walk the filesystem it becomes. Semantic processing runs after the add unless you pass --wait.

bashbash
ov status
ov add-resource https://github.com/volcengine/OpenViking --wait
ov ls viking://resources/
ov tree viking://resources/volcengine -L 2

Search across the context

find runs semantic retrieval over the tree; grep scopes a literal search to a URI.

bashbash
ov find "what is openviking"
ov grep "openviking" --uri viking://resources/volcengine/OpenViking/docs/en

Wire it into your agent

Per-harness integration guides for Claude Code, Codex, OpenClaw, Hermes, Cursor, TRAE, OpenCode and pi are in the docs; they inject OpenViking recall into the agent's context and commit session memory automatically. Docker and production deployment are covered in the deployment guide.

Commands and code are distilled from the project's own documentation — always check the official repo for the latest.

When to use it

  • Give a coding agent long-term memory of a codebase and its docs without pasting the whole repository into the context window
  • Cut token spend on retrieval by loading abstracts and overviews first and full documents only when a task needs them
  • Debug a bad retrieval by replaying the directory path the query actually walked, instead of guessing at embedding similarity
  • Carry user preferences and accumulated agent experience across sessions and across several different agent harnesses

How OpenViking compares

OpenViking alongside other open-source agent memory tools AI/TLDR tracks, ranked by GitHub stars.

ToolStarsWhat it does
Claude-Mem★ 93.6kPersistent memory layer for coding agents: it captures what an agent does during a session, compresses it into semantic summaries, and injects the relevant parts back into later sessions.
Mem0★ 65.1kA memory layer that you add to existing LLM agents to extract, store, and recall user facts and preferences across sessions using vector, graph, and key-value backends.
MemPalace★ 59kLocal-first agent memory that stores conversations verbatim instead of summarising them, with a structured palace index, pluggable vector backends and an MCP server.
OpenViking★ 36.5kA context database an agent browses like a filesystem, not a black-box vector store
Graphiti★ 30.8kA library that builds a temporal knowledge graph from an agent's conversations and data so facts can be tracked and queried as they change over time.
Cognee★ 30.6kA graph-native memory engine that turns raw documents and conversations into a queryable knowledge graph for agents that need to build lasting knowledge.
Supermemory★ 29.6kA memory and context engine that ingests information across tools and sessions and can run fully locally, acting as a second brain for AI applications.
agentmemory★ 28.3kLocal memory server for coding agents that captures tool use through lifecycle hooks, consolidates it into four memory tiers, and serves it back over MCP with hybrid BM25, vector, and knowledge-graph search.