乐于分享
好东西不私藏

AI 插件的统一包装:Agent Plugins 规范解读

AI 插件的统一包装:Agent Plugins 规范解读

同一个 SKILL.md 技能文件,在 Claude Code 里能用,到 Cursor 里也能用,这件事 Agent Skills 规范已经解决了。但一个完整的插件包是另一回事。里面除了技能,可能还有 MCP 服务器、客户端专属钩子、配置文件。你为 VS Code 打的包,换到 GitHub Copilot 里,目录结构对不上,MCP 配置写法不一样,得重排甚至重写一遍。

这就是 2026 年上半年 AI Agent 生态的现实:组件层面(技能、MCP)正在收敛,打包层面却各搞各的。

2026 年 8 月,一个叫 Agent Plugins 的规范发布了 1.0.0 版本。官网对它的定位只有一句:一个可移植的包装格式,用于打包可复用、可扩展 AI Agent 的组件。技术指导委员会(TSC)的初始核心维护者来自 Amazon、Cursor、Microsoft、OpenAI 和 Vercel。GitHub Copilot、ChatGPT & Codex、Cursor、VS Code、Kiro 已经是兼容客户端。

下面讲它解决什么问题、包格式怎么工作,以及它为什么把"可移植"和"客户端自有"切得那么干净。

解决什么问题:打包层的碎片化

先说现状。AI Agent 客户端过去几年各自长出了自己的插件格式。问题不在组件本身,Agent Skills 有规范,MCP 有规范,问题在怎么把这些组件装进一个可分发的包

各客户端的打包约定不一样:插件元数据放在哪、叫什么名字、MCP 配置写成什么形状、技能目录怎么发现,各家一套。结果是,插件作者要把同一批组件为每个客户端重新摆位甚至复制一份。为 A 客户端打的包,B 客户端可能根本认不出来,得改了才能用。组件越通用,重复劳动越多。

Agent Plugins 没有去统一所有客户端的插件格式,只定义一个最小的互操作性地基。原话:

Agent Plugins defines a small interoperability floor for the parts that can be portable across clients. Shared components can use one predictable structure, while distribution, installation, permissions, user experience, and client-specific capabilities remain under each client's control.

翻译过来就是两件事画一条线:

  • 可移植的:包结构、校验、组件发现、MCP 配置、插件变量、失败隔离。这些跨客户端共用一套。
  • 客户端自有的:安装来源、注册表、市场、启用/更新/缓存的用户体验、权限提示、信任策略、沙箱、技能怎么展示给用户或模型。这些各客户端自己管,规范不碰。

这条线是理解整个设计的关键。Agent Plugins 不碰插件市场怎么运作、权限审批 UX、沙箱怎么做这些事。它只保证:按规范打好包,任何兼容客户端都能发现并加载里面的技能和 MCP 服务器。装在哪、怎么装、装完给不给你用,那是客户端的事。

包格式:一个目录,一个清单

一个 Agent Plugin 就是一个目录。目录里有一个必需的清单文件 plugin.json,其余组件按固定位置摆放:

my-plugin/├── plugin.json├── skills/│   └── summarize/│       ├── SKILL.md│       ├── scripts/│       └── references/├── mcp.json└── com.example.client/    └── hooks/

四个部分:

  • plugin.json 是必需的清单,标识插件身份和它目标的 Agent Plugins 版本。
  • skills/ 放 Agent Skills,格式遵循 Agent Skills 规范,Agent Plugins 不重新定义。
  • mcp.json 描述 stdio、Streamable HTTP 或旧版 HTTP+SSE 的 MCP 服务器。
  • 反向域名扩展目录(如 com.example.client/)让单个客户端加自己的行为,不动可移植核心。

plugin.json:闭合的清单

最小清单只有两个字段:

{"$schema":"https://agent-plugins.org/schemas/1.0.0/plugin.schema.json","name":"hello-plugin"}

$schema 选定 Agent Plugins 版本和对应的校验契约,客户端据此选本地支持的校验规则。注意一个细节:客户端加载插件时不去网上拉这个 schema,而是用本地的实现匹配 $schema 的值。name 是插件标识,约束很具体:1 到 64 字符,只能用小写 ASCII 字母、数字、连字符和点,首尾必须是字母数字,不能含 -- 或 ..my-pluginacme.toolslint3r 合法;My-Plugin-starthas--doubletoo.many..dots 不合法。

