Laravel Boost
- Введение
- Установка
- Настройка агентов
- Поддержание ресурсов Boost в актуальном состоянии
- MCP-сервер
- Доступные MCP-инструменты
- Ручная регистрация MCP-сервера
- AI-рекомендации
- Доступные AI-рекомендации
- Добавление собственных AI-рекомендаций
- Переопределение AI-рекомендаций Boost
- AI-рекомендации сторонних пакетов
- Agent Skills
- Доступные skills
- Собственные skills
- Переопределение skills
- Skills сторонних пакетов
- Guidelines и Skills
- API документации
- Расширение Boost
- Добавление поддержки других IDE / AI-агентов
Введение
Laravel Boost ускоряет разработку с помощью AI, предоставляя необходимые рекомендации и agent skills, которые помогают AI-агентам писать качественные Laravel-приложения, соответствующие лучшим практикам Laravel.
Boost также предоставляет мощный API документации экосистемы Laravel, объединяющий встроенный MCP-инструмент и обширную базу знаний с более чем 17 000 фрагментов информации о Laravel, улучшенную семантическим поиском через embeddings для точных результатов с учетом контекста. Boost инструктирует AI-агентов вроде Claude Code и Cursor использовать этот API, чтобы узнавать об актуальных возможностях Laravel и лучших практиках.
Установка
Laravel Boost можно установить через Composer:
composer require laravel/boost --dev
Затем установите MCP-сервер и рекомендации по написанию кода:
php artisan boost:install
Команда boost:install сгенерирует соответствующие файлы рекомендаций и skills для coding agents, выбранных вами во время установки.
После установки Laravel Boost можно начинать работу с Cursor, Claude Code или любым другим AI-агентом.
Сгенерированный файл MCP-конфигурации (
.mcp.json), файлы рекомендаций (CLAUDE.md,AGENTS.md,junie/и т. д.) и файл конфигурацииboost.jsonможно добавить в.gitignore, так как они автоматически пересоздаются при запускеboost:installиboost:update.
Настройка агентов
1. Откройте палитру команд (`Cmd+Shift+P` или `Ctrl+Shift+P`)
2. Нажмите `enter` на "/open MCP Settings"
3. Включите переключатель для `laravel-boost`
Поддержка Claude Code обычно включается автоматически. Если этого не произошло, откройте shell в каталоге проекта и выполните:
claude mcp add -s local -t stdio laravel-boost php artisan boost:mcp
Поддержка Codex обычно включается автоматически. Если этого не произошло, откройте shell в каталоге проекта и выполните:
codex mcp add laravel-boost -- php "artisan" "boost:mcp"
Поддержка Gemini CLI обычно включается автоматически. Если этого не произошло, откройте shell в каталоге проекта и выполните:
gemini mcp add -s project -t stdio laravel-boost php artisan boost:mcp
1. Откройте палитру команд (`Cmd+Shift+P` или `Ctrl+Shift+P`)
2. Нажмите `enter` на "MCP: List Servers"
3. Выберите `laravel-boost` и нажмите `enter`
4. Выберите "Start server"
1. Дважды нажмите `shift`, чтобы открыть палитру команд
2. Найдите "MCP Settings" и нажмите `enter`
3. Отметьте флажок рядом с `laravel-boost`
4. Нажмите "Apply" в правом нижнем углу
Поддержание ресурсов Boost в актуальном состоянии
Вы можете периодически обновлять локальные ресурсы Boost (AI-рекомендации и skills), чтобы они соответствовали актуальным версиям пакетов экосистемы Laravel, установленных в проекте. Для этого используйте Artisan-команду boost:update.
php artisan boost:update
Также можно автоматизировать процесс, добавив его в Composer scripts post-update-cmd:
{
"scripts": {
"post-update-cmd": [
"@php artisan boost:update --ansi"
]
}
}
По умолчанию команда boost:update обновляет только те ресурсы Boost, которые уже опубликованы в вашем приложении. Если вы хотите, чтобы Boost просканировал приложение на наличие недавно установленных пакетов и предложил опубликовать соответствующие guidelines и skills, используйте опцию --discover:
php artisan boost:update --discover
MCP-сервер
Laravel Boost предоставляет MCP-сервер (Model Context Protocol), который открывает инструменты для взаимодействия AI-агентов с вашим Laravel-приложением. Эти инструменты позволяют агентам изучать структуру приложения, выполнять запросы к базе данных, запускать код и многое другое.
Доступные MCP-инструменты
| Название | Примечания |
|---|---|
| Application Info | Читает версии PHP и Laravel, движок базы данных, список пакетов экосистемы с версиями и Eloquent-модели |
| Browser Logs | Читает логи и ошибки браузера |
| Database Connections | Инспектирует доступные соединения базы данных, включая соединение по умолчанию |
| Database Query | Выполняет запрос к базе данных |
| Database Schema | Читает схему базы данных |
| Get Absolute URL | Преобразует относительные URI в абсолютные, чтобы агенты генерировали корректные URL |
| Last Error | Читает последнюю ошибку из логов приложения |
| Read Log Entries | Читает последние N записей лога |
| Search Docs | Выполняет запрос к размещенному Laravel API документации, учитывая установленные пакеты |
Ручная регистрация MCP-сервера
Иногда MCP-сервер Laravel Boost нужно зарегистрировать в выбранном редакторе вручную. Используйте следующие параметры:
| Command | php |
| Args | artisan boost:mcp |
Пример JSON:
{
"mcpServers": {
"laravel-boost": {
"command": "php",
"args": ["artisan", "boost:mcp"]
}
}
}
AI-рекомендации
AI-рекомендации – это составные instruction-файлы, загружаемые заранее, чтобы дать AI-агентам важный контекст о пакетах экосистемы Laravel. Они содержат основные соглашения, лучшие практики и framework-specific паттерны, помогающие агентам генерировать согласованный и качественный код.
Доступные AI-рекомендации
Laravel Boost включает AI-рекомендации для следующих пакетов и фреймворков. Рекомендации core дают общие советы по пакету, применимые ко всем версиям.
| Пакет | Поддерживаемые версии |
|---|---|
| Core & Boost | core |
| Laravel Framework | core, 10.x, 11.x, 12.x, 13.x |
| Livewire | core, 2.x, 3.x, 4.x |
| Flux UI | core, free, pro |
| Folio | core |
| Herd | core |
| Inertia Laravel | core, 1.x, 2.x, 3.x |
| Inertia React | core, 1.x, 2.x, 3.x |
| Inertia Vue | core, 1.x, 2.x, 3.x |
| Inertia Svelte | core, 1.x, 2.x, 3.x |
| MCP | core |
| Pennant | core |
| Pest | core, 3.x, 4.x |
| PHPUnit | core |
| Pint | core |
| Sail | core |
| Tailwind CSS | core, 3.x, 4.x |
| Livewire Volt | core |
| Wayfinder | core |
| Enforce Tests | conditional |
Note: Чтобы поддерживать AI-рекомендации в актуальном состоянии, смотрите раздел Поддержание ресурсов Boost в актуальном состоянии.
Добавление собственных AI-рекомендаций
Чтобы расширить Laravel Boost своими AI-рекомендациями, добавьте файлы .blade.php или .md в каталог .ai/guidelines/* вашего приложения. Эти файлы будут автоматически включены в рекомендации Laravel Boost при запуске boost:install.
Переопределение AI-рекомендаций Boost
Вы можете переопределить встроенные AI-рекомендации Boost, создав собственные рекомендации с совпадающими путями. Если пользовательская рекомендация совпадает с существующим путем рекомендации Boost, Boost использует вашу версию вместо встроенной.
Например, чтобы переопределить рекомендации Boost “Inertia React v2 Form Guidance”, создайте файл .ai/guidelines/inertia-react/2/forms.blade.php. При запуске boost:install Boost включит вашу рекомендацию вместо стандартной.
AI-рекомендации сторонних пакетов
Если вы сопровождаете сторонний пакет и хотите, чтобы Boost включал для него AI-рекомендации, добавьте файл resources/boost/guidelines/core.blade.php в пакет. Когда пользователи пакета выполнят php artisan boost:install, Boost автоматически загрузит ваши рекомендации.
AI-рекомендации должны кратко описывать назначение пакета, указывать нужную структуру файлов или соглашения и объяснять, как создавать или использовать основные возможности (с примерами команд или кода). Делайте их лаконичными, практичными и сфокусированными на лучших практиках, чтобы AI мог генерировать корректный код:
## Package Name
This package provides [brief description of functionality].
### Features
- Feature 1: [clear & short description].
- Feature 2: [clear & short description]. Example usage:
@verbatim
<code-snippet name="How to use Feature 2" lang="php">
$result = PackageName::featureTwo($param1, $param2);
</code-snippet>
@endverbatim
Agent Skills
Agent Skills – это легкие, целевые модули знаний, которые агенты могут активировать по требованию при работе с конкретными областями. В отличие от guidelines, которые загружаются заранее, skills позволяют загружать подробные паттерны и лучшие практики только когда они релевантны, уменьшая раздувание контекста и улучшая качество AI-генерируемого кода.
Когда вы запускаете boost:install и выбираете skills как возможность, skills автоматически устанавливаются на основе пакетов, найденных в composer.json. Например, если проект включает livewire/livewire, skill livewire-development будет установлен автоматически.
Доступные skills
| Skill | Пакет |
|---|---|
| fluxui-development | Flux UI |
| folio-routing | Folio |
| inertia-react-development | Inertia React |
| inertia-svelte-development | Inertia Svelte |
| inertia-vue-development | Inertia Vue |
| livewire-development | Livewire |
| mcp-development | MCP |
| pennant-development | Pennant |
| pest-testing | Pest |
| tailwindcss-development | Tailwind CSS |
| volt-development | Volt |
| wayfinder-development | Wayfinder |
Note: Чтобы поддерживать skills в актуальном состоянии, смотрите раздел Поддержание ресурсов Boost в актуальном состоянии.
Собственные skills
Чтобы создать собственный skill, добавьте файл SKILL.md в каталог .ai/skills/{skill-name}/ вашего приложения. При запуске boost:update ваш skill будет установлен вместе со встроенными skills Boost.
Например, чтобы создать skill для доменной логики приложения:
.ai/skills/creating-invoices/SKILL.md
Переопределение skills
Вы можете переопределить встроенные skills Boost, создав собственные skills с совпадающими именами. Если пользовательский skill совпадает с именем встроенного skill Boost, Boost использует вашу версию вместо стандартной.
Например, чтобы переопределить skill livewire-development, создайте файл .ai/skills/livewire-development/SKILL.md. При запуске boost:update Boost включит ваш skill вместо стандартного.
Skills сторонних пакетов
Если вы сопровождаете сторонний пакет и хотите, чтобы Boost включал skills для него, добавьте файл resources/boost/skills/{skill-name}/SKILL.md в пакет. Когда пользователи пакета выполнят php artisan boost:install, Boost автоматически установит ваши skills в соответствии с пользовательскими настройками.
Boost Skills поддерживают формат Agent Skills и должны быть структурированы как папка с файлом SKILL.md, содержащим YAML frontmatter и Markdown-инструкции. Файл SKILL.md должен включать обязательные поля frontmatter (name и description) и может дополнительно содержать scripts, templates и справочные материалы.
Skills должны описывать нужную структуру файлов или соглашения и объяснять, как создавать или использовать основные возможности (с примерами команд или кода). Делайте их лаконичными, практичными и сфокусированными на лучших практиках, чтобы AI мог генерировать корректный код:
---
name: package-name-development
description: Build and work with PackageName features, including components and workflows.
---
# Package Name Development
## When to use this skill
Use this skill when working with PackageName features...
## Features
- Feature 1: [clear & short description].
- Feature 2: [clear & short description]. Example usage:
$result = PackageName::featureTwo($param1, $param2);
Guidelines и Skills
Laravel Boost предоставляет два разных способа дать AI-агентам контекст о приложении: guidelines и skills.
Guidelines загружаются заранее при старте AI-агента и дают основной контекст о соглашениях Laravel и лучших практиках, широко применимых по всей кодовой базе.
Skills активируются по требованию при работе над конкретными задачами и содержат подробные паттерны для отдельных областей, например компонентов Livewire или тестов Pest. Загрузка skills только при необходимости уменьшает раздувание контекста и повышает качество кода.
| Аспект | Guidelines | Skills |
|---|---|---|
| Загрузка | Заранее, всегда присутствуют | По требованию, когда релевантны |
| Область | Широкая, фундаментальная | Узкая, task-specific |
| Цель | Основные соглашения и практики | Подробные паттерны реализации |
API документации
Laravel Boost включает Documentation API, который дает AI-агентам доступ к обширной базе знаний, содержащей более 17 000 фрагментов информации о Laravel. API использует семантический поиск через embeddings, чтобы выдавать точные результаты с учетом контекста.
MCP-инструмент Search Docs позволяет агентам запрашивать размещенный Laravel сервис API документации и получать документацию на основе установленных пакетов. AI-рекомендации и skills Boost автоматически инструктируют coding agent использовать этот API.
| Пакет | Поддерживаемые версии |
|---|---|
| Laravel Framework | 10.x, 11.x, 12.x, 13.x |
| Filament | 2.x, 3.x, 4.x, 5.x |
| Flux UI | 2.x Free, 2.x Pro |
| Inertia | 1.x, 2.x |
| Livewire | 1.x, 2.x, 3.x, 4.x |
| Nova | 4.x, 5.x |
| Pest | 3.x, 4.x |
| Tailwind CSS | 3.x, 4.x |
Расширение Boost
Boost из коробки работает со многими популярными IDE и AI-агентами. Если ваш coding tool пока не поддерживается, можно создать собственного агента и интегрировать его с Boost.
Добавление поддержки других IDE / AI-агентов
Чтобы добавить поддержку новой IDE или AI-агента, создайте класс, расширяющий Laravel\Boost\Install\Agents\Agent, и реализуйте один или несколько следующих контрактов в зависимости от потребностей:
Laravel\Boost\Contracts\SupportsGuidelines– добавляет поддержку AI-рекомендаций.Laravel\Boost\Contracts\SupportsMcp– добавляет поддержку MCP.Laravel\Boost\Contracts\SupportsSkills– добавляет поддержку Agent Skills.
Написание агента
<?php
declare(strict_types=1);
namespace App;
use Laravel\Boost\Contracts\SupportsGuidelines;
use Laravel\Boost\Contracts\SupportsMcp;
use Laravel\Boost\Contracts\SupportsSkills;
use Laravel\Boost\Install\Agents\Agent;
class CustomAgent extends Agent implements SupportsGuidelines, SupportsMcp, SupportsSkills
{
// Ваша реализация...
}
Пример реализации смотрите в ClaudeCode.php.
Регистрация агента
Зарегистрируйте собственного агента в методе boot класса App\Providers\AppServiceProvider вашего приложения:
use Laravel\Boost\Boost;
public function boot(): void
{
Boost::registerAgent('customagent', CustomAgent::class);
}
После регистрации агент будет доступен для выбора при запуске php artisan boost:install.