乐于分享
好东西不私藏

SKill管理太痛苦?一键安装 + AI自动生成教程,效率飙升10倍!

SKill管理太痛苦?一键安装 + AI自动生成教程,效率飙升10倍!

SKill管理太痛苦?一键安装 + AI自动生成教程,效率飙升10倍!

在 AI 智能体系统中,Skill(技能) 是赋予大模型专业能力的核心手段。但随着技能越来越多,一个老生常谈的问题浮出水面:

本地安装零散、依赖配置复杂、管理靠肉眼翻目录、依赖靠运气装、装完了不会用还得翻文档 。

本文将带你拆解 Aix-DB 全新上线的 技能中心(Skill Center) 模块,一套完整的技能生命周期管理方案:从 GitHub 一键安装 → 依赖自动配置 → 可视化管理 → AI 生成使用教程,让智能体技能管理从"刀耕火种"进入"工业化"时代。

💡 核心思想 将技能从散落的 Markdown 文件,升级为拥有标准格式、安装源、依赖管理、教程生成的可管理资产,通过统一的 Web 界面完成全生命周期操作。

Text-to-SQL进化·Skill模式:融合标准能力的智能SQL生成方案

Text-to-SQL进化:从单轮问答到Skill驱动的智能数据分析

一句话查数据出报告,AI让人人都是分析师


🎬 运行效果预览

已关注
关注
重播 分享

📌 如果您这个项目感兴趣,欢迎「付费点赞」支持一下!

👉 下方点击「喜欢作者」,金额随意心意无价。  让我们在技术路上彼此赋能,少走弯路,高效落地!

付费后,请务必添加我的微信(微信号:weber812)并发送支付凭证,我将第一时间拉您进入专属「技术支持群」。

进群后您能获得哪些福利👉 完整代码具体请见下方说明!

🧭 本文流程一览

✅ 痛点分析 —— 技能管理的四大难题 ✅ 整体架构 —— 前后端分层设计与技术选型 ✅ GitHub 一键安装 —— 输入仓库地址,预览并选择性安装 ✅ 依赖自动安装 —— 自动检测依赖,创建独立虚拟环境 ✅ 技能管理面板 —— 搜索、启用/禁用、批量卸载、分 scope 管理 ✅ AI 使用教程 —— 基于 LLM 流式生成技能使用指南 ✅ Slash 命令集成 —— 在聊天框中直接选择技能调用


一、痛点分析:技能管理的四大难题

在 Aix-DB 之前的版本中,技能以 SKILL.md 文件的形式存放在代码目录下。虽然简单直观,但随着项目规模扩大,问题逐渐暴露:

痛点
具体表现
影响
安装不方便
手动 clone 仓库、拷贝目录、改路径,一个技能装10分钟
技能共享成本极高
管理太零散
技能散落在两个目录(common/deep),没有统一视图
不知道装了什么、哪些启用
依赖不能自动安装
技能依赖的 Python 包需要手动 pip install
环境冲突、遗漏依赖导致运行失败
没有使用教程
装完了不知道怎么用,得翻 SKILL.md 原文猜语义
上手门槛高,协作困难

二、整体架构:前后端分层设计

技能中心采用经典的三层架构:前端页面 → REST API → 核心服务

1

┌─────────────────────────────────────────────────────────┐│                   前端 · 技能中心页面                      ││  (Vue 3 + Naive UI · skill-center.vue)                  ││                                                         ││  ┌─────────┐  ┌──────────┐  ┌───────────┐  ┌────────┐  ││  │GitHub   │  │Zip上传   │  │技能列表    │  │使用教程 │  ││  │安装面板  │  │安装      │  │管理面板    │  │抽屉    │  ││  └────┬────┘  └────┬─────┘  └─────┬─────┘  └───┬────┘  │└───────┼────────────┼──────────────┼─────────────┼───────┘│            │              │             │▼            ▼              ▼             ▼┌─────────────────────────────────────────────────────────┐│              后端 · REST API (Sanic Blueprint)           ││  (controllers/skill_api.py)                             ││                                                         ││  POST /install/github  POST /install/upload             ││  GET  /list            POST /uninstall                  ││  POST /toggle          GET  /content                    ││  GET  /preview         POST /tutorial (SSE)             │└───────────────────────┬─────────────────────────────────┘┌─────────────────────────────────────────────────────────┐│            核心服务 · SkillService                       ││  (services/skill_service.py)                            ││                                                         ││  - YAML Front Matter 解析                                ││  - GitHub zip 下载与解压                                  ││  - 独立虚拟环境创建 (_setup_skill_venv)                    ││  - 技能启用/禁用(.disabled 标记文件)                      ││  - 双 scope 目录管理(common / deep)                     │└─────────────────────────────────────────────────────────┘

