- Seleccion de modelo: JARVIS cambia su cerebro en caliente (elegir_modelo). - Ventanas en Wayland: backend para Sway e Hyprland (ventanas-wayland.sh). - ROADMAP.md y CONTRIBUTING.md: tareas acotadas y como empezar, para animar commits (mas gestores, mas acciones, probar otros modelos, el RAG). - docs/rag.md: tabla explicita de que se publica y que no del RAG; nota de que un clon recien hecho ya tiene RAG util (man pages + glosario) sin datos privados. - README enlaza el roadmap y menciona la eleccion de modelo.
3.7 KiB
Roadmap
Cosas por hacer, ordenadas por dónde aporta más un commit. No es una lista de deseos: cada punto está acotado para que se pueda coger, hacer y medir. Si algo te interesa, CONTRIBUTING.md dice cómo probarlo.
Ventanas en más gestores
El motor de ventanas es X11 (config/ventanas.sh, con xdotool). En Wayland ya
hay un backend para Sway e Hyprland (config/ventanas-wayland.sh), pero está
a medias:
- Terminar Sway/Hyprland.
maximiza,restaurayminimizason fiables; las mitades (izquierda/derecha/centro) están escritas de la documentación y necesitan probarse en un equipo real —el flotante y las unidades (ppt,%) cambian por versión—. Es un primer commit ideal si usas uno de los dos. - KDE Plasma (Wayland). Vía
kdotoolo scripting de KWin. Falta el backend. - GNOME Wayland. No hay API general para mover ventanas ajenas (es su modelo de seguridad); requiere una extensión. Documentar la limitación o escribir el puente a una extensión.
- Mover entre pantallas y a escritorios virtuales en Wayland: el X11 lo hace, los backends de Wayland aún no.
Más acciones
El catálogo son 150 órdenes (nucleo/datos/acciones.json). Cada una es JSON:
frases que la disparan, un comando de shell, y una plantilla de respuesta. Añadir
una es un commit pequeño y satisfactorio. Ideas que faltan:
- Multimedia: play/pausa, siguiente, volumen (
playerctl,wpctl). - Brillo de pantalla (
brightnessctl). - Portapapeles: leer/copiar (
wl-clipboard/xclip). - Capturas de pantalla (
grim,spectacle,gnome-screenshot). - Energía: bloquear, suspender, apagar (con confirmación).
- Red: a qué wifi conectar (
nmcli). - Notificaciones recientes, calendario, temporizadores.
Al añadir acciones que dependan de una herramienta, degradar con gracia si no está (como hacen las de ventanas).
Probar con otros modelos
JARVIS ya puede elegir su modelo en caliente (herramienta elegir_modelo, y
JARVIS_MODELO para fijarlo). Lo que falta es saber cuáles van bien:
- Medir el tool-calling de más modelos locales (llama, mistral, gemma,
phi...) con el mismo criterio del RAG (
nucleo/saber/enriquece/eval_set.jsonlda la idea). Cuáles emitentool_callsfiables y cuáles no. - Auto-escalado: que suba a un modelo potente solo cuando la pregunta lo pida, y vuelva al rápido. Hoy lo decide el propio modelo; se puede afinar.
- Un modelo pensado para voz: respuestas cortas, sin divagar.
El RAG
- Reranker: un cross-encoder sobre los primeros k. Medido que un embedder transformer no compensa (ver docs/rag.md); un reranker es la otra palanca sin probar.
- Corpus de demostración público para poder ver el RAG funcionando sin los apuntes privados de nadie (man pages, docs de una herramienta libre).
- Troceado que mantenga el bloque de comandos con su encabezado (hoy separa algún comando de su contexto).
Voz
- Más idiomas. Hoy es castellano de punta a punta (STT, prompt, TTS). Piper y whisper tienen modelos de otros idiomas; falta parametrizarlo.
- Fine-tuning de la voz (Piper/VITS) para clonar mejor con poco audio.
Fine-tuning del modelo
entrena/ tiene el pipeline QLoRA, bloqueado porque qwen3.5 es multimodal y
FastLanguageModel lo mete por el camino de solo texto. El arreglo apunta a
FastVisionModel con finetune_vision_layers=False. Sin probar.
Empaquetado
- Perfiles de hardware en
install.sh(4 GB / 12 GB / solo-CPU) que ajusten el modelo y el contexto solos. - Detección de rutas más fina en los scripts de
config/yvoz/, que aún asumen parte de la disposición del autor.