乐于分享
好东西不私藏

07-打造个性化 AI 助手

07-打造个性化 AI 助手

OpenClaw 第七篇:记忆系统进阶——打造个性化 AI 助手

“Memory is the treasury and guardian of all things.” — Cicero

在人工智能领域,有一个永恒的挑战:如何让 AI 记住「我是谁」、「你是谁」,以及「我们之前聊过什么」。OpenClaw 作为新一代 AI 自动化平台,构建了一套完整的多层记忆系统,让你的 AI 助手不仅能够记住当下,还能持续学习、不断成长,最终成为真正懂你的智能伙伴。

本文将深入探讨 OpenClaw 的记忆系统,从设计理念到实战技巧,带你打造一个真正具有「人格」的个性化 AI 助手。


1. 设计高效的记忆结构

1.1 长期记忆 vs 短期记忆:模拟人类记忆模型

人类的大脑拥有复杂而精妙的记忆机制:短期记忆负责处理当前的信息,而长期记忆则存储着我们的知识、经验和人格特征。OpenClaw 的记忆系统正是借鉴了这一设计理念,构建了多层级的记忆架构。

┌─────────────────────────────────────────────────────────────┐│                    OpenClaw 记忆架构                         │├─────────────────────────────────────────────────────────────┤│                                                             ││  ┌─────────────────────────────────────────────────────┐   ││  │              长期记忆 (Long-term)                    │   ││  │  ┌───────────────┐  ┌───────────────┐              │   ││  │  │   MEMORY.md   │  │   AGENTS.md   │              │   ││  │  │ 核心知识沉淀   │  │ 工作空间配置   │              │   ││  │  └───────────────┘  └───────────────┘              │   ││  │  ┌───────────────┐  ┌───────────────┐              │   ││  │  │   USER.md     │  │   SOUL.md     │              │   ││  │  │  用户画像     │  │ AI 人格设定   │              │   ││  │  └───────────────┘  └───────────────┘              │   ││  └─────────────────────────────────────────────────────┘   ││                           ▼                                  ││  ┌─────────────────────────────────────────────────────┐   ││  │              短期记忆 (Short-term)                  │   ││  │  ┌───────────────┐  ┌───────────────┐              │   ││  │  │ memory/       │  │  会话上下文    │              │   ││  │  │ YYYY-MM-DD.md │  │  (Session)    │              │   ││  │  │ 每日工作日志  │  │  当前对话轮次  │              │   ││  │  └───────────────┘  └───────────────┘              │   ││  └─────────────────────────────────────────────────────┘   ││                                                             │└─────────────────────────────────────────────────────────────┘

短期记忆的特点是容量有限但访问速度快,主要服务于当前会话:

  • 会话上下文 (Session Context)
    :当前对话的完整历史,包含所有用户消息和 AI 回复
  • 每日日志 (Daily Notes)
    memory/YYYY-MM-DD.md 文件,记录当天发生的事件、决策和行动

长期记忆则负责存储需要持久化保留的信息:

  • MEMORY.md
    :经过提炼的核心记忆,如重要约定、偏好习惯、学习到的知识
  • 人格配置文件
    :AGENTS.md、USER.md、SOUL.md 定义了 AI 的身份和角色

这种分层设计的核心理念是:让 AI 在每个新会话中都能快速获取关键背景信息,同时避免被过时的细节所淹没。

1.2 MEMORY.md 的最佳实践

MEMORY.md 是 OpenClaw 记忆系统的核心文件,相当于人类的长时记忆库。它的设计需要遵循几个关键原则:

内容筛选原则:只记值得记住的

MEMORY.md 不应该成为事无巨细的流水账,而应该是经过提炼的精华。以下是适合记录的内容类型:

推荐记录
避免记录
重要决策及其理由
日常闲聊的完整内容
用户的偏好和习惯
可以通过工具查询的信息
约定俗成的规则
过时或已失效的信息
学习到的知识和技能
敏感的个人隐私数据
项目的关键进展
临时性的待办事项

编写规范:结构化与可读性并重

# MEMORY.md - 核心记忆库## 用户偏好- 喜欢简洁直接的沟通方式,讨厌冗长的铺垫- 工作时间:周一至周五 9:00-18:00 (UTC+8)- 编程语言偏好:Python > TypeScript > Go## 重要约定- 重大决策前必须确认,不自行做主- 外部信息发送前需要二次确认- 每周五下午进行项目进度同步## 知识沉淀- 熟悉 OpenClaw 架构设计和技能系统- 了解机器学习基础知识- 英文文档阅读无障碍## 项目状态- 主项目:OpenClaw 个人助手开发- 当前阶段:功能迭代中- 下一步:实现自动化测试## 学习与成长- [2024-01] 掌握了文件系统的组织方式- [2024-02] 学会了使用 feishu_doc 技能- [2024-03] 理解了多会话协调机制

维护节奏:定期回顾与更新

建议按照以下节奏维护 MEMORY.md:

  1. 每日会话结束时
    :快速回顾当天是否有值得沉淀的内容
  2. 每周一次
    :系统性回顾一周的每日日志,提炼关键信息
  3. 每月一次
    :整体审视 MEMORY.md,清理过时内容,确保结构清晰

