Tras ver Iron Man, desde niño soñaba con hacer un asistente de IA: con Voice Commander configuré el control por voz en Windows 98 para que moviera el ratón y abriera programas, pero resultaba más espectacular que útil. Incluso el reconocimiento de voz era entonces una tarea enorme, y poder conversar no se esperaba antes de cien años.
Llegó 2024.
Maduré como programador, aprendí stacks y frameworks, y creé mis propias plantillas para levantar cualquier proyecto rápido. Así fui acercándome poco a poco a las startups, mientras hacía el trabajo habitual por encargo.
Escribí una tonelada de código con ChatGPT y entendí que podía escribir sobre mis plantillas. Solo había que explicarle cómo está montado todo.
Puede trabajar con mi base de datos. Solo hay que pedírselo con tino y darle acceso.
Hay mucha rutina, y GPT parecía la forma ideal de quitármela de encima por fin.
Primera versión. Es el núcleo de la aplicación: recibe texto, analiza la tarea, pregunta a GPT qué hay que completar y lo escribe. En la práctica es el Copilot que ahora se añade a muchos IDE.

Cuando codifiqué los primeros resultados, quedó claro: no tengo archivos de código, tengo proyectos. Añadí soporte de proyectos.
Un proyecto no es una sola carpeta. Hice un escáner de carpetas y un detector del tipo de cosa que hay en cada una. En esa etapa Jarvis obtuvo su propia base de proyectos. Ante carpetas desconocidas preguntaba qué proyecto era y a qué se dedicaba, y lo metía en el pre-prompt si había que programar algo, sabiendo más del proyecto.
Gestión de la base de datos. Hacía tiempo que quería que él mismo la manejara a partir de mi petición, y lo hice, añadiendo una comprobación de que el código es correcto. Puede crear no un solo campo, sino todas las tablas desde cero y rellenarlas si hace falta.
Junto con eso le enseñé a hacerme preguntas y a sentirse en el ordenador como en casa: conoce los procesos en marcha, las ventanas, los archivos y en qué estoy ahora, para que yo no tenga que explicarle dónde hacer cada cosa.
Para programar con más comodidad, le pedí a Jarvis que me escribiera un plugin de VS Code que obtuviera la información con delicadeza y se la devolviera a sí mismo para analizarla. Y así, sin saber nada de escribir plugins, lo hice.
Jarvis lo hizo para sí mismo.
Y ahora, además de la interfaz de entrada, tenía una integración estrecha con el IDE.
Sacaba archivos de VS Code, detectaba solo el proyecto en marcha, extraía la estructura de las tablas y hacía el despliegue local.

PERO. A veces no está claro qué reescribió exactamente. Le añadí soporte de Git para ver lo nuevo y poder revertir rápido. Ahora Jarvis creaba una rama aparte para su cambio y hacía commit él mismo de los que salían bien.
Había llegado el momento de acercarme a mis plantillas y crear lo necesario en segundos.
Primero, la instalación de proyectos nuevos: trasladé todos mis scripts de instalación y los reescribí en C# con ayuda de Jarvis.
Añadí soporte de Vue 3 + TypeScript, Yii2, Bash y demás, pero lo principal es mi regenerador automático de modelos a partir de las tablas.
Ahora Jarvis no solo puede crear la base: configura los modelos él mismo. Me quité de encima una rutina enorme. Falta que también ajuste las migraciones.
Trabajo
Jarvis ya ha pasado por varios de mis proyectos, y cada vez quedan menos sitios que no haya tocado y en los que no haya dejado su rama de git, porque es demasiado cómodo.
¿Qué vendrá después?
Ya veremos.