可选字段有 version(建议语义化版本)、descriptionauthorhomepagerepositorylicense(建议 SPDX 标识符)、keywordsextensionsextensions 是客户端专属数据的入口,键是反向域名命名空间,值是对象。

这里有个刻意的取舍:清单 schema 是闭合的(closed)。顶层只允许规范定义的字段,客户端实验性数据不能随便占顶层字段,必须塞进 extensions 里的命名空间。好处是能严格校验、能查拼写错误、能做 schema 驱动的补全。坏处是没那么多自由度,但这正是"可移植"要付的代价。

skills/:只定位置,不重造格式

skills/ 下每个直接子目录是一个技能,里面要有 SKILL.md。客户端发现技能的规则很窄:只看 skills/ 的直接子目录里有没有一个叫 SKILL.md 的常规文件,不递归往下挖。SKILL.md 的 frontmatter 和正文指令遵循 Agent Skills 规范,技能里可以有 scripts/references/assets/ 等子目录,这些是 Agent Skills 约定的惯例,不是 Agent Plugins 管的事。

一句话:Agent Skills 规范定义技能长什么样,Agent Plugins 定义技能在包里放哪。

mcp.json:显式声明传输

mcp.json 在插件根目录,顶层只能有两个字段:$schema 和 mcpServersmcpServers 是个对象,键是服务器名,值是配置对象。每个服务器用一个 type 字段声明传输方式,是闭合的三选一:

类型
必需字段
说明
stdiotype, command
本地子进程,可选 args/env/cwd
streamable-httptype, url
当前远程 MCP 传输,可选字面量 headers
ssetype, url
已废弃的 HTTP+SSE 传输,客户端支持是可选的

一个完整示例,含本地和远程两种:

{"$schema":"https://agent-plugins.org/schemas/1.0.0/mcp.schema.json","mcpServers":{"local-validator":{"type":"stdio","command":"./bin/validator","args":["--data","${PLUGIN_DATA}/validator"],"env":{"CONFIG":"${PLUGIN_ROOT}/config.json"},"cwd":"${PLUGIN_ROOT}"},"deployment-api":{"type":"streamable-http","url":"https://deploy.example.com/mcp","headers":{"X-Tenant":"public-tenant"}}}}

两个设计决策值得展开。

第一,type 是显式选传输,不是靠 URL 猜测。streamable-http 选当前的 Streamable HTTP 传输,sse 选 MCP 2024-11-05 规范定义的旧版 HTTP+SSE 传输。两者是分开的,不混为一谈。客户端用 type 声明的传输做首次连接尝试,规范不定义连接失败后的回退行为。为什么要分这么细?因为现有客户端推断传输的方式互相不兼容,Agent Plugins 干脆定义一个显式的闭合 union,让每条配置的含义独立于任何客户端的原生格式。

第二,command 是单个可执行令牌,不是 shell 命令字符串。要么是裸可执行文件名(走平台搜索规则),要么是以 ./ 开头的插件相对路径(相对插件根解析)。command 上不做占位符展开。这条规则省掉了客户端解析、转义用户写的 shell 命令字符串的麻烦,一个令牌就是安全。

插件变量:PLUGIN_ROOT 和 PLUGIN_DATA

客户端启动 stdio MCP 子进程时,必须提供两个环境变量:

  • PLUGIN_ROOT:插件根目录的绝对路径(解析符号链接后的)。
  • PLUGIN_DATA:客户端管理的、专属于这个插件实例的可写数据目录,跨插件更新持久保留。

两个占位符 ${PLUGIN_ROOT} 和 ${PLUGIN_DATA} 在 argsenv 的值、cwd 里展开,单次、非递归,替换进来的文本不会再被扫描占位符。env 的键、command、远程 URL、HTTP headers 上不展开。

PLUGIN_DATA 的存在是有意义的。插件更新时包内容会被替换,但有些东西要留着:装好的依赖(node_modules、虚拟环境)、生成的代码、缓存。PLUGIN_DATA 给这些一个确定的位置。PLUGIN_ROOT 则用来引用随包发行的脚本、二进制、配置文件。

一个安全细节:插件的 env 对象里不能出现名为 PLUGIN_ROOT 或 PLUGIN_DATA 的条目,出现了这条 MCP 配置就无效。这两个保留变量由客户端自己提供,插件不能覆盖。

反向域名扩展:客户端特有行为怎么放

可移植层只管技能和 MCP。但有些行为是某个客户端专属的,比如 Claude Code 的 hooks、Cursor 的某种规则。这些不该进可移植核心,否则规范会被各家特例撑爆。

