乐于分享
好东西不私藏

SKILL.md 从设计到解析:AI 技能包工程化最佳实践

SKILL.md 从设计到解析:AI 技能包工程化最佳实践

导读

在企业级 AI 智能体体系里,Skill 是能力载体,而 SKILL.md 就是 Skill 的灵魂与契约

如果没有统一、严谨、可解析、可维护的 SKILL.md 规范,你的 AI 能力会变得混乱、不可控、难复用、难审计、难上线。

尤其在金融、政务、医疗这类强合规、强专业场景,SKILL.md 不只是一份提示词文档,它是业务说明书、执行流程、权限边界、合规依据、评估标准

本文基于生产级 AI 智能体金融项目,完整讲解:

SKILL.md 到底是什么、怎么设计、怎么写、怎么解析、怎么加载、怎么落地工程化

全文包含大量可直接复制的规范、模板、正则解析代码、加载逻辑、最佳实践。

一、为什么必须用 SKILL.md 做技能标准化?

在很多团队里,AI 提示词还处于 “野生状态”:

  • 散落在代码里、配置里、接口里
  • 格式不统一、没人维护
  • 无法版本管理、无法审核、无法共享
  • 大模型理解不稳定、容易跑偏
  • 上线后无法追踪、无法复盘、无法优化

这在 ToC 娱乐产品里或许能忍,但在金融、风控、投资、合规场景里,完全不可接受。

SKILL.md 就是为了解决这些问题而生,它具备 7 个不可替代的价值:

  1. 结构化
    YAML + Markdown,机器可解析、人可阅读
  2. 标准化
    全公司统一格式,统一字段,统一流程
  3. 可审计
    每一行指令都可追溯、可审核、可留痕
  4. 可复用
    一次编写,多 Agent 复用
  5. 可插拔
    随启随停,支持热更新
  6. 可组合
    多技能组合完成复杂业务
  7. 合规安全
    可约束工具、输出、风险、话术

一句话:

SKILL.md 让 AI 能力从 “玄学提示词” 变成 “工程化能力资产”。

二、SKILL.md 整体结构设计(企业级标准)

2.1 标准文件结构

一个合法的 Skill 目录如下:

skill-name(短横线命名)├── SKILL.md           必须:技能描述 + 指令 + 约束├── scripts/           可选:Python 计算脚本├── references/        可选:参考文档、数据模板└── assets/            可选:图标、配置、资源

2.2 SKILL.md 两段式结构

SKILL.md 由两部分组成:

  1. YAML frontmatter(头部元数据)

    给机器看:技能名称、描述、版本、工具权限、作者、分类等。

  2. Markdown 指令体(正文)

    给大模型看:执行步骤、输入输出、异常处理、合规约束、示例。

格式固定如下:

---name: 技能唯一标识description: 功能描述 + 触发意图version: 1.0.0license: MITallowed-tools: 工具白名单metadata:  author: 作者  category: 分类---# 技能标题## Instructions执行步骤输入要求输出格式约束条件风险提示## Example输入示例输出示例

三、YAML 元数据字段详解(生产级)

3.1 必写字段

name

  • 必须与目录名一致
  • 小写、短横线分隔,如:dcf-valuation
  • 全局唯一,用于索引、加载、调用

description

  • 功能描述 + 典型触发词
  • 大模型靠它匹配用户意图
  • 必须清晰、具体、可识别

示例:

description现金流折现估值,用于股票内在价值计算,用户问估值、价值、合理价格时触发

3.2 可选但推荐字段

version

语义化版本:1.0.0、1.0.1、2.0.0

方便回滚、升级、对比。

allowed-tools

技能可调用的工具白名单,金融安全核心

allowed-toolscalculateDcf,calculateTechnicalIndicators

metadata

扩展信息:作者、分类、场景、等级、部门。

metadata:  author: sk-tech  category: 投资分析  level: 专业  scope: 股票

四、Markdown 指令体怎么写(决定 AI 专业度)

指令体是大模型真正执行的 “工作手册”,必须遵循以下原则:

4.1 单一职责

一个技能只做一件事。

  • 不要把估值、风控、图表、资讯写在一起
  • 越简单,AI 调用越稳定

4.2 步骤化

用 1/2/3/4 列清楚执行流程。

## Instructions1. 检查用户输入是否包含现金流、折现率、永续增长率、总股本2. 缺失参数则反问用户补充3. 调用 calculateDcf 工具执行计算4. 按固定格式输出结果5. 必须附带风险提示

4.3 输入明确

告诉 AI 必须要什么参数、格式是什么。

## InputcashFlows:数组,未来 5 年现金流discountRate:小数,如 0.1 代表 10%terminalGrowth:小数,如 0.03 代表 3%sharesOutstanding:亿股

