简介
laravel/agent-detector 是一个轻量级工具包,用于检测 PHP 代码是否运行在 AI 智能体或自动化开发环境中。它于 2026 年 4 月作为 Laravel 官方包正式发布。 随着 AI 智能体深度融入开发现场,了解代码本身运行在什么环境中变得越来越重要。根据请求来自 AI 智能体还是人类,来切换日志详细度、调整限流策略、或返回专门为智能体准备的响应,这些实际开发中的需求正在不断出现。安装
基本用法
调用AgentDetector::detect() 会返回一个 AgentResult 对象。
AgentResult 的属性
支持的智能体一览
检测的优先级依次为:
AI_AGENT 环境变量 → 已知环境变量 → 文件系统。
配置自定义智能体
将任意值设置到AI_AGENT 环境变量,即可作为自定义智能体被检测到。
实用案例
在中间件中检测 AI 智能体
在 Laravel 中间件中判断运行环境,并对智能体进行分支处理。在 AI 智能体环境下输出详细日志
对来自 AI 智能体的请求应用限流
通过根据智能体检测结果切换ThrottleRequests 中间件的键,可以为智能体和人类设置不同的限流规则。
在控制台命令中切换行为
以下示例展示当智能体执行 Artisan 命令时,输出更详细的进度信息。总结
laravel/agent-detector 是一个把简单的环境变量检查和文件系统探测整合到一起的包。不需要复杂配置,只要调用 AgentDetector::detect() 就能使用。
在 AI 智能体正在成为开发流程一部分的当下,了解”代码是被谁(什么)驱动运行的”会越来越重要。日志、限流、响应的定制化等各种场景中,你都可以用到这个包。
laravel/agent-detector 仓库
源代码和最新支持的智能体列表请查看这里。