GuimicK – La herramienta de código abierto para automatizar tareas recurrentes en PC de forma local y remota
Descripción del programa GuimicK
GuimicK es un conjunto de herramientas de código abierto diseñadas para programar y ejecutar tareas recurrentes en ordenadores de forma automatizada, desarrollado por MickaelOnTheWave y alojado en GitHub. Lanzado originalmente como una solución para automatizar copias de seguridad, el proyecto ha evolucionado para incluir mantenimiento del sistema, gestión remota y más, todo ello con una interfaz gráfica amigable.
El nombre GuimicK es un acrónimo o una deformación del inglés «gimmick» (truco o artilugio), pero no debe confundirse con otros proyectos homónimos como el generador de kernels de multiplicación de matrices (GiMMiK) ni con el videojuego clásico de NES del mismo nombre. En este contexto, se trata exclusivamente de una herramienta de automatización de tareas para sistemas operativos modernos.
Su principal fortaleza radica en ofrecer una solución completa para automatizar tareas rutinarias sin necesidad de escribir scripts complejos o depender de soluciones comerciales. El programa se compone de dos ejecutables principales: TaskTool, que ejecuta las tareas definidas en un archivo de configuración, y ConfigurationEditingTool, un editor gráfico que permite a los usuarios definir tareas, probarlas y generar los archivos de configuración de forma intuitiva. Además, es multiplataforma, compatible con Windows y Linux, y permite controlar tanto máquinas locales como remotas a través de SSH.
¿Necesitas automatizar tus copias de seguridad, mantenimiento del sistema o tareas repetitivas en múltiples equipos con una herramienta gratuita y de código abierto?
Características clave de GuimicK
1. Programación y ejecución automática de tareas recurrentes
GuimicK permite definir tareas que se ejecutan automáticamente según una programación establecida, ya sea a través del programador nativo del sistema operativo (Windows Task Scheduler o Linux cron) o ejecutando manualmente el TaskTool. Esta automatización es ideal para tareas que deben realizarse regularmente sin intervención del usuario, como copias de seguridad nocturnas, limpieza de archivos temporales o actualizaciones del sistema.
2. Múltiples tipos de tareas soportadas
La herramienta soporta una amplia variedad de tipos de tareas, adaptándose a diferentes necesidades:
- Copias de seguridad de archivos (copia directa, rsync, zip/tar, y más)
- Copias de seguridad de repositorios Git
- Verificaciones de disco (disk checks)
- Ejecución de comandos personalizados en la línea de comandos
- Comandos remotos a través de SSH
- Wake-on-LAN para encender máquinas remotas
- Apagado automático (local o remoto)
Esta variedad hace que GuimicK sea una solución versátil tanto para usuarios domésticos como para administradores de sistemas.
3. Modos de configuración: local, servidor y cliente
GuimicK ofrece tres modos de operación que determinan dónde y cómo se ejecutan las tareas:
- Modo Standalone: ejecuta las tareas localmente en la misma máquina. Es el modo más sencillo y el único probado oficialmente en Windows.
- Modo Server: ejecuta las tareas en una máquina cliente remota, actuando como servidor de tareas.
- Modo Cliente: expone la máquina local para ser controlada por un servidor remoto.
Esta arquitectura cliente-servidor permite gestionar múltiples equipos desde una ubicación central, ideal para pequeños entornos de red.
4. Editor gráfico de configuración (ConfigurationEditingTool)
Una de las características más valoradas es su interfaz gráfica de configuración, que elimina la necesidad de editar manualmente archivos de configuración. El ConfigurationEditingTool permite:
- Definir tareas de forma visual e intuitiva
- Probar las tareas antes de implementarlas
- Generar automáticamente los archivos de configuración que luego leerá el TaskTool
Para usuarios que prefieren un control más granular, también es posible editar los archivos de configuración manualmente.
5. Generación de informes de ejecución
GuimicK puede generar informes detallados de cada ejecución de tareas, almacenándolos localmente o enviándolos al usuario. Aunque la funcionalidad de envío por correo electrónico está limitada debido a las restricciones modernas de SMTP (el proyecto menciona que es «mayormente inutilizable»), los informes locales son útiles para auditar el éxito o fracaso de las tareas programadas. Se menciona una implementación parcial de notificaciones vía Telegram, aunque no está completamente probada.
Explicación detallada de las funcionalidades
La arquitectura de GuimicK está construida en C++17 y utiliza CMake como sistema de compilación, con dependencias en Qt 6 (módulo Qt Widgets) para la interfaz gráfica. El proyecto se compila en dos ejecutables principales:
TaskTool: Es el motor de ejecución de tareas. Lee un archivo de configuración (que define qué tareas ejecutar, cuándo y cómo) y las ejecuta en el orden y condiciones especificados. Puede ser ejecutado manualmente o añadido al programador de tareas del sistema operativo (Windows Task Scheduler o cron en Linux) para su ejecución automática.
ConfigurationEditingTool: Es la interfaz gráfica que facilita la creación y edición de los archivos de configuración. Permite seleccionar el tipo de tarea, configurar parámetros (origen, destino, frecuencia, etc.), probar la tarea y guardar la configuración en un archivo que luego utilizará el TaskTool.
El flujo de trabajo típico del programa es el siguiente: El usuario abre el ConfigurationEditingTool y crea una nueva configuración. Elige el modo de operación (Standalone, Server o Client). Define las tareas que desea automatizar (por ejemplo, una copia de seguridad semanal de una carpeta específica a un disco externo). Prueba la tarea para verificar que funciona correctamente. Guarda la configuración en un archivo. Luego, programa el TaskTool para que se ejecute automáticamente según la frecuencia deseada (por ejemplo, todos los viernes por la noche), ya sea mediante el programador del sistema operativo o ejecutándolo manualmente.
El proyecto incluye archivos de ejemplo en la carpeta TaskTool/data/ que demuestran casos de uso comunes, como copias de seguridad locales, copias de seguridad de repositorios Git y procedimientos para encender una máquina remota mediante Wake-on-LAN y luego tomar control a través de SSH. Estos ejemplos sirven como punto de partida para adaptarlos a necesidades específicas.
Descarga e instalación de GuimicK
- Página oficial: GitHub – MickaelOnTheWave/GuimicK
- Versión actual: El proyecto tiene 1,205 commits en su historial, pero no se especifica una versión numerada estable. La última actividad de commit es de agosto de 2025
- Tamaño: Variable según la compilación; el código fuente completo incluye submódulos
- Sistemas operativos compatibles: Windows (solo modo Standalone probado) y Linux (todos los modos probados)
- Requisitos mínimos:
- CMake (≥ 3.22)
- Qt (≥ 6, módulo Qt Widgets)
- Compilador compatible con C++17 (GCC ≥ 9, MSVC ≥ 2019, Clang ≥ 10)
- Licencia: Código abierto (no se especifica la licencia explícita en el README, pero al estar en GitHub se asume código abierto; se recomienda verificar el archivo LICENSE en el repositorio)
- Idiomas: Interfaz en inglés
- Soporte técnico: GitHub Issues, contribuciones a través de pull requests
Nota sobre el estado del proyecto: El proyecto estuvo inactivo durante varios años, y algunas funcionalidades pueden estar rotas o no completamente probadas. La funcionalidad de informes por correo electrónico es mayormente inutilizable debido a las restricciones modernas de SMTP, y se menciona una implementación parcial de un bot de Telegram para notificaciones que no ha sido completamente probada. Las pruebas automatizadas existen para algunas partes, pero las pruebas de servicios externos aún están en directorios antiguos.
Cómo usar GuimicK
El uso de GuimicK requiere compilar el proyecto desde el código fuente, ya que no se proporcionan binarios precompilados en el repositorio (aunque se pueden generar durante la compilación).
Paso 1: Clonar el repositorio
git clone --recursive https://github.com/MickaelOnTheWave/GuimicK.git
cd GuimicKLa opción --recursive es importante porque el proyecto incluye submódulos que deben descargarse también.
Paso 2: Compilar el proyecto
mkdir build
cd build
cmake../
cmake --build.Este proceso generará los ejecutables en las carpetas correspondientes.
Paso 3: Ejecutar el editor de configuración
Desde el directorio de compilación, ejecuta:
./ConfigurationEditingTool/ConfigurationEditingToolEsto abrirá la interfaz gráfica donde podrás definir tus tareas.
Paso 4: Crear una nueva configuración
- En el editor gráfico, selecciona el modo de operación: Standalone (recomendado para Windows, probado), Server o Client (estos dos probados en Linux).
- Define las tareas que deseas automatizar. Puedes elegir entre los tipos soportados: copias de seguridad (raw copy, rsync, zip/tar), copias de repositorios Git, verificaciones de disco, comandos personalizados, comandos SSH remotos, Wake-on-LAN o apagado automático.
- Configura los parámetros específicos de cada tarea (origen, destino, frecuencia, etc.).
- Prueba la tarea utilizando las opciones del editor para verificar que funciona correctamente.
- Guarda la configuración en un archivo.
Paso 5: Ejecutar las tareas
Puedes ejecutar el TaskTool manualmente para probar la configuración:
./TaskTool/TaskTool /path/to/config/filePara automatizar la ejecución, añade el comando anterior al programador de tareas de tu sistema operativo:
- En Windows: Usa el Programador de tareas de Windows
- En Linux: Añade una entrada a
crontab
Paso 6: Personalización avanzada (opcional)
Si prefieres no usar el editor gráfico, puedes editar manualmente los archivos de configuración. Los archivos de ejemplo en TaskTool/data/ pueden servir como plantillas.
Observaciones sobre el programa GuimicK
Frente a otras herramientas de automatización de tareas como Cron (Linux), Task Scheduler (Windows) o soluciones más completas como Ansible o Jenkins, GuimicK ocupa un espacio intermedio. No es tan simple como un programador de tareas nativo (que solo ejecuta comandos), pero tampoco es tan complejo como una plataforma de automatización empresarial. Su principal ventaja es ofrecer una interfaz gráfica para definir tareas complejas, como copias de seguridad con rsync o comandos remotos SSH, sin necesidad de escribir scripts desde cero.
Para el usuario final o el pequeño administrador de sistemas, el beneficio práctico es poder automatizar tareas rutinarias de forma visual y sin depender de servicios en la nube. GuimicK es completamente autónomo: una vez configurado, funciona sin conexión a Internet ni suscripciones. La posibilidad de controlar máquinas remotas mediante SSH y Wake-on-LAN lo hace útil para gestionar pequeños parques de equipos (como los de una oficina pequeña o un hogar con varios PC).
El proyecto tiene limitaciones importantes que deben considerarse. El desarrollador advierte explícitamente que el proyecto estuvo inactivo durante varios años y que algunas funcionalidades pueden estar rotas. La funcionalidad de envío de informes por correo electrónico es «mayormente inutilizable» debido a las restricciones modernas de SMTP (autenticación, TLS, etc.), y la implementación alternativa mediante un bot de Telegram está parcialmente implementada pero no completamente probada. En el lado positivo, las pruebas unitarias existen para algunas partes del código, lo que sugiere que al menos el núcleo del proyecto es estable.
En cuanto a la compatibilidad: En Windows, solo el modo Standalone ha sido probado. Los modos Server y Client pueden funcionar, pero no hay garantías. En Linux, todos los modos han sido probados, lo que sugiere que la experiencia es más completa en este sistema operativo. No hay mención de compatibilidad con macOS.
La falta de binarios precompilados es otra barrera de entrada. Los usuarios deben compilar el proyecto desde el código fuente, lo que requiere instalar CMake, Qt 6 y un compilador C++17. Esto puede ser un obstáculo para usuarios sin experiencia en desarrollo de software.
Entre las funcionalidades extra, el proyecto incluye archivos de ejemplo que demuestran casos de uso comunes, como copias de seguridad locales, copias de seguridad de repositorios Git y procedimientos de Wake-on-LAN con SSH. Estos ejemplos son útiles para entender cómo estructurar configuraciones más complejas.
Limitaciones importantes
- ❌ Proyecto con desarrollo intermitente: Estuvo inactivo durante varios años; algunas funcionalidades pueden estar rotas.
- ❌ Sin binarios precompilados: Requiere compilar desde el código fuente, lo que exige instalar CMake, Qt 6 y un compilador C++17.
- ❌ Informes por correo electrónico no funcionales: La funcionalidad es «mayormente inutilizable» debido a restricciones modernas de SMTP.
- ❌ Notificaciones por Telegram no probadas: La implementación está parcial pero no ha sido completamente testeada.
- ❌ Windows limitado a modo Standalone: Solo el modo local ha sido probado en Windows; los modos Server y Client pueden no funcionar correctamente.
- ❌ Documentación limitada: El README proporciona información básica, pero falta documentación detallada para casos de uso avanzados.
Alternativa recomendada
Si buscas una herramienta de automatización más madura y con soporte multiplataforma, Rclone es una excelente alternativa para copias de seguridad y sincronización con servicios en la nube y almacenamiento local. Es de código abierto, tiene una comunidad activa y puede programarse fácilmente con cron o Task Scheduler. Para automatización de tareas del sistema más general, Ansible (aunque requiere más configuración inicial) es el estándar en entornos profesionales. Si tu prioridad es la simplicidad en Windows, el Programador de tareas de Windows combinado con scripts en PowerShell puede cubrir la mayoría de necesidades de automatización sin software adicional.
GuimicK es una herramienta prometedora para usuarios que necesitan automatización de tareas con interfaz gráfica y no temen compilar software desde el código fuente. Su enfoque en la simplicidad y su arquitectura cliente-servidor lo hacen adecuado para pequeños entornos donde no se justifica una solución empresarial. Sin embargo, su estado de desarrollo intermitente y sus limitaciones actuales (especialmente en Windows y en notificaciones) deben sopesarse cuidadosamente. Puedes obtener el código fuente y más información en su repositorio de GitHub.
Sección FAQ
¿GuimicK es gratis o de pago?
GuimicK es completamente gratuito y de código abierto. No tiene versiones de pago ni funcionalidades bloqueadas. Puedes descargar, modificar y distribuir el código según los términos de su licencia (consulta el archivo LICENSE en el repositorio para detalles específicos).
¿Funciona en Linux, macOS, Windows 10 y Windows 11?
GuimicK es compatible con Windows (solo modo Standalone probado) y Linux (todos los modos probados). No hay mención de compatibilidad con macOS en el README. En Windows 10 y 11, el modo Standalone debería funcionar si se compila correctamente, pero los modos Server y Client no han sido probados y podrían presentar problemas.
¿Qué diferencia a GuimicK de otras alternativas similares?
Su principal diferencia es ofrecer una interfaz gráfica para definir tareas complejas (copias de seguridad con rsync, comandos remotos SSH) sin necesidad de escribir scripts, combinada con una arquitectura cliente-servidor para gestionar máquinas remotas. A diferencia del Programador de tareas de Windows (que solo ejecuta comandos) o cron (que requiere editar archivos de texto), GuimicK proporciona un editor visual para configurar tareas.
¿Puedo usar GuimicK para hacer copias de seguridad en la nube?
GuimicK no tiene integración nativa con servicios en la nube (Google Drive, Dropbox, etc.). Sin embargo, puedes usar los tipos de tareas de «comandos personalizados» para ejecutar scripts que utilicen herramientas como Rclone (que sí soporta la nube) y así lograr el mismo efecto. El proyecto incluye soporte para copias de seguridad de repositorios Git y copias locales (raw copy, rsync, zip/tar).
¿Qué ha pasado con el desarrollo de GuimicK?
El proyecto GuimicK estuvo inactivo durante varios años, pero ha recibido commits recientes (la última actividad documentada es de agosto de 2025). El desarrollador advierte que algunas funcionalidades pueden estar rotas debido a este periodo de inactividad, y que la funcionalidad de informes por correo electrónico es «mayormente inutilizable». El proyecto sigue siendo mantenido, pero con limitaciones. Se recomienda revisar el estado actual en el repositorio de GitHub antes de usarlo en entornos críticos.
