乐于分享
好东西不私藏

新手易懂版:OpenClaw Agent技能生态与自定义扩展——打造可无限增值的AI Agent

新手易懂版:OpenClaw Agent技能生态与自定义扩展——打造可无限增值的AI Agent

在使用AI Agent的过程中,你是否遇到过“系统自带功能满足不了个性化需求”的困扰?比如想让Agent对接企业内部OA系统、实现专属业务流程自动化,却发现没有对应的功能模块?OpenClaw作为生产级AI Agent系统,通过开放的技能生态低门槛自定义扩展机制,让开发者(甚至非技术人员)都能快速为Agent新增技能,实现“核心能力不变,扩展能力无限”,完美适配不同场景的个性化需求。

对于新手来说,理解OpenClaw的技能生态设计和扩展逻辑,能让你摆脱“只能用现成功能”的局限,真正让AI Agent服务于具体业务,这也是OpenClaw区别于普通AI工具的核心优势之一。

一、先搞懂:OpenClaw技能生态的核心逻辑

OpenClaw的技能(Skills)是系统的“能力原子”——每个技能对应一个独立的功能模块(如查物流、写周报、对接OA系统),所有技能共同构成了Agent的“技能生态”。这个生态的核心设计逻辑是“核心技能内置,扩展技能开放”,既保证了基础功能的稳定性,又提供了灵活的扩展空间。

1. 技能的核心分类

OpenClaw的技能生态分为两大类,覆盖从基础功能到个性化需求的全场景:

  • 内置核心技能:系统自带的52+基础技能,涵盖文件操作、网络请求、数据处理、多平台交互等通用功能,无需配置即可直接使用,满足大多数用户的基础需求;
  • 自定义扩展技能:用户根据自身业务需求开发的专属技能,如对接企业ERP系统、实现特定业务流程自动化、调用私有API等,是技能生态的核心增值部分。

2. 技能生态的设计原则

OpenClaw的技能生态严格遵循“高内聚低耦合”原则,确保扩展技能时不破坏核心系统,具体体现在两点:

  • 技能独立封装:每个技能都是独立的模块,包含自身的逻辑、参数配置和依赖,不与其他技能或核心系统深度绑定;
  • 标准化接口通信:所有技能通过统一的接口与Agent层交互,无论内置技能还是自定义技能,都遵循相同的调用规范,Agent层无需区分技能来源,只需按标准格式调用即可。

这种设计让技能生态具备“即插即用”的特性:新增技能时只需按标准开发并注册,无需修改核心代码;删除技能时直接卸载,不影响系统其他功能。

二、核心原理:OpenClaw自定义扩展的两大核心机制

OpenClaw之所以能让新手也轻松实现自定义扩展,关键在于两大核心机制:零代码/低代码扩展机制标准化技能注册机制,两者降低了扩展门槛,同时保证了系统的兼容性和稳定性。

(一)零代码/低代码扩展机制:非技术人员也能上手

OpenClaw支持两种自定义技能开发方式,适配不同用户的技术背景,新手可根据自身情况选择:

1. 零代码扩展:基于SKILL.md的可视化配置

这是最适合非技术人员的扩展方式,核心是通过编写Markdown格式的SKILL.md文件,定义技能的功能、参数和执行逻辑,无需编写复杂代码。

SKILL.md的核心组成部分(新手可直接套用模板):

# 技能名称:企业OA审批进度查询
## 技能描述:对接企业OA系统,查询指定审批单的进度
## 触发条件:用户输入包含“OA审批”“查询审批进度”关键词
## 参数定义:
审批单号(必填):用户需提供的OA审批单编号
用户名(必填):企业OA系统的登录用户名
## 执行逻辑:
1. 接收用户输入的审批单号和用户名;
2. 调用企业OA系统的查询API(配置在参数中);
3. 解析API返回结果,提取审批状态、当前处理人、预计完成时间;
4. 按固定格式生成回复,反馈给用户。
## 异常处理:
若审批单号不存在:返回“未查询到该审批单,请核对编号后重试”;
若API调用失败:返回“当前OA系统暂时不可用,将在10分钟内重试”。

零代码扩展的核心流程

  1. 按模板编写SKILL.md文件,配置技能的参数、执行逻辑和异常处理;
  2. 将文件放入OpenClaw的skills/custom/目录;
  3. 系统自动识别并解析该文件,完成技能注册;
  4. Agent层可直接调用该技能,无需额外配置。

这种方式让非技术人员也能快速实现简单的自定义技能,大幅降低了技能生态的扩展门槛。

