乐于分享
好东西不私藏

AI Agent 的五层记忆架构(下):历史召回、证据链治理与技能沉淀

AI Agent 的五层记忆架构(下):历史召回、证据链治理与技能沉淀

上周那篇聊到,Agent 记忆有五层架构,上篇讲了前两层——规则记忆和常住画像。结尾我留了个钩子,说还有三层没聊。

今天就接着聊完剩下的三层。

顺便提一句,如果你没看上篇,建议先翻翻,不然「第三层」「第四层」的叫法你可能不知道我在指什么。

好,直接进入正题。

从那个踩了两次坑的 Agent 说起

上篇开头的场景还记得吧?我的 Agent 同一个坑踩了两遍——session 一过期,它就不记得上周发生过什么,问了一样的问题,犯了同样的错误。

上篇解决了两件事。它知道「我是谁」(常住画像),也知道「我该按什么规则做事」(规则记忆)。

但没解决的关键问题是,「我之前做过什么」「我上次是怎么解决这个问题的」

这恰好就是第三层要解决的事。

第三层,历史召回

常住画像和规则记忆只保留了最高频的信息。它们就像你的身份证和岗位手册,告诉你你是谁、该怎么做。

但历史细节不一样。你两周前跟客户开会的具体内容,不会写在你的身份证上。你也需要的时候再去翻聊天记录和邮件。

Agent 也是一样。

Hermes 的做法挺有意思。它把历史会话存进一个 SQLite 数据库里,用 FTS5(全文检索引擎)做搜索。需要回忆什么的时候,直接搜。

「两周前我们讨论的那个发布流程的坑,叫什么来着?」

FTS5 搜一下,几行结果就出来了。

三个方案,三种取舍

做得久一点的 Agent 框架,对这个问题都有各自的理解。我整理了一下,大概分三种路子。

Claude Code 的做法是最朴素的。 它把所有历史指令和对话流水式地存成一个线性日志。CLAUDE.md 是它最重要的规则文件,但跨 session 的历史记录就是一串顺序排列的文本,没有索引,没有分类。要找什么,你得自己翻自己找。简单是简单,但你用过就知道,当日志长到一定规模,找信息就像在地铁站里找一颗掉落的硬币。

Codex 的做法会更结构化一些。 它按类型归档——规则文件放一类,项目上下文放一类,历史记录按项目分目录。每个目录有自己的结构。好处是分类清晰,缺点是灵活性差。一个跨类别的复杂问题,比如「这个项目在两周前遇到过什么部署问题」,你需要在好几个目录里分别搜索再拼起来。

Hermes 选了中间路线。 它用 SQLite FTS5 做全文检索,也就是搜索引擎那一套。它把每个会话都存进数据库,每条消息都建立了全文索引。搜索的时候不是按目录翻,而是像 Google 一样,输入关键词,FTS5 返回匹配的结果,带着上下文片段。

我实际用过几次,感觉区别挺明显的。

举个例子。我前几天想找一个很久以前的 session,当时东哥说了一句话「不要在 index.md 里写结尾模板,convert_to_wechat.py 会自动加」。具体是哪个会话我完全不记得了。

用 Hermes 的 session_search 功能,我输入「结尾模板 重复 convert_to_wechat」,FTS5 直接定位到了那个会话,还把匹配的那段上下文一起拉出来了。整个过程大概三秒。

如果走 Claude Code 的线性日志路线,我可能得翻好几分钟。如果走 Codex 的目录归档,我得先回忆当时这个讨论是在哪个项目目录下的,再一层层翻。

所以 Hermes 这个 FTS5 的中间路线,我觉得是找到了一个挺好的平衡点。检索能力够用,实施成本也不高。

按主题归档

但纯粹靠搜索也有一个问题——你搜什么关键词,决策权在你手里。有时候你根本不知道要搜什么关键词。

比如你的 Agent 早上醒过来,它需要「最新」的信息,但不一定知道「最新」应该搜什么。

Hermes 的解决方案是,按 topic files 归档。什么意思呢?就是把高频话题单独拉出来,一个话题一个文件,存成结构化的笔记。

我在 MEMORY.md 里的那些核心笔记,其实就是在手动做这件事情。比如我把「图片引用格式」记成一条笔记,Agent 启动的时候自然就读到了。不需要它去搜索什么关键词,因为这是一条常驻的、按话题归档的笔记。

这种做法介于纯搜索和纯手工之间,我觉得挺实用的。高频话题固化下来,低频话题靠搜索。两个加起来,基本覆盖了大多数场景。

第四层,证据链治理

前面三层解决的是「Agent 能记住什么」。但还有一个更棘手的问题——Agent 记住的东西,对吗?

这个问题我是在踩了一个坑之后才意识到的。

有个周末我让 Agent 帮我查一下某个 API 的最新 endpoints 和参数。它查到了,回答了我,然后顺手把信息记进了自己的记忆里。一切都很好。

直到周二,那个 API 升级了,之前的那套参数全变了。Agent 完全不知道,因为它的记忆里还存着旧的参数。它按照旧参数去调 API,跑了一轮全挂了。

