TIPS 54 · SIMULATORE

Un iPhone dentro Claude

Il simulatore iOS dentro l'app desktop di Claude: Claude compila la tua app, la apre accanto alla chat e la prova da solo. E il trucco delle schermate demo per fare screenshot veri dall'ultimo commit, per i post e per l'App Store.

Cos'è e perché conta

Quando Claude cambia una schermata della tua app iOS, di solito ti dice «fatto». Poi tocca a te: compilare, aprire il simulatore, arrivare a quella schermata e guardare. E se non va, glielo rispieghi a parole.

Nell'app desktop di Claude per Mac c'è il pannello iOS Simulator: un iPhone simulato accanto alla chat. Claude compila l'app, la installa, la apre, tocca i bottoni e legge lo schermo per controllare la sua modifica. Tu guardi in diretta, e puoi toccare anche tu.

La seconda metà della guida è il trucco che usiamo in STRIKT per i post e per l'App Store: schermate demo che si aprono già piene con un parametro all'avvio, così ogni screenshot è vero e viene dall'ultimo commit. Il pannello è in beta pubblica, solo nell'app desktop per macOS, sui piani Pro, Max, Team ed Enterprise (escluse le organizzazioni Enterprise con la configurazione HIPAA).

1. Cosa ti serve

  • Un Mac: il simulatore di Apple gira solo su macOS.
  • Xcode con la piattaforma iOS, che porta i simulatori. Se mancano, scaricali dalle impostazioni di Xcode o con xcodebuild -downloadPlatform iOS.
  • L'ultima versione dell'app desktop di Claude: Claude > Check for Updates…
  • Una sessione locale: nelle sessioni cloud o via SSH Claude gira su una macchina che non vede i simulatori del tuo Mac.
  • Un progetto che si compila per il simulatore iOS. Va bene qualunque progetto che lo faccia.

2. Fallo partire e fagli verificare il suo lavoro

  1. Nell'app desktop apri la scheda Code e avvia una sessione nella cartella del progetto.
  2. Chiedigli di avviare o provare l'app. Il pannello si apre da solo appena l'app parte; puoi aprirlo anche tu con il bottone iOS Simulator nella barra del titolo e poi Attach simulator.
  3. La prima volta l'app ti chiede se Claude può usare quel simulatore. Il consenso vale per comandarlo e fargli screenshot, una volta per dispositivo. Compilare l'app e aprire un link sul dispositivo seguono invece la modalità dei permessi della sessione, perché la compilazione lancia gli script del progetto sul tuo Mac.

Il punto non è vedere l'app: è che Claude controlli la sua modifica invece di dirti «fatto» sulla fiducia. Mettilo nella richiesta:

Il prompt
Sposta il bottone «Salva» in fondo alla schermata del profilo. Poi compila, avvia l'app nel simulatore, apri il profilo, cambia il nome e tocca «Salva». Chiudi e riapri l'app e controlla che il nome sia rimasto. Mandami lo screenshot prima e dopo, e dimmi se qualcosa non torna.

Vuoi un dispositivo preciso? Scrivilo: «avviala sul simulatore dell'iPhone SE». Serve a vedere se un testo va a capo male su uno schermo piccolo.

3. Tocca insieme a lui

  • Tocchi e scorri cliccando e trascinando sullo schermo del pannello.
  • Cmd+Shift+H per la Home, Cmd+L per bloccare, Cmd+Freccia destra per ruotare.
  • Cmd+S salva uno screenshot e Cmd+R una registrazione dello schermo, sulla Scrivania.
  • Quando sopra lo schermo c'è la scritta Claude is using this device, non toccare: il dispositivo è lo stesso, e i tuoi tocchi cambiano quello che vede lui.

Ogni sessione ha i suoi simulatori, fino a 4. Quelli accesi da Claude si spengono da soli quando chiudi l'app, quando archivi la sessione o 10 minuti dopo che li stacchi dal pannello.

4. Il trucco: schermate demo già piene

Per un post o per l'App Store serve la schermata nel suo momento migliore: la classifica piena, la giornata completata. Arrivarci a mano vuol dire account di prova, rete, a volte la fotocamera, e tanti tocchi. Così si finisce con screenshot vecchi o ridisegnati, che non sono più l'app vera.

Noi facciamo così: nell'app ci sono delle viste demo che si aprono con un argomento di avvio, cioè una parola che passi all'app quando parte, o con una variabile d'ambiente. Partono già piene di dati realistici scritti nel codice, senza account, rete o fotocamera. Sono le schermate vere, con gli stessi componenti: cambiano solo i dati.

  • Una vista demo per ogni schermata che ti serve, con un nome chiaro.
  • Dati finti ma credibili: numeri che l'app potrebbe mostrare davvero, nessun dato di persone vere. Quando nel post si vedono nomi e numeri della demo, scriviamo che è un esempio.
  • Tutto il codice demo dentro #if DEBUG, così non finisce nell'app che pubblichi.
  • La lingua si sceglie all'avvio con -AppleLanguages "(it)" -AppleLocale it_IT: stesse schermate, in ogni lingua.

