mas CLI: Gestionar aplicaciones de la Mac App Store desde la terminal
mas CLI – Interfaz de línea de comandos del Mac App Store
macOS viene con una interfaz gráfica robusta para el App Store, pero para muchos desarrolladores, administradores de sistemas y usuarios avanzados, una solución basada en terminal puede ser mucho más eficiente. mas (pronunciado mass) es una herramienta ligera y de código abierto escrita en Swift que te permite buscar, instalar, actualizar y administrar aplicaciones directamente desde la línea de comandos.
Repository link: https://github.com/mas-cli/mas
Tabla de Contenidos
- ¿Por qué mas?
- Requisitos
- Instalación
- Primeros pasos
- Búsqueda y consulta
- Listado de aplicaciones instaladas
- Actualizando aplicaciones
- Instalando nuevas aplicaciones
- Privilegios root y seguridad
- Características avanzadas
- Integración con Homebrew Bundle
- Compatibilidad con Topgrade
- Consejos de indexación Spotlight
- Solución de problemas
- Contribuir y construir localmente
- Licencia
- Conclusión
¿Por qué mas?
- Listo para automatizar – Los scripts y tareas cron pueden instalar y actualizar aplicaciones sin interacción del usuario.
- Multiplataforma – Funciona en macOS 13 Ventura y versiones posteriores; las versiones más antiguas de macOS son compatibles mediante un tap de Homebrew.
- Seguro con root – Utiliza
sudointernamente para gestionar restricciones de instalación y los cambios recientes de seguridad de Apple. - Código abierto – Más de 12k estrellas en GitHub y una comunidad activa significan actualizaciones frecuentes, correcciones de errores y propuestas de nuevas funcionalidades.
Requisitos
- macOS 13 Ventura o superior (para soporte completo de binarios). El código fuente puede compilarse en versiones más antiguas de macOS.
- Swift 6.2 (utilizado por el proyecto de Xcode).
- Homebrew o MacPorts para una instalación sencilla.
Instalación
Homebrew (recomendado)
brew install mas
MacPorts
sudo port install mas
macOS anteriores (10.11 – 12) vía Homebrew Tap
brew install mas-cli/tap/mas
Desde Releases de GitHub
Descarga el binario más reciente para tu arquitectura desde la página de Releases y colócalo en /usr/local/bin o usa brew install --build-from-source.
Primeros pasos
Búsqueda y consulta
mas acepta ID de aplicación en dos formas:
- Adam ID – numérico (p. ej., 497799835 para Xcode).
- Bundle ID – texto (p. ej., com.apple.Xcode).
# Buscar una app por nombre
mas search Xcode
# Resultados:
# 497799835 Xcode
# 688199928 Docs for Xcode
# ...
# Obtener información detallada
mas lookup 497799835
# Salida:
# Xcode 26.1.1 [Gratis]
# Por: Apple Inc.
# Lanzado: 2025-11-11
# OS mínimo: 15.6
# Tamaño: 2,913.8 MB
Consejo – Usa
--priceconsearchpara ver los precios de las apps.
Listado de aplicaciones instaladas
mas list
# Ejemplo de salida:
# 497799835 Xcode (15.4)
# 640199958 Developer (10.6.5)
# 899247664 TestFlight (3.5.2)
Actualizando aplicaciones
# Mostrar qué apps están desactualizadas
mas outdated
# Salida:
# 497799835 Xcode (15.4 -> 16.0)
# 640199958 Developer (10.6.5 -> 10.6.6)
# Actualizar todo
sudo mas update
# O actualizar una app específica
sudo mas update 715768417
Instalando nuevas aplicaciones
# Instalar una app gratuita que no tengas antes
sudo mas get 497799835
# Instalar una app previamente comprada
sudo mas install 497799835
# Instalador rápido del primer resultado de búsqueda
sudo mas lucky Xcode
Recuerda –
masrequieresudopara todas las acciones de instalación/actualización en macOS 13+ porque Apple exigió queinstalldsea solo root.
Privilegios root y seguridad
A partir de mas 4.0.0 todos los comandos que modifican los datos de la App Store (instalación y actualización) solicitan automáticamente sudo si no se ejecutan como root. La herramienta no almacena ni expone tu contraseña; la pasa de forma segura al subproceso sudo.
Por qué se requiere root
El servicio installd de Apple es solo de root en las versiones recientes de macOS, lo que lo hace obligatorio para cualquier instalador de aplicaciones, incluida la App Store. mas abstrae esto para que puedas ejecutar simplemente:
mas get 497799835
Características avanzadas
Integración con Homebrew Bundle
Si ya usas brew bundle, mas puede inyectar tus aplicaciones instaladas de la App Store en tu Brewfile:
brew bundle dump
# Después de actualizar, ejecuta `brew bundle` de nuevo para re‑aplicar las instalaciones.
Compatibilidad con Topgrade
mas es totalmente compatible con Topgrade. Ejecutar topgrade actualizará automáticamente cualquier aplicación desactualizada de la App Store.
Consejos de indexación Spotlight
mas lee los datos de aplicaciones instaladas del Servicio de Metadatos Spotlight (MDS) de macOS. Si una aplicación no aparece en la lista, la reindexación podría ayudar:
mdimport /Applications/WhatsApp.app
# O reconstruir la base de datos completa
sudo mdutil -Eai on
Solución de problemas
| Síntoma | Causa probable | Solución |
|---|---|---|
mas get falla con redownload not available |
App no comprada o reembolsada | Compra la app a través de la interfaz gráfica de App Store primero. |
mas update no muestra actualizaciones |
Retraso del servicio App Store o índice local obsoleto | Espera unos minutos o vuelve a indexar Spotlight. |
| Commands crash in tmux | tmux no tiene permisos de portapapeles | Instala reattach-to-user-namespace y envuelve: reattach-to-user-namespace mas install 497799835. |
Si los problemas persisten, ejecuta mas reset, vuelve a intentarlo y reporta el incidente en GitHub.
Contribuir y construir localmente
# Clonar el repositorio
git clone https://github.com/mas-cli/mas.git
cd mas
# Instalar dependencias (Xcode + Swift toolchain)
swift package update
# Compilar
swift build -c release
# Ejecutar pruebas
swift test
Todos los cambios son bienvenidos. Sigue las directrices de contribución.
Licencia
mas se distribuye bajo la licencia MIT.
Conclusión
mas convierte la gestión de la App Store de macOS en un flujo de trabajo amigable para scripts y repetible. Ya sea que seas un desarrollador individual automatizando tu entorno o un administrador de sistemas provisionando una flota de Macs, la línea de comandos elimina los pasos de arrastrar y soltar de la interfaz gráfica e integra de forma limpia con herramientas existentes como Homebrew, Topgrade y tus scripts personalizados. ¡Pruébalo hoy y lleva tu App Store a la línea de comandos!