Skip to content

Releases: volcengine/OpenViking

v0.2.6

11 Mar 12:55
03d6eef

Choose a tag to compare

OpenViking v0.2.6 发布公告

OpenViking v0.2.6 已发布。

这是一次聚焦体验优化和稳定性增强的小版本更新。相比 v0.2.5,这一版不仅带来了更顺手的命令行交互和全新的 Console,也补齐了会话异步提交、后台任务跟踪、资源导入目录结构保留等关键能力,同时在 openclaw memory plugin、安装流程、跨平台兼容性和 CI 稳定性上做了大量修复与打磨。

重点更新

1. CLI 与对话体验进一步升级

  • ov chat 现在基于 rustyline 提供更完整的行编辑体验,终端交互更自然,不再出现常见的方向键控制字符问题。
  • 新增 Markdown 渲染能力,终端中的回答展示更清晰,代码块、列表等内容可读性更好。
  • 支持聊天历史记录,同时提供关闭格式化和关闭历史记录的选项,便于在不同终端环境中按需使用。

2. 服务端异步能力增强,长任务不再轻易阻塞

  • Session commit 新增异步提交能力,并支持通过 wait 参数控制是否同步等待结果。
  • 当选择后台执行时,OpenViking 现在会返回可追踪的任务信息,调用方可以通过任务接口查询状态、结果或错误。
  • 服务端新增可配置 worker count,进一步缓解单 worker 场景下长任务阻塞请求的问题。

这意味着在记忆提取、归档总结等耗时操作较多的场景下,服务端的可用性和可观测性都有明显提升。

3. 新增 Console,并持续增强 Bot 与资源操作能力

  • 本版本新增独立的 OpenViking Console,提供更直观的 Web 控制台入口,方便调试、调用和查看接口结果。
  • Bot 能力继续增强,新增 eval 能力,开放 add-resource 工具,并支持飞书进度通知等扩展能力。
  • 资源导入支持 preserve_structure 选项,扫描目录时可以保留原始目录层级,适合更复杂的知识组织方式。
  • 同时修复了 grep、glob、add-resource 等场景下的一些响应问题,提升日常使用稳定性。

4. openclaw memory plugin 能力和稳定性大幅完善

  • openclaw memory plugin 在这一版中获得了较大幅度增强,补充了更完整的插件能力与相关示例。
  • 插件安装链路进一步完善,现已支持通过 npm 包方式安装 setup-helper,部署和升级都更直接。
  • 修复了本地运行、端口管理、配置保留、缺失文件下载、配置覆盖等一系列影响安装和使用体验的问题。
  • Memory consolidation 与 skill tool memory 相关问题也得到修复,进一步提升记忆链路的稳定性。
  • Vikingbot 作为 OpenViking 可选依赖的集成方式也做了完善,降低了插件和 bot 协同使用时的接入门槛。

对于希望将 OpenViking 与 memory / agent 工作流结合使用的开发者来说,这一版的可用性提升会比较明显。

5. 安装、跨平台与工程质量继续补强

  • 新增 Linux ARM 支持,进一步扩展了 OpenViking 的部署平台范围。
  • 修复了 Windows 下 UTF-8 BOM 配置文件的兼容问题,减少配置读取失败的情况。
  • 修复了 install.shov.conf.example、setup 失败退出等问题,并补充了 openclaw memory plugin 的 npm 包安装路径,提升首次安装和配置过程的成功率。
  • CI 侧将 GitHub Actions runner 固定到明确 OS 版本,减少环境漂移带来的构建与发布不确定性。

总结

v0.2.6 是一个兼顾新能力与稳定性的版本。

如果你主要通过 CLI 或 Bot 使用 OpenViking,这一版会带来更顺手的交互体验;如果你在服务端接入中依赖会话提交、记忆提取和后台任务执行,这一版会带来更好的异步能力与可观测性;如果你在尝试 openclaw memory plugin 或跨平台部署,这一版也补上了不少过去容易踩坑的细节。

欢迎社区继续反馈使用体验、提交 Issue 和 PR,一起把 OpenViking 打磨得更稳、更好用。

New Contributors

感谢所有参与 v0.2.6 开发、修复、文档和工程改进的贡献者。

Full Changelog

v0.2.5...v0.2.6

