feat(knowledge): add cli and update docs

This commit is contained in:
zhayujie
2026-04-12 16:39:06 +08:00
parent ea78e3d0c6
commit a1d82f6193
34 changed files with 956 additions and 208 deletions

77
docs/knowledge/index.mdx Normal file
View File

@@ -0,0 +1,77 @@
---
title: 个人知识库
description: CowAgent 的个人知识库系统 — 结构化知识沉淀、自动整理与知识图谱
---
个人知识库是 Agent 的长期结构化知识存储,保存在工作空间的 `knowledge/` 目录下。与按时间线组织的记忆不同,知识库以主题为维度,将用户分享的文章、对话中的洞察、学习材料等整理为互相关联的 Markdown 页面,形成可持续增长的知识网络。
## 核心概念
### 知识 vs 记忆
| 维度 | 知识库knowledge/ | 长期记忆memory/ |
| --- | --- | --- |
| 组织方式 | 按主题分类、互相关联 | 按时间线、日期文件 |
| 写入方式 | Agent 主动整理结构化内容 | 上下文裁剪时自动摘要 |
| 内容特点 | 提炼后的结构化知识 | 原始对话摘要 |
| 典型用途 | 学习笔记、技术文档、项目知识 | 对话历史、事件记录 |
### 目录结构
```
~/cow/knowledge/
├── index.md # 知识索引,所有页面的入口
├── log.md # 变更日志,记录每次写入
├── concepts/ # 概念类知识
│ └── machine-learning.md
├── entities/ # 实体类知识(人物、组织、工具)
│ └── openai.md
└── sources/ # 来源类知识(文章、论文)
└── llm-wiki.md
```
目录结构是灵活的 — Agent 会根据实际内容自动创建合适的分类目录。用户也可以通过对话自定义目录组织方式。
## 自动整理
知识库的写入是 Agent 的自主行为,在以下场景中触发:
- **用户分享文章或文档** — Agent 自动提取关键信息,创建结构化知识页面
- **对话产生有价值的结论** — Agent 将洞察整理为知识页面,并与已有知识建立关联
- **用户主动要求整理** — 用户可以通过对话指导 Agent 组织和更新知识
每个知识页面都包含与其他页面的交叉引用链接,逐步构建起一个知识图谱。
## 知识检索
Agent 在对话中可以通过以下方式检索知识:
- **索引查阅** — 通过 `knowledge/index.md` 快速定位相关知识页面
- **语义搜索** — 通过 `memory_search` 工具对知识库内容进行语义检索
- **直接读取** — 通过 `memory_get` 工具读取特定知识文件
## Web 控制台
Web 控制台提供了专用的「知识」模块,支持:
- **文档浏览** — 树状目录结构,可搜索、可折叠,点击查看文档内容
- **知识图谱** — 基于 D3.js 的力导向图,可视化展示知识之间的关联关系
- **对话联动** — Agent 回复中引用的知识文档链接可直接点击跳转查看
## CLI 命令
通过 `/knowledge` 命令管理知识库:
| 命令 | 说明 |
| --- | --- |
| `/knowledge` | 显示知识库统计信息 |
| `/knowledge list` | 以树状结构显示文件目录 |
| `/knowledge on` | 开启知识库功能 |
| `/knowledge off` | 关闭知识库功能 |
## 相关配置
| 参数 | 说明 | 默认值 |
| --- | --- | --- |
| `knowledge` | 是否启用个人知识库功能 | `true` |
| `agent_workspace` | 工作空间路径,知识库存储在此目录的 `knowledge/` 子目录下 | `~/cow` |