Un plugin para revisar proyectos en OmniFocus… a mi manera
Una de las cosas que más me incomodan del sistema de revisiones de OmniFocus es que, aunque permite definir intervalos (diario, semanal, mensual…), la próxima fecha de revisión depende siempre del día exacto en que marcas un proyecto como revisado.
Esto es lógico desde el punto de vista del software, pero no encaja bien con cómo reviso yo mis proyectos:
las revisiones “de verdad” las hago los domingos, de forma concentrada y sistemática. El resto de la semana puedo revisar algo puntualmente, pero no quiero que eso desordene mi calendario de revisiones.
El problema
Ejemplo típico:
- Un proyecto con revisión semanal.
- Lo reviso un martes.
- OmniFocus lo vuelve a programar para el martes siguiente.
Resultado: el proyecto deja de aparecer en domingo y rompe el ritmo de la revisión semanal.
Mi modelo mental
Yo trabajo con proyectos etiquetados por estado, de forma excluyente:
- ▶️ En ejecución → revisión diaria
- ⏩️ En cola → revisión semanal
- ⏸️ En espera → revisión cada dos semanas
- ⏹️ Archivo → revisión cada dos meses
La clave es que, independientemente del día en que revise un proyecto, la próxima revisión debe caer siempre en domingo:
- semanal → próximo domingo
- quincenal → segundo domingo
- bimestral → octavo domingo
La solución: un plugin personalizado
Con ayuda de ChatGPT he desarrollado un plugin de OmniFocus que sustituye el botón estándar Marcar como revisado por una acción propia:
- Marca el proyecto como revisado.
- Calcula manualmente la próxima fecha de revisión.
- La fija siempre en domingo, según el tag de estado del proyecto.
- Si un proyecto no tiene tag de estado, el plugin se detiene y avisa (prefiero errores explícitos a comportamientos silenciosos).
El plugin no toca los intervalos de revisión (eso lo gestiona otro script), solo controla la fecha concreta de la próxima revisión.
Cómo lo uso
No ejecuto el plugin directamente desde OmniFocus, sino a través de Keyboard Maestro, que lanza la acción desde el menú de Automatización. Esto me permite:
- asignar el atajo de teclado exacto que quiero,
- mantener todos mis atajos centralizados,
- y convertir la revisión en un flujo completamente de teclado.
Desde la perspectiva Revisión, reviso proyecto a proyecto y uso siempre este atajo, nunca el botón nativo.
Conclusión
OmniFocus es muy flexible, pero a veces hay que doblar ligeramente su comportamiento interno para que encaje con tu forma real de trabajar. En este caso, el plugin convierte la revisión en algo más parecido a un calendario editorial que a un sistema reactivo.
Y, como suele pasar últimamente, ChatGPT ha sido una ayuda enorme, no solo para escribir código, sino para razonar el diseño, detectar errores de la API y llegar a una solución limpia y documentada.
Si en el futuro olvido por qué mis revisiones “funcionan así”, al menos ya sé dónde mirarlo.