La que habia era la promocional de Newelle, con un proveedor en la nube en la barra de titulo y ningun rastro de JARVIS. Ahora es el panel a pantalla completa corriendo en local: reactor, estado de la maquina, catalogo de acciones y las tarjetas de lo hecho. Las rutas de los resultados van desenfocadas, como en las del carril verde. |
||
|---|---|---|
| azul/docs | ||
| config | ||
| docs | ||
| entrena | ||
| nucleo | ||
| voz | ||
| .gitignore | ||
| AGENTS.md | ||
| ATRIBUCION.md | ||
| CONTRIBUTING.md | ||
| install.sh | ||
| jarvis-icon.png | ||
| jarvis-icon.svg | ||
| jarvis-launcher.sh | ||
| LICENSE | ||
| preview_reactor.py | ||
| PRIVACIDAD.md | ||
| probar_rag.sh | ||
| README.md | ||
| requirements.txt | ||
| ROADMAP.md | ||
JARVIS-AZUL 🔵
El primer carril de JARVIS, montado sobre Newelle (el asistente de escritorio para GNOME, GPL). Hoy está congelado: sirvió para arrancar rápido y aprender qué se quería, y esas lecciones dieron pie al núcleo naranja. Esta rama lo documenta; el master es el núcleo naranja.
Para qué sirvió
JARVIS tiene tres carriles: azul (Newelle, este, congelado), naranja (el núcleo propio) y verde (Hermes Agent). El azul fue el punto de partida: en vez de escribir un asistente desde cero, se cogió Newelle —una app de GNOME que ya trae chat con LLM local, RAG de documentos, memoria, TTS, búsqueda web y extensiones— y se le puso encima la identidad de JARVIS.
Fue la forma más rápida de tener algo que funcionara y, sobre todo, de descubrir qué faltaba. Lo que se aprendió aquí es lo que define hoy al naranja.
El interfaz
El panel a pantalla completa: el reactor, el estado de la máquina a la izquierda, el catálogo de acciones a la derecha y las tarjetas de lo ya hecho. Todo en local —Ollama en 127.0.0.1—. Las rutas de los resultados van tapadas.
El stack
| Capa | Pieza | Licencia | ¿Nube? |
|---|---|---|---|
| Front-end | Newelle (GNOME, Flatpak) | GPL | no |
| Cerebro | Ollama · modelo qwen local |
Apache-2.0 | no — 127.0.0.1 |
| Hablar | Piper (voz clonada) | MIT | no |
| Oír | Whisper local | MIT | no |
| Saber | Documentos locales de Newelle (RAG) | — | no |
Lo que JARVIS le puso encima
Newelle es genérico; JARVIS lo personalizó (los ficheros viven en config/ del núcleo):
- Persona y prompt propios (
set_persona.py). - Voz por Piper, la misma cadena de audio que usa el naranja (
jarvis-piper.sh,jarvis-voz.sh). - Modelo local afinado (
qwen3.5-4b-jarvis.Modelfile,apuntar_modelo_jarvis.py). - Herramientas propias.
- Panel a pantalla completa (
jarvis_full): reactor, estado de la máquina, catálogo de acciones y el registro de lo hecho, sin pasar por el chat.
Por qué se congeló
Newelle es potente, pero va empaquetado como Flatpak sobre GNOME, y ese sandbox limita lo que el asistente puede tocar en la máquina. Se quería más: control total del núcleo —latencia baja, acciones rápidas que no pasan por el modelo, root gestionado a demanda, un panel que no dependa del ciclo de vida de la app—. Nada de eso encajaba bien dentro de la app de escritorio de otro.
Así que el azul se congeló y nació el carril naranja, un núcleo escrito a medida. El azul se queda como referencia y como reconocimiento: fue el que enseñó el camino.
Newelle es de @qwersyk (GPL). Este carril es esa base con la capa de JARVIS encima. Para el núcleo actual, ver la rama master; para el banco de pruebas agéntico, la rama JARVIS-GREEN.
