0%

用 OpenClaw + PARA 搭建个人数字知识助理

用 OpenClaw + PARA 搭建个人数字知识助理

最近想给自己搭一个”数字助理”,主要解决两个问题:

  1. 学习、工作、生活中的资料越来越多,找起来麻烦
  2. AI 这么火,想让 AI 帮我整理、检索、提醒

折腾了一阵子,用 OpenClaw + PARA 搞定了。写下来记录一下,也许对其他人有用。


一、为什么需要数字知识助理?

说白了就是两个问题:

  1. 东西太多,找不着:论文资料、实习文档、面试准备、课程笔记……散落在各个地方,要用的时候想不起来放哪了
  2. AI 这么火,能不能帮我干活:不光存资料,还希望 AI 能帮我整理、总结、提醒

以前试过不少笔记软件,但总觉得差点意思:

  • Notion 功能强但国内访问慢
  • 印象笔记搜索不太智能
  • Obsidian 本地存但没 AI 能力

干脆自己搭一个。


二、整体架构

先看一眼全貌:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
┌─────────────────────────────────────────┐
│ 使用入口(微信/网页) │
└─────────────────┬───────────────────────┘

┌─────────────────────────────────────────┐
│ OpenClaw(数字助理核心) │
│ • 理解你的问题 │
│ • 去 PARA 知识库里找相关内容 │
│ • 调用大模型生成回答 │
└─────────────────┬───────────────────────┘

┌───────────────┬───────────────┬─────────┐
│ OSS 云存储 │ 向量数据库 │ 大模型 │
│ 存原始文件 │ 存语义索引 │ DeepSeek │
└───────────────┴───────────────┴─────────┘

几个关键点

  • OpenClaw:开源的 AI Agent 框架,能接微信、飞书
  • PARA:知识库的组织方法,后面细说
  • 低配 VPS 就能跑:2G 内存 + 30G 硬盘

三、PARA 知识管理方法

3.1 PARA 是什么?

Tiago Forte 提出的方法,把信息分成四类:

分类 英文 是什么 例子
P Projects 正在做的项目,有截止日期 毕业论文、求职准备
A Areas 长期关注的事,没截止日期 健康、财务、职业发展
R Resources 以后可能用到的资料 课程笔记、教程
A Archives 完成的事,归档 本科课程、过往项目

3.2 目录结构

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
知识库/
├── 01_Projects/ # 当前项目(最重要)
│ ├── 毕业论文/
│ │ ├── 文献资料/
│ │ ├── 实验数据/
│ │ └── 论文草稿/
│ ├── 实习工作/
│ │ ├── 工作文档/
│ │ └── 会议记录/
│ └── 职业规划/
│ ├── 简历作品集/
│ └── 面试准备/

├── 02_Areas/ # 持续关注
│ ├── 学业/
│ ├── 专业技能/
│ ├── 人际关系/
│ └── 健康/

├── 03_Resources/ # 知识素材
│ ├── 课程笔记/
│ ├── 书摘/
│ └── 工具教程/

├── 04_Archives/ # 归档
│ └── 本科阶段/

└── 00_Inbox/ # 临时收集

3.3 AI 检索优先级

提问的时候,AI 按这个顺序找:

1
2
3
4
1. 先搜 Projects(当前任务最相关)
2. 再搜 Areas(长期关注)
3. 补充搜 Resources(参考资料)
4. Archives 一般不搜

这样设计的好处:问”我的论文资料在哪”,AI 会优先从毕业论文项目里找,而不是翻一堆旧课笔记。


四、硬件准备

4.1 VPS 配置

我买的是入门款:

项目 配置 费用
CPU 1 核 -
内存 2G -
硬盘 30G SSD -
带宽 3M -
系统 Ubuntu 22.04 -
月费 - ¥30-50

4.2 内存分配

2G 内存看着少,规划一下够用:

组件 占用
系统基础 300MB
OpenClaw 500MB
Redis 100MB
Nginx 50MB
预留 150MB
剩余 ~900MB

