OpenViking
把记忆、资源和技能统一为可浏览的智能体上下文文件系统。
- Star 数
- ★ 42k
- 最近更新
- 今天
- License
- AGPL-3.0
- 主语言
- Python
- FA 评分
- 50/100 · 缺口较多
30 秒速览
- 运行形态
- 可在哪里用
- 通用 · 跨平台Codex · Claude Code · OpenAI API
- 费用
- 软件免费,模型调用费用自付
- 上手难度
- 中 · 需要几步配置
- 开始前需要
- 典型场景
- 为使用 Codex 或 Claude Code 的开发者保存跨会话偏好、项目资料和技能,并在后续编码会话中召回。
- 不适合
- 只想要开箱即用托管服务、不愿自建服务器的用户
- 需要稳定生产级桌面客户端的用户(Helper 仍为 beta,仅 macOS 与 Windows x64)
- 源码审查
- 50/100 · 缺口较多
这个 Agent 能做什么,适合哪些场景?
OpenViking 是面向 AI 智能体的开源上下文数据库,将记忆、资源和技能组织为使用 viking:// 协议访问的虚拟文件系统。它在写入时生成 L0 摘要、L1 概览和 L2 原始详情,并按任务所需深度加载内容。服务端通过 openviking-server 运行,ov 客户端 CLI 可添加资源、浏览目录、语义检索和文本搜索。项目还提供 Claude Code、Codex、OpenClaw、Cursor、MCP 客户端及 LangChain/LangGraph 等集成,并可在会话提交后异步提取长期记忆。
启动 openviking-server 后,用户可用 ov add-resource 将 URL 等资源写入上下文库;系统将内容处理为 L0、L1、L2 层级,并映射到 viking://resources/ 或用户目录。智能体或 CLI 可通过 ov ls、ov tree 浏览目录,以 ov find 执行语义检索,并以 ov grep 在指定 URI 下搜索文本。检索会先定位高分目录,再逐层下钻,且保留目录浏览轨迹供检查。会话提交后,系统异步提取用户偏好与智能体经验,写入长期 memory。
- 为使用 Codex 或 Claude Code 的开发者保存跨会话偏好、项目资料和技能,并在后续编码会话中召回。
- 为维护文档、代码库和网页资料的团队导入资源后,用 viking:// 目录结构和 ov find 定位相关上下文。
- 为通过 MCP 客户端接入模型工具的应用提供可检索的资源、记忆和技能上下文。
- 为使用 LangChain 或 LangGraph 构建多轮工作流的工程团队补充会话提交后的长期记忆提取。
- 为需要检查检索为何命中错误内容的智能体开发者查看保存的目录浏览轨迹。
如何安装或部署这个 Agent?
需要 Python 3.10 或更高版本,以及已配置的模型/提供商。执行:
pip install openviking --upgrade
openviking-server init
openviking-server doctor
openviking-serverinit 会创建 ~/.openviking/ov.conf 并引导配置提供商;README 列出的选项包括 Volcengine、OpenAI、Codex OAuth、Kimi、GLM 和本地 Ollama。
如何使用这个 Agent?
保持服务运行后,执行:
ov status
ov add-resource https://github.com/volcengine/OpenViking
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资源需要等待语义处理完成;可在 add-resource 时使用 --wait。
这个 Agent 有哪些优点和局限?
- 以 viking:// 文件系统统一资源、用户记忆和技能,可用 ls、tree、find 等可理解的操作浏览上下文。
- L0/L1/L2 分层在写入时生成,可先读取摘要或概览,再按需加载原始详情。
- 目录递归检索会保留上下文层级和检索轨迹,便于检查结果来源。
- 文档列出多家提供商、HTTP 服务部署、CLI、MCP 与多种智能体框架/产品集成。
- 运行依赖 Python 3.10+,并需要通过 init 配置模型或提供商;提供商连通性是 doctor 的检查项。
- 资源写入后需要语义处理时间,未使用 --wait 时不能立即假定资源已可检索。
- 项目仍处于早期阶段;桌面 OpenViking Helper 目前为 beta,且仅列出 macOS 和 Windows x64。
- 主项目采用 AGPLv3,而 ov_cli 与 examples 使用 Apache 2.0;采用前需分别评估组件许可证。
这个 Agent 与同类方案有什么区别?
README 的基准将 OpenViking 与 OpenClaw、Hermes 和 Claude Code 的原生记忆进行比较;报告称在 LoCoMo 上接入后准确率达到约 80–83%,并报告输入 token 与查询延迟下降。它适合需要独立、可浏览上下文层的场景,而不是仅依赖宿主智能体原生记忆的场景。
与相关度最高的同类 agent 并排比较关键指标。
| Agent | 源码审查 | 形态 / 费用 | Star | 最近更新 | 主语言 | 完整支持的平台 |
|---|---|---|---|---|---|---|
| OpenViking 当前 | 50 · 缺口较多 | 命令行工具免费 + 模型费 | ★ 42k | 今天 | Python | Codex · Claude Code · OpenAI API |
| Agent Systems Handbook | 51 · 缺口较多 | 网页应用免费 | ★ 314 | 20 天前 | MDX | — |
| ACE 智能体经验学习引擎 | 51 · 缺口较多 | 代码库 / SDK免费 + 模型费 | ★ 2.6k | 1 个月前 | Python | Claude Code · OpenAI API · Claude API |
| Oracle AI Developer Hub | 44 · 缺口较多 | 代码库 / SDK免费 + 模型费 | ★ 4.5k | 9 天前 | Jupyter Notebook | — |
FollowAgents 如何评估这个 Agent?
查看各维度的扣分理由
证据显示项目提供了安全政策(SECURITY.md)和依赖列表,但未明确权限最小化设计。用户确认机制在交互式初始化中存在,但未全面覆盖。数据流透明度较好,文档描述了检索轨迹。敏感数据处理未详细说明。依赖安全有安全政策但无漏洞扫描证据。外部影响如网络请求未明确限制。回滚机制未提及。来源归属有作者信息但未验证。
自一致性较好,文档与代码结构一致。依赖可用性未验证,但列出了大量依赖。失败消息未详细说明。
目标受众明确(AI代理开发者),场景多样。能力边界有描述但不够详细。触发精度未明确。环境适配支持多平台。
信息架构清晰,有文档和示例。安装说明详细。命名稳定性未明确。示例和FAQ存在。已知限制未明确。许可证明确(AGPL-3.0)。版本变更日志未提供。维护责任有社区和贡献指南。
输出可用性较好,有CLI和API。边际价值高,提供独特功能。成本效益有基准数据支持。
声明可追溯性一般,基准结果有报告但未独立验证。跨来源佐证有限。事实与推断分离不明确。
- 发布者身份未验证,需谨慎对待。
- 依赖众多,需检查供应链安全。
- 基准测试结果未独立验证。
最近版本
来自该项目 GitHub Releases 的最新发布记录,说明为上游原文摘录,未经本站改写或测试。
-
发布说明摘录
OpenViking v0.5.3 中文 OpenViking v0.5.3 在 v0.5.2.1 之上合入 98 个提交,重点是 Rules(Beta)、存储与路径锁可靠性、鉴权与账户管理、Gateway 多副本、Compile 加固和 Agent 插件改进。本版本包含少量管理接口与旧 Session 兼容的破坏性变更,升级前请阅读下方说明。配套发布 [email protected]。 重点更新 - Rules(Beta):新增 Rule 服务,并向 Agent 暴露 openviking_rule_search 工具,附中英文指南与 API 参考(#6364、#6613)。 - 存储与路径锁:新增事务型 SQLite path lock、按 scope 批量刷新 Redis 租约、拒绝跨 scope 的 Tree 锁与路径别名绕过、令牌丢失后撤销租约授权、Provider 迁移后恢复持久化交接;修复递归删除导致 PathLock 提前失效、中文路径旧锁交接恢复;新增可选 Redis 目录 TTL、多写 IOPS 优化(#6679、#6665、#6685、#6687、#6704、#6745、#6631、#6620、#6392、#6646)。 …在 GitHub 查看 ↗ -
发布说明摘录
中文 本次 hotfix 主要解决 向 Session 添加消息时,隐私自动识别存在误判,导致部分普通内容被错误替换为隐私占位符,并产生无效隐私记录 的问题。 主要修复:暂时关闭 Session 隐私自动识别 暂时关闭新敏感值的自动识别与替换,避免继续误替换消息内容。例如,未登记的 password=example-password 现在会保持原样,不再自动创建 Session 隐私记录。此调整在代码中生效,无需修改配置。([#6680](https://github.com/volcengine/OpenViking/pull/6680)) 已登记隐私值的匹配与替换仍然保留,历史隐私占位符也继续支持读取还原。本次不会清理此前产生的隐私记录。 其他修复 - 将 SDK 最低依赖版本提升至 0.1.17,修复 Compile 所需 SDK 接口缺失的问题。([#6596](https://github.com/volcengine/OpenViking/pull/6596)) - 修复 MySQL 多服务任务隔离及旧 API 兼容性问题。([#6676](https://github.com/volcengine/OpenViking/pull/6676)) English …在 GitHub 查看 ↗