ShiftStage

Onze fois qui paient l’année

Pas « on peut regarder à distance ». Des situations précises, dont chacune finit autrement par un ordinateur portable ouvert.

Sessions IA

L’agent attend un mot depuis quarante minutes

Vous lui avez confié un refactoring et vous êtes parti. Au bout de dix minutes il a voulu toucher un fichier dont il n’était pas sûr, et il a demandé. Personne n’a répondu — ce n’est pas une pause, c’est le reste de l’exécution annulé. Ici la question arrive sur votre téléphone à la seconde même, avec la commande et le risque nommé, et une touche remet le travail en marche.

La modification d’un agent et sa demande de lancer les tests, sur le téléphone et sur la montre

Git · diff

Relire ce qu’un agent a écrit avant que cela devienne votre commit

Douze fichiers touchés. Deux sont exactement ce que vous aviez demandé. Un est un renommage qu’il a jugé bon de faire au passage. Dans un autre, un test a été modifié jusqu’à ce qu’il passe. Vous lisez cela comme au bureau — vrai diff, coloration conservée, fragments modifiés marqués dans la ligne —, puis vous indexez les trois qui sont justes, abandonnez la retouche du test et renvoyez le reste en une phrase.

Un diff sur le téléphone : lignes supprimées et ajoutées, celles du commit choisies ligne par ligne

Fichiers · aperçu

Le rapport qu’il a écrit, lu avant de décider quoi que ce soit

Vous aviez demandé une analyse écrite dans un fichier. Le lire ne devrait pas vouloir dire le télécharger dans un dossier que vous oublierez : il s’ouvre mis en forme, la source est à une touche, et rien ne reste sur le téléphone tant que vous ne le dites pas. Ensuite : garder une copie qui s’ouvrira plus tard même avec le Mac endormi, ou l’envoyer depuis le menu de partage à qui l’attend.

Un fichier source du Mac, ouvert sur le téléphone avec coloration syntaxique

Fichiers · transfert

Quelqu’un a besoin d’un fichier qui n’existe que sur votre Mac

L’export de vendredi, un build signé, le document qu’un collègue attend dans les dix minutes. Il est dans un dossier que vous pourriez désigner les yeux fermés — et vous en êtes à deux heures.

  • aperçuRegarder avant de récupérer : texte, markdown, images, PDF — en flux, pas d’un bloc
  • garderUne copie sur l’appareil seulement sur votre commande, et elle dit quand elle a été enregistrée
  • envoyerVers l’extérieur par le menu de partage : messagerie, mail, formulaire d’envoi
  • dans les deux sensUne photo de la galerie ou un cliché pris sur place atterrit dans le dossier du projet

Git · historique

« Qu’est-ce qui a atterri ici la semaine dernière » est la seule question utile

Quelque chose se comporte différemment et personne ne se souvient d’y avoir touché. Vous n’avez pas besoin de tout le dépôt sur le téléphone — il vous faut les vingt derniers commits de cette branche, leurs auteurs et le diff des deux qui ont l’air coupables. Filtrer par auteur, par fichier, par message ; ouvrir le commit ; lire.

L’historique des commits en graphe de branches, avec tags, auteurs, dates relatives et hash courts

CI · notifications

Le build a cassé après que vous avez poussé et refermé le capot

Quarante minutes plus tard le téléphone dit qu’il a échoué — et sur quoi il a échoué, pas seulement qu’il a échoué. Avant, c’était un problème pour demain, ou un portable ouvert sur une table de restaurant.

  • notificationNomme le build et l’étape, pas seulement « quelque chose a cassé »
  • journalPlié en étapes avec leurs durées ; de l’étape en échec directement à sa place dans la sortie
  • terminalUn vrai PTY sur le Mac : reproduire, remonter, rechercher
  • relanceCorriger la coquille, committer, relancer — depuis le même écran

Processus

Quelque chose tient le port et ne s’arrêtera pas tout seul

Un serveur de dev qui a survécu à l’onglet fermé. Une série de tests qui ne finit pas. Un processus qui mange un cœur depuis midi et chauffe une machine devant laquelle personne n’est assis.

Les processus du Mac par charge : une compilation, un serveur de dev sur le port 3000, une base de données

CI/CD

Une pipeline à lancer, et pas un Mac en vue

C’est la seule partie de ShiftStage qui n’a besoin d’aucun Mac : le téléphone parle directement au fournisseur. Une release à découper depuis un train, une nightly à relancer, une étape de déploiement qui attend l’aval de quelqu’un.

Une exécution attend l’approbation du déploiement en production, avec Approuver et Refuser sur le téléphone
  • fournisseursGitHub Actions · GitLab CI/CD · Jenkins · TeamCity
  • auto-hébergésPas seulement les clouds ; plusieurs comptes à la fois, chacun marqué de son système
  • paramètresLes noms, types et valeurs par défaut que la pipeline déclare ; un champ requis ne part pas vide
  • approbationsUne exécution qui attend un humain se débloque depuis le téléphone, là où le fournisseur le permet

