OpenViking v0.2.14
本次 v0.2.14 版本主要围绕多租户能力、解析导入链路、OpenClaw 插件体验、Bot/Feishu 集成,以及服务端稳定性与安全性做了集中增强。
Highlights
- 多租户与身份管理进一步完善。CLI 已支持租户身份默认值与覆盖,文档新增多租户使用指南,memory 也支持仅按 agent 维度隔离的
agent-onlyscope。 - 解析与导入链路更完整。图片解析新增 OCR 文本提取,目录导入识别
.cc文件,重复标题导致的文件名冲突得到修复,HTTP 上传链路改为更稳妥的 upload id 流程。 - OpenClaw 插件显著增强。安装器与升级流程统一,默认按最新 Git tag 安装,session API 与 context pipeline 做了统一重构,并补齐了 Windows、compaction、compact result mapping、子进程重拉起等多处兼容性与稳定性问题。
- Bot 与 Feishu 集成可用性继续提升。修复了 bot proxy 未鉴权问题,改进了 Moonshot 请求兼容性,并升级了 Feishu interactive card 的 markdown 展示体验。
- 存储与运行时稳定性持续提升。包括 queuefs embedding tracker 加固、vector store 移除
parent_uri、Docker doctor 检查对齐,以及更细粒度的 eval token 指标。
Upgrade Notes
- Bot proxy 接口
/bot/v1/chat与/bot/v1/chat/stream已补齐鉴权,依赖未鉴权访问的调用方需要同步调整,见 #996。 - 裸 HTTP 导入本地文件/目录时,推荐按
temp_upload -> temp_file_id的方式接入上传链路,见 #1012。 - OpenClaw 插件的 compaction delegation 修复要求
openclaw >= v2026.3.22,见 #1000。 - OpenClaw 插件安装器现在默认跟随仓库最新 Git tag 安装,如需固定版本可显式指定,见 #1050。
What's Changed
Multi-tenant, Memory, and Identity
- 支持 CLI 租户身份默认值与覆盖,#1019 by @zhoujh01
- 支持仅按 agent 隔离的 agent memory scope,#954 by @liberion1994
- 新增多租户使用指南文档,#1029 by @qin-ctx
- 在 quickstart 和 basic usage 中补充
user_key与root_key的区别说明,#1077 by @r266-tech - 示例中支持将 recalled memories 标记为 used,#1079 by @0xble
Parsing and Resource Import
- 新增图片解析 OCR 文本提取能力,#942 by @mvanhorn
- 修复重复标题导致的合并文件名冲突,#1005 by @deepakdevp
- 目录导入时识别
.cc文件,#1008 by @qin-ctx - 增加对非空 S3 目录 marker 的兼容性,#997 by @zhoujh01
- HTTP 上传链路从临时路径切换为 upload id,#1012 by @qin-ctx
- 修复从目录上传时临时归档文件丢失
.zip后缀的问题,#1021 by @Shawn-cf-o
OpenClaw Plugin and Installer
- 回滚 duplicate registration guard 的加固改动,#995 by @qin-ptr
- Windows 下 mapped session ID 做安全清洗,#998 by @qin-ctx
- 使用 plugin-sdk exports 实现 compaction delegation,修复
#833,要求openclaw >= v2026.3.22,#1000 by @jcp0578 - 统一 installer 升级流程,#1020 by @LinQiang391
- 默认按最新 Git tag 安装 OpenClaw 插件,#1050 by @LinQiang391
- 统一 session APIs,并重构 OpenClaw context pipeline 以提升一致性、可维护性和测试覆盖,#1040 by @wlff123
- 将 openclaw-plugin 的
DEFAULT_COMMIT_TOKEN_THRESHOLD调整为20000,#1052 by @wlff123 - 为 OpenViking 子进程增加防御式重拉起机制,#1053 by @huangxun375-stack
- 对齐 agent routing 并降低默认日志噪音,#1054 by @LinQiang391
- 修复 compact result mapping,#1058 by @jcp0578
- 移除
ov_archive_expand中重复声明的const sessionId,#1059 by @evaldass - 新增 Claude Code memory plugin 示例,#903 by @Castor6
Bot, Feishu, and Security
- 修复 Bot Proxy 接口
/bot/v1/chat、/bot/v1/chat/stream的未鉴权访问问题,#996 by @13ernkastel - 调整 tool content role 为
user,并优化 Feishuon_message,#1023 by @yeshion23333 - 修复/增强 Moonshot 请求错误处理,#1026 by @Linsiyuan9
- 进一步修复 Moonshot invalid request 问题,#1028 by @Linsiyuan9
- Feishu 消息升级为支持 markdown 的 interactive card v2,#1015 by @r266-tech
- 根据 review feedback 打磨 interactive card 细节,#1046 by @r266-tech
Storage, Runtime, Examples, and Tooling
- 加固 queuefs embedding tracker 在多 worker loop 下的行为,#1024 by @qin-ctx
- vector store 移除
parent_uri,#1042 by @zhoujh01 - 为 eval 增加 embedding token 统计,并让任务结果返回 token 信息,#1038 by @yeshion23333
- 对齐 Docker doctor 中的 AGFS 检查与内置 pyagfs 版本,#1044 by @zhoujh01
- 新增 werewolf game demo,#1025 by @yuyaoyoyo-svg
Build and Dependencies
- 升级
actions/checkout从 4 到 6,#1002 by @dependabot[bot] - 升级
actions/cache从 4 到 5,#1001 by @dependabot[bot]
New Contributors
- @Linsiyuan9 在 #1026 完成了首次贡献
- @Shawn-cf-o 在 #1021 完成了首次贡献
- @liberion1994 在 #954 完成了首次贡献
- @Castor6 在 #903 完成了首次贡献
- @huangxun375-stack 在 #1053 完成了首次贡献
- @evaldass 在 #1059 完成了首次贡献
- @0xble 在 #1079 完成了首次贡献
Full Changelog: v0.2.13...v0.2.14
What's Changed
- Revert "fix(openclaw-plugin): harden duplicate registration guard" by @qin-ptr in #995
- Add non-empty S3 directory marker compatibility by @zhoujh01 in #997
- fix(openclaw-plugin): sanitize mapped session IDs for Windows by @qin-ctx in #998
- fix(parse): prevent merged filename collision on duplicate headings by @deepakdevp in #1005
- build(deps): bump actions/checkout from 4 to 6 by @dependabot[bot] in #1002
- build(deps): bump actions/cache from 4 to 5 by @dependabot[bot] in #1001
- fix(parse): recognize .cc files during directory import by @qin-ctx in #1008
- fix(openclaw-plugin): use plugin-sdk exports for compaction delegation (fixes #833) openclaw ≥ v2026.3.22 by @jcp0578 in #1000
- feat(cli): support tenant identity defaults and overrides by @zhoujh01 in #1019
- fix(bot): Change tool content role to user, opt feishu on_message by @yeshion23333 in #1023
- feat(bot): Error calling LLM: litellm.BadRequestError: MoonshotExcept… by @Linsiyuan9 in #1026
- feat(bot): use interactive card with markdown for Feishu messages (v2) by @r266-tech in #1015
- werewolf game demo by @yuyaoyoyo-svg in #1025
- fix(queuefs): harden embedding tracker across worker loops by @qin-ctx in #1024
- feat(installer, openclaw-plugin): unified installer upgrade by @LinQiang391 in #1020
- fix(http): replace temp paths with upload ids by @qin-ctx in #1012
- Fix Unauthenticated Access to Bot Proxy Endpoints (/bot/v1/chat, /bot/v1/chat/stream) by @13ernkastel in #996
- Fix/moonshot invalid request by @Linsiyuan9 in #1028
- feat(parse): implement OCR text extraction for image parser by @mvanhorn in #942
- fix(ov-cli): preserve .zip suffix for temp archives uploaded from directories by @Shawn-cf-o in #1021
- feat(memory): support agent-only agent memory scope by @liberion1994 in #954
- docs(concepts): add multi-tenant usage guide by @qin-ctx in #1029
- feat(claude-code-plugin): add Claude Code memory plugin example by @Castor6 in #903
- feat(eval): add emb token, get task add token result by @yeshion23333 in #1038
- fix(docker): align doctor AGFS check with bundled pyagfs by @zhoujh01 in #1044
- feat(openclaw-plugin): default plugin install to latest Git tag by @LinQiang391 in #1050
- refactor(openclaw-plugin): Unified session APIs and refactored the OpenClaw context pipeline for more consistent behavior, better maintainability, and stronger test coverage. by @wlff123 in #1040
- set DEFAULT_COMMIT_TOKEN_THRESHOLD to 20000 for openclaw-plugin by @wlff123 in #1052
- fix(openclaw-plugin): add defensive re-spawn for OpenViking subproces… by @huangxun375-stack in #1053
- feat(openclaw-plugin): align agent routing and reduce default log noi… by @LinQiang391 in #1054
- fix(openclaw-plugin): fix compact result mapping by @jcp0578 in #1058
- Make parent_uri backend-aware in vector store by @zhoujh01 in #1042
- fix(openclaw-plugin): remove duplicate
const sessionIddeclaration in ov_archive_expand by @evaldass in #1059 - fix(bot): polish interactive card per review feedback by @r266-tech in #1046
- feat(examples): mark recalled memories as used by @0xble in #1079
- docs: clarify user_key vs root_key in quickstart and basic usage by @r266-tech in #1077
New Contributors
- @Linsiyuan9 made their first contribution in #1026
- @Shawn-cf-o made their first contribution in #1021
- @liberion1994 made their first contribution in #954
- @Castor6 made their first contribution in #903
- @huangxun375-stack made their first contribution in #1053
- @evaldass made their first contribution in #1059
- @0xble made their first contribution in #1079
Full Changelog: v0.2.13...v0.2.14