乐于分享
好东西不私藏

OpenClaw 知识图谱实战:让 AI 记住你的一切(附完整配置)

OpenClaw 知识图谱实战:让 AI 记住你的一切(附完整配置)
前两期我们学会了安装技能和创建技能,今天来解决一个核心问题——如何让 AI 记住事情?**不是每次重启就忘,而是真正持久化的记忆。

一、为什么需要知识图谱?

传统 AI 的痛点

用户:记住我明天要开会

AI:好的,我记下了

(第二天重启后)

用户:我今天有什么安排?

AI:抱歉,我不知道...

**问题根源:**大多数 AI 没有长期记忆,每次对话都是"全新的开始"。

OpenClaw 的解决方案:Ontology

Ontology 技能提供了一个**结构化的知识图谱**,让 AI 可以:
  • 记住人、项目、任务、事件
  • 建立关联("这个项目属于哪个客户")
  • 跨会话持久化(重启后依然记得)
  • 支持复杂查询("找出所有逾期任务")

二、知识图谱核心概念

1. 实体(Entity)

知识图谱的基本单位,比如:

  • Person(人):姓名、联系方式、职位
  • Project(项目):名称、状态、截止日期
  • Task(任务):标题、优先级、完成状态
  • Event(事件):时间、地点、参与人

2. 关系(Relation)

实体之间的连接:

  • 人 参与 项目
  • 项目 包含 任务
  • 任务 依赖 其他任务

3. 属性(Property)

实体的特征:

  • Person.name = "张三"
  • Project.status = "进行中"
  • Task.dueDate = "2026-03-20"

三、实战:配置 Ontology 技能

步骤 1:安装技能

```bash

openclawskillinstallontology

步骤 2:初始化知识图谱

首次使用需要创建存储文件:

```bash

在工作区创建 ontology 目录

mkdir-p~/.openclaw/workspace/ontology
创建初始配置文件
cat>~/.openclaw/workspace/ontology/config.json<<'EOF'

{

"storage": "file",

"path": "~/.openclaw/workspace/ontology/data.jsonl",

"schema": {

"entities": ["Person", "Project", "Task", "Event", "Document"],

"relations": ["participates_in", "depends_on", "belongs_to", "created_by"]

}

}

EOF

步骤 3:告诉 AI 使用知识图谱

在`MEMORY.md`中添加:

markdown

知识图谱使用规范

当用户说以下话时,使用 ontology 技能记录:
  • "记住..." → 创建或更新实体
  • "查询..." → 搜索知识图谱
  • "关联..." → 建立实体关系
  • "我昨天提到的..." → 检索历史记忆
常用命令:
  • 创建实体:ontology create Person name="张三" email="zhangsan@example.com"
  • 查询实体:ontology query Person name="张三"
  • 建立关系:ontology link Person:张三 participates_in Project:官网重构
  • 搜索:ontology search "会议"

四、实战案例:项目管理

场景:记录一个完整的项目

**1. 创建项目实体**

用户:创建一个新项目,叫"官网重构",截止日期是4月15日

AI 执行:

ontology create Project \

name="官网重构" \

status="进行中" \

dueDate="2026-04-15" \

priority="高"

**2. 创建任务并关联**

用户:这个项目包含设计首页、开发后端、测试三个任务

AI 执行:

ontology create Task name="设计首页" status="待开始" project="官网重构"

ontology create Task name="开发后端" status="待开始" project="官网重构"

ontology create Task name="测试" status="待开始" project="官网重构"

ontology link Task:设计首页 belongs_to Project:官网重构

ontology link Task:开发后端 belongs_to Project:官网重构

ontology link Task:测试 belongs_to Project:官网重构

**3. 指派负责人**

用户:设计首页交给小李,开发交给小王

AI 执行:

ontology create Person name="小李" role="设计师"

ontology create Person name="小王" role="后端开发"

ontology link Task:设计首页 created_by Person:小李

ontology link Task:开发后端 created_by Person:小王

**4. 查询项目状态**

用户:官网重构项目进展如何?

AI 查询:

ontology query Project name="官网重构" --with-related

返回结果:

项目:官网重构

状态:进行中 | 截止:2026-04-15 | 优先级:高

任务列表:

├── [待开始] 设计首页 — 负责人:小李

├── [待开始] 开发后端 — 负责人:小王

└── [待开始] 测试

五、进阶:个人知识库管理

案例 1:记录重要联系人

用户:记住张总是科技公司的 CEO,电话 138xxxx,喜欢打高尔夫

