NPIversoOS: me he construido mi propio sistema operativo
Llevaba meses con los proyectos dispersos por mil pestañas. Así que me senté y me construí un sistema operativo personal que vive en localhost. Te lo cuento.
Voy a contarte una cosa que llevo semanas cocinando y que ya uso todos los días. Se llama NPIverso OS y es, literalmente, mi sistema operativo personal. Corre en localhost, tiene pinta de escritorio de macOS mezclado con Windows, y desde ahí gestiono todo el ecosistema NPIverso sin abrir ni una sola pestaña más de las que necesito.
No es Notion. No es Linear. No es ninguna app de productividad de las que están de moda. Es algo que he hecho yo, para mí, que entiende cómo trabajo y qué proyectos tengo entre manos. Y la verdad es que ha cambiado mi forma de empezar el día.
El problema: 15 pestañas y la cabeza echando humo
Llevo 40 años trasteando con tecnología y nunca había tenido tantos frentes abiertos a la vez como ahora. A ver si te suena la mañana tipo:
- Pestaña 1: el panel de Vercel para ver si el último deploy ha ido bien.
- Pestaña 2: Turso, a comprobar si el cron nocturno ha metido el artículo.
- Pestaña 3: YouTube Studio, a mirar las vistas del canal de música.
- Pestaña 4: Search Console.
- Pestaña 5: el editor del blog.
- Pestaña 6: Claude.
- Pestaña 7: ChatGPT (porque a veces uno y a veces otro).
- Pestaña 8: Suno, Midjourney, DistroKid...
Y así hasta que el navegador se queda sin memoria y yo sin paciencia. Cada herramienta vive en su isla, ninguna sabe nada de las otras, y yo soy el pegamento humano que las conecta a base de copiar y pegar.
La gota que colmó el vaso fue una mañana en la que tardé veinte minutos en encontrar la URL del último borrador que estaba editando. Veinte minutos. Para abrir una página. Ahí dije: hasta aquí.
La idea: un escritorio que entienda mi ecosistema
Lo que quería era simple de explicar y bastante menos simple de construir: una pantalla, mi pantalla, donde estuviera todo. Que cuando arrancara el ordenador por la mañana abriera una sola cosa y desde ahí pudiera ir a cualquier proyecto, lanzar cualquier herramienta y ver el estado de todo.
No quería instalar nada raro, no quería depender de un SaaS que mañana cierra, y sobre todo no quería adaptarme yo a la herramienta. Quería que la herramienta se adaptara a mí.
Decisión: Node.js con Express, corriendo en local. HTML, CSS y JavaScript vanilla, sin frameworks. Una sola página, hoy ya por las 4000 líneas, y lo que haga falta a futuro. Nada de React, nada de build steps, nada de npm install cada dos por tres. Abro el editor, cambio una línea, recargo y listo.
Cómo se ve y cómo se siente
Cuando entras en localhost te encuentras un escritorio con wallpaper, reloj, píldoras de estado del sistema y un dock inferior con todos los proyectos. Las ventanas son flotantes, arrastrables, con los tres botoncitos de control a la derecha al estilo Windows: minimizar, maximizar y cerrar.
Es un truco mental que funciona. Cuando algo parece un sistema operativo, lo tratas como un sistema operativo. Abres ventanas, las colocas, las superpones. Mi cabeza ya sabe cómo gestionar eso desde hace décadas.
En el dock están los proyectos del ecosistema NPIverso:
- NPIverso AI, el blog de IA con Next.js, Vercel y Turso, donde un cron lanza a Claude cada noche para que genere un articulo con las noticias que me interesan, con búsqueda web.
- Música Vikinga Épica, mi canal de YouTube de música épica vikinga.
- NPIverso.com, la web principal revista gamer, uno de mis hobbies.
- Y los que están en construcción: virtuals influencers, musica electronica, LoRAs.
Cada uno abre en su propia ventana, con su Dashboard, sus Tareas, sus accesos directos a las herramientas que ese proyecto necesita. El dashboard de NPIverso AI te lleva directo a Turso y a Vercel. El de Música Vikinga, a YouTube Studio y DistroKid. Cada proyecto tiene su contexto, no un menú genérico.
Las piezas que de verdad uso
Más allá del escritorio bonito, hay tres cosas que uso todos los días.
Glitcho, el copiloto persistente
Glitcho es una ventana de IA flotante a la que puedo invocar desde cualquier vista. No tengo que cambiar de pestaña, no tengo que perder el contexto de lo que estoy haciendo. Le tiro una pregunta, le pido que me reescriba un párrafo o que me explique un error de Vercel, y sigue ahí mientras yo sigo en lo mío.
La diferencia con tener ChatGPT en otra pestaña es brutal. El copiloto vive dentro del flujo, no fuera.
Tareas globales
Una ventana que agrega las tareas pendientes de todos los proyectos activos, con filtros por proyecto y prioridad. Antes tenía las tareas en tres sitios distintos: una libreta, notas en el móvil y comentarios // TODO repartidos por el código.
Ahora todo entra por el mismo embudo y lo veo de un vistazo. Si abro la mañana y hay tres rojas, sé exactamente por dónde empezar.
El panel admin de NPIverso AI
Tengo lista de artículos del blog, editor con subida de imagen directa a Vercel Blob, botones de publicar, despublicar y eliminar, y lo más bonito: el generador de artículos.
Lanzo el cron de Claude desde un botón, con búsqueda web activada, y veo el output en streaming en tiempo real gracias a Server-Sent Events. Es como ver a la IA pensar en directo dentro de mi escritorio. Cuando termina, otro botón revalida la caché del home y el artículo está vivo en producción.
Lo que antes era abrir terminal, lanzar un script, esperar, ver logs en otra ventana, ir al admin de Vercel a tocar caché... ahora son dos clics en mi escritorio.
El stack, sin postureo
Para quien le interese la trastienda:
- Node.js + Express sirviendo el frontend y un puñado de endpoints en
localhost. - Turso (libsql) como base de datos. Ataco directamente desde el OS, sin pasar por la API de Next.js. Más rápido y sin saltos.
- @vercel/blob para subir imágenes desde el editor sin pelearme con multer ni con S3.
- Anthropic Claude API con la herramienta de
web_searchpara que los artículos del blog se generen con información fresca. - HTML, CSS y JS vanilla, una sola página. Sin React, sin Vue, sin Tailwind. Cero dependencias de frontend.
- Server-Sent Events para el streaming del cron, que es la solución elegante cuando solo necesitas que el servidor empuje datos al cliente.
El index.html ya supera las 4000 líneas y no tengo ningún problema con eso. Funciona, lo entiendo, lo modifico en treinta segundos. Cuando algo es solo para ti, optimizar para arquitectura limpia es perder el tiempo. Optimizas para velocidad de iteración.
Por qué te cuento todo esto
No es para que te montes lo mismo. Tu ecosistema no es el mío. Lo que te quiero contar es otra cosa.
Llevamos años escuchando que la productividad personal pasa por suscribirte a la última app de moda. Que si Notion, que si Obsidian, que si Linear. Y todas son herramientas estupendas, pero ninguna sabe nada de ti. Ninguna entiende que NPIverso AI necesita un botón de revalidar caché justo al lado del editor. Ninguna sabe que el canal de música y el blog de IA comparten algunas tareas y otras no.
Las herramientas genéricas resuelven problemas genéricos. A partir de cierto nivel de complejidad personal, lo genérico deja de ser suficiente.
Lo que he aprendido construyendo NPIverso OS es que construirte tu propia herramienta no es perder tiempo, es ganar palanca. Cada minuto que invierto en mejorar el OS me lo devuelve multiplicado durante los meses siguientes.
Y con las IAs actuales, montarte algo así está al alcance de cualquiera que sepa lo que quiere. No hace falta ser ingeniero senior. Hace falta tener claro qué te molesta de cómo trabajas hoy y atreverte a escribir las primeras 200 líneas. El resto va saliendo.
Mi escritorio personal vive en localhost, no me lo puede tirar nadie, no me cobra nada al mes y se parece exactamente a la forma que tiene mi cabeza de organizar el mundo. Lleva semanas funcionando y cada día le añado algo nuevo cuando detecto un roce.
Si llevas tiempo dándole vueltas a una idea parecida, mi consejo es uno: abre un archivo, escribe app.listen(3333) y empieza. Lo siguiente lo descubres por el camino.
