volcengine/OpenVikingPublic

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

AI summary: A self-evolving context database that unifies memory, RAG, and tool skills for advanced AI agents.

Stars
39.2K
+109 today
Forks
3.1K
Watchers
114
Open issues
213
Open PRs
477
Contributors
~282
Commits
2.6K
Branches
161

PythonAGPL-3.0Created Jan 5, 2026Last push 1d agoLatest release v0.4.21+535 stars this week+3.8K this month

Quick answers

What is OpenViking?
A self-evolving context database that unifies memory, RAG, and tool skills for advanced AI agents.
What does OpenViking do?
OpenViking provides a robust, centralized database architecture specifically designed to manage the context and state of autonomous AI agents. It solves the critical problem of agent amnesia and fragmented knowledge by providing a single interface for managing long-term memory, retrieving external knowledge (RAG), and registering callable skills. The technical foundation relies on a scalable storage backend that dynamically updates and refines the agent's context based on ongoing interactions, effectively allowing the agent to 'self-evolve' its understanding over time. What makes it distinctive is its holistic approach—rather than treating memory, search, and tools as separate modules, it unifies them into a cohesive context engine. It dramatically simplifies the development of complex, persistent agentic systems.
Who is OpenViking for?
This database is built for AI developers, backend engineers, and enterprise architects creating stateful, long-running agent applications. It requires a strong understanding of database systems, API design, and agentic workflows.
How do I get started with OpenViking?
git clone https://github.com/volcengine/OpenViking.git && docker-compose up -d
How popular is OpenViking on GitHub?
volcengine/OpenViking has 39,160 stars and 3,080 forks on GitHub, and gained 535 stars in the last 7 days.
What license does OpenViking use?
volcengine/OpenViking is released under the AGPL-3.0 license.

Star history

since Jul 29, 2026
010K20K30KJul 2026Aug 2026Sep 2026Oct 2026
39.2K stars as of Oct 3, 2026. Measured daily since Jul 29, 2026; GitHub no longer exposes earlier star timestamps.

Contribution activity