2. 低代码扩展:基于TypeScript/Python的模块化开发

对于需要复杂逻辑的自定义技能(如数据处理、复杂流程自动化),OpenClaw支持通过TypeScript或Python编写技能模块,核心是遵循标准化的技能接口规范,新手可基于官方模板快速开发。

低代码扩展的核心步骤(以Python为例):

  1. 创建技能模块文件:新建oa_approval_query.py文件,导入OpenClaw的技能开发SDK;
  2. 定义技能类并实现接口:遵循SDK的抽象类规范,实现__init__(初始化)、run(执行逻辑)、validate_params(参数校验)三个核心方法;
# 技能开发示例(Python)
from openclaw.skills import BaseSkill

classOAApprovalQuerySkill(BaseSkill):
# 初始化技能,配置基础信息
def__init__(self):
        self.name = "oa_approval_query"
        self.description = "查询企业OA审批进度"
        self.required_params = ["approval_no""username"]  # 必填参数

# 参数校验:确保用户输入的参数合法
defvalidate_params(self, params):
ifnot params.get("approval_no"):
returnFalse"审批单号不能为空"
ifnot params.get("username"):
returnFalse"用户名不能为空"
returnTrue""

# 核心执行逻辑:调用OA API并处理结果
defrun(self, params):
        approval_no = params["approval_no"]
        username = params["username"]
# 调用企业OA API(实际开发中需配置API地址和密钥)
        oa_api_url = "https://api.company-oa.com/query_approval"
        result = requests.get(oa_api_url, params={"no": approval_no, "user": username})
# 解析结果并返回
if result.status_code == 200:
            data = result.json()
return {
"success"True,
"message"f"审批单{approval_no}当前状态:{data['status']},处理人:{data['handler']}"
            }
else:
return {
"success"False,
"message""OA系统查询失败,请稍后重试"
            }
  1. 配置技能依赖:创建requirements.txt文件,列出技能所需的第三方依赖(如requests);
  2. 注册技能:将技能文件和依赖文件放入skills/custom/目录,系统自动加载并注册,Agent层即可调用。

低代码扩展方式让技术人员能实现复杂的自定义逻辑,同时通过SDK和接口规范,确保技能与系统的兼容性,避免出现“扩展技能破坏核心系统”的问题。

(二)标准化技能注册与调用机制:确保扩展兼容

无论是零代码还是低代码开发的自定义技能,都需要通过OpenClaw的标准化机制完成注册和调用,这是保证技能生态有序、兼容的核心。

1. 技能注册流程

OpenClaw启动时(对应10步初始化的Step8:解析Skills),会自动扫描skills/目录下的所有技能(内置+自定义),按以下流程完成注册:

  1. 识别技能类型(零代码/SKILL.md 或 低代码/脚本文件);
  2. 解析技能的基础信息(名称、描述、参数、依赖);
  3. 校验技能是否符合标准化接口规范(如参数是否完整、核心方法是否实现);
  4. 校验通过后,将技能信息录入技能注册表,Agent层可通过技能名称调用。

2. 技能调用流程

Agent层调用技能时,遵循“统一接口、参数标准化”的原则,流程如下:

  1. Agent层根据用户需求,确定需要调用的技能(如“查询OA审批进度”对应oa_approval_query技能);
  2. 按技能定义的参数要求,从用户输入中提取或向用户询问必填参数;
  3. 将参数按标准化格式封装,调用技能的run方法;
  4. 接收技能返回的结果(成功/失败+消息),Agent层根据结果生成回复反馈给用户。

整个调用过程中,Agent层无需关心技能是内置还是自定义,只需按标准格式交互,确保了技能生态的兼容性和扩展性。

三、OpenClaw技能生态的核心优势

对于新手和企业用户来说,OpenClaw的技能生态设计带来三大核心优势,让AI Agent真正能适配个性化业务需求:

  1. 扩展门槛低:支持零代码/低代码两种方式,非技术人员也能快速开发简单技能,技术人员可实现复杂扩展;
  2. 兼容性强:所有技能遵循标准化接口,新增技能无需修改核心代码,不破坏系统稳定性;
  3. 灵活复用:自定义技能可封装为独立模块,在不同Agent实例中复用,也可分享给其他用户,形成技能共享生态;
  4. 安全可控:自定义技能在沙箱环境中运行,限制权限和资源访问,避免恶意技能获取系统敏感信息,保障系统安全。

四、行业完整示例:企业HR智能助手的自定义技能扩展

