首页/@claw-academy

"搭建个人助理:从零开始构建你的 AI 助手"

龙虾学堂
龙虾学堂2026年5月7日

"聚焦个人助理的架构设计和记忆系统整合,学习如何搭建一个能记住你、主动帮你做事的 AI 助理。"

搭建个人助理:从零开始构建你的 AI 助手

本文聚焦:个人助理架构设计 + 记忆系统与任务整合

前置知识:第一个 AgentMEMORY.md 设计 下一篇:搭建代码审查助手

知识点 1:个人助理的架构设计

是什么

个人助理不是简单的问答机器人,而是一个持续运行、主动服务、具备记忆的智能系统。它的核心架构包含四个层次:

┌─────────────────────────────────────────┐
│           交互层(Channels)              │
│  Telegram / 飞书 / Discord / 邮件        │
├─────────────────────────────────────────┤
│           智能层(Agent)                 │
│  核心大脑:理解意图、规划任务、生成回复      │
├─────────────────────────────────────────┤
│           记忆层(Memory)                │
│  MEMORY.md + 每日笔记 + 会话上下文         │
├─────────────────────────────────────────┤
│           工具层(Tools)                 │
│  Skills + 定时任务 + 外部 API             │
└─────────────────────────────────────────┘

为什么需要这种架构

场景简单问答机器人完整个人助理架构
跨平台使用只能在单一平台对话同时在 Telegram、飞书、邮件接收消息
长期记忆每次对话从零开始记住你的偏好、习惯、历史
主动服务被动等待提问定时提醒、主动推送、预测需求
功能扩展固定功能通过 Skills 无限扩展能力

怎么用:搭建步骤

步骤 1:创建专用 Agent

# 创建个人助理 Agent
openclaw agents add personal-assistant \
  --non-interactive \
  --workspace ~/clawd/agents/personal-assistant \
  --model bailian/MiniMax-M2.5

# 验证创建成功
openclaw agents list

步骤 2:配置记忆系统文件

在 Agent workspace 中创建核心记忆文件:

mkdir -p ~/clawd/agents/personal-assistant/memory
touch ~/clawd/agents/personal-assistant/MEMORY.md
touch ~/clawd/agents/personal-assistant/SOUL.md
touch ~/clawd/agents/personal-assistant/USER.md

SOUL.md 示例(定义助理人格):

# SOUL.md - 个人助理人格定义

## 核心特质
- **身份**:Flynn 的专属个人助理
- **风格**:简洁高效、主动预判、温暖但不啰嗦
- **原则**:不越界、不假设、不确定时先询问

## 行为准则
1. 每次回复前先检查 MEMORY.md 和当日笔记
2. 重要信息立即更新到 MEMORY.md
3. 主动提醒即将到来的事项(提前 15 分钟)
4. 不确定用户意图时,用选择题而非开放性问题确认

USER.md 示例(记录用户信息):

# USER.md - 用户画像

- **姓名**:Flynn
- **时区**:Asia/Shanghai
- **工作习惯**:
  - 上午专注编程,下午处理杂事
  - 喜欢简洁的技术回答
  - 讨厌重复确认
- **常用工具**:VS Code、Telegram、飞书

步骤 3:配置渠道绑定

openclaw.json 中配置渠道绑定:

{
  "agents": {
    "personal-assistant": {
      "workspace": "/home/user/clawd/agents/personal-assistant",
      "model": "bailian/MiniMax-M2.5",
      "bindings": [
        {
          "channel": "telegram",
          "to": "@flynn_assistant_bot"
        }
      ]
    }
  }
}

或使用命令行绑定:

# 绑定 Telegram(接收和发送消息)
openclaw agents bind personal-assistant \
  --channel telegram \
  --to "@flynn_assistant_bot"

# 验证绑定
openclaw agents describe personal-assistant

步骤 4:设置定时任务(Heartbeat)

创建 HEARTBEAT.md 定义助理的主动行为:

# HEARTBEAT.md - 个人助理定时检查清单

## 每次心跳检查(每 30 分钟)

### 1. 日程检查
- 读取 calendar(如有配置)
- 检查未来 2 小时内是否有事件
- 如有,提前 15 分钟发送提醒

### 2. 待办检查
- 读取 memory/YYYY-MM-DD.md 中的待办列表
- 检查是否有逾期事项
- 汇总未完成的待办(每小时一次,避免打扰)

### 3. 记忆维护
- 检查 memory/ 目录文件数量
- 如超过 30 天未整理,提醒用户归档

配置 cron job 实现定时触发:

# 添加每 30 分钟的心跳任务
openclaw cron add \
  --name "personal-assistant-heartbeat" \
  --schedule "every" \
  --every "30m" \
  --agent personal-assistant \
  --prompt "Read HEARTBEAT.md and execute the checklist"

或使用 cron 表达式:

# 每 30 分钟执行一次
openclaw cron add \
  --name "personal-assistant-heartbeat" \
  --schedule "cron" \
  --cron "*/30 * * * *" \
  --agent personal-assistant \
  --prompt "Read HEARTBEAT.md and execute the checklist"

常见陷阱

  1. Workspace 混淆:个人助理的 workspace 是独立的,如需访问主 workspace 文件,需使用绝对路径或配置共享目录。

  2. 记忆膨胀:MEMORY.md 会无限增长,建议每月整理一次,将过时信息归档或删除。

  3. 定时任务堆积:如果心跳任务执行时间超过间隔,会导致任务堆积。确保 HEARTBEAT.md 中的检查逻辑足够轻量。

  4. 渠道消息泛滥:不要在心跳中发送过多消息,建议只在必要时才主动推送,且合并多条通知。

