Skip to content
Laravel 技术公众号,欢迎关注

AI 辅助开发

简介

Laravel 具有独特的优势,使其成为 AI 辅助和代理开发的最佳框架。Claude CodeOpenCodeCursorGitHub Copilot 等 AI 编码代理的兴起已经改变了开发者编写代码的方式。这些工具可以生成完整的功能、调试复杂问题并以前所未有的速度重构代码——但它们的有效性在很大程度上取决于它们对代码库的理解程度。

为什么选择 Laravel 进行 AI 开发?

Laravel 的约定性规范和定义良好的结构使其成为 AI 辅助开发的理想框架。当您要求 AI 代理添加控制器时,它确切地知道应该放在哪里。当您需要新的迁移时,命名约定和文件位置是可预测的。这种一致性消除了在更灵活的框架中经常困扰 AI 工具的猜测工作。

除了文件组织之外,Laravel 富有表现力的语法和全面的文档为 AI 代理提供了生成准确、地道代码所需的上下文。Eloquent 关系、表单请求和中间件等功能遵循代理可以可靠理解和复制的模式。结果是 AI 生成的代码看起来像是由经验丰富的 Laravel 开发者编写的,而不是从通用 PHP 片段拼凑而成的。

Laravel Boost

Laravel Boost 弥合了 AI 编码代理和 Laravel 应用程序之间的差距。Boost 是一个 MCP(模型上下文协议)服务器,配备了超过 15 种专业工具,为 AI 代理提供对应用程序结构、数据库、路由等的深入洞察。当您安装 Boost 时,您的 AI 代理从通用代码助手转变为理解您特定应用程序的 Laravel 专家。

Boost 提供三大核心能力:一套用于检查和与应用程序交互的 MCP 工具、专门为 Laravel 生态系统精心制作的可组合 AI 指导原则,以及包含超过 17,000 条 Laravel 特定知识的强大文档 API。

安装

Boost 可以安装在运行 PHP 8.1 或更高版本的 Laravel 10、11 和 12 应用程序中。要开始使用,请将 Boost 作为开发依赖项安装:

shell
composer require laravel/boost --dev

安装完成后,运行交互式安装程序:

shell
php artisan boost:install

安装程序将自动检测您的 IDE 和 AI 代理,允许您选择对项目有意义的集成。Boost 将生成必要的配置文件,如用于 MCP 兼容编辑器的 .mcp.json 和用于 AI 上下文的指导原则文件。

NOTE

生成的配置文件如 .mcp.jsonCLAUDE.mdboost.json 可以安全地添加到 .gitignore 中,如果您希望每个开发者配置自己的环境。

可用工具

Boost 通过模型上下文协议向 AI 代理公开了一套全面的工具。这些工具允许代理深入理解和与您的 Laravel 应用程序交互:

  • 应用程序自省 - 查询您的 PHP 和 Laravel 版本、列出已安装的包,以及检查应用程序的配置和环境变量。
  • 数据库工具 - 检查数据库架构、执行只读查询,并在不离开对话的情况下理解数据结构。
  • 路由检查 - 列出所有已注册的路由及其中间件、控制器和参数。
  • Artisan 命令 - 发现可用的 Artisan 命令及其参数,使代理能够为您的任务建议和执行正确的命令。
  • 日志分析 - 读取和分析应用程序的日志文件以帮助调试问题。
  • 浏览器日志 - 在使用 Laravel 前端工具开发时访问浏览器控制台日志和错误。
  • Tinker 集成 - 通过 Laravel Tinker 在应用程序上下文中执行 PHP 代码,允许代理测试假设和验证行为。
  • 文档搜索 - 搜索 Laravel 生态系统文档,结果针对您已安装的包版本量身定制。

AI 指导原则

Boost 包含一套专门为 Laravel 生态系统精心制作的全面 AI 指导原则。这些指导原则教导 AI 代理如何编写地道的 Laravel 代码、遵循框架约定并避免常见陷阱。指导原则是可组合的且版本感知的,这意味着代理会收到适合您确切包版本的指令。

指导原则适用于 Laravel 本身以及 Laravel 生态系统中超过 16 个包,包括:

  • Livewire(2.x、3.x 和 4.x)
  • Inertia.js(React 和 Vue 变体)
  • Tailwind CSS(3.x 和 4.x)
  • Filament(3.x 和 4.x)
  • PHPUnit
  • Pest PHP
  • Laravel Pint
  • 以及更多

当您运行 boost:install 时,Boost 会自动检测您的应用程序使用了哪些包,并将相关的指导原则组装到项目的 AI 上下文文件中。

代理技能

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

技能适用于 Livewire、Inertia、Tailwind CSS、Pest 等流行的 Laravel 包。当您运行 boost:install 并选择技能作为功能时,技能会根据 composer.json 中检测到的包自动安装。

文档搜索

Boost 包含一个强大的文档 API,为 AI 代理提供访问超过 17,000 条 Laravel 生态系统文档的能力。与通用的网络搜索不同,这些文档经过索引、向量化,并根据您确切的包版本进行过滤。

当代理需要了解某个功能的工作原理时,它可以搜索 Boost 的文档 API 并接收准确的、版本特定的信息。这消除了 AI 代理建议已弃用方法或旧框架版本语法的常见问题。

代理集成

Boost 与支持模型上下文协议的流行 IDE 和 AI 工具集成。有关 Cursor、Claude Code、Codex、Gemini CLI、GitHub Copilot 和 Junie 的详细设置说明,请参阅 Boost 文档的设置您的代理部分。