commits per day, last 52 weeks
OctNovDecJanFebMarAprMayJunJulAugSepMonWedFri2025-10-04: 0 commits2025-10-05: 0 commits2025-10-06: 0 commits2025-10-07: 0 commits2025-10-08: 0 commits2025-10-09: 0 commits2025-10-10: 0 commits2025-10-11: 0 commits2025-10-12: 0 commits2025-10-13: 0 commits2025-10-14: 0 commits2025-10-15: 0 commits2025-10-16: 0 commits2025-10-17: 0 commits2025-10-18: 0 commits2025-10-19: 0 commits2025-10-20: 0 commits2025-10-21: 0 commits2025-10-22: 0 commits2025-10-23: 0 commits2025-10-24: 0 commits2025-10-25: 0 commits2025-10-26: 0 commits2025-10-27: 0 commits2025-10-28: 0 commits2025-10-29: 0 commits2025-10-30: 0 commits2025-10-31: 0 commits2025-11-01: 0 commits2025-11-02: 0 commits2025-11-03: 0 commits2025-11-04: 0 commits2025-11-05: 0 commits2025-11-06: 0 commits2025-11-07: 0 commits2025-11-09: 0 commits2025-11-10: 0 commits2025-11-11: 0 commits2025-11-12: 0 commits2025-11-13: 0 commits2025-11-14: 0 commits2025-11-15: 0 commits2025-11-16: 0 commits2025-11-17: 0 commits2025-11-18: 0 commits2025-11-19: 0 commits2025-11-20: 0 commits2025-11-21: 0 commits2025-11-22: 0 commits2025-11-23: 0 commits2025-11-24: 0 commits2025-11-25: 0 commits2025-11-26: 0 commits2025-11-27: 0 commits2025-11-28: 0 commits2025-11-29: 0 commits2025-11-30: 0 commits2025-12-01: 0 commits2025-12-02: 0 commits2025-12-03: 0 commits2025-12-04: 0 commits2025-12-05: 0 commits2025-12-06: 0 commits2025-12-07: 0 commits2025-12-08: 0 commits2025-12-09: 0 commits2025-12-10: 0 commits2025-12-11: 0 commits2025-12-12: 0 commits2025-12-13: 0 commits2025-12-14: 0 commits2025-12-15: 0 commits2025-12-16: 0 commits2025-12-17: 0 commits2025-12-18: 0 commits2025-12-19: 0 commits2025-12-20: 0 commits2025-12-21: 0 commits2025-12-22: 0 commits2025-12-23: 0 commits2025-12-24: 0 commits2025-12-25: 0 commits2025-12-26: 0 commits2025-12-27: 0 commits2025-12-28: 0 commits2025-12-29: 0 commits2025-12-30: 0 commits2025-12-31: 0 commits2026-01-01: 0 commits2026-01-02: 0 commits2026-01-03: 0 commits2026-01-04: 0 commits2026-01-05: 0 commits2026-01-06: 0 commits2026-01-07: 0 commits2026-01-08: 0 commits2026-01-09: 0 commits2026-01-10: 0 commits2026-01-11: 0 commits2026-01-12: 0 commits2026-01-13: 0 commits2026-01-14: 0 commits2026-01-15: 0 commits2026-01-16: 0 commits2026-01-17: 0 commits2026-01-18: 0 commits2026-01-19: 0 commits2026-01-20: 0 commits2026-01-21: 0 commits2026-01-22: 0 commits2026-01-23: 0 commits2026-01-24: 0 commits2026-01-25: 0 commits2026-01-26: 0 commits2026-01-27: 0 commits2026-01-28: 0 commits2026-01-29: 10 commits2026-01-30: 6 commits2026-01-31: 3 commits2026-02-01: 0 commits2026-02-02: 4 commits2026-02-03: 4 commits2026-02-04: 8 commits2026-02-05: 11 commits2026-02-06: 10 commits2026-02-07: 5 commits2026-02-08: 1 commit2026-02-09: 13 commits2026-02-10: 7 commits2026-02-11: 7 commits2026-02-12: 9 commits2026-02-13: 13 commits2026-02-14: 18 commits2026-02-15: 0 commits2026-02-16: 4 commits2026-02-17: 3 commits2026-02-18: 6 commits2026-02-19: 3 commits2026-02-20: 10 commits2026-02-21: 4 commits2026-02-22: 8 commits2026-02-23: 6 commits2026-02-24: 6 commits2026-02-25: 14 commits2026-02-26: 9 commits2026-02-27: 16 commits2026-02-28: 20 commits2026-03-01: 1 commit2026-03-02: 5 commits2026-03-03: 9 commits2026-03-04: 12 commits2026-03-05: 23 commits2026-03-06: 11 commits2026-03-07: 0 commits2026-03-08: 4 commits2026-03-09: 12 commits2026-03-10: 13 commits2026-03-11: 2 commits2026-03-12: 11 commits2026-03-13: 14 commits2026-03-14: 12 commits2026-03-15: 8 commits2026-03-16: 17 commits2026-03-17: 18 commits2026-03-18: 12 commits2026-03-19: 25 commits2026-03-20: 20 commits2026-03-21: 11 commits2026-03-22: 10 commits2026-03-23: 15 commits2026-03-24: 24 commits2026-03-25: 13 commits2026-03-26: 13 commits2026-03-27: 18 commits2026-03-28: 5 commits2026-03-29: 4 commits2026-03-30: 10 commits2026-03-31: 26 commits2026-04-01: 10 commits2026-04-02: 14 commits2026-04-03: 16 commits2026-04-04: 4 commits2026-04-05: 9 commits2026-04-06: 4 commits2026-04-07: 8 commits2026-04-08: 19 commits2026-04-09: 17 commits2026-04-10: 9 commits2026-04-11: 2 commits2026-04-12: 3 commits2026-04-13: 12 commits2026-04-14: 22 commits2026-04-15: 16 commits2026-04-16: 14 commits2026-04-17: 13 commits2026-04-18: 3 commits2026-04-19: 6 commits2026-04-20: 12 commits2026-04-21: 11 commits2026-04-22: 18 commits2026-04-23: 11 commits2026-04-24: 14 commits2026-04-25: 8 commits2026-04-26: 0 commits2026-04-27: 19 commits2026-04-28: 21 commits2026-04-29: 18 commits2026-04-30: 10 commits2026-05-01: 2 commits2026-05-02: 1 commit2026-05-03: 1 commit2026-05-04: 6 commits2026-05-05: 0 commits2026-05-06: 15 commits2026-05-07: 20 commits2026-05-08: 19 commits2026-05-09: 14 commits2026-05-10: 1 commit2026-05-11: 13 commits2026-05-12: 21 commits2026-05-13: 18 commits2026-05-14: 21 commits2026-05-15: 19 commits2026-05-16: 0 commits2026-05-17: 2 commits2026-05-18: 13 commits2026-05-19: 5 commits2026-05-20: 9 commits2026-05-21: 21 commits2026-05-22: 12 commits2026-05-23: 2 commits2026-05-24: 2 commits2026-05-25: 18 commits2026-05-26: 9 commits2026-05-27: 11 commits2026-05-28: 12 commits2026-05-29: 15 commits2026-05-30: 2 commits2026-05-31: 4 commits2026-06-01: 17 commits2026-06-02: 10 commits2026-06-03: 10 commits2026-06-04: 18 commits2026-06-05: 17 commits2026-06-06: 3 commits2026-06-07: 0 commits2026-06-08: 24 commits2026-06-09: 8 commits2026-06-10: 16 commits2026-06-11: 8 commits2026-06-12: 5 commits2026-06-13: 6 commits2026-06-14: 2 commits2026-06-15: 15 commits2026-06-16: 13 commits2026-06-17: 22 commits2026-06-18: 10 commits2026-06-19: 3 commits2026-06-20: 5 commits2026-06-21: 0 commits2026-06-22: 14 commits2026-06-23: 14 commits2026-06-24: 17 commits2026-06-25: 12 commits2026-06-26: 12 commits2026-06-27: 0 commits2026-06-28: 0 commits2026-06-29: 7 commits2026-06-30: 12 commits2026-07-01: 10 commits2026-07-02: 23 commits2026-07-03: 11 commits2026-07-04: 0 commits2026-07-05: 0 commits2026-07-06: 9 commits2026-07-07: 15 commits2026-07-08: 17 commits2026-07-09: 6 commits2026-07-10: 16 commits2026-07-11: 7 commits2026-07-12: 0 commits2026-07-13: 25 commits2026-07-14: 11 commits2026-07-15: 11 commits2026-07-16: 13 commits2026-07-17: 4 commits2026-07-18: 1 commit2026-07-19: 3 commits2026-07-20: 9 commits2026-07-21: 5 commits2026-07-22: 15 commits2026-07-23: 9 commits2026-07-24: 16 commits2026-07-25: 3 commits2026-07-26: 3 commits2026-07-27: 9 commits2026-07-28: 12 commits2026-07-29: 12 commits2026-07-30: 14 commits2026-07-31: 15 commits2026-08-01: 1 commit2026-08-02: 0 commits2026-08-03: 11 commits2026-08-04: 7 commits2026-08-05: 9 commits2026-08-06: 12 commits2026-08-07: 16 commits2026-08-08: 3 commits2026-08-09: 0 commits2026-08-10: 20 commits2026-08-11: 8 commits2026-08-12: 12 commits2026-08-13: 10 commits2026-08-14: 10 commits2026-08-15: 1 commit2026-08-16: 0 commits2026-08-17: 6 commits2026-08-18: 24 commits2026-08-19: 13 commits2026-08-20: 13 commits2026-08-21: 12 commits2026-08-22: 2 commits2026-08-23: 0 commits2026-08-24: 26 commits2026-08-25: 15 commits2026-08-26: 24 commits2026-08-27: 11 commits2026-08-28: 15 commits2026-08-29: 2 commits2026-08-30: 2 commits2026-08-31: 24 commits2026-09-01: 14 commits2026-09-02: 13 commits2026-09-03: 9 commits2026-09-04: 25 commits2026-09-05: 2 commits2026-09-06: 1 commit2026-09-07: 16 commits2026-09-08: 24 commits2026-09-09: 16 commits2026-09-10: 14 commits2026-09-11: 17 commits2026-09-12: 5 commits2026-09-13: 2 commits2026-09-14: 20 commits2026-09-15: 23 commits2026-09-16: 17 commits2026-09-17: 23 commits2026-09-18: 17 commits2026-09-19: 9 commits2026-09-20: 16 commits2026-09-21: 26 commits2026-09-22: 24 commits2026-09-23: 19 commits2026-09-24: 28 commits2026-09-25: 11 commits2026-09-26: 1 commit2026-09-27: 0 commits2026-09-28: 0 commits2026-09-29: 0 commits2026-09-30: 0 commits2026-10-01: 0 commits2026-10-02: 0 commits2026-10-03: 0 commits
2,572 commits in the last yearLessMore