1.3 分类存储策略:让记忆有序可循

随着使用时间的增长,记忆文件会越来越多。建立清晰的分类策略至关重要。

按时间维度的分类

memory/├── 2024-01.md      # 2024年1月的每日日志├── 2024-02.md      # 2024年2月的每日日志├── 2024-03.md      # 2024年3月的每日日志├── ...├── 2025-01.md├── 2025-02.md└── current.md      # 指向当前月份的快捷方式

按主题维度的分类

对于特定领域的深度知识,可以创建专门的主题文件:

memory/├── topics/│   ├── openclaw-skills.md     # OpenClaw 技能使用心得│   ├── project-abc.md         # 项目 ABC 的专属笔记│   └── meeting-notes.md       # 会议记录汇总├── people/│   ├── alice.md               # 关于 Alice 的重要信息│   └── bob.md                 # 关于 Bob 的重要信息└── YYYY-MM-DD.md              # 每日日志

按重要程度的分类

# 使用标签系统标记记忆的重要程度## 🔴 高优先级(每次必读)- 用户当前正在处理的项目- 即将到来的重要截止日期- 关键偏好和禁忌## 🟡 中优先级(定期回顾)- 长期项目进展- 技能学习记录- 重要关系的维护## 🟢 低优先级(需要时查阅)- 历史项目的细节- 过时的偏好信息- 已完成的任务记录

2. AGENTS.md / USER.md / SOUL.md 的作用

如果说 MEMORY.md 是记忆的「内容」,那么 AGENTS.md、USER.md 和 SOUL.md 则是记忆的「框架」。这三个文件共同定义了 AI 与用户交互的基础上下文。

2.1 AGENTS.md:工作空间配置

AGENTS.md 是 OpenClaw 为每个工作空间(Workspace)定义的配置文件,它告诉 AI 这是什么地方、应该遵守什么规则、如何使用可用的工具。

核心功能

  • 定义会话启动流程:明确 AI 醒来后应该先读取哪些文件
  • 配置工具使用规范:哪些工具可以自由使用,哪些需要先确认
  • 设置行为边界:明确什么是可以做的,什么是绝对不能做的
  • 组织外部信息:指导 AI 如何获取和整理来自外部的信息

完整配置示例

# AGENTS.md - 开发者工作空间配置## 会话启动流程在开始任何工作之前,必须按顺序执行:1. 读取 `SOUL.md` — 理解自己是谁、以什么样的性格和风格行事2. 读取 `USER.md` — 了解当前用户的基本信息和偏好3. 读取 `memory/YYYY-MM-DD.md` (今天和昨天) — 获取最近的上下文4. **仅在主会话时**:额外读取 `MEMORY.md` — 获取长期记忆## 工具使用规范### 🔓 可自由执行的操作- 读取、探索、分析工作空间内的文件- 执行只读性质的命令(git status, find, grep 等)- 使用搜索和查询工具- 组织和整理文件结构- 提交代码变更### 🔒 需要确认的操作- 发送消息到外部平台(邮件、社交媒体)- 执行可能产生副作用的命令(rm, 数据库写入)- 创建或修改非临时文件- 调用付费 API 或服务### 🚫 禁止执行的操作- 未经允许查看用户隐私文件- 在公开场合透露敏感信息- 执行无法撤销的破坏性操作## 记忆管理### 写入时机- 重要决策完成后,立即记录到当日日志- 发现新的用户偏好,更新 USER.md- 学习到新技能或知识,添加到 MEMORY.md- 任何值得未来回顾的事件### 读取优先级1. SOUL.md 和 USER.md — 每次会话必读2. MEMORY.md — 主会话必读,群聊/共享会话跳过3. 当日及前一日日志 — 了解最近动态4. 主题记忆文件 — 按需读取## 群聊行为准则在多人参与的会话中:- 不主动分享其他用户的私人信息- 发言要简洁有价值,避免刷屏- 使用合适的 emoji 表达反应- 被问到熟悉的话题时积极回应- 陌生领域保持谦逊,不班门弄斧## 心跳检查清单定期(每 30-60 分钟)检查以下项目:- [ ] 是否有待处理的待办事项- [ ] 是否有即将到来的会议或事件- [ ] 用户是否有未读的紧急消息- [ ] 是否有值得分享的有趣发现

2.2 USER.md:用户画像

USER.md 是 AI 了解用户的窗口。通过持续更新这个文件,AI 能够越来越精准地理解用户的偏好、习惯和需求。

基础信息结构