2.1 技术栈

技术
作用
前端
Vue 3 + TypeScript + Naive UI
交互界面、SSE 流式渲染
API 层
Sanic Blueprint + OpenAPI
RESTful 接口、JWT 鉴权
服务层
SkillService (纯 Python)
技能解析、安装、环境管理
AI 层
LangChain LLM (astream)
技能教程流式生成

2.2 双 Scope 设计

技能中心将技能分为两个独立的作用域:

  • 智能问答(common): 服务于 CommonReactAgent,技能以 Prompt 注入方式增强通用问答能力
  • 深度问数(deep): 服务于 DeepAgent,技能驱动多阶段深度研究任务
1
2
3
# 两个技能目录,彼此隔离  COMMON_SKILLS_DIR = Path("agent/common/skills")      # docx, pdf, pptx, xlsx, web-access...  DEEP_SKILLS_DIR   = Path("agent/deepagent/skills")    # query-writing, report-generation...  

前端通过 Tab 切换 scope,所有操作(安装、卸载、搜索)都在对应 scope 下执行。


三、GitHub 一键安装

3.1 安装流程

1
用户输入仓库地址 → 预览技能列表 → 勾选要安装的 → 一键安装  
Pasted image 20260412183924
 这是技能中心最核心的能力。用户只需输入 GitHub 仓库地址(支持 owner/repo 或完整 URL),即可完成以下自动化流程:

Step 1:预览

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
async def preview_github_repo(cls, repo: str) -> list[dict]:      """预览 GitHub 仓库中的技能"""    branches = ["main", "master"]  # 自动尝试两个分支      for branch in branches:        try:            skills, temp_dir = await cls._download_github_skills(repo, branch)            if skills:                shutil.rmtree(temp_dir, ignore_errors=True)                  return skills        except Exception:              continue    return []```  ❝ 🔍 说明:  - 自动兼容 `main` 和 `master` 两种分支命名,无需用户手动指定  - 预览阶段只解析 `SKILL.md` 的 YAML Front Matter,不执行安装  - 支持仓库中包含多个技能(每个子目录一个 `SKILL.md`)  **Step 2:下载与解析**  ```python  async def _download_github_skills(cls, repo, branch, skill_names=None):      zip_url = f"https://github.com/{repo}/archive/refs/heads/{branch}.zip"    async with httpx.AsyncClient(follow_redirects=True, timeout=60) as client:          response = await client.get(zip_url)        response.raise_for_status()        skills, temp_dir = cls._extract_skills_from_zip(response.content, skill_names)    return skills, temp_dir```  ❝ 🔍 说明:  - 通过 GitHub Archive API 下载 zip 包,无需 git clone,速度更快  - 使用 `httpx.AsyncClient` 异步下载,不阻塞 Sanic 事件循环  - 解压后递归扫描 `SKILL.md` 文件,自动识别技能边界  **Step 3:选择性安装**  前端展示预览结果后,用户可以勾选需要的技能,点击安装:  ```typescript  // 前端:全选 / 部分选择  const allPreviewSelected = computed({    get: () => previewList.value.length > 0    && selectedForInstall.value.length === previewList.value.length,  set: (val: boolean) => {    selectedForInstall.value = val ? previewList.value.map(s => s.name) : []  },})  

3.2 Zip 包上传安装

除了 GitHub,还支持直接上传 zip 包安装,适用于内网环境或私有技能:

