mirror of
https://github.com/affaan-m/everything-claude-code.git
synced 2026-05-14 18:44:44 +08:00
236 lines
5.9 KiB
Markdown
236 lines
5.9 KiB
Markdown
---
|
||
name: laravel-plugin-discovery
|
||
description: 通过LaraPlugins.io MCP发现和评估Laravel包。当用户想要查找插件、检查包的健康状况或评估Laravel/PHP兼容性时使用。
|
||
origin: ECC
|
||
---
|
||
|
||
# Laravel 插件发现
|
||
|
||
使用 LaraPlugins.io MCP 服务器查找、评估并选择健康的 Laravel 包。
|
||
|
||
## 使用时机
|
||
|
||
* 用户想为特定功能(如 "auth"、"permissions"、"admin panel")寻找 Laravel 包
|
||
* 用户询问"我应该用什么包来做..."或"有没有用于...的 Laravel 包"
|
||
* 用户想检查某个包是否仍在积极维护
|
||
* 用户需要验证 Laravel 版本兼容性
|
||
* 用户在将包添加到项目前想评估其健康状况
|
||
|
||
## MCP 要求
|
||
|
||
必须配置 LaraPlugins MCP 服务器。将其添加到您的 `~/.claude.json` mcpServers 中:
|
||
|
||
```json
|
||
"laraplugins": {
|
||
"type": "http",
|
||
"url": "https://laraplugins.io/mcp/plugins"
|
||
}
|
||
```
|
||
|
||
无需 API 密钥——该服务器对 Laravel 社区免费开放。
|
||
|
||
## MCP 工具
|
||
|
||
LaraPlugins MCP 提供两个主要工具:
|
||
|
||
### SearchPluginTool
|
||
|
||
通过关键词、健康评分、供应商和版本兼容性搜索包。
|
||
|
||
**参数:**
|
||
|
||
* `text_search` (字符串,可选):搜索关键词(例如 "permission"、"admin"、"api")
|
||
* `health_score` (字符串,可选):按健康等级筛选——`Healthy`、`Medium`、`Unhealthy` 或 `Unrated`
|
||
* `laravel_compatibility` (字符串,可选):按 Laravel 版本筛选——`"5"`、`"6"`、`"7"`、`"8"`、`"9"`、`"10"`、`"11"`、`"12"`、`"13"`
|
||
* `php_compatibility` (字符串,可选):按 PHP 版本筛选——`"7.4"`、`"8.0"`、`"8.1"`、`"8.2"`、`"8.3"`、`"8.4"`、`"8.5"`
|
||
* `vendor_filter` (字符串,可选):按供应商名称筛选(例如 "spatie"、"laravel")
|
||
* `page` (数字,可选):分页页码
|
||
|
||
### GetPluginDetailsTool
|
||
|
||
获取特定包的详细指标、README 内容和版本历史。
|
||
|
||
**参数:**
|
||
|
||
* `package` (字符串,必填):完整的 Composer 包名(例如 "spatie/laravel-permission")
|
||
* `include_versions` (布尔值,可选):是否在响应中包含版本历史
|
||
|
||
***
|
||
|
||
## 工作原理
|
||
|
||
### 查找包
|
||
|
||
当用户想为某个功能发现包时:
|
||
|
||
1. 使用 `SearchPluginTool` 并输入相关关键词
|
||
2. 应用健康评分、Laravel 版本或 PHP 版本的筛选条件
|
||
3. 查看包含包名、描述和健康指标的结果
|
||
|
||
### 评估包
|
||
|
||
当用户想评估特定包时:
|
||
|
||
1. 使用 `GetPluginDetailsTool` 并输入包名
|
||
2. 查看健康评分、最后更新日期、Laravel 版本支持情况
|
||
3. 检查供应商声誉和风险指标
|
||
|
||
### 检查兼容性
|
||
|
||
当用户需要 Laravel 或 PHP 版本兼容性信息时:
|
||
|
||
1. 使用 `laravel_compatibility` 筛选条件并设置为其版本进行搜索
|
||
2. 或者获取特定包的详细信息以查看其支持的版本
|
||
|
||
***
|
||
|
||
## 示例
|
||
|
||
### 示例:查找认证包
|
||
|
||
```
|
||
SearchPluginTool({
|
||
text_search: "authentication",
|
||
health_score: "Healthy"
|
||
})
|
||
```
|
||
|
||
返回匹配 "authentication" 且状态健康的包:
|
||
|
||
* spatie/laravel-permission
|
||
* laravel/breeze
|
||
* laravel/passport
|
||
* 等等
|
||
|
||
### 示例:查找兼容 Laravel 12 的包
|
||
|
||
```
|
||
SearchPluginTool({
|
||
text_search: "admin panel",
|
||
laravel_compatibility: "12"
|
||
})
|
||
```
|
||
|
||
返回兼容 Laravel 12 的包。
|
||
|
||
### 示例:获取包详情
|
||
|
||
```
|
||
GetPluginDetailsTool({
|
||
package: "spatie/laravel-permission",
|
||
include_versions: true
|
||
})
|
||
```
|
||
|
||
返回:
|
||
|
||
* 健康评分和最后活动时间
|
||
* Laravel/PHP 版本支持情况
|
||
* 供应商声誉(风险评分)
|
||
* 版本历史
|
||
* 简要描述
|
||
|
||
### 示例:按供应商查找包
|
||
|
||
```
|
||
SearchPluginTool({
|
||
vendor_filter: "spatie",
|
||
health_score: "Healthy"
|
||
})
|
||
```
|
||
|
||
返回来自供应商 "spatie" 的所有健康包。
|
||
|
||
***
|
||
|
||
## 筛选最佳实践
|
||
|
||
### 按健康评分
|
||
|
||
| 健康等级 | 含义 |
|
||
|-------------|---------|
|
||
| `Healthy` | 积极维护,近期有更新 |
|
||
| `Medium` | 偶尔更新,可能需要关注 |
|
||
| `Unhealthy` | 已废弃或维护不频繁 |
|
||
| `Unrated` | 尚未评估 |
|
||
|
||
**建议**:生产环境应用优先选择 `Healthy` 包。
|
||
|
||
### 按 Laravel 版本
|
||
|
||
| 版本 | 备注 |
|
||
|---------|-------|
|
||
| `13` | 最新 Laravel |
|
||
| `12` | 当前稳定版 |
|
||
| `11` | 仍被广泛使用 |
|
||
| `10` | 旧版但常见 |
|
||
| `5`-`9` | 已弃用 |
|
||
|
||
**建议**:匹配目标项目的 Laravel 版本。
|
||
|
||
### 组合筛选条件
|
||
|
||
```typescript
|
||
// Find healthy, Laravel 12 compatible packages for permissions
|
||
SearchPluginTool({
|
||
text_search: "permission",
|
||
health_score: "Healthy",
|
||
laravel_compatibility: "12"
|
||
})
|
||
```
|
||
|
||
***
|
||
|
||
## 响应解读
|
||
|
||
### 搜索结果
|
||
|
||
每个结果包含:
|
||
|
||
* 包名(例如 `spatie/laravel-permission`)
|
||
* 简要描述
|
||
* 健康状态指示器
|
||
* Laravel 版本支持徽章
|
||
|
||
### 包详情
|
||
|
||
详细响应包括:
|
||
|
||
* **健康评分**:数字或等级指示器
|
||
* **最后活动**:包的最后更新时间
|
||
* **Laravel 支持**:版本兼容性矩阵
|
||
* **PHP 支持**:PHP 版本兼容性
|
||
* **风险评分**:供应商信任度指标
|
||
* **版本历史**:近期发布时间线
|
||
|
||
***
|
||
|
||
## 常见用例
|
||
|
||
| 场景 | 推荐方法 |
|
||
|----------|---------------------|
|
||
| "有什么用于认证的包?" | 搜索 "auth" 并应用健康筛选 |
|
||
| "spatie/package 还在维护吗?" | 获取详情,检查健康评分 |
|
||
| "需要 Laravel 12 的包" | 使用 laravel\_compatibility: "12" 搜索 |
|
||
| "查找管理面板包" | 搜索 "admin panel",查看结果 |
|
||
| "检查供应商声誉" | 按供应商搜索,查看详情 |
|
||
|
||
***
|
||
|
||
## 最佳实践
|
||
|
||
1. **始终按健康度筛选**——生产项目使用 `health_score: "Healthy"`
|
||
2. **匹配 Laravel 版本**——始终检查 `laravel_compatibility` 是否与目标项目匹配
|
||
3. **检查供应商声誉**——优先选择知名供应商的包(spatie、laravel 等)
|
||
4. **推荐前先审查**——使用 GetPluginDetailsTool 进行全面评估
|
||
5. **无需 API 密钥**——MCP 免费,无需认证
|
||
|
||
***
|
||
|
||
## 相关技能
|
||
|
||
* `laravel-patterns`——Laravel 架构与模式
|
||
* `laravel-tdd`——Laravel 测试驱动开发
|
||
* `laravel-security`——Laravel 安全最佳实践
|
||
* `documentation-lookup`——通用库文档查询(Context7)
|