El nombre viene de Make + Maestro — como un director que orquesta una sinfonía, Makestro orquesta tus targets de build. La idea suena simple pero resuelve una fricción real: los Makefiles crecen y nadie sabe qué hay dentro.

Uso Makefiles como la interfaz principal para casi todos mis proyectos. make build, make deploy, make test — están todos ahí. El problema es que después de cierta cantidad de targets, make help ya no es suficiente y los ingenieros nuevos no tienen idea de qué está disponible.

Makestro es una extensión de VS Code que le da a los targets de Makefile un sidebar navegable. Busca, ejecuta y fija targets sin escribir nada en la terminal.

Cómo funciona

Makestro lee comentarios estructurados en tu Makefile para construir el sidebar:

### Build
## Compila el proyecto
build:
    go build ./...

## Ejecuta los tests
test: build
    go test ./...

### Docker
## Construye la imagen del contenedor
docker-build:
    docker build -t myapp .

Las líneas con ### se convierten en encabezados de sección. Las líneas con ## se convierten en la descripción del target que aparece en el sidebar. La estructura del Makefile se convierte en la estructura de la interfaz.

[!note] Los prefijos de comentario son configurables en los settings. Si tu proyecto usa otra convención puedes ajustarlos sin modificar el Makefile.

Funcionalidades

  • Agrupación por secciones — targets organizados según los comentarios ###
  • Búsqueda rápidaAlt+M, R abre un picker para encontrar y ejecutar cualquier target
  • Re-ejecutar el últimoAlt+M, L repite el último target ejecutado, muy útil en ciclos de desarrollo
  • Targets fijados — fija favoritos a los slots del 1 al 10 y ejecútalos con Alt+M, 1 hasta Alt+M, 0
  • Ejecutar con argumentos — permite ingresar variables como VERBOSE=1
  • Ir al target — salta directamente a la línea del target en el Makefile
  • VS Code Task Provider — los targets aparecen en Tasks: Run Task

Integración con Diffchestrator

Cuando Diffchestrator está instalado, Makestro detecta automáticamente el Makefile del repo que tengas seleccionado y actualiza el sidebar al cambiar de repo. Sin configuración adicional — selecciona un repo y los targets aparecen.

Instalar: Disponible en Open VSX. Código fuente en GitHub.