All 228 Dependencies
Every package OpenViking depends on, ranked by repo health score.
OpenViking is a purpose-built context database for AI agents, developed by ByteDance's Volcengine team. It replaces the fragmented approach of storing memories in code, resources in vector databases, and skills in scattered files with a single unified filesystem paradigm. By organizing context as a hierarchy of directories and files with URI-addressable nodes, agents can manage their knowledge base the same way a developer manages a local filesystem.
The core innovation is OpenViking's three-tier context loading system (L0/L1/L2), where abstract summaries, overviews, and full content are stored at different levels and loaded on demand. This dramatically reduces token consumption compared to naive RAG approaches that retrieve full documents indiscriminately. Retrieval traverses the directory tree recursively, combining directory-level positioning with dense and sparse semantic vector search and reranking for high-precision context acquisition.
OpenViking ships with automatic session management that compresses conversation history, extracts long-term memories from agent interactions, and maintains a hotness-weighted scoring system so frequently accessed context surfaces faster over time. The system integrates natively with MCP (Model Context Protocol), LangChain, and LangGraph, and supports a wide range of VLM and embedding providers including OpenAI, Volcengine Doubao, Kimi, GLM, and local Ollama models.
Beyond core context storage, OpenViking includes a Rust-based CLI tool and companion filesystem layer (RAGFS) compiled as a Python extension, a FastAPI-based REST server with OAuth and API key authentication, OpenTelemetry tracing, a visual web studio for browsing the context tree, and a vikingbot subsystem that connects agents to messaging platforms like Feishu, Telegram, Slack, DingTalk, and WeChat.