关键点:大模型用 API,不在本地跑。本地只做调度和检索。


五、VPS 环境搭建

5.1 基础配置

1
2
3
4
5
6
7
8
9
10
11
12
# 更新系统
sudo apt update && sudo apt upgrade -y

# 装基础工具
sudo apt install -y git curl wget vim htop tmux

# 设时区
sudo timedatectl set-timezone Asia/Shanghai

# 建目录
mkdir -p ~/openclaw/{config,data,logs}
mkdir -p ~/knowledge

5.2 装 Docker

1
2
3
4
5
6
7
8
9
10
11
12
# 一键装 Docker
curl -fsSL https://get.docker.com | sh

# 当前用户加到 docker 组
sudo usermod -aG docker $USER

# 启动
sudo systemctl start docker
sudo systemctl enable docker

# 验证
docker --version

六、部署 OpenClaw

6.1 拉取代码

1
2
3
cd ~
git clone https://github.com/openclaw/openclaw.git
cd openclaw

6.2 配置文件

创建 ~/openclaw/config/config.yaml

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
app:
name: "Knowledge Assistant"
env: production

# 大模型 - 用 DeepSeek API
llm:
provider: deepseek
api_key: ${DEEPSEEK_API_KEY}
model: deepseek-chat
base_url: https://api.deepseek.com/v1

# 向量数据库 - 用 Qdrant Cloud(免费)
vector_db:
provider: qdrant
url: ${QDRANT_URL}
api_key: ${QDRANT_API_KEY}

# 对象存储 - 阿里云 OSS
storage:
provider: aliyun_oss
bucket: ${OSS_BUCKET}
access_key: ${OSS_ACCESS_KEY}
secret_key: ${OSS_SECRET_KEY}
endpoint: ${OSS_ENDPOINT}

# PARA 配置
knowledge:
para_structure:
projects: "01_Projects"
areas: "02_Areas"
resources: "03_Resources"
archives: "04_Archives"
search_priority:
- projects
- areas
- resources

6.3 环境变量

创建 ~/openclaw/.env

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
# DeepSeek API(便宜好用)
DEEPSEEK_API_KEY=sk-xxxxxx

# Qdrant Cloud(免费 1G)
QDRANT_URL=https://xxx.qdrant.io
QDRANT_API_KEY=xxxxxx

# 阿里云 OSS
OSS_BUCKET=your-bucket
OSS_ACCESS_KEY=xxxxxx
OSS_SECRET_KEY=xxxxxx
OSS_ENDPOINT=oss-cn-hangzhou.aliyuncs.com

# 企业微信(可选)
WECOM_CORP_ID=xxxxxx
WECOM_AGENT_ID=xxxxxx
WECOM_SECRET=xxxxxx

6.4 Docker Compose

创建 ~/openclaw/docker-compose.yml

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
version: '3.8'

services:
openclaw:
image: openclaw/openclaw:latest
container_name: openclaw
restart: unless-stopped
ports:
- "8000:8000"
environment:
- TZ=Asia/Shanghai
env_file:
- .env
volumes:
- ./config:/app/config
- ./data:/app/data
- ./logs:/app/logs
mem_limit: 800m

redis:
image: redis:7-alpine
container_name: openclaw-redis
restart: unless-stopped
mem_limit: 100m

nginx:
image: nginx:alpine
container_name: openclaw-nginx
restart: unless-stopped
ports:
- "80:80"
- "443:443"
mem_limit: 50m

6.5 启动

1
2
3
4
5
cd ~/openclaw
docker compose up -d

# 看日志
docker compose logs -f openclaw

七、接入微信

OpenClaw 原生支持企业微信,个人微信可以通过”微信插件”关联。

7.1 创建企业微信

  1. https://work.weixin.qq.com 注册
  2. 选”个人”类型,免费
  3. 创建一个自建应用

7.2 获取凭证

在应用详情页记下:

  • Corp ID
  • Agent ID
  • Secret

然后配置回调 URL:https://你的域名/wecom/callback

7.3 关联个人微信

