For AI agents: fetch the complete documentation index at /llms.txt, the full documentation corpus at /llms-full.txt, the agent skill at /skill.md, or this page as Markdown at /it/docs/mobile/agents.md (or send Accept: text/markdown).
Costruisci con un agente di codice
Affida attività a un agente di codifica: i file che legge, gli skill inclusi e la revisione che ti mantiene in controllo.
Procedura dettagliata per principianti
Prerequisiti: leggi le due guide per principianti qui sotto e completa la configurazione locale Mobile. Un agente di codifica è uno strumento AI — Cursor, Claude Code, Devin o un assistente simile — che legge il tuo progetto, modifica file ed esegue comandi. Tutto in questa pagina si applica a qualunque tu usi.
Termini rapidi: un prompt è il testo di istruzioni che incolli nell'agente. Un diff è l'elenco delle modifiche ai file che propone. La radice del repository è la cartella più in alto che contiene package.json — l'agente dovrebbe sempre partire da lì.
1. Apri .agents/skills/ nella radice del repository e copia lo skill più vicino alla tua attività — add-a-mobile-screen è un buon primo tentativo.
2. Incollalo nel tuo agente e descrivi la tua modifica, poi aggiungi una riga: Leggi llms.txt, poi AGENTS.md, poi .ai/PROJECT_CONTEXT.md prima di toccare il codice.
3. Fai elencare all'agente i file che modificherà e i controlli che eseguirà prima di intervenire. Quando ha finito, esamina il diff — stai approvando modifiche reali al tuo prodotto.
4. Pubblicazione, invio allo store e chiamate a provider a pagamento non fanno mai parte di un prompt di attività. Tienili come passaggi separati che approvi esplicitamente.
I file che il tuo agente legge
Il repository include un piccolo insieme di file scritti per gli agenti, non solo per le persone. Non devi mai incollare questo contesto a mano — punta l'agente su llms.txt e leggerà il resto da solo.
L'ordine di lettura conta: llms.txt è la mappa, AGENTS.md fissa i confini e .ai/PROJECT_CONTEXT.md conserva ciò che le sessioni precedenti hanno imparato. Un agente che salta i confini produce codice che non puoi pubblicare.
| Percorso | Cosa offre all'agente |
|---|---|
| `llms.txt` | La mappa di ingresso del repository, generata per elencare solo ciò che questo checkout effettivamente include |
| `AGENTS.md` | I confini non negoziabili: solo lavoro locale finché non approvi di più, scope per workspaceId, segreti solo lato server |
| `.ai/PROJECT_CONTEXT.md` | Memoria tra sessioni — cosa è cambiato di recente e perché; da leggere prima delle modifiche al codice |
| Documenti mirror `.ai/` | Una nota `.ai/<path>.md` corrispondente accanto ai file importanti, che registra decisioni e discussioni aperte per file |
| `.agents/skills/` | Runbook di attività scritti per gli agenti — i sei skill Mobile elencati qui sotto |
| `docs/agent-security.md` | La checklist di accettazione — autenticazione, controlli di workspace e permessi, log redatti |
| `docs/mobile-store-submission.md` | Il runbook del rilascio nello store — account, build, note di revisione e ordine di invio |
| `.env.example` | L'inventario completo dell'ambiente — l'agente non inventa mai un nome di variabile assente da questo file |
Gli skill inclusi
Ogni file sotto .agents/skills/ è un brief completo: incollalo o lascia che l'agente lo legga, e le regole del kit viaggiano con esso — dati server-first, nessun segreto nel bundle, offline solo come fallback di errore di rete.
La libreria prompts/ incollabile è inclusa solo nel repository Web; questo checkout porta invece gli skill. Per una configurazione non presidiata, usa il prompt già pronto nella guida agent-setup.
add-a-mobile-screen— aggiungere o modificare una schermata, il suo flusso di dati e il suo comportamento offlineadding-a-dependency— aggiungere, aggiornare o spostare una dipendenza npm in sicurezzareviewing-a-pr— revisionare un diff per correttezza, isolamento del workspace e segretiupgrading-from-upstream— portare una release più recente del kit nella tua appverify-changes— scegliere ed eseguire i controlli giusti prima della consegnawriting-unit-tests— coprire la nuova logica con Vitest
Come l'agente ricorda tra le sessioni
Gli agenti non hanno memoria tra le sessioni — la cartella .ai/ è la memoria. .ai/PROJECT_CONTEXT.md registra cosa è cambiato di recente e perché. Accanto, un documento specchio come .ai/apps/mobile/src/ideas/index.md spiega le decisioni dietro apps/mobile/src/ideas/index.ts che il codice da solo non mostra.
Il contratto è semplice: leggi il mirror di un file prima di modificarlo e aggiorna il mirror quando la modifica arriva. Le voci Open Threads registrano il lavoro non finito così la sessione successiva riprende invece di ricominciare. Un mirror obsoleto è peggio di nessuno — quando esamini il diff dell'agente, controlla che i mirror dei file modificati si siano mossi insieme al codice.
Esamina onestamente il lavoro dell'agente
Un'attività finita è una prova, non un riepilogo. Prima di tenere il lavoro dell'agente, controllalo nel modo in cui docs/agent-security.md controlla un deployment:
Quando qualcosa non va, rispedisci il diff indietro — l'agente corregge il proprio lavoro più in fretta quando nomini il controllo fallito. Per qualsiasi cosa non avrebbe mai dovuto tentare da solo, dillo esplicitamente una volta; il confine vale per il resto della sessione.
- Ha eseguito i test che dichiara — chiedi il comando e il suo output, non una conclusione.
- I segreti sono rimasti solo lato server — niente di nuovo porta il prefisso
NEXT_PUBLIC_oEXPO_PUBLIC_e nessuna chiave è finita in un report o in un commit. - Ogni lettura e scrittura di dati dell'utente è rimasta delimitata da
workspaceId— nessuna query si fida di un id inviato dal browser. - Il mirror
.ai/di ogni file modificato si è mosso insieme al codice. - Pubblicazione, deployment e chiamate a provider a pagamento sono rimasti passaggi separati che hai approvato — l'agente non ha mai fatto merge, push o deploy da solo.
- Se un passaggio è fallito due volte, si è fermato e ha riportato il comando fallito invece di improvvisare.
Per continuare la configurazione, leggi Autenticazione nativa.