返回目录
开源项目自动化与 Agent 类新手

OpenViking:面向 AI Agent 的自进化上下文数据库(统一记忆、知识 RAG 与 Skills)

OpenViking 是火山引擎(volcengine)开源的一款面向 AI Agent 的上下文数据库,用一套虚拟文件系统 viking:// 统一管理 Agent 的知识(resources)、记忆(memories)与技能(skills)。目录本身携带 L0 摘要、L1 概览与 L2 全文三层上下文,支持目录级语义检索(find/search)、会话归档与记忆提炼,并提供 Python/Go/TypeScript SDK、MCP 与多种 Agent 原生集成。主项目采用 AGPLv3,0.3.22 版本在 LoCoMo 与 tau2-bench 上给出了记忆与任务成功率评测。

0 次阅读2026/09/28 发布
OpenViking:面向 AI Agent 的自进化上下文数据库(统一记忆、知识 RAG 与 Skills) 来源图片

社区作者 · zZz

它解决什么问题

OpenViking 将自己定义为“AI Agent 的上下文数据库”——用一套文件系统承载 Agent 所知的一切:知识、记忆和技能。它指出多数 Agent 记忆是黑盒:文本进、向量出,没人能看清到底存了什么。OpenViking 改为把上下文组织成 viking:// 下的虚拟文件系统,Agent 像操作文件一样使用 ls、tree、read、write、grep 导航,用户也可以打开任意目录查看并编辑 Agent 掌握的内容;每个目录都带自动生成的摘要,Agent 可以先扫摘要再决定读什么。

核心特性:

  1. 知识/记忆/技能同一文件系统。resources 存文档与代码,memories 保留用户偏好与经验,skills 定义如何执行任务;每项都有 viking:// URI 可供浏览和检索。
  2. 按目录检索而非全量索引。语义检索可限定在某个项目或记忆子树,而不是扫描扁平的向量池;find 直接执行查询,search 从会话上下文规划检索。
  3. 先读摘要再读原文。生成的目录摘要(L0)与概览(L1)让 Agent 在打开全文(L2)之前先判断相关性。
  4. 会话变成可读文件。提交会话会把对话归档并抽取为可检查、编辑、合并的 Markdown 记忆;启用 VikingBot 后,ov compile 可将源材料组织成 wiki、知识图谱或报告。

