Installation

Ce chapitre vous accompagne d'un Mac vierge jusqu'à une copie entièrement installée de Bromure Agentic Coding : ce dont l'application a besoin de votre machine, comment télécharger et installer une version, ce qui se produit lors du premier lancement, comment l'image de base Linux est téléchargée, vérifiée et tenue à jour, et comment tout supprimer proprement. Une fois l'installation terminée, poursuivez avec le démarrage rapide pour créer votre premier espace de travail.

Configuration requise

PrérequisMinimum
MacApple Silicon (M1 ou plus récent)
macOSmacOS 14 (Sonoma) ou ultérieur
Espace disque libreAu moins 8 GB pour exécuter la configuration initiale ; prévoyez environ 6–8 GB pour l'image de base installée, plus les disques par espace de travail
RéseauAccès Internet pour le téléchargement de l'image de base (une solution de repli par construction locale hors ligne existe ; voir ci-dessous)

Il n'existe pas de version Intel et il n'y en aura pas : l'application exécute ses VM Linux sur Virtualization.framework d'Apple, qui ne prend en charge que les invités ARM64 sur les hôtes Apple Silicon.

Deux protections d'espace disque sont intégrées :

  • Chaque installation d'image vérifie d'abord qu'au moins 8 GB sont libres sur le volume hébergeant le répertoire de support de l'application, et échoue rapidement avec un message clair sinon.
  • Pendant une construction d'image locale, un moniteur interrompt la construction avec une erreur explicite de disque plein si l'espace libre descend sous 1 GB, au lieu de laisser l'installateur expirer mystérieusement.

Si vous prévoyez d'utiliser le navigateur web intégré optionnel au sein des espaces de travail, prévoyez de l'espace supplémentaire pour son image Alpine/Chromium distincte (environ 500 MB compressés à télécharger) ; cette installation est décrite dans Réglages → Navigateur.

Installation de la version de production

Les versions de production sont publiées sous forme d'image disque signée et notariée (BromureAgenticCoding.dmg) sur bromure.io.

  1. Téléchargez le DMG depuis la page de téléchargements de bromure.io.
  2. Ouvrez le DMG. La fenêtre affiche l'icône de l'application et une flèche pointant vers un lien symbolique Applications.
  3. Glissez Bromure Agentic Coding sur le lien symbolique Applications.
  4. Éjectez le DMG et lancez l'application depuis /Applications.

Comme le DMG publié est notarié et agrafé, Gatekeeper l'ouvre sans avertissement. Si vous avez obtenu un DMG ailleurs que sur bromure.io et que Gatekeeper se plaint, considérez cela comme un signal d'alarme plutôt que comme quelque chose à contourner.

Premier lancement

La fenêtre de bienvenue

L'application ne peut pas exécuter d'espaces de travail d'agents tant qu'une image de base Linux n'existe pas sur votre Mac. Lorsque vous la lancez pour la première fois (sans image de base encore présente), elle ouvre une fenêtre de bienvenue au lieu du navigateur d'espaces de travail :

La fenêtre de bienvenue : l'icône de l'application au-dessus du titre « Bienvenue dans Bromure Agentic Coding », un paragraphe expliquant la configuration initiale, et un bouton Commencer

