Annexe — Raccourcis, fichiers, ports et environnement
Cette annexe rassemble dans des tableaux de référence les faits concrets dispersés dans le reste du manuel : raccourcis clavier, emplacements sur le disque, ports réseau, variables d'environnement et valeurs par défaut, et un aide-mémoire de la VM invitée. Tout ce qui figure ici correspond à la version livrée (version 5.0.0, identifiant de bundle io.bromure.agentic-coding, binaire de l'application bromure-ac). Pour les commandes qui lisent et écrivent ces éléments, voir CLI, API et MCP ; pour ce qui est créé à l'installation, voir Installation et premier lancement.
Espaces réservés utilisés ci-dessous : <uuid> est l'identifiant d'une machine (d'un espace de travail), <id> celui d'un cluster, d'un registre ou d'une exécution, <version> une version d'outil épinglée, <org>--<name> un dépôt de modèle et <host-UUID> un hôte distant enregistré.
Raccourcis clavier
Les raccourcis qui dépendent de ce qui est sur la scène le précisent. Les raccourcis macOS standard (⌘Q, ⌘H, ⌘M, ⌘C, ⌘V, …) fonctionnent comme d'habitude.
Sessions et navigation
| Raccourci | Action |
|---|---|
| ⌘N | Nouvelle session… — l'écran de nouvelle session. |
| ⌘K | Aller à… — la palette de commandes (sessions, salles, machines, actions, texte des conversations). ↑/↓ pour se déplacer, ⏎ pour ouvrir. |
| ⌘1 – ⌘9 | Avec une session ou l'écran de nouvelle session sur la scène : aller à la 1re–9e session de la barre latérale. Sur le terminal d'une machine : passer à cet onglet. Maintenez ⌘ pour voir les numéros dans la barre latérale. |
| ⌥⌘↑ / ⌥⌘↓ | Session précédente / suivante, dans l'ordre de la barre latérale. |
| ⌘⏎ | Reprendre la session en pause ou terminée affichée sur la scène. Sur l'écran de nouvelle session, Démarrer. |
| ⌘W | Avec une session sur la scène : Terminer la session (demande d'abord « Terminer « ‹session› » ? », puis propose Annuler). Sur le terminal d'une machine : ferme l'onglet. |
| ⌃⌘R | Salle suivante. |
| ⌥⌘U | Linux — d'une session à son onglet de terminal sur la machine, et retour (la pastille indique alors Session). |
| ⌘Z | Annuler la dernière fin, archivage, suppression ou déplacement tant que la notification est affichée. |
| ⌃⌘S | Replier ou déplier la barre latérale. |
| ⌃⌘B | Afficher ou masquer le volet du navigateur agentique. |
| ⌃⌘E | Afficher ou masquer le panneau Fichiers. |
| ⌘, | Préférences… |
Dans une conversation
| Raccourci | Action |
|---|---|
| ⏎ | Envoyer le message (sur l'écran de nouvelle session : démarrer la session). |
| ⌥⏎ | Nouvelle ligne. |
| Échap | Arrêter l'agent pendant qu'il travaille. |
/ | Ouvrir la palette des commandes slash (↑/↓ pour se déplacer, ⇥ pour compléter, ⏎ pour choisir, Échap pour fermer). |
@ | Ouvrir la palette des sessions que vous pouvez solliciter. |
Salles
| Raccourci | Action |
|---|---|
| ⌃⇥ / ⌃⇧⇥ | Onglet suivant / précédent de la salle, quand ses sessions ne tiennent pas sur une seule page. |
| Échap | Quitter une session agrandie et revenir à toute la salle. |
Machines et terminaux
| Raccourci | Action |
|---|---|
| ⇧⌘N | Nouvel espace de travail… (une nouvelle machine). |
| ⌥⇧⌘N | Nouvel espace de travail depuis mes configurations… (le même élément de menu, ⌥ enfoncée). |
| ⇧⌘K | Se connecter à un Bromure distant… |
| ⌘T | Nouvel onglet sur le terminal de la machine sélectionnée — ou un nouvel onglet de navigateur quand le volet du navigateur a le focus clavier. |
| ⌘D | Ajouter le terminal à la grille. |
| ⇧⌘G | Nouveau worktree (sur le terminal d'une machine). |
| ⇧⌘M | Fusionner le worktree (sur le terminal d'une machine). |
Tableaux, fenêtres et revue
| Raccourci | Action |
|---|---|
| ⇧⌘A | Tableau des automatisations. |
| ⇧⌘T | Tâches (le tableau des tâches de code). |
| ⌘0 | Gestionnaire d’espaces de travail. |
| ⇧⌘I | Inspecteur de traces… |
| ⌘R | Actualiser (fenêtres de revue et de branches). |
| ⇧⌘⏎ | Envoyer vos commentaires à l'agent (fenêtre de revue). |
Emplacements sur le disque
Tout ce que possède l'application se trouve dans un unique répertoire de support, plus une poignée de fichiers en dehors et quelques éléments du trousseau. Un chemin qui se termine par / est un répertoire.
Le répertoire de support
La racine de support de l'application est ~/Library/Application Support/BromureAC/. Les chemins ci-dessous sont relatifs à celle-ci.
| Chemin | Contient |
|---|---|
base.img | L'image de base Ubuntu que chaque machine clone (24 Go logiques, quelques Go physiques). |
efivars.bin | Le magasin de variables EFI avec lequel l'image de base démarre. |
base.version | Marqueur de version de l'image installée, par exemple 201 ou 201.1. |
image-state.json | Provenance de l'image et UUID des étapes de post-installation appliquées. |
img-catalog.json | Copie en cache du catalogue d'images téléchargé. |
browser-img-catalog.json | Catalogue en cache pour l'image du navigateur intégré. |
catalog.json | Catalogue distant mis en cache des modèles sur l'appareil. |
base.img.partial, base.img.gz.partial, efivars.partial | Fichiers d'installation transitoires ; leur présence signifie qu'une installation est en cours ou a été interrompue. |
alpine-vmlinuz, alpine-initramfs, alpine-initramfs-shimmed | Fichiers de l'installateur Alpine netboot en cache, utilisés par la compilation locale. |
browser/ | La copie propre à AC de l'image de navigateur Ubuntu + Chromium, quand celle de Bromure Web est absente. |
browser-profiles/<uuid>/image/profile.img | Disque de profil Chromium persistant chiffré (« Rester connecté aux sites web »). |
ca/cert.pem, ca/key.pem | L'autorité de certification racine (Root CA) Bromure Agentic Coding propre à l'installation (mode de clé 0600). Supprimez le répertoire ca/ pour la faire tourner. |
control.sock | Socket de contrôle Unix réservé au propriétaire (0600) sur lequel la CLI et le plan de contrôle communiquent en HTTP. |
profile-macs.json | Associations d'adresses MAC déterministes par machine. |
dhcp-leases.sqlite | Baux DHCP persistants du réseau virtuel des machines. |
default-ssh/id_ed25519.raw, default-ssh/id_ed25519.pub | Paire de clés SSH par défaut partagée, copiée dans chaque nouvelle machine. |
profile-template.json, profile-template.enc | Le modèle Defaults des Préférences dont héritent les nouvelles machines. |
models.enc | Les réglages de modèles globaux (Préférences › Modèles) : fournisseurs, clés, choix par agent. Chiffré. |
claude-subscription.enc, codex-subscription.enc, grok-subscription.enc, kimi-subscription.enc | Connexions par abonnement chiffrées, détenues par l'hôte (partagées, plus remplacements par machine), 0600. |
sessions.json | Vos sessions d'agent : titre, agent, machine, dossier, état, surnom, salle. |
rooms.json | Vos salles. |
delegations.json | Délégations et demandes entre sessions. |
transcripts/ | La copie, côté hôte, de la conversation de chaque session (<session-id>.jsonl). |
tasks.json, task-transcripts/ | Le tableau des tâches de code et ses transcriptions archivées. |
automations.json | Automatisations planifiées plus historique des exécutions, heures des prochains déclenchements et repères de sondage des événements. |
runs/<id>/ | Exécutions d'automatisation archivées (record.json, transcript.jsonl). |
security-timeline/<yyyy-MM-dd>.jsonl | La Chronologie de sécurité, un fichier par jour, conservé 90 jours. |
pii/<uuid>.key | Secret par machine qui garde les substituts de données personnelles cohérents (0600). |
grid-layout.json | Composition de la Grille. |
engine-master.key | Secret maître des clés du moteur sur l'appareil, par VM. |
engine-spawn.json | Configuration de lancement du moteur sur l'appareil (modèles, budget mémoire, port). |
fake-salt.bin | Sel propre à l'installation pour dériver les jetons de substitution (0600). Le supprimer renouvelle tous les substituts de ce Mac. |
secrets-master.key | Clé maîtresse de repli en 0600, utilisée seulement quand le trousseau Data Protection est inaccessible. |
cloudflared/<version>/cloudflared | Binaire cloudflared épinglé et vérifié par somme de contrôle, avec un lien symbolique current à côté. |
ghostty/ | Configurations de terminal générées (de base, plus une par machine). |
Stockage par machine
Chaque machine est un répertoire autonome, profiles/<uuid>/, sous la racine de support. Voir Machines et Concepts et architecture pour leur usage.
Chemin (sous profiles/<uuid>/) | Contient |
|---|---|
profile.json | Définition de la machine, y compris ses politiques de sécurité ; les clés d'API de socket.dev et de Depi y sont stockées côté hôte et ne sont jamais copiées dans la VM. Seuls les champs non par défaut sont écrits. |
secrets.enc | Secrets chiffrés de la machine (0600). |
disk.img | Disque système — un clone APFS en copie sur écriture de base.img. |
home.img | Image ext4 creuse contenant /home/ubuntu. |
home/ | Ancien dossier personnel partagé (machines pas encore mises à niveau). |
checkpoints/, checkpoints/home/ | Points de contrôle du disque et du dossier personnel à chaque démarrage (ceux du dossier personnel sont ce que liste Rembobiner le dossier personnel…). |
vm.state, vm.state.json | Instantané de la RAM d'une VM suspendue, et l'empreinte de la configuration avec laquelle il a été enregistré. |
tabs.json | Disposition enregistrée des onglets de terminal, prise en compte seulement si vm.state existe. |
machine-identifier.bin | Identité persistante de la VM (nécessaire pour restaurer une VM suspendue). |
compromised.flag | Marqueur d'effacement au prochain lancement, posé après une compromission. |
meta-share/ | Partage de configuration invité en lecture seule, par lancement (api_key.env, proxy.env, le certificat de la CA, les utilitaires de l'invité, les cales et configurations MCP). |
outbox/ | Partage d'événements invité→hôte accessible en écriture par lancement. |
agent/ (et agent/imported/), ssh/ | Matériel de clés SSH par machine ; les clés importées vivent sous agent/imported/, ssh/ est l'ancien répertoire. |
Clusters, registres et connecteur de messagerie
| Chemin (sous la racine de support) | Contient |
|---|---|
kube/clusters.json | Chaque cluster Kubernetes, registre et connecteur de messagerie, avec ses réglages et sa liste d'accès. |
kube/<id>/kubeconfig.yaml | Le kubeconfig d'administration d'un cluster (ce que copie Copier le kubeconfig). |
kube/<id>/setup.log | Le journal de configuration et de cycle de vie du cluster ou du registre (son onglet Journal). |
kube/<id>/synology.enc | Identifiants chiffrés du NAS Synology, si configurés. |
kube/<id>/nodes/<uuid>/ | Le répertoire de machine propre à chaque nœud (ou au registre, ou au connecteur) : disk.img, un disque de données data.img le cas échéant, meta-share/, etc. |
Modèles et détecteurs
| Chemin (sous la racine de support) | Contient |
|---|---|
models/<org>--<name>/ | Poids téléchargés des modèles sur l'appareil. |
models/<org>--<name>/.incomplete | Marqueur de téléchargement en cours ou interrompu. |
Models/prompt-injection/ | Ressources du détecteur PromptGuard (model.onnx, fichiers de tokeniseur, remplacements facultatifs bromure-injection.json). |
Models/claudemd-guard/ | Ressources du détecteur de fichiers de règles ModernBERT. |
Models/pii-rampart/ | Le modèle Rampart de protection des données personnelles, seulement quand il n'est pas inclus dans l'application (builds de développement). |
traces/YYYY-MM-DD/<sessionID>.jsonl | Métadonnées de trace par session, un enregistrement JSON par ligne. |
traces/YYYY-MM-DD/<sessionID>/<recordID>.req.enc, .res.enc | Corps de requêtes/réponses capturés, chiffrés (0600). |
Inscription, accès à distance et client riche
| Chemin (sous la racine de support) | Contient |
|---|---|
managed/install.json | Identité d'inscription : ID d'installation, identifiant de l'organisation, utilisateur, URL du serveur, nom de l'appareil, date d'inscription. |
managed/leaf.crt | Certificat feuille mTLS (PEM). |
managed/leaf.serial | Pointeur vers l'entrée du trousseau contenant la clé privée de la feuille actuelle. |
managed/ca.crt | Certificat de la CA de l'organisation (PEM). |
managed/health | Santé d'inscription persistée (ok / tokenRejected / revoked). |
remote/hostkey_ed25519, remote/hostkey_ed25519.pub | Clé d'hôte du serveur SSH intégré (mode de répertoire 0700, clé 0600). |
remote/authorized_keys | Clés publiques autorisées à franchir la porte d'entrée SSH (0600). |
remote/overlay-key | Remplacement facultatif de l'accord de touches de superposition pour le menu SSH distant. |
remote-client/id_ed25519, .pub | Paire de clés client SSH du client riche (commentaire bromure-ac-fatclient). |
remote-client/known_hosts | Épinglages de confiance à la première utilisation des clés d'hôte distant. |
remote-client/hosts.json | Serveurs distants enregistrés (« Serveurs récents »). |
remote-client/hosts/<host-UUID>/… | Persistance du miroir par hôte (disposition de la grille, automatisations), pour que l'état d'un hôte distant n'écrase jamais l'état local. |
Remarque : L'arborescence
remote-client/se déplace avecCFFIXED_USER_HOME, ce qui permet d'exécuter côte à côte deux instances isolées pour les tests.
En dehors du répertoire de support
| Chemin | Contient |
|---|---|
~/Library/Logs/BromureAC/bromure-ac.log (et .log.1) | Le journal de l'application : une copie de tout ce que l'application écrit sur la sortie d'erreur standard, avec les marques de lancement, de sortie et de signal fatal. Renouvelé au lancement au-delà de 8 Mo ; un fichier précédent est conservé. |
~/Library/LaunchAgents/io.bromure.agentic-coding.boot.plist | LaunchAgent de démarrage à l'ouverture de session, écrit quand une machine active « Démarrer cette VM à l’ouverture de session ». |
<app>/Contents/Library/LaunchDaemons/io.bromure.fatclient-tunnel.plist | Démon de tunnel privilégié intégré, enregistré à la demande. |
/var/run/io.bromure.fatclient-tunnel.sock | Socket du démon de tunnel privilégié (créé par root, 0600, appartenant à l'utilisateur de la console). |
/tmp/bromure-ac-cm-<first-12-of-host-UUID> | Socket SSH ControlMaster par hôte (conservé dans /tmp car le chemin de support est trop long pour un socket Unix). |
/tmp/bromure-repair.log | Journal de débogage du proxy de réparation d'inférence locale (uniquement avec BROMURE_REPAIR_DEBUG). |
/usr/local/bin/bromure-cli | Lien symbolique facultatif de la CLI vers le binaire de l'application, créé par Installer l’outil en ligne de commande…. |
<NSTemporaryDirectory>/bromure-ac-agent-<pid>.sock | Socket ssh-agent privé côté hôte de Bromure. |
<NSTemporaryDirectory>/sessions-mirror.json, rooms-mirror.json, delegations-mirror.json | La copie de travail, sur un client riche, des sessions, salles et délégations d'un hôte distant. |
$TMPDIR/bromure/session-<uuid>.img (et -aux.img) | Clones de VM de navigateur éphémères en copie sur écriture, supprimés au démontage. |
~/Library/Application Support/Bromure/ | Répertoire de support de Bromure Web ; AC y lit son image de navigateur lorsqu'elle est présente. |
Éléments du trousseau et domaine des valeurs par défaut
Les secrets qui doivent survivre avec une protection au niveau du système d'exploitation résident dans le trousseau macOS, et non sur le disque.
| Service de trousseau | Compte | Contient |
|---|---|---|
io.bromure.agentic-coding.master-key | v1 | La clé maîtresse du coffre des secrets (trousseau Data Protection). |
io.bromure.agentic-coding.ssh-key-passphrases | <profileUUID>/<filename> | Phrases secrètes des clés SSH importées. |
io.bromure.agentic-coding.managed-install | install-token, leaf-cert-key-<serial> | Jeton porteur d'inscription et clés privées de feuille par numéro de série. |
Toutes les UserDefaults de l'application résident dans le domaine io.bromure.agentic-coding (lues et écrites avec defaults read/defaults write).
Ports réseau et sous-réseaux
Ports TCP et de bouclage
Bromure Agentic Coding n'ouvre par défaut aucun port entrant fixe. Les deux services facultatifs ci-dessous sont désactivés tant que vous ne les activez pas ; les autres sont réservés au bouclage et soit dynamiques, soit internes.
| Port | Objet | Lié où |
|---|---|---|
9223 (par défaut) | API HTTP d'automatisation et backend de bromure-ac mcp. Désactivée par défaut (automation.enabled) ; un de plus que le 9222 du produit navigateur, pour que les deux applications puissent tourner côte à côte. Sert GET /health. | 127.0.0.1 (configurable via automation.bindAddress ; les liaisons non loopback ne sont pas authentifiées et sont déconseillées). |
2222 (par défaut) | Porte d'entrée facultative d'accès à distance SSH. Désactivée par défaut ; configurable sur tout port ≥ 1024. | 0.0.0.0 par défaut (configurable via remoteAccess.bindAddress). |
28500–28599 | Écouteur de rappel OAuth MCP (http://127.0.0.1:<port>/callback). | 127.0.0.1. |
| dynamique | Moteur d'inférence sur l'appareil, alloué au premier lancement pour éviter toute collision avec Ollama/LM Studio sur 11434. | 127.0.0.1 (jamais 0.0.0.0). |
| dynamique | Proxy de réparation d'appels d'outils d'inférence locale. | 127.0.0.1. |
| éphémère | Redirecteur SOCKS5 par hôte distant utilisé par le volet de navigateur du client riche. | Lié à 0.0.0.0 mais filtré par pair au bouclage plus 192.168.127.x. |
Deux points de terminaison loopback existent dans l'invité, pas sur le Mac : 127.0.0.1:65534 (le proxy HTTP(S) de la VM, que chaque shell exporte comme HTTPS_PROXY) et 127.0.0.1:11434 (où apparaît le moteur d'inférence de l'hôte, via vsock).
L'installation elle-même n'ouvre aucun port TCP ; le proxy de paquets de la compilation de l'image de base lie un port localhost éphémère par compilation.
Sous-réseaux du réseau virtuel
| Sous-réseau | Objet |
|---|---|
Un /24 aléatoire dans 172.16.0.0/12 | Le réseau des machines sur les nouvelles installations (passerelle .1, plage DHCP .2–.254). Choisi une fois par installation, en évitant les 172.17–172.20 habituels de Docker et toute plage sur laquelle se trouve le Mac. Consultez-le, désactivez-le ou re-randomisez-le sous Préférences › Ressources › Sous-réseau de l’espace de travail. |
192.168.64.0/24 | Le réseau des machines sur les installations qui ont désactivé le sous-réseau privé. Déplacé automatiquement si le réseau local du Mac l'utilise déjà. |
192.168.65.0/24–192.168.126.0/24 | Plage vers laquelle les instances de Bromure Web se relocalisent, évitant les collisions entre AC et Web. |
192.168.127.0/24 | Le sous-réseau épinglé de la VM de navigateur locale du client riche (passerelle .127.1). |
10.98.<unit>.0/30 | Réseaux de liaison point à point utilisés par le démon de tunnel utun privilégié. |
IPv6 n'est pas routé : les images de base récentes le désactivent dans l'invité, et apt ne fonctionne qu'en IPv4.
Ports vsock hôte↔invité
L'hôte et l'invité communiquent par des sockets virtio (vsock), qui n'ont pas d'adresse IP — ce sont des canaux numérotés entre l'hôte (CID 2) et chaque invité. Il s'agit de tuyauterie interne, listée ici pour le diagnostic.
| Port vsock | Pont |
|---|---|
| 5800 | Agent d'exécution shell — alimente vm exec, la route d'exécution du socket de contrôle et le panneau Fichiers. |
| 5010 | Relais de rappel OAuth de bouclage (renvoie les redirections OAuth vers les CLI intra-VM). |
| 5830 | Serveur MCP browser. |
| 5831 | Serveur MCP du tableau des tâches (tâches de code uniquement). |
| 5832 | Flux de plan (planification des tâches de code). |
| 5833 | Serveur MCP automations. |
| 5834 | Serveur MCP infrastructure. |
| 5835 | Serveur MCP delegation. |
| 5836 | Serveur MCP switchboard (session du Standard uniquement). |
| 8443 | Proxy HTTPS MITM — la sortie de l'invité. |
| 8444 | Pont ssh-agent (soutient SSH_AUTH_SOCK). |
| 8445 | Assistant AWS credential_process. |
| 8446 | Agent du jeton d'abonnement Claude, et pont vers l'inférence de l'hôte (127.0.0.1:11434 dans l'invité). |
| 8447 | Agent de jeton d'abonnement Codex/ChatGPT. |
| 5000 | Agent de configuration de la VM de navigateur (configuration JSON hôte→invité à la réclamation). |
| 5100 | Pont de transfert de fichiers de la VM de navigateur. |
| 5200 | Pont Chrome DevTools Protocol de la VM de navigateur (captures d'écran, eval). |
| 5300 / 5400 | Émetteur de liens / webcam de la VM de navigateur. |
| 5810 | Pont d'onglets natifs de la VM de navigateur. |
| 5900 | Pont de trace réseau de la VM de navigateur. |
Variables d'environnement et arguments de lancement
Celles-ci influencent l'application au lancement. La plupart servent au débogage, aux tests ou à la compilation à partir des sources ; la colonne Public indique à qui chacune s'adresse. Définissez une variable d'environnement avant de lancer le binaire, ou passez un argument de lancement après lui.
| Nom | Effet | Public |
|---|---|---|
-AppleLanguages "(fr)" (argument de lancement) | Remplacement standard de la langue macOS ; force la langue de l'interface. | Utilisateur final |
BROMURE_DEBUG_CLAUDE | Ouvre les routes de contrôle et les points de terminaison de débogage sur l'API d'automatisation TCP, laisse passer les secrets par les ponts JSON de profil AppleScript/MCP, et est requis pour les outils de VM de bromure-ac mcp --debug. | Utilisateur avancé / débogage |
BROMURE_AC_DEBUG=1 | Débogage stderr horodaté pour le moteur d'automatisation, les classificateurs d'injection, le scanner de règles et le pipeline de traces. | Débogage |
BROMURE_CLI_DEBUG | Diagnostics détaillés de connexion au socket de contrôle sur stderr pour les commandes de la CLI. | Débogage (CLI) |
BROMURE_REPAIR_DEBUG | Diagnostics de requête/réponse du proxy de réparation d'inférence locale, ajoutés à /tmp/bromure-repair.log. | Débogage (modèles locaux) |
BROMURE_INFER_DEBUG | Statistiques du moteur par requête (slot, jetons préremplis, délai du premier jeton, jetons/s) sur stderr. | Débogage (modèles locaux) |
BROMURE_FATCLIENT_LOG | Journalisation stderr non tamponnée du client riche. | Débogage (à distance) |
BROMURE_ATTACH_DEBUG=<path> | Ajoute également le journal du client riche à un fichier. | Débogage (à distance) |
BROMURE_NO_TRANSPARENT | Désactive l'interception transparente pour toutes les machines (le proxy fonctionne toujours pour les programmes qui respectent les réglages de proxy). | Débogage |
BROMURE_INJECTION_COREML=1 | Exécute les classificateurs d'injection sur le fournisseur CoreML/Neural Engine (CPU par défaut ; CoreML utilise plusieurs fois plus de mémoire pour une précision identique). | Utilisateur avancé |
BROMURE_NO_COREML | Désactive de force CoreML pour les classificateurs même si BROMURE_INJECTION_COREML est défini. | Utilisateur avancé |
BROMURE_PII_BUDGET | Nombre de caractères de texte nouveau par requête que lit le modèle de données personnelles avant de se rabattre sur les seules règles de motifs (par défaut 300000). | Utilisateur avancé (données personnelles) |
BROMURE_PII_MIN_SCORE | Confiance dont le modèle de données personnelles a besoin avant de remplacer une valeur (par défaut 0.6). | Utilisateur avancé (données personnelles) |
BROMURE_PII_THREADS | Threads CPU pour le modèle de données personnelles (par défaut : les cœurs de performance, de 2 à 8). | Utilisateur avancé (données personnelles) |
BROMURE_TRANSCRIPT_HISTORY_BYTES | Quelle part d'une longue conversation une conversation charge au départ (environ 24 Mo par défaut) ; les valeurs plus petites servent aux tests. | Tests |
BROMURE_GPU_CACHE_GB | Plafond du cache tampon GPU MLX en Go (par défaut 4). | Utilisateur avancé (modèles locaux) |
BROMURE_KVBITS, BROMURE_KVBITS_START, BROMURE_CACHE_SLOTS, BROMURE_THINKING | Réglages de l'inférence sur l'appareil : bits et seuil de quantification du cache KV, emplacements de session du cache KV, et désactivation de la réflexion silencieuse. Voir Modèles et fournisseurs. | Utilisateur avancé (modèles locaux) |
VISUAL / EDITOR | Éditeur utilisé par bromure-cli workspaces edit (repli sur vi). | Utilisateur final (CLI) |
BROMURE_MANAGED_URL | Remplace la base de l'API bromure.io utilisée pour l'inscription, le battement de cœur et l'émission de certificats. | Administrateur d'entreprise |
BROMURE_FATCLIENT_OPEN | Lancement en pur client riche : saute la configuration du premier lancement (aucune image de base locale nécessaire). | Avancé / tests |
BROMURE_DEBUG_WIZARD | Ouvre l'assistant d'accueil sur une étape donnée (scan, pick, models, done) sans vraie installation, ou newworkspace pour l'exécuter par-dessus un dossier personnel ouvert. | Tests / captures d'écran |
BROMURE_EDITOR_CATEGORY | Ouvre l'éditeur de réglages sur un volet donné. | Tests / captures d'écran |
BROMURE_IMAGE_CATALOG_BASE | Dirige les téléchargements d'images vers un catalogue local/de préparation ; désactive également la vérification de signature du catalogue. Réservé aux tests et pipelines. | Test / CI |
BROMURE_INSTALL_BROWSER_IMAGE=1 | Télécharge automatiquement au lancement la copie propre à AC de l'image du navigateur intégré. | Tests / débogage |
CODESIGN_IDENTITY | Identité de signature de build.sh ; si non définie, repli sur l'ad-hoc - (pas de Gatekeeper, iCloud ni vmnet). | Développeur (compilation) |
DEVELOPER_ID, APPLE_ID, TEAM_ID, APP_PASSWORD | Signature Developer ID et notarisation de package.sh. | Développeur / éditeur |
DRY_RUN=1, KEEP_PREVIOUS=1, KEEP_STAGING=1 | Commutateurs du pipeline de publication/répétition d'images. | Éditeur |
Le moteur définit aussi des variables internes pour ses propres processus enfants (BROMURE_ENGINE_KEY, BROMURE_ENGINE_MASTER), et la VM de connexion jetable définit BROMURE_AC_REGISTER ; elles ne sont pas faites pour être définies à la main.
Clés UserDefaults (defaults write)
Réglages persistants dans le domaine io.bromure.agentic-coding. La plupart ont un équivalent dans l'interface ; les réglages vm.* et ceux destinés aux développeurs se définissent avec defaults write pendant que l'application n'est pas en cours d'exécution.
| Clé | Effet | Par défaut |
|---|---|---|
automation.enabled | Active l'API HTTP d'automatisation de bouclage. | false |
automation.port | Port de l'API d'automatisation. | 9223 |
automation.bindAddress | Adresse de liaison de l'API d'automatisation. | 127.0.0.1 |
remoteAccess.enabled | Active la porte d'entrée d'accès à distance SSH. | false |
remoteAccess.port | Port de la porte d'entrée SSH (≥ 1024). | 2222 |
remoteAccess.bindAddress | Adresse de liaison de la porte d'entrée SSH. | 0.0.0.0 |
remoteAccess.passwordAuth, remoteAccess.pubkeyAuth | Méthodes d'authentification SSH. | les deux activées |
ui.sessionsFirst | L'accueil des sessions. Désactivé, la fenêtre principale revient à la disposition machines et terminaux. | true |
ui.beautifiedTranscript | Afficher les sessions d'agent comme des conversations plutôt que comme des terminaux bruts. | true |
sessions.archivedExpanded | Si le repli Archivées de la barre latérale est ouvert. | false |
ui.terminalBell | Laisser sonner les cloches du terminal (les agents sonnent à la fin de chaque tour). | false |
terminal.allowGraphics | Autoriser l'affichage d'images dans le terminal depuis l'invité. Voir Avancé. | false |
vmnet.useRandom172 | Placer les machines sur un sous-réseau privé aléatoire dans 172.16.0.0/12 (Préférences › Ressources › Sous-réseau de l’espace de travail). | true sur les nouvelles installations |
proxy.noMitmDomains | Domaines supplémentaires dont le HTTPS passe sans interception (Accès à distance… › Ne pas intercepter (domaines sans MITM)). | vide |
p2p.udpRelay.enabled | Préférer le relais UDP expérimental pour les connexions distantes (Préférences › Ressources). | false |
vm.homeImageGB | Taille apparente d'une nouvelle image ext4 du dossier personnel, en Gio (8–1024 ; creuse). | 16 |
vm.mtu | Limite de MTU de la carte réseau de l'invité — abaissez-la sur les hôtes VPN qui font disparaître les téléchargements. | 1280 |
vm.networkMode, vm.bridgedInterface, vm.dnsServers | Mode réseau de la VM de navigateur, interface en mode pont et remplacement DNS. | mode NAT ; autres non définis |
vm.extraChromeFlags, vm.chromeEnvExtra | Réglages de développeur ajoutés au lancement Chromium de la VM de navigateur. | non défini |
cloudflareTunnel.consented | Consentement unique pour exposer des services HTTP via les tunnels rapides Cloudflare. | false |
catalog.refreshDisabled | Ne pas télécharger le catalogue des modèles sur l'appareil ; utiliser les copies fournies et en cache. | false |
ac.sidebarWidth.v2, ac.filePaneOpen | Largeur de la barre latérale et état du panneau Fichiers mémorisés. | défini par l'application |
Aide-mémoire de la VM invité
Dans une machine en cours d'exécution, vous êtes ubuntu, un utilisateur ordinaire (pouvant utiliser sudo) dont le dossier personnel est /home/ubuntu. L'hôte met en place les montages et l'environnement pour que les gestionnaires de paquets, les agents et Git fonctionnent sans aucune configuration dans l'invité. Voir Concepts et architecture pour les mécanismes.
Points de montage et chemins
| Chemin | Ce que c'est |
|---|---|
/home/ubuntu | Votre dossier personnel — le home.img ext4 (ou un dossier partagé sur les machines pas encore mises à niveau). |
/mnt/bromure-meta | Partage de configuration en lecture seule, par lancement : api_key.env, proxy.env, le certificat de la CA, les utilitaires de l'invité, les cales et configurations MCP, les indications de nom d'hôte et de MTU. |
/mnt/bromure-meta/bromure-*-mcp.py | Les cales stdio↔vsock des serveurs MCP intégrés (browser, task, automations, infra, delegation, switchboard). |
/mnt/bromure-outbox | Partage d'événements invité→hôte accessible en écriture. |
/mnt/bromure-share-N | Dossiers de projet partagés (jusqu'à 8), également liés symboliquement dans votre home sous ~/<basename>. |
~/.bromure/inbox/<id>/ | Les fichiers qu'un autre agent a envoyés à cette session avec une délégation ou une demande. |
~/.bromure/switchboard | Le dossier du Standard ; son CLAUDE.md est la consigne du Standard. |
~/.bromure/rooms/<slug> | Le dossier du Standard d'une salle. |
~/.bromure/pastes/ | Fichiers collés ou déposés dans le terminal d'une machine (nettoyés automatiquement au bout de 7 jours). |
Environnement défini par l'hôte
| Variable | Valeur / effet |
|---|---|
http_proxy, https_proxy, HTTPS_PROXY | http://127.0.0.1:65534 — le pont intra-VM qui achemine tout le HTTPS de l'invité vers le proxy MITM de l'hôte. |
NO_PROXY | localhost,127.0.0.1,::1. |
SSH_AUTH_SOCK | /tmp/bromure-agent.sock — relié via vsock au ssh-agent de l'hôte (seules les clés propres à la machine et celles explicitement importées sont accessibles ; l'agent de votre session macOS n'est jamais exposé). |
| Variables du bundle CA | La CA racine de re-signature est approuvée via les variables de bundle standard pour node, python, go, rust, curl, deno et le SDK AWS. |
| Clés d'API des agents | ANTHROPIC_API_KEY, OPENAI_API_KEY, XAI_API_KEY, GH_TOKEN, GITLAB_TOKEN, DIGITALOCEAN_ACCESS_TOKEN, LINEAR_API_KEY, TWILIO_ACCOUNT_SID / TWILIO_AUTH_TOKEN, les variables AWS et toute variable de base de données ou personnalisée — toutes des valeurs de substitution ; l'hôte y substitue le vrai secret à la volée. |
| Modèles sur l'appareil et serveurs personnalisés | Claude Code voit ANTHROPIC_BASE_URL=https://bromure.llm, un ANTHROPIC_AUTH_TOKEN propre à la VM, le vrai identifiant du modèle dans ANTHROPIC_MODEL et ses alias de taille, et CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC=1. |
| OpenRouter | Claude Code voit ANTHROPIC_BASE_URL=https://openrouter.ai/api, un ANTHROPIC_AUTH_TOKEN de substitution, un ANTHROPIC_API_KEY vide et les identifiants de modèle choisis pour chaque taille. |
| Amazon Bedrock | Claude Code voit CLAUDE_CODE_USE_BEDROCK=1, AWS_REGION, et soit un AWS_BEARER_TOKEN_BEDROCK de substitution (clé d'API Bedrock), soit AWS_PROFILE=default (identifiants AWS). |
KIMI_CODE_OAUTH_HOST, KIMI_CODE_BASE_URL | Avec un abonnement Kimi : dirigent Kimi Code vers le service international de Kimi. |
BROMURE_REGISTRY | L'adresse d'un registre Bromure auquel cette machine a accès. |
Avertissement : Chaque identifiant que l'invité peut lire est un leurre. Un jeton de substitution limité à un hôte qui apparaît dans une requête destinée à un autre hôte est la signature d'une exfiltration et déclenche la détection de compromission — il n'authentifie jamais rien.