乐于分享
好东西不私藏

别再手动提醒 AI 了:Codex Automations 工作流指南

别再手动提醒 AI 了:Codex Automations 工作流指南

你可能已经有过这种体验。

同一个项目里,你每天都要让 AI 做几件差不多的事:

  • • 看看最近 24 小时有没有影响某个模块的提交;
  • • 检查 CI 失败是不是同一类问题;
  • • 扫一遍昨天自己改过的文件,找可能遗漏的测试;
  • • 把同一套调研、写作、审校、发布流程再跑一遍;
  • • 根据最近几次会话里反复踩的坑,提醒你要不要更新项目规则。

一开始,这些任务靠手动 prompt 就够了。你复制一段指令,发给 Codex,等它跑完,再看结果。

但重复到第三天,问题就出现了:你不是在“使用 AI”,你是在“记得让 AI 去干活”。

真正浪费时间的,不是那一次 prompt 的几秒钟,而是每次都要重新想一遍:

  • • 这个任务要在哪个项目里跑?
  • • 要不要新开 worktree?
  • • 需要读哪些文件?
  • • 有结果时怎么报告?
  • • 没结果时要不要打扰我?
  • • 出现风险时什么时候停下来?

这就是 Codex Automations 要解决的问题。

根据 OpenAI Codex Automations 文档[1],Automations 可以让 Codex 在后台执行 recurring tasks,把有发现的结果放进 Triage 收件箱;如果没什么重要内容,也可以自动归档。它还能和 Skills、plugins、worktree、sandbox 设置组合起来。

这听起来像“给 AI 加了定时任务”。

但如果只把它理解成 cron job,就低估了它。更准确地说:

Codex Automations 是把稳定 Agent 工作流变成后台节奏的系统。

注意这里有两个关键词:稳定,节奏。

还不稳定的流程,不该直接自动化。没有节奏的流程,也很难持续产生价值。

很多人第一次看到 Automations,会立刻想到:“那我是不是可以让 AI 每天自动写代码?”

可以,但这不是最好的起点。

自动化最适合的不是“巨大、模糊、开放”的任务,而是那些你已经跑过几次、边界清楚、结果可检查、失败也不会造成大损失的流程。

OpenAI 的最佳实践[2]给了一个很好的判断句:Skills 定义方法,Automations 定义调度。

这句话非常重要。

Skill 解决的是“这件事应该怎么做”。比如代码审查要看哪些风险,内容生产要经历哪些步骤,发布前要跑什么检查。

Automation 解决的是“什么时候、在哪个环境、用什么上下文去重复做”。它不应该替代方法本身。

所以我会用一个简单标准判断一个任务能不能自动化:

问题
如果答案是“是”
这个流程我已经手动跑过至少 2-3 次吗?
可以考虑自动化
每次输入范围是否清楚?
可以考虑自动化
输出是否能被我快速复查?
可以考虑自动化
失败是否会被隔离,不会直接破坏主工作区?
可以考虑自动化
它是否还需要我不断解释背景和纠偏?
先写成 Skill 或改 prompt

换句话说,Automations 不是拿来承接混乱的。它是拿来放大稳定性的。

如果一个流程还需要你每次手动提醒“不要乱改文件”“先跑测试”“记得写来源”“别动未提交改动”,那它还没到自动化阶段。

先把这些要求写进 AGENTS.md、Skill、脚本、测试和 hooks 里,再让 Automation 接手。

三种形态:后台任务、项目任务、线程心跳

Codex Automations 容易混淆,是因为它不是单一形态。

从使用方式看,至少要分三类。

第一类是独立或项目级自动化。

它每次按计划启动一次新运行,结果进入 Triage。适合“今天也要检查一下”的任务,比如:

  • • 每天早上总结某个目录最近 24 小时的提交;
  • • 每个工作日扫描最近改动里的潜在 bug;
  • • 每周起草 release notes;
  • • 定期检查某类文档是否过期。

这种任务的特点是:每次运行彼此独立。今天的结果不需要和昨天在同一个对话里继续推理。

第二类是跨项目自动化。

