Skip to main content

Introduction

laravel/agent-detector est un utilitaire léger permettant de détecter si du code PHP s’exécute au sein d’un agent IA ou d’un environnement de développement automatisé. Il a été publié en avril 2026 en tant que package officiel Laravel. Alors que les agents IA se sont profondément infiltrés dans le quotidien du développement, il devient important de savoir dans quel environnement le code lui-même s’exécute. Sur le terrain, on rencontre des cas où il faut ajuster la verbosité des logs ou la limitation de débit selon qu’une requête vient d’un agent IA ou d’un humain, ou encore renvoyer des réponses spécifiques aux agents.

Installation

PHP 8.2 ou supérieur est requis.

Utilisation de base

L’appel de AgentDetector::detect() retourne un objet AgentResult.
Il existe également une écriture utilisant une fonction autonome.

Propriétés de AgentResult

Liste des agents pris en charge

L’ordre de priorité de détection est : variable d’environnement AI_AGENT → variables d’environnement connues → système de fichiers.

Configurer un agent personnalisé

En attribuant une valeur quelconque à la variable d’environnement AI_AGENT, il est possible de détecter un agent personnalisé.

Cas d’usage concrets

Détecter un agent IA dans un middleware

On détermine l’environnement d’exécution dans un middleware Laravel et on adapte le traitement en fonction de l’agent.

Produire des logs détaillés dans un environnement d’agent IA

Appliquer une limitation de débit aux requêtes des agents IA

En faisant varier la clé du middleware ThrottleRequests selon la détection d’agent, on peut appliquer des limites différentes aux agents et aux humains.

Adapter le comportement d’une commande console

Exemple d’affichage d’un rapport de progression détaillé lorsqu’une commande Artisan est exécutée par un agent.

Conclusion

laravel/agent-detector est un package qui regroupe une simple vérification de variables d’environnement et une inspection du système de fichiers. Aucune configuration complexe n’est nécessaire : il suffit d’appeler AgentDetector::detect(). Alors que les agents IA s’installent durablement dans le flux de développement, il devient de plus en plus important de savoir « qui (ou quoi) exécute le code ». Ce package se révélera utile dans de nombreux contextes : logs, limitation de débit, personnalisation des réponses, etc.

Dépôt laravel/agent-detector

Le code source et la liste à jour des agents pris en charge se trouvent ici.
Dernière modification le 13 juillet 2026