Signals and awards

derived from tracked data
  • Widely adopted

    39,160 stars

  • Very active

    2,572 commits in 52 weeks

  • Community-driven

    ~282 contributors

  • Continuous integration

    Automated checks passing

  • Repeat trending

    40 trending appearances

What OpenViking does

OpenViking provides a robust, centralized database architecture specifically designed to manage the context and state of autonomous AI agents. It solves the critical problem of agent amnesia and fragmented knowledge by providing a single interface for managing long-term memory, retrieving external knowledge (RAG), and registering callable skills. The technical foundation relies on a scalable storage backend that dynamically updates and refines the agent's context based on ongoing interactions, effectively allowing the agent to 'self-evolve' its understanding over time. What makes it distinctive is its holistic approach—rather than treating memory, search, and tools as separate modules, it unifies them into a cohesive context engine. It dramatically simplifies the development of complex, persistent agentic systems.

This database is built for AI developers, backend engineers, and enterprise architects creating stateful, long-running agent applications. It requires a strong understanding of database systems, API design, and agentic workflows.

  • Unified Context Management: consolidates agent memory, document retrieval, and tool execution into a single, queryable database layer.
  • Self-Evolving Memory: automatically refines and updates stored context based on user interactions, preventing the buildup of irrelevant data.
  • Integrated Skill Registry: allows developers to register and manage executable plugins directly within the database architecture.
  • Scalable Storage Backend: engineered to handle high-throughput read/write operations required by multi-agent enterprise deployments.
  • Multi-Tenant Architecture: securely isolates context and memory state across different users and agent instances.

Where teams use it

Persistent AI Companions

Developers build highly personalized consumer chatbots that remember detailed user preferences and past conversations across months of usage.

Enterprise Knowledge Agents

Organizations deploy internal support bots that combine company documentation (RAG) with the ability to execute API calls (Skills) seamlessly.

Multi-Agent Orchestration

System architects use the unified database to share context safely and efficiently between different specialized agents in a complex workflow.

Dynamic Data Integration

Data scientists connect real-time data streams to the context database, ensuring agents always have access to the latest market or operational metrics.

Getting started: git clone https://github.com/volcengine/OpenViking.git && docker-compose up -d