官方文档提到,同一个 automation 可以在多个项目上运行。这个能力很适合做横向检查,比如团队里多个仓库都需要:

  • • 检查 README 与实际脚本是否一致;
  • • 查找重复出现的 CI 失败;
  • • 生成周报材料;
  • • 扫描 AGENTS.md 是否缺少新的团队约定。

这里的关键不是“AI 能不能读多个项目”,而是输出必须可比较。你要让它用同一套结构报告,而不是每个仓库写成一篇散文。

第三类是 thread automation。

官方文档[3]把它描述成 attached to the current thread 的 recurring wake-up call。也就是说,它不是每次新开一个任务,而是让同一个线程按节奏醒来。

这适合持续跟进:

  • • 一个长命令还在跑,每 5 分钟检查一次;
  • • 一个 PR review loop 需要持续处理新反馈;
  • • 一个线上问题排查线程需要保留上下文;
  • • 一个研究任务要在同一个对话里继续补资料。

简单判断:

需求
选哪种
每次独立运行,有结果进收件箱
Standalone / Project automation
多个项目跑同一套检查
Project automation,多项目配置
同一对话要持续醒来
Thread automation
必须由 CI 确定性执行
仍然用 CI,不要交给 Agent 判断

这张表能避免很多误用。

如果你只是想“明天提醒我继续看这个 PR”,thread automation 很合适。如果你想“每天生成一份仓库健康报告”,standalone 或 project automation 更合适。如果你想“合并前必须阻止不合格代码”,那应该用 CI、pre-commit、type checker 或 hook,而不是只靠 Automation。

Worktree 是自动化的安全垫

无人值守任务最危险的地方,不是 AI 写错了几行代码,而是它在你还没看见的时候,改了你正在工作的地方。

Codex Automations 在 Git 仓库里可以选择两种运行位置:local project 或 dedicated worktree。官方文档也说得很直白:worktree 可以把自动化改动和未完成的本地工作隔离开;local mode 会直接在你正在编辑的 checkout 里工作。

这不是小细节,而是自动化设计里的第一道安全边界。

我的建议很简单:

自动化类型
推荐环境
只读总结、扫描、报告
local 或 worktree 都可以
可能改文件,但只是草稿
优先 worktree
会改代码、文档、配置
默认 worktree
会碰发布、凭据、生产配置
不建议无人值守,至少拆成人工确认步骤

你可以把 worktree 理解成“让 AI 在隔离办公桌上干活”。它可以写、可以试、可以留下 diff,但不会直接把你的主桌面弄乱。

这也解释了为什么 Automations 不应该直接替代工程流程。

如果它发现 bug,可以开一个隔离 diff;如果它起草 release notes,可以生成草稿;如果它发现 AGENTS.md 需要更新,可以给出建议。真正合并、发布、替换生产配置,仍然应该经过人的确认和现有检查。

自动化的好状态不是“AI 悄悄把事情都做了”,而是:

AI 把重复劳动推进到可复查状态,人只处理判断和授权。

Durable prompt:自动化 prompt 要经得起明天再跑

普通聊天 prompt 可以写得很随意。你人在现场,可以随时补一句“不是这个意思”。

Automation prompt 不行。

它明天、后天、下周还会自己跑。那时你不在旁边,它也不该靠猜。

官方文档特别提醒 thread automation 要 make the prompt durable。这个原则同样适用于所有自动化。

一个 durable prompt 至少要写清楚六件事:

  1. 1. 目标:每次醒来到底要完成什么。
  2. 2. 范围:只看哪些项目、目录、分支、时间窗口。
  3. 3. 方法:优先用哪些 Skill、命令、文档或数据源。
  4. 4. 停止条件:什么时候可以说没有发现,什么时候必须停下来。
  5. 5. 输出结构:有发现怎么报告,没发现怎么归档。
  6. 6. 风险边界:哪些文件不能改,哪些动作需要人工确认。

比如一个“每日代码健康检查”的 automation,不应该只写:

每天检查这个项目有没有 bug。

这句话太宽。它会迫使模型自己定义“bug”“检查”“项目”“每天”的边界。