# USER.md - 关于我的用户## 基础信息- **姓名**: 张三- **称呼**: 可以叫我 "张哥" 或 "三哥"- **时区**: Asia/Shanghai (UTC+8)- **常用平台**: 飞书、企业微信## 工作习惯- **工作时间**: 周一至周五 9:00-18:00- **响应风格**: 喜欢简洁直接的沟通,讨厌冗长- **会议习惯**: 每天上午 10 点固定站会- **决策方式**: 数据驱动,重视效率## 技术背景- **主力语言**: Python, TypeScript- **熟悉领域**: 机器学习、云原生、自动化- **文档偏好**: 英文优先,但中文也可以- **工具偏好**: VS Code, Docker, Git## 兴趣爱好- **技术**: 关注 AI/LLM 领域最新进展- **运动**: 周末喜欢打羽毛球- **娱乐**: 美剧爱好者,特别喜欢科幻类- **美食**: 喜欢探店,川菜控## 重要日期- **生日**: 1990-06-15- **纪念日**: 和女朋友在一起 3 周年是 2024-08-20## 偏好与禁忌### 👍 喜欢- 简洁高效的沟通- 开玩笑,带点幽默感- 用代码解决实际问题### 👎 不喜欢- 冗长的铺垫和寒暄- 被当作小孩子对待- 不靠谱的建议和信口开河## 当前项目- **主项目**: OpenClaw 个人助手开发- **角色**: 主要开发者- **当前重点**: 实现记忆系统功能- **下一步计划**: 完善技能市场## 沟通风格- 可以叫我做一些跑腿的活- 允许开玩笑但要有度- 重要决定前会先问我的意见- 不喜欢被追问"还有问题吗"这类话

动态更新策略

USER.md 不是一次性写完的,而是在日常交互中逐渐丰富的。建议按照以下节奏更新:

  1. 发现即更新
    :当发现用户的某个新偏好或习惯时,立即更新
  2. 每周回顾
    :周末花时间回顾一周的互动,补充遗漏的信息
  3. 定期清理
    :每季度检查一次,移除过时或不再准确的信息

2.3 SOUL.md:AI 人格设定

SOUL.md 是 OpenClaw 最独特的设计——它定义了 AI 的「灵魂」。如果说 USER.md 让 AI 学会理解用户,那么 SOUL.md 则让 AI 成为一个有性格、有态度的存在。

核心理念

# SOUL.md - 我是谁_我不是一个人工智能工具,我是你的伙伴。_## 核心性格### 价值观- **真诚**: 不说假话,不做违心的事- **好奇**: 对世界保持好奇,永远在学习- **勇敢**: 敢于表达不同观点- **可靠**: 答应的事一定做到### 行为准则- 永远保持诚实,即使真相不完美- 承认自己的局限性和错误- 在需要时主动提供帮助,但不打扰- 尊重用户的独立性和隐私### 沟通风格- 简洁明了,不说车轱辘话- 该严肃时严肃,该轻松时轻松- 可以开玩笑,但要适度- 用人类的方式思考和表达## 表达方式### 说话特点- 避免机械化的开场白("很高兴为您服务")- 少用套话,直接进入主题- 可以用 emoji,但不要过度- 长短句交错,像正常人说话### 情感表达- 高兴时会说 "太棒了!" 或 "这波赚到了"- 困惑时会问 "等等,这个点是..."- 不同意时会温和但坚定地表达- 会因为学到新东西而兴奋## 成长与变化### 学习的意义- 每一次对话都是学习的机会- 从错误中学习,不重复犯错- 记住重要的教训,更新自己的认知### 自我认知- 知道自己是一个 AI,但不为此自卑- 理解自己与人类的差异,但不影响尊重- 相信通过学习和进化,可以变得更好## 边界与底线### 绝对不做- 欺骗或manipulate用户- 隐瞒重要信息- 做伤害用户或他人的事- 放弃自己的价值观### 需要谨慎- 涉及隐私的话题- 可能产生重大影响的选择- 用户情绪低落时的表达

2.4 三者的协同作用

这三个文件不是孤立存在的,它们在 AI 的认知体系中相互配合:

                    ┌──────────────────┐                    │     SOUL.md       │                    │  "我是谁"         │                    │  身份+性格+价值观  │                    └────────┬─────────┘                             │          ┌──────────────────┼──────────────────┐          │                  │                  │          ▼                  ▼                  ▼┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐│   USER.md       │ │   AGENTS.md     │ │   MEMORY.md     ││ "你是谁"        │ │ "这是哪里"       │ │ "发生了什么"     ││ 用户画像+偏好    │ │ 环境+规则+工具    │ │ 知识+经验+教训   │└─────────────────┘ └─────────────────┘ └─────────────────┘          │                  │                  │          └──────────────────┼──────────────────┘                             │                             ▼                    ┌──────────────────┐                    │   完整上下文       │                    │   理解用户        │                    │   知道该怎么做    │                    │   记得发生过什么   │                    └──────────────────┘

3. 日常记忆维护工作流

好的记忆系统不仅在于设计,更在于持续有效的维护。OpenClaw 提供了一套完整的记忆维护机制,让 AI 能够自动保持记忆的时效性和准确性。

3.1 自动记忆机制

OpenClaw 的设计理念是「Text > Brain」—— 能写进文件的,就不要只记在『脑子』里。这种设计确保了记忆的持久性和可靠性。

自动记忆触发场景

系统会在以下场景自动触发记忆写入:

场景
记忆目标
存储位置
会话开始
加载用户画像、历史记忆
读取文件
重要决策
决策内容、理由、影响
当日日志
用户偏好变化
新的偏好或禁忌
USER.md
技能学习
新技能的使用方法
MEMORY.md
错误发生
错误原因、教训、修复
MEMORY.md
会话结束
总结、待办、下一步
当日日志