在企业微信后台:

  1. “我的企业” → “微信插件”
  2. 用个人微信扫码关注
  3. 之后在个人微信里就能直接跟 AI 聊天了

八、存储方案

8.1 为什么需要两套存储?

存什么 放哪 为什么
原始文件 OSS 容量大、不占本地盘
语义索引 向量库 让 AI 能”理解”内容

简单说:

  • OSS = 文件的”仓库”,存原文
  • 向量库 = 文件的”索引”,存 AI 能理解的特征

8.2 OSS 配置

阿里云 OSS 或 Cloudflare R2 都行,R2 有免费 10G。

建议用 RaiDrive 把 OSS 挂载成本地盘,这样往里拖文件就自动上传了。(这个之前写过,不展开了)

8.3 向量库选择

方案 费用 推荐
Qdrant Cloud 免费 1G 👈 首选
本地 Qdrant 免费 占内存

选 Qdrant Cloud 就行,免费额度够个人用很久。


九、知识库接入 OpenClaw

9.1 创建检索工具

在 OpenClaw 里创建 tools/knowledge_search.py

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
from qdrant_client import QdrantClient

class KnowledgeSearch:
# PARA 检索优先级
PRIORITY = ["projects", "areas", "resources"]

def __init__(self):
self.client = QdrantClient(
url=os.getenv("QDRANT_URL"),
api_key=os.getenv("QDRANT_API_KEY")
)

def search(self, query, limit=5):
results = []
for category in self.PRIORITY:
hits = self.client.search(
collection_name=f"para_{category}",
query_vector=self.embed(query),
limit=limit
)
results.extend(hits)
if len(results) >= limit:
break
return results

9.2 系统提示词

配置 OpenClaw 的 system prompt:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
你是个人知识管理助手,帮助用户管理基于 PARA 方法的知识库。

知识库结构:
- Projects:当前项目(毕业论文、实习、职业规划)
- Areas:长期关注(学业、健康、财务)
- Resources:参考资料
- Archives:归档内容

检索时优先从 Projects 找,其次是 Areas。

你的能力:
- 帮用户查找、整理知识
- 协助项目管理
- 提供学习建议
- 记录重要信息

十、使用场景

搭好之后能干什么?

10.1 论文相关

1
2
3
4
5
用户:我之前看过一篇关于深度学习的论文,讲 Transformer 的,帮我找一下
AI:在"毕业论文/文献资料"里找到了 3 篇相关文献:
1. Attention Is All You Need (2017)
2. BERT: Pre-training of Deep Bidirectional Transformers
3. ...

10.2 实习工作

1
2
3
4
5
用户:上周例会讨论的进度安排是什么来着?
AI:根据"实习工作/会议记录/03-02例会纪要"
- 你负责的部分:数据清洗模块
- 截止日期:315
- 下次汇报:39

10.3 面试准备

1
2
3
4
用户:帮我整理一下常见的机器学习面试题
AI:从"职业规划/面试准备"里找到了你之前收集的 20 道题目,
主要分为:基础理论、算法实现、项目经验三类。
要我按类别给你讲一遍吗?

十一、成本估算

项目 费用
VPS(2G 内存) ¥30-50/月
DeepSeek API ¥10-30/月
Qdrant Cloud 免费
阿里云 OSS(10G) ¥5/月
域名(可选) ¥10/年
合计 ¥50-90/月

比订阅 Notion AI($10/月)贵一点,但好处是完全自主可控,数据在自己手里。


十二、总结

搭这个数字助理,主要想解决两个问题:

  1. 资料太多太乱,找不着
  2. 让 AI 帮着整理和检索

技术栈:

  • OpenClaw:AI Agent 框架
  • PARA:知识库组织方法
  • OSS + 向量库:存储方案
  • DeepSeek API:大模型

整体不算太复杂,有点技术基础的话,一个周末能搞定。

后续想做的事

  • 加上语音交互(微信发语音也能识别)
  • 接入更多工具(日历、提醒)
  • 多用户支持(给家里其他人也开账号)

相关链接