乐于分享
好东西不私藏

CodeGraph:给 AI 编程助手装一张本地代码地图

CodeGraph:给 AI 编程助手装一张本地代码地图

最近看 GitHub 的时候,刷到一个很适合 AI 编程重度用户研究的项目:CodeGraph

项目地址:https://github.com/colbymchenry/codegraph

它的定位很直接:

给 Claude Code、Codex、Cursor、Gemini、OpenCode、Hermes Agent 这类 AI 编程工具,提供一份提前建好的本地代码知识图谱。

换成人话就是:

以前 AI 想理解一个项目,经常要先 ls 一遍,再 grep 一遍,再打开几个文件读一遍。

CodeGraph 做的事情,是提前把代码里的函数、类、调用关系、导入关系、路由关系这些东西解析出来,存到本地 SQLite 里。等 AI 要理解项目的时候,不用满仓库翻文件,直接查这张“代码地图”。

这个思路我觉得挺重要。

因为现在 AI 编程的问题,已经不只是“模型会不会写代码”了。

很多时候,它真正卡住的地方是:它不知道该看哪里。

AI 写代码,最贵的不是写,而是找

如果你经常用 Claude Code、Codex 这类工具,应该会见过这种场景。

你问它:

“这个登录流程是怎么走到数据库的?”

然后它开始忙活:

  • 先列目录
  • 再搜关键词
  • 再读几个文件
  • 发现不对,再换关键词
  • 找到 controller
  • 找到 service
  • 找到 repository
  • 中间还可能读到测试文件、生成代码、旧实现

最后它确实能答出来,但前面那一大段动作,本质上都在做一件事:

摸路。

这也是 AI 编程很容易烧 token 的地方。

不是模型笨,而是大多数代码仓库对它来说,默认就是一堆散落的文本文件。它要自己从文件名、关键词、import、调用关系里一点点拼出结构。

人类开发者为什么快?

因为我们脑子里有项目地图。

我们知道用户请求先进哪层,知道业务逻辑大概在哪个目录,知道某个接口后面八成会走哪个 service。

AI 没有这张地图,就只能边走边问路。

CodeGraph 想补的,就是这块。

CodeGraph 到底做了什么

CodeGraph 的底层逻辑不复杂,但很实用。

它会用 tree-sitter 解析代码,把项目里的结构抽出来:

  • 函数
  • 方法
  • 调用关系
  • import / export
  • 继承和接口实现
  • Web 路由和 handler 的绑定关系
  • 一些跨语言、跨框架的动态调用线索

然后把这些信息存进 .codegraph/codegraph.db

这个数据库是本地 SQLite,不需要云服务,也不需要上传代码。

当 Claude Code、Codex 这些工具通过 MCP 调用 CodeGraph 时,就可以直接问:

  • 搜一下这个符号在哪
  • 这个函数被谁调用
  • 这个函数又调用了谁
  • 改这个类会影响哪些地方
  • 从 A 到 B 的调用路径怎么走
  • 给我一份跟这个任务相关的代码上下文

这比让 AI 自己在仓库里盲搜要直接得多。

我比较喜欢它的一个点是:它不是给 AI 塞一大段“全文检索结果”,而是把代码当成关系网络来处理。

代码本来就不是线性的。

一个函数有没有意义,不只看它自己的内容,还要看谁调它、它调谁、它属于哪个类、它挂在哪个路由下面。

这才是理解项目时真正有用的信息。

为什么这东西适合现在的 AI 编程

这两年 AI 编程工具进化很快,但大部分工具还是绕不开一个现实问题:

模型上下文再大,也不等于它真的理解你的仓库。

上下文窗口大,只是能塞更多东西。

但塞什么、怎么塞、什么时候塞,仍然是问题。

你把 20 个文件全丢给它,它当然能看,但很浪费。更麻烦的是,它可能被无关代码带偏。

CodeGraph 的思路更像是先做一层索引。

你可以把它理解成 AI 编程里的“项目脑图”,只不过这张脑图不是手画的,而是从代码里自动抽出来的。

官方 README 里给了一组 benchmark:在 7 个真实开源项目上测试,包括 VS Code、Django、Tokio、Excalidraw 这些不同语言、不同规模的仓库。

他们的结论是,接入 CodeGraph 后,平均:

  • 成本低约 25%
  • token 少约 57%
  • 时间快约 23%
  • 工具调用少约 62%

这个数据我不会把它当成绝对真理。

因为 benchmark 永远跟问题类型、模型版本、仓库结构、提示词有关。官方也提到,这组数据是用 Claude Opus 4.8 重新验证的,而且取的是每组 4 次运行的中位数。

但方向是合理的。

如果一个工具能减少“到处找文件”的动作,那它确实会省 token、省时间,也会让回答更稳定。