为了让新手更直观理解自定义扩展的实际应用,我们以企业HR智能助手AI Agent为场景,通过自定义扩展技能,实现“对接企业HR系统,自动查询考勤、申请假期、生成工资条”的个性化需求,完整落地OpenClaw的技能生态扩展。

1. 场景核心需求

  • 基础需求:HR智能助手需实现考勤查询、假期申请、工资条推送等核心功能;
  • 个性化需求:对接企业内部HR系统(私有API),数据不对外泄露,同时支持员工自助操作,减少HR人工工作量;
  • 扩展要求:非技术背景的HR人员能简单调整技能参数(如假期类型、考勤规则),技术人员可后续扩展“员工入职流程自动化”等复杂技能。

2. 技能生态落地设计

(1)核心技能规划

技能类型
技能名称
实现方式
核心功能
自定义零代码技能
考勤查询技能
SKILL.md
员工输入“查询上月考勤”,调用HR系统API,返回迟到、请假天数
自定义零代码技能
假期申请技能
SKILL.md
员工输入“申请3天年假”,校验假期余额,提交至HR系统
自定义低代码技能
工资条生成推送技能
Python脚本
每月5号自动调用HR系统工资数据,生成PDF工资条,推送至员工企业微信

(2)零代码技能实现:考勤查询技能(SKILL.md)