更好的写法是:

每天上午 9 点检查当前 Git 仓库最近 24 小时由我提交的改动。范围:- 只检查最近 24 小时内变更过的文件。- 优先关注测试、构建、类型、边界条件、错误处理。- 不做大范围重构,不改无关文件。方法:- 先读取 git diff/log,找出变更文件。- 运行最小相关验证命令;如果找不到命令,只做静态检查并说明原因。- 如果发现明确 bug,在 worktree 中做最小修复,并留下验证证据。输出:- 有修复:总结 root cause、修改文件、验证命令、剩余风险。- 只有风险但不适合自动修:进入 Triage,列出人工复核项。- 没有发现:自动归档,不打扰。停止条件:- 需要访问生产系统、凭据、外部付费服务时停止。- 需要修改迁移、部署、权限配置时只提建议,不直接改。

这才是可以交给后台的 prompt。

你会发现,写 durable prompt 的过程,本质上就是把人的经验变成流程。

这和 Skills 的关系非常自然:如果这段 prompt 越写越长,说明它应该被沉淀成 Skill。Automation 只负责定时调用它。

四层能力栈:Rules、Skills、Hooks、Automations

过去几篇文章,我们其实一直在搭同一套系统。

《65 行 CLAUDE.md:给 AI 编程助手装上刹车》讲的是 Rules:让 AI 知道团队底线。

《MCP 负责连接,Skills 负责纪律:给 AI Agent 加能力的正确姿势》讲的是能力和流程:MCP 接外部世界,Skills 沉淀操作手册。

《别再只靠提示词管 AI 了:Claude Code Hooks 实战指南》讲的是 Hooks:在工具执行、权限请求、任务完成等节点真正拦住风险。

Codex Automations 则是下一层:让这些已经稳定的流程按节奏运行。

可以把它们放进一张表:

层级
解决的问题
典型形式
自动化前的问题
Rules
永远要遵守什么
AGENTS.md、CLAUDE.md
AI 不知道边界
Skills
遇到某类任务怎么做
SKILL.md、模板、脚本
AI 每次流程不一致
Hooks
关键时刻能不能拦
pre-tool、stop、CI、lint
AI 会越过安全线
Automations
什么时候重复执行
Codex Automations
人要一直记得触发

这四层不是互相替代,而是递进关系。

如果没有 Rules,Automation 只是在定时放大不确定性。

如果没有 Skills,Automation 每次都像重新培训一位新同事。

如果没有 Hooks 或 CI,Automation 可能把错误推进得更快。

如果没有 Automations,前面三层再好,也仍然依赖你记得启动。

所以我不建议一上来就问:“哪些事情可以让 AI 自动做?”

更好的问题是:

哪些已经被规则、技能和验证约束住的流程,值得交给后台按节奏运行?

这个问题一问,自动化范围会立刻收敛。

三个可以直接拿去改的模板

下面这几个模板,适合从低风险开始试。

模板一:AGENTS.md 漂移检查

这个场景来自 OpenAI customization 文档[4]里的建议:重复错误、读取路径过散、PR feedback 反复出现时,应该更新 AGENTS.md;也可以用 Automations 定期检查 guidance gaps。

每周一上午检查当前项目最近 7 天的 Codex 会话、提交记录和 PR 反馈,判断是否存在应该沉淀进 AGENTS.md 的重复规则。范围:- 只提出建议,不直接修改 AGENTS.md,除非建议非常小且确定。- 优先识别重复错误、重复 review feedback、反复找错目录、反复漏跑验证命令。输出:- 按“建议新增规则 / 建议更新规则 / 不建议改变”三类报告。- 每条建议都要给出证据:来自哪个提交、反馈或会话现象。- 没有明确重复模式时自动归档。边界:- 不要把一次性偏好写成长期规则。- 不要加入和现有规则冲突的内容。

这个任务很适合自动化,因为它不需要每天都改规则。大多数时候它应该什么都不做。它的价值在于发现“我们总在同一个地方摔倒”。

模板二:PR 反馈守护