尤其是中大型项目,优势会更明显。

小项目可能没那么强。

一个几十个文件的小工具,模型直接 grep 几下就够了。给它建图,收益不一定高。

但一旦项目到了几百、几千、上万个文件,差别就出来了。

它支持哪些工具

CodeGraph 当前支持的 AI 编程入口不少:

  • Claude Code
  • Codex CLI
  • Cursor
  • OpenCode
  • Hermes Agent
  • Gemini CLI
  • Antigravity
  • Kiro

安装也比较省事。

如果你不想管 Node 环境,官方提供了一行安装命令:

# macOS / Linux
curl -fsSL https://raw.githubusercontent.com/colbymchenry/codegraph/main/install.sh | sh

Windows 用 PowerShell:

irm https://raw.githubusercontent.com/colbymchenry/codegraph/main/install.ps1 | iex

如果你本来就有 Node,也可以直接:

npx @colbymchenry/codegraph

或者全局安装:

npm i -g @colbymchenry/codegraph

安装器会引导你选择要接入哪些 agent,然后写入对应的 MCP 配置。

项目里第一次使用时,在代码仓库根目录执行:

codegraph init -i

这一步会生成 .codegraph/ 目录,并建立初始索引。

后面 AI 工具启动 MCP server 时,CodeGraph 会用文件监听保持索引更新。默认有 2 秒左右的 debounce,避免你保存文件时频繁重建。

我觉得最值得看的几个功能

第一个是 context

你给它一个任务,比如“修一下登录失败的问题”,它会尝试返回相关入口、符号和代码片段。

这比让 AI 自己先猜关键词更稳。

第二个是 callers / callees

这两个能力很适合查业务代码。

比如你想改一个函数,不确定影响面,就先看谁在调用它。或者你想理解一个入口函数,就顺着它往下看调用了哪些逻辑。

人类读代码也经常这样读。

第三个是 impact analysis

这类能力对重构很有用。

以前让 AI 改代码,最怕它只改了当前文件,看不到上下游。CodeGraph 能把“改这里会影响哪里”这件事显式拿出来,至少能降低漏改的概率。

第四个是 framework-aware routes

这点我挺喜欢。

它不只是识别普通函数调用,还会识别很多 Web 框架的路由绑定。

比如 Django、Flask、FastAPI、Express、NestJS、Laravel、Rails、Spring、Gin、Axum、ASP.NET、SvelteKit、React Router 等。

对做业务系统的人来说,路由到 handler 这条线非常关键。

你问“这个接口怎么走”,真正想看的不是某个函数名,而是从 URL 入口到业务逻辑的路径。

第五个是 跨语言链路

它最近几个版本在 iOS、React Native、Expo 这类混合项目上做了不少增强,比如 Swift 和 Objective-C 的桥接、React Native NativeModules、TurboModules、Fabric 组件、native 到 JS 的事件通道。

这类项目用纯 grep 很难看清楚。

因为调用关系经常不是明面上的 foo() 调 bar(),而是通过框架、注册、宏、注解、代码生成串起来。

CodeGraph 不一定能 100% 还原所有动态行为,但至少它在尝试把这些“暗线”显式化。

它最近更新挺猛

我查了一下,npm 当前最新版本是 0.9.7,GitHub 最新 release 也是 v0.9.7,发布时间是 2026 年 5 月 28 日。

截至我写这篇文章时,GitHub 上大约是 33,959 Star2,066 Fork,MIT 协议。

最近几个版本更新密度很高,说明项目还在快速迭代。

几个比较值得注意的变化:

  • v0.9.0 开始提供自带运行时的安装方式,不再强依赖你本机已有 Node
  • v0.9.2 移除了单独配置文件,改成更接近零配置,主要按 .gitignore 判断要不要索引
  • v0.9.4 强化了大量 Web 框架路由和动态调用路径
  • v0.9.5 做了共享 daemon,多个 AI agent 在同一个项目里不会各自启动一套完整服务
  • v0.9.6 增加了 Gemini / Antigravity / Kiro 支持,并加强 Spring、MyBatis、Go、C#、TS 等解析
  • v0.9.7 优化了 trace、explore、生成文件排序、小项目查询等细节

还有一个未发布变更也挺有意思:

codegraph init 以后会默认直接建立索引,不需要再额外加 -i

这说明作者也在把使用门槛往下压。

工具如果要进入日常工作流,少一步就是少一个流失点。

但它也不是银弹

这里要说清楚。

CodeGraph 解决的是“代码结构理解”和“上下文检索”的问题。

它不能保证 AI 写出来的代码一定正确。

也不能替代测试。

更不能把一个混乱项目自动变清晰。