1
2
3
@bp.post("/install/upload")  async def install_from_upload(request: Request):      file = request.files["file"][0]    zip_bytes = file.body    installed = SkillService.install_from_zip(zip_bytes, filename, scope=scope)  

四、依赖自动安装:独立虚拟环境

这是解决"装了技能跑不起来"的关键设计。每个技能可以携带自己的 requirements.txt,安装时系统自动为其创建独立的 Python 虚拟环境

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
@classmethod  def _setup_skill_venv(cls, skill_dir: Path) -> bool:      """为 skill 创建独立虚拟环境并安装依赖"""    requirements_file = skill_dir / "requirements.txt"    if not requirements_file.exists():        return True  # 无依赖,跳过      venv_dir = skill_dir / ".venv"    # 创建虚拟环境      subprocess.run(        [sys.executable, "-m", "venv", str(venv_dir)],          check=True, capture_output=True, timeout=300,      )      # 确定 pip 路径(跨平台兼容)      pip_path = (        venv_dir / "bin" / "pip"        if venv_dir.joinpath("bin").exists()        else venv_dir / "Scripts" / "pip.exe"    )      # 安装依赖      subprocess.run(        [str(pip_path), "install", "-r", str(requirements_file), "-q"],          check=True, capture_output=True, timeout=600,      )    return True```  ❝ 🔍 说明:  - **环境隔离**:每个技能拥有独立的 `.venv`,避免不同技能之间的包版本冲突  - **跨平台兼容**:自动适配 Linux/macOS(`bin/pip`)和 Windows(`Scripts/pip.exe`)  - **超时保护**:虚拟环境创建 5 分钟超时,依赖安装 10 分钟超时,防止卡死  - **无依赖跳过**:没有 `requirements.txt` 的技能直接安装,不额外消耗时间  
1
2
3
4
5
6
7
8
9
10
11
12
技能目录结构(安装后):  agent/common/skills/  ├── docx/  │   ├── SKILL.md           # 技能定义文档  │   ├── requirements.txt   # Python 依赖声明(可选)  │   └── .venv/             # 自动创建的虚拟环境(可选)  ├── pdf/  │   ├── SKILL.md  │   └── .disabled          # 禁用标记文件  └── web-access/      └─ SKILL.md  

五、技能管理面板

5.1 核心功能

前端技能管理面板提供以下能力:

功能
实现方式
说明
技能列表GET /system/skill/list?scope=common
展示所有已安装技能
关键词搜索
前端 computed 过滤
按名称或描述实时搜索
查看详情GET /system/skill/content?name=xxx
抽屉展示 SKILL.md 内容(Markdown 渲染)
启用/禁用POST /system/skill/toggle
通过 .disabled 标记文件控制
单个卸载POST /system/skill/uninstall
确认弹窗 + 删除目录
批量卸载
前端全选 + 循环调用
勾选多个技能一次性卸载

5.2 启用/禁用机制

技能的启用/禁用采用了极其简洁的标记文件方案:

1
2
3
def toggle_skill(cls, skill_name, enabled, scope="common"):      disabled_file = skill_dir / ".disabled"    if enabled:        disabled_file.unlink()       # 删除标记 = 启用      else:        disabled_file.touch()        # 创建标记 = 禁用  

❝ 🔍 说明:

  • 无需数据库、无需配置文件,一个空文件即可标记状态
  • Agent 加载技能时通过 get_enabled_skill_paths() 自动过滤禁用项
  • 禁用不删除文件,随时可以重新启用

5.3 SKILL.md 标准格式

每个技能通过 SKILL.md 文件自描述,采用 YAML Front Matter + Markdown 正文的标准格式:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
---  name: query-writing  description: >    SQL 查询编写技能,支持复杂 JOIN、子查询、窗口函数等高级 SQL 生成  ---  ## 技能说明  本技能用于辅助大模型生成高质量 SQL 查询...  ## 使用场景  - 多表关联查询  - 聚合分析  - ...  

SkillService 使用 yaml.safe_load 解析 Front Matter,支持 YAML 的折叠语法(>),对特殊字符也做了容错处理。


六、AI 使用教程:装完就会用