每 30 分钟在当前线程检查目标 PR 是否有新的 review comment 或 CI 失败。方法:- 使用可用的 GitHub 插件或本地 gh 命令读取 PR 状态。- 如果没有新反馈,简短记录并继续等待。- 如果有新反馈,先分类:必须修复、需要澄清、可选建议。- 对必须修复项,先提出最小修改计划;只有低风险改动才直接实现。输出:- 有新反馈:列出反馈、处理动作、需要用户决定的问题。- 无新反馈:不打扰或自动归档。停止条件:- 需要产品决策、接口破坏性变更、数据库迁移、部署权限时停止并询问。

这类任务适合 thread automation,因为它需要保留同一个 PR 的上下文。

模板三:内容生产流水线复查

对于内容创作者,Automation 不一定是写代码。它也可以跑稳定的内容工作流。

每天上午根据当前账号定位,生产一篇可发布的技术文章草稿包。方法:- 先读取项目规范、文章索引和账号偏好。- 从 2-4 个候选选题中自主选择一个,避免和已有文章重复。- 如果涉及最新产品或文档变化,必须使用可验证来源,并在 research.md 记录抓取日期、URL 和事实口径。- 按 content-pipeline 执行:research、原始稿、formatted、审校、配图、HTML、发布到草稿箱。输出:- 成功:报告文章目录、关键产物、草稿箱状态、人工复核项。- 失败:保留已完成产物,明确失败阶段、错误信息、下一步人工处理建议。边界:- 不报告未完成发布为成功。- 不关闭浏览器后台,方便人工复核。

这其实就是一个典型 Skill + Automation 场景。

Skill 定义生产方法,Automation 负责每天启动一次。文章、图片、HTML、发布状态都落到磁盘和草稿箱,而不是停留在聊天窗口里。

权限:后台运行时要更保守

自动化一旦进入后台,权限就比交互式聊天更敏感。

官方文档说明,Automations 使用默认 sandbox 设置;在 read-only 下,需要改文件、访问网络或操作本机 app 的工具调用会失败;workspace-write 会限制工作区外修改、网络和 app 操作;full access 下,无人值守风险更高。

这意味着你不应该为了“省事”直接给后台任务最大权限。

比较稳妥的做法是:

  1. 1. 先用 read-only 或 workspace-write 跑报告型任务
  2. 2. 涉及文件修改时优先用 worktree
  3. 3. 把危险命令放进规则或 hooks,而不是靠模型自觉
  4. 4. 第一次调度前手动跑一遍 prompt
  5. 5. 前几次输出必须人工复查,再逐步提高频率和权限

这和传统自动化没有本质区别。

CI 也不是第一天就能直接部署生产。它先跑测试,再跑 staging,再加审批,再逐步进入发布链路。

Agent 自动化也一样。它只是把“写脚本”升级成“写可理解上下文的后台流程”,但安全边界仍然要靠工程系统来守。

尤其要警惕三类任务:

任务
风险
建议
自动修复生产配置
影响面大
只生成建议,不直接改
自动执行大范围重构
diff 不可控
拆成小范围 worktree 任务
自动发布外部内容
品牌与事实风险
发布到草稿箱,保留人工复核

自动化最怕的不是慢,而是悄悄变得不可审计。

怎么从今天开始用

如果你还没用过 Codex Automations,可以按这个顺序来,不要一步到位。

第一步,选一个只读任务。

比如“每天总结某个目录最近 24 小时提交”。它不会改文件,结果也容易检查。先让你熟悉 Triage、调度频率、输出格式。

第二步,把 prompt 写成 durable prompt。

不要只写一句“帮我总结”。写清楚时间窗口、目录范围、输出结构、没有结果时怎么处理。

第三步,手动跑一次。

官方文档也建议调度前先在普通线程里测试 prompt,确认范围、工具、模型、输出 diff 都符合预期。不要把第一次试运行交给后台。

第四步,低频运行几次。

每天一次比每 10 分钟一次更适合新流程。前几次你要认真看结果:它有没有过度读取?有没有输出废话?有没有漏掉关键证据?有没有提出不该改的文件?