README

main branch
OpenViking

OpenViking: The Context Database for AI Agents

English / 中文 / 日本語

Website · Live Demo · GitHub · Issues · Docs

release stars issues contributors license last commit

Deploy on Railway

Lark Lark · WeChat WeChat · Discord Discord · X X

volcengine%2FOpenViking | Trendshift


What is OpenViking

OpenViking is an open-source context database for AI agents — one filesystem for everything an agent knows: knowledge, memory, and skills.

Most agent memory is a black box: text goes in, embeddings come out, and nobody can see what was actually stored. OpenViking organizes context as a virtual filesystem under viking:// instead. Agents navigate it like files — ls, tree, read, write, grep — and you can open any directory to inspect and edit what your agent knows. Every directory carries a generated summary, so agents can scan summaries first and decide what to read.

OpenViking Studio: browse context and try semantic search

Try OpenViking Studio in your browser, no installation required. Self-host Web Studio.

Why OpenViking

  • One filesystem for knowledge, memory, and skills. Resources hold documents and code; memories retain user preferences and experience; skills define how to perform tasks — not just extracted facts, but the full context, each with a viking:// URI for browsing and retrieval. → Viking URI · Context types
  • Search a directory, not the whole index. Scope semantic search to a project or memory subtree instead of scanning a flat vector pool. find runs a query directly; search plans retrieval from session context. → Retrieval
  • Read the summary before the source. Generated directory abstracts (L0) and overviews (L1) let agents judge relevance before opening full content (L2). → Context layers
  • Sessions become files you can read. Committing a session archives the conversation and extracts memories as Markdown you can inspect, edit, and merge. With VikingBot enabled, ov compile organizes source material into a wiki, knowledge graph, or report. → Sessions · Context compilation

Architecture · Design rationale

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.

Semantically processed directories carry L0/L1 summaries, so agents can judge relevance before reading full files:

viking://resources/my_project/
├── .abstract.md           # L0: quick relevance check
├── .overview.md           # L1: structure and key points
└── docs/
    ├── .abstract.md
    ├── .overview.md
    └── api/
        ├── auth.md         # L2: full content, loaded on demand
        └── endpoints.md

Proof it works

OpenViking 0.3.22 has been evaluated on long-conversation user memory (LoCoMo) and multi-turn agent tasks (tau2-bench). Full results and setup details, including knowledge-base QA, are in the benchmark report; reproduction scripts live in ./benchmark.

The memory evaluation used Doubao 2.0 Pro as the VLM and Doubao-embedding-vision-251215 as the embedding model.

Benchmark results. LoCoMo accuracy: OpenClaw 24.20% native vs 82.08% with OpenViking; Hermes 33.38% vs 82.86%; Claude Code 57.21% vs 80.32%. tau2-bench task success: Retail 70.94% vs 77.81%; Airline 54.38% vs 66.25%.
  • 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+ and access to an embedding model and a VLM (cloud or local).

pip install openviking --upgrade
openviking-server init      # configure providers and models
openviking-server doctor    # check configuration and connectivity
openviking-server           # start the server

init writes ~/.openviking/ov.conf. Supported options include Volcengine, OpenAI, Codex OAuth, Kimi, GLM, and local Ollama. See the configuration guide for provider setup and the quick start docs for platform instructions.

The package includes the ov CLI. In another terminal, import a repository and search it:

ov status
ov add-resource https://github.com/volcengine/OpenViking
# Replace TASK_ID with the returned task_id; repeat until status is completed
ov task status TASK_ID
ov ls viking://resources/
ov tree viking://resources/volcengine -L 2
ov find "what is openviking"
ov grep "openviking" --uri viking://resources/volcengine/OpenViking/docs/en

ov find returns matching context with URIs you can inspect. For client configuration (ov config), standalone CLI installs, and index maintenance, see CLI setup.

Build your own integration with the Python, Go, or TypeScript SDK, or the HTTP API.

Use it with your agent

Connect your agent to OpenViking for cross-session memory. Choose a native integration for automatic recall and session capture, or use MCP to give your agent memory and context tools.


Claude

Hooks + MCP

Codex

Hooks + MCP

Cursor

Hooks + MCP

TRAE

Hooks + MCP

OpenClaw

Context engine

Hermes

Built-in

OpenCode

Plugin + MCP

pi

Native extension

DeerFlow

Plugin + MCP

DSH

Plugin + MCP

Doubao Work

Connector

LangChain

Tools + store

General integrations


Agent Plugins 1.0

MCP clients

For setup instructions and integration details, see Integrations.

Desktop App (Beta)

The desktop app is a console for macOS and Windows x64 (beta). It configures supported local agent integrations, inspects recall and capture events in sessions, and syncs local memories and skills to OpenViking.

Download:

VikingBot

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

pip install "openviking[bot]"
openviking-server --with-bot
ov chat   # in another terminal

The official Docker image bundles VikingBot and starts it by default alongside the server and console UI. Details: VikingBot guide.

Deploy in production

Run the open-source server in your own environment under AGPLv3. It requires no activation key. Start with server setup or the Docker and deployment guide.

