Skip to main content
Este artículo se basa en los README y el código fuente de los repositorios de GitHub. Los tres paquetes se encuentran en versión Beta previa al lanzamiento oficial (a fecha de abril de 2026).
surveyor, ranger y roster están todos en release Beta. La API puede cambiar antes del lanzamiento de v1.0.0. Evalúa con cautela su uso en producción.

Estado de la última release (abril de 2026)

Descripción general

Entrado 2026, Laravel ha publicado tres paquetes relacionados con el análisis de código. Se pueden usar de forma independiente, pero forman un ecosistema de análisis de código que se integra entre sí. Veamos los detalles de cada paquete uno a uno.

laravel/surveyor — Motor de análisis estático

laravel/surveyor es una herramienta de análisis estático que parsea archivos PHP y ofrece en formato estructurado meta-información detallada de clases, métodos, propiedades y tipos de retorno. Está especializada en extraer información en un formato utilizable por otras herramientas y paquetes.

Instalación

Uso básico

Analizar un archivo

Analizar una clase directamente

Información obtenible con ClassResult

Sistema de tipos

Surveyor cuenta con un sistema de tipos completo que permite tratar los tipos de PHP de forma estructurada.

Configuración de caché

Puedes cachear los resultados del análisis para mejorar el rendimiento de ejecuciones repetidas.
También se puede configurar mediante variables de entorno.

Análisis de modelos Eloquent

Surveyor intenta conectarse a la base de datos y analiza los modelos Eloquent de forma especial. Detecta relaciones, atributos, accesores y casts de los modelos.
Como Surveyor intenta conectarse a la base de datos al analizar modelos Eloquent, no es un análisis puramente estático. Además, el rendimiento y el uso de memoria están actualmente en proceso de mejora, y se agradecen las contribuciones.

laravel/ranger — Introspección de alto nivel

laravel/ranger es una biblioteca de alto nivel que envuelve surveyor y recorre toda la aplicación Laravel para recopilar información sobre rutas, modelos, Enums, eventos de broadcast, variables de entorno, componentes Inertia y más.

Instalación

Uso básico

En formato de callback, describes el procesamiento cuando se descubre cada componente.

Componentes que recoge Ranger


laravel/roster — Herramienta de detección de paquetes

laravel/roster es una herramienta que detecta qué paquetes del ecosistema Laravel están instalados en un proyecto. Los desarrolladores de paquetes y autores de herramientas pueden obtener fácilmente información como “¿este proyecto usa Inertia?” o “¿qué versión de Livewire?”.

Instalación

Uso básico


Casos de uso reales

Herramienta de generación de directrices para IA (Boost)

Laravel Boost usa roster para entender la configuración de paquetes instalados y ajustar automáticamente la generación de directrices y skills para agentes de IA (GitHub Copilot, Claude, etc.). Basándose en información como “¿este proyecto usa Inertia?” o “¿está instalado Livewire?”, selecciona los archivos de directrices adecuados y los proporciona al agente de IA.

Crear un verificador de compatibilidad de paquetes

Cuando desarrollas un paquete que cambia su comportamiento según los paquetes instalados en el proyecto del usuario, roster resulta muy útil.

Generación automática de documentación de la aplicación

Con ranger puedes construir una herramienta que recolecta automáticamente las rutas, modelos y Enums de una app Laravel y genera documentación.

Conclusión

surveyor, ranger y roster proporcionan una nueva base para el análisis de código programático en el ecosistema Laravel. Estos paquetes están dirigidos principalmente a desarrolladores de paquetes y autores de herramientas, no son algo que use directamente el usuario final. Sin embargo, se aprovechan activamente en el interior de herramientas oficiales de Laravel como Laravel Boost, y se espera que su uso siga ampliándose en el ecosistema.

laravel/surveyor

Motor de análisis estático de código PHP

laravel/ranger

Biblioteca de introspección de alto nivel

laravel/roster

Herramienta de detección de paquetes
Última modificación el 13 de julio de 2026