diny
Dino Danic · Programación
diny es una herramienta de línea de comandos gratuita y de código abierto que convierte tus cambios de git preparados en mensajes de commit legibles con un solo comando. Piénsalo como un generador de mensajes de commit que funciona en tu terminal. Lee el diff preparado, elimina el ruido como los lockfiles y los artefactos de compilación, y propone tres variantes de mensaje que puedes editar o confirmar tal cual. No hay clave de API que solicitar ni cuenta que crear, así que la instalación es una sola línea y empiezas a hacer commits en segundos.

Acerca de diny
Qué es diny
diny es una CLI con IA pensada para desarrolladores cansados de mirar un cuadro de mensaje de commit en blanco. Encaja en el flujo de trabajo de git que ya usas, en lugar de pedirte que aprendas uno nuevo. Preparas tus cambios, ejecutas diny commit y genera un mensaje claro basado en lo que realmente cambió.
La herramienta ataca esa pequeña fricción que se acumula a lo largo de un proyecto: commits vagos como "fix stuff" o "wip" que vuelven inútil el historial seis meses después. Como herramienta de commits convencionales, diny se inclina por ese formato, lo que hace que los logs sean más fáciles de leer y combina bien con herramientas automatizadas. También resuelve el caso desordenado en el que has preparado demasiado de golpe, ya que te permite dividir un gran diff en varios commits agrupados por tema.
Nada de eso exige una cuenta en la nube, y el diff nunca tiene que salir de tu máquina si prefieres mantenerlo todo local. Eso importa a muchos equipos.
El límite principal es el alcance. diny solo escribe mensajes y organiza commits; no revisa tu código, no detecta errores ni decide por ti qué debería formar parte de un commit. Como herramienta de IA para mensajes de commit de git, ese enfoque es justamente el punto. Todo funciona desde la terminal, así que si trabajas enteramente dentro de un cliente git con interfaz gráfica, tendrás que comprobar si se integra con tu app preferida. La única integración que trae de serie es LazyGit.
Primeros pasos
- Instala la CLI en macOS o Linux con
brew install dinoDanic/tap/diny, o en Windows conscoop install diny. También hay binarios ya compilados en la página de releases de GitHub. - Prepara los cambios que quieres confirmar ejecutando
git add .o añadiendo archivos concretos. - Ejecuta
diny commitpara abrir la interfaz interactiva de terminal. Lee el diff preparado y genera tres variantes de mensaje. - Elige una variante, edítala en línea o ábrela en tu
$EDITOR, y luego confirma. Pulsa S en la pantalla de listo si quieres dividir los cambios preparados en varios commits. - De forma opcional, ejecuta
diny configpara definir tu tema, formato de commit, tono y longitud predeterminados.
Información del producto
Un vistazo rápido a los precios, las plataformas compatibles y el rendimiento de diny.
Ideal para
Los usuarios, tareas y casos de uso en los que esta herramienta encaja mejor.
Usuarios
- Desarrolladores individuales que hacen commits a menudo y quieren un historial coherente y legible sin perder velocidad. Funciona mejor si te manejas bien en la terminal.
- Equipos pequeños que quieren convenciones de commit compartidas. Un archivo versionado `.diny.yaml` permite que todos sigan la misma configuración.
Tareas
- Escribir mensajes de commit a partir de un diff preparado
- Dividir un gran diff en varios commits enfocados y agrupados por tema, para que cada commit cuente una historia clara.
- Generar un changelog entre dos etiquetas o commits para las notas de versión.
- Revisar el historial de commits en un rango de fechas para ver qué se publicó y cuándo.
Casos de uso
- Limpiar una rama desordenada antes de abrir un pull request, cuando tus commits de trabajo fueron rápidos y descuidados.
- Cerrar un día largo de ediciones y solo querer que el mensaje quede resuelto sin romper tu ritmo. Sin pensar.
- Incorporarte a un repositorio desconocido, donde una cronología resumida te ayuda a ver la actividad reciente rápido.
Funciones clave
Generación de commits con un solo comando
El bucle central es simple: prepara, ejecuta diny commit y revisa. diny lee tus cambios preparados con git diff y redacta tres variantes de mensaje entre las que elegir. Puedes editar en línea o pasar el mensaje a tu editor antes de confirmar. Es la razón por la que la mayoría instala esta herramienta de commit por CLI, y funciona sin ninguna clave ni inicio de sesión.
Filtrado de ruido en el diff
Los diffs en bruto están llenos de cosas que no deberían dar forma a un mensaje, como lockfiles, binarios y artefactos de compilación. diny los filtra antes de generar el texto, así que el mensaje refleja cambios reales de código y no el vaivén de dependencias. El resultado es simple. Menos commits que dicen "update package-lock.json".
Dividir los cambios en varios commits
¿Preparaste demasiado de una vez? Pulsa S en la pantalla de listo y diny reparte el diff en commits separados agrupados por tema. Puedes editar cada grupo, mover archivos entre ellos, regenerar y luego confirmarlos en orden. Mucho menos doloroso. Así conviertes un bloque vago en una serie limpia que es fácil de revisar después.
Interfaz TUI interactiva para todo el flujo
diny hace más que lanzar un mensaje y salir. Su interfaz de terminal gestiona commit, config, changelog, timeline y yolo en un mismo sitio. Un selector de archivos integrado te deja preparar y quitar archivos sin salir de la herramienta, así que puedes dar forma a un commit antes de escribir su mensaje.
Changelog y cronología con IA
Más allá de los commits individuales, diny funciona como generador de changelog con IA entre etiquetas o commits, lo que resulta práctico para las notas de versión. El comando timeline resume y analiza tu historial de commits, con rangos predefinidos por fecha o personalizados. Ambas funciones usan la misma generación local que los commits, así que no hay nada extra que configurar.
Configuración en tres niveles
Los ajustes viven en tres capas: una configuración global en ~/.config/diny/config.yaml, un .diny.yaml compartido por proyecto que confirmas para el equipo, y un archivo personal por proyecto que se queda local. La prioridad es local > versionado > global, y los archivos de proyecto solo necesitan los valores que sobrescriben. Limpio. Es una forma directa de compartir convenciones sin imponerlas a todos.
Opciones de tono, formato y emoji
Puedes decirle a diny cómo quieres que se lean los mensajes. Activa o desactiva el formato de commits convencionales, elige un tono (profesional, informal o cercano), controla la longitud (corta, normal o larga) y, si quieres, añade un emoji al principio de los commits. Las instrucciones personalizadas dan a la IA una guía extra para los casos límite.
Ventajas y desventajas
Ventajas
- Sin clave de API, sin registro y sin cuenta, así que no hay nada que configurar antes de tu primer commit.
- Gratis y de código abierto bajo licencia MIT, así que este generador de mensajes de commit de código abierto se puede inspeccionar y alojar por tu cuenta.
- Funciona en macOS, Linux y Windows con instalaciones de una línea mediante Homebrew y Scoop.
- Divide un diff preparado y abultado en commits enfocados, lo que mantiene el historial legible.
- Los comandos integrados de changelog y timeline lo llevan más allá del uso con un solo commit.
Desventajas
- Solo se ocupa de los mensajes de commit y el historial, así que no revisará el código ni detectará errores por ti.
- Se ejecuta en la terminal, lo que significa que los usuarios de git solo con interfaz gráfica no tendrán la misma experiencia sin adoptar LazyGit o un montaje similar.
- Los mensajes generados valen tanto como el diff que preparas, así que una preparación descuidada sigue dando commits vagos.
Preguntas frecuentes
Sí. diny es gratis y de código abierto bajo licencia MIT, y no tiene plan de pago. Lo instalas, lo ejecutas y generas commits sin pagar ni registrarte en nada.
Contenido relacionado
Explora herramientas, habilidades y artículos relacionados con diny.
Alternativas a diny
Base Code
Base44 (Wix) · Programación · ProductividadBase Code es un entorno de desarrollo en la nube compartido de Base44. El equipo describe cambios sobre un repositorio de GitHub en el chat, los ve en una vista previa y los envía como pull requests.
Google EmbeddingGemma 2
Google DeepMind · Escritura · Imagen · ProgramaciónGoogle EmbeddingGemma 2 es un modelo abierto de 740 millones de parámetros que convierte texto, código, imágenes, audio y fotogramas de vídeo en vectores de un mismo espacio de 768 dimensiones, y funciona en móviles y portátiles.
GitGlow
GitGlow · Programación · ProductividadGitGlow es un cliente Git de escritorio que reúne tu código y los cambios de tus agentes de IA en una sola revisión, para que sepas qué va a salir de tu máquina antes de publicarlo.
