Back to Devoured - August 19, 2026
DEVOURED
OpenViking (GitHub Repo)

OpenViking (GitHub Repo)

DevOps GitHub
OpenViking provides a filesystem-based context database for AI agents, allowing them to browse memories and skills deterministically.
What: OpenViking exposes agent context via the `viking://` protocol, organizing content into L0 (abstract), L1 (overview), and L2 (details) tiers to optimize token usage and retrieval.
Why it matters: This approach aims to move AI memory management away from 'black-box' vector searching toward structured, observable filesystem navigation.
Deep dive
  • Protocol-based access: Uses the viking:// URI scheme to allow agents to interact with context using commands like ls, tree, and find.
  • Tiered loading: Automatically generates three abstraction levels per entry to load only relevant data and reduce LLM token consumption.
  • Observability: Every query path is traceable, enabling developers to debug why an agent retrieved specific information.
  • Integration: Compatible with agent frameworks like Claude Code, Cursor, and LangGraph.
  • Memory persistence: Automatically extracts user preferences and agent experiences from session logs for long-term storage.
Decoder
  • Vector store: A database optimized for storing and retrieving high-dimensional embeddings based on semantic similarity rather than exact structure.
Original article

OpenViking: The Context Database for AI Agents

OpenViking is an open-source context database for AI agents. It stores memories, resources, and skills as one virtual filesystem under the viking:// protocol, so an agent browses its own context with ls, tree, and find instead of querying a black-box vector store. Content is processed into three tiers — L0 abstract, L1 overview, L2 details — and loaded on demand. Every retrieval leaves a trajectory you can watch and debug.

Why OpenViking

  • One filesystem for all context. Memories, resources, and skills each get a viking:// URI. Agents locate and manipulate context deterministically, like a developer working with files.
  • Tiered loading cuts token spend. Every entry is processed into L0 (abstract), L1 (overview), and L2 (details) on write, then loaded only as deep as the task requires.
  • Directory recursive retrieval. Vector search first locates the highest-scoring directory, then drills down layer by layer, so results arrive with their surrounding context intact.
  • Observable retrieval. Each query preserves its directory-browsing trajectory. When a result looks wrong, you can see exactly which path produced it.
  • Sessions become memory. After a session commits, OpenViking asynchronously extracts user preferences and agent experience into long-term memory.
viking://
├── resources/              # Resources: project docs, repos, web pages, etc.
│   └── my_project/
│       ├── docs/
│       │   ├── api/
│       │   └── tutorials/
│       └── src/
└── user/
    └── {user_id}/
        ├── memories/
        │   └── preferences/
        │       ├── writing_style
        │       └── coding_habits
        ├── resources/
        │   └── private_project/
        ├── skills/
        │   ├── search_code
        │   └── analyze_data
        └── peers/
            └── web-visitor-alice/

The three loading tiers:

  • L0 (Abstract): a one-sentence summary for quick relevance checks.
  • L1 (Overview): core information and usage scenarios for planning.
  • L2 (Details): the full original data, read only when needed.

Proof it works

OpenViking 0.3.22 has been evaluated on long-conversation user memory (LoCoMo) and multi-turn agent tasks (tau2-bench).

  • User memory (LoCoMo): with OpenViking, all three agent integrations land at 80–83% accuracy — up from 24–57% on their native memory — while input tokens drop by 34.3–91.0% and query latency by 58.45–66.10%.
  • Agent experience (tau2-bench): experience memory lifts task success by +6.87pp (retail) and +11.87pp (airline) over the same LLM without memory.

Quick start

Requires Python 3.10 or higher.

pip install openviking --upgrade
openviking-server init      # interactive wizard: providers, models, ov.conf
openviking-server doctor    # validate setup
openviking-server           # start

OpenViking Helper (Beta)

OpenViking Helper is a desktop console, currently in beta for macOS and Windows x64:

  • Visual local agent setup: detects OpenViking CLI, Claude Code, Codex, Cursor, Trae, and OpenCode, then configures supported plugin, MCP, Hook, and CLI integrations.
  • Session trace inspection: parses Claude Code, Codex, and Trae sessions to show OpenViking recall, prompt injection, MCP calls, capture, and commit events.
  • Local memory and skill management: views local memory / rule files and SKILL.md skills, then syncs them to OpenViking.

VikingBot

VikingBot is an AI agent framework built on top of OpenViking:

pip install "openviking[bot]"
openviking-server --with-bot
ov chat

Commercial editions

The open-source edition is fully open source under AGPLv3: no feature gates, no account required, no activation key.

☁️ Managed SaaS

Officially hosted on Volcano Engine. Nothing to set up, nothing to operate.

  • Personal — for individual developers.
  • Enterprise — multi-user context management, team collaboration and permissions, enterprise SLA and support.

🏢 Self-Managed

Runs inside your own environment. Data never leaves it.

  • Online — deployed into your own cloud account / VPC, BYOC supported, with outbound access for updates and licensing.
  • Offline — fully air-gapped environments with no internet access, for regulated industries.

Research

OpenViking open-sources a subset of the core capabilities described in the VikingMem paper:

VikingMem: A Memory Base Management System for Stateful LLM-based Applications Jiajie Fu, Junwen Chen, Mengzhao Wang, Aoxiang He, Maojia Sheng, Xiangyu Ke, Yifan Zhu, and Yunjun Gao. arXiv:2605.29640, 2026. Accepted by VLDB 2026.

Explore all 56 articles in today's digest

Fresh dev news, AI-digested daily. Never miss a trend at devoured.fyi