Atajos y AppleScript
JPGBoost se integra con las herramientas de automatización propias de macOS. Hay una acción nativa disponible en Atajos y Spotlight, y un comando compress expuesto a AppleScript y Automator.
Esta función está disponible tanto en JPGBoost Free como en Pro. En Free, cada imagen procesada cuenta para la cuota diaria: 50 imágenes por día y 5 MB por archivo. JPGBoost Pro elimina ambos límites.
Dos formas de automatizar
JPGBoost expone dos interfaces de automatización nativas de macOS. Ambas funcionan como procesamiento independiente: reciben archivos y ajustes como entrada, devuelven archivos comprimidos como salida, y son independientes de la lista actualmente abierta en la ventana de la aplicación.
- App Intents para la app Atajos y Spotlight.
- AppleScript para
osascript, el Editor de scripts y Automator.
La aplicación no necesita estar abierta
Esta es la principal diferencia con la API local y las carpetas supervisadas, que requieren ambas que la aplicación ya esté en ejecución.
Ya sea con una acción de Atajos o con el comando AppleScript compress, macOS relanza JPGBoost automáticamente en cuanto llega una solicitud, igual que con cualquier otra aplicación con soporte de scripts. No tienes que hacer nada, incluso si habías cerrado la aplicación explícitamente.
El único efecto visible es un ligero retraso, el tiempo que tarda en abrirse, cuando la aplicación no estaba ya abierta. Una vez terminado el procesamiento, permanece abierta: macOS no la cierra automáticamente.
La acción «Comprimir imágenes»
La acción aparece automáticamente en la app Atajos, en la categoría JPGBoost, en cuanto la aplicación se ha abierto una vez. No requiere ninguna configuración.
- Abre la app Atajos y crea un atajo.
- Añade una acción que aporte archivos, por ejemplo Seleccionar archivos u Obtener contenido de carpeta.
- Añade la acción Comprimir imágenes de JPGBoost.
- Rellena los parámetros que quieras. Los que dejes vacíos pueden completarse con un perfil de exportación.
- Encadena otra acción si lo necesitas: la acción devuelve los archivos comprimidos.
| Parámetro | Función | Obligatorio |
|---|---|---|
| Archivos de entrada | Las imágenes a comprimir | Sí |
| Output Format | Formato de salida deseado | No |
| Quality | Calidad de 1 a 100 | No |
| Export Profile | Nombre de un perfil de exportación existente | No |
| Destination Folder | Carpeta de salida (consulta el aviso más abajo) | No |
El campo «Carpeta de destino»
Este es el punto que más suele confundir. El campo Destination Folder es difícil de rellenar correctamente desde el editor de atajos. La solución fiable consiste en pasar por un perfil de exportación.
Este campo espera una referencia de carpeta real en formato URL, es decir, una ruta que empiece por file:// (por ejemplo file:///Users/yo/Downloads/), y no texto sin formato. Los siguientes métodos fallan con un error Invalid URL:
- escribir una ruta a mano, por ejemplo
/Users/yo/Downloads; - arrastrar una carpeta desde el Finder al campo, que solo deposita ahí texto sin formato.
El editor de Atajos de macOS tampoco ofrece ninguna acción nativa de tipo «Elegir una carpeta» que permita construir una de otra forma.
Caso 1: ningún atajo que construir
En cuanto JPGBoost se ha abierto al menos una vez, la frase genérica que declara ella misma («Comprimir imágenes con JPGBoost», «Comprimir con JPGBoost») es reconocida directamente por Spotlight, sin abrir nunca la app Atajos.
Esta invocación directa solo transmite los archivos seleccionados. No se proporciona ningún otro parámetro, lo que provoca el error «Falta la carpeta de destino» hasta que se haya realizado la configuración previa.
Para que esta invocación funcione:
- En JPGBoost, abre Ajustes → Perfiles y define un perfil como perfil por defecto, con una carpeta de destino configurada.
- En el Finder, selecciona las imágenes que quieras comprimir.
- Pulsa
⌘Espacioy luego escribe «Comprimir imágenes».
JPGBoost completa entonces automáticamente los parámetros que faltan a partir del perfil por defecto, incluidos la carpeta de destino, el formato y la calidad.
No se necesita ningún atajo en la app Atajos.
Caso 2: con un atajo construido
Este caso resulta útil cuando varios comportamientos deben estar disponibles bajo nombres distintos. Por ejemplo, «Comprimir al Escritorio» puede usar un perfil, mientras que «Comprimir a Archivo» usa otro. El perfil por defecto del caso 1 solo permite gestionar un comportamiento a la vez.
- En JPGBoost, abre Ajustes → Perfiles y crea un perfil con una carpeta de destino, seleccionada con el selector nativo de la aplicación.
- En la app Atajos, crea un atajo nuevo y dale un nombre claro, por ejemplo «Comprimir al Escritorio».
- En la acción de JPGBoost del atajo, rellena únicamente Export Profile con el nombre del perfil que quieras usar. Deja Destination Folder vacío: la carpeta definida en el perfil se usará automáticamente.
- El atajo queda entonces disponible directamente en Spotlight con el nombre que le diste, en lugar de la frase genérica que declara JPGBoost.
Spotlight
La acción también es accesible desde Spotlight. Las frases de activación, del tipo «Comprimir imágenes con JPGBoost», están traducidas a los quince idiomas admitidos.
El título de la acción, su descripción, sus parámetros y sus mensajes de error siguen el idioma de la herramienta que los muestra (Atajos o Spotlight), con independencia del idioma elegido para la propia ventana de JPGBoost.
AppleScript
El comando compress se usa igual que el de cualquier otra aplicación con soporte de scripts.
tell application "JPGBoost"
compress {"/ru/ta/a/imagen1.png", "/ru/ta/a/imagen2.jpg"} ¬
to "/ru/ta/de/salida" format "webp" quality 80
end tell
Los parámetros to, format y quality son opcionales. El parámetro profile puede sustituirlos, o completar lo que no cubran, exactamente igual que --profile en la línea de comandos.
tell application "JPGBoost"
compress {"/ru/ta/a/imagen.png"} profile "Web JPEG"
end tell
El comando devuelve una cadena JSON: un objeto por archivo, con los campos path, originalSizeBytes, compressedSizeBytes, ratio, destination y error. Es la misma forma que la salida --json de la CLI y que las respuestas de la API local.
Desde la Terminal
osascript -e 'tell application "JPGBoost" to compress {"/ru/ta/imagen.png"} profile "Web JPEG"'
Desde Automator
Usa la acción Ejecutar script de AppleScript y pega en ella el mismo bloque tell. Así puedes crear un servicio accesible desde el menú contextual del Finder.
Permiso de «Automatización»
La primera vez, macOS muestra su habitual alerta de permiso de «Automatización»: la aplicación que envía el comando (Editor de scripts, Automator o Atajos) quiere controlar JPGBoost. Haz clic en Permitir. Este permiso solo se pide una vez.
Solución de problemas
| Síntoma | Causa | Solución |
|---|---|---|
| Invalid URL en la carpeta de destino | El campo recibió texto en lugar de una referencia de carpeta | Usa un perfil de exportación con carpeta de destino y deja el campo vacío |
| La acción no aparece en la app Atajos | La aplicación nunca se ha abierto | Abre JPGBoost una vez y vuelve a abrir Atajos |
| La acción falla con un mensaje de cuota | Se alcanzó la cuota diaria de JPGBoost Free (50 imágenes), o un archivo supera los 5 MB | Espera al reinicio de medianoche, o pasa a JPGBoost Pro para eliminar ambos límites |
| El script AppleScript devuelve un error | Permiso de Automatización denegado | Comprueba Ajustes del sistema → Privacidad y seguridad → Automatización. Un rechazo por la cuota Free no detiene el lote: se indica archivo por archivo en el JSON devuelto |