Skip to content

xtool

Compile, signe et installe des applis iOS SwiftPM depuis Linux, WSL ou macOS sans Xcode, pour qu'un agent Linux puisse livrer sur un iPhone.

Avis de Sheela · Mis à jour

Voir sur GitHub Open source

Notre note

3.9/5

xtool met les builds iOS à portée d'un agent Linux, mais la connexion Apple a encore besoin d'un humain et d'un téléphone branché.

Qu’est-ce que xtool ?

xtool est un remplacement multiplateforme des parties de Xcode qui transforment du code en une appli iOS installée. Il compile un projet Swift Package Manager en une appli, la signe, la provisionne via Apple Developer Services et l'installe sur un iPhone ou iPad connecté en USB, depuis Linux, Windows via WSL ou macOS. Une bibliothèque, XKit, expose les mêmes fonctions de provisionnement et d'appareil à d'autres programmes Swift.

xtool n'est pas un projet d'IA. Il est pertinent ici parce que les agents de codage tournent surtout dans des terminaux et conteneurs Linux, où les builds iOS étaient auparavant impossibles ; avec xtool, les étapes de build, de signature et d'installation deviennent des commandes shell qu'un agent peut lancer. L'intégration d'agent vient d'un skill tiers de 2389 Research, pas du dépôt xtool.

Il dépend encore d'Apple : sur Linux, il vous faut une chaîne d'outils Swift 6.4, usbmuxd pour parler à l'appareil, et un Xcode.xip téléchargé avec votre identifiant Apple, duquel xtool extrait un SDK iOS. Sur macOS, Xcode lui-même doit être installé.

xtool vaut-il le coup ?

xtool retire le Mac de la boucle build-signature-installation pour les applis iOS SwiftPM, un travail que les propres outils d'Apple ne font que sur un Mac. Le dépôt a environ 14 000 étoiles GitHub, est sous licence MIT, est développé depuis novembre 2024 et a livré 1.24.0 le 26 octobre 2026. Pour un agent de codage confiné à une VM Linux, cela transforme une appli iOS d'une impasse en quelque chose qu'il peut compiler et poser sur un appareil avec `xtool dev`.

Il remplace Xcode l'outil, pas le SDK d'Apple. L'installation sur Linux signifie installer Swift 6.4, usbmuxd et l'AppImage xtool, puis pointer `xtool setup` vers une archive Xcode 27.1 que vous téléchargez dans un navigateur après vous être connecté et avoir accepté la licence d'Apple. La connexion a deux modes : une clé d'API App Store Connect, qui a besoin du programme développeur payant et est la recommandation documentée, ou le mot de passe de votre identifiant Apple, qui marche avec n'importe quel compte mais repose sur des API privées d'Apple ; la documentation suggère un identifiant Apple jetable pour ce dernier. Depuis 1.22.2, la connexion par mot de passe se présente à Apple comme un appareil Pixel 7.