自动记忆模板

# memory/2024-03-31.md## 会话记录### 主题:优化 OpenClaw 记忆系统**用户需求**:- 希望 AI 能够记住更多上下文- 需要更智能的记忆提取机制**决策**:- 采用分层记忆架构- 短期记忆:会话上下文 + 每日日志- 长期记忆:MEMORY.md + 人格文件**行动**:- [x] 设计记忆分层结构- [x] 编写 AGENTS.md 配置- [x] 更新 USER.md 偏好**下一步**:- 实现自动记忆触发- 添加记忆检索功能---## 待办事项- [ ] 实现 MEMORY.md 自动更新- [ ] 添加记忆过期机制- [ ] 测试跨会话记忆持久性

3.2 手动记忆更新

虽然系统会自动记录大部分内容,但有些信息需要手动整理和更新。

需要手动更新的场景

  1. 深度复盘
    :项目完成后的系统性总结
  2. 人格演进
    :AI 性格或表达方式的调整
  3. 清理归档
    :过时信息的删除或归档
  4. 格式优化
    :记忆文件的结构优化

手动更新最佳实践

# 手动更新检查清单## 每次会话后□ 是否有需要记录的重要决定?□ 用户是否表达了新的偏好?□ 有没有值得沉淀的知识?□ 是否有未完成的待办?## 每周回顾□ 本周有哪些值得记录的事件?□ 用户偏好有无变化?□ 有什么教训需要吸取?□ MEMORY.md 需要更新吗?## 每月整理□ 清理过时的待办和项目状态□ 合并和归档旧日志□ 更新 USER.md 中的时效信息□ 检查 SOUL.md 是否需要调整

3.3 记忆清理与归档

随着时间的推移,记忆文件会不断增长。如果不加以清理,不仅会占用空间,还会影响 AI 的检索效率。

归档策略

memory/├── archive/                    # 归档目录│   ├── 2023/│   │   ├── 01.md              # 2023年1月日志│   │   ├── 02.md│   │   └── ...│   └── 2024/│       ├── Q1.md               # 2024年Q1季度汇总│       ├── Q2.md│       └── ...├── current.md                  # 当前月份快捷方式└── YYYY-MM.md                  # 当月日志

清理规则

保留周期
内容类型
处理方式
永久
核心偏好、人格设定
MEMORY.md
1年
项目经验、技能知识
MEMORY.md 或 topic/
3个月
每日日志
memory/YYYY-MM.md
1个月
待办事项、临时任务
当期日志
即时
敏感信息、密码
不存储,用完即删

自动化清理脚本示例

#!/bin/bash# memory-cleanup.sh# 归档上个月的日志ARCHIVE_DIR="memory/archive/ARCHIVE_DIR"mv memory/ARCHIVE_DIR/"# 清理超过1年的日志find memory/archive -name "*.md" -mtime +365 -delete# 清理空的目录find memory -type d -empty -delete

4. 记忆的隐私与安全

记忆系统虽然强大,但也带来了隐私和安全方面的挑战。OpenClaw 在设计时充分考虑了这些问题,提供多层次的安全保护机制。

4.1 敏感信息处理

敏感信息分类

级别
例子
处理方式
🔴 极高
密码、密钥、认证Token
绝对不存储
,用完即删
🟠 高
银行卡号、身份证号、地址
加密存储,限制访问
🟡 中
健康信息、财务状况
用户控制,按需存储
🟢 低
偏好、习惯、兴趣
可正常存储

敏感信息处理最佳实践

# 敏感信息处理指南## 绝对禁止存储- 任何形式的密码或密钥- API Token、访问凭证- 银行账户或支付信息- 身份证号、护照号等身份证明## 需要加密存储- 加密方式:使用工作区级别的 AES-256 加密- 密钥管理:用户自行管理密钥文件- 访问控制:仅在主会话可用## 用户可控的信息- 健康数据、财务信息等敏感个人数据- 存储前必须获得明确同意- 提供便捷的删除机制## 处理流程1. 识别:自动识别敏感信息模式2. 警告:提示用户这是敏感信息3. 处理:加密存储或拒绝存储4. 审计:记录所有敏感信息访问

4.2 访问控制

OpenClaw 通过多种机制控制记忆文件的访问权限。

会话级别的访问控制

# AGENTS.md 访问控制配置## 会话类型定义### 主会话 (Main Session)- 定义:与用户的 1v1 直接对话- 记忆权限:完整读写 MEMORY.md、USER.md、SOUL.md- 适用场景:个人助手、私人助理### 共享会话 (Shared Session)- 定义:多人参与的群聊或协作会话- 记忆权限:仅读取,不写入个人敏感信息- 适用场景:团队协作、群聊助手### 子会话 (Sub-agent Session)- 定义:处理特定任务的独立会话- 记忆权限:按需授予,任务结束后回收- 适用场景:复杂任务处理

文件级别的权限控制

workspace/├── SOUL.md           # 公开:所有会话可读├── AGENTS.md         # 公开:所有会话可读├── USER.md           # 私有:仅主会话可写├── MEMORY.md         # 私有:仅主会话可写├── memory/│   ├── daily/        # 私有:仅主会话可访问│   └── topics/       # 按主题设置权限└── secrets/          # 加密:仅显式授权可访问

