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
28K
+82 today
Forks
2.2K
Watchers
75
Open issues
98
Open PRs
346
Contributors
~205
Commits
1.8K
Branches
179

PythonAGPL-3.0Created Jan 5, 2026Last push 1d agoLatest release v0.4.11+375 stars this week+375 this month

Star history

since Jan 25, 2026
010K20KJan 2026Mar 2026Jun 2026Aug 2026
28K stars as of Aug 6, 2026, tracked back to Jan 25, 2026. Historical curve reconstructed from public GitHub event archives, calibrated to the current total.

Contribution activity

commits per day, last 52 weeks
AugSepOctNovDecJanFebMarAprMayJunJulMonWedFri2025-08-02: 0 commits2025-08-03: 0 commits2025-08-04: 0 commits2025-08-05: 0 commits2025-08-06: 0 commits2025-08-07: 0 commits2025-08-08: 0 commits2025-08-09: 0 commits2025-08-10: 0 commits2025-08-11: 0 commits2025-08-12: 0 commits2025-08-13: 0 commits2025-08-14: 0 commits2025-08-15: 0 commits2025-08-16: 0 commits2025-08-17: 0 commits2025-08-18: 0 commits2025-08-19: 0 commits2025-08-20: 0 commits2025-08-21: 0 commits2025-08-22: 0 commits2025-08-23: 0 commits2025-08-24: 0 commits2025-08-25: 0 commits2025-08-26: 0 commits2025-08-27: 0 commits2025-08-28: 0 commits2025-08-29: 0 commits2025-08-30: 0 commits2025-08-31: 0 commits2025-09-01: 0 commits2025-09-02: 0 commits2025-09-03: 0 commits2025-09-04: 0 commits2025-09-05: 0 commits2025-09-06: 0 commits2025-09-07: 0 commits2025-09-08: 0 commits2025-09-09: 0 commits2025-09-10: 0 commits2025-09-11: 0 commits2025-09-12: 0 commits2025-09-13: 0 commits2025-09-14: 0 commits2025-09-15: 0 commits2025-09-16: 0 commits2025-09-17: 0 commits2025-09-18: 0 commits2025-09-19: 0 commits2025-09-20: 0 commits2025-09-21: 0 commits2025-09-22: 0 commits2025-09-23: 0 commits2025-09-24: 0 commits2025-09-25: 0 commits2025-09-26: 0 commits2025-09-27: 0 commits2025-09-28: 0 commits2025-09-29: 0 commits2025-09-30: 0 commits2025-10-01: 0 commits2025-10-02: 0 commits2025-10-03: 0 commits2025-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: 0 commits2026-07-31: 0 commits2026-08-01: 0 commits
1,842 commits in the last yearLessMore

Signals and awards

derived from tracked data
  • Widely adopted

    27,995 stars

  • Very active

    1,842 commits in 52 weeks

  • Community-driven

    ~205 contributors

  • Continuous integration

    Automated checks passing

  • Repeat trending

    8 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

👋 Join our Community

📱 Lark Group · WeChat · Discord · X

volcengine%2FOpenViking | Trendshift


What is OpenViking

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.

OpenViking Studio playground

The OpenViking Studio playground — a live demo you can open in the browser, no installation required.

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. → Viking URI · Context types
  • 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
  • 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
  • Observable retrieval. Each query preserves its directory-browsing trajectory. When a result looks wrong, you can see exactly which path produced it. → Retrieval
  • Sessions become memory. After a session commits, OpenViking asynchronously extracts user preferences and agent experience into long-term memory. → Session

How the pieces fit together: Architecture. The thinking behind the design: The Database Paradigm for Context Engineering.

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.

Each directory carries its own L0/L1 layers, so relevance can be judged before any full file is read:

viking://resources/my_project/
├── .abstract               # L0: ~100 tokens - quick relevance check
├── .overview               # L1: ~2k tokens - structure and key points
└── docs/
    ├── .abstract
    ├── .overview
    └── 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.

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

💡 Want to see it in action first? Try OpenViking Studio — a live hosted instance with a context playground, semantic search, and a multi-agent hub. No installation required.

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 (background: nohup openviking-server > openviking.log 2>&1 &)