4.4 输出固定

强制输出结构,避免乱回答。

## Output- 股票内在价值:xx 元- 估值结论:xxx- 风险提示:市场有风险,估值仅供参考,不构成投资建议

4.5 异常处理

必须写失败路径:

  • 参数缺失怎么办
  • 计算失败怎么办
  • 超出范围怎么办

4.6 合规与风险(金融必备)

## 合规约束1. 不承诺收益2. 不提供具体买卖建议3. 必须输出风险提示4. 无法回答则转人工

五、SKILL.md 完整可复制模板(企业直接用)

---name: dcf-valuationdescription: 现金流折现估值,用于股票内在价值计算,用户问估值、价值、合理价格时触发version: 1.0.0license: MITallowed-tools: calculateDcfmetadata:  author: sk-finance  category: 投资分析---# DCF 估值技能## Instructions1. 首先检查用户输入是否包含:现金流、折现率、永续增长率、总股本。2. 缺少任何参数,反问用户补充。3. 调用 calculateDcf 工具进行精确计算。4. 输出必须包含:内在价值、估值结论、风险提示。5. 不提供投资建议,不预测涨跌。## 输入参数cashFlows:未来现金流数组discountRate:折现率terminalGrowth:永续增长率sharesOutstanding:总股本(亿股)## 输出格式- 内在价值:XX 元/股- 结论:XXX- 风险提示:市场有风险,估值基于假设,仅供参考## 异常处理参数不足 → 引导补充计算异常 → 告知无法计算并建议检查数据

六、SKILL.md 解析器代码实现(核心工程)

6.1 解析思路

使用正则表达式一次性匹配:

  • YAML 中的 name
  • YAML 中的 description
  • 分隔线以下的全部指令

6.2 正则表达式

private static final Pattern SKILL_PATTERN = Pattern.compile(    "^---\\s*[\\r\\n]+name:\\s*(.+?)\\s*[\\r\\n]+description:\\s*(.+?)\\s*[\\r\\n]+---\\s*[\\r\\n]+(.*)$",    Pattern.DOTALL);

6.3 完整解析器代码

@Slf4jpublic class SkillParser {    private static final Pattern SKILL_PATTERN = Pattern.compile(        "^---\\s*[\\r\\n]+name:\\s*(.+?)\\s*[\\r\\n]+description:\\s*(.+?)\\s*[\\r\\n]+---\\s*[\\r\\n]+(.*)$",        Pattern.DOTALL    );    /**     * 解析 SKILL.md 内容为 Skill 对象     */    public static Skill parse(String content) {        if (content == null || content.isBlank()) {            log.warn("技能内容为空");            return null;        }        Matcher matcher = SKILL_PATTERN.matcher(content);        if (matcher.find()) {            String name = matcher.group(1).trim();            String description = matcher.group(2).trim();            String instructions = matcher.group(3).trim();            return Skill.builder()                .name(name)                .description(description)                .instructions(instructions)                .fullContent(content)                .build();        }        log.warn("SKILL.md 格式不匹配,解析失败");        return null;    }}

6.4 Skill 领域实体

@Data@Builderpublic class Skill {    private String name;    private String description;    private String instructions;    private String fullContent;}

七、SKILL.md 加载流程(工程化落地)

7.1 双层加载路径

  1. classpath:skills/**/SKILL.md → 内置只读技能
  2. file:data/skills/**/SKILL.md → 外部可写技能

7.2 并行加载(高性能)

public int loadFromPath(String pathPattern) {    try {        Resource[] resources = resolver.getResources(pathPattern);        List<Skill> skills = Arrays.stream(resources)            .parallel()            .map(resource -> {                try {                    String content = StreamUtils.copyToString(                        resource.getInputStream(),                        StandardCharsets.UTF_8                    );                    return SkillParser.parse(content);                } catch (Exception e) {                    log.warn("解析失败:{}", resource.getFilename());                    return null;                }            })            .filter(Objects::nonNull)            .collect(Collectors.toList());        skills.forEach(skillRepository::save);        return skills.size();    } catch (Exception e) {        log.error("加载技能失败", e);        return 0;    }}

7.3 启动自动加载