目录结构(viking://):resources/ 下按项目组织 docs、src;user/{user_id}/ 下包含 memories/preferences(writing_style、coding_habits)、resources/private_project、skills(search_code、analyze_data)、peers(如 web-visitor-alice)。

三层加载:L0(Abstract)一句话摘要用于快速判断相关性;L1(Overview)核心信息与使用场景用于规划;L2(Details)完整原始数据,仅在需要时读取。被语义化处理的目录会带 .abstract.md 与 .overview.md,api/ 下的 auth.md、endpoints.md 属于按需加载的 L2。

效果评测:OpenViking 0.3.22 在长对话用户记忆(LoCoMo)与多轮 Agent 任务(tau2-bench)上做了评测,完整结果与复现脚本在 ./benchmark。记忆评测使用 Doubao 2.0 Pro 作为 VLM、Doubao-embedding-vision-251215 作为 embedding 模型。用户记忆方面,三种 Agent 集成在接入 OpenViking 后准确率均落在 80–83%,相比其原生记忆的 24–57% 明显提升,同时输入 token 下降 34.3–91.

0%、查询延迟下降 58.45–66.10%;Agent 经验方面,经验记忆让 tau2-bench 任务成功率相对同款无记忆 LLM 在零售场景提升 +6.87pp、航空场景提升 +11.87pp。配图 8 的基准图给出:LoCoMo 准确率 OpenClaw 24.20% native vs 82.08% with OpenViking,Hermes 33.38% vs 82.86%,Claude Code 57.21% vs 80.32%;tau2-bench 任务成功率 Retail 70.

94%(图注在来源中被截断,此处按可见内容记录)。

Studio 与桌面端:可在浏览器中试用 OpenViking Studio(无需安装),也可自托管 Web Studio,用于浏览上下文并尝试语义检索(见配图 7)。桌面应用为 macOS 与 Windows x64 的 beta 控制台,可配置受支持的本地 Agent 集成、查看会话中的召回与捕获事件,并把本地记忆与技能同步到 OpenViking;下载提供 macOS Apple Silicon(arm64)、macOS Intel(x64)、Windows(x64)三个包。

VikingBot 与生产部署:VikingBot 是构建在 OpenViking 之上的 AI Agent 框架,可用 pip install "openviking[bot]" 安装、openviking-server --with-bot 启动。官方 Docker 镜像默认同时启动 VikingBot、服务端与控制台 UI。生产环境可自托管开源服务端(AGPLv3,无需激活密钥),服务端支持账号与用户隔离,以及可选的资源 ACL;在暴露到 localhost 之外前应先配置认证。

商业版本包括由火山引擎托管的 Managed SaaS(个人版与企业版,提供开源部署的迁移工具,BytePlus 计划在中国以外地区提供托管),以及 BYOC/离线环境的 Self-Managed 版本(增加分布式部署与官方支持,通过许可证密钥激活)。

集成生态:Claude(Hooks + MCP)、Codex(Hooks + MCP)、Cursor(Hooks + MCP)、TRAE(Hooks + MCP)、OpenClaw(Context engine)、Hermes(内置)、OpenCode(Plugin + MCP)、pi(原生扩展)、DeerFlow(Plugin + MCP)、DSH(Plugin + MCP)、Doubao Work(Connector)、LangChain(Tools + store),以及通用集成 Agent Plugins 1.

0 与 MCP 客户端。也可用 Python、Go、TypeScript SDK 或 HTTP API 自建集成。

研究与伙伴:VikingMem 采用事件驱动方式抽取、更新、合并长期记忆(论文 arXiv:2605.29640,VLDB 2026);目录感知检索的论文为 arXiv:2606.16903(ICDE 接收),定义目录范围查询与维护操作并引入 TrieHI,OpenViking 集成 TrieHI 以先解析目录范围再做向量排序;VikingRAG(arXiv:2609.11390)把语义检索与文档结构结合,按需暴露相关目录片段作为证据缺口。伙伴项目包括 deer-flow、NoKV、loopx、Hermes Agent。

— 本文由 AI 根据公开来源辅助整理,命令、版本与许可证请在使用前到原始页面复核。

安装 / 开始使用

准备环境:需要 Python 3.10+,并且能够访问一个 embedding 模型和一个 VLM(云端或本地均可)。

一、安装并启动服务端

  1. 安装或升级包:
命令
pip install openviking --upgrade

openviking-server init 该命令会写入 ~/.openviking/ov.conf。支持的 provider 选项包括 Volcengine、OpenAI、Codex OAuth、Kimi、GLM 以及本地 Ollama,具体 provider 配置见官方 configuration guide。

openviking-server doctor

openviking-server

  1. 初始化并配置 provider 与模型:
  2. 检查配置与连通性:
  3. 启动服务端:

二、使用 ov CLI 导入并检索资源(在另一个终端执行) ov status ov add-resource https://github.

com/volcengine/OpenViking 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 add-resource 会返回一个 task_id,需要用它替换上面命令中的 TASK_ID 反复查询状态,直到状态为 completed。

ov find 会返回带 URI 的匹配上下文,可继续用 URI 查看内容。

三、首次运行与集成

  • 要接入自己的 Agent,从列表中选择原生集成以获得自动召回与会话捕获,或使用 MCP 让 Agent 获得记忆与上下文工具;支持 Claude、Codex、Cursor、TRAE(Hooks + MCP)、OpenClaw(Context engine)、Hermes(内置)、OpenCode、pi、DeerFlow、DSH、Doubao Work、LangChain,以及 Agent Plugins 1.0 与通用 MCP 客户端。
  • 也可使用 Python、Go、TypeScript SDK 或 HTTP API 自建集成。
  • 可选:安装并使用 VikingBot:
命令
pip install "openviking[bot]"

openviking-server --with-bot ov chat # 在另一个终端执行 官方 Docker 镜像已内置 VikingBot,并在启动服务端与控制台 UI 时默认启动它。

  • 可选:自托管 Web Studio,用于浏览上下文并进行语义检索;浏览器版 Studio 无需安装即可试用。桌面端(Beta)为 macOS 与 Windows x64 控制台,可配置本地 Agent 集成、查看召回与捕获事件、同步本地记忆与技能。

四、生产部署注意事项

  • 开源服务端可自托管,AGPLv3,无需激活密钥;部署方式见 server setup 与 Docker and deployment guide。
  • 服务端支持账号与用户隔离,以及可选的资源 ACL;在把服务暴露到 localhost 之外前必须先配置认证。

五、常见问题

  • 导入任务一直没完成:ov add-resource 是异步任务,需用返回的 task_id 反复执行 ov task status TASK_ID,直到 completed。
  • 检索结果不符预期:可先用 ov ls / ov tree 确认 viking:// 下的目录层级,再用 ov grep --uri 把范围限定到具体目录,或用 ov find 在目录子树内做语义检索。
  • 客户端配置与独立 CLI 安装、索引维护请参考官方 CLI setup 文档;平台差异与更详细步骤见 quick start 文档。

来源教程配图

OpenViking
配图 1 · OpenViking查看原图
Deploy on Railway
配图 2 · Deploy on Railway查看原图
Lark
配图 3 · Lark查看原图
WeChat
配图 4 · WeChat查看原图
Discord
配图 5 · Discord查看原图
X
配图 6 · X查看原图
OpenViking Studio: browse context and try semantic search
配图 7 · OpenViking Studio: browse context and try semantic search查看原图
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%
配图 8 · 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% 查看原图

适用场景

为 AI Agent 提供跨会话的长期用户记忆与偏好保留
把项目文档
代码仓库
网页导入为可按目录检索的知识库(知识 RAG)
以文件系统方式定义和管理 Agent 技能(skills)
会话归档与记忆提炼:把对话提交为可读
可编辑
可合并的 Markdown 记忆
通过 VikingBot 的 ov compile 把源材料编译为 wiki
知识图谱或报告
在 Claude
Codex