Non ho configurato niente, oggi. Ho descritto un obiettivo — usare i miei agenti dal telefono invece che dal computer — e l'ho passato agli agenti. Loro hanno fatto il resto. Io ho detto sì o no.
Il muro
Sul telefono uso Moshi, un terminale SSH. Doveva essere banale: indirizzo della VPS, porta, utente, chiave. Invece: timeout dopo venti secondi.
Prima di toccare qualunque cosa ho fatto una prova di controllo: ho aperto il browser del telefono sulla porta 3080 della VPS. La mia interfaccia si è aperta subito. Quindi la rete c'era, il telefono era connesso, il problema non era il telefono.
Quando qualcosa non funziona, la domanda giusta non è «cosa aggiusto»: è «cosa funziona già». Quella risposta dimezza il problema.
La diagnosi
Ho passato il caso all'agente sulla VPS. Invece di tentare correzioni, ha letto il filtro di rete effettivo. Il firewall di Tailscale lasciava passare verso la macchina solo cinque porte: 22, 3080, 8765, 8767, 8768. La porta 2222 — dove ascolta il servizio SSH — non era in elenco: i pacchetti venivano scartati in silenzio, senza un errore. Da qui il timeout.
Le prove: nei log SSH c'erano zero connessioni dal telefono, mentre la 3080 (in elenco) funzionava.
Poi l'agente ha provato tutte le strade per risolvere da solo — spostare SSH sulla 22, inoltrare la porta con Tailscale — e le ha trovate tutte chiuse: servono privilegi di root che quella macchina non ha. A quel punto si è fermato.
Ed è la parte che apprezzo di più: un buon agente non è quello che riesce sempre, è quello che sa dove fermarsi e ti lascia una diagnosi chiara. La modifica andava fatta in una console con i miei account: superficie sensibile, mano umana. Regola fissa del mio sistema: una sola mano sulle superfici sensibili.
La mano mobile
Mancava un pezzo: compilare i campi dentro Moshi, sul telefono. Un agente che vive sulla VPS è in un container: non ha USB, non vede il telefono.
Qui entra Artemis, l'agente di Google che guida telefoni Android veri. Usa ADB e scrcpy: guarda lo schermo, tocca, scrive, e si comanda in linguaggio naturale. L'ho installato con agy sul PC di casa, dove il telefono era collegato via USB. È nativo MCP: si collega alla chat dell'IDE, non è un bot in più da mantenere.
Il primo test è stato umile: «apri le impostazioni e dimmi la batteria». Fatto, con screenshot. Poi l'ho mandato su Moshi e ha compilato la connessione: indirizzo, porta, utente, chiave. Esattamente quello che avrei fatto io, toccando lo schermo riga per riga.
La verifica
Io ho cambiato una riga nella console di Tailscale. Ho premuto Connect. E poi ho verificato nei log, perché «dovrebbe funzionare» non è una risposta.
Risultato: la connessione è arrivata dal telefono, l'autenticazione è passata con la chiave dedicata, la sessione era aperta e attiva. Prima della correzione: zero connessioni dal telefono. Dopo: due, entrambe arrivate.
Cosa porto a casa
Non ho scritto codice. Non ho configurato niente a mano. Ho fatto tre cose: dato l'obiettivo, preso le decisioni, detto sì o no sulle superfici sensibili. Il resto l'hanno fatto gli agenti.
L'orchestrazione è il nuovo mestiere. Il valore non è saper digitare: è sapere cosa chiedere, a chi, e dove fermarsi. E due tentativi massimi: se due strade falliscono, non ne provi una terza identica. Nell'era degli agenti, il loop infinito è il nemico numero uno.
Il collo di bottiglia non è più la tastiera. È la chiarezza con cui dai l'obiettivo.
Video: Ho collegato i miei agenti al telefono: Artemis, Moshi e la VPS.