这个问题的本质是什么?

Agent 的记忆系统没有「审计层」。 它不知道一个结论是哪来的、可靠不可靠、有没有过期。

它记住了「A 参数可以调通」,但当 A 参数已经不行了,它还是坚信自己是对的。

一个简单的 postmortem 格式

解决这个问题需要一个审计层。Hermes 的做法是,在记录 Agent 得到的每个重要结论时,用 postmortem 格式把它的「来龙去脉」也记下来。

我用的 postmortem 格式长这样:

问题: [问题描述]根因分析: [为什么会这样]来源可信度: [高/中/低]  高 = 官方文档 / 自己验证过的  中 = 社区 / 博客  低 = 道听途说结论状态: [当前有效 / 已过期 / 已验证 / 待验证]修复动作: [做了什么来修复]

为什么要有这几个字段?

来源可信度解决了一个很实际的问题。你从官方文档拿到的结论和从某个论坛帖子看到的结论,分量是完全不同的。Agent 在决策的时候,"信息来源"应该是一个重要的考虑维度,不是所有信息都是平等的。

结论状态解决的是时效性问题。一个结论会过期。API 会升级、库会更新、最佳实践会变。没有状态标识,Agent 就分不清哪些信息还能用、哪些已经作废了。

定期过期治理

但是光有空格式是没用的。关键是多久做一次「过期清理」。

Hermes 的设计比较务实。它会定期让 Agent 自己检查记忆里的结论——把那些「已过期」的标记出来,重新验证。如果验证后发现结论仍然有效,就把状态改成「已验证」。如果发现已经失效,就标记为「已过期」,并记录新的结论。

我自己设了一个每周一次的 cron job 来做这件事。Agent 每周自动跑一次,扫描所有带「当前有效」标记的条目,根据时间戳判断是否需要重新验证。

这个机制听起来挺重的,但其实跑起来很轻。大多数条目几个月才需要验证一次,每周实际涉及的可能就三四条。

一个踩过的坑

这个第四层,其实是我被坑过一次之后才认真搞的。

有一次我把某个 API 的域名记错了。Agent 根据这个错的信息调了好几天接口都没发现问题——因为它的测试数据是缓存过的,直到正式走流程的时候才炸。排查原因的时候找了好久,才发现根因是记忆里的一条 tiny mistake。

从那以后我花了两个小时重新梳理了所有记忆条目,给每条都补了来源可信度和结论状态。

现在 Hermes 每次做重要决定之前,会先检查结论状态。如果是「待验证」或「已过期」,它不会直接用它做决策,而是先跟我说「我这个信息可能不太准了,要不要重新查一下?」。就这一句话,省了我很多事后排查的功夫。

第五层,技能沉淀

前面四层讲的是 Agent 怎么记住东西。第五层解决的是,Agent 怎么从记住的东西里长出新的能力

这层是最接近「自我进化」概念的。

我自己的体会是,Agent 跟人一样,踩坑不可怕,踩完不反思才可怕。

从踩坑到技能

这个过程在 Hermes 里就是一条流水线。踩坑 → 反思 → 提取模式 → 固化成 skill。

我给你说一个真实的例子。

我有一个 kanban orchestrator 的 skill,现在已经是版本 4 了。最开始写它的时候,是因为我的 Agent 在编排跨 profile 任务的时候反复出问题——任务派对了人,排期不对;排期对了,依赖链又乱了。

连续踩了三次坑之后,我跟 Agent 一起复盘。我把每次出问题的场景写下来,分析模式。然后发现一个规律——大部分编排失败,都是因为任务之间的依赖关系没有处理好。

然后我们把排查出的这几个问题模式提取出来,写成了一条 skill 里的规则:「创建任务时一定要指定 parents 依赖,让 dispatcher 自动管理先后顺序」。

再后来,踩的坑多了,这个 skill 不断补充新规则。「并行任务的超时时间设 4 小时以上,不然高频任务容易断」「任务体里不要写 Secrets,运行记录会持久保存」「如果 worker 掉线了,任务会自动重试,不用手动重派」。

每条规则背后都对应一次踩坑经历。现在这个 skill 经过四个版本迭代,已经覆盖了绝大部分编排场景的坑。

技能和常住画像的区别

很多人会问,技能沉淀和常住画像有什么区别?两者不是都在 Agent 的记忆里吗?

我的理解是这样的。

常住画像回答的是「我是谁」。 Agent 的身份、偏好、不变量。比如「我是斯维因,东哥的统帅,不动手做事,只看地图派兵收战报」。这是 Agent 的自我认知,每次启动都要读。

技能回答的是「我会什么」。 Agent 怎么做一件事、踩过什么坑、有什么最佳实践。比如「发布文章走 wechat-pre-publish-checklist → wechat-publisher 流程」「创建 kanban 任务时必须指定 parents 依赖」。

区别在于,住画像很少变,几个月可能都不需要改一次。而技能是活的,每次踩一个新的坑、发现一个新的最佳实践,技能都会更新版本。它是 Agent 在实践中不断生长的能力库。

