
offstage
offstage cloud · Programmation · Productivité
offstage confie aux agents IA et aux jobs de CI un vrai Mac : un compte macOS 27 sur Apple silicon, piloté par API et facturé à la seconde.

À propos de offstage
About
Qu'est-ce qu'offstage
offstage est une sandbox macOS pour agents IA et jobs de CI. Chaque sandbox est un compte utilisateur complet sur un Mac Studio, auquel vous accédez par une API Mac dans le cloud ou par un SDK TypeScript. Vous lancez des commandes shell, déplacez des fichiers, prenez des captures, puis fermez le compte une fois le travail fini.
Deux besoins ont fait naître le produit. Compiler et tester des logiciels Apple sur un hôte Linux reste pénible, et laisser un agent cliquer sur votre bureau présente des risques. Ici, chaque tâche reçoit son propre compte plutôt qu'un accès root sur une machine partagée, et le compte disparaît à la fermeture.
Les limites font partie de l'offre : pas de sudo ni de Homebrew, xcodebuild test vers un simulateur iOS ne fonctionne pas encore, et une sandbox ne dépasse jamais 24 heures.
Premiers pas
- Connectez-vous à la console sur console.offstage.cloud et créez une clé dans API keys. Elle commence par sk_offstage_ et ne s'affiche qu'une fois.
- Installez le SDK avec npm install offstage-cloud, ou appelez l'API HTTP depuis n'importe quel langage.
- Créez une sandbox avec Sandbox.create(), avec un timeout adapté au travail prévu.
- Lancez des commandes avec sandbox.commands.run(), puis écrivez et lisez des fichiers avec sandbox.files.write() et sandbox.files.read().
- Fermez la sandbox dans un bloc finally pour arrêter le compteur.
Informations sur le produit
Aperçu des tarifs, des plateformes compatibles et des performances de offstage.
Idéal pour
Les utilisateurs, tâches et cas d'usage où cet outil convient le mieux.
Utilisateurs
- Développeurs iOS et macOS
- Équipes qui construisent des agents pilotant l'ordinateur
- Développeurs sous Windows ou Linux
Tâches
- Exécuter swift build et swift test à chaque pull request
- Reproduire un bug qui n'apparaît que sous macOS 27
- Produire des captures pour la documentation
- Démarrer un simulateur iOS pour vérifier la mise en page
Cas d'usage
- Un agent de code arrive à une étape qui exige un Mac
- Une semaine de release avec une file de CI saturée
- Prototyper un script d'automatisation du bureau
Fonctionnalités clés
Un compte macOS par sandbox
Chaque sandbox Apple silicon fait tourner macOS 27 comme un compte utilisateur avec son propre dossier personnel et ses processus. Vous la pilotez appel par appel : lancer une commande dans zsh, écrire un fichier jusqu'à 10 MiB, le relire en texte ou en octets. Le reste du Mac Studio ne voit pas vos fichiers.
Un exécuteur de commandes qui se comporte comme un terminal
sandbox.commands.run() s'exécute dans zsh -lc et renvoie stdout, stderr, le code de sortie et la durée. Un code non nul ne lève pas d'exception, donc un test en échec reste un résultat normal sur lequel vous pouvez décider. Les commandes longues sont suivies jusqu'à 30 minutes.
Sessions headless et sessions de bureau
Une sandbox headless démarre directement dans un shell, ce qui convient aux compilations et aux scripts. Une sandbox gui vit dans une session de bureau ouverte, pour les apps avec fenêtres et les captures d'écran. Il n'y a pas d'API de clic ni de saisie : vous pilotez l'interface avec un programme qui tourne sur le Mac.
Un runner macOS pour GitHub Actions
Connectez votre organisation GitHub dans la console, puis mettez runs-on: offstage-macos dans le workflow. Chaque job reçoit un compte neuf, le runner GitHub exécute ce job, et le compte est effacé à la fin. Passez à offstage-macos-gui quand le job a besoin du bureau pour des tests d'interface sur simulateur.
Des tasks pour une CI sans surveillance
Une task clone la branche par défaut d'un dépôt public, lance votre commande et conserve les artefacts demandés. Le champ failureReason distingue une compilation cassée d'un clone raté, d'un timeout ou d'une machine jamais arrivée. L'attente en file ne coûte rien.
Facturation à la seconde avec plafond
Chaque sandbox et chaque task coûte $0.000217 par seconde, soit $0.78 par heure, sans minimum ni siège à payer. Les nouvelles équipes démarrent avec $5 de crédit et un budget mensuel de $50 que le propriétaire augmente ou supprime dans la console, avec des alertes à 50 %, 80 % et 100 %.
Avantages et inconvénients
Avantages
- Isolation : l'agent travaille dans son propre compte macOS, donc une commande imprudente n'atteint ni votre portable ni les fichiers d'une autre équipe.
- La chaîne d'outils Apple est préinstallée : Xcode 27.2, Swift, SwiftPM, clang, git et make sont présents sur chaque machine.
- L'attente en file est gratuite et la facturation se fait à la seconde : un test de deux minutes revient à environ trois centimes.
- Les agents de code se configurent seuls à partir d'un fichier sur api.offstage.cloud/SKILL.md, sans copie de clé à la main.
- Les tasks expliquent leur échec, ce qui indique si le problème vient de la compilation, du clone ou de la capacité.
Inconvénients
- Sans sudo ni Homebrew, les outils qui attendent des paquets système doivent être compilés dans le projet ou installés dans le dossier personnel.
- xcodebuild test vers une destination simulateur iOS ne marche pas encore, donc les suites d'interface ont toujours besoin d'un autre runner.
- Une équipe ne peut garder que 4 sandboxes ouvertes à la fois et un job de CI s'arrête à 60 minutes, ce qui exclut les grosses matrices.
- Pas d'API de clic ni de saisie : un agent qui pilote le bureau doit apporter son propre programme d'automatisation.
Questions fréquentes
À exécuter du travail macOS à la demande : compilations Apple, tests, simulateurs et boucles d'agents qui ont besoin d'un bureau. Vous envoyez des commandes par API au lieu de louer un Mac ou d'en garder un sur un bureau.
Contenus associés
Découvrez des outils, des compétences et des articles liés à offstage.
Alternatives à offstage
Base Code
Base44 (Wix) · Programmation · ProductivitéBase Code est un environnement de développement cloud partagé signé Base44. Votre équipe décrit des modifications sur un dépôt GitHub dans le chat, les vérifie en aperçu et les renvoie sous forme de pull requests.
Google EmbeddingGemma 2
Google DeepMind · Rédaction · Image · ProgrammationGoogle EmbeddingGemma 2 est un modèle ouvert de 740 millions de paramètres qui transforme texte, code, images, audio et images vidéo en vecteurs d'un même espace de 768 dimensions, sur un téléphone ou un ordinateur portable.
GitGlow
GitGlow · Programmation · ProductivitéGitGlow est un client Git de bureau qui place votre code et les modifications de vos agents IA dans une même revue, pour savoir ce qui quitte votre machine avant de livrer.