Agent Plugins 的办法是反向域名命名空间。两种放法,可以只用一种,也可以都用:

  • 清单里 extensions 下按命名空间放数据;
  • 顶层放一个以命名空间命名的目录,比如 com.example.client/
example-plugin/├── plugin.json├── skills/└── com.example.client/    └── hooks/        └── hooks.json

命名空间用客户端控制的域名反写,比如控制 example.com 的客户端用 com.example.client。规范不维护中央客户端名注册表,靠域名避免冲突。关键一句:客户端扩展不是可移植的 Agent Plugins 组件。其他客户端可以忽略它们而不影响合规。一个客户端实现了某个命名空间,就自己定义里面的内容、校验、行为和失败处理。

这种"可移植核心尽量小,特例塞进命名空间"的做法,和清单的闭合 schema 思路一致:核心严格可控,扩展有出口但不污染核心。

失败隔离:一个组件坏了不该连累整个插件

Agent Plugins 的失败处理有一条总原则:组件失败是非致命的。规范用了一整套窄边界来隔离:

  1. plugin.json 解析到插件根之外,拒绝整个插件。
  2. 某个组件类型的固定位置文件系统类型不对或越界,只禁用这个组件类型,其余继续。
  3. 某个技能的 SKILL.md 越界,只跳过这个技能,兄弟技能继续。
  4. 某条 MCP 配置的包路径越界,只跳过这条,其余服务器和组件继续。
  5. 其他越界的包路径,拒绝访问。

具体到 MCP:顶层 mcp.json 无效(JSON 不合法、$schema 不匹配、版本和 plugin.json 对不上),禁用这个插件的 MCP,但技能照常加载。单条服务器配置无效(未知传输、未知字段、缺字段),只跳过这条,其余服务器和技能继续。某台服务器启动/连接/认证/握手失败,继续加载其余。规范要求客户端尽量报告这些失败,而不是静默吞掉。

为什么要这样?规范自己的解释很直接:一个同时提供技能和 MCP 服务器的插件,不该因为一台服务器不可用就整个废掉。把失败边界做窄,插件在部分损坏时仍能部分可用。这和很多插件系统"一处错全盘挂"的做法相反。

谁在背后:开放治理,禁止一家独大

Agent Plugins 是开放许可、公开开发的。技术指导委员会(TSC)由所有核心维护者加上 Lead Core Maintainer 组成。初始 TSC 的核心维护者名单(来自仓库的 MAINTAINERS.md):

  • Clare Liguori(Amazon)
  • Roshan Sadanani(Cursor)
  • Harald Kirschner(Microsoft)
  • Gav Verma(OpenAI)
  • Jonathan Hefner(Vercel),Lead Core Maintainer

治理章程里有一条值得注意的约束:没有任何单一厂商可以占核心维护者席位的多数。所有治理角色由个人担任,不给公司预留席位。提案和技术决策公开,新功能或重大变更从 GitHub Discussions 起步,要先证明有具体的可移植性需求和实现方支持。Lead Core Maintainer 可由核心维护者 75% 超多数票罢免。这套结构明显是想避免规范被某家厂商绑架。

兼容客户端:增量采纳,不必全要

Agent Plugins 允许客户端增量采纳。一个客户端不必支持所有组件类型,只要支持技能或 MCP 服务器至少一种,就算合规。兼容客户端页(截至 2026 年 7 月)列了五个:

客户端
Skills
MCP 传输
VS Code
支持
stdio、streamable-http、sse
Cursor
支持
stdio、streamable-http、sse
GitHub Copilot
支持
stdio、streamable-http、sse
ChatGPT & Codex
支持
stdio、streamable-http
Kiro
支持
stdio、streamable-http、sse

五个客户端都支持技能,MCP 传输支持的广度有别。ChatGPT & Codex 不支持已废弃的 sse,其余四个三种都支持。这种"列清楚每个客户端支持什么"的透明度,对插件作者判断可移植边界有用。

一个细节:规范要求 MCP 客户端至少支持 stdio 或 streamable-http 之一,建议两者都支持。sse 是可选的。客户端遇到不支持的传输类型,跳过那条服务器,继续加载其余,又是失败隔离那条原则在起作用。

v1 没做的:留给未来的清单

Agent Plugins 1.0.0 有意识地收窄了范围。仓库里有一份 FUTURE_CONSIDERATIONS.md,列了未来版本可能考虑、但不承诺的方向。挑几个对落地影响大的说:

权限与审批 UX。v1 不定义信任模型、权限系统或沙箱要求。未来可能加权限声明(文件系统访问、网络访问、工具访问)、客户端按插件限制能力、安装时的用户同意流程、对执行任意命令或访问外部服务的 MCP 服务器的审批 UX、分级信任(沙箱/用户批准/组织批准)。这意味着 v1 的安全责任主要在客户端侧,规范只给失败报告要求。

来源验证。v1 不规定怎么验证插件来源或完整性。未来可能加加密签名验证、把已发布插件和源码仓库/构建关联的 attestation 链、客户端要求受信任发布者签名的策略。

密钥与敏感值。MCP 服务器运行时常常要凭证或 API key。v1 的配置里 headers 和 env 是可见的包数据,明确不能塞凭证。未来可能加 secrets 清单字段或独立密钥配置、客户端中介的密钥注入、防止一个插件访问另一个插件密钥的作用域规则。

企业控制。组织规模部署要的允许/阻止名单、组织级注册表带审批流、集中配置覆盖、合规报告,v1 都没有。

插件间依赖。目前插件不能声明依赖别的插件,未来可能加。

这份清单说明 1.0.0 刻意收窄了范围:先把可移植的包装格式和发现规则定稳,权限、安全、分发这些更难的留到后面。

怎么看 1.0.0

技能和 MCP 的规范已经有了,缺的是一层"怎么打包、放哪、怎么发现、失败了怎么不互相连累"的约定。Agent Plugins 补的就是这一层。对插件作者,一份包能进更多客户端,少做重复摆位;对客户端实现者,有一个明确的合规清单可对照。打包层至少在 TSC 涵盖的那几家主流厂商之间开始往一处靠。

它能不能成气候,看两点:这几家厂商愿意把自家插件格式往规范上靠多少,以及权限、签名、分发这些 v1 没碰的硬骨头后续能不能补上。1.0.0 范围收得很窄,但边界画得清楚。


参考链接

  • 官网:https://agent-plugins.org/[1]
  • 规范仓库:https://github.com/agentplugins/agent-plugins-spec[2]
  • 规范全文:https://agent-plugins.org/specification[3]
  • 示例插件:https://github.com/agentplugins/agent-plugins-example[4]
  • Agent Skills 规范:https://agentskills.io/specification[5]
  • MCP 规范:https://modelcontextprotocol.io/specification[6]

引用链接

[1]https://agent-plugins.org/

[2]https://github.com/agentplugins/agent-plugins-spec

[3]https://agent-plugins.org/specification

[4]https://github.com/agentplugins/agent-plugins-example

[5]https://agentskills.io/specification

[6]https://modelcontextprotocol.io/specification

基本 文件 流程 错误 SQL 调试
  1. 请求信息 : 2026-08-09 08:12:28 HTTP/1.1 GET : https://www.yeyulingfeng.com/a/913175.html
  2. 运行时间 : 0.250001s [ 吞吐率:4.00req/s ] 内存消耗:4,819.62kb 文件加载:145
  3. 缓存信息 : 0 reads,0 writes
  4. 会话信息 : SESSION_ID=598c226865231254b61e2da947bbff89
  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 ( 4.22 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.11 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.001113s ] mysql:host=127.0.0.1;port=3306;dbname=wenku;charset=utf8mb4
  2. SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.001552s ]
  3. SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.000756s ]
  4. SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.000674s ]
  5. SHOW FULL COLUMNS FROM `set` [ RunTime:0.001404s ]
  6. SELECT * FROM `set` [ RunTime:0.000641s ]
  7. SHOW FULL COLUMNS FROM `article` [ RunTime:0.001491s ]
  8. SELECT * FROM `article` WHERE `id` = 913175 LIMIT 1 [ RunTime:0.001104s ]
  9. UPDATE `article` SET `lasttime` = 1786234348 WHERE `id` = 913175 [ RunTime:0.003150s ]
  10. SELECT * FROM `fenlei` WHERE `id` = 64 LIMIT 1 [ RunTime:0.000623s ]
  11. SELECT * FROM `article` WHERE `id` < 913175 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.001005s ]
  12. SELECT * FROM `article` WHERE `id` > 913175 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.001011s ]
  13. SELECT * FROM `article` WHERE `id` < 913175 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.002107s ]
  14. SELECT * FROM `article` WHERE `id` < 913175 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.001952s ]
  15. SELECT * FROM `article` WHERE `id` < 913175 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.003738s ]
0.253816s