@Service@RequiredArgsConstructorpublic class SkillLoaderService {    private final FileSystemSkillRepository repository;    private static final String CLASSPATH_SKILLS = "classpath:skills/**/SKILL.md";    private static final String FILE_SKILLS = "file:data/skills/**/SKILL.md";    @PostConstruct    public void loadAllSkills() {        // 加载内置技能        int innerCount = repository.loadFromPath(CLASSPATH_SKILLS);        // 加载外部覆盖技能        int outerCount = 0;        File dir = new File("data/skills");        if (dir.exists()) {            outerCount = repository.loadFromPath(FILE_SKILLS);        }        log.info("技能加载完成:内置{}个,外部{}个", innerCount, outerCount);    }}

八、SKILL.md 热更新实现(企业必备)

8.1 更新逻辑

  1. 接收新的 SKILL.md 内容
  2. 重新解析
  3. 更新内存缓存
  4. 持久化到外部目录
  5. 立即生效,无需重启

8.2 热更新代码

@Overridepublic synchronized void update(String name, String newContent) {    Skill skill = SkillParser.parse(newContent);    if (skill == null) {        throw new RuntimeException("技能格式错误,更新失败");    }    // 更新缓存    skillCache.put(name, skill);    // 持久化到外部目录    try {        Path path = Paths.get(DYNAMIC_SKILLS_PATH, name, "SKILL.md");        Files.createDirectories(path.getParent());        Files.writeString(path, newContent, StandardCharsets.UTF_8);        log.info("技能热更新成功:{}", name);    } catch (IOException e) {        log.error("技能持久化失败", e);    }}

九、SKILL.md 常见错误与避坑指南

9.1 格式错误

  • YAML 缩进不对
  • 没有 --- 开始结束线
  • name 包含大写、空格、特殊字符

9.2 指令错误

  • 步骤混乱、逻辑复杂
  • 没有异常处理
  • 没有风险提示

9.3 安全问题

  • allowed-tools 不设置,导致越权调用
  • 输出不做合规约束
  • 可执行指令未限制

9.4 工程问题

  • 文件名不是 SKILL.md(大写)
  • 目录结构不规范
  • 多个技能同名导致覆盖

十、SKILL.md 工程化最佳实践总结

  1. 统一格式
    全公司只用一套 SKILL.md 规范
  2. 目录规范
    严格按目录存放,自动扫描
  3. 双层存储
    内置只读保安全,外部可写保迭代
  4. 并行加载
    启动更快、占用更低
  5. 热更新
    业务实时生效,不中断服务
  6. 权限白名单
    allowed-tools 必须配置
  7. 全量审计
    每次调用都记录技能、日志、评估
  8. 版本管理
    每次更新保留版本,方便回溯
  9. 审核上线
    金融场景必须先审核再上线
  10. 持续优化
    根据失败日志迭代指令

十一、结语

SKILL.md 看似只是一个 Markdown 文件,

但它是企业 AI 能力平台的基石

它把模糊、混乱、不可控的提示词,

变成可管理、可复用、可审核、可追溯、可优化的标准化资产。

在金融、政务、医疗等强合规行业,

SKILL.md 不仅是开发规范,更是合规底线、安全边界、专业保障

如果你正在搭建 AI 智能体平台、大模型应用平台、企业能力中心,

本文的 SKILL.md 工程化方案可以直接落地、直接上线、直接过审

扫码详细了解该项目

基本 文件 流程 错误 SQL 调试
  1. 请求信息 : 2026-04-25 00:07:27 HTTP/1.1 GET : https://www.yeyulingfeng.com/a/554421.html
  2. 运行时间 : 0.189119s [ 吞吐率:5.29req/s ] 内存消耗:4,768.38kb 文件加载:145
  3. 缓存信息 : 0 reads,0 writes
  4. 会话信息 : SESSION_ID=a4e80209603e50d79783d04f2e00d8cc
  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.001165s ] mysql:host=127.0.0.1;port=3306;dbname=wenku;charset=utf8mb4
  2. SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.001057s ]
  3. SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.000392s ]
  4. SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.000328s ]
  5. SHOW FULL COLUMNS FROM `set` [ RunTime:0.000605s ]
  6. SELECT * FROM `set` [ RunTime:0.000201s ]
  7. SHOW FULL COLUMNS FROM `article` [ RunTime:0.000636s ]
  8. SELECT * FROM `article` WHERE `id` = 554421 LIMIT 1 [ RunTime:0.000699s ]
  9. UPDATE `article` SET `lasttime` = 1777046847 WHERE `id` = 554421 [ RunTime:0.000864s ]
  10. SELECT * FROM `fenlei` WHERE `id` = 64 LIMIT 1 [ RunTime:0.000242s ]
  11. SELECT * FROM `article` WHERE `id` < 554421 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.000503s ]
  12. SELECT * FROM `article` WHERE `id` > 554421 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.000608s ]
  13. SELECT * FROM `article` WHERE `id` < 554421 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.000830s ]
  14. SELECT * FROM `article` WHERE `id` < 554421 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.001241s ]
  15. SELECT * FROM `article` WHERE `id` < 554421 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.000953s ]
0.190780s