AI 执行:

ontology create Person \

name="张总" \

company="科技公司" \

position="CEO" \

phone="138xxxx" \

hobby="高尔夫" \

tags="重要客户,高尔夫爱好者"

案例 2:记录会议纪要

用户:记录今天的会议,主题是 Q2 规划,参会人有我、张总、李经理

AI 执行:

ontology create Event \

name="Q2 规划会议" \

date="2026-03-19" \

type="会议" \

participants="我,张总,李经理"

关联到相关项目

ontology link Event:Q2规划会议 belongs_to Project:官网重构

案例 3:建立知识关联

用户:把那篇关于 React 性能优化的文章关联到官网重构项目

AI 执行:

ontology create Document \

name="React 性能优化指南" \

url="https://example.com/react-perf" \

tags="React,性能优化,前端"

ontology link Document:React性能优化指南 belongs_to Project:官网重构

六、常用查询技巧

1. 列出所有进行中的项目

```bash

ontologyqueryProjectstatus="进行中"

2. 查找即将到期的任务

```bash

ontologyqueryTask--due-before="2026-03-25"--status="待开始"

3. 搜索包含关键词的实体

```bash

ontologysearch"官网"
返回:项目"官网重构"、任务"设计首页"、文档"官网需求文档"...

4. 查看某人的所有任务

```bash

ontologyqueryTask--created-by="小李"

5. 导出知识图谱

```bash

ontologyexport--format=json>my-knowledge.json

七、最佳实践

✅ 应该做的

  1. **及时记录** - 重要信息当场记录,不要拖延
  2. **标准化命名** - 使用统一的命名规范,方便查询
  3. **打标签** - 给实体添加标签,便于分类检索
  4. **定期整理** - 每周回顾一次,删除过期信息
  5. **备份数据** - 定期导出 `ontology/data.jsonl`

❌ 避免这样做

  1. **记录敏感信息** - 密码、银行卡号等不要存入
  2. **过度记录** - 不是所有信息都值得记录,抓重点
  3. **不更新状态** - 任务完成了记得更新状态
  4. **孤立实体** - 尽量建立关联,形成知识网络

八、常见问题

**Q1:数据存储在哪里?安全吗?**

A:默认存储在本地`~/.openclaw/workspace/ontology/data.jsonl`,不会上传到云端。敏感信息建议加密或不上传。

**Q2:可以和其他工具同步吗?**

A:可以导出 JSON/CSV,导入到 Notion、Obsidian 等工具。也可以编写脚本双向同步。

**Q3:支持多用户吗?**

A:目前版本是单用户本地存储。多用户场景建议配合数据库后端(如 SQLite、PostgreSQL)。

**Q4:数据量大时会不会变慢?**

A:本地 JSONL 存储在几千条记录内性能良好。数据量大时建议切换到 SQLite 或 PostgreSQL 后端。

**Q5:如何删除错误记录?**

```bash

ontologydeleteEntity:id
ontologydeletePersonname="错误的名字"

九、扩展:自定义实体类型

如果默认类型不够用,可以自定义:

```json

{
"schema": {
"entities": [
"Person",
"Project",
"Task",
"Event",
"Document",
"Book",// 新增:书籍
"Idea",// 新增:灵感/想法
"Password"// 新增:账号密码(建议加密存储)
],
"properties": {
"Book": ["title","author","rating","notes"],
"Idea": ["content","category","priority"]
}
}
}

总结

知识图谱让 OpenClaw 从"聊天工具"升级为"个人助理":

| 功能       | 传统 AI        | + Ontology |

| 记住事情 | ❌ 重启即忘 | ✅ 永久存储 |

| 关联信息 | ❌ 孤立回答 | ✅ 知识网络 |

| 复杂查询 | ❌ 无法支持 | ✅ 灵活检索 |

| 个人定制 | ❌ 通用回答 | ✅ 基于你的数据 |

**今天就开始:**

  1. 安装 ontology 技能
  2. 记录 3 个重要联系人
  3. 创建 1 个正在进行的项目
  4. 建立几个任务关联

一周后,你会发现 AI 真的"懂你"了。

💡**下期预告:**我们将学习如何让 AI 主动帮你——使用 cron 定时任务技能,实现自动提醒、定时报告、周期性任务。

                                 **👇 互动时间**

*本文使用 OpenClaw + ontology 技能辅助创作*

**关注「私享斋」,获取更多科技技能实操干货 👆**

**觉得有用?点个「在看」让更多人看到 👀**