volcengine/OpenViking

Self-evolving Context Database for AI Agents. Unify Agent Memory, Knowledge RAG and Skills.

What it solves

OpenViking provides a structured way for AI agents to manage their long-term memory, resources, and skills. Instead of relying on "black-box" vector stores where retrieval is opaque, it treats context as a virtual filesystem, allowing agents to browse and locate information deterministically using standard file-like commands.

How it works

The system uses a custom viking:// protocol to organize data into a virtual directory structure. To optimize token usage and retrieval speed, it processes content into three tiers of detail:

  • L0 (Abstract): A one-sentence summary for rapid relevance checks.
  • L1 (Overview): Core information and usage scenarios for planning.
  • L2 (Details): The full original data, loaded only when necessary.

Retrieval begins by locating the highest-scoring directory and drilling down through these layers. Additionally, the system asynchronously extracts user preferences and agent experiences from completed sessions to build long-term memory.

Who it’s for

It is designed for developers building AI agents that require persistent, observable, and token-efficient memory management across multiple sessions.

Highlights

  • Virtual Filesystem Interface: Agents use ls, tree, and find to navigate context via the viking:// protocol.
  • Tiered Loading: Reduces token spend by loading only the necessary level of detail (L0 $\to$ L1 $\to$ L2).
  • Observable Retrieval: Preserves the directory-browsing trajectory for easier debugging of retrieval errors.
  • Agent Integrations: Built-in support for tools like Claude Code, Cursor, and LangChain.
  • Session-to-Memory Conversion: Automatically transforms session history into long-term memory and user preferences.

Related

  • Project
  • Project
  • Project
  • Project