如果项目本身命名乱、边界乱、框架乱用,CodeGraph 能帮 AI 少走一点弯路,但不会凭空创造架构。

另外,所有静态分析工具都会遇到边界。

动态语言、运行时注册、反射、配置驱动、依赖注入、代码生成、宏、框架魔法,这些都会让调用关系变得不那么确定。

CodeGraph 在一些场景里会用启发式方式补边,但启发式就意味着:有用,也要保持判断。

我更愿意把它当成“高质量地图”,不是“自动驾驶”。

地图能告诉你哪里有路,但你还是要看红绿灯。

谁最适合用

我觉得 CodeGraph 适合三类人。

第一类是 AI 编程重度用户

如果你每天都在 Claude Code、Codex、Cursor 里跑任务,而且经常处理不是自己刚写的小项目,那它很值得试。

因为你最常浪费的时间,很可能就是让 AI 重复理解项目结构。

第二类是 维护中大型代码仓库的人

几百个文件以上,尤其是多语言、多框架、历史包袱比较重的项目,CodeGraph 的价值会更明显。

你问架构问题、查调用链、做影响分析,它能把“找线索”这一步压短。

第三类是 想搭 AI 编程基础设施的人

现在很多人研究 MCP、skills、prompt、agent workflow,但上下文层其实同样关键。

没有好的代码上下文,agent 再聪明也容易乱跑。

CodeGraph 提供了一个很好的样本:本地索引、MCP 暴露、文件监听、SQLite 存储、tree-sitter 解析、多工具接入。

如果你想做团队级 AI 编程工具,这个项目值得拆开看。

我会怎么用它

如果是我自己用,我不会一上来就在所有项目里装。

我会先挑一个中等规模的真实项目,最好是那种我自己也有点忘了结构的项目。

然后问 AI 几类问题:

  1. 某个接口从路由到数据库怎么走
  2. 某个函数被哪些地方调用
  3. 改某个 service 会影响哪些测试
  4. 让它解释一个核心模块的架构
  5. 让它做一个小重构,看它会不会少读文件、少绕路

如果这些问题明显更快、更稳,再放进日常工作流。

AI 编程工具不要只看 demo。

真正的体验差异,往往出现在你连续用一周之后。

有些工具第一眼很炫,第二天就忘了。

有些工具看起来只是“多了个索引”,但用久了会发现,它省掉的是每天反复发生的小摩擦。

CodeGraph 属于后者。

它没有发明一个新的 AI 编程入口,也没有重新定义 IDE。

它做的是更底层的一件事:

让 AI 少摸路,多干活。

这件事听起来不性感,但非常实在。

参考资料

  • GitHub 项目:https://github.com/colbymchenry/codegraph
  • 官方文档:https://colbymchenry.github.io/codegraph/
  • npm 包:https://www.npmjs.com/package/@colbymchenry/codegraph
  • Changelog:https://github.com/colbymchenry/codegraph/blob/main/CHANGELOG.md
基本 文件 流程 错误 SQL 调试
  1. 请求信息 : 2026-05-31 08:08:22 HTTP/1.1 GET : https://www.yeyulingfeng.com/a/688454.html
  2. 运行时间 : 0.102432s [ 吞吐率:9.76req/s ] 内存消耗:4,627.80kb 文件加载:145
  3. 缓存信息 : 0 reads,0 writes
  4. 会话信息 : SESSION_ID=4d77887fc6e6aa064033331bdccd9416
  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.000597s ] mysql:host=127.0.0.1;port=3306;dbname=wenku;charset=utf8mb4
  2. SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.000770s ]
  3. SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.000303s ]
  4. SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.000286s ]
  5. SHOW FULL COLUMNS FROM `set` [ RunTime:0.000508s ]
  6. SELECT * FROM `set` [ RunTime:0.000199s ]
  7. SHOW FULL COLUMNS FROM `article` [ RunTime:0.000675s ]
  8. SELECT * FROM `article` WHERE `id` = 688454 LIMIT 1 [ RunTime:0.000500s ]
  9. UPDATE `article` SET `lasttime` = 1780186102 WHERE `id` = 688454 [ RunTime:0.000761s ]
  10. SELECT * FROM `fenlei` WHERE `id` = 64 LIMIT 1 [ RunTime:0.000220s ]
  11. SELECT * FROM `article` WHERE `id` < 688454 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.000412s ]
  12. SELECT * FROM `article` WHERE `id` > 688454 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.000364s ]
  13. SELECT * FROM `article` WHERE `id` < 688454 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.000658s ]
  14. SELECT * FROM `article` WHERE `id` < 688454 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.000757s ]
  15. SELECT * FROM `article` WHERE `id` < 688454 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.000663s ]
0.104092s