The server supports accounts and user isolation and opt-in resource ACLs. Configure authentication before exposing it beyond localhost.

Commercial editions

Managed SaaS

☁️ Managed SaaS

Volcano Engine hosts and operates OpenViking. Personal and Enterprise plans cover individual and team use, with migration tooling for open-source deployments. See the service documentation for plans and limits. Hosting outside China is planned on BytePlus.

Self-Managed

🏢 Self-Managed

Deploy in your own cloud account / VPC (BYOC) or an offline environment. This edition adds distributed deployment and official support, activated by a license key. Contact the team.

Research

Memory that evolves with your agent. VikingMem develops an event-driven approach to extracting, updating, and consolidating long-term memory, giving stateful agents a way to retain useful experience as interactions accumulate. OpenViking open-sources a subset of these core capabilities.

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. Presented at VLDB 2026 in September.
📄 Read the paper on arXiv · Read PDF

Directory structure as retrieval context. This paper provides the formal foundations, index design, and experimental evidence behind OpenViking’s directory-aware retrieval. It defines directory-scoped query and maintenance operations and introduces TrieHI, which OpenViking integrates to resolve directory scopes before vector ranking. This connects the filesystem paradigm to retrieval: agents can search a project or memory subtree, retain its surrounding context, and reorganize it as knowledge evolves.

Directory-Aware Query and Maintenance in Vector Databases
Mengzhao Wang, Zheng Gong, Jingpei Hu, Jiajie Fu, Maojia Sheng, Junwen Chen, and Yifan Zhu.
arXiv:2606.16903, 2026. Accepted by ICDE.
📄 Read the paper on arXiv · Read PDF

Retrieve the evidence you need with fewer tokens. VikingRAG combines semantic search with document structure, exposing relevant directory segments as evidence gaps arise. Its core mechanisms are integrated into OpenViking. The paper further explores reusing retrieval traces and escalating to multi-round retrieval only when needed, reducing repeated exploration while preserving answer quality.

VikingRAG: Accurate and Token-efficient Retrieval-augmented Generation over Structured Documents
Peiyuan Gao, Gaoyuan Zhang, Haojie Qin, Yahui Sun, Qianyi Zhang, Yunhao Zhang, Zeyu Wang, and Wei Lu.
arXiv:2609.11390, 2026. Submitted.
📄 Read the paper on arXiv · Read PDF

Partner Projects

  • deer-flow - Open-source long-horizon SuperAgent harness
  • NoKV - AI native distributed file system
  • loopx - Lightweight loop engineering state kernel
  • Hermes Agent - The agent that grows with you

To propose a partnership, open an issue.

Community & Contributing

OpenViking contributors

Security and privacy

For vulnerability reporting and supported versions, see SECURITY.md

License

The OpenViking project uses different licenses for different components:

  • Main Project: AGPLv3 - see the LICENSE file for details
  • crates/ov_cli: Apache 2.0 - see the LICENSE for details
  • examples: Apache 2.0 - see the LICENSE for details. The Hermes plugin in examples/hermes-plugin retains its MIT license.
  • third_party: Respective original licenses of third-party projects
View on GitHub

Recent activity

commits and pull requests

Releases and announcements