Pasted image 20260412184434
 这是技能中心最具创新性的功能。当用户点击"使用教程"按钮时,系统会:
  1. 读取技能的 SKILL.md 完整内容
  2. 注入到预设的 Prompt 模板中
  3. 调用 LLM 流式生成中文使用教程
  4. 通过 SSE 实时推送到前端渲染

6.1 后端:LLM 流式生成

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
TUTORIAL_PROMPT = """你是一个技能使用指南专家。请仔细阅读以下技能文档,然后以中文输出详细的使用教程。  ## 技能文档  {skill_content}  ## 输出要求  # {skill_name} 使用教程  ## 技能简介  ## 何时使用  ## 使用步骤  ## 场景示例(2-3个)  ## 注意事项  """  async def stream_fn(response):      llm = get_llm(temperature=0.7)    prompt = TUTORIAL_PROMPT.format(skill_name=name, skill_content=skill_content)      async for chunk in llm.astream(prompt):        content = chunk.content if hasattr(chunk, "content") else str(chunk)
if content:            data = json.dumps({"content": content})            await response.write(f"data: {data}\n\n")      await response.write(f"data: {json.dumps({'done': True})}\n\n")  return ResponseStream(stream_fn, content_type="text/event-stream")  

6.2 前端:SSE 流式渲染

前端通过 TransformStream 将 SSE 格式转换为 MarkdownPreview 组件可消费的流:

1
2
3
4
5
const transformStream = new TransformStream({    transform(chunk, controller) {    buffer += decoder.decode(chunk, { stream: true })    const lines = buffer.split('\n')    buffer = lines.pop() || ''    for (const line of lines) {      if (line.startsWith('data: ')) {        const data = JSON.parse(line.slice(6))        if (data.content) {          const formatted = JSON.stringify({            messageType: 'continue',            content: data.content          })          controller.enqueue(new TextEncoder().encode(formatted + '\n'))        }      }    }  }})  const reader = res.body?.pipeThrough(transformStream).getReader()  

❝ 🔍 说明:

  • 教程生成是实时流式的,用户不需要等待全部生成完毕就能开始阅读
  • 复用了聊天界面的 MarkdownPreview 组件,支持代码高亮、表格等富文本渲染
  • 教程内容包含场景示例提示词模板,让用户拿来即用

七、Slash 命令集成:聊天中直接调用技能

技能安装后,还能在聊天输入框中通过 / 斜杠命令快速调用:

1
2
3
// useSlashCommand.ts - 懒加载技能列表  async function ensureSkillsLoaded() {    if (skillsLoaded) return  const res = await fetch_skill_list('common')  const data = await res.json()  if (data?.code === 200 && Array.isArray(data?.data)) {    allSkills.value = data.data.filter((s: SkillInfo) => s.enabled)  }  skillsLoaded = true}  

用户在聊天框输入 / 时,自动弹出已启用的技能列表,选择后技能 Prompt 会被注入到 Agent 的上下文中。


八、完整的技能生命周期

发现技能            安装技能           管理技能           使用技能│                  │                 │                 │▼                  ▼                 ▼                 ▼GitHub 仓库 ──→ 预览并选择 ──→ 一键安装 ──→ 列表管理Zip 包上传 ──→ 自动解析   ──→ 依赖安装 ──→ 启用/禁用──→ 查看详情──→ AI 使用教程──→ 聊天框 / 调用──→ 批量卸载──→ 技能市场(规划中)──→ 安全检测(规划中)──→ 自动测评(规划中)──→ 版本管理(规划中)──→ 批量卸载


🎁 总结

Aix-DB 技能中心实现了一套完整的智能体技能生命周期管理方案,核心优势:

✅ 一键安装:输入 GitHub 地址即可预览并安装,告别手动拷贝 ✅ 依赖自治:自动检测 requirements.txt,为每个技能创建独立虚拟环境 ✅ 统一管理:双 Scope(智能问答/深度问数)分类管理,搜索、启用/禁用、批量卸载一站搞定 ✅ AI 教程:基于 LLM 流式生成使用教程,装完就会用 ✅ Slash 集成:聊天框 / 命令直接调用技能,零学习成本 ✅ 标准格式:SKILL.md + YAML Front Matter,技能自描述、可共享

