Agents personnalisés
Définir des agents personnalisés permet de mettre en place des configurations de sous-agents aux rôles distincts. Dans la version Laravel, cela se configure viacustomAgents dans SessionConfig.
Pour orchestrer plusieurs sous-agents en parallèle, voir Fleet Mode.
Utilisation de base
Paramètres
| Propriété | Type | Requis | Description |
|---|---|---|---|
name | string | ✅ | Identifiant de l’agent |
displayName | string | Nom d’affichage | |
description | string | Description utilisée par le runtime pour choisir vers qui déléguer | |
tools | ?array | Outils utilisables. Si null ou omis, tout est disponible | |
prompt | string | ✅ | Prompt système propre à l’agent |
mcpServers | array | Configuration de serveurs MCP propres à cet agent | |
infer | bool | L’agent est-il candidat à la sélection automatique (par défaut : true) | |
skills | array | Liste des skills à charger au démarrage |
Plus la description est précise, plus la sélection automatique est fiable.
Choisir un agent spécifique au démarrage de la session
En spécifiantagent, vous activez dès le premier tour un agent personnalisé donné.
Désactiver la sélection automatique (infer: false)
Pour les agents effectuant des opérations à risque, il est plus sûr de désactiver la sélection automatique et de les invoquer explicitement.
Masquer des outils à l’agent par défaut
defaultAgent.excludedTools permet de masquer certains outils uniquement à l’agent principal.
Cela facilite la délégation vers un agent personnalisé disposant de ces outils.
Observer les événements des sous-agents
Pendant l’exécution d’un sous-agent, des événementssubagent.* sont émis.
Vous pouvez les observer via onEvent ou $session->on().
Bonnes pratiques
- Séparez un
researcher(principalement en lecture) d’uneditor(chargé des modifications) - Restreignez
toolsau strict nécessaire pour limiter les permissions - Rédigez une
descriptionprécise pour améliorer la délégation automatique - Interceptez
subagent.failedpour prévoir un retry ou un fallback