86 total
  1. v0.4.21v0.4.21Sep 20, 2026

    # OpenViking v0.4.21 ## 中文 ### 亮点 - 加强存储、队列、路径锁和文件系统稳定性:修复 cp/mv 索引读取、空白资源导入、文件目标误作目录、PathLock 接管、缺失目标锁定、QueueFS 后台队列隔离、completion 状态归属和本地向量存储进程锁。 - 扩展 Agent 和记忆接入能力:新增 Hermes、MiMo/MiMoCode、WorkBuddy 日志源,新增独立 Hermes OpenViking memory provider,支持私有网关 header,并改进插件 hook 与 MCP proxy 连接管理。 - 改进检索和 MCP 行为:新增远程 VikingDB glob,修复 MCP grep 错误报告,MCP `search` 会拒绝 context-only 参数在 list 模式下被静默忽略。 - 提升 Studio 和 VikingBot 体验:新增 VikingBot 会话与飞书接入,优化 Compile workflow、Agent Experience 引导、任务详情、用户分页、主题和本地化展示。 - 改进部署、解析和 SDK:Docker 相对工作区默认落入持久化挂载;Tree-sitter 解析依赖固定到验证版本;Codex 默认模型改为 `gpt-5.6-terra`;Python SDK 支持 Python 3.8。 ### 兼容性与迁移 1. **MCP search 调用方**:默认 `mode=\"list\"` 下,`query_expansion`、`max_tokens`、`quotas`、`purpose`、`detail`、`detail_by_category`、`dedup_turns`、`exclude_uris`、`peer_scope`、`other_peer_penalty`、`other_peer_penalties`、`rewrite` 与 `rewrite_max_bullets` 现在会报参数错误。需要上下文组装时显式传 `mode=\"context\"`;只要排序结果时移除这些字段。 ```python result = await client.search( query=\"incident timeline\", mode=\"context\", max_tokens=4000, exclude_uris=[\"viking://resources/internal.md\"], ) ``` 2. **Python SDK**:`openviking-sdk` 的 `requires-python` 从 `>=3.10` 降到 `>=3

  2. v0.4.20v0.4.20Sep 14, 2026

    # OpenViking v0.4.20 Release Notes / 发布说明 ## 中文 ### 版本概览 本文以 **v0.4.18 为基线,覆盖升级到 v0.4.20 的全部变化**,包含 v0.4.19 已引入的能力,共 95 个提交。 这次升级将 Compile 的任务管理移到 OpenViking:应用提交后,由 OpenViking 持久化、排队、查询和取消任务,Runtime 负责执行和写回产物。Git 技能由服务端统一导入与更新,Studio 增加用户记忆策略、Agent 经验视图和任务执行记录;记忆抽取默认采用受限 Python DSL,长会话按策略分批处理。飞书目录导入和资源权限继承也得到扩展。 升级时重点检查 Compile 旧接口停用、CLI 等待/超时参数移除,以及记忆抽取默认协议变化,详见下文的迁移表。 感谢社区在这段升级范围内的贡献,特别欢迎 7 位首次贡献者;完整名单与对应贡献见[贡献者致谢](#贡献者致谢)。 ### 主要更新 #### 1. Compile 从 Bot 代理转为 OpenViking 托管任务 v0.4.18 中,OpenViking 将 Compile 请求转发给 VikingBot,由 Bot 创建和管理任务。v0.4.19 开始,任务生命周期由 OpenViking 托管;v0.4.20 在这条链路上补齐同目标排队、执行记录和凭证隔离。应用现在通过统一任务接口查看 Compile,与其他后台任务使用相同的查询和取消方式。 ```text v0.4.18 应用 / CLI → OpenViking /bot/v1/compile 代理 → VikingBot 创建任务 → 执行 Skill → 写回 OpenViking 查询 / 取消 → OpenViking Bot 代理 → VikingBot 任务记录 v0.4.20 应用 / CLI / SDK → OpenViking /api/v1/compile → 校验来源、Skill 和目标权限 → 持久化任务 + 入队 → 返回 OpenViking task_id → 按目标调度 → Runtime 执行 → 写回 OpenViking OpenViking → 轮询 Runtime → 保存状态、结果和执行记录 应用 → /api/v1/tasks/{task_id} 查询 / 取消 ``` | 阶段 | v0.4.20 的职责与行为 | | --- | --- | | 提交 | OpenViking

Code frequency

additions and deletions
+242.8K-242.8KWeek of 2026-01-25: +242,772 linesWeek of 2026-01-25: -722 linesWeek of 2026-02-01: +25,948 linesWeek of 2026-02-01: -7,733 linesWeek of 2026-02-08: +47,852 linesWeek of 2026-02-08: -23,704 linesWeek of 2026-02-15: +10,858 linesWeek of 2026-02-15: -1,441 linesWeek of 2026-02-22: +79,035 linesWeek of 2026-02-22: -23,778 linesWeek of 2026-03-01: +17,818 linesWeek of 2026-03-01: -10,314 linesWeek of 2026-03-08: +33,436 linesWeek of 2026-03-08: -13,152 linesWeek of 2026-03-15: +47,138 linesWeek of 2026-03-15: -16,762 linesWeek of 2026-03-22: +63,712 linesWeek of 2026-03-22: -11,733 linesWeek of 2026-03-29: +53,379 linesWeek of 2026-03-29: -25,255 linesWeek of 2026-04-05: +32,078 linesWeek of 2026-04-05: -76,007 linesWeek of 2026-04-12: +58,701 linesWeek of 2026-04-12: -8,806 linesWeek of 2026-04-19: +31,337 linesWeek of 2026-04-19: -5,949 linesWeek of 2026-04-26: +28,115 linesWeek of 2026-04-26: -11,006 linesWeek of 2026-05-03: +45,353 linesWeek of 2026-05-03: -10,686 linesWeek of 2026-05-10: +54,940 linesWeek of 2026-05-10: -15,605 linesWeek of 2026-05-17: +98,495 linesWeek of 2026-05-17: -15,120 linesWeek of 2026-05-24: +32,562 linesWeek of 2026-05-24: -24,618 linesWeek of 2026-05-31: +46,158 linesWeek of 2026-05-31: -27,715 linesWeek of 2026-06-07: +47,352 linesWeek of 2026-06-07: -11,664 linesWeek of 2026-06-14: +70,636 linesWeek of 2026-06-14: -13,684 linesWeek of 2026-06-21: +46,037 linesWeek of 2026-06-21: -10,883 linesWeek of 2026-06-28: +56,343 linesWeek of 2026-06-28: -4,207 linesWeek of 2026-07-05: +58,663 linesWeek of 2026-07-05: -11,751 linesWeek of 2026-07-12: +27,733 linesWeek of 2026-07-12: -17,510 linesWeek of 2026-07-19: +37,246 linesWeek of 2026-07-19: -12,561 linesWeek of 2026-07-26: +73,344 linesWeek of 2026-07-26: -35,104 linesWeek of 2026-08-02: +44,688 linesWeek of 2026-08-02: -15,767 linesWeek of 2026-08-09: +45,074 linesWeek of 2026-08-09: -29,720 linesWeek of 2026-08-16: +40,067 linesWeek of 2026-08-16: -22,500 linesWeek of 2026-08-23: +29,780 linesWeek of 2026-08-23: -9,968 linesWeek of 2026-08-30: +51,459 linesWeek of 2026-08-30: -15,917 linesWeek of 2026-09-06: +54,537 linesWeek of 2026-09-06: -9,564 linesWeek of 2026-09-13: +72,327 linesWeek of 2026-09-13: -52,119 linesWeek of 2026-09-20: +101,781 linesWeek of 2026-09-20: -35,752 linesWeek of 2026-09-27: +0 linesWeek of 2026-09-27: -0 linesJan 25, 2026Sep 27, 2026
+1.9M lines added, -638.8K removed over the last year.