init walks you through provider setup and writes ~/.openviking/ov.conf. It supports Volcengine, OpenAI, Codex OAuth, Kimi, GLM, and local Ollama — for Ollama it can detect and install the runtime and pull models suited to your hardware. doctor checks the config file, Python version, provider connectivity, and disk space without a running server. Manual ov.conf templates, per-provider examples, environment variables, and Windows setup: Configuration guide · Quick start docs.

The install already includes the ov client CLI. With the server running:

ov status
ov add-resource https://github.com/volcengine/OpenViking # --wait
ov ls viking://resources/
ov tree viking://resources/volcengine -L 2
# wait some time for semantic processing if not --wait
ov find "what is openviking"
ov grep "openviking" --uri viking://resources/volcengine/OpenViking/docs/en

Next steps:

  • Client configuration (ov config), standalone CLI installs (npm / cargo), and advanced usage such as index rebuilding: CLI setup
  • Docker and production deployment: Deployment guide

Use it with your agent

Integrations inject OpenViking recall into your agent's context and auto-commit session memory:

Setup instructions for each agent: Agent integrations overview.

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.

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

For production, run OpenViking as a standalone HTTP service — see Server deployment and the Deployment guide.

Prefer not to operate it yourself? OpenViking Personal is officially hosted and ready to use, scales far beyond local hardware with VikingDB, and includes a free trial for up to 50 files; existing open-source users can move over with the migration tool. → openviking.ai

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. 📄 Read the paper on arXiv

Community & contributing

OpenViking is still in its early stages, and there is plenty left to build.

Security and privacy

This project takes security seriously. 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
  • third_party: Respective original licenses of third-party projects
View on GitHub

Recent activity

commits and pull requests

Releases and announcements

63 total
  1. v0.4.11v0.4.11Jul 23, 2026

    Release date / 发布日期: 2026-07-23 --- ### 版本概览 OpenViking v0.4.11 是一个包含 45 个提交的维护与性能版本。该版本重点改进检索标签语义、cuVS 查询吞吐、飞书/Lark 资源导入和 Python SDK 可观测性,并集中修复资源队列、事务锁、会话上下文、解析器和 CLI 的可靠性问题。 ### 主要更新 - **检索标签改为严格 AND 语义**:`find()` 和 `search()` 的多个 `tags` 现在要求结果包含全部标签,REST API、Python SDK、CLI、本地客户端和 LangChain 集成保持一致。 - **cuVS 支持可选的请求 micro-batching**:兼容的 exact brute-force 查询可合并为一次 GPU matrix search;同时降低恢复和过滤搜索的主机开销,并避免加载未请求的向量字段。 - **飞书/Lark URL 可经 UnderstandingAPI 导入**:支持异步导入、最终资源 URI 回填、产物图片重写和安全的临时凭证传递。 - **Python SDK 支持 HTTP 事件钩子**:`AsyncHTTPClient` 和 `SyncHTTPClient` 可通过 `event_hooks` 接入 `httpx.AsyncClient` 的异步 request/response hooks。 ### 新功能用法 #### 使用多个检索标签 ```python import openviking as ov client = ov.SyncHTTPClient( url="http://localhost:1933", api_key="your-key", ) client.initialize() results = client.find( "rollback runbook", tags=["env=prod", "team=search"], ) ``` 上述查询只返回同时包含 `env=prod` 和 `team=search` 的结果。标签必须使用严格的 `k=v` 格式。 #### 为 Python SDK 添加请求钩子 ```python from openviking_sdk import AsyncHTTPClient async def on_request(request): print(request.method, request.url) client = AsyncHTTPClient( url="http:

  2. python-sdk@0.1.5python-sdk@0.1.5Jul 23, 2026
  3. cli@0.4.11cli@0.4.11Jul 23, 2026
  4. sdk/go/v0.0.1sdk/go/v0.0.1Jul 22, 2026

    sdk/go/v0.0.1

  5. v0.4.10v0.4.10Jul 16, 2026

    ## OpenViking v0.4.10 发布说明 OpenViking v0.4.10 重点增强了资源导入、重建索引、会话持久化、MCP 兼容性、媒体解析、记忆插件写入性能和 usage reporting 能力。本次发版包含较多代码层面的稳定性修复:reindex 会保留内容 owner,可清理孤儿向量;Session commit 的第二阶段改为 QueueFS 持久队列;MCP 对外暴露的 tool schema 更适配严格 function-calling API;Connector 导入、memory plugin 批量写入和 VectorDB 批量 upsert 也都有实质增强。 ## 重点变化 ### Reindex 与资源一致性 - Reindex 现在会按配置的 VLM 并发数创建 `SemanticProcessor`,避免维护任务绕过全局并发控制。([#3220](https://github.com/volcengine/OpenViking/pull/3220)) - Reindex 写回语义和向量记录时会根据目标 URI 切换到内容 owner 上下文,避免 admin 或维护任务把用户资源、memory、skill 的 owner 改写掉。该改动同时为 Python、TypeScript、Go 客户端暴露了 `dry_run` 参数。([#3096](https://github.com/volcengine/OpenViking/pull/3096)) - 新增 `prune_orphans` reindex 模式,可扫描 resource、memory、skill 向量记录,识别源文件、`.abstract.md`、`.overview.md` 或 memory chunk 已不存在的孤儿记录,并支持 dry-run 预览待删除数量。([#3096](https://github.com/volcengine/OpenViking/pull/3096)) - 修复资源 auto-naming 预约失败时吞掉锁竞争/背压错误的问题,避免并发导入时误报为普通命名失败。([#3201](https://github.com/volcengine/OpenViking/pull/3201)) - 一致性检查拒绝 `file://` URI,避免本地文件路径被误用到 VikingFS 资源一致性流程。([#3133](https://github.com/volcengine/OpenViking/pull/3133)) - 子目录 overview summary 改为批量处理,减少重复生成和队列侧不一致。([#3154](https://github.com/volcengine/OpenVi

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: +55,471 linesWeek of 2026-07-26: -26,527 linesJan 25, 2026Jul 26, 2026
+1.4M lines added, -438.9K removed over the last year.