第五步,沉淀成 Skill。

如果你发现 prompt 越来越长,里面开始出现固定步骤、模板、检查清单,那就把它做成 Skill。之后 Automation 只需要调用 $skill-name

第六步,再考虑写入式自动化。

这时才让它在 worktree 里修小 bug、更新文档、生成草稿。每一步都应该有清晰证据和人工复核点。

这套顺序听起来慢,但它会让自动化变得可持续。

真正成熟的 Agent 工作流,不是让 AI 获得无限自由,而是让它在明确轨道里稳定前进。

结语:把“提醒 AI”变成系统节奏

AI 编程工具已经走过了几个阶段。

第一阶段,是聊天。你问,它答。

第二阶段,是工具调用。它能读文件、跑命令、改代码。

第三阶段,是规则和技能。你开始用 AGENTS.md、CLAUDE.md、Skills、MCP、Hooks 管住它。

第四阶段,就是自动化。你不再每次手动提醒它,而是把稳定流程交给后台节奏。

但这里有一个反直觉的结论:

自动化不是为了让 AI 更自由,而是为了让人的注意力更集中。

AI 负责重复、扫描、整理、草稿、初步修复。

人负责判断、授权、取舍、发布、承担责任。

Codex Automations 的价值不在于“它能自己跑”,而在于它把一件事变得可重复、可复查、可沉淀。

当你发现某段 prompt 已经连续复制了三次,就该问自己:它是不是该变成 Skill?

当你发现某个 Skill 已经稳定运行了三次,就该问自己:它是不是该变成 Automation?

这就是从“会用 AI”到“经营 AI 工作流”的分界线。


关注「ArcThink」,把复杂的信息讲得更明白,把零散的想法整理成有价值的理解与认知。

如果这篇文章对你有帮助,欢迎点赞、在看、转发,让更多人看到。

引用链接

[1] OpenAI Codex Automations 文档: https://developers.openai.com/codex/app/automations[2] OpenAI 的最佳实践: https://developers.openai.com/codex/learn/best-practices#use-automations-for-repeated-work[3] 官方文档: https://developers.openai.com/codex/app/automations#thread-automations[4] OpenAI customization 文档: https://developers.openai.com/codex/concepts/customization#when-to-update-agentsmd

基本 文件 流程 错误 SQL 调试
  1. 请求信息 : 2026-05-27 17:53:20 HTTP/1.1 GET : https://www.yeyulingfeng.com/a/671202.html
  2. 运行时间 : 0.085081s [ 吞吐率:11.75req/s ] 内存消耗:4,743.28kb 文件加载:145
  3. 缓存信息 : 0 reads,0 writes
  4. 会话信息 : SESSION_ID=fe6173819283e9ef239e13152df33761
  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.000675s ] mysql:host=127.0.0.1;port=3306;dbname=wenku;charset=utf8mb4
  2. SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.000734s ]
  3. SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.000298s ]
  4. SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.000280s ]
  5. SHOW FULL COLUMNS FROM `set` [ RunTime:0.000538s ]
  6. SELECT * FROM `set` [ RunTime:0.000231s ]
  7. SHOW FULL COLUMNS FROM `article` [ RunTime:0.000516s ]
  8. SELECT * FROM `article` WHERE `id` = 671202 LIMIT 1 [ RunTime:0.000421s ]
  9. UPDATE `article` SET `lasttime` = 1779875600 WHERE `id` = 671202 [ RunTime:0.000721s ]
  10. SELECT * FROM `fenlei` WHERE `id` = 64 LIMIT 1 [ RunTime:0.000259s ]
  11. SELECT * FROM `article` WHERE `id` < 671202 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.000481s ]
  12. SELECT * FROM `article` WHERE `id` > 671202 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.000369s ]
  13. SELECT * FROM `article` WHERE `id` < 671202 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.000740s ]
  14. SELECT * FROM `article` WHERE `id` < 671202 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.001356s ]
  15. SELECT * FROM `article` WHERE `id` < 671202 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.000992s ]
0.086855s