# 知识库

**知识库**是一个命名的知识集合，保存一组相关记忆。可以将其视为特定领域的文件夹或数据库。知识库分组在[工作区](workspaces)内。

## 概念

| 属性 | 描述 |
|---|---|
| **名称** | 人类可读的标签（例如："Project Alpha"、"Personal Notes"） |
| **关键词** | 用于自动路由的逗号分隔术语 |
| **工作区** | 包含该知识库的父级工作区 |
| **记忆** | 存储在该知识库中的所有记忆 |

```bash
tokst atlas init --name "Project Alpha"
```

## 创建知识库

```bash
tokst atlas init --name "MyKnowledge"
```

每个知识库初始为空。新创建的知识库将成为您的当前知识库。

## 列出知识库

```bash
tokst atlas list
```

显示当前工作区中的所有知识库，包括其记忆计数和关键词配置。

## 重命名知识库

```bash
tokst atlas rename --atlas-id <id> --name "New Atlas Name"
```

重命名指定的知识库。

## 设置自动路由关键词

关键词启用**自动路由**——当您存储记忆而未指定知识库时，TokST 会检查记忆内容是否匹配任何知识库的关键词，并自动路由。

```bash
tokst atlas profile --atlas-id <id> --keywords architecture,backend,api,typescript
```

当您运行 `tokst remember "The API uses TypeScript with Express"` 时，TokST 会将内容与知识库关键词进行匹配，并路由到最匹配的知识库。

## 删除知识库

```bash
tokst atlas delete --atlas-id <id>
```

**警告：** 这会先清理知识库中所有记忆对应的 R2 文件对象，再永久删除记忆和知识库。此操作无法撤销。

## 自动路由详解

自动路由帮助您存储记忆而无需每次都手动指定知识库。工作原理如下：

1. 您运行 `tokst remember "Some content"`（无 `--atlas` 标志）
2. TokST 对照当前工作区中所有知识库的关键词配置评估内容
3. 关键词匹配得分最高的知识库接收该记忆
4. 如果没有知识库匹配超过阈值，记忆将进入当前知识库

这对于智能体驱动的工作流特别有用——智能体不知道使用哪个知识库，它只管记住，TokST 会确定存放位置。

## 最佳实践

- **每个领域创建一个知识库** — 不要将个人笔记与项目架构混在一起
- **设置关键词配置** — 它们使自动路由可靠地工作
- **描述性地命名知识库** — 像"Frontend"或"Backend"这样的名称比"Atlas 1"更清晰