Commits per week

last 52 weeks
1110Week of 2025-08-02: 0 commitsWeek of 2025-08-09: 0 commitsWeek of 2025-08-16: 0 commitsWeek of 2025-08-23: 0 commitsWeek of 2025-08-30: 0 commitsWeek of 2025-09-06: 0 commitsWeek of 2025-09-13: 0 commitsWeek of 2025-09-20: 0 commitsWeek of 2025-09-27: 0 commitsWeek 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: 36 commitsAug 2, 2025Jul 26, 2026
1.8K commits in the last 52 weeks.

When work happens

weekday and hour
SunMonTueWedThuFriSat036912151821Sun 0:00 — 1 commitsSun 1:00 — 3 commitsSun 2:00 — 0 commitsSun 3:00 — 0 commitsSun 4:00 — 0 commitsSun 5:00 — 0 commitsSun 6:00 — 1 commitsSun 7:00 — 1 commitsSun 8:00 — 0 commitsSun 9:00 — 7 commitsSun 10:00 — 5 commitsSun 11:00 — 4 commitsSun 12:00 — 0 commitsSun 13:00 — 6 commitsSun 14:00 — 4 commitsSun 15:00 — 3 commitsSun 16:00 — 0 commitsSun 17:00 — 1 commitsSun 18:00 — 10 commitsSun 19:00 — 3 commitsSun 20:00 — 4 commitsSun 21:00 — 2 commitsSun 22:00 — 7 commitsSun 23:00 — 10 commitsMon 0:00 — 2 commitsMon 1:00 — 2 commitsMon 2:00 — 2 commitsMon 3:00 — 1 commitsMon 4:00 — 1 commitsMon 5:00 — 1 commitsMon 6:00 — 0 commitsMon 7:00 — 3 commitsMon 8:00 — 3 commitsMon 9:00 — 2 commitsMon 10:00 — 21 commitsMon 11:00 — 33 commitsMon 12:00 — 13 commitsMon 13:00 — 15 commitsMon 14:00 — 25 commitsMon 15:00 — 32 commitsMon 16:00 — 22 commitsMon 17:00 — 31 commitsMon 18:00 — 16 commitsMon 19:00 — 23 commitsMon 20:00 — 29 commitsMon 21:00 — 27 commitsMon 22:00 — 6 commitsMon 23:00 — 3 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 — 2 commitsTue 7:00 — 1 commitsTue 8:00 — 2 commitsTue 9:00 — 6 commitsTue 10:00 — 8 commitsTue 11:00 — 47 commitsTue 12:00 — 14 commitsTue 13:00 — 9 commitsTue 14:00 — 32 commitsTue 15:00 — 24 commitsTue 16:00 — 23 commitsTue 17:00 — 23 commitsTue 18:00 — 21 commitsTue 19:00 — 23 commitsTue 20:00 — 29 commitsTue 21:00 — 17 commitsTue 22:00 — 12 commitsTue 23:00 — 9 commitsWed 0:00 — 6 commitsWed 1:00 — 3 commitsWed 2:00 — 0 commitsWed 3:00 — 2 commitsWed 4:00 — 0 commitsWed 5:00 — 0 commitsWed 6:00 — 0 commitsWed 7:00 — 0 commitsWed 8:00 — 1 commitsWed 9:00 — 3 commitsWed 10:00 — 10 commitsWed 11:00 — 43 commitsWed 12:00 — 13 commitsWed 13:00 — 9 commitsWed 14:00 — 34 commitsWed 15:00 — 38 commitsWed 16:00 — 29 commitsWed 17:00 — 37 commitsWed 18:00 — 22 commitsWed 19:00 — 23 commitsWed 20:00 — 26 commitsWed 21:00 — 22 commitsWed 22:00 — 13 commitsWed 23:00 — 4 commitsThu 0:00 — 5 commitsThu 1:00 — 0 commitsThu 2:00 — 2 commitsThu 3:00 — 1 commitsThu 4:00 — 1 commitsThu 5:00 — 3 commitsThu 6:00 — 1 commitsThu 7:00 — 0 commitsThu 8:00 — 1 commitsThu 9:00 — 1 commitsThu 10:00 — 10 commitsThu 11:00 — 31 commitsThu 12:00 — 22 commitsThu 13:00 — 15 commitsThu 14:00 — 24 commitsThu 15:00 — 27 commitsThu 16:00 — 28 commitsThu 17:00 — 51 commitsThu 18:00 — 20 commitsThu 19:00 — 29 commitsThu 20:00 — 38 commitsThu 21:00 — 24 commitsThu 22:00 — 13 commitsThu 23:00 — 6 commitsFri 0:00 — 2 commitsFri 1:00 — 6 commitsFri 2:00 — 4 commitsFri 3:00 — 0 commitsFri 4:00 — 2 commitsFri 5:00 — 1 commitsFri 6:00 — 0 commitsFri 7:00 — 0 commitsFri 8:00 — 2 commitsFri 9:00 — 2 commitsFri 10:00 — 7 commitsFri 11:00 — 37 commitsFri 12:00 — 12 commitsFri 13:00 — 14 commitsFri 14:00 — 36 commitsFri 15:00 — 38 commitsFri 16:00 — 36 commitsFri 17:00 — 30 commitsFri 18:00 — 24 commitsFri 19:00 — 20 commitsFri 20:00 — 21 commitsFri 21:00 — 15 commitsFri 22:00 — 3 commitsFri 23:00 — 9 commitsSat 0:00 — 4 commitsSat 1:00 — 1 commitsSat 2:00 — 1 commitsSat 3:00 — 1 commitsSat 4:00 — 0 commitsSat 5:00 — 0 commitsSat 6:00 — 0 commitsSat 7:00 — 0 commitsSat 8:00 — 0 commitsSat 9:00 — 6 commitsSat 10:00 — 9 commitsSat 11:00 — 10 commitsSat 12:00 — 7 commitsSat 13:00 — 5 commitsSat 14:00 — 12 commitsSat 15:00 — 13 commitsSat 16:00 — 13 commitsSat 17:00 — 10 commitsSat 18:00 — 9 commitsSat 19:00 — 8 commitsSat 20:00 — 11 commitsSat 21:00 — 4 commitsSat 22:00 — 5 commitsSat 23:00 — 10 commits
Commit volume by weekday and hour (UTC). Larger dots mean more commits.
DateListRankStars gained
Mar 17, 2026daily#18+179
Mar 16, 2026daily#11+287
Mar 15, 2026daily#7+511
Mar 14, 2026daily#9+437
Mar 13, 2026daily#9+311
Mar 12, 2026daily#18+191
Feb 18, 2026daily#24+126
Feb 17, 2026daily#10+202