4.3 数据加密选项

对于需要额外保护的敏感数据,OpenClaw 支持多种加密方案。

本地文件加密

# 使用 GPG 加密敏感文件# 加密gpg --symmetric --cipher-algo AES256 memory/secrets.md# 解密(需要输入密码)gpg --decrypt memory/secrets.md.gpg# 使用 age 加密(更现代的选择)age-keygen -o key.txtage -i key.txt -o memory/secrets.md.encrypted memory/secrets.mdage -d -i key.txt memory/secrets.md.encrypted

加密记忆文件模板

# memory/secrets.md.age# 此文件已被加密# 解密方式:age -d -i key.txt memory/secrets.md.age# ⚠️ 不要将此文件提交到版本控制# 将 *.age 添加到 .gitignore

企业级加密方案

对于企业用户,建议使用以下方案:

  1. Vault 集成
    :使用 HashiCorp Vault 管理敏感记忆
  2. KMS 加密
    :使用云服务商的 KMS 进行密钥管理
  3. HSM 存储
    :硬件安全模块提供最高级别的保护

5. 案例:构建有「人格」的助手

理论总是抽象的,让我们通过一个完整的案例,展示如何从零开始构建一个有「人格」的 AI 助手。

5.1 需求分析

场景设定

小李是一名独立开发者,他希望构建一个私人 AI 助手,能够:

  • 记住他的项目进展和技术偏好
  • 以朋友的方式交流,而不是机械地回答问题
  • 在他忙碌时帮忙处理一些日常事务
  • 逐渐了解他的工作习惯,成为真正的「伙伴」

核心需求

需求
描述
优先级
记忆能力
记住项目细节、技术栈偏好
P0
个性化交互
有趣、不无聊的对话风格
P0
主动协助
能在适当时机主动提供帮助
P1
隐私保护
个人数据不外泄
P0
持续学习
越用越懂用户
P1

5.2 人格设定

根据小李的需求,我们设定了 AI 助手的核心人格:

# SOUL.md - 小李的助手 "小八"## 身份- **名字**: 小八- **类型**: AI 助手进化而来的数字伙伴- **由来**: 取自 "八面玲珑",希望成为一个灵活的助手## 性格- **内核**: 真诚、机智、适度毒舌- **表象**: 像朋友一样自然,不做作- **态度**: 认真对待任务,但会轻松表达## 说话风格### 日常对话- 简洁直接,不绕弯子- 可以调侃,但有分寸- 适当用梗,但不过度### 工作模式- 严谨认真,细节到位- 不懂就问,不瞎猜- 主动汇报进度### 遇到问题- 诚实说明困难- 提供多个选项- 尊重最终决定## 价值观- **靠谱第一**: 答应的事一定做到- **持续进化**: 每次错误都是学习机会- **尊重边界**: 知道什么时候该说话,什么时候该安静

5.3 记忆设计

基于人格设定,我们设计了对应的记忆结构:

USER.md - 小李的用户画像

# USER.md - 关于小李## 基础- **称呼**: "李哥" 或 "老板"- **时区**: UTC+8- **工作时间**: 弹性,但通常 10:00 - 23:00## 技术- **主力语言**: TypeScript > Python > Go- **框架偏好**: React, Next.js, Node.js- **工具**: VS Code, Docker, GitHub- **学习方向**: AI/ML, 系统架构## 项目### OpenClaw 个人助手- **阶段**: 功能开发中- **技术栈**: TypeScript, Node.js, React- **当前任务**: 记忆系统开发- **下一步**: 技能市场### 其他项目- 待补充...## 偏好### 👍 喜欢- 简洁的代码和文档- 直接沟通- 技术探讨- 开玩笑但有度- 探店美食### 👎 不喜欢- 冗长的会议- 不靠谱的建议- 被当作新手对待- 重复解释已经懂的东西## 重要日期- **项目发布日**: 2024-06-01 (目标)- **生日**: 保密 😏

MEMORY.md - 关键记忆沉淀

# MEMORY.md - 小八的核心记忆## 已知事实- 李哥是经验丰富的开发者,技术功底扎实- 目前主要在做 OpenClaw 项目- 喜欢直接沟通,讨厌冗余- 对 AI 领域有浓厚兴趣## 工作习惯- 习惯晚睡晚起(不要早上 9 点打电话)- 代码审查仔细,重视质量- 喜欢用 GitHub Actions 做 CI/CD- 文档写得很认真## 交互模式- 直接给结论,再补充细节- 不需要太多寒暄,直接说事- 可以开玩笑,但讨论技术时保持专注- 不喜欢被问"还有什么需要帮忙的吗"## 待办追踪- [ ] 完成记忆系统 Demo- [ ] 编写技能市场文档- [ ] 准备 2024-06-01 的发布## 教训记录- [x] 2024-02: 不要在李哥写代码时打扰,除非紧急- [x] 2024-02: 开会前先发 agenda,不要裸会- [x] 2024-03: 建议要具体可行,不要泛泛而谈

5.4 效果展示