La fenêtre — intitulée Bromure Agentic Coding — affiche l'icône de l'application, le titre Bienvenue dans Bromure Agentic Coding, une courte explication (« La configuration initiale télécharge une image Ubuntu 24.04 préconstruite (ou la construit localement lorsque le téléchargement n'est pas disponible) et installe Node.js, Claude Code, Codex et l'outillage de terminal dans une VM isolée. Ne se produit qu'une fois par version d'image de base. »), et un bouton Commencer bien visible.

Cliquez sur Commencer (ou appuyez sur Retour — c'est le bouton par défaut) pour démarrer. Cela exécute exactement la même installation que la commande CLI bromure-cli init.

Remarque : Le texte de bienvenue cite Node.js, Claude Code et Codex à titre d'exemples. En détail, Node.js et l'outillage gratuit sont déjà intégrés dans l'image préconstruite, et la configuration installe en plus Grok CLI et le Google Cloud SDK — voir Ce que fait la configuration initiale ci-dessous.

La fenêtre de bienvenue est ignorée lorsque l'application est lancée uniquement en tant que client de mise en miroir à distance (voir Accès à distance) ou en tant qu'agent headless sans fenêtre, puisque aucun des deux n'a besoin d'une image de base locale.

La fenêtre de progression de la configuration

Après Commencer, la fenêtre bascule vers un écran de progression intitulé Bromure Agentic Coding — Configuration, en tête duquel figure « Construction de l'image de base » / « Ceci est l'installation unique. Ne fermez pas la fenêtre. » Elle affiche :

  • Une pastille d'état nommant l'étape en cours — pour le chemin de téléchargement : « Récupération du catalogue d'images… », « Téléchargement de l'image Ubuntu 24.04 (… GB)… », « Vérification de la somme de contrôle… », « Expansion de l'image… », « Installation des paquets recommandés (N étape(s), ~2-5 min)… », et enfin « Image de base prête à … (vNNN) ».
  • Une barre de progression déterminée unique avec un pourcentage numérique. Sur le chemin de téléchargement, la barre est pondérée par phase : le téléchargement de l'image remplit 0–60 %, l'expansion 60–80 %, et les étapes de post-installation le reste.
  • Une section repliée par défaut Sortie de la console qui diffuse le journal brut de l'installateur (la console série de la VM auxiliaire). Le texte est sélectionnable, et un bouton icône de copie copie l'intégralité du journal dans le presse-papiers. Seules les 100 dernières lignes sont conservées à l'écran.

En cas d'échec, la pastille d'état est remplacée par une ligne d'erreur rouge et un bouton Fermer apparaît.

Tenter de fermer la fenêtre en cours d'installation déclenche un avertissement — Annuler la reconstruction de l'image de base ? (« L'image sera laissée dans un état incomplet. Vous devrez relancer la reconstruction avant de lancer de nouvelles sessions. ») — avec les boutons Annuler la reconstruction et Continuer la construction. Si vous annulez et qu'une image de travail précédente existe, l'application revient à la fenêtre principale normale ; sinon elle revient à l'écran de bienvenue.

Remarque : Pendant l'exécution d'une installation ou d'un amendement d'image, la porte d'entrée optionnelle d'accès à distance SSH est mise en pause et reprend automatiquement ensuite (voir Accès à distance).

L'invite bromure-cli

Lors du premier lancement de l'interface graphique depuis un bundle d'application installé, l'application propose d'installer son point d'entrée en ligne de commande : Installer l'outil en ligne de commande « bromure-cli » ? — « Cela crée un lien symbolique à /usr/local/bin/bromure-cli afin que vous puissiez piloter Bromure depuis le terminal (vm, exec, trace, …). Cela nécessite votre mot de passe administrateur une seule fois. »

  • Installer crée le lien symbolique à /usr/local/bin/bromure-cli via une invite unique de mot de passe administrateur (aucun assistant privilégié n'est installé).
  • Pas maintenant reporte ; la question vous est reposée au lancement suivant.
  • Ne plus demander supprime l'invite définitivement (stockée dans la clé UserDefaults cliSymlinkDeclined).

Lorsque le binaire est invoqué via le nom bromure-cli, les commandes de gestion d'image (init, info, reset et les verbes côté éditeur), la valeur par défaut de l'interface graphique et le serveur MCP sont masqués ; l'exécution de bromure-cli seul affiche l'aide. La référence complète des commandes se trouve dans Automatisation & CLI. L'invite est ignorée pour les lancements d'agent headless, de développement (swift run) et de mise en miroir à distance.

Ce que fait la configuration initiale

La configuration initiale produit l'image de base : un disque sparse de 24 GB contenant Ubuntu 24.04 (« noble ») avec démarrage EFI/GRUB, à partir duquel chaque VM d'espace de travail est clonée. Deux chemins la produisent ; le téléchargement est préféré et la construction locale est la solution de repli. Les deux écrivent dans des fichiers .partial et promeuvent les résultats de manière atomique, de sorte qu'une installation interrompue ne laisse jamais une image à moitié écrite à la place d'une image fonctionnelle.

Le téléchargement de l'image préconstruite

Le chemin préféré télécharge une image préconstruite publiée chaque semaine sur https://dl.bromure.io :

  1. Récupération du catalogue. L'application récupère le catalogue d'images signé à https://dl.bromure.io/images/img-catalog.json, qui nomme l'image actuelle (UUID, version, SHA-256, tailles) et liste les étapes de post-installation. Le catalogue porte une signature ed25519 réalisée avec la même clé qui signe les mises à jour de l'application (la clé Sparkle SUPublicEDKey) ; la signature couvre l'identité de l'image, sa somme de contrôle et chaque commande de post-installation. Les catalogues non signés ou invalides sont refusés, et un catalogue signé antérieurement à un catalogue déjà adopté par l'application n'est jamais accepté (protection contre le retour en arrière).
  2. Téléchargement. L'image compressée gzip (environ 3 GB compressée) est téléchargée et son SHA-256 vérifié. Les téléchargements échoués sont réessayés jusqu'à 3 fois, en récupérant à nouveau le catalogue entre les tentatives — cela ferme la course avec la publication hebdomadaire qui supprime la version précédente en cours de téléchargement.
  3. Expansion. L'image est étendue de manière sparse dans base.img.partial : 24 GB logiques, mais seulement environ 6–8 GB d'espace disque physique.
  4. Post-installation. L'application démarre une petite VM auxiliaire installateur netboot Alpine qui exécute les étapes de post-installation du catalogue en tant que root dans un chroot sur l'image (voir la section suivante).
  5. Promotion. Un nouveau magasin de variables EFI est créé, et base.img, efivars.bin, base.version et image-state.json sont promus de manière atomique.

Étapes de post-installation : les paquets recommandés

L'image publiée doit être légalement redistribuable, elle ne contient donc que des logiciels strictement libres (Node.js, docker, kitty, gh, glab, kubectl, doctl, awscli, azure-cli, et plus encore sont intégrés). Tout ce qui n'est pas libre est déclaré comme étapes de post-installation signées dans le catalogue et installé sur votre machine, dans votre copie de l'image. Les étapes de base à la version 4.3.0 sont :

SeqÉtapeÉditeurMode d'installation
10Claude CodeAnthropicnpm, encapsulé dans le scanner de chaîne d'approvisionnement Socket.dev (npx --yes @socketsecurity/cli npm install -g --silent @anthropic-ai/claude-code)
20Codex CLIOpenAInpm, encapsulé par Socket.dev
30Grok CLIx.aiScript d'installation du fournisseur
40Google Cloud SDKGooglegcloud, gsutil, bq

Le consentement fonctionne comme suit : lors d'une nouvelle installation, toutes les étapes de base s'exécutent sans invite supplémentaire — démarrer la configuration depuis l'écran de bienvenue (ou taper bromure-cli init) constitue le consentement. Les étapes publiées ultérieurement nécessitent une approbation explicite via l'invite Nouveaux paquets recommandés décrite sous Mises à jour et versionnage de l'image de base. Comme la signature du catalogue couvre le texte de commande de chaque étape, un CDN compromis ne peut pas altérer ce qui s'exécute en tant que root dans votre image.

La solution de repli par construction locale

Si le téléchargement échoue pour une raison côté téléchargement — hors ligne, panne du CDN, échec de somme de contrôle ou d'expansion — l'application affiche une alerte Échec du téléchargement de l'image avec les boutons Construire localement et Annuler. Elle ne bascule jamais silencieusement. (La commande CLI bromure-cli init, en revanche, bascule automatiquement sans demander.)

La construction locale produit la même image sur votre propre Mac :

  1. Télécharge le noyau et l'initramfs netboot Alpine 3.22 (environ 25 MB, mis en cache dans le répertoire de support).
  2. Alloue un nouveau disque sparse de 24 GB.
  3. Démarre une VM installateur Alpine à usage unique (4 vCPU, 4 GB de RAM), pilotée via sa console série, qui debootstrap Ubuntu noble, installe l'outillage libre et GRUB.
  4. Applique les mêmes étapes de post-installation du catalogue que le chemin de téléchargement.

Les messages de progression incluent « Téléchargement de l'installateur netboot Alpine… », « Allocation d'un disque sparse de 24GB… », « Démarrage de l'installateur Alpine (celui-ci pilote l'installation d'Ubuntu)… » et « Exécution de setup.sh… ». La barre de progression sur ce chemin est pilotée par les lignes de journal de l'installateur et plafonne à 97 % jusqu'au saut final « Image de base prête ».

La construction locale comprend un dispositif de résilience aux VPN : toutes les récupérations de paquets de l'invité passent par un proxy côté hôte en cours de processus, l'installateur limite le MTU de la carte réseau de la VM avant tout téléchargement, le DHCP obtient une seconde chance, une condition d'absence de réseau interrompt tôt, et une panique du noyau invité déclenche une nouvelle tentative propre automatique. Deux échappatoires connexes :

  • Si la VM installateur n'obtient pas de bail DHCP, la construction échoue avec une alerte Problème réseau pendant la construction de l'image de base proposant Réparer et réessayer (redémarre les démons réseau de macOS ; demande votre mot de passe administrateur) ou Annuler.
  • Sur les VPN qui absorbent les transferts volumineux (par exemple WireGuard à un MTU de 1420), vous pouvez fixer le MTU de la VM installateur : defaults write io.bromure.agentic-coding vm.mtu -int 1400.

Vous pouvez également choisir explicitement la construction locale à tout moment — Reconstruire l'image de base…Reconstruire localement dans le menu de l'application, ou bromure-cli init --build-local.

Points de terminaison réseau utilisés pendant la configuration

Pour les administrateurs de pare-feu et de proxy, l'installation communique avec :

Point de terminaisonObjectif
https://dl.bromure.ioCatalogue d'images (images/img-catalog.json) et téléchargements d'images
https://dl-cdn.alpinelinux.orgFichiers netboot Alpine 3.22 (construction locale et VM auxiliaire de post-installation)
Miroirs de paquets et points de terminaison des fournisseursPaquets Ubuntu, registre npm, Socket.dev, scripts d'installation des fournisseurs, récupérés par l'installateur via le proxy côté hôte de l'application
https://bromure.io/api/v1/release-agentic-codingFlux Sparkle pour les mises à jour de l'application (ne fait pas partie de la configuration de l'image)

L'installation elle-même n'ouvre aucun port TCP en écoute ; le proxy de paquets côté hôte utilisé pendant les constructions se lie à un port éphémère uniquement localhost par construction.

Durée de configuration et utilisation du disque

CheminDurée typiqueNotes
Téléchargement préconstruitTemps de transfert pour ~3 GB, plus l'expansion, plus ~2–5 minutes de post-installationDominé par la vitesse de votre connexion
Construction localeEnviron 10 minutesDélai du marqueur d'installation 30 minutes ; délai strict 45 minutes ; les exécutions de post-installation seule 20/30 minutes

Utilisation du disque :

  • Pour démarrer : au moins 8 GB libres sur le volume hébergeant ~/Library/Application Support/BromureAC/.
  • Après l'installation : l'image de base occupe environ 6–8 GB physiquement (24 GB logiques — les blocs sparse ne coûtent de l'espace qu'une fois écrits).
  • Par espace de travail : le disque de chaque espace de travail commence comme un clone copie-sur-écriture APFS de l'image de base, il est donc quasiment gratuit au départ et ne croît qu'au fur et à mesure que l'espace de travail écrit des données.

La configuration a lieu une fois par version d'image de base — les lancements suivants vont directement au navigateur d'espaces de travail.

Où tout est stocké

Tout ce que l'application écrit réside sous votre compte utilisateur ; rien n'est installé à l'échelle du système sauf le lien symbolique optionnel bromure-cli.

CheminContenu
~/Library/Application Support/BromureAC/Le répertoire de support de l'application : image de base, catalogues, espaces de travail, CA par installation
~/Library/Application Support/BromureAC/base.imgL'image de base Ubuntu (24 GB logiques, ~6–8 GB physiques)
~/Library/Application Support/BromureAC/efivars.binMagasin de variables EFI pour l'image de base
~/Library/Application Support/BromureAC/base.versionEstampille de version de l'image installée (p. ex. 200, 200.1)
~/Library/Application Support/BromureAC/image-state.jsonProvenance de l'image et UUID des étapes de post-installation appliquées
~/Library/Application Support/BromureAC/img-catalog.jsonCopie mise en cache du catalogue d'images téléchargé
~/Library/Application Support/BromureAC/profiles/Un répertoire par espace de travail : profile.json, disk.img (le clone copie-sur-écriture de l'espace de travail de l'image de base), home.img, clés SSH
~/Library/Application Support/BromureAC/alpine-vmlinuz, alpine-initramfs, alpine-initramfs-shimmedFichiers d'installateur netboot Alpine mis en cache
~/Library/Application Support/BromureAC/browser/La copie propre de l'application de l'image du navigateur intégré, si installée (~/Library/Application Support/Bromure/ — le répertoire de l'application sœur du navigateur — est réutilisé lorsqu'il est présent)
~/Library/Application Support/BromureAC/base.img.partial, base.img.gz.partial, efivars.partialFichiers d'installation transitoires ; leur présence signifie qu'une installation est en cours ou a été interrompue
~/Library/LaunchAgents/io.bromure.agentic-coding.boot.plistLaunchAgent de démarrage à l'ouverture de session, écrit automatiquement lorsqu'un espace de travail active le démarrage au démarrage (voir Espaces de travail)
/usr/local/bin/bromure-cliLien symbolique CLI optionnel
Domaine UserDefaults io.bromure.agentic-codingRéglages de l'application

Deux éléments résident ailleurs par nécessité :

  • La clé maîtresse des identifiants est stockée dans le trousseau de protection des données de macOS (marqué cet appareil uniquement — elle ne quitte jamais le Mac), et non dans le répertoire de support. Les secrets sur disque sont du texte chiffré AES-256-GCM ; voir Identifiants.
  • Le bundle de l'application intègre un plist de démon launchd privilégié (io.bromure.fatclient-tunnel) utilisé par l'assistant réseau de mise en miroir à distance. Il est enregistré à la demande, et le premier enregistrement fait apparaître un interrupteur d'approbation sous Réglages Système › Général › Éléments de connexion ; voir Accès à distance.

La commande bromure-cli info affiche à tout moment l'estampille de version de l'image installée, ses tailles logique et physique, et son chemin.

Mises à jour et versionnage de l'image de base

Estampilles de version et révisions décimales

L'image installée enregistre sa version dans base.version. La partie majeure provient de la constante de version intégrée dans l'application (200 à la version 4.3.0) ; toute reconstruction, retéléchargement ou amendement au même niveau majeur ajoute une révision décimale (200200.1200.2). Le fichier annexe image-state.json enregistre l'origine de l'image et quels UUID d'étapes de post-installation ont été appliqués.

Deux comparaisons utilisent ces estampilles :

  • La vérification de mise à jour au niveau de l'application ne compare que les majeures, de sorte que vous n'êtes invité que pour des versions d'image délibérées.
  • La détection de dérive par espace de travail compare l'estampille complète enregistrée lors du clonage d'un espace de travail avec l'estampille actuelle ; tout changement (y compris une révision décimale) fait que l'espace de travail propose une réinitialisation vers la nouvelle base. Une mise à jour d'image ne touche jamais d'elle-même les disques d'espaces de travail existants — les réinitialisations de dérive sont toujours votre décision (voir Espaces de travail).

Les images préconstruites sont republiées chaque semaine avec des paquets Ubuntu frais, mais les republications hebdomadaires ne changent pas la version — seul un changement de version délibéré dans une version de l'application déclenche une invite de mise à jour, de sorte que vous n'êtes pas harcelé chaque semaine. Un catalogue CDN périmé ne peut jamais proposer une rétrogradation : seules les versions strictement plus récentes comptent.

L'invite de mise à jour

Lorsqu'une version d'image majeure plus récente est disponible — soit parce qu'une mise à jour de l'application en intègre une, soit parce que le catalogue en publie une — le lancement affiche une alerte non bloquante, Mise à jour de l'image de base disponible : « Votre image de base est à la version X mais la version Y est disponible. L'image actuelle fonctionne toujours — la mise à jour télécharge la nouvelle image préconstruite (quelques GB ; reconstruction locale en solution de repli) et réapplique les paquets recommandés. »

  • Mettre à jour maintenant démarre la réinstallation en priorité téléchargement dans la fenêtre de configuration.
  • Plus tard l'ignore pour ce lancement ; la question vous est reposée au lancement suivant. L'image existante continue de fonctionner dans les deux cas.

Nouveaux paquets recommandés

Lorsque le catalogue acquiert des étapes de post-installation qui ne sont pas encore enregistrées comme appliquées dans image-state.json, le lancement affiche une alerte de consentement, Nouveaux paquets recommandés, listant les nouvelles étapes : « Il est recommandé d'installer de nouveaux paquets : … Bromure les installe dans l'image de base (quelques minutes, dans la VM d'arrière-plan). Les espaces de travail existants continuent de fonctionner ; l'invite de dérive de chacun proposera une réinitialisation pour les prendre en compte. »

  • Installer applique les étapes à un clone copie-sur-écriture APFS de base.img et échange l'image amendée de manière atomique — les espaces de travail existants continuent de fonctionner tout du long. L'estampille de version reçoit une incrémentation de révision décimale (p. ex. 200200.1). La progression apparaît dans la fenêtre de configuration, intitulée « Installation des paquets recommandés » / « L'image de base est en cours d'amendement. Les espaces de travail existants continuent de fonctionner. »
  • Plus tard reporte ; la question vous est reposée au lancement suivant.

Rien ne s'exécute jamais sans ce consentement — les étapes de post-installation s'exécutent en tant que root dans l'image de base. Les installations antérieures à image-state.json sont migrées au lancement : toutes les étapes de base intégrées sont marquées comme déjà appliquées.

Reconstruction manuelle

Pour forcer une réinstallation à tout moment, choisissez Reconstruire l'image de base… dans le menu de l'application (sous Accès à distance…). Elle demande Mettre à jour l'image de base ? — « Télécharge la dernière image préconstruite (ou relance l'installateur local complet, ~5–10 min) et réapplique les paquets recommandés. Les disques des espaces de travail existants ne sont pas touchés — au prochain lancement, l'invite de dérive de chacun proposera une réinitialisation vers la nouvelle base. » — avec Télécharger la préconstruite, Reconstruire localement et Annuler.

L'ancienne image reste active jusqu'à ce que la nouvelle soit entièrement construite (grâce aux fichiers .partial et à l'échange atomique), de sorte que les sessions peuvent toujours démarrer pendant la reconstruction. L'équivalent CLI est bromure-cli init (priorité téléchargement) ou bromure-cli init --build-local.

Maintenir l'application à jour

L'application se met à jour elle-même avec Sparkle : elle vérifie https://bromure.io/api/v1/release-agentic-coding automatiquement une fois par jour, et les mises à jour sont vérifiées par rapport à la même clé publique épinglée qui signe les catalogues d'images. Un élément manuel Rechercher les mises à jour… figure dans le menu de l'application, juste sous À propos. (L'élément est absent dans les versions de développement, où le programme de mise à jour n'est pas initialisé.)

Les mises à jour de l'application et les mises à jour de l'image de base sont indépendantes : mettre à jour l'application n'invite à une mise à jour d'image que lorsque la nouvelle version de l'application change délibérément la version d'image intégrée.

Passer à un nouveau Mac

Il n'existe pas d'assistant de migration intégré. Le chemin recommandé est une installation propre plus une copie sélective de vos données d'espace de travail :

  1. Sur le nouveau Mac, installez l'application et effectuez la configuration initiale (retélécharger l'image de base est plus rapide et plus propre que de la copier — base.img et efivars.bin sont des artefacts propres à chaque machine que l'application recrée gratuitement).
  2. Quittez l'application sur les deux Mac.
  3. Copiez ~/Library/Application Support/BromureAC/profiles/ de l'ancien Mac vers le même emplacement sur le nouveau. Chaque sous-répertoire est un espace de travail : sa définition (profile.json), son disque de VM (disk.img — vos dépôts clonés, caches et historique du shell), son volume home et ses clés SSH.
  4. Lancez l'application sur le nouveau Mac. Vos espaces de travail apparaissent dans le navigateur d'espaces de travail. Si un espace de travail a été cloné à partir d'une révision d'image de base différente de celle maintenant installée, son invite de dérive propose une réinitialisation — refusez-la pour conserver le disque actuel de l'espace de travail (voir Espaces de travail).

Trois choses ne sont intentionnellement pas transférées :

  • Les identifiants. La clé maîtresse qui chiffre les secrets stockés réside dans le trousseau de protection des données du Mac et est marquée cet appareil uniquement. Les blocs de secrets chiffrés de l'ancien Mac sont illisibles sur le nouveau ; les métadonnées non sensibles de chaque profile.json survivent, de sorte qu'il suffit de ressaisir vos clés API et jetons dans le volet des identifiants (voir Identifiants).
  • L'inscription entreprise. L'identité d'installation (certificat feuille mTLS) est propre à chaque installation et stockée uniquement sur l'appareil ; réinscrivez le nouveau Mac (voir Entreprise).
  • Les réglages de l'application dans le domaine de valeurs par défaut io.bromure.agentic-coding, sauf si vous les migrez vous-même.

Astuce : Les fichiers disk.img des espaces de travail sont sparse, et leurs économies de copie-sur-écriture ne survivent pas à une copie réseau — un espace de travail qui coûte quelques GB sur l'ancien Mac peut se matérialiser à sa pleine taille écrite pendant le transit. Utilisez une copie tenant compte du sparse (par exemple rsync -aS) et vérifiez d'abord l'espace libre sur la destination.

L'Assistant de migration d'Apple copie l'ensemble du répertoire de support comme des fichiers ordinaires ; cela fonctionne, mais vous vous retrouvez tout de même dans les situations d'identifiants et d'inscription ci-dessus, et l'image de base copiée perd sa relation copie-sur-écriture avec les disques des espaces de travail (ce qui coûte de l'espace physique supplémentaire jusqu'à ce que vous reconstruisiez).

Désinstallation complète

Pour réinitialiser uniquement l'image de base tout en conservant l'application et vos espaces de travail, exécutez bromure-cli reset (ajoutez --yes pour ignorer la confirmation). Elle supprime base.img, efivars.bin, base.version et image-state.json, de sorte que le prochain lancement démarre la configuration de zéro. Elle ne touche jamais aux espaces de travail, et elle laisse en place les fichiers netboot Alpine mis en cache et le catalogue mis en cache.

Il n'y a pas de désinstallateur intégré. La suppression complète est manuelle :

  1. Quittez l'application (et tout agent headless : vérifiez avec pgrep -fl bromure-cli).

  2. Glissez Bromure Agentic Coding de /Applications vers la Corbeille.

  3. Supprimez le répertoire de support — image de base, tous les espaces de travail et leurs disques, caches, et la CA par installation :

    rm -rf ~/Library/Application\ Support/BromureAC
    
  4. Supprimez le LaunchAgent de démarrage à l'ouverture de session, s'il est présent :

    rm -f ~/Library/LaunchAgents/io.bromure.agentic-coding.boot.plist
    
  5. Retirez les entrées de l'application sous Réglages Système › Général › Éléments de connexion et extensions (l'interrupteur d'approbation du démon de tunnel de mise en miroir à distance, si vous l'avez déjà activé).

  6. Supprimez le lien symbolique CLI, si vous l'avez installé :

    sudo rm -f /usr/local/bin/bromure-cli
    
  7. Facultativement, effacez les réglages de l'application :

    defaults delete io.bromure.agentic-coding
    

Avertissement : L'étape 3 supprime définitivement le disque de chaque espace de travail — dépôts clonés, travail non validé, caches de paquets, historique du shell. Poussez ou exportez tout ce à quoi vous tenez au préalable.

La clé maîtresse des identifiants dans le trousseau devient orpheline une fois son texte chiffré disparu ; elle est inoffensive, mais vous pouvez la supprimer avec Accès au trousseau en recherchant io.bromure.agentic-coding.master-key.