❝ 🔜 下一步动作:

  • 技能市场:构建公共技能仓库,一键搜索社区共享的技能
  • 安全检测:安装前自动扫描技能代码,识别潜在安全风险
  • 自动测评:安装后自动运行技能测试用例,验证兼容性
  • 版本管理:支持技能版本追踪与一键升级

📚 完整代码

我的开源项目:https://github.com/apconw/Aix-DB

🌈 项目亮点

✅ 集成 MCP 多智能体架构 ✅ 支持 Dify / LangChain / LlamaIndex  / vLLM / Neo4j /Skill/Openclaw ✅ 前端采用 Vue3 + TypeScript + Vite5,现代化交互体验 ✅ 内置 ECharts / AntV 图表问答 + CSV 表格问答 ✅ 支持对接主流 RAG 系统 与 Text2SQL 引擎 ✅ 轻量级 Sanic 后端,适合快速部署与二次开发 ✅ 项目已被蚂蚁官方推荐收录

运行效果:

Pasted image 20260412184635

在群里,您将获得以下专属支持:

✅ 定期技术答疑会议:固定时间开展群内答疑,集中解决大家在部署、配置中遇到的共性问题 ✅ 典型问题远程演示:针对高频难点,我会通过屏幕共享等方式进行实操讲解,看得懂、学得会 ✅ 二次开发思路分享:在会议中开放讨论,提供实现路径、代码结构建议与关键点提醒 ✅ 项目更新与优化同步:第一时间在群内发布文章内容的迭代、Bug修复与新功能进展

📌 我们不搞"私聊轰炸",而是用更高效的方式——通过集中答疑 + 资料共享 + 社群互助,让每一位成员都能参与、收获、成长。

入群发你项目资料:

📌 关注公众号【大模型应用开发实战】 👉 获取更多 MCP、Text2SQL、RAG、Skill、文档解析/报告生成 实战教程!

   如果有Openclaw部署多智能体搭建具体场景落地也欢迎联系我

👉 更多阅读

🦞龙虾数字人孵化平台

Text-to-SQL进化·Skill模式:融合标准能力的智能SQL生成方案

三种方案构建Text2SQL表关系图谱

基本 文件 流程 错误 SQL 调试
  1. 请求信息 : 2026-04-13 15:26:17 HTTP/1.1 GET : https://www.yeyulingfeng.com/a/519240.html
  2. 运行时间 : 0.273220s [ 吞吐率:3.66req/s ] 内存消耗:4,831.93kb 文件加载:145
  3. 缓存信息 : 0 reads,0 writes
  4. 会话信息 : SESSION_ID=38f7e4857b10496a3229e03e3fed904d
  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.001047s ] mysql:host=127.0.0.1;port=3306;dbname=wenku;charset=utf8mb4
  2. SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.001927s ]
  3. SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.000714s ]
  4. SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.000693s ]
  5. SHOW FULL COLUMNS FROM `set` [ RunTime:0.001662s ]
  6. SELECT * FROM `set` [ RunTime:0.000536s ]
  7. SHOW FULL COLUMNS FROM `article` [ RunTime:0.001563s ]
  8. SELECT * FROM `article` WHERE `id` = 519240 LIMIT 1 [ RunTime:0.004514s ]
  9. UPDATE `article` SET `lasttime` = 1776065177 WHERE `id` = 519240 [ RunTime:0.021054s ]
  10. SELECT * FROM `fenlei` WHERE `id` = 64 LIMIT 1 [ RunTime:0.005783s ]
  11. SELECT * FROM `article` WHERE `id` < 519240 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.012153s ]
  12. SELECT * FROM `article` WHERE `id` > 519240 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.003275s ]
  13. SELECT * FROM `article` WHERE `id` < 519240 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.015154s ]
  14. SELECT * FROM `article` WHERE `id` < 519240 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.004644s ]
  15. SELECT * FROM `article` WHERE `id` < 519240 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.009087s ]
0.278820s