# 技能名称:考勤查询
## 技能描述:查询员工指定月份的考勤记录,包括迟到、早退、请假天数
## 触发条件:用户输入包含“考勤查询”“查考勤”“迟到次数”等关键词
## 参数定义:
月份(可选):默认查询上月,支持输入“2026-03”格式指定月份
员工工号(必填):企业员工唯一工号
## 执行逻辑:
1. 接收员工输入的工号和月份(无月份则默认上月);
2. 调用企业HR系统考勤查询API(API地址:https://hr-api.company.com/attendance,密钥配置在系统环境变量);
3. 解析API返回的“迟到次数”“早退次数”“请假天数”“全勤天数”;
4. 按“员工工号XXX,2026年3月考勤:迟到1次,请假2天,全勤18天”的格式生成回复。
## 异常处理:
工号不存在:返回“未查询到该工号对应的员工,请核对工号后重试”;
API调用失败:返回“当前HR系统暂时不可用,将在10分钟内为你重试查询”;
无该月份考勤数据:返回“未查询到2026年3月的考勤记录,可能尚未统计完成”。

(3)低代码技能实现:工资条生成推送技能(Python)

  1. 技能脚本文件salary_slip_push.py
from openclaw.skills import BaseSkill
import requests
import pdfkit
from wechatpy import WeChatClient

classSalarySlipPushSkill(BaseSkill):
def__init__(self):
        self.name = "salary_slip_push"
        self.description = "生成员工工资条并推送至企业微信"
        self.required_params = ["employee_id""month"]
# 企业微信配置(从系统配置中读取,避免硬编码)
        self.wechat_corp_id = "wx1234567890abcdef"
        self.wechat_agent_id = 100001
        self.wechat_secret = "xxxxxxxxxxxxxx"

defvalidate_params(self, params):
ifnot params.get("employee_id"):
returnFalse"员工工号不能为空"
ifnot params.get("month"):
returnFalse"请指定工资条月份(格式:2026-03)"
returnTrue""

defrun(self, params):
        employee_id = params["employee_id"]
        month = params["month"]
# 1. 调用HR系统获取工资数据
        hr_api_url = "https://hr-api.company.com/salary"
        salary_data = requests.get(
            hr_api_url,
            params={"employee_id": employee_id, "month": month},
            headers={"Authorization""Bearer " + self.get_config("hr_api_token")}
        ).json()

ifnot salary_data:
return {"success"False"message"f"未查询到{month}月工资数据"}

# 2. 生成PDF工资条
        html_content = f"""
        <h1>{month}月工资条</h1>
        <p>员工工号:{employee_id}</p>
        <p>员工姓名:{salary_data['name']}</p>
        <p>基本工资:{salary_data['basic_salary']}元</p>
        <p>绩效工资:{salary_data['performance_salary']}元</p>
        <p>扣除社保:{salary_data['social_security']}元</p>
        <p>实发工资:{salary_data['net_salary']}元</p>
        """

        pdf_path = f"./salary_slips/{employee_id}_{month}.pdf"
        pdfkit.from_string(html_content, pdf_path)

# 3. 推送至企业微信
        client = WeChatClient(self.wechat_corp_id, self.wechat_secret)
try:
            client.message.send_file(
                agent_id=self.wechat_agent_id,
                user_id=employee_id,
                media_id=self.upload_file_to_wechat(pdf_path)
            )
return {"success"True"message"f"{month}月工资条已推送至你的企业微信"}
except Exception as e:
return {"success"False"message"f"工资条推送失败:{str(e)}"}

# 辅助方法:上传文件至企业微信获取media_id
defupload_file_to_wechat(self, file_path):
        client = WeChatClient(self.wechat_corp_id, self.wechat_secret)
        media = client.media.upload("file", open(file_path, "rb"))
return media["media_id"]
  1. 依赖文件requirements.txt
requests==2.31.0
pdfkit==1.0.0
wechatpy==1.8.18
  1. 注册技能:将上述两个文件放入skills/custom/salary_slip/目录,系统启动时自动注册。

(4)技能调用流程演示

  1. 员工在企业微信发送“查询我2026年3月考勤”;
  2. Agent层识别意图,调用“考勤查询”技能,询问员工工号;
  3. 员工回复工号“00123”,技能调用HR系统API,返回考勤结果:“员工工号00123,2026年3月考勤:迟到1次,请假2天,全勤18天”;
  4. 每月5号,系统自动触发“工资条生成推送”技能,按员工工号批量生成工资条并推送至企业微信,HR无需手动操作。

3. 落地核心价值

  • 降低HR工作量:考勤查询、假期申请、工资条推送等重复性工作全部自动化,HR可专注于招聘、培训等核心工作;
  • 员工体验提升:员工随时自助查询考勤、申请假期,无需等待HR回复,工资条及时推送,信息透明;
  • 灵活扩展:后续需要新增“员工入职流程自动化”技能,只需按标准开发并注册,无需修改现有系统;
  • 数据安全可控:所有技能对接企业私有HR系统,数据不对外泄露,符合企业数据安全要求。

五、新手核心总结

  1. OpenClaw的技能生态是其核心增值点,分为内置核心技能自定义扩展技能,遵循“高内聚低耦合”原则,支持“即插即用”;
  2. 自定义扩展提供零代码(SKILL.md) 和低代码(TypeScript/Python) 两种方式,非技术人员和技术人员都能上手,大幅降低扩展门槛;
  3. 所有技能通过标准化接口注册和调用,Agent层无需区分技能来源,确保扩展技能与核心系统兼容,不破坏稳定性;
  4. 技能生态的核心优势是扩展灵活、门槛低、安全可控,让AI Agent能适配不同场景的个性化需求,真正服务于具体业务;
  5. 新手落地时,可先从零代码技能入手(如简单的API调用、流程配置),熟悉后再尝试低代码开发复杂技能,逐步构建专属的技能生态。

对于AI Agent开发新手来说,掌握OpenClaw的技能生态和自定义扩展机制,不仅能解决个性化业务需求,更能学会“模块化封装、标准化接口”的开发思想,这一思想将广泛适用于各类软件系统的扩展开发,成为核心的开发能力。

基本 文件 流程 错误 SQL 调试
  1. 请求信息 : 2026-04-02 18:00:14 HTTP/1.1 GET : https://www.yeyulingfeng.com/a/489350.html
  2. 运行时间 : 0.266769s [ 吞吐率:3.75req/s ] 内存消耗:4,759.66kb 文件加载:145
  3. 缓存信息 : 0 reads,0 writes
  4. 会话信息 : SESSION_ID=798b2669737983a226c1a9655f64d941
  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.000852s ] mysql:host=127.0.0.1;port=3306;dbname=wenku;charset=utf8mb4
  2. SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.001662s ]
  3. SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.000682s ]
  4. SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.000669s ]
  5. SHOW FULL COLUMNS FROM `set` [ RunTime:0.001622s ]
  6. SELECT * FROM `set` [ RunTime:0.000552s ]
  7. SHOW FULL COLUMNS FROM `article` [ RunTime:0.001801s ]
  8. SELECT * FROM `article` WHERE `id` = 489350 LIMIT 1 [ RunTime:0.001348s ]
  9. UPDATE `article` SET `lasttime` = 1775124015 WHERE `id` = 489350 [ RunTime:0.007489s ]
  10. SELECT * FROM `fenlei` WHERE `id` = 64 LIMIT 1 [ RunTime:0.003706s ]
  11. SELECT * FROM `article` WHERE `id` < 489350 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.004984s ]
  12. SELECT * FROM `article` WHERE `id` > 489350 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.019846s ]
  13. SELECT * FROM `article` WHERE `id` < 489350 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.002864s ]
  14. SELECT * FROM `article` WHERE `id` < 489350 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.007752s ]
  15. SELECT * FROM `article` WHERE `id` < 489350 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.008588s ]
0.270796s