Avanzado
Este capítulo reúne las superficies para usuarios avanzados de la app: aquellas a las que recurres de vez en cuando, no en cada sesión. Su pieza central es el explorador de archivos ext4 integrado, que abre las imágenes de disco de un espacio de trabajo directamente en tu Mac sin arrancar la VM: para recuperar un archivo de un espacio de trabajo que preferirías no iniciar, o para reparar uno que no arranca. Una breve sección al final documenta dos valores predeterminados de configuración de bajo nivel.
Todo lo aquí descrito supone que te manejas con el modelo de almacenamiento de Espacios de trabajo y Sesiones.
El explorador de archivos ext4
Cada espacio de trabajo guarda sus datos en imágenes de disco Linux ext4: el disco del sistema disk.img y la imagen de inicio home.img. macOS no tiene soporte nativo para ext4, así que normalmente la única forma de ver el interior de esas imágenes es arrancar la VM. Bromure Agentic Coding evita esto con su propio lector y escritor ext4 en espacio de usuario y sin dependencias: analiza directamente el formato en disco y te muestra el árbol.
Espacios de trabajo ▸ Abrir archivo ext4… abre cualquier .img ext4 (también ext2 o ext3) — un sistema de archivos en bruto o un disco particionado MBR/GPT — en una ventana estilo Finder. No se monta nada, no arranca ninguna VM y no se necesitan privilegios elevados.
Nota: La imagen se abre en modo solo lectura de forma predeterminada, algo seguro incluso si la VM de un espacio de trabajo todavía tiene el disco conectado. La edición es un paso independiente y explícitamente restringido (consulta Editar una imagen).
Qué puedes abrir: los discos dentro de un espacio de trabajo
Un espacio de trabajo reside en ~/Library/Application Support/BromureAC/profiles/<uuid>/. Vale la pena explorar dos imágenes allí, además de sus instantáneas de reversión:
| Imagen | Qué muestra el explorador | La línea de información de la barra de herramientas indica |
|---|---|---|
disk.img | La raíz del sistema Ubuntu — /etc, /var, /usr, /opt, etcétera. El disco tiene un diseño GPT (una partición EFI de 512 MiB más la raíz ext4); el explorador localiza la raíz ext4 automáticamente. | partition @…MiB |
home.img | El /home/ubuntu del invitado directamente en la raíz del sistema de archivos — dotfiles, checkouts de proyectos, .ssh, historial del shell y la caché de pegado bajo .bromure/. | raw |
checkpoints/<ts>.img | Una instantánea de reversión de disk.img con arranque comprobado. | partition @…MiB |
checkpoints/home/<ts>.img | Una instantánea de reversión de home.img. | raw |
La imagen de inicio se comporta de esta manera porque el invitado la formatea con mkfs.ext4 y la monta sobre /home/ubuntu en el arranque, de modo que el propio directorio raíz de la imagen es esa carpeta de inicio. En un espacio de trabajo que aún usa el antiguo inicio de carpeta compartida no hay ningún home.img que abrir; consulta Sesiones para conocer los modelos de almacenamiento y la actualización única.
Abrir una imagen
- Elige Espacios de trabajo ▸ Abrir archivo ext4….
- Aparece un panel de apertura titulado Abrir imagen de disco ext4 — "Elige una imagen de disco .img ext4 (en bruto o particionada)." — que comienza en
~/Library/Application Support/BromureAC. Navega hasta la carpetaprofiles/<uuid>/de un espacio de trabajo y eligedisk.img,home.imgo un archivo bajocheckpoints/. - El explorador se abre en una ventana titulada ext4 — «nombredearchivo», mostrando la raíz del sistema de archivos.
La línea de información de la barra de herramientas (abajo a la izquierda) resume el volumen: su etiqueta, tamaño total, si el sistema de archivos se encontró en bruto o en un desplazamiento de partición, y su estado — clean, not cleanly unmounted o journal needs recovery. Hay una ventana por imagen; volver a abrir una imagen que ya está abierta simplemente enfoca su ventana.
Explorar, previsualizar y extraer
La vista principal es una tabla de tres columnas — Nombre, Tamaño y Tipo — con los directorios listados primero. El tipo distingue carpetas, archivos y enlaces simbólicos, así como los tipos de nodo especiales de Unix (Char, Block, FIFO, Socket).
- Navegar — haz doble clic en una carpeta para entrar; haz clic en la flecha Arriba de la barra de herramientas para retroceder. La ruta de navegación muestra la ubicación actual.
- Previsualizar — haz doble clic en un archivo, o haz clic derecho sobre él y elige Previsualizar. Los archivos de texto se muestran como texto; los archivos binarios se muestran como un volcado hexadecimal. En cualquier caso, la previsualización está limitada al primer 1 MiB, y el pie de página indica cuántos de los bytes totales del archivo se muestran. Un enlace simbólico se previsualiza como la ruta de su destino.
- Extraer — haz clic derecho en un archivo y elige Extraer… para escribir su contenido completo en tu Mac mediante un panel de guardado. Esta es la vía de solo lectura que usarás con más frecuencia.
Editar una imagen
La edición está deliberadamente detrás de una barrera. Haz clic en Habilitar edición… en la barra de herramientas; aparece una advertencia:
Edita solo una imagen cuya VM de espacio de trabajo esté detenida. Escribir en un disco que una VM en ejecución tiene abierto lo corromperá.
Confirma y la imagen se reabre en modo lectura-escritura, con una insignia naranja de lápiz Editando en la barra de herramientas. El menú contextual de un archivo obtiene entonces Reemplazar…: elige un archivo del anfitrión cuyo contenido sobrescriba el archivo seleccionado in situ. El editor recalcula la suma de comprobación metadata_csum del inodo, de modo que el resultado permanece coherente y no necesita reparación.
Advertencia: El reemplazo es solo in situ. El nuevo contenido debe caber en los bloques ya asignados del archivo — un archivo más grande se rechaza con Ese archivo tendría que crecer (aún no está habilitado crecer, crear ni eliminar archivos). Los archivos con datos en línea no se pueden editar. Las escrituras se rechazan mientras el diario necesita recuperación — ejecuta primero
fsck(más abajo). Y nunca edites una imagen que una VM en ejecución tenga conectada.
Ejecutar fsck
El botón Ejecutar fsck… de la barra de herramientas ejecuta fsck.ext4 (e2fsck) contra la imagen abierta para reproducir el diario y reparar el sistema de archivos. Primero confirma — "¿Ejecutar fsck.ext4 en esta imagen?", señalando que la VM del espacio de trabajo debe estar detenida y que la herramienta puede modificar la imagen — y luego ejecuta una reparación automática forzada. Para una imagen en bruto, fsck se ejecuta directamente sobre el archivo; para un disco particionado, la imagen se conecta con hdiutil sin montarla, se comprueba la porción ext4 y la imagen se desconecta después. No intervienen privilegios elevados.
Los resultados aparecen en una hoja de informe con un resumen en lenguaje claro — "El sistema de archivos está limpio.", "Se corrigieron errores del sistema de archivos." o "Quedan errores del sistema de archivos SIN CORREGIR." — más la salida completa de la herramienta; a continuación la imagen se reabre.
Nota: macOS no incluye
e2fsprogs. Si la herramienta no está presente, una alerta indica fsck.ext4 no está instalado con la soluciónbrew install e2fsprogs. La app busca primero en su propio paquete, luego en$PATHy por último en las ubicaciones keg-only dee2fsprogsde Homebrew.
Cuándo recurrir a él
El explorador convierte el disco de un espacio de trabajo detenido en algo que puedes inspeccionar y rescatar desde el anfitrión:
- Recupera un archivo de un espacio de trabajo que preferirías no arrancar — extrae un cambio sin confirmar o un registro de
home.imgcon Extraer…. - Inspecciona un punto de control antes de revertir, para confirmar que contiene lo que esperas. Combina esto con Restaurar inicio… y Restablecer a la base…, ambos tratados en puntos de control y reversión.
- Rescata un espacio de trabajo que no arranca — reemplaza in situ un archivo de configuración defectuoso y luego ejecuta
fscksi la escritura dejó el diario necesitando recuperación. Consulta Solución de problemas para diagnosticar fallos de arranque.
Valores predeterminados para desarrolladores
Dos ajustes de bajo nivel se leen del dominio de UserDefaults de la app, io.bromure.agentic-coding. Configúralos con defaults write mientras la app no esté en ejecución, y luego reiníciala:
| Clave | Efecto | Predeterminado |
|---|---|---|
vm.homeImageGB | Tamaño aparente (visible para el invitado), en GiB, de una imagen de inicio ext4 recién creada. El archivo del anfitrión es disperso, por lo que esto no cuesta nada de entrada. Limitado a 8–1024. | 64 |
vm.mtu | Límite de MTU para la NIC principal de una VM de espacio de trabajo, escrito en el invitado en cada arranque. El valor predeterminado de 1280 es seguro para VPN (WireGuard, IKEv2 y rutas PMTU corporativas). | 1280 |
Por ejemplo, para que las imágenes de inicio de los futuros espacios de trabajo aparezcan como 128 GiB:
defaults write io.bromure.agentic-coding vm.homeImageGB -int 128
Nota:
vm.homeImageGBafecta solo a las imágenes de inicio creadas después del cambio; las imágenes existentes conservan su tamaño. Una imagen de inicio se puede ampliar más adelante (un truncamiento en línea másresize2fs) pero no reducir.
Consejo: Para trabajo genuinamente desechable,
bromure-ac vm run --rmarranca un espacio de trabajo desechable al estilo Docker cuyo disco se elimina cuando la VM se detiene — documentado en Automatización y la CLI.