Skip to content

v0.4.8

Latest

Choose a tag to compare

@qin-ctx qin-ctx released this 08 Jul 06:53
07113f8

OpenViking v0.4.8 Release Notes / 发布说明

Release date / 发布日期: 2026-07-08

Full Changelog / 完整变更记录: v0.4.7...v0.4.8


中文

版本概览

v0.4.8 是一次偏工程能力和稳定性的发布:新增 NVIDIA cuVS GPU 向量检索后端,重做普通网页导入为可控的递归爬取,默认切到 v3 记忆抽取与流式 patch-merge 更新,并整理 Codex / Claude Code 记忆插件的远程 marketplace 安装和 stdio MCP 代理。

这版也包含一批面向生产使用的修复:CLI 不再把远端网页 401/403 报错误判成本地 API Key 错误,RAGFS glob 语义和分页下推到后端,OVPack 导入导出权限放宽到普通用户可用,Feishu、OpenClaw、Web Studio、VikingBot 和文档接入都有跟进。

主要更新

  • cuVS GPU 向量检索后端:新增 storage.vectordb.backend = "cuvs",支持 cuVS brute-force 精确检索和 CAGRA 近似检索;也可以在 backend = "local" 下启用 cuvs.auto_enable,让系统在 GPU 内存足够时自动使用 cuVS,否则回退到原生 CPU 索引。
  • 递归网页导入:普通网页导入改为 Scrapy 驱动的同站 BFS 爬取,支持 depthmax_pagesinclude_pathsexclude_pathsallow_external_linksskip_download_links;正文抽取切换到 trafilatura,并保留 sitemap/RSS 的整站导入路径。
  • 记忆 v3 与训练框架:OpenViking 现在始终使用 v3 记忆抽取链路;新增流式记忆更新器,将并发提交按 peer 和 memory type 分组合并,再用 patch-merge 应用。casestrajectoriesexperiences 可以参与 session train 流程,Tau2 train/eval 也有专门入口。
  • Codex / Claude Code 记忆插件:插件安装支持远程 marketplace;stdio MCP proxy 直接读取 ~/.openviking/ovcli.confOPENVIKING_* 环境变量,不再需要渲染带 URL 和 header 的 .mcp.json。Codex 与 Claude Code 共享安装器和一批核心脚本。
  • VikingBot 简化和子 Agentopenviking[bot] 现在包含原来分散在 bot extras 里的能力;bot.agents.thinking 配置已文档化,subagent_enabled 可开关 spawn 工具,子 Agent 的上下文、技能和结果投递也更稳。
  • RAGFS / 文件系统改进glob 下推到 Rust 后端并分页返回,LocalFS/S3FS/MountableFS 都支持稳定结果;目录列表改为目录优先再按名称排序;移动、加密、S3、锁和目录操作的边界也做了修复。
  • OpenViking Helper for macOS beta:README 增加 macOS 桌面端下载说明,用于本地 Agent 接入检测、会话轨迹检查、记忆和技能同步。

新功能用法

启用 cuVS 精确检索:

pip install -e .
pip install cuvs-cu12 'cupy-cuda12x[ctk]' --extra-index-url=https://pypi.nvidia.com
python examples/cuvs_smoke.py
{
  "storage": {
    "workspace": "/data/openviking",
    "vectordb": {
      "backend": "cuvs",
      "distance_metric": "cosine",
      "cuvs": {
        "algorithm": "brute_force",
        "fallback_to_native": true,
        "filter_cache_size": 16
      }
    }
  }
}

在默认本地后端上启用内存感知的 cuVS auto mode:

{
  "storage": {
    "vectordb": {
      "backend": "local",
      "cuvs": {
        "auto_enable": true,
        "algorithm": "brute_force",
        "auto_memory_reserve_mb": 1024,
        "auto_filter_native_threshold": 2000,
        "auto_path_filter_native_threshold": 200
      }
    }
  }
}

递归导入网页:

ov add-resource "https://docs.openviking.ai/getting-started/01-introduction" \
  --args="depth:1,max_pages:10"

ov add-resource "https://docs.openviking.ai/" \
  --args='{"depth":2,"max_pages":50,"include_paths":["/docs/"],"exclude_paths":["/changelog"]}'

