mac-runner
App nativa de macOS (Swift/SwiftUI) para gestionar múltiples runners auto-alojados de GitHub Actions en un solo equipo, con CLI y barra de menú.
Ficha actualizada 26 sept 2026, 5:12 · upstream 26 sept 2026, 5:05 · release v1.19.0
Qué es mac-runner
Descripción editorial construida a partir del repositorio, su documentación y sus señales de mantenimiento.
Mac Runner es una aplicación nativa de macOS escrita en Swift 6 con SwiftUI que permite gestionar runners auto-alojados de GitHub Actions. A diferencia del runner oficial que soporta una sola instancia por máquina, esta herramienta permite ejecutar múltiples repositorios en paralelo sin saturar innecesariamente los recursos del sistema.
La aplicación integra automáticamente la CLI gh para autenticación, eliminando la necesidad de manejar tokens PAT manualmente. Ofrece tres modos de aislamiento: ninguno (por defecto), usuario dedicado (macOS 15+) y contenedorizado (macOS 26+ con Apple Silicon). Incluye funcionalidades de limpieza automática de workspaces parados y cachés de dependencias comunes como npm, SwiftPM, Go, Cargo, Gradle y Xcode.
El sistema soporta un patrón de CI/CD con fallback automático a runners en la nube cuando el Mac no está disponible. La interfaz es ligera, accesible desde la barra de menú, y permite gestionar el estado de los runners sin abrir ventanas completas.
- Ejecutar múltiples repositorios en paralelo en un solo Mac para acelerar pipelines CI/CD
- Alternar automáticamente entre runners auto-alojados gratuitos y runners en la nube según disponibilidad
- Aislar entornos de CI mediante usuarios dedicados o contenedores para proteger credenciales locales
- Gestionar runners desde una barra de menú ligera sin necesidad de abrir ventanas completas
- Limpiar automáticamente cachés de dependencias y workspaces parados cuando el disco está bajo presión
- Integración nativa con gh CLI para autenticación segura sin exponer tokens PAT manualmente
- Soporte oficial para tres modos de aislamiento según versión de macOS y arquitectura del hardware
- Limpieza automática de workspaces parados y cachés de dependencias comunes (npm, SwiftPM, Go, etc.)
- Interfaz ligera en barra de menú que muestra estado de runners en tiempo real
- Capacidad de ejecutar runners headless por defecto para no interferir con el entorno de desarrollo
- Requiere macOS 13+ mínimo, con requisitos específicos para aislamiento avanzado (macOS 26+ para contenedores)
- Los runners eliminados sin deregistrar permanecen listados como offline en GitHub Actions
- Las sesiones GUI están compartidas actualmente entre runners (Issue #27 pendiente)
- No soporta Dockerfiles ni composición de servicios nativa, depende del framework Containerization de Apple
Perfil de infraestructura
Estimación inicial derivada del repositorio y de los servicios detectados.
Despliegue detectado
Qué señales reales de instalación hemos encontrado.
Instalar vía Homebrew o descarga directa del DMG desde releases. Autenticar con gh CLI antes de añadir runners. Configurar RUNNER_TOKEN como secret en repositorios para fallback automático a runners en la nube si el Mac no está disponible. Habilitar limpieza automática de disco solo cuando el espacio libre esté por debajo del umbral configurado.
Stack y dependencias
Componentes inferidos a partir de manifests, configuración y documentación.
Puede sustituir a
Relaciones detectadas por el análisis del repositorio y su categoría.
Experiencia real de la comunidad
Ayuda a contrastar la estimación automática con instalaciones reales.
Todavía no hay datos comunitarios para este proyecto.