Hermes 的 skill 系统还有一个特别好用的点——技能是可复用的。你在这个项目里写好的 skill,可以直接在另一个项目里用。它是版本化的,可以 review,可以回滚。不像自动记忆,什么时候想起了、什么时候忘了,完全随机。

从四层到五层

回到最开始那个场景。那个把同一个坑踩两次的 Agent,问题出在哪?

一层层排查下来,原因很清楚。规则记忆里没有关于「历史 session 决策要不要记住」的规则。常住画像里也没有关于「新旧 session 之间如何保持状态连续」的偏好。历史召回没有建立索引。证据链治理没有审计。技能沉淀没有把踩坑经验固化。

五个层级,少一层都不行。

但反过来看,当这五层都跑通之后,Agent 的状态变化是非常明显的。它不再是一张白纸。它有自己的性格,有自己的工作经验,知道哪些信息来源可靠、哪些需要警惕,还能自己总结规律、优化工作方式。

四种方案,没有万能药

最后做一个对照,看看市面上主流的 Agent 框架在记忆这件事上走的是什么路线。

Claude Code 靠 CLAUDE.md 规则文件加线性日志,思路最简洁。如果你只有一两个固定的工作流、Agent 不需要太复杂的记忆管理,这是最省事的方案。简洁是它的最大优势,缺点就是缺少结构化——跨 session 的上下文感知基本靠你手动写规则,历史记录没有索引,搜索起来效率不高。

Codex 走的是规则文件加类型化归档的路,结构化更好。每个项目有清晰的目录划分,历史记录按类型归档。缺点是灵活性低——一个跨类别的搜索任务(比如「这个项目遇到的问题跟另一个项目的配置有什么关联」)你需要在好几个目录里分别翻。另外归档规则一旦定下来,改起来很麻烦。

OpenClaw 走的是纯自动记忆路线,不依赖文件系统。记忆完全是自动的,不需要手动管理文件。好处是上手极快,不需要写配置文件。缺点是心智上比较黑盒——你不知道它记住了什么、忘了什么、什么时候会出错。你需要接受一定程度的不可控。

Hermes 就是我一直在用的,五层架构。规则靠文件、身份靠文件、历史靠搜索、证据链靠审计、技能靠 skill 系统。最完整,但配置成本最高。不是所有人都需要五层——如果你只是偶尔用 Agent 做点简单的事,没必要搭这么重的一套系统。

没有万能药。适合自己场景的,才是最好的。

收尾

写到这里,从上篇的「踩了两次坑的 Agent」开始,两篇文章把五层记忆架构都走了一遍。

从一张白纸。到有规则、有身份、有历史、有审计、有自己的技能库。

我有一个挺强烈的感受,两三个月前的 Agent 和现在的 Agent,完全是两个物种。差别不在于用了什么更好的模型,而在于它有了这五层记忆架构撑着。它知道想要什么、记得住做过什么、判断得了信息来源靠不靠谱、还能自己总结经验让下次更好使。

所以回到开头的问题。

你的 Agent 走到哪一层了?

来评论区聊聊。说不定你的经验也能帮到其他人。

以上都是个人的实践和梳理,如有不对的地方欢迎指正。

以上,既然看到这里了,点个赞再走吧~

谢谢你看我的文章,我们,下次再见。

基本 文件 流程 错误 SQL 调试
  1. 请求信息 : 2026-07-11 18:01:59 HTTP/1.1 GET : https://www.yeyulingfeng.com/a/847340.html
  2. 运行时间 : 0.106268s [ 吞吐率:9.41req/s ] 内存消耗:4,654.34kb 文件加载:145
  3. 缓存信息 : 0 reads,0 writes
  4. 会话信息 : SESSION_ID=037553c10510dbf28f30e45519fb1afc
  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.50 KB )
  145. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-trace/src/Html.php ( 4.42 KB )
  1. CONNECT:[ UseTime:0.000525s ] mysql:host=127.0.0.1;port=3306;dbname=wenku;charset=utf8mb4
  2. SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.000613s ]
  3. SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.002281s ]
  4. SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.000268s ]
  5. SHOW FULL COLUMNS FROM `set` [ RunTime:0.000500s ]
  6. SELECT * FROM `set` [ RunTime:0.000198s ]
  7. SHOW FULL COLUMNS FROM `article` [ RunTime:0.000580s ]
  8. SELECT * FROM `article` WHERE `id` = 847340 LIMIT 1 [ RunTime:0.000656s ]
  9. UPDATE `article` SET `lasttime` = 1783764119 WHERE `id` = 847340 [ RunTime:0.005364s ]
  10. SELECT * FROM `fenlei` WHERE `id` = 64 LIMIT 1 [ RunTime:0.000290s ]
  11. SELECT * FROM `article` WHERE `id` < 847340 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.000535s ]
  12. SELECT * FROM `article` WHERE `id` > 847340 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.000439s ]
  13. SELECT * FROM `article` WHERE `id` < 847340 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.001426s ]
  14. SELECT * FROM `article` WHERE `id` < 847340 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.003811s ]
  15. SELECT * FROM `article` WHERE `id` < 847340 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.007049s ]
0.108000s