从 Codex 远程 marketplace 安装记忆插件:

codex plugin marketplace add volcengine/OpenViking
codex plugin add openviking-memory@openviking

运行 Tau2 VikingBot train/eval:

bash benchmark/tau2/train/restart_vikingbot_train_eval.sh \
  --epochs 2 \
  --trials 8 \
  --train-trials 1 \
  --skip-final-eval

体验与兼容性改进

  • cuVS 是 opt-in;默认 local CPU 索引不变。显式 backend = "cuvs" 会保留 fail-fast 行为,auto_enable 模式才会按 GPU 内存和过滤候选规模回退到 native。
  • cuVS Python wheel 要求 Python 3.11+,并需要匹配 CUDA 主版本的 cuvs-cu12cuvs-cu13 包。
  • memory.version 已废弃且会被忽略;旧配置仍可加载,但实际总是使用 v3 记忆抽取。
  • openviking[bot-full]openviking[bot-langfuse]openviking[bot-feishu] 等旧 bot extras 已合并到 openviking[bot]。安装脚本和部署文档应改为安装 openviking[bot]
  • glob 现在使用标准的相对路径匹配语义。只匹配当前目录用 *.md,递归匹配用 **/*.md
  • 普通网页导入默认跳过页面里的下载链接,避免把 llms.txt、PDF 等旁路文件意外导入;需要时设置 skip_download_links=false
  • OpenClaw 插件要求提升到 OpenClaw 2026.5.27

修复

  • CLI 在服务器包装远端抓取 401/403 为 5xx 时,不再误报 “OpenViking rejected the API key”;403 报错也改为更接近访问限制或反爬场景的提示。
  • CLI 表格输出保留混合结果中的 statusroot_uritask_idwarnings 等字段。
  • reindex 不再为 memory body 额外生成 chunk 向量,避免记忆检索出现重复或偏离当前 v3 结构的记录。
  • Feishu 导入会持久化文档图片,并且权限错误会被更清晰地展示。
  • Web crawler 删除 Playwright 渲染路径,robots.txt 拒绝时给出合规提示。
  • OpenClaw 插件支持 config headers,并修复安装 manifest、setup probe 和请求头相关契约。
  • Web Studio 的身份健康探测、会话排序、用量面板和 request logs 有多处修复。
  • VikingDB api_key 模式信任 OpenViking schema,避免 schema 推断问题。

文档、测试与安全

  • 新增 cuVS 配置文档、GPU 内存说明、benchmark README、collection/service benchmark、初步结果和 post-merge 回归守卫。
  • 更新 Codex、Claude Code、MCP Clients、OpenCode、community plugins、TOS 安装和 agent authentication 文档。
  • 增加 recursive web crawler、trafilatura HTML 抽取、Feishu 图片、type-quota recall、streaming memory updater、compressor v3、Tau2 train/eval、RAGFS glob、cuVS backend 等测试。
  • 新增 VikingDB content backfill 维护脚本,用于从本地 AGFS 回填 VikingDB content 字段。

English

Overview

v0.4.8 focuses on GPU vector search, safer web ingestion, the v3 memory pipeline, and cleaner agent-plugin installation. It adds an opt-in NVIDIA cuVS vector backend, recursive web crawling for ordinary pages, streaming patch-merge memory updates, Codex / Claude Code remote marketplace install paths, and backend-paged filesystem glob.

The release contains 43 first-parent commits since v0.4.7.

Highlights

  • NVIDIA cuVS vector backend: storage.vectordb.backend = "cuvs" supports cuVS brute-force exact search and CAGRA approximate search. cuvs.auto_enable can keep the default local backend while using idle GPU memory when it is safe to do so.
  • Recursive web crawler: ordinary web-page imports now support bounded same-host BFS through Scrapy, with depth, max_pages, path-prefix filters, optional external links, and download-link skipping. HTML extraction now uses trafilatura.
  • Memory v3 and train/eval: OpenViking always uses the v3 memory extraction pipeline. Concurrent commits can batch through the streaming memory updater, then merge by peer and memory type. Extracted cases, trajectories, and experiences can feed the session training framework and Tau2 train/eval pipeline.
  • Agent memory plugins: Codex and Claude Code plugins can be installed from remote marketplaces. Their stdio MCP proxy reads ovcli.conf or OPENVIKING_* at runtime, so MCP tools and hooks share one credential chain.
  • VikingBot cleanup: openviking[bot] now includes the previous optional bot features, bot.agents.thinking is documented, and subagent_enabled controls the spawn tool.
  • Filesystem and RAGFS: glob is delegated to backends with pagination, standard relative-path semantics, stable ordering, and directory-first listing.
  • OpenViking Helper beta: README now links the macOS desktop helper for local agent setup inspection, session trace review, and local memory/skill sync.

New Feature Usage

Enable cuVS exact search:

pip install -e .
pip install cuvs-cu12 'cupy-cuda12x[ctk]' --extra-index-url=https://pypi.nvidia.com
python examples/cuvs_smoke.py
{
  "storage": {
    "workspace": "/data/openviking",
    "vectordb": {
      "backend": "cuvs",
      "distance_metric": "cosine",
      "cuvs": {
        "algorithm": "brute_force",
        "fallback_to_native": true,
        "filter_cache_size": 16
      }
    }
  }
}

Use memory-aware cuVS auto mode with the default local backend:

{
  "storage": {
    "vectordb": {
      "backend": "local",
      "cuvs": {
        "auto_enable": true,
        "algorithm": "brute_force",
        "auto_memory_reserve_mb": 1024,
        "auto_filter_native_threshold": 2000,
        "auto_path_filter_native_threshold": 200
      }
    }
  }
}

Recursively import web pages:

ov add-resource "https://docs.openviking.ai/getting-started/01-introduction" \
  --args="depth:1,max_pages:10"

ov add-resource "https://docs.openviking.ai/" \
  --args='{"depth":2,"max_pages":50,"include_paths":["/docs/"],"exclude_paths":["/changelog"]}'

Install the Codex memory plugin from the remote marketplace:

codex plugin marketplace add volcengine/OpenViking
codex plugin add openviking-memory@openviking

Run Tau2 VikingBot train/eval:

bash benchmark/tau2/train/restart_vikingbot_train_eval.sh \
  --epochs 2 \
  --trials 8 \
  --train-trials 1 \
  --skip-final-eval

Improvements

  • cuVS remains opt-in. The default local CPU backend is unchanged; only auto mode falls back by GPU-memory and filtered-candidate heuristics.
  • cuVS Python wheels require Python 3.11+ and the CUDA-matched cuvs-cu12 or cuvs-cu13 package.
  • memory.version is deprecated and ignored. Existing configs still load, but extraction always uses v3.
  • Old bot extras such as openviking[bot-full], openviking[bot-langfuse], and openviking[bot-feishu] are folded into openviking[bot].
  • glob now uses standard full-relative-path matching. Use *.md for the current directory and **/*.md for recursive matches.
  • Ordinary web imports skip download links by default; set skip_download_links=false to fetch same-host files linked from pages.
  • OpenClaw plugin support now requires OpenClaw 2026.5.27.

Fixes

  • The CLI no longer reports remote page 401/403 fetch failures wrapped in server 5xx responses as local API-key failures.
  • CLI table output preserves scalar fields when a response also contains warning lists.
  • Reindexing memory records no longer generates extra body chunks.
  • Feishu imports persist document images and surface permission errors clearly.
  • The web crawler removed the Playwright rendering path and gives clearer robots.txt denial guidance.
  • OpenClaw plugin setup, config headers, install manifests, and probe contracts were tightened.
  • Web Studio health identity probes, session sorting, usage panels, and request logs received follow-up fixes.
  • VikingDB api_key mode now trusts the OpenViking schema.

Docs, Tests, and Security

  • Added cuVS docs, GPU memory notes, benchmark harnesses, preliminary results, and post-merge regression guards.
  • Updated Codex, Claude Code, MCP Clients, OpenCode, community plugin, TOS installer, and agent authentication docs.
  • Added coverage for recursive web crawling, trafilatura HTML extraction, Feishu images, type-quota recall, streaming memory updates, compressor v3, Tau2 train/eval, backend glob, and cuVS.
  • Added a VikingDB content backfill maintenance script for restoring content fields from local AGFS.