An Agent-native context database
$git clone https://github.com/volcengine/openvikingInstalls into the current project.
Install openviking by running `git clone https://github.com/volcengine/openviking`, then use it for the current task and follow its documentation at https://github.com/volcengine/openviking.
| 1 | <div align="center"> |
| 2 | |
| 3 | <a href="https://openviking.ai/" target="_blank"> |
| 4 | <picture> |
| 5 | <img alt="OpenViking" src="docs/images/ov-logo.png" width="200px" height="auto"> |
| 6 | </picture> |
| 7 | </a> |
| 8 | |
| 9 | ### OpenViking: The Context Database for AI Agents |
| 10 | |
| 11 | English / [中文](README_CN.md) / [日本語](README_JA.md) |
| 12 | |
| 13 | <a href="https://www.openviking.ai">Website</a> · <a href="https://openviking.ai/studio">Live Demo</a> · <a href="https://github.com/volcengine/OpenViking">GitHub</a> · <a href="https://github.com/volcengine/OpenViking/issues">Issues</a> · <a href="https://docs.openviking.ai/">Docs</a> |
| 14 | |
| 15 | [](https://github.com/volcengine/OpenViking/releases) |
| 16 | [](https://github.com/volcengine/OpenViking) |
| 17 | [](https://github.com/volcengine/OpenViking/issues) |
| 18 | [](https://github.com/volcengine/OpenViking/graphs/contributors) |
| 19 | [](https://github.com/volcengine/OpenViking/blob/main/LICENSE) |
| 20 | [](https://github.com/volcengine/OpenViking/commits/main) |
| 21 | |
| 22 | 👋 Join our Community |
| 23 | |
| 24 | 📱 <a href="https://docs.openviking.ai/en/about/01-about-us#lark-group">Lark Group</a> · <a href="https://docs.openviking.ai/en/about/01-about-us#wechat-group">WeChat</a> · <a href="https://discord.com/invite/eHvx8E9XF3">Discord</a> · <a href="https://x.com/openvikingai">X</a> |
| 25 | |
| 26 | <a href="https://trendshift.io/repositories/19668" target="_blank"><img src="https://trendshift.io/api/badge/repositories/19668" alt="volcengine%2FOpenViking | Trendshift" style="width: 250px; height: 55px;" width="250" height="55"/></a> |
| 27 | |
| 28 | </div> |
| 29 | |
| 30 | *** |
| 31 | |
| 32 | ## What is OpenViking |
| 33 | |
| 34 | 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. Full introduction: [Getting started](https://docs.openviking.ai/en/getting-started/01-introduction). |
| 35 | |
| 36 | [](https://openviking.ai/studio) |
| 37 | |
| 38 | *The [OpenViking Studio](https://openviking.ai/studio) playground — a live demo you can open in the browser, no installation required.* |
| 39 | |
| 40 | ## Why OpenViking |
| 41 | |
| 42 | - **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. → [Viking URI](https://docs.openviking.ai/en/concepts/04-viking-uri) · [Context types](https://docs.openviking.ai/en/concepts/02-context-types) |
| 43 | - **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. → [Context layers](https://docs.openviking.ai/en/concepts/03-context-layers) |
| 44 | - **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. → [Retrieval](https://docs.openviking.ai/en/concepts/07-retrieval) |
| 45 | - **Observable retrieval.** Each query preserves its directory-browsing trajectory. When a result looks wrong, you can see exactly which path produced it. → [Retrieval](https://docs.openviking.ai/en/concepts/07-retrieval) |
| 46 | - **Sessions become memory.** After a session commits, OpenViking asynchronously extracts user preferences and agent experience into long-term memory. → [Session](https://docs.openviking.ai/en/concepts/08-session) |
| 47 | |
| 48 | How the pieces fit together: [Architecture](https://docs.openviking.ai/en/concepts/01-architecture). The thinking behind the design: [The Database Paradigm for Context Engineering](https://blog.openviking.ai/post/openviking-context-database/). |
| 49 | |
| 50 | ``` |
| 51 | viking:// |
| 52 | ├── resources/ # Resources: project docs, repos, web pages, etc. |
| 53 | │ └── my_project/ |
| 54 | │ ├── docs/ |
| 55 | │ │ ├── api/ |
| 56 | │ │ └── tutorials/ |
| 57 | │ └── src/ |
| 58 | └── user/ |
| 59 | └── {user_id}/ |
| 60 | ├── memories/ |
| 61 | │ └── preferences/ |
| 62 | │ ├── writing_style |
| 63 | │ └── coding_habits |
| 64 | ├── resources/ |
| 65 | │ └── private_project/ |
| 66 | ├── skills/ |
| 67 | │ ├── search_code |
| 68 | │ └── analyze_data |
| 69 | └── peers/ |
| 70 | └── web-vi |