教程 12 — OpenClaw ontology Skill 教程:给 AI 装上持久记忆和结构化知识图谱(2026)
目标:安装 ontology Skill,让 OpenClaw 能记住人名、项目、任务等结构化信息,跨会话持久保留。
普通上下文记忆 vs ontology 持久记忆
openclaw 结构化记忆 vs 普通上下文 最大的区别不是"记多记少",而是"记什么、怎么查":
| 维度 | 普通上下文记忆 | ontology 持久记忆 |
|---|---|---|
| 持久性 | 关闭对话即消失 | 永久保存在本地 |
| 结构化程度 | 非结构化文本 | 实体 + 关系图谱 |
| 跨会话 | 不支持 | 支持 |
| 查询方式 | 只能翻上下文 | 自然语言精准查询 |
| 数据量限制 | 受 Context Window 限制 | 仅受本地磁盘限制 |
| 关联推理 | 弱 | 可以遍历实体关系 |
openclaw 对话记忆 跨会话保存 的核心就靠这个 Skill。装完之后,你和 AI 说过的重要事情——项目进展、团队成员信息、决策记录——都会变成结构化节点,下次打开对话时依然可以精准调取。
第一步:安装 ontology Skill
/install @oswalpalash/ontology
安装完成后验证:
pnpm openclaw skills list
# 应出现 ontologySkill 安装后会在本地创建知识图谱存储目录:
~/.openclaw/workspace/skills/ontology/
├── SKILL.md ← Skill 主逻辑
└── graph.json ← 知识图谱数据(JSON 格式,可直接查看)
第二步:创建实体
ontology 支持五种内置实体类型:
Person — 人物(同事、客户、联系人)
Project — 项目(代码仓库、产品线、合同)
Task — 任务(待办事项、里程碑、缺陷)
Event — 事件(会议、发布、截止日期)
Document — 文档(报告、合同、笔记)
创建 Person 实体
记住:张伟,后端工程师,负责支付模块,偏好用微信沟通,时区 UTC+8
AI 会自动解析并存入图谱:
{
"type": "Person",
"name": "张伟",
"attributes": {
"role": "后端工程师",
"domain": "支付模块",
"contact": "微信",
"timezone": "UTC+8"
}
}创建 Project 实体
记住项目:重构支付系统,截止 2026-06-30,负责人张伟,当前状态进行中
创建 Task 实体
添加任务:本周五前完成支付网关迁移方案文档,优先级高,关联项目"重构支付系统"
openclaw 让 ai 记住人名 项目 任务 就是这么简单——用自然语言描述,ontology 自动提取结构化信息存储。
第三步:查询已有实体
安装 ontology 后,你可以用自然语言跨会话查询之前存入的信息:
张伟是谁?他负责什么?
本周有哪些高优先级任务?
"重构支付系统"项目的当前状态怎么样?
列出所有和张伟相关的项目和任务
ai agent 长期记忆 自托管 场景下,这种查询能力尤其有价值——无论距上次对话多久,AI 都能从图谱里精准检索,而不是靠模糊的"之前好像说过"。
第四步:实体关联(Linking)
ontology 最强大的地方是建立实体之间的关系:
关联:张伟负责项目"重构支付系统",他的联系人是李娜(产品经理)
标记:任务"支付网关迁移文档"属于项目"重构支付系统",由张伟执行
关联建立后,可以做图谱遍历查询:
和"重构支付系统"相关的所有人和任务是什么?
李娜参与了哪些项目,她的直接协作者有谁?
这种关联推理是普通上下文无法做到的。
第五步:更新和删除实体
更新:张伟已完成支付网关迁移,任务状态改为"已完成"
更新:重构支付系统项目截止日期推迟到 2026-08-15
删除实体:移除"支付网关迁移文档"这个任务
第六步:和 self-improving-agent 组合使用
ontology 和 self-improving-agent 区别:两者互补,不是替代关系。
- self-improving-agent(Lesson 09):记录 AI 的行为偏好和操作经验("用 pnpm 不用 npm")
- ontology:记录业务知识和现实世界信息(人、项目、任务、事件)
组合安装,构建完整记忆体系:
/install @pskoett/self-improving-agent
/install @oswalpalash/ontology
实际效果:
你:帮我更新一下张伟的任务进度
AI:(从 ontology 检索"张伟"的所有任务)
张伟当前有 3 个进行中的任务:
1. 支付网关迁移文档(高优先级,截止本周五)
2. ...
请问哪个任务要更新?
AI 既知道"张伟是谁"(ontology),也知道"你喜欢简洁的回答格式"(self-improving-agent)。
常见问题
OpenClaw 关闭后 AI 还记得之前说的话吗?
安装 ontology Skill 后,你主动存入图谱的信息会永久保存在本地 ~/.openclaw/workspace/skills/ontology/graph.json 文件中,不受对话关闭影响。下次打开 OpenClaw 新建对话,AI 依然可以通过自然语言查询到这些信息。需要注意的是,只有显式存入图谱的内容才持久保存,普通聊天内容仍然随会话结束而消失。
ontology Skill 能存哪些类型的实体?
ontology 内置支持五种实体类型:Person(人物)、Project(项目)、Task(任务)、Event(事件)、Document(文档)。每种类型都可以携带自定义属性(如职位、状态、截止日期等),实体之间可以建立关联关系,支持图谱遍历查询。如果内置类型不够用,也可以用自然语言描述自定义类型,ontology 会自动推断分类。
ontology 和 self-improving-agent 有什么区别?
两者解决不同的记忆问题。self-improving-agent 记录的是 AI 的行为模式和操作经验,比如"这个项目用 pnpm""总结时不要列来源",侧重于改进 AI 的工作方式。ontology 记录的是现实世界的业务知识,比如"张伟是后端工程师负责支付模块",侧重于让 AI 了解你的工作环境和人际关系。两个 Skill 可以同时安装,效果叠加互补。
知识图谱数据保存在哪里,会上传云端吗?
所有数据保存在本地 ~/.openclaw/workspace/skills/ontology/graph.json 文件中,格式是标准 JSON,可以直接查看和备份。OpenClaw 是完全自托管方案,数据不经过任何云服务器,不会被上传或同步到 Anthropic 或第三方平台。如需在多台设备间共享知识图谱,可以手动复制 graph.json 文件,或将其纳入 git 版本管理。