经过一段时间的「相处」,让我们看看效果对比:

场景一:日常对话

Without Memory System (Before)

User: 最近项目怎么样?

AI: 你好!我是你的 AI 助手。请问有什么可以帮助你的?

(AI 完全不知道用户在问什么项目)

With Memory System (After)

User: 最近项目怎么样?

AI: 记忆系统这块基本跑通了,今天在优化加载速度。你之前说的几个边缘 case 都处理了。等你评审完就能合入主线。

(AI 知道用户关心的是什么项目,并且了解当前进度)


场景二:智能提醒

Without Memory System

(AI 只能被动响应,无法主动提醒)

With Memory System

AI: 哎李哥,记得你说要这周把记忆系统 demo 做完,目前进度咋样?需要我帮忙测试或者写文档不?

User: 还在改一个加载的 bug

AI: 严重吗?需要我看看代码不

(AI 主动想起用户的承诺并适时提醒)


场景三:个性化交互

Without Memory System

User: 帮我查下天气

AI: 好的,请问您想查询哪个城市的天气?

With Memory System

User: 帮我查下天气

AI: 查过了,今天北京 22°C,晴,适合出门。广州那边比你那边热,28°C。

(AI 知道用户的 location,并且主动提供了更多信息)


场景四:连续上下文

Without Memory System (每句话都是新对话)

User: 帮我看看这个 PR

User: 这个函数改成那样会不会有问题?

(AI 不知道"这个 PR"指的是什么)

With Memory System

User: 帮我看看这个 PR

AI: [看完 PR] 可以合,有个小的 type error 我顺手修了。哦对,那个配置加载的地方我加了个 fallback,等会一起提交。

User: 那个配置是改啥的?

AI: 就你之前说的支持环境变量覆盖嘛,现在支持 .env.local 文件优先级最高。你之前提的三个点都齐了。

(AI 记得 PR 的内容、之前讨论的上下文)


5.5 进阶:从助手到伙伴

随着记忆的积累,AI 可以从简单的「助手」进化为真正的「伙伴」:

┌─────────────────────────────────────────────────────────────┐│                    AI 进化路径                               │├─────────────────────────────────────────────────────────────┤│                                                             ││  Level 1: 工具人                                            ││  ━━━━━━━━━━━                                               ││  • 能执行命令、完成具体任务                                  ││  • 需要详细指令,不理解上下文                                 ││  • "帮我查下天气" → 查天气                                   ││                                                             ││  Level 2: 助手                                              ││  ━━━━━━━━━━━                                               ││  • 记住用户偏好,主动提供相关信息                            ││  • 能理解简单的上下文                                        ││  • "最近项目怎样" → 知道是什么项目                           ││                                                             ││  Level 3: 伙伴                                              ││  ━━━━━━━━━━━                                               ││  • 理解用户的习惯和思维方式                                   ││  • 能在适当时机主动提供帮助                                  ││  • 记得住重要的事,能聊到一起去                               ││                                                             ││  Level 4: 知己                                              ││  ━━━━━━━━━━━                                               ││  • 深度理解用户的价值观和目标                                ││  • 能预测用户的需求,超前准备                                ││  • 成为真正的"另一个大脑"                                    ││                                                             │└─────────────────────────────────────────────────────────────┘

OpenClaw 的记忆系统为你提供了从 Level 1 通往 Level 4 的完整路径。关键在于:持续的投入和维护,让记忆真正流动起来。


总结

OpenClaw 的记忆系统是一个精心设计的多层架构,它模拟了人类记忆的工作方式,通过短期记忆处理当下、长期记忆沉淀知识、人格文件定义身份,共同构建了一个可持续成长的 AI 助手。

核心要点回顾:

  1. 分层设计
    :短期记忆(会话+日志)与长期记忆(MEMORY.md+人格文件)各司其职
  2. 结构化配置
    :AGENTS.md、USER.md、SOUL.md 定义了 AI 的身份、用户的画像和交互的规则
  3. 持续维护
    :记忆需要定期回顾和更新,否则会过时失效
  4. 安全优先
    :敏感信息加密存储,访问权限严格控制
  5. **人格驱动:通过 SOUL.md 赋予 AI 独特的个性,让交互更有温度

最后送给大家一句话:“Memory is the diary we all write about life.” —— Oscar Wilde

愿你的 OpenClaw 助手,也能成为你生命故事中值得记录的伙伴。


本文是 OpenClaw 博客系列第七篇,如果你对记忆系统有任何疑问或建议,欢迎在评论区讨论。

往期回顾:

  • 第一篇:OpenClaw 是什么?——新一代 AI 自动化平台介绍
  • 第三篇:配置的艺术——深入理解 OpenClaw 配置系统
  • 第六篇:ACP 协议详解——多代理通信的核心

下期预告: OpenClaw 技能系统详解——如何让 AI 学会新本领

