Perché serve un agente personalizzato
Laravel Boost supporta di default i principali strumenti di AI coding come Claude Code, Cursor, Codex, GitHub Copilot (VS Code). Per adattarsi a strumenti interni, agenti AI emergenti o flussi di lavoro proprietari, però, devi implementare un agente personalizzato tramite l’estensione di Boost. Casi in cui un agente custom è utile:- Stai usando un IDE o uno strumento AI non supportato da Boost
- Vuoi integrare Boost in un flusso di sviluppo interno o in una pipeline CI/CD proprietaria
- L’agente richiede un formato di file di configurazione o una procedura di installazione specifica
Architettura di estensione di Boost
Classe base Agent
Tutti gli agenti estendonoLaravel\Boost\Install\Agents\Agent. Questa classe astratta fornisce:
- Rilevamento dell’agente (a livello di sistema e di progetto)
- Installazione di server MCP (file-based e shell-command-based)
- Hook di trasformazione delle linee guida (
transformGuidelines)
I tre contract
Per abilitare selettivamente le funzionalità di Boost, implementi i contract che servono.Tutti e tre i contract sono opzionali. Puoi implementare solo le linee guida senza MCP, ad esempio.
Contract SupportsGuidelines
guidelinesPath() restituisce il path del file in cui scrivere le linee guida generate. Per Claude Code è CLAUDE.md, per Cursor .cursor/rules/laravel-boost.mdc, adattandosi al formato che l’agente carica.
transformGuidelines() è un hook per elaborare il Markdown dopo la generazione. Puoi aggiungere un header specifico dell’agente o convertirlo in un formato speciale. Il default nella classe base restituisce la stringa così com’è.
Contract SupportsMcp
Agent ha già implementazioni di default per installMcp() e installHttpMcp(): nella maggior parte dei casi basta fare override di mcpInstallationStrategy() e mcpConfigPath().
Ci sono due strategie di installazione.
Contract SupportsSkills
.claude/skills, per Cursor .cursor/skills, e così via.
Creare un agente personalizzato
Implementiamo concretamente una classe di agente custom. Come esempio, un ipotetico “MyAgent” integrato in un flusso CI/CD proprietario.1
Creare la classe dell'agente
Crea
app/Boost/MyAgent.php.systemDetectionConfig() e projectDetectionConfig() servono a Boost per rilevare automaticamente l’agente a livello di sistema e di progetto. All’esecuzione di boost:install l’agente compare fra i candidati.2
Registrare l'agente
Nel metodo Dopo la registrazione, con
boot di App\Providers\AppServiceProvider registri l’agente custom.php artisan boost:install MyAgent compare tra le scelte.3
Verifica del funzionamento
MYAGENT.md, .myagent.json e .myagent/skills/.Personalizzare le linee guida
Impostare guidelinesPath
Ogni agente carica il file delle linee guida da un punto diverso.Agenti che richiedono frontmatter
Per formati che richiedono un frontmatter (come i.cursor/rules/*.mdc di Cursor) restituisci true da frontmatter().
Post-elaborazione delle linee guida
ContransformGuidelines() puoi elaborare il Markdown dopo la generazione.
Aggiungere linee guida AI personalizzate
Per aggiungere regole specifiche del progetto alle linee guida di Boost, metti file Blade nella directory.ai/guidelines/.
boost:install queste linee guida vengono unite automaticamente a quelle integrate in Boost.
Override delle linee guida integrate
Se metti un file personalizzato nello stesso path di una linea guida integrata di Boost, la tua ha la priorità.Aggiungere skills personalizzati
Creare SKILL.md
Definisci le skill in.ai/skills/{nome-skill}/SKILL.md.
SKILL.md è composto da un frontmatter YAML e da istruzioni Markdown.
Generare il PDF della fattura
Genera il PDF conbarryvdh/laravel-dompdf:
Override delle skill integrate
Creando una skill custom con lo stesso nome di una skill integrata di Boost, la sovrascrivi.Aggiungere il supporto Boost a pacchetti di terze parti
Per aggiungere il supporto Boost al tuo pacchetto, metti i file di configurazione nella directoryresources/boost/ del pacchetto.
Aggiungere linee guida
Aggiungere skill
php artisan boost:install, queste linee guida e skill vengono rilevate automaticamente e proposte per l’installazione.
Esempio pratico: agente custom per pipeline CI/CD
Esempio completo di “PipelineAgent”, un agente virtuale integrato in una pipeline CI/CD interna. L’agente supporta solo le linee guida, non MCP e non skill.AppServiceProvider:
Link di riferimento
ClaudeCode.php — esempio ufficiale
Codice sorgente completo dell’agente ClaudeCode incluso in Boost.
Agent Skills
Specifica del formato SKILL.md e best practice.
Laravel Boost Custom Agent for GitHub Copilot CLI
Esempio di pacchetto pubblicato che supporta sia Copilot CLI sia Testbench.
Laravel Boost Custom Agent for PhpStorm with GitHub Copilot
Esempio di pacchetto pubblicato per il plugin GitHub Copilot di PhpStorm.