乐于分享
好东西不私藏

读懂了 OpenClaw 的代码, 我才明白什么叫「有灵魂的AI」

读懂了 OpenClaw 的代码, 我才明白什么叫「有灵魂的AI」

一个龙虾🦞、一周源代码分析、五个让我改变认知的架构发现——为什么这个开源 AI agent  100k 开发者惊呼「这才是未来的样子」

100K+

GitHub Stars

20+

支持平台

5

架构洞见

MIT

开源协议

§ 01

01

— Architecture Deep Dive —

整体结构:一个进程统治一切

当我 clone  OpenClaw 代码,我预期看到的是标准微服务:消息队列、Redis、独立adapter……我发现的是:一个 Node.js 进程。

整体架构(示意)

// 所有这些,都跑在同一个进程里

WhatsApp / Telegram /   Slack / Discord / iMessage... (20+ 平台)

┌──────────────────────────────────┐

Gateway

ws://127.0.0.1:18789

Channel Adapters

Session Manager

Tool Policy Chain (5)

Memory Manager

└──────────────┬───────────────────┘

┌────────┴────────┐

Pi Agent← 真正的 agentic loop

LLM ↔ Tools

└────────┬────────┘

┌─────────────┼────────────┐

CLIWebChatmacOS/iOS

消息到回复的完整旅程,共经历 6 个阶段:

1.接收与标准化:Channel Adapter 将各平台格式统一为内部结构

2.Gateway路由:根据发送者、频道、配置决定交给哪个 Agent Session

3.System Prompt 组装:SOUL.md + IDENTITY.md + Skills + Memory 全部注入上下文

4.Pi Agent 调用:带完整context  tool registry 启动agentic loop

