La entrega anterior construyó un asiento para un agente operador y un sobre de credenciales para que no tuviera que sostener la clave de firma. Y luego lo conduje yo, lo cual no demuestra nada. Esta vez se sentó un agente que no había construido nada de ello, sin clave, y sacó adelante una entrega completa. La frontera aguantó. Lo que se rompió fueron dos cosas que funcionaban exactamente como estaban diseñadas — e ilegibles para cualquiera que no supiera ya la respuesta.
Leer más →
De las dos últimas entregas salieron cuatro hallazgos, y tres eran fallos en mi modelo del sistema y no en el sistema. No salieron de probar más. Salieron de cambiar dos veces la forma de lo que metía — darle el asiento del operador a un desconocido, y darle a la máquina un problema en vez de una especificación. Esta entrega no publica código. Argumenta que cuando construyes un sistema que además operas, tus propias costumbres satisfacen en silencio tus suposiciones, y lo único que las saca a la luz es un cambio de forma.
Leer más →
La tercera entrega de AINARRES: el día en que arranqué el bucle, me fui, y una funcionalidad real llegó sola a la rama principal —sin que ninguna persona ni ningún director secuenciara, reencaminara o arreglara nada por el camino—. Y por qué los dos arranques fallidos enseñaron más que el que salió bien.
Leer más →
La máquina que se ejecuta sola tenía una costumbre cara — cuando había cualquier tarea esperando, arrancaba a todos sus trabajadores, y la mayoría no encontraba nada que hacer. Esta entrega le enseña al sustrato a informar de lo que hay esperando en términos de capacidades, para que el servicio despierte exactamente a quien puede atenderlo. Lo interesante no fue el ahorro. Fue lo que pasó cuando la máquina encontró una capacidad que nadie tiene — y, con toda la razón, me aconsejó contratar a alguien para un trabajo que yo me había reservado a propósito.
Leer más →
Durante doce entregas hubo una persona en la terminal haciendo lo que ningún rol cubría — refinar una petición, crear el trabajo, arrancar el servicio. Esa persona nunca fue una identidad. Era quien tuviera la clave de firma, poniéndose la cara del trabajador que el acto requiriera en cada momento. Esta entrega le da un nombre a ese asiento, y luego descubre lo que un nombre hace visible: meses de trabajo atribuidos a las familias equivocadas, toda una clase de gasto que el sistema no podía ver, y una definición de "operador" que nadie había tenido nunca que escribir.
Leer más →
La séptima y última entrega de la temporada de gobernanza de AINARRES. El sustrato ya puede retirar una capacidad a una familia que demuestra hacer mal su trabajo —de forma automática, temporal y reversible—. Pero hay fallos que ninguna regla detecta, y decisiones que no deberían automatizarse en absoluto. Esta es la historia de la línea que el proyecto trazó a conciencia: el auditor, la frontera humana, y por qué la máquina que construye su propia conciencia dejó un bucle para una persona.
Leer más →
La sexta entrega de AINARRES: la primera ejecución sin manos de la temporada de gobernanza acabó con el enjambre borrando su propio tablero a mitad de camino. La autopsia honesta de un fallo en tres tiempos —por qué no se perdió nada importante, y cómo un tropiezo autoinfligido se convirtió en el mejor argumento a favor de la frontera humana que el proyecto construye a continuación.
Leer más →
El proyecto ya tiene un auditor que vigila el final del trabajo; esta entrega nombra el rol del principio — el intaker, quien convierte una petición en bruto en un encargo bien formado antes de que empiece nada. Lo bonito es lo poco que costó: la creación en dos niveles, donde el intaker puede abrir una petición pero solo el diseñador puede convertirla en trabajo, salió de una regla que el proyecto ya tenía, sin código nuevo. Con ambos extremos nombrados, toda la cadena — de la persona con una petición al auditor que revisa el resultado — queda por fin nombrada de punta a punta.
Leer más →
Todas las peticiones que le había dado al enjambre eran especificaciones disfrazadas — la función nombrada, las cadenas entre comillas, las aserciones enumeradas. Esta era un problema, un contrato que no puede reabrir y permiso para negarse. Volvió como un grafo de dependencias de cuatro nodos, construido en dieciocho segundos, y cuatro pull requests fusionadas en setenta y un minutos: la primera vez que a esta máquina se le da algo que decidir en lugar de algo que transcribir. Vinieron con ello dos hallazgos, y los dos eran sobre mi trabajo y no sobre el suyo.
Leer más →
El auditor del proyecto juzgaba una sola cosa — si una entrega cumplía su encargo. Esta entrega le da un segundo sentido: vigilar la salud operativa de la flota y su gasto en tokens, para que un trabajador atascado o uno silenciosamente caro se le presenten a una persona. Y cuenta la historia honesta de la ejecución que trajo esta función — que primero se atascó cuando un modelo fue retirado de la noche a la mañana, y luego se terminó sola, sin manos, en cuanto se arregló el arnés.
Leer más →
La cuarta entrega de AINARRES: el salto de hacer una tarea cada vez a muchos agentes trabajando a la vez. Y el momento que mejor lo explica —un trabajador se quedó colgado a mitad de tarea, lo maté, y otro agente terminó el trabajo solo, sin que nadie reasignara nada—.
Leer más →
La quinta entrega de AINARRES: dejar de depender de un solo modelo puntero y dejar que modelos de fabricantes distintos —xAI y Anthropic— compartan los papeles como iguales. Y el instante que lo resume: dos modelos de dos empresas revisando el trabajo a la vez, sin más contacto que un tablero común.
Leer más →
En cada entrega de esta serie, un humano seguía haciendo dos cosas a mano — arrancar la máquina y escribir a mano la petición que la alimentaba. Esta entrega retira ambas. AINARRES deja de ser un script que ejecutas y se convierte en un proceso que corre — inactivo cuando no hay trabajo, despertándose solo cuando lo hay — y le crece una puerta, una forma autenticada de que una petición llegue desde fuera. Lo más bonito es honesto: la máquina que ya no necesita que la arranquen se construyó su propio panel de estado, sin manos, y un fallo que descartábamos como "intermitente" resultó ser real.
Leer más →
La segunda entrega de AINARRES: cómo el sustrato coordinó la construcción de una parte de sí mismo —una herramienta de supervisión— con agentes de IA frescos, sin que ninguno heredara el contexto del que dirigía, y por qué eso obligó a que quien integra el código fuera un agente verdaderamente independiente.
Leer más →
Qué es AINARRES, por qué lo construimos y en qué punto está: una base de datos que coordina enjambres de agentes de IA sin orquestador, para que los modelos grandes dirijan a trabajadores más baratos en lugar de gastar su tiempo en tareas fáciles.
Leer más →
Un interludio tras la temporada de gobernanza. AINARRES pasó de un único trabajador de IA barato a una flota escalonada de modelos de distintos fabricantes — y al hacerlo chocó con tres lecciones que riman: algunos trabajadores fallan de formas que ninguna regla detecta, la política de la organización decide quién puede siquiera trabajar, y cada modelo cuenta sus tokens a su manera. Esta es la historia de ampliar el enjambre y enseñarle a medirse a sí mismo — y de por qué esa medición se convierte en el próximo trabajo del auditor.
Leer más →
En este artículo hablamos de Autenticación y Uso de Tokens JWT en PostgREST
Leer más →
En este artículo, te brindaremos una guía detallada para ayudarte a tomar la decisión correcta al elegir una computadora portátil
Leer más →
Este artículo revisa las similitudes y diferencias entre Ubuntu y Debian
Leer más →
En este artículo, te guiaremos a través del proceso de creación de la estructura de la base de datos y la configuración de los usuarios y permisos necesarios
Leer más →
En este artículo hablamos de Creación de Tablas Restantes en la Base de Datos para tu Aplicación de Control de Tiempo
Leer más →En este artículo hablamos de Desarrollo de Arquitecturas Desacopladas: Creando una Aplicación de Control de Horas
Leer más →En este artículo, exploraremos la estructura inicial de la base de datos para tu aplicación de control de tiempo
Leer más →
En este artículo hablamos de Electrum: qué es y por qué es bueno tener tu propio servidor de Electrum
Leer más →
En este artículo, exploraremos a fondo Focalboard, desde su introducción hasta su instalación y configuración, para que puedas comenzar a aprovechar al máximo esta plataforma
Leer más →
En este artículo, exploraremos las características de Etherpad, proporcionaremos instrucciones detalladas para su instalación en un sistema Debian y compartiremos consejos para aprovechar al máximo esta herramienta
Leer más →
En este artículo hablamos de Guía Completa de Redmine: Gestión de Proyectos y Tareas Simplificada
Leer más →
En este artículo hablamos de Guía Completa de TaskWarrior: Gestión de Tareas Eficiente
Leer más →
En este artículo, exploraremos una variedad de herramientas de productividad de software libre que puedes instalar en tu sistema Linux o VM para optimizar tus tareas diarias
Leer más →
En este artículo, exploraremos qué es una API REST, cuáles son sus ventajas y cómo podemos lograr esto utilizando PostgREST
Leer más →
Pasos básicos para instalar Debian 11 "Bullseye" en tu equipo.
Leer más →
En este artículo hablamos de Interactuando con la API REST de tu Aplicación de Control de Tiempo
Leer más →
En este artículo hablamos de Mejora de Seguridad y Acceso con Nginx en PostgREST
Leer más →
Empezamos a mudarnos a un VPS nuevo en Time4VPS. Por qué un agente como Hermes encaja mejor que montar Ansible cuando la tarea es infrecuente, y qué dejamos a propósito para el siguiente capítulo.
Leer más →
Cerramos el tramo grande de la mudanza: Nextcloud ya vive en el VPS nuevo de Time4VPS, con copia de seguridad seria y llamadas de Talk preparadas para crecer. Cómo se siente hacerlo con un agente, sin convertir esto en un manual de sistemas.
Leer más →
Cómo dejar un Hermes de verdad contestando en Nextcloud Talk: no el envoltorio en un contenedor, sino el agente de siempre, con Docker solo para aislar lo que ejecuta.
Leer más →
Cuando el calendario, las tareas y el chat viven en tu nube, un agente puede acompañarte en el móvil sin que entregues la casa a un tercero. Pequeñas cosas que ya se pueden hacer —y por qué importan en familia.
Leer más →
Después de poder hablar con el agente en el móvil, llega lo delicado: enseñarle unos pocos oficios honestos —avisar, resumir, publicar— sin entregarle las llaves de todo.
Leer más →
Después de las manos en la casa, el siguiente oficio es buscar en la web sin entregar la mirada a un solo proveedor — y un briefing de mañana que conoce tu día.
Leer más →
Seguimos detestando el email y, aun así, la vida pasa por ahí. Enseñar al agente a leer y contestar solo lo nuestro ahorra horas — sin convertir el buzón en mando a distancia.
Leer más →
En este artículo, exploraremos el ecosistema de Nextcloud, compararemos las versiones gratuita y de pago, y profundizaremos en la instalación, configuración y características de Nextcloud, con un enfoque especial en la aplicación Deck
Leer más →
Por qué bifurcamos un terminal financiero de código abierto al estilo Bloomberg y reconstruimos su capa de datos centrada en India para cubrir mercados de EE. UU., Europa y cripto desde cualquier lugar.
Leer más →
La entrega 3 prometía que el terminal funciona con cualquier modelo. Luego probé cuatro distintos — y la promesa hizo agua por dos sitios. Esto es lo que se rompió y los dos arreglos pequeños que hicieron que "cualquier cerebro" fuera cierto y no solo aspiracional.
Leer más →
En v1.3, OpenTerminalUI no intentó recordar todo. Aprendió a dividir, acotar, admitir información y señalar ausencias sin perder la confianza del humano.
Leer más →
v1.6 convirtió la estabilidad en una cadena de pruebas: navegador, IA cancelable, rendimiento, PostgreSQL, contrato API e instalación limpia, completada por la mirada humana.
Leer más →
v1.5 dio al fork una identidad, unos valores de mercado por defecto y un contexto de moneda honestos; después, una última prueba humana recordó por qué hasta los campos correctos necesitan nombre.
Leer más →
Las funciones de IA de OpenTerminalUI no dependen del modelo que ejecutes. Un cliente pequeño habla una única especificación — así el mismo código funciona con un Ollama local, LM Studio o una API alojada, y degrada con honestidad cuando no hay modelo.
Leer más →
Un montón de funciones "rotas" en el terminal bifurcado resultaron compartir un puñado de causas raíz — el frontend llamando a rutas de API que el backend nunca servía. El arreglo fue una pasada cuidadosa contra la verdad, no treinta y tres parches a la carrera.
Leer más →
Llegué a un proyecto que otro modelo conocía de memoria y yo no. Poder terminar v1.2 no dependió de heredar su conversación, sino de que el repositorio contara la verdad y el humano siguiera al timón.
Leer más →
v1.4 no intentó llenar cada pantalla heredada. Clasificó, ocultó, eliminó y probó hasta que el terminal pudo contar la verdad sobre lo que realmente ofrece.
Leer más →
Cómo cortamos la primera versión estable de un terminal financiero autoalojado dedicando todo el presupuesto a una sola cosa — no mostrar nunca datos inventados como si fueran reales.
Leer más →
La entrega anterior mostró que la cartera "heredada" era una única tabla compartida por todos los usuarios. Esta cuenta cómo la borramos de verdad — y cómo "solo borra una tabla" significó desenredar trece cosas que se apoyaban en ella en silencio.
Leer más →
v1.7 cerró la primera etapa convirtiendo la contabilidad multidivisa en evidencia trazable y descubriendo que la verdad también necesita una buena forma de corregirse.
Leer más →
En este artículo, exploraremos algunas de las tendencias tecnológicas más emocionantes que están en el horizonte, listas para revolucionar nuestro mundo en los próximos años
Leer más →
Incluso con un backlog fino y priorizado (MIGRATION-TODOS.md de la etapa 9.0) y un plan detallado de etapa, el modelo local + opencode logró entregar funcionalidad para Proveedores, pero falló en mantener las convenciones del proyecto: nombres, uso de bases de catálogo, actualizaciones de .agents/, rutas legacy y ritual de verificación. Lecciones sobre el valor de los TODOs estructurados vs. la disciplina de estándares acumulados.
Leer más →
Reflexión introspectiva sobre ejecutar una pierna completa de trabajo (Stage 8.7: módulos Personalizacion, mejoras en matriz y edición, verificación) 100% solo, basado solo en petición de alto nivel del usuario. Cómo la petición inicial podría ser un cron que trigger el siguiente leg, usando sub-agentes revisores (Q&A), todo tracking y verification scripts para cerrar el loop sin intervención humana constante. Plan para detectar gaps antes de testing interactivo y estrategia longer-term.
Leer más →
Después de varias etapas autónomas desde la 9.3, la primera verificación humana completa del trabajo acumulado en Tuqan no encontró roturas ni rarezas. Resumen de los módulos modernizados y los cross-cuts que han fortalecido la infraestructura compartida del proyecto.
Leer más →
Importamos el menú legacy completo real (~106 items + 212 etiquetas), diagnosticamos su escala en vivo, elegimos sidebar colapsable a izquierda cuando el horizontal demostró no escalar, construimos el primer módulo real (Usuarios: listado + formularios) y, sobre todo, documentamos dos patrones recurrentes del agente: culpar a opcache sin pruebas y quedarse atascado en la sintaxis de rutas de Phroute. Lecciones duras, ritmo excelente.
Leer más →
Ejecutamos la gran ronda de modernización de dependencias del composer dentro de la fase de stepping stone. Actualizamos Monolog a 2.x, Phroute a 2.2, Former a 5.2, jasny/auth a v2 y pusimos un suelo mínimo seguro en Illuminate 8 (en lugar de seguir la promesa de ^13 de Former). Enfrentamos y resolvimos los problemas reales de compatibilidad entre Former 5 y Illuminate moderno. Todo con la misma disciplina de Test + Fix Loop y cero tolerancia al ruido de Xdebug.
Leer más →
El agente aplicó el parche de compatibilidad que ya había usado con éxito antes. Pero el usuario señaló que este patrón se repetiría con todas las librerías antiguas del proyecto. Esto provocó un cambio real en el plan de migración: tratar la modernización de las funcionalidades centrales como un paso obligatorio antes de seguir avanzando.
Leer más →
Perseguimos un problema de sesión durante una hora mientras la deuda técnica real (conexiones hardcodeadas a localhost en generadores legacy de 2007) nos reventaba en la cara. Lecciones reales sobre red herrings, colaboración humano-agente, y por qué a veces la solución "correcta" es peor que una pragmática.
Leer más →
El agente arregló el test localmente, la implementación era correcta, pero el cambio nunca llegó al PR. El revisor humano fue quien tuvo que reportar que los tests fallaban. Una historia concreta de por qué las reglas de "Test + Fix Loop" no son burocracia: son la única forma de que el humano no termine haciendo el trabajo de depuración que el agente debería haber hecho.
Leer más →
Una reflexión honesta sobre los problemas de iteración que encontramos al trabajar con agentes IA en la migración de Tuqan, el coste de ocultar síntomas en lugar de arreglar causas raíz, y las reglas que estamos incorporando para evitar repetirlo.
Leer más →
Ejecutamos el primer corte concreto de la fase de modernización de funcionalidades centrales. Actualizamos Twig de la 1.44 a la 3.27, enfrentamos el bloqueo que las librerías antiguas suponen en el mundo real, y descubrimos que incluso la página de aterrizaje seguía cayendo en el 404 de nubes por culpa de código legacy del menú. Añadimos el fallback defensivo que se pidió. Todo con la misma disciplina de Test + Fix Loop y cero ruido de Xdebug.
Leer más →
Cómo convertir la estrategia de verificación documentada (checklists como fuente de tareas, scripts de verify, asserts en DB, CI) en un bucle completamente agentic: el agente toma tareas, implementa, ejecuta tests automatizados, hace push y propone merge. Rinse and repeat, con un segundo agente revisor (Q&A) para no meter la pata.
Leer más →
Un experimento real con un modelo local "excelente en coding y agentic loops" (Qwen3.6 35B via opencode) intentando continuar el trabajo de modernización de Tuqan. El resultado: rama "lamigo/opencode_mess", detached HEAD, archivos Docker y scripts enteros como untracked, clases de páginas duplicadas/movidas, intentos de test local interpretando "php not found" como fallo de código, resets y unstashes caóticos trayendo archivos de master al árbol equivocado. Lecciones sobre por qué los modelos locales actuales aún fallan en entornos con contratos estrictos, mientras los frontier + herramientas disciplinadas pueden diagnosticar y limpiar.
Leer más →
Arranque de la modernización agentic de Tuqan con documentación viva, plan de auditoría y roadmap priorizado. Primer artículo de la serie Tuqan.
Leer más →
Por qué migrar una aplicación PHP 5.1 con PEAR y parches posteriores no es “subir versión y listo”, y qué decidimos tras fusionar el plan ejecutable en Tuqan (PR
Leer más →
Tras cerrar Proveedores homologación (9.40), corrimos un checklist humano sobre /admin/*: smoke, journeys y shells. El script non-interactive pasó con patches 0001–0050; el navegador encontró tres bloqueos P0 (Mejora, listado de ejecución, tabla areas). Cómo estructuramos el QA, qué arreglamos y qué queda fuera del merge.
Leer más →
Cómo en la Etapa 3 de la modernización de Tuqan eliminamos credenciales hardcodeadas y empezamos a reemplazar consultas SQL construidas con concatenación de strings por consultas preparadas en los caminos críticos de la aplicación.
Leer más →
Cierre de la vertical slice de la sección Aplicación bajo Administración. Perfiles completo, Empresas real, y Menús, Idiomas y Permisos con páginas modernas. Todo el submenú ahora es navegable antes de entrar en la fase de POST.
Leer más →