Agenti personalizzati
Definendo agenti personalizzati puoi creare configurazioni di sotto-agenti con ruoli distinti in base all’uso. Nella versione Laravel li configuri tramitecustomAgents di SessionConfig.
Per l’orchestrazione che esegue più sotto-agenti in parallelo, consulta Fleet Mode.
Uso di base
Opzioni di configurazione
| Proprietà | Tipo | Obbligatorio | Descrizione |
|---|---|---|---|
name | string | ✅ | Identificatore dell’agente |
displayName | string | Nome visualizzato | |
description | string | Descrizione usata dal runtime per scegliere a chi delegare | |
tools | ?array | Strumenti utilizzabili. Se null / omesso, tutti disponibili | |
prompt | string | ✅ | System prompt dedicato all’agente |
mcpServers | array | Configurazione MCP server dedicata a questo agente | |
infer | bool | Se includere nella selezione automatica (default: true) | |
skills | array | Lista di skill da caricare all’avvio |
Più description è specifica, più migliora la precisione della selezione automatica.
Selezionare un agente specifico all’avvio della sessione
Specificandoagent puoi abilitare fin dal primo turn uno specifico agente personalizzato.
Disabilitare la selezione automatica (infer: false)
Per gli agenti che eseguono operazioni ad alto rischio, è più sicuro disabilitare la selezione automatica e usarli in modo esplicito.
Nascondere strumenti all’agente predefinito
CondefaultAgent.excludedTools puoi nascondere strumenti specifici solo all’agente principale.
Diventa più facile delegare all’agente personalizzato che può usare quello strumento.
Monitorare eventi dei sotto-agenti
Durante l’esecuzione dei sotto-agenti fluiscono eventisubagent.*.
Puoi monitorarli con onEvent o $session->on().
Best practice
- Separa
researcher(principalmente lettura) ededitor(responsabile delle modifiche) - Riduci
toolsal minimo necessario e restringi i permessi - Scrivi
descriptionin modo concreto per migliorare la precisione della delega automatica - Cattura
subagent.failede predisponi strategie di retry o fallback