
Avant de commencer
- VM macOS : les sessions de Devin doivent s’exécuter sur macOS. Si vous utilisez un déploiement Dedicated SaaS, demandez à votre account team d’activer les VM macOS. Voir Prise en charge de macOS.
- Un repository : créez un repository vide (par exemple,
habit-tracker) et donnez-y accès à Devin via votre Git integration. - Mode bureau : activez Enable desktop mode dans Settings > Customization afin que Devin puisse interagir avec le Simulator et enregistrer ses tests. Voir Computer Use.
Les sessions macOS consomment autant que les sessions Linux. Aucun surcoût n’est appliqué pour macOS.
Étape 1 : demandez à Devin de développer l’application
Dans Slack, ajoutez la bang command
!mac à votre message. Via l’API, définissez platform: "macos" lors de la création d’une session.- Précise la version de la plateforme et les frameworks, pour que Devin n’ait pas à deviner la cible de déploiement ni l’architecture.
- Précise l’appareil du Simulator, pour que les commandes de build utilisent une destination qui existe réellement sur la VM.
- Décrit un flux de vérification concret, pour que Devin teste le comportement qui vous intéresse au lieu de se contenter de vérifier que le code compile.
Étape 2 : observer Devin compiler et tester
-
Il met en place la structure du projet : il écrit
project.yml, les vues SwiftUI, le modèle d’habitude et la cible de test, puis exécutexcodegen generate. -
Il compile et corrige les erreurs : il lance
xcodebuilddepuis son shell, lit la sortie du compilateur et corrige les erreurs jusqu’à ce que le build et les tests passent. -
Il exécute l’application dans le Simulator : il démarre l’appareil, puis installe et lance le build :
- Il teste le flux que vous avez décrit : il parcourt l’application avec Computer Use, vérifie le résultat à l’écran et enregistre l’exécution.
- Il ouvre une pull request avec le résumé et la capture d’écran.
Étape 3 : relire et itérer
Step 4 : publier une bêta sur TestFlight
- Configurer App Store Connect : accepter les contrats, enregistrer le bundle ID, créer la fiche de l’application, créer un groupe bêta et répondre au questionnaire de conformité à l’exportation.
- Créer une API key App Store Connect et télécharger son fichier
.p8. - Ajouter les secrets Devin :
ASC_KEY_ID,ASC_ISSUER_ID,ASC_PRIVATE_KEYetAPPLE_TEAM_ID. - Autoriser l’accès réseau aux serveurs d’Apple si votre organisation applique une politique réseau restrictive.
Utilisez le même bundle ID dans
project.yml et dans App Store Connect. Si Devin a choisi un bundle ID générique à l’étape 1, demandez-lui d’abord de mettre à jour le projet.xcodebuild archive, puis la téléverse avec xcodebuild -exportArchive. Il ajoute ensuite le build traité au groupe bêta. Pour réutiliser ces étapes sans les répéter dans chaque prompt, ajoutez une entrée testflight à la section knowledge du blueprint. Voir Enregistrer les étapes dans votre blueprint.
Conseils
- Épingler la chaîne d’outils : les images macOS incluent plusieurs versions de Xcode. Utilisez
DEVELOPER_DIRouxcode-selectdans le blueprint pour en choisir une. Voir Sélectionner une version de Xcode. - Stocker les credentials sous forme de secrets : les API keys App Store Connect, les certificats de signature et les tokens de registres de packages privés doivent être placés dans Secrets. Devin les lit comme des variables d’environnement.
- Autoriser les registres de packages : si votre organisation applique une politique réseau restrictive, assurez-vous que la liste d’autorisation macOS inclut Swift Package Manager, CocoaPods ainsi que tout registre privé utilisé par votre application. Voir Accès réseau.
- Redémarrer le Simulator après une sortie de veille : lorsqu’une session se met en veille puis en sort, les fichiers sont conservés, mais pas les processus en cours d’exécution. Demandez à Devin de relancer le Simulator avant les tests.
- Demander des preuves : demandez des captures d’écran ou un enregistrement d’écrans spécifiques afin de vérifier l’UI sans avoir à exécuter l’application vous-même.
Limites
- Devin exécute les applications sur des simulateurs, et non sur des iPhone ou iPad physiques. Pour tester sur un appareil, installez un build TestFlight.
- Les mesures de chronométrage et de profilage réalisées dans une VM ne reflètent pas les performances réelles d’un appareil.
- Les containers s’exécutent en émulation logicielle sur les VM macOS : les tâches qui en font un usage intensif sont donc lentes.
Étapes suivantes
Téléversements TestFlight
Configuration d’App Store Connect, API keys et secrets pour le téléversement des builds
Prise en charge de macOS
Options de blueprint, outils préinstallés et dépannage pour les sessions macOS
Tests et enregistrements
Comment Devin teste votre application et en enregistre les résultats