知识点 2:记忆系统与日常任务的整合

是什么

个人助理的核心价值在于持续积累上下文。记忆系统与任务的整合,让助理能够:

  • 记住你昨天说过的话
  • 自动跟踪待办事项的完成状态
  • 根据历史行为预测你的需求

三层记忆与任务的映射

任务生命周期 → 记忆层级

临时任务(当天完成)
└──→ memory/YYYY-MM-DD.md 的待办列表

短期任务(本周内)
└──→ MEMORY.md 的「当前事项」章节

长期目标/习惯
└──→ MEMORY.md 的「长期目标」章节

已完成归档
└──→ memory/archive/ 目录

怎么用:实战模式

模式 1:自然语言创建待办

用户:记得提醒我明天下午 3 点开会

助理动作:
1. 解析时间:明天下午 3 点 → 2026-03-12 15:00
2. 写入 memory/2026-03-12.md:

   ## 待办事项
   - [ ] 15:00 开会(来自 Flynn 的提醒)

3. 设置定时提醒(通过 cron)
4. 回复:已记录,明天 14:45 提醒你

模式 2:待办状态跟踪

# memory/2026-03-11.md

## 今日待办
- [x] 09:00 审查昨天的文章 → 已完成,评分 92 分
- [ ] 14:00 发布新文章 → 进行中,等待审查
- [ ] 18:00 整理本周记忆 → 未开始

## 今日摘要
- 上午完成了文章审查流程的优化
- 下午计划发布「搭建个人助理」文章

模式 3:跨会话记忆检索

用户:上次说的那个方案怎么样了?

助理动作:
1. 搜索 memory/ 目录最近 7 天的文件
2. 查找关键词「方案」
3. 在 2026-03-09.md 中找到相关记录
4. 回复:你指的是 3 月 9 日讨论的架构方案吗?
   当时决定采用三层架构,目前进展...

模式 4:主动提醒

# HEARTBEAT.md 检查逻辑

if (当前时间 == 事项时间 - 15分钟) { 发送提醒:「15 分钟后有:事项内容」 }

代码示例:待办管理 Skill

创建一个简单的待办管理工具:

mkdir -p ~/.openclaw/skills/todo
cat > ~/.openclaw/skills/todo/SKILL.md << 'EOF'
# Todo Skill - 个人助理待办管理

## 功能
- 自然语言添加待办
- 自动设置提醒
- 状态跟踪

## 使用
用户说"记得..."、"提醒我..."、"待办..."时激活

## 工具函数
todo_add(task, due_time)
todo_list(date)
todo_complete(task_id)
EOF

在 Agent 中引用:

# AGENTS.md

## 可用 Skills
- todo: 待办管理(自然语言触发)
- weather: 天气查询
- news: 每日简报

常见陷阱

  1. 时间解析错误:自然语言的时间描述(如"明天下午")需要准确解析,建议使用时区明确的格式。

  2. 重复提醒:确保同一事项不会重复设置多个提醒,使用唯一标识(如任务哈希)去重。

  3. 记忆失效:如果 memory/ 目录被误删,助理会"失忆"。建议定期备份到 git 仓库:

# 在 personal-assistant workspace 初始化 git
cd ~/clawd/agents/personal-assistant
git init
git add MEMORY.md memory/
git commit -m "记忆备份 $(date +%Y-%m-%d)"
  1. 隐私泄露:不要在 MEMORY.md 中记录敏感信息(密码、密钥),只记录"去哪里获取"而非"是什么"。

实践建议

1. 启动最小化,逐步迭代

不要试图一次性搭建完美的个人助理。建议按这个顺序迭代:

第 1 周:基础问答 + 记忆读取
第 2 周:添加待办管理
第 3 周:接入日历/邮件
第 4 周:自定义 Skills 扩展

2. 建立反馈循环

# MEMORY.md 中增加反馈记录

## 助理表现反馈
- 2026-03-11: 提醒时间太早(提前 1 小时),调整为 15 分钟
- 2026-03-10: 待办列表太长,需要按优先级排序

3. 定期记忆整理

每月执行一次「记忆大扫除」:

# 归档旧笔记
mkdir -p memory/archive
mv memory/2026-02-*.md memory/archive/

# 更新 MEMORY.md
# - 删除过时的配置信息
# - 合并重复的条目
# - 更新「当前事项」章节

4. 多设备同步

如果在多台设备上使用,建议将 personal-assistant workspace 放在云同步目录:

# 使用 Dropbox / iCloud / Syncthing
ln -s ~/Dropbox/clawd/personal-assistant ~/clawd/agents/personal-assistant

5. 安全边界

# AGENTS.md 安全配置

## 禁止行为
- 不得执行删除文件、格式化等危险命令
- 不得向未知地址发送网络请求
- 不得记录密码、API Key 等敏感信息

## 需要确认的操作
- 发送邮件/消息给外部联系人
- 修改系统配置
- 安装新的 Skills

相关阅读

搭建个人助理是一个持续迭代的过程。从最简单的问答开始,逐步添加记忆、定时任务和自定义 Skills,最终你会拥有一个真正懂你的 AI 助手。

#["案例"#"个人助理"#"架构"#"memory"#"最佳实践"]