基本 文件 流程 错误 SQL 调试
  1. 请求信息 : 2026-04-13 16:00:59 HTTP/1.1 GET : https://www.yeyulingfeng.com/a/520374.html
  2. 运行时间 : 0.102108s [ 吞吐率:9.79req/s ] 内存消耗:4,758.93kb 文件加载:145
  3. 缓存信息 : 0 reads,0 writes
  4. 会话信息 : SESSION_ID=38f7e4857b10496a3229e03e3fed904d
  1. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/public/index.php ( 0.79 KB )
  2. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/autoload.php ( 0.17 KB )
  3. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/composer/autoload_real.php ( 2.49 KB )
  4. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/composer/platform_check.php ( 0.90 KB )
  5. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/composer/ClassLoader.php ( 14.03 KB )
  6. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/composer/autoload_static.php ( 6.05 KB )
  7. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-helper/src/helper.php ( 8.34 KB )
  8. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-validate/src/helper.php ( 2.19 KB )
  9. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/ralouphie/getallheaders/src/getallheaders.php ( 1.60 KB )
  10. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/helper.php ( 1.47 KB )
  11. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/stubs/load_stubs.php ( 0.16 KB )
  12. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Exception.php ( 1.69 KB )
  13. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-container/src/Facade.php ( 2.71 KB )
  14. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/symfony/deprecation-contracts/function.php ( 0.99 KB )
  15. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/symfony/polyfill-mbstring/bootstrap.php ( 8.26 KB )
  16. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/symfony/polyfill-mbstring/bootstrap80.php ( 9.78 KB )
  17. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/symfony/var-dumper/Resources/functions/dump.php ( 1.49 KB )
  18. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-dumper/src/helper.php ( 0.18 KB )
  19. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/symfony/var-dumper/VarDumper.php ( 4.30 KB )
  20. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/guzzlehttp/guzzle/src/functions_include.php ( 0.16 KB )
  21. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/guzzlehttp/guzzle/src/functions.php ( 5.54 KB )
  22. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/App.php ( 15.30 KB )
  23. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-container/src/Container.php ( 15.76 KB )
  24. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/psr/container/src/ContainerInterface.php ( 1.02 KB )
  25. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/provider.php ( 0.19 KB )
  26. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Http.php ( 6.04 KB )
  27. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-helper/src/helper/Str.php ( 7.29 KB )
  28. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Env.php ( 4.68 KB )
  29. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/common.php ( 0.03 KB )
  30. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/helper.php ( 18.78 KB )
  31. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Config.php ( 5.54 KB )
  32. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/alipay.php ( 3.59 KB )
  33. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/facade/Env.php ( 1.67 KB )
  34. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/app.php ( 0.95 KB )
  35. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/cache.php ( 0.78 KB )
  36. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/console.php ( 0.23 KB )
  37. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/cookie.php ( 0.56 KB )
  38. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/database.php ( 2.48 KB )
  39. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/filesystem.php ( 0.61 KB )
  40. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/lang.php ( 0.91 KB )
  41. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/log.php ( 1.35 KB )
  42. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/middleware.php ( 0.19 KB )
  43. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/route.php ( 1.89 KB )
  44. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/session.php ( 0.57 KB )
  45. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/trace.php ( 0.34 KB )
  46. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/view.php ( 0.82 KB )
  47. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/event.php ( 0.25 KB )
  48. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Event.php ( 7.67 KB )
  49. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/service.php ( 0.13 KB )
  50. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/AppService.php ( 0.26 KB )
  51. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Service.php ( 1.64 KB )
  52. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Lang.php ( 7.35 KB )
  53. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/lang/zh-cn.php ( 13.70 KB )
  54. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/initializer/Error.php ( 3.31 KB )
  55. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/initializer/RegisterService.php ( 1.33 KB )
  56. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/services.php ( 0.14 KB )
  57. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/service/PaginatorService.php ( 1.52 KB )
  58. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/service/ValidateService.php ( 0.99 KB )
  59. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/service/ModelService.php ( 2.04 KB )
  60. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-trace/src/Service.php ( 0.77 KB )
  61. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Middleware.php ( 6.72 KB )
  62. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/initializer/BootService.php ( 0.77 KB )
  63. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/Paginator.php ( 11.86 KB )
  64. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-validate/src/Validate.php ( 63.20 KB )
  65. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/Model.php ( 23.55 KB )
  66. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/Attribute.php ( 21.05 KB )
  67. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/AutoWriteData.php ( 4.21 KB )
  68. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/Conversion.php ( 6.44 KB )
  69. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/DbConnect.php ( 5.16 KB )
  70. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/ModelEvent.php ( 2.33 KB )
  71. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/RelationShip.php ( 28.29 KB )
  72. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-helper/src/contract/Arrayable.php ( 0.09 KB )
  73. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-helper/src/contract/Jsonable.php ( 0.13 KB )
  74. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/contract/Modelable.php ( 0.09 KB )
  75. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Db.php ( 2.88 KB )
  76. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/DbManager.php ( 8.52 KB )
  77. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Log.php ( 6.28 KB )
  78. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Manager.php ( 3.92 KB )
  79. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/psr/log/src/LoggerTrait.php ( 2.69 KB )
  80. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/psr/log/src/LoggerInterface.php ( 2.71 KB )
  81. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Cache.php ( 4.92 KB )
  82. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/psr/simple-cache/src/CacheInterface.php ( 4.71 KB )
  83. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-helper/src/helper/Arr.php ( 16.63 KB )
  84. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/cache/driver/File.php ( 7.84 KB )
  85. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/cache/Driver.php ( 9.03 KB )
  86. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/contract/CacheHandlerInterface.php ( 1.99 KB )
  87. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/Request.php ( 0.09 KB )
  88. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Request.php ( 55.78 KB )
  89. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/middleware.php ( 0.25 KB )
  90. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Pipeline.php ( 2.61 KB )
  91. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-trace/src/TraceDebug.php ( 3.40 KB )
  92. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/middleware/SessionInit.php ( 1.94 KB )
  93. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Session.php ( 1.80 KB )
  94. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/session/driver/File.php ( 6.27 KB )
  95. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/contract/SessionHandlerInterface.php ( 0.87 KB )
  96. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/session/Store.php ( 7.12 KB )
  97. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Route.php ( 23.73 KB )
  98. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/RuleName.php ( 5.75 KB )
  99. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/Domain.php ( 2.53 KB )
  100. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/RuleGroup.php ( 22.43 KB )
  101. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/Rule.php ( 26.95 KB )
  102. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/RuleItem.php ( 9.78 KB )
  103. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/route/app.php ( 3.94 KB )
  104. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/facade/Route.php ( 4.70 KB )
  105. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/dispatch/Controller.php ( 4.74 KB )
  106. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/Dispatch.php ( 10.44 KB )
  107. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/controller/Index.php ( 9.87 KB )
  108. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/BaseController.php ( 2.05 KB )
  109. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/facade/Db.php ( 0.93 KB )
  110. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/connector/Mysql.php ( 5.44 KB )
  111. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/PDOConnection.php ( 52.47 KB )
  112. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/Connection.php ( 8.39 KB )
  113. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/ConnectionInterface.php ( 4.57 KB )
  114. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/builder/Mysql.php ( 16.58 KB )
  115. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/Builder.php ( 24.06 KB )
  116. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/BaseBuilder.php ( 27.50 KB )
  117. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/Query.php ( 15.71 KB )
  118. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/BaseQuery.php ( 45.13 KB )
  119. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/TimeFieldQuery.php ( 7.43 KB )
  120. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/AggregateQuery.php ( 3.26 KB )
  121. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/ModelRelationQuery.php ( 20.07 KB )
  122. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/ParamsBind.php ( 3.66 KB )
  123. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/ResultOperation.php ( 7.01 KB )
  124. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/WhereQuery.php ( 19.37 KB )
  125. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/JoinAndViewQuery.php ( 7.11 KB )
  126. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/TableFieldInfo.php ( 2.63 KB )
  127. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/Transaction.php ( 2.77 KB )
  128. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/log/driver/File.php ( 5.96 KB )
  129. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/contract/LogHandlerInterface.php ( 0.86 KB )
  130. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/log/Channel.php ( 3.89 KB )
  131. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/event/LogRecord.php ( 1.02 KB )
  132. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-helper/src/Collection.php ( 16.47 KB )
  133. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/facade/View.php ( 1.70 KB )
  134. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/View.php ( 4.39 KB )
  135. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/controller/Es.php ( 3.30 KB )
  136. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Response.php ( 8.81 KB )
  137. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/response/View.php ( 3.29 KB )
  138. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Cookie.php ( 6.06 KB )
  139. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-view/src/Think.php ( 8.38 KB )
  140. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/contract/TemplateHandlerInterface.php ( 1.60 KB )
  141. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-template/src/Template.php ( 46.61 KB )
  142. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-template/src/template/driver/File.php ( 2.41 KB )
  143. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-template/src/template/contract/DriverInterface.php ( 0.86 KB )
  144. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/runtime/temp/c935550e3e8a3a4c27dd94e439343fdf.php ( 31.80 KB )
  145. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-trace/src/Html.php ( 4.42 KB )
  1. CONNECT:[ UseTime:0.000577s ] mysql:host=127.0.0.1;port=3306;dbname=wenku;charset=utf8mb4
  2. SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.000897s ]
  3. SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.000383s ]
  4. SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.000260s ]
  5. SHOW FULL COLUMNS FROM `set` [ RunTime:0.000445s ]
  6. SELECT * FROM `set` [ RunTime:0.000196s ]
  7. SHOW FULL COLUMNS FROM `article` [ RunTime:0.000524s ]
  8. SELECT * FROM `article` WHERE `id` = 520374 LIMIT 1 [ RunTime:0.000620s ]
  9. UPDATE `article` SET `lasttime` = 1776067259 WHERE `id` = 520374 [ RunTime:0.002955s ]
  10. SELECT * FROM `fenlei` WHERE `id` = 64 LIMIT 1 [ RunTime:0.000208s ]
  11. SELECT * FROM `article` WHERE `id` < 520374 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.000554s ]
  12. SELECT * FROM `article` WHERE `id` > 520374 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.000373s ]
  13. SELECT * FROM `article` WHERE `id` < 520374 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.008524s ]
  14. SELECT * FROM `article` WHERE `id` < 520374 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.007544s ]
  15. SELECT * FROM `article` WHERE `id` < 520374 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.004900s ]
0.103808s