What's Changed

  • feat: improve ov chat UX with rustyline and markdown rendering by @chenjw in #466
  • fix: grep for binding-client by @markwhen in #474
  • feat(server): add configurable worker count to prevent single-worker blocking by @r266-tech in #470
  • feat(sessions): add async commit support with wait parameter by @dr3243636-ops in #472
  • [feat]: openclaw-memory-plugin: 新增插件功能 by @qin-ptr in #479
  • fix: openclaw plugin local run by @qin-ptr in #480
  • feat: support linux arm by @zhoujh01 in #482
  • fix: fix ov.conf.example by @zhoujh01 in #488
  • fix vikingbot grep/glob/add_resource get response issue by @typeck in #491
  • docs: translate VLM providers section in README to English by @ctudoudou in #487
  • refactor: remove agfs port configuration by @qin-ctx in #483
  • fix: add-resource --to and --parent by @MaojiaSheng in #475
  • fix: fix err log by @zhoujh01 in #495
  • fix: remve emtpy merge by @zhoujh01 in #496
  • fix(search): use session summaries in search and cap intent summary l… by @lixingjia77 in #494
  • fix: improve file type detection and C/C++ AST extraction by @yangxinxin-7 in #497
  • Revert "refactor: remove agfs port configuration" by @Soda-Wong in #498
  • Fix/bot Fix Memory Consolidation Issues and Integrate Vikingbot as OpenViking Optional Dependency by @chenjw in #492
  • fix(config): handle UTF-8 BOM in config files on Windows (#499) by @r266-tech in #500
  • fix #477 by @chenjw in #503
  • fix(setup): quit setup when fail by @zhoujh01 in #504
  • feat(tasks): add async task tracking API for background operations by @dr3243636-ops in #476
  • fix(openclaw-memory-plugin): improve port management and preserve existing config by @qin-ctx in #513
  • docs: OpenViking Skills for search, add, operate by @MaojiaSheng in #510
  • fix(openclaw-memory-plugin): add missing files and merge config instead of overwriting by @qin-ctx in #516
  • fix install.sh by @qin-ptr in #517
  • feat: Add console by @zhoujh01 in #383
  • feat(bot):Add eval function(support locomo, skillsbench), open add-resource tool, add feishu progress notification capability by @yeshion23333 in #506
  • Fix/skill tool memory by @BytedanceFu in #514
  • feat(resource): add preserve_structure option for directory scanning by @r266-tech in #509
  • ci: pin GitHub Actions runners to explicit OS versions by @zhoujh01 in #508
  • feat(setup-helper): 用 install.js 替换 cli.js,发布为 npm 包 by @LinQiang391 in #524

New Contributors

Full Changelog: v0.2.5...v0.2.6

v0.2.5

06 Mar 08:36
988a516

Choose a tag to compare

What's Changed

  • docs: use openviking-server to launch server by @MaojiaSheng in #398
  • fix: Session.add_message() support parts parameter by @qin-ctx in #399
  • feat: support GitHub tree/ URL for code repository import by @yangxinxin-7 in #400
  • fix: improve ISO datetime parsing by @zztdandan in #404
  • feat(pdf): extract bookmarks as markdown headings for hierarchical parsing by @r266-tech in #403
  • feat: add index control to add_resource and refactor embedding logic by @Jay-ju in #401
  • fix: support short-format URIs in VikingURI and VikingFS access control by @r266-tech in #402
  • fix: handle None data in skill_processor._parse_skill() by @r266-tech in #405
  • fix: fix add-resource by @zhoujh01 in #409
  • fix: treat only .zip as archive; avoid unzipping ZIP-based container … by @sponge225 in #410
  • fix(cli): support git@ SSH URL format in add-resource by @myysy in #411
  • feat(pdf): add font-based heading detection and refactor PDF/Markdown parsing by @qin-ctx in #413
  • 支持通过curl方式安装部署openclaw+openviking插件 by @LinQiang391 in #415
  • Feature/vikingbot_opt: OpenAPI interface standardization;Feishu multi-user experience; observability enhancements; configuration system modernization. by @chenjw in #419
  • docs: pip upgrade suggestion by @MaojiaSheng in #418
  • feat: define a system path for future deployment by @MaojiaSheng in #423
  • chore: downgrade golang version limit, update vlm version to seed 2.0 by @MaojiaSheng in #425
  • [fix]: 修复通过curl命令安装场下下ubuntu/debian等系统触发系统保护无法安装的openviking的问题 by @LinQiang391 in #426
  • fix(session): trigger semantic indexing for parent directory after memory extraction by @qin-ctx in #429
  • feat(bot):Refactoring, New Evaluation Module, Feishu channel Opt & Feature Enhancements by @yeshion23333 in #428
  • chore: agfs-client默认切到binding-client模式 by @chuanbao666 in #430
  • feat(agfs): add ripgrep-based grep acceleration and fix vimgrep line parser by @yangxinxin-7 in #432
  • [WIP] ci: add automated PR review workflow using Doubao model by @qin-ctx in #434
  • fix(ci): use OPENAI_KEY instead of OPENAI.KEY in pr-review workflow by @qin-ctx in #435
  • build(deps): bump actions/download-artifact from 7 to 8 by @dependabot[bot] in #442
  • build(deps): bump actions/upload-artifact from 6 to 7 by @dependabot[bot] in #441
  • build(deps): bump docker/login-action from 3 to 4 by @dependabot[bot] in #440
  • build(deps): bump docker/setup-qemu-action from 3 to 4 by @dependabot[bot] in #438
  • build(deps): bump docker/setup-buildx-action from 3 to 4 by @dependabot[bot] in #439
  • fix(packaging): sdist 排除运行时二进制 by @zhoujh01 in #447
  • ci: enhance PR review with severity classification and checklist by @qin-ctx in #437
  • enable injection for Collection and CollectionAdaptor by @zhougit86 in #414
  • chore: 编译子命令失败报错, golang版本最低要求1.22+ by @chuanbao666 in #444
  • feat(viking_fs) support async grep by @typeck in #448
  • OpenViking Plugin Exception Handling & Fixing by @wlff123 in #449
  • feat(agfs): make binding client optional, add server bootstrap, tune logging and CI by @qin-ctx in #451
  • fix: rust compile in uv pip install -e . by @MaojiaSheng in #452
  • [wip]Enhance OpenViking Status Checks in the OpenClaw Plugin by @wlff123 in #453
  • FIX: fixes multiple issues in the OpenViking chat functionality and unifies session ID generation logic between Python and Rust CLI implementations. by @chenjw in #446
  • chore: 增加Makefile,方便build by @chuanbao666 in #450
  • fix(bot): fix Telegram channel init crash and empty content for Claude by @ponsde in #421
  • fix: suport uv pip install openviking[bot] by @chenjw in #457
  • fix: agfs-client默认使用http-client by @chuanbao666 in #459
  • fix(agfs): fix agfs binding-client import error by @chuanbao666 in #458
  • openclaw-memory-plugin: ov.conf backend/agfs, default embedding 25121… by @LinQiang391 in #460
  • vikingbot version to 3.10 by @chenjw in #461
  • update vikingbot version to 0.1.3 by @chenjw in #462
  • fix: github zip download timeout by @MaojiaSheng in #463

New Contributors

Full Changelog: v0.2.3...v0.2.5

v0.2.3

03 Mar 09:13
539d14c

Choose a tag to compare

Breaking Change

After upgrading, datasets/indexes generated by historical versions are not compatible with the new version and cannot be reused directly. Please rebuild the datasets after upgrading (a full rebuild is recommended) to avoid retrieval anomalies, inconsistent filtering results, or runtime errors.
Stop the service -> rm -rf ./your-openviking-workspace -> restart the service with the openviking-server command.

What's Changed

New Contributors

Full Changelog: v0.2.2...v0.2.3

v0.2.2

03 Mar 04:53
913bc75

Choose a tag to compare

Breaking Change

Warning: This Release includes Breaking Chage! Before upgrading, you should stop VikingDB Server and clear workspace dir first.

What's Changed

New Contributors

Full Changelog: v0.2.1...v0.2.2

v0.2.1

28 Feb 11:28
d00932e

Choose a tag to compare

This is a core feature preview release. Please note that performance and consistency have not been fully optimized, so use with caution.

Before you upgrade, please remove old ov.conf and old data directory, and then follow the new README.md to deploy!

1. Core Capability Upgrades: Multi-tenancy, Cloud-Native & OpenClaw/OpenCode Adaptation

  • Multi-tenancy: Implemented foundational multi-tenancy support at the API layer (#260, #283), laying the groundwork for isolated usage across multiple users/teams.
  • Cloud-Native Support: Added support for cloud-native VikingDB (#279), improved cloud deployment documentation and Docker CI workflows (#320), expanding from local deployment to cloud-edge integration.
  • OpenClaw Integration: Added official installation for the openclaw-openviking-plugin (#307), strengthening integration with OpenClaw.
  • OpenCode Support: Introduced the opencode plugin and updated documentation (#351), extending capabilities for code-related scenarios.

2. Deep Optimization of the Database Storage Foundation

  • Architecture Refactor: Refactored the vector database interface (#327) and removed the with_vector parameter from query APIs (#338) to simplify the interface design.
  • Performance Optimizations:
    • Integrated KRL to optimize vector search on ARM Kunpeng architectures (#256).
    • Enabled AVX2 by default and disabled AVX512 for x86 builds (#291), balancing compatibility and performance.
  • BugFixes: Resolved missing Volcengine URI prefixes for VikingDB, invalidated is_leaf filters (#294), and fixed vector storage lock contention during fast restarts (#343).
  • AGFS Enhancements: Added AGFS binding client (#304), fixed AGFS SDK installation/import issues (#337, #355), and improved filesystem integration.
  • Code Scenario Improvements: Added AST-based code skeleton extraction mode (#334), supported private GitLab domains for code repositories (#285), and optimized GitHub ZIP download (#267).

3. Improved CLI Toolchain (Greatly Enhanced Usability)

Numerous UX improvements for the ov CLI to lower barriers to usage:

  • Added ov command wrapper (#325) and fixed bugs in the CLI wrapper, repo URI handling, and find command (#336, #339, #347).
  • Enhanced add-resource functionality with unit tests (#323) and added ZIP upload support for skills via the add_skill API (#312).
  • Configuration Extensions: Added timeout support in ovcli.conf (#308) and fixed agent_id issues in the Rust CLI (#308).
  • Version Support: Added the --version flag to openviking-server (#358) for easy version validation.

What's Changed

  • docs : update wechat by @qin-ctx in #264
  • feat: 多租户 Phase 1 - API 层多租户能力 by @qin-ctx in #260
  • 增加openviking/eval模块,用于评估测试 by @chuanbao666 in #265
  • feat(vectordb): integrate KRL for ARM Kunpeng vector search optimization by @Mijamind719 in #256
  • feat: concurrent embedding, GitHub ZIP download, read offset/limit by @yangxinxin-7 in #267
  • fix: claude code memory-plugin example:add_message改为写入TextPart列表,避免session解析异常 by @Mijamind719 in #268
  • Feat/add parts support to http api by @SeanZ in #270
  • tests(parsers): add unit tests for office extensions within add_resou… by @shaoeric in #273
  • feat: break change, remove is_leaf scalar and use level instead by @MaojiaSheng in #271
  • fix(api): complete parts support in SDK layers and simplify error handling by @SeanZ in #275
  • feat: support cloud vikingDB by @baojun-zhang in #279
  • Fix image_summary bug by @BytedanceFu in #277
  • feat(config): expose embedding.max_concurrent and vlm.max_concurrent … by @yangxinxin-7 in #282
  • Multi tenant by @kkkwjx07 in #283
  • feat: allow private gitlab domain for code repo by @MaojiaSheng in #285
  • fix(storage): idempotent rm/mv operations with vector index sync by @SeanZ in #284
  • refactor(filter): replace prefix operator with must by @kkkwjx07 in #292
  • fix: VikingDB volcengine URI prefix loss and stale is_leaf filter by @qin-ctx in #294
  • fix(vectordb): default x86 build to AVX2 and disable AVX512 by @kkkwjx07 in #291
  • 对齐 docs 和代码里 storage config 的 workspace 属性 by @myysy in #289
  • fix: correct storage.update() call signature in _update_active_counts() by @ponsde in #280
  • feat(memory): add hotness scoring for cold/hot memory lifecycle (#296) by @r266-tech in #297
  • feat(client): ovcli.conf 支持 timeout 配置 + 修复 Rust CLI agent_id by @qin-ctx in #308
  • fix(server): 未配置 root_api_key 时仅允许 localhost 绑定 by @qin-ctx in #310
  • fix: resolve Gemini 404, directory collision, and Unicode decoding er… by @honjiaxuan in #314
  • feat(skill): support zip upload for add_skill API by @SeanZ in #312
  • feat(agfs): agfs新增binding client by @chuanbao666 in #304
  • fix(parser): remove redundant mkdir in DirectoryParser by @honjiaxuan in #318
  • fix: use original directory name for temp URI lookup in TreeBuilder by @ponsde in #319
  • fix: handle is_healthy() AttributeError when not initialized (closes #298) by @r266-tech in #322
  • feat(docs,ci): 完善云上部署文档与 Docker CI 流程 by @qin-ctx in #320
  • fix(agfs): import AGFSBindingClient error不阻塞http client使用 by @chuanbao666 in #324
  • feat: Enhance add-resource functionality in cli and add unit tests by @shaoeric in #323
  • feat: expose session(must_exist) and session_exists() on public API by @ponsde in #321
  • feat: wrapper ov command by @MaojiaSheng in #325
  • Feat/vectordb interface refactor by @kkkwjx07 in #327
  • build(deps): bump docker/build-push-action from 5 to 6 by @dependabot[bot] in #313
  • docs: add storage configuration guide by @baojun-zhang in #329
  • fix: 修复单测以适配 vectordb 接口重构,统一测试数据路径 by @qin-ctx in #333
  • feat(parse): add AST-based code skeleton extraction mode by @yangxinxin-7 in #334
  • 添加openclaw-openviking-plugin插件安装方式 by @LinQiang391 in #307
  • fix: bugfix ov cli wrapper by @MaojiaSheng in #336
  • refactor: remove with_vector from query APIs by @kkkwjx07 in #338
  • fix: ov cmd and repo uri by @MaojiaSheng in #339
  • fix(agfs): 修复agfs binding-client安装问题, 清理agfs lib文件 by @chuanbao666 in #337
  • feat/vikingbot: viking bot mvp based on openviking by @yeshion23333 in #335
  • docs: add uv prerequisites to bot readme by @Tsan1024 in #341
  • fix(storage): 修复快速重启时向量存储锁竞争问题 by @qin-ctx in #343
  • fix: fix cli find by @kkkwjx07 in #347
  • (Bug fix) to tool memory merge by @BytedanceFu in #346
  • Fix/reminderbug 修复定时任务的bug by @chenjw in #349
  • Update Python version requirement to 3.10 by @qppq54s in #348
  • Validate ovpack ZIP member paths during import and add tests to reject unsafe entries by @13ernkastel in #344
  • fix(client): 修复单文件在远程server部署时上传失败问题 by @qin-ctx in #352
  • fix(test): 修复测试稳定性问题,清理废弃代码 by @qin-ctx in #353
  • fix(agfs): agfs sdk默认从本地安装 by @chuanbao666 in #355
  • eat(opencode): add opencode plugin and update docs by @yangxinxin-7 in #351
  • docs: 修复 openviking serve 命令引用并更新贡献文档 by @qin-ctx in #357
  • feat: update README.md by @MaojiaSheng in #356
  • fix: 为 openviking-server 添加 --version 并修复 AGFS 模式判断 by @qin-ctx in #358
  • chore: remove unsupported examples by @MaojiaSheng in #359
  • fix: tag by @qin-ctx in #361

New Contributors

Read more

CLI v0.2.0

27 Feb 03:10
f95e3fc

Choose a tag to compare

OpenViking CLI v0.2.0

Installation

Quick Install (macOS/Linux)

curl -fsSL https://raw.githubusercontent.com/volcengine/OpenViking/refs/tags/cli@0.2.0/crates/ov_cli/install.sh | bash

Manual Installation

Download the appropriate binary for your platform below, extract it, and add it to your PATH.

The CLI command is simply ov:

# After extraction
chmod +x ov  # Unix only
mv ov /usr/local/bin/  # or any directory in your PATH

# Verify installation
ov --version

Checksums

SHA256 checksums are provided for each binary for verification.

Changes

See the commit history for details.

v0.1.18

23 Feb 11:01
3d2d05a

Choose a tag to compare

What's Changed

New Contributors

Full Changelog: v0.1.17...v0.1.18

v0.1.17

14 Feb 03:20
1b42fec

Choose a tag to compare

What's Changed

  • Revert "feat: support dynamic project_name config in VectorDB / volcengine" by @MaojiaSheng in #167
  • Fix/ci clean workspace by @kkkwjx07 in #170
  • fix: tree uri output error, and validate ov.conf before start by @MaojiaSheng in #169

Full Changelog: v0.1.16...v0.1.17

CLI v0.1.0

14 Feb 10:07

Choose a tag to compare

OpenViking CLI v0.1.0

Installation

Quick Install (macOS/Linux)

curl -fsSL https://raw.githubusercontent.com/volcengine/OpenViking/refs/tags/cli@0.1.0/crates/ov_cli/install.sh | bash

Manual Installation

Download the appropriate binary for your platform below, extract it, and add it to your PATH.

The CLI command is simply ov:

# After extraction
chmod +x ov  # Unix only
mv ov /usr/local/bin/  # or any directory in your PATH

# Verify installation
ov --version

Checksums

SHA256 checksums are provided for each binary for verification.

Changes

See the commit history for details.

v0.1.16

13 Feb 13:29
621ebdf

Choose a tag to compare

What's Changed

  • fix: fix vectordb by @kkkwjx07 in #164
  • feat: make temp uri readable, and enlarge timeout of add-resource by @MaojiaSheng in #165
  • feat: support dynamic project_name config in VectorDB / volcengine by @baojun-zhang in #161
  • fix: server uvloop conflicts with nest_asyncio by @MaojiaSheng in #166

Full Changelog: v0.1.15...v0.1.16