1.0.0
Primera versión estable de HugeDesk. El cambio grande es el rediseño del shell —«Borde», tema Nocturne— bajo una regla madre: nada del chrome se dibuja encima del lienzo. Las ocho superficies flotantes se reducen a cuatro piezas fijas: cinta, riel, barra de estado y orbe.
Shell «Borde»
- Cinta (44px) — chip de space que abre el centro de comandos, chip de rama git, agentes como avatares apilados (desaparecen si no hay agentes) y chip de modelo.
- Riel — «+» primario para crear workspace, separado por línea de los verbos que crean paneles dentro del space. Badge en Git.
- Barra de estado (28px) — añade el dev server detectado; el zoom baja aquí desde el pill flotante.
- Orbe — refleja el estado real: lee
agentsStorede todos los spaces y usa su heartbeat, así un agente que deja de escupir output ya no se queda pintado como «trabajando» para siempre. Un arco girando por agente, barras al hablar, y etiqueta que nombra qué pasa y dónde. - Centro de comandos — spaces con rama y estado, flujos, acciones, paneles y archivos, con buscador. Un único catálogo (
commands.ts) alimenta también el@y/del orbe: preguntarle a Huge y navegar son el mismo gesto, sin dos listas que se contradigan. - Minimapa del lienzo navegable abajo a la izquierda, con el mundo encuadrado como unión de paneles y viewport.
Ctrl+Shift+Kabre el orbe en voz (ya no un modal). El hilo de chat pasa a ser un panel del lienzo en vez de overlay: mismo store, dos ventanas a la misma conversación.
Fuera: AllWorkspacesModal, WorkspaceThumb, HugeChatModal, VoiceOrb, ZoomControl.
Navegador y archivos
- Sesión de navegador embebida — launcher, menú de sesión, pestañas y webview guard.
- Gestor de archivos — operaciones de fs, diálogo de propiedades.
- Nodo HTTP en flujos y minimapa en el editor de flujos.
Apagado ordenado
La limpieza colgaba solo de window-all-closed, que no ocurre en la mitad de las formas reales de morir (recuperación GPU, watchdog de quit, crash, SIGKILL, Ctrl+C en dev). Cada muerte por esas vías dejaba vivos ptys, ollama y dev servers, y al iterar se apilaban generaciones hasta congelar el sistema. Ahora runShutdown() es idempotente y síncrona, y los pids se persisten para matarlos en el arranque siguiente.
Rendimiento
- Un solo poll de git (
useGitStatus) para cinta, riel y barra — antes eran tres procesos cada 15 s sobre la misma carpeta. - Detección del dev server en el proceso main (ve todas las terminales, incluidas las de spaces inactivos).
Correcciones
- Build multiplataforma:
browserLauncher.tscolisionaba en case conBrowserLauncher.tsx; en filesystems case-insensitive (macOS/Windows) el import del componente resolvía al módulo de helpers y el build solo pasaba en Linux.
Descargas
| Plataforma | Archivo |
|---|---|
| macOS (Apple Silicon) | HugeDesk-1.0.0-arm64.dmg |
| Windows | HugeDesk-Setup-1.0.0.exe |
| Linux | HugeDesk-1.0.0.AppImage · hugedesk-1.0.0.x86_64.rpm |
El build de macOS es arm64 únicamente. 17 suites e2e en verde; 124 archivos cambiados desde v0.5.0.