Non devi scriverle tu, le viste demo. Chiedile a Claude:

Il prompt
Aggiungi alla mia app delle viste demo per gli screenshot. Se l'app parte con l'argomento -DemoScreen seguito da un nome (per esempio today, stats, profile), salta login e onboarding e apre direttamente quella schermata, già piena di dati realistici scritti nel codice: niente rete, account, fotocamera o richieste di permesso. Usa gli stessi componenti delle schermate vere, cambiano solo i dati. Metti tutto dentro #if DEBUG. Alla fine scrivi nel README l'elenco delle viste e il comando per aprirle nel simulatore.

5. Gli screenshot dall'ultimo commit

Con le viste demo, uno screenshot diventa un comando. Claude usa xcrun simctl, lo strumento di Xcode che comanda i simulatori dal terminale:

  1. Aggiorna e compila l'ultima versione per il simulatore, e annota il commit con git log -1 --oneline: così sai da dove viene ogni immagine.
  2. Usa un simulatore solo per gli screenshot, non uno acceso da un'altra sessione: xcrun simctl create con un nome e il modello di iPhone, poi xcrun simctl boot.
  3. Barra di stato pulita: xcrun simctl status_bar <dispositivo> override --time 9:41 --batteryState charged --batteryLevel 100 --cellularBars 4 --wifiBars 3.
  4. Installa: xcrun simctl install <dispositivo> <percorso del file .app>.
  5. Apri la vista: xcrun simctl launch --terminate-running-process <dispositivo> <bundle id> -DemoScreen today. Le variabili d'ambiente arrivano all'app se le metti davanti al comando con il prefisso SIMCTL_CHILD_.
  6. Scatta: xcrun simctl io <dispositivo> screenshot today.png. Poi guarda l'immagine: deve mostrare esattamente quello che dice il testo del post.
Il prompt
Fammi i 6 screenshot per l'App Store dall'ultimo commit. Aggiorna il repository, annota il commit, compila per il simulatore e crea un simulatore nuovo solo per questo, di un modello con le misure accettate da App Store Connect. Barra di stato alle 9:41 con batteria e segnale pieni. Poi apri una alla volta le viste demo today, stats, workout, friends, profile e settings con -DemoScreen e salva un PNG per ciascuna in screenshots/, con il commit nel nome. Controlla che i PNG non abbiano trasparenza, guarda ogni immagine e dimmi se qualcosa è vuoto, tagliato o nella lingua sbagliata.

Per l'App Store puoi caricare fino a 10 screenshot per dimensione di schermo, in PNG o JPEG, senza trasparenza. Le misure in pixel cambiano con il tipo di iPhone: controllale nella pagina Screenshot specifications di App Store Connect prima di scegliere il simulatore. Per i social mettiamo lo screenshot dentro un iPhone intero con le proporzioni vere; quando il codice cambia, basta rilanciare la stessa richiesta.

Gli errori più comuni

  • Chiedere «sistema la schermata» senza chiedere la verifica nel simulatore. Chiedi sempre: riavvia, arriva lì, mandami lo screenshot.
  • Accedere con account veri nel simulatore. Gli screenshot che Claude fa del dispositivo vanno ad Anthropic e restano con la conversazione: usa solo dati finti.
  • Lasciare il codice demo fuori da #if DEBUG: finisce nell'app pubblicata.
  • Fare gli screenshot su un simulatore già usato da un'altra sessione: lo stato dell'app non è quello che pensi.
  • Aspettarsi che Claude usi il tuo iPhone vero: comanda solo dispositivi simulati. Per il telefono vero lanci tu l'app da Xcode e gli mandi uno screenshot.

Checklist

  • Xcode con la piattaforma iOS e almeno un simulatore
  • App desktop di Claude aggiornata, sessione locale nella scheda Code
  • Viste demo dentro #if DEBUG, una per schermata
  • Barra di stato alle 9:41 prima degli screenshot
  • Commit annotato accanto alle immagini
  • Ogni screenshot guardato prima di usarlo

Domande frequenti

Funziona anche dal terminale, senza l'app desktop?

Il pannello no, è dell'app desktop. Dalla riga di comando Claude arriva al simulatore con computer use, cioè controllando lo schermo come faresti tu con il mouse. I comandi xcrun simctl della sezione 5 invece funzionano ovunque ci sia Xcode.

Funziona anche con l'iPad?

Sì. Il pannello mostra iPhone e iPad simulati, gli stessi che gestisci in Xcode. Chiedi a Claude di avviare l'app sul simulatore che ti serve, o sceglilo dal menu dei dispositivi del pannello.

Le schermate demo non sono un modo di barare?

No: sono l'app vera, con il codice di oggi. Finti sono solo nomi e numeri, e per questo li vogliamo credibili. Barare è una schermata disegnata a mano di una cosa che l'app non fa.

← Tutte le guide