Før denne uka måtte Laravel-utviklere som ville delegere mellom agenter håndrulle ruteren selv: en if/else over intent, et eget HTTP-kall, og kontekst-styring på utsiden av SDK-en. Nå returnerer du bare en hel agent fra et annet agents tools()-metode, og delegeringen blir en innebygd primitiv. Eric L. Barnes (Laravel News) skrev opp endringen 13. mai.
public function tools(): iterable
{
return [
new RefundsAgent,
];
}
Forskjellen er ikke bare ergonomisk. Hver sub-agent kan ha egen systemprompt, eget verktøysett, egen leverandør og egen modell. Du pinner RefundsAgent til Anthropic med #[Provider(Lab::Anthropic)] mens forelderen kjører på OpenAI, og du kan sette egne temperature, max steps og timeout per agent. Finere kontroll får du ved å implementere CanActAsTool på sub-agenten for å eksponere navn og beskrivelse til forelderen. Uten det faller Laravel tilbake til klassenavnet og en generisk beskrivelse.
«Hver sub-agent kjører isolert: den får ikke samtalehistorikken fra forelderen, så forelderen må sende en klar, selvstendig oppgavebeskrivelse.» — Eric L. Barnes, Laravel News
Det er fangsten. Isolasjonen gir deterministisk kontekst per delegering, men hvis sub-agenten trenger ledet samtale-state, må forelderen serialisere det inn i prompten. For refund- eller billing-domener er det ofte greit; for fri samtale-assistanse blir det smertefullt fort.
Hva bør du gjøre?
- Oppgrader AI SDK-en og bytt din nåværende intent-router til en sub-agent-graf hvis du har 2+ spesialiserte agenter.
- Test multi-provider på en kostbar agent. RefundsAgent på Claude for presisjon og hovedagenten på GPT for latens er et naturlig oppsett som Laravel nå gjør trivielt.
- Skriv oppgave-templater for sub-agent-kall siden de ikke arver kontekst. Behandle dem som tools-API-er, ikke som chat-sesjoner.