Skip to content
虚位以待
虚位以待
虚位以待
虚位以待
虚位以待
虚位以待
虚位以待
虚位以待
虚位以待
虚位以待
虚位以待
虚位以待
虚位以待
虚位以待
虚位以待
虚位以待
虚位以待
虚位以待

Laravel Boost

简介

Laravel Boost 通过提供必要的指南和 Agent 技能,加速 AI 辅助开发,帮助 AI Agent 编写符合 Laravel 最佳实践的高质量 Laravel 应用程序。

Boost 还提供了一个强大的 Laravel 生态系统文档 API,它结合了内置的 MCP 工具和一个包含超过 17,000 条 Laravel 特定信息的广泛知识库,所有这些都通过使用嵌入的语义搜索功能增强了精确的、上下文感知的结果。Boost 指导像 Claude Code 和 Cursor 这样的 AI Agent 使用此 API 来了解最新的 Laravel 功能和最佳实践。

安装

Laravel Boost 可以通过 Composer 安装:

shell
composer require laravel/boost --dev

接下来,安装 MCP 服务器和编码指南:

shell
php artisan boost:install

boost:install 命令将为你在安装过程中选择的编码 Agent 生成相关的 Agent 指南和技能文件。

一旦 Laravel Boost 安装完成,你就可以开始使用 Cursor、Claude Code 或你选择的 AI Agent 进行编码了。

NOTE

请随意将生成的 MCP 配置文件 (.mcp.json)、指南文件 (CLAUDE.mdAGENTS.mdjunie/ 等) 和 boost.json 配置文件添加到你的应用程序的 .gitignore 中,因为这些文件会在运行 boost:installboost:update 时自动重新生成。

设置你的 Agents

text
1. 打开命令面板 (`Cmd+Shift+P` 或 `Ctrl+Shift+P`)
2. 在 "/open MCP Settings" 上按 `enter`
3. 打开 `laravel-boost` 的开关
text
Claude Code 支持通常会自动启用。如果发现没有启用,在项目目录中打开一个 shell 并运行以下命令:

claude mcp add -s local -t stdio laravel-boost php artisan boost:mcp
text
Codex 支持通常会自动启用。如果发现没有启用,在项目目录中打开一个 shell 并运行以下命令:

codex mcp add laravel-boost -- php "artisan" "boost:mcp"
text
Gemini CLI 支持通常会自动启用。如果发现没有启用,在项目目录中打开一个 shell 并运行以下命令:

gemini mcp add -s project -t stdio laravel-boost php artisan boost:mcp
text
1. 打开命令面板 (`Cmd+Shift+P` 或 `Ctrl+Shift+P`)
2. 在 "MCP: List Servers" 上按 `enter`
3. 箭头移动到 `laravel-boost` 并按 `enter`
4. 选择 "Start server"
text
1. 按两次 `shift` 打开命令面板
2. 搜索 "MCP Settings" 并按 `enter`
3. 勾选 `laravel-boost` 旁边的复选框
4. 点击右下角的 "Apply"

保持 Boost 资源更新

你可能希望定期更新本地的 Boost 资源(AI 指南和技能),以确保它们反映你已安装的 Laravel 生态系统包的最新版本。为此,你可以使用 boost:update Artisan 命令。

shell
php artisan boost:update

你也可以通过将其添加到 Composer 的 "post-update-cmd" 脚本来自动化此过程:

json
{
  "scripts": {
    "post-update-cmd": [
      "@php artisan boost:update --ansi"
    ]
  }
}

MCP 服务器

Laravel Boost 提供了一个 MCP(模型上下文协议)服务器,它公开了一些工具供 AI Agent 与你的 Laravel 应用程序进行交互。这些工具使 Agent 能够检查你的应用程序结构、查询数据库、执行代码等。

可用的 MCP 工具

名称说明
应用程序信息读取 PHP 和 Laravel 版本、数据库引擎、生态包列表及其版本,以及 Eloquent 模型
浏览器日志从浏览器读取日志和错误
数据库连接检查可用的数据库连接,包括默认连接
数据库查询对数据库执行查询
数据库模式读取数据库模式
获取绝对 URL将相对路径 URI 转换为绝对路径,以便 Agent 生成有效的 URL
最后错误从应用程序的日志文件中读取最后一个错误
读取日志条目读取最后的 N 条日志条目
搜索文档查询 Laravel 托管的文档 API 服务,根据已安装的包检索文档

