Anhang — Dateispeicherorte, Ports & Umgebung
Dieser Anhang fasst die konkreten Fakten, die über den Rest des Handbuchs verstreut sind, in Referenztabellen zusammen: Speicherorte auf der Festplatte, Netzwerk-Ports, Umgebungsvariablen und Startargumente sowie einen Spickzettel für die Gast-VM. Alles hier bezieht sich auf den ausgelieferten Build (Version 4.3.0, Bundle-ID io.bromure.agentic-coding). Für die Befehle, die diese lesen und schreiben, siehe Automatisierung & die CLI; für das, was zum Installationszeitpunkt erstellt wird, siehe Installation.
Nachfolgend verwendete Platzhalter: <uuid> ist die Kennung eines Arbeitsbereichs, <version> eine gepinnte Werkzeugversion, <org>--<name> ein Modell-Repository und <host-UUID> ein gespeicherter Remote-Host.
Speicherorte auf der Festplatte
Alles, was der App gehört, liegt unter einem einzigen Support-Verzeichnis, dazu einige wenige Dateien außerhalb davon und ein paar Keychain-Einträge. Die folgenden Tabellen sind entdupliziert und gruppiert; ein Pfad, der auf / endet, ist ein Verzeichnis.
Das Support-Verzeichnis
Das Support-Stammverzeichnis der App ist ~/Library/Application Support/BromureAC/. Die folgenden Pfade sind relativ dazu.
| Pfad | Enthält |
|---|---|
base.img | Das Ubuntu-24.04-Base-Image, von dem jeder Arbeitsbereich klont (24 GB logisch, ~6–8 GB physisch). |
efivars.bin | EFI-Variablenspeicher, mit dem das Base-Image bootet. |
base.version | Versionsstempel des installierten Images, z. B. 200 oder 200.1. |
image-state.json | Herkunft des Images und die UUIDs der angewandten Postinstall-Schritte. |
img-catalog.json | Zwischengespeicherte Kopie des heruntergeladenen Image-Katalogs. |
browser-img-catalog.json | Zwischengespeicherter Katalog für das eingebettete Browser-Image. |
catalog.json | Zwischengespeichertes Remote-Katalog-Manifest für lokale Inferenzmodelle. |
base.img.partial, base.img.gz.partial, efivars.partial | Transiente Installationsdateien; ihr Vorhandensein bedeutet, dass eine Installation läuft oder unterbrochen wurde. |
alpine-vmlinuz, alpine-initramfs, alpine-initramfs-shimmed | Zwischengespeicherte Alpine-Netboot-Installer-Dateien, die vom lokalen Build verwendet werden. |
browser/ | ACs eigene Kopie des Alpine/Chromium-Browser-Images (linux-base.img, vmlinuz, initrd), wenn die Kopie von Bromure Web fehlt. |
browser-profiles/<uuid>/image/profile.img | Verschlüsseltes persistentes Chromium-Profillaufwerk („Auf Websites angemeldet bleiben"). |
ca/cert.pem, ca/key.pem | Die Bromure Agentic Coding Root CA pro Installation (Schlüsselmodus 0600). Löschen Sie das Verzeichnis ca/, um sie zu rotieren. |
control.sock | Nur für den Eigentümer zugänglicher (0600) Unix-Steuersocket, über den die CLI und die Steuerebene HTTP sprechen. |
profile-macs.json | Deterministische MAC-Bindungen pro Arbeitsbereich. |
dhcp-leases.sqlite | Persistente DHCP-Leases für den gemeinsamen NAT-Switch. |
default-ssh/id_ed25519.raw, default-ssh/id_ed25519.pub | Gemeinsames Standard-SSH-Schlüsselpaar, das in jeden neuen Arbeitsbereich kopiert wird. |
profile-template.json, profile-template.enc | Die Einstellungs-Vorlage „Standardwerte", die neue Arbeitsbereiche erben (außerhalb von profiles/ gehalten, damit sie nie im Auswahlmenü erscheint). |
automations.json | Geplante Automatisierungen sowie Ausführungsverlauf (max. 1000 Datensätze), nächste Auslösezeiten und Hochwassermarken der Ereignisabfrage. |
grid-layout.json | Terminal-Grid-Mitgliedschaft. |
engine-master.key | 32-Byte-Master-Geheimnis für lokale Inferenz-Engine-Schlüssel pro VM. |
engine-spawn.json | Spawn-Konfiguration der lokalen Inferenz-Engine-Kindprozesse (Modelle, Speicherbudget, Port). |
fake-salt.bin | 32-Byte-Salt pro Installation zum Ableiten gefälschter Tokens (0600). Das Löschen rotiert jede Fälschung auf diesem Mac. |
secrets-master.key | 0600 AES-256-Fallback-Masterschlüssel, nur verwendet, wenn die Data Protection Keychain nicht erreichbar ist. |
claude-subscription.enc, codex-subscription.enc, grok-subscription.enc | AES-GCM-verschlüsselte, Host-eigene Abonnement-OAuth-Speicher (gemeinsamer Standard plus Überschreibungen pro Arbeitsbereich), 0600. |
cloudflared/<version>/cloudflared | Gepinntes, per Prüfsumme verifiziertes cloudflared-Binary, mit einem current-Symlink daneben. |
ghostty/ | Generierte Terminal-Konfigurationen (Basis plus pro Arbeitsbereich). |
Speicher pro Arbeitsbereich
Jeder Arbeitsbereich ist ein eigenständiges Verzeichnis unter profiles/<uuid>/ im Support-Stammverzeichnis. Siehe Arbeitsbereiche und Konzepte dafür, wie diese verwendet werden.
Pfad (unter profiles/<uuid>/) | Enthält |
|---|---|
profile.json | Arbeitsbereich-Definition, einschließlich des Richtlinienblocks supplyChain; socket.dev- und Delpi-API-Schlüssel werden hier host-seitig gespeichert und nie in die VM kopiert. Nur Felder, die vom Standard abweichen, werden geschrieben. |
secrets.enc | AES-GCM-verschlüsselte Arbeitsbereich-Geheimnisse (chmod 600). |
disk.img | Systemlaufwerk — ein APFS-Copy-on-Write-Klon von base.img. |
home.img | Sparse-ext4-Image, das /home/ubuntu enthält (modernes Home-Modell). |
home/ | Legacy-virtiofs-Home-Verzeichnis (Arbeitsbereiche vor dem Upgrade). |
boot-home/ | Winziges Bootstrap-Home, das bei ext4-Modell-Boots geteilt wird. |
home.pre-ext4/ | Backup des Home, das nach dem Speicher-Upgrade aufbewahrt wird. |
checkpoints/, checkpoints/home/ | Boot-erprobte Disk- und Home-Rollback-Klone. |
vm.state | RAM-Snapshot der ausgesetzten VM. |
tabs.json | Gespeichertes Tab-Layout, nur berücksichtigt, wenn vm.state existiert. |
machine-identifier.bin | Persistente VZ-Maschinenidentität (erforderlich zum Wiederherstellen einer ausgesetzten VM). |
compromised.flag | Markierung zum Löschen beim nächsten Start, gesetzt nach einem erkannten Leck von Zugangsdaten. |
meta-share/ | Schreibgeschützte Gast-Konfigurationsfreigabe pro Start (api_key.env, proxy.env, das CA-Zertifikat, Agenten, MCP-Konfigurationen). |
outbox/ | Schreibbare Gast→Host-Ereignisfreigabe pro Start. |
agent/ (und agent/imported/), ssh/ | SSH-Schlüsselmaterial pro Arbeitsbereich; importierte Schlüssel liegen unter agent/imported/, ssh/ ist das Legacy-Verzeichnis. |
Modelle und Detektoren
| Pfad (unter dem Support-Stammverzeichnis) | Enthält |
|---|---|
models/<org>--<name>/ | Heruntergeladene MLX-Inferenzmodell-Gewichte (flaches Layout pro Repo). |
models/<org>--<name>/.incomplete | Sentinel für laufende oder unterbrochene Downloads. |
Models/prompt-injection/ | PromptGuard-Detektor-Assets (model.onnx, Tokenizer-Dateien, optionale bromure-injection.json-Überschreibungen). |
Models/claudemd-guard/ | ModernBERT-Regeldatei-Detektor-Assets. |
traces/YYYY-MM-DD/<sessionID>.jsonl | Trace-Metadaten pro Sitzung, ein JSON-Datensatz pro Zeile. |
traces/YYYY-MM-DD/<sessionID>/<recordID>.req.enc, .res.enc | Erfasste Anfrage-/Antwort-Bodys, AES-GCM-verschlüsselt (0600). |
Registrierung, Fernzugriff und der Rich Client
| Pfad (unter dem Support-Stammverzeichnis) | Enthält |
|---|---|
managed/install.json | Registrierungsidentität: Installations-ID, Arbeitsbereich-Slug, Benutzer, Server-URL, Gerätename, Registrierungszeitpunkt. |
managed/leaf.crt | mTLS-Leaf-Zertifikat (PEM, inspizierbar). |
managed/leaf.serial | Verweis auf den Keychain-Eintrag, der den privaten Schlüssel des aktuellen Leafs enthält. |
managed/ca.crt | CA-Zertifikat der Arbeitsbereich-Organisation (PEM). |
managed/health | Persistierter Registrierungszustand (ok / tokenRejected / revoked). |
remote/hostkey_ed25519, remote/hostkey_ed25519.pub | Host-Schlüssel des eingebetteten SSH-Servers (Verzeichnismodus 0700, Schlüssel 0600). |
remote/authorized_keys | Öffentliche Schlüssel, die durch die SSH-Eingangstür zugelassen sind (0600). |
remote/overlay-key | Optionale Overlay-Tastenkombinations-Überschreibung für das SSH-Remote-Menü. |
remote-client/id_ed25519, .pub | SSH-Client-Schlüsselpaar des Rich Clients (Kommentar bromure-ac-fatclient). |
remote-client/known_hosts | Trust-on-First-Use-Pins von Remote-Host-Schlüsseln. |
remote-client/hosts.json | Gespeicherte Remote-Server („Zuletzt verwendete Server"). |
remote-client/hosts/<host-UUID>/grid-layout.json, automations.json | Persistenz der Spiegelung pro Host, damit ein Remote-Grid nie das lokale überschreibt. |
Hinweis: Der Teilbaum
remote-client/wird mitCFFIXED_USER_HOMEverschoben, wodurch zwei isolierte Instanzen zum Testen nebeneinander ausgeführt werden können.
Außerhalb des Support-Verzeichnisses
| Pfad | Enthält |
|---|---|
~/Library/LaunchAgents/io.bromure.agentic-coding.boot.plist | Boot-bei-Anmeldung-LaunchAgent, geschrieben, wenn ein Arbeitsbereich „Diese VM bei der Anmeldung starten" aktiviert. |
<app>/Contents/Library/LaunchDaemons/io.bromure.fatclient-tunnel.plist | Eingebetteter privilegierter Tunnel-Daemon, bei Bedarf über SMAppService registriert. |
/var/run/io.bromure.fatclient-tunnel.sock | Socket des privilegierten Tunnel-Daemons (root-erstellt, chmod 600, an den Konsolenbenutzer gechownt). |
/tmp/bromure-ac-cm-<first-12-of-host-UUID> | SSH-ControlMaster-Socket pro Host (in /tmp gehalten, weil der Support-Pfad das AF_UNIX-Längenlimit überschreitet). |
/tmp/bromure-repair.log | Debug-Log des lokalen Inferenz-Reparatur-Proxys (nur mit BROMURE_REPAIR_DEBUG). |
/usr/local/bin/bromure-cli | Optionaler CLI-Symlink zum App-Binary, einmalig beim ersten Start angeboten. |
<NSTemporaryDirectory>/bromure-ac-agent-<pid>.sock | Bromures privater host-seitiger ssh-agent-Socket. |
$TMPDIR/bromure/session-<uuid>.img (und -aux.img) | Ephemere Copy-on-Write-Klone der Browser-VM, beim Abbau gelöscht. |
<app temp dir>/bromure-files/<profile-id>/ | Download-Cache für Gast-Dateien, die aus dem Dateibrowser geöffnet werden. |
~/Library/Application Support/Bromure/ | Support-Verzeichnis von Bromure Web; AC liest sein Browser-Image von hier, wenn vorhanden. |
~/.cache/bromure-ghostty | Zig-Toolchain-Cache, nur verwendet, wenn das Terminal-Framework aus dem Quellcode gebaut wird. |
Keychain-Einträge und Defaults-Domain
Geheimnisse, die mit Schutz auf Betriebssystemebene erhalten bleiben müssen, liegen in der macOS-Keychain, nicht auf der Festplatte.
| Keychain-Dienst | Konto | Enthält |
|---|---|---|
io.bromure.agentic-coding.master-key | v1 | Der AES-256-Masterschlüssel des Geheimnis-Tresors (Data Protection Keychain). |
io.bromure.agentic-coding.ssh-key-passphrases | <profileUUID>/<filename> | Passphrasen für importierte SSH-Schlüssel. |
io.bromure.agentic-coding.managed-install | install-token, leaf-cert-key-<serial> | Registrierungs-Bearer-Token und private Leaf-Schlüssel pro Seriennummer. |
Alle UserDefaults der App liegen in der Domain io.bromure.agentic-coding (gelesen und geschrieben mit defaults read/defaults write).
Netzwerk-Ports und Subnetze
TCP- und Loopback-Ports
Bromure Agentic Coding öffnet standardmäßig keine festen eingehenden Ports. Die beiden optionalen Dienste unten sind aus, bis Sie sie aktivieren; der Rest ist nur Loopback und entweder dynamisch oder intern.
| Port | Zweck | Gebunden wo |
|---|---|---|
9223 (Standard) | Automatisierungs-HTTP-API und bromure-cli mcp-Backend. Standardmäßig aus (automation.enabled); um eins vom 9222 des Browser-Produkts versetzt gewählt, damit beide Apps nebeneinander laufen können. Liefert GET /health. | 127.0.0.1 (konfigurierbar über automation.bindAddress; Nicht-Loopback-Bindungen sind nicht authentifiziert, und es wird davor gewarnt). |
2222 (Standard) | Optionale SSH-Fernzugriff-Eingangstür. Standardmäßig deaktiviert; auf einen beliebigen Port ≥ 1024 konfigurierbar. | Standardmäßig 0.0.0.0 (konfigurierbar über remoteAccess.bindAddress). |
28500–28599 | MCP-OAuth-Callback-Listener (http://127.0.0.1:<port>/callback). | 127.0.0.1. |
| dynamisch | Lokale Inferenz-Engine, beim ersten Spawn zugewiesen, um Kollisionen mit Ollama/LM Studio auf 11434 zu vermeiden. | 127.0.0.1 (nie 0.0.0.0). |
| dynamisch | Reparatur-Proxy für Tool-Aufrufe der lokalen Inferenz. | 127.0.0.1. |
| ephemer | SOCKS5-Forwarder pro Remote-Host, verwendet vom Browser-Bereich des Rich Clients. | An 0.0.0.0 gebunden, aber peer-gefiltert auf Loopback plus 192.168.127.x. |
Zwei Loopback-Endpunkte existieren innerhalb des Gasts, nicht auf dem Mac: 127.0.0.1:8080 (der In-VM-HTTP(S)-Proxy, den jede Shell als HTTPS_PROXY exportiert) und 127.0.0.1:11434 (wo die On-Host-lokale-Inferenz-Engine über eine vsock-Brücke erscheint).
Die Installation selbst öffnet keine TCP-Ports; der Paket-Proxy des Base-Image-Builds bindet pro Build einen ephemeren localhost-Port.
Virtuelle Netzwerk-Subnetze
| Subnetz | Zweck |
|---|---|
192.168.64.0/24 | Standard-NAT-Subnetz für Arbeitsbereich-VMs (Gateway .1, DHCP-Pool .2–.254, 24-h-Leases). Automatisch verschoben, wenn das LAN des Macs es bereits verwendet. |
192.168.65.0/24–192.168.126.0/24 | Bereich, in den Bromure-Web-Instanzen verschoben werden, damit AC und Web nicht kollidieren. |
192.168.127.0/24 | Das gepinnte lokale Browser-VM-Subnetz des Rich Clients (Gateway .127.1), damit das Gateway vorhersehbar ist. |
100.64.<n>.0/24 | CGNAT-Alias-Subnetze für Flotten-Subnetz-Kollisionen — implementiert und getestet, aber noch nicht in den Laufzeitpfad eingebunden (ein einzelner Remote-Host ist die unterstützte Konfiguration). |
10.98.<unit>.0/30 | Punkt-zu-Punkt-Link-Netzwerke, verwendet vom privilegierten utun-Tunnel-Daemon. |
Host↔Gast-vsock-Brücken
Host und Gast kommunizieren über Virtio-Sockets (vsock), die keine IP-Bindung haben — es sind nummerierte Kanäle zwischen dem Host (CID 2) und jedem Gast. Sie sind interne Verkabelung, hier zur Diagnose aufgeführt.
| vsock-Port | Brücke |
|---|---|
| 5800 | Shell-Exec-Agent — treibt bromure-cli exec, die Exec-Route des Steuersockets und den Datei-Explorer-Bereich an. |
| 5010 | Loopback-OAuth-Callback-Relais (liefert OAuth-Weiterleitungen zurück in die In-VM-CLIs). |
| 5830 | Host-Seite des eingebauten Browser-MCP-Servers (der Gast-stdio-Shim verbindet sich nach außen). |
| 8443 | HTTPS-MITM-Proxy — der Ausgang des Gasts. |
| 8444 | ssh-agent-Brücke (unterstützt SSH_AUTH_SOCK). |
| 8445 | AWS-credential_process-Helfer. |
| 8446 | Claude-Abonnement-Token-Agent und die On-Host-lokale-Inferenz-Brücke (Gast 127.0.0.1:11434). |
| 8447 | Codex/ChatGPT-Abonnement-Token-Agent. |
| 5000 | Browser-VM-Konfigurationsagent (Host→Gast-JSON-Konfiguration bei Anforderung). |
| 5100 | Browser-VM-Dateiübertragungsbrücke (16 MB max. Frame, 10 GB max. Datei). |
| 5200 | Browser-VM-Chrome-DevTools-Protocol-Brücke (Screenshots, Eval). |
| 5300 / 5400 | Browser-VM-Link-Sender / Webcam. |
| 5810 | Browser-VM-Native-Tabs-Brücke. |
| 5900 | Browser-VM-Netzwerk-Trace-Brücke. |
Umgebungsvariablen und Startargumente
Diese beeinflussen die App beim Start. Die meisten dienen dem Debugging, dem Testen oder dem Bauen aus dem Quellcode; die Spalte Zielgruppe kennzeichnet, für wen jede gedacht ist. Setzen Sie eine Umgebungsvariable vor dem Starten des Binarys oder übergeben Sie ein Startargument danach.
| Name | Effekt | Zielgruppe |
|---|---|---|
-AppleLanguages "(fr)" (Startargument) | Standard-macOS-Locale-Überschreibung; erzwingt die UI-Sprache. Wird vor der Argument-Analyse entfernt, damit Locale-erzwingende Neustarts funktionieren. | Endbenutzer |
BROMURE_DEBUG_CLAUDE | Schaltet die Debug-Endpunkte der TCP-Automatisierungs-API frei (/app/state, exec, /vms, /debug/ui-shot, /detect/prompt-injection), lässt Geheimnisse durch die AppleScript/MCP-Profil-JSON-Brücken reisen und ist für die VM-Werkzeuge von bromure-cli mcp --debug erforderlich. | Power-User / Debugging |
BROMURE_AC_DEBUG=1 | Zeitgestempeltes stderr-Debug für die Automatisierungs-Engine, Injection-Klassifikatoren, Regel-Scanner und Trace-Pipeline. | Debugging |
BROMURE_CLI_DEBUG | Ausführliche Diagnose der Steuersocket-Verbindung auf stderr für CLI-Befehle. | Debugging (CLI) |
BROMURE_REPAIR_DEBUG | Anfrage-/Antwort-Diagnose des lokalen Inferenz-Reparatur-Proxys, angehängt an /tmp/bromure-repair.log. | Debugging (lokale Modelle) |
BROMURE_INFER_DEBUG | Engine-Statistiken pro Anfrage (Slot, vorbefüllte Tokens, TTFT, tok/s) auf stderr. | Debugging (lokale Modelle) |
BROMURE_FATCLIENT_LOG | Ungepuffertes stderr-Logging des Rich Clients. | Debugging (Remote) |
BROMURE_ATTACH_DEBUG=<path> | Hängt das Rich-Client-Log zusätzlich an eine Datei an. | Debugging (Remote) |
BROMURE_INJECTION_COREML=1 | Führt die Injection-Klassifikatoren auf dem CoreML/Neural-Engine-Anbieter aus (Standard ist CPU; CoreML benötigt bei identischer Genauigkeit etwa das 5-Fache des residenten Speichers). | Power-User |
BROMURE_NO_COREML | Deaktiviert CoreML für die Klassifikatoren zwangsweise, selbst wenn BROMURE_INJECTION_COREML gesetzt ist. | Power-User |
BROMURE_GPU_CACHE_GB | Obergrenze des MLX-GPU-Puffer-Caches in GB (Standard 4). | Power-User (lokale Modelle) |
BROMURE_KVBITS, BROMURE_KVBITS_START, BROMURE_CACHE_SLOTS, BROMURE_THINKING | Lokale-Inferenz-Tuning: KV-Cache-Quantisierungsbits und -Schwellenwert, KV-Cache-Sitzungsslots (1–8, Standard 4) und Deaktivierung des stillen Denkens. Siehe Lokale Modelle. | Power-User (lokale Modelle) |
VISUAL / EDITOR | Editor, der von bromure-cli workspaces edit verwendet wird (fällt auf vi zurück). | Endbenutzer (CLI) |
BROMURE_MANAGED_URL | Überschreibt die bromure.io-API-Basis, die für Registrierung, Heartbeat und Zertifikatsausstellung verwendet wird. | Enterprise-Administrator |
BROMURE_FATCLIENT_OPEN | Reiner Rich-Client-Start: überspringt das Ersteinrichtungsfenster (kein lokales Base-Image nötig) und unterdrückt die bromure-cli-Symlink-Aufforderung. | Fortgeschritten / Testen |
BROMURE_IMAGE_CATALOG_BASE | Richtet Image-Downloads auf einen lokalen/Staging-Katalog; deaktiviert außerdem die Katalog-Signaturprüfung. Nur für Test- und Pipeline-Nutzung. | Test / CI |
BROMURE_INSTALL_BROWSER_IMAGE=1 | Lädt ACs Kopie des eingebetteten Browser-Images beim Start automatisch herunter (der normale Auslöser ist der Browser-Bereich oder Einstellungen → Browser). | Test / Debug |
CODESIGN_IDENTITY | Signatur-Identität von build.sh; nicht gesetzt fällt auf ad-hoc - zurück (kein Gatekeeper, iCloud oder vmnet). | Entwickler (Build) |
DEVELOPER_ID, APPLE_ID, TEAM_ID, APP_PASSWORD | Developer-ID-Signierung und Notarisierung von package.sh. DEVELOPER_ID ist erforderlich; das Notarisierungs-Trio ist optional (ohne es entsteht ein signiertes, aber nicht notarisiertes DMG). | Entwickler / Herausgeber |
DRY_RUN=1, KEEP_PREVIOUS=1, KEEP_STAGING=1 | Schalter der Image-Veröffentlichungs-/Probelauf-Pipeline. | Herausgeber |
Die Engine setzt außerdem interne Variablen für ihre eigenen Kindprozesse (BROMURE_ENGINE_KEY, BROMURE_ENGINE_MASTER), und die Wegwerf-Registrierungs-VM setzt BROMURE_AC_REGISTER; diese sind nicht dafür gedacht, von Hand gesetzt zu werden.
UserDefaults-Schlüssel (defaults write)
Persistente Einstellungen in der Domain io.bromure.agentic-coding. Die meisten haben UI-Entsprechungen; die vm.*- und Entwickler-Stellschrauben werden mit defaults write gesetzt.
| Schlüssel | Effekt | Standard |
|---|---|---|
automation.enabled | Schaltet die Loopback-Automatisierungs-HTTP-API ein. | false |
automation.port | Port der Automatisierungs-API. | 9223 |
automation.bindAddress | Bind-Adresse der Automatisierungs-API. | 127.0.0.1 |
remoteAccess.enabled | Aktiviert die SSH-Fernzugriff-Eingangstür. | false |
remoteAccess.port | SSH-Eingangstür-Port (≥ 1024). | 2222 |
remoteAccess.bindAddress | Bind-Adresse der SSH-Eingangstür. | 0.0.0.0 |
remoteAccess.passwordAuth, remoteAccess.pubkeyAuth | SSH-Authentifizierungsmethoden. | beide an |
vm.homeImageGB | Scheinbare (gast-sichtbare) Größe eines neuen ext4-Home-Images in GiB (8–1024; sparse, kostet also im Voraus nichts). | 64 |
vm.mtu | MTU-Begrenzung der Gast-NIC — senken Sie sie auf VPN-Hosts, die Installer-Downloads verschlucken. | 1280 |
vm.networkMode, vm.bridgedInterface, vm.dnsServers | Netzwerkmodus des Browser-Pools, gebridgte Schnittstelle und DHCP-DNS-Überschreibung. | Modus NAT; andere nicht gesetzt |
vm.extraChromeFlags, vm.chromeEnvExtra | Entwickler-Stellschrauben, die dem Chromium-Start der Browser-VM angehängt werden. | nicht gesetzt |
cloudflareTunnel.consented | Einmalige Zustimmung zum Bereitstellen von HTTP-Diensten über Cloudflare-Quick-Tunnels. | false |
cliSymlinkDeclined | Gesetzt, wenn Sie „Nicht erneut fragen" bei der bromure-cli-Symlink-Aufforderung wählen. | false |
ac.sidebarWidth, ac.filePaneOpen | Persistierte Seitenleistenbreite und Öffnungsstatus des Dateibereichs. | app-gesetzt |
Spickzettel für die Gast-VM
Innerhalb einer laufenden Arbeitsbereich-VM sind Sie ubuntu, ein gewöhnlicher Benutzer (sudo-fähig), dessen Home /home/ubuntu ist. Der Host verdrahtet Mounts und Umgebung, sodass Paketmanager, Agenten und Git ohne jegliche In-Gast-Einrichtung funktionieren. Siehe Konzepte für die Mechanik.
Mount-Punkte
| Pfad | Was es ist |
|---|---|
/home/ubuntu | Ihr Home — das ext4-home.img (modern) oder eine virtiofs-Freigabe (Legacy). |
/mnt/bromure-meta | Schreibgeschützte Konfigurationsfreigabe pro Start: api_key.env, proxy.env, das CA-Zertifikat, Gast-Agenten, MCP-Konfigurationen, Hostname-/MTU-Hinweise. |
/mnt/bromure-outbox | Schreibbare Gast→Host-Ereignisfreigabe (einmalige Ereignisdateien, die der Host liest). |
/mnt/bromure-share-N | Gemeinsame Projektordner (bis zu 8), auch als ~/<basename> in Ihr Home symlinkt. |
/mnt/bromure-meta/bromure-browser-mcp.py | Der generierte Browser-MCP-stdio↔vsock-Shim, schreibgeschützt in jeden Arbeitsbereich eingebracht. |
~/.bromure/pastes/ | In das Terminal eingefügte Bild-Pastes (nach 7 Tagen automatisch bereinigt). |
Vom Host gesetzte Umgebung
| Variable | Wert / Effekt |
|---|---|
http_proxy, https_proxy, HTTPS_PROXY | http://127.0.0.1:8080 — die In-VM-Brücke, die alle Gast-HTTPS zum Host-MITM-Proxy trägt. |
NO_PROXY | localhost,127.0.0.1,::1. |
SSH_AUTH_SOCK | /tmp/bromure-agent.sock — über vsock zum Host-ssh-agent gebrückt (nur Schlüssel pro Arbeitsbereich und explizit importierte Schlüssel sind erreichbar; Ihr macOS-Login-Agent wird nie offengelegt). |
| CA-Bundle-Variablen | Die neu signierende Root-CA wird über die Standard-Bundle-Variablen für node, python, go, rust, curl, deno und das AWS SDK vertraut. |
| Agent-API-Schlüssel | ANTHROPIC_API_KEY, OPENAI_API_KEY, XAI_API_KEY, GH_TOKEN, GITLAB_TOKEN, DIGITALOCEAN_ACCESS_TOKEN, LINEAR_API_KEY, die AWS-Variablen und alle manuellen/Datenbank-Variablen — allesamt Platzhalter-Werte; der Host tauscht das echte Geheimnis auf der Leitung ein. |
| Lokale-Modus-Agent-Variablen | Wenn ein Arbeitsbereich zu einem lokalen Modell geroutet wird, sieht Claude Code ANTHROPIC_BASE_URL=https://bromure.llm, ein ANTHROPIC_AUTH_TOKEN pro VM, Modell-Aliase, die auf den bromure-local-Sentinel gesetzt sind, und CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC=1. |
Warnung: Jede Zugangsdaten, die der Gast lesen kann, ist ein Köder. Ein gefälschtes Token, das auf einen Host beschränkt ist und in einer Anfrage auftaucht, die für einen anderen Host bestimmt ist, ist die Signatur einer Exfiltration und löst die Kompromittierungserkennung aus — es authentifiziert nie etwas.