Commits per week

last 52 weeks
1250Week of 2025-10-04: 0 commitsWeek of 2025-10-11: 0 commitsWeek of 2025-10-18: 0 commitsWeek of 2025-10-25: 0 commitsWeek of 2025-11-01: 0 commitsWeek of 2025-11-09: 0 commitsWeek of 2025-11-16: 0 commitsWeek of 2025-11-23: 0 commitsWeek of 2025-11-30: 0 commitsWeek of 2025-12-07: 0 commitsWeek of 2025-12-14: 0 commitsWeek of 2025-12-21: 0 commitsWeek of 2025-12-28: 0 commitsWeek of 2026-01-04: 0 commitsWeek of 2026-01-11: 0 commitsWeek of 2026-01-18: 0 commitsWeek of 2026-01-25: 19 commitsWeek of 2026-02-01: 42 commitsWeek of 2026-02-08: 68 commitsWeek of 2026-02-15: 30 commitsWeek of 2026-02-22: 79 commitsWeek of 2026-03-01: 61 commitsWeek of 2026-03-08: 68 commitsWeek of 2026-03-15: 111 commitsWeek of 2026-03-22: 98 commitsWeek of 2026-03-29: 84 commitsWeek of 2026-04-05: 68 commitsWeek of 2026-04-12: 83 commitsWeek of 2026-04-19: 80 commitsWeek of 2026-04-26: 71 commitsWeek of 2026-05-03: 75 commitsWeek of 2026-05-10: 93 commitsWeek of 2026-05-17: 64 commitsWeek of 2026-05-24: 69 commitsWeek of 2026-05-31: 79 commitsWeek of 2026-06-07: 67 commitsWeek of 2026-06-14: 70 commitsWeek of 2026-06-21: 69 commitsWeek of 2026-06-28: 63 commitsWeek of 2026-07-05: 70 commitsWeek of 2026-07-12: 65 commitsWeek of 2026-07-19: 60 commitsWeek of 2026-07-26: 66 commitsWeek of 2026-08-02: 58 commitsWeek of 2026-08-09: 61 commitsWeek of 2026-08-16: 70 commitsWeek of 2026-08-23: 93 commitsWeek of 2026-08-30: 89 commitsWeek of 2026-09-06: 93 commitsWeek of 2026-09-13: 111 commitsWeek of 2026-09-20: 125 commitsWeek of 2026-09-27: 0 commitsOct 4, 2025Sep 27, 2026
2.6K commits in the last 52 weeks.

When work happens