手动注册 MCP 服务器

有时你可能需要手动将 Laravel Boost MCP 服务器注册到你选择的编辑器中。你应该使用以下详细信息注册 MCP 服务器:

命令php
参数artisan boost:mcp

JSON 示例:

json
{
    "mcpServers": {
        "laravel-boost": {
            "command": "php",
            "args": ["artisan", "boost:mcp"]
        }
    }
}

AI 指南

AI 指南是可组合的指令文件,预先加载以为 AI Agent 提供关于 Laravel 生态包的基本上下文。这些指南包含核心约定、最佳实践和框架特定模式,帮助 Agent 生成一致、高质量的代码。

可用的 AI 指南

Laravel Boost 包含以下包和框架的 AI 指南。core 指南为给定的包提供通用的、概括性的建议,适用于所有版本。

支持的版本
核心与 Boostcore
Laravel 框架core, 10.x, 11.x, 12.x
Livewirecore, 2.x, 3.x, 4.x
Flux UIcore, free, pro
Foliocore
Herdcore
Inertia Laravelcore, 1.x, 2.x, 3.x
Inertia Reactcore, 1.x, 2.x, 3.x
Inertia Vuecore, 1.x, 2.x, 3.x
Inertia Sveltecore, 1.x, 2.x, 3.x
MCPcore
Pennantcore
Pestcore, 3.x, 4.x
PHPUnitcore
Pintcore
Sailcore
Tailwind CSScore, 3.x, 4.x
Livewire Voltcore
Wayfindercore
Enforce Testsconditional

NOTE

要使你的 AI 指南保持最新,请参阅保持 Boost 资源更新部分。

添加自定义 AI 指南