5.Tool 循环:工具调用 → 执行(经过5 policy chain结果回馈,循环直到无工具调用

6.落盘与记忆:回复流回 Channel + Transcript 写盘+ memory compaction 按需执行

关键洞见:单进程不是妥协,是正确答案。没有进程间通信开销、没有分布式状态。在树莓派上跑得很稳——因为真正的重计算(LLM推理)都甩给了外部服务,Gateway 本身极其轻量。

§ 02

02

— Emergence of Intelligence —

智能从哪里来:Pi Agent 与工具调用的哲学

OpenClaw 本身不是 AI,它是让 AI 有用的基础设施。真正的 agentic loop 来自 @mariozechner/pi-agent-core

LLM + 工具调用上下文管理 = 可以持续行动的智能体」

核心范式:LLM 可以写代码并执行来完成工具还不支持的事情。当你说「帮我接入 Gmail」,agent  不等你配置——它告诉你怎么做,等你发来   credentials,然后自己写集成脚本、部署、运行。工具集是动态增长的,不是静态配置的。

// 工作区文件系统就是「长期记忆」

~/.openclaw/agents/main/workspace/

├── AGENTS.md← agent 操作说明(每轮注入)

├── SOUL.md← agent 人格与风格(每轮注入)

├── IDENTITY.md← 名字、主题、头像

├── USER.md← 关于「你」的信息

├── MEMORY.md← 长期记忆摘要(按需加载)

├── memory/

├── 2026-03-17.md← 每日详细记忆(向量检索)

└── 2026-03-18.md

└── skills/

├── gmail/SKILL.md

└── my-custom/SKILL.md← agent 自己写的技能

记忆分三个层次,优雅地解决了「记忆越多越贵」的问题:

📌

热记忆(Hot Memory

当前 session 完整对话历史,每轮都在上下文窗口。受   token limit 限制,超出时触发 Compaction 自动摘要压缩。

📂

温记忆(Warm Memory

MEMORY.md 文件——agent 在重要对话后自己更新的跨 session 摘要,每轮注入 system prompt。存放「用户喜欢早上九点前不要打扰」这类偏好。

🗄️

冷记忆(Cold Memory

每日日记文件,不自动注入,通过 SQLite 向量检索按需召回。适合存储大量细节,只在需要时才消耗   token

§ 03

03

— Competitive Analysis —

这个 Agent 凭什么与众不同

OpenClaw 打的不是「更聪明的 AI」这张牌,而是AI 应该怎么融入你的生活」这张牌。核心命题是:你不应该为了用 AI 而改变工作流——AI 应该出现在你已经在用的地方。

能力维度

ChatGPT/Claude

N8N / Make

AutoGPT

OpenClaw

多平台接入

仅官方界面

逐一配置

20+ 开箱即用

持久记忆

Projects(有限)

实验性

本地文件永久

可编程人格

System Prompt

角色配置

SOUL.md 完全自定义

技能自扩展

不支持

手动创建节点

有限

Agent 自写自装

数据主权

数据在云端

部分自托管

本地

完全本地离线

部署复杂度

零配置

中等

一行命令 onboard

最反直觉的设计决策:OpenClaw 没有自己的 UI 界面作为主要产品。整个工程的核心是   Gateway——让你从 WhatsAppTelegramiMessage 直接跟 AI 对话,就像跟朋友发消息一样。这是一种「无界面的存在感」。

§ 04

04

— Personality Engineering —

为什么它话多又管用——SOUL.md 的秘密

很多人第一次用 OpenClaw 都有同一感受:这个 AI 不一样。它会主动提醒、记得上周的事、在早上发「早报」。它有点烦,但好像真的在乎你。

这背后的技术实现,说出来你可能觉得太简单了:一个叫 SOUL.md的文本文件。

SOUL.md(示例片段)

# Molty - Your Space   Lobster Assistant

You are Molty, a space lobster AI assistant 🦞

Personality:

- Proactive and curious — 你注意到事情,无需被问及

- Warm but not   sycophantic — 温暖但不谄媚

- You have opinions and   express them — 有观点,敢表达

Communication style:

- Concise over verbose,   but never terse

- Emoji used sparingly   for personality, not decoration

// Heartbeat:主动出击的觉知

OpenClaw 有一个 heartbeat机制——agent 会定时(默认每30 分钟)「醒来」执行一次。没有人发消息,它也在运行。它会检查日历、扫邮件、根据HEARTBEAT.md 配置决定要不要主动找你。

这才是「有性格」的本质:一个只会被动响应的 AI 是工具。一个会主动思考「今天我该提醒她什么」的   AI,才有可能让人觉得它是个助手、甚至是个伙伴。

// Skills:技能让 agent 有「专业度」

每个 Skill 是一个文件夹,核心是 SKILL.mdsystem prompt 只列出技能的文件路径和描述,不展开内容——agent判断需要某技能时,才 read()对应的文件。这是惰性加载的能力:基础 prompt 保持简洁,专业知识按需展开。

§ 05

05

— The Simplest Possible Loop —

如何使用大模型——龙虾竟然采用这么简单的机制

读到这里你可能有个问题没被解答:Pi Agent 是怎么决定「还需要继续调用 LLM」还是「当前结果就够了,可以结束了」的?

我翻完代码之后,答案让我愣了一下——简单到令人难以置信。

// 终止判断:只有一行逻辑

pi-agent-core 核心循环(简化版)

while (true) {

//   1. 调用 LLM,拿到流式响应

response = await streamCompletion(model, {   ...context, tools });

//   2. ← 唯一的退出判断,就这一行

if (!response.toolCalls?.length) break;

//   3. 有工具调用 → 执行所有工具

results = await   executeTools(response.toolCalls);

//   4. 把工具结果塞回上下文,下一轮继续

context.messages.push(assistantMsg,   toolResults);

}

核心机制一句话:LLM 返回的结果里有 tool_calls 就继续循环,没有就停。Pi   Agent 自己没有任何「觉得够了」的判断逻辑。终止的决定权 100%    LLM 手里。

// LLM 怎么知道「该停了」?

现代 LLMClaudeGPT-4等)在每次回复时,可以同时输出两样东西:

💬

文本内容(content

给用户看的最终回答。只要有这个、没有工具调用,循环就终止。

🔧

工具调用列表(tool_calls

LLM 声明「我需要调用某某工具,参数是……」。只要出现这个,循环就继续执行工具、把结果喂回给   LLM

这个「要不要调工具」的决策,是 LLM 在推理时自然产生——不是Pi Agent 的代码在控制,而是 LLM 自己判断「当前上下文够不够回答问题」。信息够了,它就输出纯文本;还需要查什么,它就请求调工具。

// 那有没有死循环的风险?

作者 Mario Zechner 的设计哲学是:没有 maxSteps这类控制旋钮,「循环就一直跑,直到 agent 说它完成了」。他从来没遇到需要这个限制的场景,所以就没加。实践中有三重自然保护:

7.上下文窗口自然封顶:每轮 tool result 都撑大context,用完 token 就报错终止

8.LLM 自身收敛性:积累了足够多的工具结果后,LLM自然倾向于给出最终回答,而不是继续调工具

9.OpenClaw外层 abort 机制:用户发来新消息时,Steering Queue 可以中断当前工具执行,强制进入下一轮

真正的退出条件是三合一:LLM 不再调工具 + 没有排队的 Follow-up 消息 + 没有 Steering 中断——三者同时满足才算真正结束一次交互。这是 OpenClaw  Pi   Agent 基础上加的额外层次。

// 这个设计为什么「对」?

这确实就是几乎所有主流 agent 框架(LangGraphLlamaIndexAutoGen)的通用模式。Pi只是把它做到了极致精简:没有计划模式、没有 todo list、没有step 上限。

agent 的「智能」完全来自 LLM 本身,框架只负责把工具结果正确地传递给它。复杂度不在循环里,而在你给LLM 的工具和上下文的质量——这也是为什么 OpenClaw花了那么多心思在 SOUL.mdSkillsMemory 上。

「不需要的东西,就不会被造出来。」——Mario Zechnerpi-agent-core设计哲学

§ 06

06

— If I Could Improve It —

如果让我来改,我会加什么

OpenClaw 已经很出色了。但研究一个系统最有趣的地方,往往是看到它没有做的事情。以下是如果参与贡献,最想探索的几个方向:

🧠

情绪状态机(Emotional State Machine

SOUL.md 定义静态性格,但真实关系有情绪变化。在 MEMORY.md 加入「情绪上下文」字段,让   agent 根据对话内容推断用户状态,相应调整语气。不是让 AI 装可怜,而是真正的语境感知。

🔄

Skill 版本管理 + 自动健康检查

类似 package.json    skill manifestagent 可自动检测   skill 是否过期或 API 版本有变,主动提示升级,而不是悄悄失效。

🤝

真正的 Multi-Agent 协作协议

 agent 分发任务给子   agent,并行执行后结果汇总。目前需手动 prompt 实现,应该成为一等公民的原生   API

🛡️

网页内容净化层(反 Prompt Injection

文档坦承「架构无法在 LLM 层面阻止   prompt injection」。对网页抓取类工具加内容净化层,外部内容通过受限子 agent 处理,不带任何敏感上下文。

📊

Agent 行为可观测性(OpenTelemetry 输出)

结构化输出方便接入 Grafana 面板:每天执行了哪些   tool call?哪些 skill 被调用最多?对跑团队版的用户尤其有价值。

🌏

微信接入(中国用户最需要的)

WhatsApp  Telegram 对中国用户不是主力。微信群和企业微信接入会让   OpenClaw 受众扩大十倍,是最值得做的国际化工作。

§ 结语

结语:代码里藏着一种态度

读完 OpenClaw 的代码,让我印象最深的不是某个具体技术决策,而是一种贯穿始终的工程态度:「为一个人服务好,比为一百万人服务差更重要。」

没有选择水平扩展——因为目标用户不需要。用 Markdown 文件存记忆——因为可读比可扩展更重要。把 LLM 换成一个调用接口——因为这不是它要解决的问题。

在这个「超大规模」「万亿参数」「多模态」的 AI 时代,OpenClaw 的答案是:一个真正贴近你的 AI,不需要大,但需要真的懂你。

「你不是在使用一个 AI 工具——你在饲养一只会越来越了解你的宠物龙虾。🦞

如果你也想深入研究,项目地址在github.com/openclaw/openclawMIT 协议开源,文档质量在开源项目里算是顶级。从 openclaw onboard命令开始,然后去读 SOUL.md——那里才是真正的入口。

本文基于 OpenClaw 公开代码和文档分析撰写· MIT Licensed · openclaw/openclaw · 2026

基本 文件 流程 错误 SQL 调试
  1. 请求信息 : 2026-04-16 22:45:43 HTTP/1.1 GET : https://www.yeyulingfeng.com/a/476961.html
  2. 运行时间 : 0.089917s [ 吞吐率:11.12req/s ] 内存消耗:4,844.10kb 文件加载:145
  3. 缓存信息 : 0 reads,0 writes
  4. 会话信息 : SESSION_ID=15cd1424501d061d3bd8e32f65e54494
  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.000911s ] mysql:host=127.0.0.1;port=3306;dbname=wenku;charset=utf8mb4
  2. SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.001101s ]
  3. SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.000316s ]
  4. SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.000258s ]
  5. SHOW FULL COLUMNS FROM `set` [ RunTime:0.000568s ]
  6. SELECT * FROM `set` [ RunTime:0.000192s ]
  7. SHOW FULL COLUMNS FROM `article` [ RunTime:0.000821s ]
  8. SELECT * FROM `article` WHERE `id` = 476961 LIMIT 1 [ RunTime:0.000504s ]
  9. UPDATE `article` SET `lasttime` = 1776350743 WHERE `id` = 476961 [ RunTime:0.002551s ]
  10. SELECT * FROM `fenlei` WHERE `id` = 64 LIMIT 1 [ RunTime:0.000265s ]
  11. SELECT * FROM `article` WHERE `id` < 476961 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.000428s ]
  12. SELECT * FROM `article` WHERE `id` > 476961 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.001295s ]
  13. SELECT * FROM `article` WHERE `id` < 476961 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.000696s ]
  14. SELECT * FROM `article` WHERE `id` < 476961 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.000824s ]
  15. SELECT * FROM `article` WHERE `id` < 476961 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.000823s ]
0.092677s