Cos'è e perché conta
Un lavoro grosso non sta in una conversazione sola. Claude lavora dentro una memoria limitata, la finestra di contesto: lì ci sono la chat, i file che ha letto, i risultati dei comandi. Più vai avanti, più si riempie.
Quando arriva vicino al limite, Claude Code la compatta da solo: riassume la conversazione. Le tue richieste e il codice importante restano, ma le istruzioni date all'inizio possono perdersi. E ogni sessione nuova parte da zero, senza la conversazione di prima.
Quindi se il piano sta solo nella chat, dopo un giorno non c'è più. Io lo tengo in un file nel progetto: ogni sessione lo legge all'inizio e lo aggiorna alla fine. Il file fa da memoria, le sessioni sono turni di lavoro. Poi una sveglia rilancia il lavoro quando si ferma.
1. Il file di bordo
Crea nella cartella del progetto un file BORDO.md con questo contenuto:
# Obiettivo [Una frase. Es: "Nuova pagina dei prezzi, online, provata da telefono".] ## Fatto - [ ] (le sessioni spuntano qui quello che hanno finito, con la data) ## Manca - [ ] [primo pezzo] - [ ] [secondo pezzo] ## Decisioni prese - (ogni sessione scrive qui cosa ha deciso da sola e perché) ## Dove mi sono fermato (l'ultima sessione scrive qui il punto esatto da cui ripartire)
L'obiettivo è una frase sola, e deve dire quando il lavoro è finito davvero. «Nuova pagina dei prezzi, online, provata da telefono» è diverso da «fai la pagina dei prezzi»: la prima ha una fine, la seconda no.
In «Manca» metti pezzi piccoli, che una sessione chiude in una volta: una schermata, un collegamento, una correzione. Se un pezzo è «fai tutto il pagamento», è troppo grande. Se non sai come spezzarlo, fallo fare a Claude prima di partire:
Leggi BORDO.md e il codice del progetto. Riscrivi la sezione 'Manca' in pezzi piccoli e in ordine, ognuno abbastanza piccolo da finirlo in una sessione e da poterlo provare. Non scrivere codice.
«Decisioni prese» secondo me è la parte più utile. Quando torni dopo due giorni e trovi una scelta strana, lì c'è scritto perché. E la sessione dopo non la rifà al contrario.
2. La frase che apre ogni sessione
Ogni volta che apri una sessione su questo lavoro, la prima cosa che scrivi è questa:
Leggi BORDO.md prima di fare qualsiasi cosa. Lavora solo sul primo punto di 'Manca'. Quando lo finisci e i test passano, spostalo in 'Fatto' con la data, scrivi le decisioni prese e aggiorna 'Dove mi sono fermato'. Se la conversazione diventa troppo lunga, aggiorna il file e fermati: un'altra sessione riprenderà da lì.
«Prima di fare qualsiasi cosa» evita che Claude cambi file prima di sapere dove siamo. «Solo sul primo punto» tiene la sessione corta. «I test passano» vuol dire che il pezzo funziona, non solo che è scritto: se non hai test, metti il tuo controllo, tipo «la pagina si apre senza errori».
L'ultima frase è quella che fa durare il lavoro per giorni. La sessione non deve arrivare in fondo a tutti i costi: deve lasciare il file in ordine, così chi viene dopo riparte pulito.
Se devi chiudere tu a metà di un pezzo, prima chiedi questo:
Fermati qui. Aggiorna BORDO.md: in 'Dove mi sono fermato' scrivi il punto esatto, cosa hai già cambiato e qual è il prossimo passo. Non lasciare niente solo nella chat.
Se non vuoi incollare la frase ogni volta, puoi scriverla nel file CLAUDE.md del progetto: Claude Code lo legge all'inizio di ogni sessione e lo ricarica anche dopo una compattazione.
3. Quando la memoria si riempie
Non serve una sessione lunghissima: chiudi e aprine una nuova con la stessa frase. Riparte dal file, non dalla chat.
In Claude Code ci sono tre comandi che ti aiutano:
- /context ti fa vedere quanto è piena la memoria e cosa la occupa.
- /compact riassume la conversazione e libera spazio, restando nella stessa sessione. Puoi dargli un focus, tipo /compact tieni le decisioni.
- /clear apre una conversazione nuova e vuota. La vecchia non si perde: la ritrovi con /resume.
Per un lavoro di giorni io preferisco /clear e la frase di partenza. Con la compattazione decide Claude Code cosa tenere. Con il file so esattamente da dove riparte.
Per rileggere una conversazione di prima, da terminale claude --continue riapre l'ultima sessione della cartella e claude --resume ti fa scegliere da una lista. Per andare avanti, però, si riparte da BORDO.md.
4. La sveglia
La sveglia è un controllo automatico che ogni tanto guarda se il lavoro è fermo e lo rilancia. Nel video l'ho detta così:
ogni ora controlla BORDO.md; se 'Dove mi sono fermato' non è cambiato e 'Manca' non è vuoto, apri una sessione nuova con la frase di partenza
Claude Code può far partire un lavoro da solo a orari fissi, in tre modi. Cambia dove gira e cosa deve restare acceso.
Nell'app desktop: un'attività programmata
È quella che uso io per questo. Nell'app desktop, nella scheda Code, apri Routines, crea una nuova routine e scegli Local. Scrivi le istruzioni, scegli la cartella del progetto e la frequenza, per esempio Hourly, cioè ogni ora. Gira sul tuo computer, quindi vede i tuoi file, BORDO.md compreso.
C'è un dettaglio che cambia il prompt: ogni volta che parte, l'attività apre già lei una sessione nuova. Quindi nelle istruzioni metti direttamente il controllo e il lavoro:
Leggi BORDO.md. Se 'Manca' è vuoto, non fare niente e fermati. Altrimenti lavora solo sul primo punto di 'Manca'. Quando lo finisci e i test passano, spostalo in 'Fatto' con la data, scrivi le decisioni prese e aggiorna 'Dove mi sono fermato'. Se la conversazione diventa troppo lunga, aggiorna il file e fermati: un'altra sessione riprenderà da lì.
Gira solo con l'app aperta e il computer sveglio: se il computer dorme, quel giro salta. E se il giro prima è ancora in corso, il nuovo non parte. Prima di lasciarla da sola premi Run now e approva i permessi che chiede con «always allow», sennò si blocca alla prima richiesta e ti aspetta.
Nel terminale: /loop
Se lavori da terminale, /loop ripete un prompt a intervalli finché la sessione resta aperta: per esempio /loop 1h seguito dal controllo da fare. Però non apre una sessione nuova, il prompt torna nella stessa conversazione. Si ferma se chiudi il terminale e si spegne da solo dopo sette giorni. Va bene per una giornata di lavoro, meno per lasciarlo andare da solo.
Nel cloud: le routine
Con /schedule crei una routine che gira sui server di Anthropic, anche a computer spento, al massimo una volta all'ora. Ogni giro è una sessione nuova, ma su una copia fresca del tuo repository GitHub, non sui file del computer: BORDO.md deve stare nel repository. Le modifiche finiscono su un branch a parte e il giro dopo riparte dal branch principale, quindi scrivi nel prompt su quale branch lavorare.
Nessuna magia: un diario di bordo e una sveglia.
Gli errori più comuni
- Tenere il piano solo nella chat: dopo una compattazione o una sessione nuova non c'è più. Scrivilo in BORDO.md.
- Pezzi troppo grandi in «Manca»: la sessione si riempie a metà lavoro. Spezzali finché ognuno si chiude in una sessione.
- Chiudere la sessione senza aggiornare il file: la prossima riparte al buio. Prima di chiudere fai sempre aggiornare «Dove mi sono fermato».
- Non dire quando un pezzo è finito: Claude lo sposta in «Fatto» appena l'ha scritto. Chiedi che i test passino, o metti il tuo controllo.
- Lasciare l'attività programmata senza averla provata: si blocca alla prima richiesta di permesso. Falla partire una volta con Run now e approva quello che serve.
Checklist
- BORDO.md è nella cartella del progetto
- L'obiettivo dice quando il lavoro è finito
- Ogni punto di «Manca» si chiude in una sessione
- Ogni sessione parte dalla frase di partenza
- Prima di chiudere, «Dove mi sono fermato» è aggiornato
- La sveglia è stata provata una volta a mano
Domande frequenti
Devo chiamarlo per forza BORDO.md?
No, il nome lo scegli tu. Conta che sia lo stesso nel file, nella frase di partenza e nella sveglia.
Posso lavorarci anch'io mentre c'è la sveglia?
Sì, ma non nello stesso momento sullo stesso file. Quando ti metti a lavorare, metti in pausa l'attività programmata e riattivala quando chiudi.