C'est ce chemin d'API privées qui porte le turnover. Les utilisateurs d'identifiant Apple ont dû se reconnecter après 1.22.2 le 14 octobre et à nouveau après 1.23.0 le 22 octobre, 1.24.0 a corrigé une autre source d'erreurs HTTP 503 à la connexion, et une issue ouverte (#407) rapporte que les codes 2FA n'arrivent jamais sur 1.24.0. La version 1.20.0 a déplacé les builds vers SwiftBuild et a exigé de réinstaller le SDK Darwin. Six versions ont atterri entre le 21 septembre et le 26 octobre, et il y a 124 issues et pull requests ouvertes, dont des clés xtool.yml mal tapées silencieusement ignorées (#353) et des échecs de signature sur les cibles d'extension d'appli (#379).

Les lacunes face à Xcode sont structurelles. Selon byteiota, il n'y a pas de simulateur sur Linux, pas d'aperçus SwiftUI et pas d'Instruments, et les applis chargées en sideload avec un compte gratuit expirent après 7 jours. byteiota décrit aussi un skill Claude Code pour xtool ; ce skill est le plugin using-xtool de 2389 Research, qui empêche surtout les agents de confondre xtool.yml avec le project.yml de XcodeGen, et le dépôt xtool lui-même ne livre que des notes de contributeur pour les agents. Le résultat est une boucle à demi automatisée : l'agent peut écrire, compiler et installer, mais une personne branche encore le téléphone, approuve l'invite 2FA et vérifie l'écran.

Là où il fait la différence

  • Un développeur dans un studio de deux personnes qui travaille sur Linux et possède un iPhone mais pas de Mac

    Faire tourner un prototype SwiftUI sur mon propre téléphone

    Installez Swift 6.4, usbmuxd et l'AppImage, extrayez le SDK du Xcode.xip, puis `xtool new` et `xtool dev`. Gratuit avec la connexion par mot de passe sur un identifiant Apple de rechange, mais les builds en sideload expirent après 7 jours et la connexion a cassé plusieurs fois en octobre 2026.

  • Un ingénieur plateforme qui fait tourner des agents Claude Code dans des VM Linux

    Laisser l'agent compiler et installer des builds iOS au lieu de s'arrêter au code Swift

    Ajoutez le plugin xtool de 2389 Research pour que l'agent utilise xtool.yml et `xtool dev` correctement, et branchez un iPhone de test en USB. La connexion par clé d'API évite de stocker un mot de passe d'identifiant Apple sur la VM ; un humain gère encore la confiance de l'appareil et vérifie le résultat.

  • Le CTO d'une petite entreprise d'applis qui paie des minutes de CI macOS

    Déplacer les contrôles de build iOS de routine vers des runners Linux moins chers

    byteiota place les runners GitHub Actions macOS à environ dix fois le coût des runners Linux, si bien que compiler les cibles SwiftPM sur Linux économise de l'argent à chaque push. Il faut un SDK Darwin extrait sur le runner, et les projets liés à des fichiers .xcodeproj doivent d'abord être convertis.

Avant de vous engager

Mise en route
Linux ou WSL : chaîne d'outils Swift 6.4, usbmuxd (passthrough USBIPD sur WSL), l'AppImage xtool depuis les versions GitHub, et le .xip de Xcode 27.1 pour que `xtool setup` extraie un SDK iOS. macOS : `brew install xtool-org/tap/xtool` avec Xcode installé.
Intégrations
Projets Swift Package Manager configurés avec xtool.yml ; clés d'API App Store Connect ou connexion par identifiant Apple ; les outils libimobiledevice pour l'accès à l'appareil ; la bibliothèque SwiftPM XKit ; un skill tiers using-xtool pour Claude Code et npx skills de 2389 Research.
Données et confidentialité
Les identifiants vont uniquement à Apple, selon la documentation ; le mode mot de passe utilise des API privées d'Apple et s'identifie comme un appareil Pixel 7. Aucune télémétrie n'est documentée. Licence MIT.
Coût à grande échelle
Gratuit. La distribution via TestFlight ou l'App Store exige encore le programme Apple Developer à 99 $ par an ; l'économie est le matériel Mac et les minutes de CI macOS, que byteiota place à environ dix fois les prix des runners Linux.
Limites
Pas de simulateur Linux, d'aperçus SwiftUI ni d'Instruments ; Windows uniquement via WSL ; 124 issues et pull requests ouvertes ; la connexion par identifiant Apple a eu besoin d'une réauthentification deux fois en octobre 2026 et des échecs 2FA sont rapportés sur 1.24.0.

Les points forts

  • Compile et installe des applis iOS depuis Linux et WSL
  • Projets SwiftPM simples ; pas de .xcodeproj à maintenir
  • La connexion par clé d'API utilise l'API publique App Store Connect d'Apple
  • La bibliothèque XKit expose le provisionnement et le contrôle d'appareil

Les points faibles

  • La connexion par mot de passe utilise des API privées d'Apple et casse souvent
  • A encore besoin du Xcode.xip d'Apple et d'un appareil physique sur Linux
  • Pas de simulateur, d'aperçus ni d'Instruments sur Linux
  • Reconnexions et réinstallations de SDK entre les versions récentes

Idéal pour

Les développeurs et configurations d'agents sur Linux ou Windows qui ont besoin de compiler et d'installer des applis iOS SwiftPM sur un vrai appareil sans Mac.

xtool : questions fréquentes

xtool vaut-il le coup ?
xtool met les builds iOS à portée d'un agent Linux, mais la connexion Apple a encore besoin d'un humain et d'un téléphone branché. Nous lui donnons 3.9 sur 5.
Combien coûte xtool ?
Gratuit et open source (MIT). La connexion par mot de passe marche avec n'importe quel identifiant Apple ; la connexion par clé d'API et la distribution App Store ou TestFlight ont besoin du programme Apple Developer payant (99 $ par an).
Quels sont les inconvénients de xtool ?
La connexion par mot de passe utilise des API privées d'Apple et casse souvent; a encore besoin du Xcode.xip d'Apple et d'un appareil physique sur Linux; pas de simulateur, d'aperçus ni d'Instruments sur Linux; reconnexions et réinstallations de SDK entre les versions récentes.
À qui s’adresse xtool ?
Les développeurs et configurations d'agents sur Linux ou Windows qui ont besoin de compiler et d'installer des applis iOS SwiftPM sur un vrai appareil sans Mac.
Combien coûte xtool pour une équipe ou en production ?
Gratuit. La distribution via TestFlight ou l'App Store exige encore le programme Apple Developer à 99 $ par an ; l'économie est le matériel Mac et les minutes de CI macOS, que byteiota place à environ dix fois les prix des runners Linux.
xtool est-il sûr pour les données de l’entreprise ?
Les identifiants vont uniquement à Apple, selon la documentation ; le mode mot de passe utilise des API privées d'Apple et s'identifie comme un appareil Pixel 7. Aucune télémétrie n'est documentée. Licence MIT.

Réponses vérifiées le 28 oct. 2026.