CI · journaux

Un journal de build vraiment lisible sur un téléphone

Les journaux de build sont ce qu’il y a de pire à lire sur un petit écran, et tous les autres outils vous tendent pour cela une page web à écarter des doigts.

▾ Build et tests                    2 min 14 s
    ✓ 128 cibles compilées
    ✓ 1 412 tests passés
▾ Empaquetage                       41 s
    ✗ notarytool : identifiants invalides
      → aller à cette ligne du journal
▸ Envoi des artefacts                ignoré
  • couleurCe que le build a écrit en couleur reste en couleur
  • progressionLes barres redessinées montrent leur dernier état, pas mille lignes périmées
  • sectionsLes groupes se plient, chacun avec son temps
  • artefactsCe que l’exécution a produit, avec les tailles, enregistré sur l’appareil

Connexion

Vous êtes sorti, et la connexion vous a suivi

À la maison, le téléphone et le Mac se parlent directement par le réseau local, et aucun serveur à nous n’est sur le chemin. Sortez, et ils se connectent encore directement chaque fois que les réseaux le permettent ; quand ils refusent, un relais transmet un flux qu’il ne peut pas lire. On voit sur quel chemin on est, et on peut interdire le troisième.

Journal d’accès

Ce qui a été fait sur votre Mac, et par quel appareil

Un accès à distance sans trace est de la confiance sur parole. L’agent tient un journal sur le Mac : chaque opération demandée par un appareil connecté, quand, quel appareil, et comment elle s’est terminée — avec l’objet nommé par la requête elle-même.

  • consignéChaque opération : quand, par quel appareil, comment elle s’est terminée
  • objetLe chemin, la branche, le processus, la chaîne recherchée, les octets transférés
  • jamaisNi contenu de fichier, ni sortie, ni saisie, ni conversation avec une IA
  • à vousLe journal ne quitte jamais le Mac, et vous pouvez le couper

À partir d’ici, c’est votre Mac

Tout ce qui précède, c’est ce que nous avons imaginé. La liste ne s’arrête pas là, parce que le terminal est un vrai — un PTY sur votre machine, pas un bac à sable à nous.

Vos scripts, vos alias, vos outils de build, vos automatisations, les dotfiles que vous trimballez de machine en machine depuis dix ans. Si ça marche sur votre Mac, ça marche depuis votre téléphone — et rien de tout cela ne passe par nous en chemin.

Tout cela en une seule liste

Terminal
Vrai PTY, plusieurs sessions, historique avec recherche, sélection et collage, couleur et mise en forme intactes. Ce que vous tapez apparaît sans attendre l’écho. Saisie masquée pour sudo, libérée par Face ID.
Fichiers
Parcourir, prévisualiser, lire, modifier, transférer dans les deux sens, intégration à Fichiers. Photos et vidéos du téléphone vers un dossier de projet ; les copies gardées s’ouvrent avec le Mac endormi.
Recherche
Par nom et par contenu, sur tous les espaces à la fois, en flux à mesure des correspondances — avec chemin, ligne et contexte. Expressions régulières, casse, filtres d’extension. Une nouvelle requête annule l’ancienne sur le Mac.
Git
État, diff, index, commit, push, branches, historique et son graphe, stash, rebase, cherry-pick, résolution de conflit à trois côtés, sous-modules, LFS — comme structure, pas comme texte gratté.
Processus
Ce qui tourne, ce que cela coûte, quels ports sont tenus, ce que cela imprime et comment l’arrêter.
Sessions IA
Onze CLI agentiques trouvées toutes seules, et toute autre que vous avez : lancer, surveiller, répondre, approuver, archiver, reprendre. Vos clés, votre configuration, aucun modèle de notre côté.
CI/CD
GitHub Actions, GitLab CI/CD, Jenkins, TeamCity, auto-hébergés compris. Plusieurs comptes à la fois, paramètres déclarés, annulation, relance, relance des seuls échecs, approbations, artefacts, étapes, journaux lisibles. N’a pas besoin de Mac.
Notifications
Builds, sessions qui posent une question, processus gérés qui meurent — nommés par leur sujet et envoyés seulement quand vous ne regardez pas déjà.
Apple Watch
Répondre à la question d’un outil, voir ce qui tourne, libérer le Mac. Sa propre clé, une connexion directe, ouverte pour l’action et fermée après.
Journal d’accès
Sur le Mac et appartenant au Mac : chaque opération avec son objet, jamais de contenu. Filtrable, exportable et désactivable.

Il ne recopie pas votre bureau, ne déplace pas votre travail sur un serveur et ne met pas un modèle entre vous et votre code. Le Mac reste la machine qui travaille.

Les questions qui viennent ensuite · Comment l’obtenir

Onze situations.
Sept dollars par mois.

Gratuit pour un Mac sur votre propre réseau.