weekday and hour
SunMonTueWedThuFriSat036912151821Sun 0:00 — 1 commitsSun 1:00 — 4 commitsSun 2:00 — 1 commitsSun 3:00 — 0 commitsSun 4:00 — 0 commitsSun 5:00 — 0 commitsSun 6:00 — 2 commitsSun 7:00 — 1 commitsSun 8:00 — 0 commitsSun 9:00 — 7 commitsSun 10:00 — 5 commitsSun 11:00 — 5 commitsSun 12:00 — 0 commitsSun 13:00 — 6 commitsSun 14:00 — 8 commitsSun 15:00 — 3 commitsSun 16:00 — 1 commitsSun 17:00 — 4 commitsSun 18:00 — 11 commitsSun 19:00 — 4 commitsSun 20:00 — 7 commitsSun 21:00 — 6 commitsSun 22:00 — 7 commitsSun 23:00 — 10 commitsMon 0:00 — 3 commitsMon 1:00 — 3 commitsMon 2:00 — 3 commitsMon 3:00 — 1 commitsMon 4:00 — 1 commitsMon 5:00 — 1 commitsMon 6:00 — 0 commitsMon 7:00 — 4 commitsMon 8:00 — 4 commitsMon 9:00 — 4 commitsMon 10:00 — 24 commitsMon 11:00 — 53 commitsMon 12:00 — 17 commitsMon 13:00 — 19 commitsMon 14:00 — 40 commitsMon 15:00 — 43 commitsMon 16:00 — 44 commitsMon 17:00 — 52 commitsMon 18:00 — 23 commitsMon 19:00 — 36 commitsMon 20:00 — 43 commitsMon 21:00 — 33 commitsMon 22:00 — 7 commitsMon 23:00 — 4 commitsTue 0:00 — 1 commitsTue 1:00 — 1 commitsTue 2:00 — 1 commitsTue 3:00 — 0 commitsTue 4:00 — 1 commitsTue 5:00 — 1 commitsTue 6:00 — 3 commitsTue 7:00 — 1 commitsTue 8:00 — 2 commitsTue 9:00 — 6 commitsTue 10:00 — 15 commitsTue 11:00 — 64 commitsTue 12:00 — 29 commitsTue 13:00 — 14 commitsTue 14:00 — 44 commitsTue 15:00 — 41 commitsTue 16:00 — 36 commitsTue 17:00 — 32 commitsTue 18:00 — 27 commitsTue 19:00 — 31 commitsTue 20:00 — 42 commitsTue 21:00 — 25 commitsTue 22:00 — 15 commitsTue 23:00 — 14 commitsWed 0:00 — 6 commitsWed 1:00 — 3 commitsWed 2:00 — 0 commitsWed 3:00 — 3 commitsWed 4:00 — 0 commitsWed 5:00 — 0 commitsWed 6:00 — 0 commitsWed 7:00 — 0 commitsWed 8:00 — 1 commitsWed 9:00 — 4 commitsWed 10:00 — 15 commitsWed 11:00 — 64 commitsWed 12:00 — 24 commitsWed 13:00 — 12 commitsWed 14:00 — 47 commitsWed 15:00 — 45 commitsWed 16:00 — 40 commitsWed 17:00 — 54 commitsWed 18:00 — 24 commitsWed 19:00 — 31 commitsWed 20:00 — 33 commitsWed 21:00 — 31 commitsWed 22:00 — 19 commitsWed 23:00 — 5 commitsThu 0:00 — 6 commitsThu 1:00 — 0 commitsThu 2:00 — 2 commitsThu 3:00 — 2 commitsThu 4:00 — 2 commitsThu 5:00 — 4 commitsThu 6:00 — 1 commitsThu 7:00 — 0 commitsThu 8:00 — 1 commitsThu 9:00 — 1 commitsThu 10:00 — 13 commitsThu 11:00 — 45 commitsThu 12:00 — 29 commitsThu 13:00 — 20 commitsThu 14:00 — 41 commitsThu 15:00 — 38 commitsThu 16:00 — 43 commitsThu 17:00 — 66 commitsThu 18:00 — 27 commitsThu 19:00 — 42 commitsThu 20:00 — 51 commitsThu 21:00 — 29 commitsThu 22:00 — 16 commitsThu 23:00 — 8 commitsFri 0:00 — 2 commitsFri 1:00 — 6 commitsFri 2:00 — 4 commitsFri 3:00 — 0 commitsFri 4:00 — 4 commitsFri 5:00 — 1 commitsFri 6:00 — 0 commitsFri 7:00 — 1 commitsFri 8:00 — 2 commitsFri 9:00 — 2 commitsFri 10:00 — 7 commitsFri 11:00 — 51 commitsFri 12:00 — 25 commitsFri 13:00 — 19 commitsFri 14:00 — 54 commitsFri 15:00 — 54 commitsFri 16:00 — 49 commitsFri 17:00 — 46 commitsFri 18:00 — 29 commitsFri 19:00 — 34 commitsFri 20:00 — 33 commitsFri 21:00 — 19 commitsFri 22:00 — 4 commitsFri 23:00 — 13 commitsSat 0:00 — 5 commitsSat 1:00 — 6 commitsSat 2:00 — 1 commitsSat 3:00 — 1 commitsSat 4:00 — 0 commitsSat 5:00 — 0 commitsSat 6:00 — 0 commitsSat 7:00 — 1 commitsSat 8:00 — 1 commitsSat 9:00 — 6 commitsSat 10:00 — 11 commitsSat 11:00 — 10 commitsSat 12:00 — 7 commitsSat 13:00 — 5 commitsSat 14:00 — 12 commitsSat 15:00 — 17 commitsSat 16:00 — 15 commitsSat 17:00 — 10 commitsSat 18:00 — 11 commitsSat 19:00 — 9 commitsSat 20:00 — 15 commitsSat 21:00 — 5 commitsSat 22:00 — 7 commitsSat 23:00 — 10 commits
Commit volume by weekday and hour (UTC). Larger dots mean more commits.
DateListRankStars gained
Sep 17, 2026monthly#13+9,114
Sep 16, 2026monthly#13+9,114
Sep 15, 2026monthly#10+8,921
Sep 14, 2026monthly#5+8,745
Sep 13, 2026monthly#5+8,682
Sep 12, 2026monthly#6+8,596
Sep 11, 2026monthly#7+8,469
Sep 10, 2026monthly#6+8,284
Sep 9, 2026monthly#6+8,115
Sep 8, 2026monthly#6+7,993
Sep 7, 2026monthly#5+7,895
Sep 6, 2026monthly#7+7,811
Sep 5, 2026monthly#6+7,710
Sep 4, 2026monthly#6+7,659
Sep 3, 2026monthly#6+7,539