要使用你自己的自定义 AI 指南增强 Laravel Boost,请将 .blade.php.md 文件添加到你的应用程序的 .ai/guidelines/* 目录中。当你运行 boost:install 时,这些文件将自动与 Laravel Boost 的指南一起包含在内。

覆盖 Boost AI 指南

你可以通过创建自己的具有匹配文件路径的自定义指南来覆盖 Boost 的内置 AI 指南。当你创建的自定义指南与现有的 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 能为你的用户生成正确的代码。以下是一个示例:

php
## 包名称

该包提供 [功能的简要描述]

### 功能

- 功能1:[清晰简短的描述]
- 功能2:[清晰简短的描述]。示例用法:

@verbatim
<code-snippet name="如何使用功能2" lang="php">
$result = PackageName::featureTwo($param1, $param2);
</code-snippet>
@endverbatim

Agent 技能

Agent 技能 是轻量级、有针对性的知识模块,Agent 在处理特定领域时可以按需激活。与预先加载的指南不同,技能允许仅在相关时加载详细的模式和最佳实践,从而减少上下文膨胀并提高 AI 生成代码的相关性。

当你运行 boost:install 并选择技能作为一项功能时,技能将根据在你的 composer.json 中检测到的包自动安装。例如,如果你的项目包含 livewire/livewirelivewire-development 技能将自动安装。

可用技能

技能
fluxui-developmentFlux UI
folio-routingFolio
inertia-react-developmentInertia React
inertia-svelte-developmentInertia Svelte
inertia-vue-developmentInertia Vue
livewire-developmentLivewire
mcp-developmentMCP
pennant-developmentPennant
pest-testingPest
tailwindcss-developmentTailwind CSS
volt-developmentVolt
wayfinder-developmentWayfinder

NOTE

要使你的技能保持最新,请参阅保持 Boost 资源更新部分。

自定义技能

要创建你自己的自定义技能,请将 SKILL.md 文件添加到你的应用程序的 .ai/skills/{skill-name}/ 目录中。当你运行 boost:update 时,你的自定义技能将与 Boost 的内置技能一起安装。

例如,为你的应用程序的领域逻辑创建一个自定义技能:

.ai/skills/creating-invoices/SKILL.md

覆盖技能

你可以通过创建自己的具有匹配名称的自定义技能来覆盖 Boost 的内置技能。当你创建的自定义技能与现有的 Boost 技能名称匹配时,Boost 将使用你的自定义版本而不是内置版本。

例如,要覆盖 Boost 的 livewire-development 技能,请在 .ai/skills/livewire-development/SKILL.md 创建一个文件。当你运行 boost:update 时,Boost 将包含你的自定义技能而不是默认技能。

第三方包技能

如果你维护一个第三方包,并希望 Boost 为其包含技能,你可以通过将 resources/boost/skills/{skill-name}/SKILL.md 文件添加到你的包中来实现。当你包的用户运行 php artisan boost:install 时,Boost 将根据用户偏好自动安装你的技能。

Boost 技能支持 Agent 技能格式,并且应结构化为一个文件夹,其中包含一个带有 YAML 前置元数据和 Markdown 指令的 SKILL.md 文件。SKILL.md 文件必须包含必需的前置元数据(namedescription),并且可以可选地包含脚本、模板和参考资料。

技能应概述任何必需的文件结构或约定,并解释如何创建或使用其主要功能(附有示例命令或代码片段)。保持简洁、可操作,并专注于最佳实践,以便 AI 能为你的用户生成正确的代码:

markdown
---
name: package-name-development
description: 构建和处理 PackageName 功能,包括组件和工作流程。
---

# 包名开发

## 何时使用此技能
在处理 PackageName 功能时使用此技能...

## 功能

- 功能1:[清晰简短的描述]。
- 功能2:[清晰简短的描述]。示例用法:

$result = PackageName::featureTwo($param1, $param2);

指南 vs. 技能

Laravel Boost 提供了两种不同的方式向 AI Agent 提供有关你的应用程序的上下文:指南技能

指南 在 AI Agent 启动时预先加载,提供关于广泛适用于你的代码库的 Laravel 约定和最佳实践的基本上下文。

技能 在处理特定任务时按需激活,包含特定领域(如 Livewire 组件或 Pest 测试)的详细模式。仅在相关时加载技能可以减少上下文膨胀并提高代码质量。

方面指南技能
加载方式预先加载,始终存在按需加载,相关时激活
范围广泛,基础性专注,特定于任务
目的核心约定和最佳实践详细的实现模式

文档 API

Laravel Boost 包含一个文档 API,为 AI Agent 提供了访问包含超过 17,000 条 Laravel 特定信息的广泛知识库的途径。该 API 使用带有嵌入的语义搜索来提供精确的、上下文感知的结果。

Search Docs MCP 工具允许 Agent 查询 Laravel 托管的文档 API 服务,以根据你已安装的包检索文档。Boost 的 AI 指南和技能将自动指导你的编码 Agent 使用此 API。

支持的版本
Laravel 框架10.x, 11.x, 12.x
Filament2.x, 3.x, 4.x, 5.x
Flux UI2.x Free, 2.x Pro
Inertia1.x, 2.x
Livewire1.x, 2.x, 3.x, 4.x
Nova4.x, 5.x
Pest3.x, 4.x
Tailwind CSS3.x, 4.x

扩展 Boost

Boost 开箱即用,支持许多流行的 IDE 和 AI Agent。如果你的编码工具尚不支持,你可以创建自己的 Agent 并将其与 Boost 集成。

添加对其他 IDE / AI Agents 的支持

要为新的 IDE 或 AI Agent 添加支持,请创建一个扩展 Laravel\Boost\Install\Agents\Agent 的类,并根据需要实现以下一个或多个契约:

  • Laravel\Boost\Contracts\SupportsGuidelines - 添加对 AI 指南的支持。
  • Laravel\Boost\Contracts\SupportsMcp - 添加对 MCP 的支持。
  • Laravel\Boost\Contracts\SupportsSkills - 添加对 Agent 技能的支持。

编写 Agent

php
<?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

注册 Agent

在你的应用程序的 App\Providers\AppServiceProviderboot 方法中注册你的自定义 Agent:

php
use Laravel\Boost\Boost;

public function boot(): void
{
    Boost::registerAgent('customagent', CustomAgent::class);
}

注册后,你的 Agent 将在运行 php artisan boost:install 时可供选择。