ControlFSSoftware para Windows
Los archivos de Windows en el sofá, con el mando en la mano.
ControlFS es un gestor de archivos para Windows que navega, organiza, muestra y descomprime archivos solo con la cruceta y los botones de un mando de Xbox, PlayStation o Nintendo. El código es abierto, en C# con .NET 10 y WinUI 3, y el repositorio publica un benchmark frente al Explorador de archivos y Files, incluidos los puntos en que pierde.
Código abierto

Ficha técnica
- Cliente
- Producto propio de Next, código abierto
- Sector
- Software para Windows
- Plataformas
- Desktop / Código abierto
- Período
- 2026
- Estado
- Código abierto
- Qué hicimos
- App nativa para Windows
- Navegación completa con mando
- Extractor y creación de archivos comprimidos
- Teléfono como mando por código QR
- Actualizaciones automáticas verificadas
- Benchmark público con método
- Stack
- C# / .NET 10 / WinUI 3 / SDL3
Cifras
- menos memoria privada que Files, con 59 MB frente a 109 MB
- 45%
- benchmark en GitHub Actions, mediana de 3 ejecuciones
- de conjunto de trabajo en reposo, medido después de la limpieza que solo hace ControlFS
- 18 MB
- benchmark en GitHub Actions, mediana de 3 ejecuciones
- de memoria privada por encima del Explorador, donde ControlFS pierde
- 2,5 MB
- benchmark en GitHub Actions, mediana de 3 ejecuciones
- de un núcleo de CPU en reposo, frente a cerca de 0% del Explorador
- 0,31%
- benchmark en GitHub Actions, mediana de 3 ejecuciones
El punto de partida
En un PC conectado a la TV o en un portátil con Windows, el mando ya está en la mano. Para abrir una carpeta, extraer un ZIP descargado o ver un video, la persona vuelve al ratón y al teclado, porque el Explorador de archivos se diseñó para ellos.
ControlFS se hizo para ese uso. Funciona solo en el PC, sin inicio de sesión y sin telemetría, y el código está publicado bajo la licencia AGPL-3.0-only.

Hecho para el mando
Todo funciona con la cruceta. Los botones siguen la posición física, así que confirmar y volver quedan en el mismo lugar en mandos de Xbox, PlayStation y Nintendo, y el pie de pantalla muestra los iconos del mando conectado junto a cada acción. Para escribir, hay un teclado en pantalla propio, con acentos y símbolos.
También se puede usar el teléfono como mando. El PC muestra un código QR, el teléfono se conecta por la red local sin instalar nada, y la conexión está cifrada con AES-256-GCM, con emparejamiento por código y una autorización explícita en el PC.
Alrededor de eso están las funciones de un gestor de archivos completo:
- pestañas, dos paneles y búsqueda;
- copiar, mover y renombrar con deshacer y rehacer, operaciones que se pausan y se reanudan, y papelera;
- extracción de ZIP (incluidos ZIP64 y AES), 7z, RAR4, RAR5, TAR y GZ, con volúmenes divididos y prueba de integridad;
- creación de ZIP, TAR.GZ y 7z;
- vista previa de imagen, texto, PDF, audio y video con subtítulos;
- montaje de ISO, IMG, VHD y VHDX;
- lectura con el Narrador de Windows, y tema claro y oscuro.

Decisiones técnicas
La app es nativa, en C# con .NET 10 y WinUI 3, sin Electron, sin navegador integrado y sin web view. La elección viene del uso: ControlFS tiene que caber junto a un juego abierto. Minimizado o detrás del juego, baja su propia prioridad, entra en el modo de eficiencia de Windows y devuelve memoria al sistema. En ese estado, se queda en unos 12 MB de conjunto de trabajo.
La lectura de los mandos pasa por SDL3. Hasta septiembre de 2026 se ejecutaba cada 8 ms incluso sin mando conectado, y eso explicaba la mayor parte del 1,4% a 1,7% de CPU que la app gastaba en reposo. Hoy, sin mando, la app solo comprueba cada 250 ms si ha llegado alguno, y la medición siguiente quedó entre 0,47% y 0,62% de un núcleo.
La extracción sigue reglas fijas. Nada se escribe fuera de la carpeta de destino, los enlaces se bloquean, las colisiones de nombre se rechazan, hay límites de tamaño, los archivos pasan por una carpeta temporal y se verifica el CRC. Las actualizaciones automáticas solo instalan un paquete cuyo manifiesto esté firmado con la clave del proyecto y cuyos SHA-256 y tamaño coincidan.
El benchmark, incluso donde pierde
El README publica la medición con el método y los enlaces de las ejecuciones de CI. Las tres apps abren la misma carpeta con 5.000 archivos pequeños en un runner windows-latest de GitHub Actions. Con la ventana abierta, la medición dura 10 segundos y suma todos los procesos de cada app. Cada valor es la mediana de 3 ejecuciones, hechas el 28 de septiembre de 2026. La CPU está en porcentaje de un núcleo.
| Medida | ControlFS | Explorador | Files |
|---|---|---|---|
| Memoria privada (MB) | 59 | 56,5 | 109 |
| Conjunto de trabajo (MB) | 18 | 144 | 264 |
| CPU en reposo (%) | 0,31 | ~0 | 0,47 |
En memoria privada, ControlFS usa cerca de un 45% menos que Files. Una ventana del Explorador usa cerca de 2,5 MB menos de memoria privada y se queda cerca de 0% de CPU en reposo, frente a cerca de 0,3% de ControlFS. La apertura tarda cerca de un segundo, porque Windows carga .NET y WinUI antes de la primera línea de la app, y el Explorador no paga ese costo porque ya está cargado.
Los 18 MB de conjunto de trabajo se miden después de una limpieza que ControlFS hace una vez para devolver a Windows lo que sobró de la apertura. El Explorador y Files no pasan por esa limpieza, así que la comparación justa es la de la memoria privada. El runner no tiene GPU ni mando conectado, y el README avisa que los números cambian en un PC real.
El documento de rendimiento del repositorio guarda también lo que se descartó, como ReadyToRun, que hizo el ejecutable portátil 21 MB más grande sin abrir la app más rápido.

Cómo está hoy
ControlFS se validó en hardware real con mandos físicos, y la versión 1.0 está en preparación. La versión actual es la 0.17.0-alpha.1, para Windows 11 de 64 bits, con un instalador que se actualiza solo y una versión portátil en un único ejecutable. Los ejecutables aún no tienen firma de código, porque la solicitud a SignPath Foundation está en análisis, y SmartScreen puede avisar en la primera ejecución.
Desde la primera versión alfa, publicada en septiembre de 2026, el changelog registra 21 versiones y supera los 80 KB, con lo que cambió y las limitaciones conocidas de cada una.
