Automazione dei sistemi elettrici di trasporto · Politecnico di Milano

Lezione 1 · Il progetto parte bene: cartella, regole, repository

Un’ora di pratica, in gruppo, dentro VS Code. Alla fine avete una cartella impostata in modo che l’agente ci lavori bene, un repository privato su GitHub condiviso fra voi, e i passi del vostro progetto scritti e disegnati.

Frecce della tastiera per andare avanti e indietro. Materiali del corso: danielemartini.eu/automazione

Prima di iniziare

Cosa serve avere

  • Un agente di coding installato e con il login fatto (uno solo).
  • git e un account GitHub. VS Code lo installiamo e lo colleghiamo a GitHub insieme, all’inizio.
  • Il gruppo di progetto: oggi si lavora insieme, un repository per gruppo.

Manca qualcosa? La guida di installazione lo copre comando per comando. Se oggi l’agente non funziona, segui lo stesso: tutto tranne la sezione 6 si fa anche senza.

Come è fatta l’ora

0-8
Cos’è un agente
8-13
Git e GitHub in cinque parole
13-22
VS Code pronto, e la cartella del progetto
22-35
CLAUDE.md e AGENTS.md, scritti insieme
35-47
Il repository del gruppo e le preferenze di ognuno
47-62
I flussi logici del progetto: si inizia oggi
62-70
Bonus: la pagina di presentazione. Compiti

1 · Cos’è un agente

Il modello da solo: sa, ma non fa

Un modello linguistico, ridotto all’osso, continua un testo: gli date dell’input, produce l’output più plausibile. Tutto dentro una finestra di testo. Tre cose gli sono precluse, e non “gli riescono male”: proprio non può farle.

Non vede i vostri file

Il modello lavora dentro una finestra di testo. La cartella del progetto è sul vostro disco: lui un disco non ce l’ha.

Non esegue niente

Se gli chiedete la media di mille righe non la calcola: la scrive. Un numero plausibile e un numero calcolato si assomigliano in modo pericoloso.

Non verifica

Non ha un secondo passaggio in cui controlla se quello che ha appena detto è vero. Una fonte inventata e una vera hanno la stessa forma.

È da qui che nasce quella che chiamate allucinazione. Non è un difetto che qualcuno sistemerà: è il comportamento previsto di un sistema a cui chiedete testo plausibile e che non ha nessun modo di controllare il mondo.

1 · Cos’è un agente

Stessa richiesta, a una chat e a un agente

Scrivi flussi.md con i tre passi del nostro progetto, poi fermati.

La chat: risponde

  1. 1Produce un testo plausibile con tre passi.
  2. 2Non ha guardato la cartella: non sa cosa sia il progetto.
  3. 3Non ha scritto nessun file: il testo è nella chat, e basta.
  4. 4Non ha controllato niente. Fine.

L’agente: fa

  1. 1Legge il contenuto della cartella: capisce il progetto e le regole.
  2. 2Vede che flussi.md non esiste e lo dice, come chiedono le regole.
  3. 3Scrive il file. Lo rilegge.
  4. 4Si ferma e riferisce: cosa ha scritto, e una domanda su un passo poco chiaro.

1 · Cos’è un agente

Un agente è un LLM che, attraverso un harness, agisce, osserva il risultato e decide il passo successivo. Persegue un obiettivo.

Pezzo 1 di 6: Un agente è un LLM

Si parte dal modello linguistico, lo stesso della chat. Non un modello diverso, non uno più intelligente: lo stesso, messo in condizioni diverse.

1 · Cos’è un agente

Un agente è un LLM che, attraverso un harness, agisce, osserva il risultato e decide il passo successivo. Persegue un obiettivo.

Pezzo 2 di 6: che, attraverso un harness,

L’harness è il programma intorno al modello: quello che avete installato. Gli presta le mani (leggere, scrivere, eseguire, cercare) e gli riporta quello che è successo. Senza, il modello resta chiuso nella sua finestra di testo.

1 · Cos’è un agente

Un agente è un LLM che, attraverso un harness, agisce, osserva il risultato e decide il passo successivo. Persegue un obiettivo.

Pezzo 3 di 6: agisce,

Il modello non esegue: chiede. «Elenca i file», «scrivi questo file», «lancia questo comando». L’harness fa, e può fare solo quello che sta nella sua lista. È lì che si mettono i limiti, prima.

1 · Cos’è un agente

Un agente è un LLM che, attraverso un harness, agisce, osserva il risultato e decide il passo successivo. Persegue un obiettivo.

Pezzo 4 di 6: osserva il risultato

Quello che è successo torna sotto gli occhi del modello: l’elenco dei file, il contenuto letto, l’errore del comando. Da questo momento lo sa; prima no. Non più testo plausibile: fatti.

1 · Cos’è un agente

Un agente è un LLM che, attraverso un harness, agisce, osserva il risultato e decide il passo successivo. Persegue un obiettivo.

Pezzo 5 di 6: e decide il passo successivo.

Avendo visto il risultato, sceglie la mossa dopo. La sequenza non era scritta prima: si forma strada facendo. Uno script non lo fa; una persona in laboratorio sì.

1 · Cos’è un agente

Un agente è un LLM che, attraverso un harness, agisce, osserva il risultato e decide il passo successivo. Persegue un obiettivo.

Pezzo 6 di 6: Persegue un obiettivo.

Il giro continua finché il modello non giudica l’obiettivo raggiunto. Se l’obiettivo è vago, o si ferma troppo presto o non si ferma. L’obiettivo lo date voi: è la parte che resta vostra.

1 · Cos’è un agente

Un agente è un LLM che, attraverso un harness, agisce, osserva il risultato e decide il passo successivo. Persegue un obiettivo.

In inglese ci stanno in dieci parole: “An LLM agent runs tools in a loop to achieve a goal.” (Simon Willison, 2025).

1 · Cos’è un agente

Il giro, un fotogramma alla volta

Il caso è quello di oggi: chiedete a un agente di scrivere docs/flussi.md. A sinistra chi è attivo; a destra la traccia, quello che il modello ha sotto gli occhi mentre decide.

Obiettivo

Decide

il modello

Fa

l’harness

Osserva

il risultato torna

e si ricomincia, finché l’obiettivo non è raggiunto

Fotogramma 1 di 8

L’obiettivo

Voi scrivete la richiesta. L’harness la mette davanti al modello insieme alle regole della cartella, che ha già caricato da solo.

La traccia: quello che il modello ha sotto gli occhi

  1. ▶ Scrivi flussi.md con i tre passi del progetto, poi fermati.

1 · Cos’è un agente

Di cosa è fatto, e dove sta ognuno dei pezzi oggi

Un modello
che decide il passo successivo. È solo un quinto della storia.
Quello che avete installato.
Degli strumenti
tutto quello che può chiedere di fare: leggere e scrivere file, eseguire comandi, cercare.
Ce li ha già. La lista la decide chi lo ha costruito, e voi ne togliete.
Un contesto
quello che ha sotto gli occhi mentre decide: la richiesta, i risultati finora, le regole del progetto.
CLAUDE.md o AGENTS.md, miePersonalizzazioni.md, flussi.md: tutta la lezione di oggi è costruire il contesto.
Un ciclo
chiede, riceve, decide di nuovo avendo letto il risultato. Finché non giudica raggiunto l’obiettivo.
Per questo l’obiettivo deve essere chiaro: se non si sa cos’è "fatto", o si ferma troppo presto o non si ferma.
Dei limiti
cosa gli è permesso, cosa richiede il vostro sì, cosa non può proprio fare.
Le regole negative di CLAUDE.md e AGENTS.md, e il commit che fate voi. I limiti si mettono prima, non dopo.
La verifica
qualcuno che non fa il lavoro ma lo ricontrolla.
Oggi siete voi: leggete cosa ha cambiato e lo provate. Sempre.

Uno stagista bravissimo al primo giorno: sa fare, ma del vostro progetto non sa niente e domani non si ricorderà niente di oggi. Il modello è un quinto della storia. Gli altri quattro quinti, il contesto e i limiti, li costruite voi: sono la lezione di oggi.

2 · Git e GitHub in cinque parole

Stessa cartella in tre posti, tranne un file

Siete in tre, con tre PC, sugli stessi file. Git tiene la storia e mette d’accordo le copie; GitHub è il posto dove sta la copia comune. VS Code li usa per voi: commit è una fotografia dei file con una riga che dice cosa è cambiato, Sincronizza manda le vostre e prende quelle degli altri.

PC di Anna

  • CLAUDE.md
  • AGENTS.md
  • diario.md
  • relazione/
  • README.md
  • .gitignore
  • miePersonalizzazioni.md

Il file evidenziato esiste solo qui: ognuno ha il suo, e non parte mai.

GitHub · repository privato del gruppo

  • CLAUDE.md
  • AGENTS.md
  • diario.md
  • relazione/
  • README.md
  • .gitignore

Lo vedono solo i collaboratori invitati. Ogni commit di ognuno finisce qui con push, e da qui arriva agli altri con pull.

PC di Luca

  • CLAUDE.md
  • AGENTS.md
  • diario.md
  • relazione/
  • README.md
  • .gitignore
  • miePersonalizzazioni.md

Il file evidenziato esiste solo qui: ognuno ha il suo, e non parte mai.

Stessa cartella in tre posti. Le regole del gruppo (CLAUDE.md e AGENTS.md) sono uguali per tutti perché viaggiano con il repository; le preferenze personali restano sul PC di ciascuno perché il .gitignore dice a git di non guardarle.

3 · VS Code pronto, e la cartella del progetto

Prima: VS Code installato

Chi ce l’ha già passa alla schermata dopo. Chi non ce l’ha: un comando, poi si riapre il terminale.

macOS (Terminale)

brew install --cask visual-studio-code

Windows (Terminale Windows)

winget install --id Microsoft.VisualStudioCode -e --source winget

Ubuntu

sudo snap install --classic code

3 · VS Code pronto, e la cartella del progetto

Poi: collegato a GitHub

  1. Aprite VS Code. Icona Account in basso a sinistra (il cerchio con la persona) → Accedi con GitHub → si apre il browser → Autorizza. Tornati in VS Code, l’icona mostra il vostro nome.
  2. Se git non c’è (VS Code lo dice con un avviso nel pannello Controllo del codice sorgente): guida di installazione, passo "git e GitHub CLI".

3 · VS Code pronto, e la cartella del progetto

La cartella del progetto

La struttura si decide prima di scrivere qualsiasi cosa. Se non la decidete voi, la decide l’agente, e ogni gruppo finisce in un posto diverso. Questa è uguale per tutti i gruppi.

La cartella, a fine lezione

progetto-automazione/
|-- CLAUDE.md                le regole condivise del gruppo (in git)
|-- AGENTS.md                stesso testo, per Codex, Gemini CLI, opencode (in git)
|-- miePersonalizzazioni.md  le TUE preferenze, struttura nelle regole: non va su GitHub
|-- README.md                cos'è il progetto, per chi arriva da fuori
|-- diario.md                il diario del progetto: fatto, deciso, prossimo passo
|-- docs/                    documenti di lavoro: flussi.md e flussi.drawio.png (da oggi), appunti, note sulle fonti
|-- relazione/               la relazione del corso: relazione.tex (con bibliografia.bib e figure/) oppure relazione.docx
|-- dati/                    i dati raccolti, con la tabella che dice da dove vengono
|-- codice/                  il codice, quando ci sarà: lo scrive l'agente, lo leggete voi
|-- presentazione/           le slide finali, alla fine
|-- sito/                    la pagina di presentazione: bonus di oggi
\-- .gitignore               cosa non va su GitHub

Ogni cartella ha un README.md che dice cosa ci va. Vuote oggi: è voluto.
Non fatta il 24 settembre: si fa nella lezione 2

Il kit: uno per gruppo

Uno per gruppo lo scarica, lo scompatta dove tiene i progetti e apre la cartella in VS Code (File → Apri cartella). Gli altri la riceveranno da GitHub nella sezione 5. Il file delle regole si chiama CLAUDE.md per Claude Code e AGENTS.md per Codex, Gemini CLI e opencode: nel kit ci sono entrambi, stesso testo. La relazione (LaTeX e Word, stesse sezioni: scegliete uno dei due) e il diario del progetto sono già lì.

Non fatta il 24 settembre: si fa nella lezione 2

Il contesto e i limiti, scritti in un file

CLAUDE.md e AGENTS.md sono lo stesso file di testo con due nomi: Claude Code legge il primo, Codex, Gemini CLI e opencode il secondo. L’agente lo legge da solo, all’inizio di ogni sessione, senza che glielo chiediate, a patto che sia aperto dentro la cartella del progetto. Dentro ci va quello che un collega nuovo avrebbe bisogno di sapere il primo giorno: cosa stiamo facendo, com’è fatta la cartella, e cosa non deve fare.

Nelle parole della sezione 1: è il contesto che il modello ha sotto gli occhi a ogni giro, e i limiti che gli mettete prima che parta. È del gruppo: sta in git, ed è lo stesso sui tre PC.

Non fatta il 24 settembre: si fa nella lezione 2

Si scrive adesso, tutti davanti allo stesso schermo

  1. Cos’è il progetto: due o tre frasi che un estraneo capisce. Se non le sapete scrivere, è il primo problema da risolvere oggi.
  2. Chi ci lavora: nomi veri. E la frase "nessuno di noi programma di mestiere" resta se è vera.
  3. Com’è fatta la cartella: lasciate le righe del kit, aggiungete le cartelle che già sapete di volere (dati/, per esempio).
  4. Regole di lavoro: leggetele una per una. Toglietene una solo se sapete perché.
  5. Salvate, poi copiate tutto il testo anche in AGENTS.md: i due file restano sempre uguali. Da questo momento qualunque agente aperto in questa cartella legge le regole.

La sezione più utile è quella delle regole negative: cosa non deve fare. Sono quelle che vi risparmiano i disastri. E niente commit da parte dell’agente: li fate voi, dopo aver letto.

Non fatta il 24 settembre: si fa nella lezione 2

Il punto di partenza

CLAUDE.md e AGENTS.md del kit, stesso testo (scorre dentro il riquadro)

# CLAUDE.md - Nome del progetto

## Cos'è questo progetto

Due o tre frasi: cosa vogliamo ottenere e per chi. Esempio: "Studio di un sistema di
ricarica condominiale con load balancing: normativa, requisiti, modello di ripartizione
dei costi fra i condomini."

Progetto del corso di Automazione dei sistemi elettrici di trasporto, Politecnico di
Milano, gruppo NN.

## Chi ci lavora

Nome Cognome, Nome Cognome, Nome Cognome. Nessuno di noi programma di mestiere: spiega le
scelte in italiano semplice e non dare per scontato niente.

## Preferenze personali

Se nella radice del progetto esiste `miePersonalizzazioni.md`, leggilo prima di iniziare e
segui le sue indicazioni: sono le preferenze di chi sta lavorando in questa sessione.
Non modificarlo e non metterlo mai in un commit.

Ogni componente del gruppo lo crea sul proprio PC (è nel `.gitignore`, non va su GitHub)
con questa struttura:

    # Le mie personalizzazioni
    ## Chi sono
    Nome, sistema operativo, editor, agente che uso.
    ## Come voglio che mi parli
    Lingua, lunghezza delle spiegazioni, quando chiedermi conferma.
    ## Cosa so fare e cosa no
    Terminale, git, programmazione: sì / no / un po'.
    ## Note di lavoro
    Comandi che uso spesso, errori già visti, cose che ho capito.

## Com'è fatta la cartella

- `docs/` - documenti di lavoro: `flussi.md` e `flussi.drawio.png` (i passi del progetto, in parole e in un diagramma; il diagramma lo disegniamo noi), appunti, note sulle fonti.
- `relazione/` - la relazione del corso, in LaTeX e in Word. Non toccarla mai senza che te lo chieda esplicitamente.
- `dati/` - i dati raccolti. Ogni file è registrato nella tabella di `dati/README.md` con la sua provenienza.
- `codice/` - il codice: script, modello, grafici. Ogni script dice in testa cosa fa, cosa legge e cosa produce.
- `presentazione/` - le slide finali. `sito/` - la pagina di presentazione.
- `diario.md` - il diario del progetto: avanzamento e decisioni. Lo scriviamo noi, non tu.
- `README.md` - cos'è il progetto, per chi arriva da fuori.
- Ogni cartella ha un README.md che dice cosa ci va: leggilo prima di scriverci. Nuove cartelle solo dopo averlo proposto e avuto l'ok.

## Regole di lavoro

- Un passo alla volta. Fai quello che ti ho chiesto, poi fermati e dimmi cosa hai fatto.
- Prima di creare un file nuovo, dimmi quale e perché.
- Se non ti riesce qualcosa, dillo. Non inventare numeri, fonti, nomi di pacchetti o risultati.
- Codice semplice e commentato in italiano: lo dobbiamo leggere noi.
- Niente librerie in più senza chiedermelo prima.
- Non modificare `relazione/` e `diario.md`.
- Niente commit e niente push da solo: li facciamo noi, dopo aver letto le modifiche.

## Come si scrive

Italiano. I numeri hanno sempre l'unità di misura. Ogni affermazione non ovvia ha una
fonte. Niente emoji.
Non fatta il 24 settembre: si fa nella lezione 2

Il file tuo: miePersonalizzazioni.md

Dentro CLAUDE.md e AGENTS.md c’è anche la struttura di miePersonalizzazioni.md: come vuoi che ti parli, cosa sai fare, il tuo sistema operativo. Ognuno lo crea sul proprio PC, e non finisce su GitHub perché il .gitignore lo esclude. L’agente lo legge perché le regole gli dicono di farlo. Lo fate nella sezione 5, quando ognuno avrà la sua copia del repository.

Non fatta il 24 settembre: si fa nella lezione 2

Com’è fatta una sessione di lavoro

  1. 1Tu chiedi

    Una cosa sola, detta bene.

  2. 2Lui legge le regole

    CLAUDE.md o AGENTS.md, da solo, se è aperto nella cartella del progetto.

  3. 3Propone e scrive

    File creati o modificati.

  4. 4Tu leggi

    Cosa ha cambiato, prima di dire sì.

  5. 5Lo fai girare

    Il test vero: funziona o no.

  6. 6Aggiorna il diario

    Cosa è stato fatto, cosa è stato deciso, da dove si riparte.

Poi si ricomincia. Il giro è corto di proposito: più è lungo, meno capisci cosa è successo.

Non fatta il 24 settembre: si fa nella lezione 2

A · Chi crea il repository (uno per gruppo)

Tutto dal pannello Controllo del codice sorgente di VS Code (l’icona dei rami nella barra a sinistra). Lo fa la persona che ha la cartella aperta.

  1. Pannello Controllo del codice sorgente (icona dei rami, a sinistra) → Inizializza repository.
  2. Nel campo del messaggio scrivete "kit di partenza", poi Commit. Se chiede di preparare tutti i file (stage), sì.
  3. Controllo: nell’elenco dei file committati NON deve esserci miePersonalizzazioni.md. Se c’è, il .gitignore non è nella cartella.
  4. Pulsante Pubblica su GitHub → scegliete "repository privato", nome automazione-gruppo-NN. Alla prima volta VS Code chiede di accedere a GitHub: sì.
  5. Su github.com, pagina del repository → Settings → Collaborators → Add people: il nome utente GitHub di ogni compagno.
Non fatta il 24 settembre: si fa nella lezione 2

B · Gli altri, poi C · tutti

B · Gli altri componenti

  1. Accettare l’invito: arriva per mail da GitHub, oppure su github.com/notifications.
  2. In VS Code: File → Nuova finestra, poi "Clona repository Git" → Clona da GitHub → automazione-gruppo-NN. Scegliete dove tenerlo e apritelo.

C · Tutti: le proprie preferenze

  1. File → Nuovo file, nome miePersonalizzazioni.md, nella radice del progetto. Struttura: quella scritta in CLAUDE.md e AGENTS.md. Compilatelo: cinque minuti.
  2. Controllo: nel pannello Controllo del codice sorgente il file NON deve comparire tra le modifiche. Se compare, il nome non è esatto.

Da qui in poi, ogni volta che qualcuno cambia un file: Commit con un messaggio che dice cosa è cambiato, poi Sincronizza (pull e push insieme). Prima di iniziare a lavorare: Sincronizza.

Non fatta il 24 settembre: si fa nella lezione 2

Prima di chiedere di costruire, sapere cosa

Non il codice: i passi. Cosa entra, cosa succede, cosa esce, in che ordine. Un agente ottimizza il percorso verso l’obiettivo che gli date, e a ogni giro controlla se l’ha raggiunto: se non è chiaro cos’è “fatto”, o si ferma troppo presto o non si ferma. La domanda è vostra.

Si fa su carta, poi si disegna con draw.io nel browser e si mette nel repository. In aula si inizia; si finisce a casa, con calma, perché questi passi diventano la sezione Metodo della relazione.

Non fatta il 24 settembre: si fa nella lezione 2

Dal foglio al file

  1. Su carta, tutto il gruppo: cosa entra nel progetto (dati, misure, normativa, persone), cosa ci fate, cosa esce (un numero, un grafico, una decisione, un documento). Scatole e frecce, dieci minuti, niente PC.
  2. Numerate le scatole. Ogni scatola deve rispondere a: cosa entra, cosa succede, cosa esce. Se una non risponde, o si spacca in due o si cancella.
  3. Uno del gruppo apre draw.io nel browser (app.diagrams.net, gratis, senza account) e ricopia il foglio: scatole e frecce, con i numeri. Poi File → Esporta come → PNG, con la spunta "Includi una copia del diagramma", e salva il file come flussi.drawio.png nella cartella docs/ del progetto: è un’immagine normale, GitHub la mostra, e si riapre in draw.io per modificarla.
  4. La stessa persona apre l’agente nella cartella e incolla il prompt qui sotto con i vostri passi al posto dei segnaposto: il testo lo scrive lui, il disegno resta vostro.
  5. Leggete docs/flussi.md insieme. Le domande in fondo sono il vero risultato: rispondete e correggete il file a mano.
  6. Commit dal pannello Controllo del codice sorgente ("flussi del progetto"), poi Sincronizza. Aprite il repository su github.com: il diagramma si vede lì.
Non fatta il 24 settembre: si fa nella lezione 2

Aprire l’agente nella cartella giusta

Da VS Code: Terminale → Nuovo terminale si apre già nella cartella del progetto. Poi il comando del tuo agente (uno solo)

claude
codex
gemini
opencode
grok

Cursor, TraeCode e Copilot in VS Code: l’agente è già dentro l’editor. Vale la stessa regola: la cartella aperta è quella in cui cerca le regole.

Come NON si chiede

fammi lo schema del progetto

Cosa succede: inventa lui i passi del vostro progetto, e sembrano pure sensati. È il modo più veloce per ritrovarsi a lavorare sul progetto di qualcun altro.

Non fatta il 24 settembre: si fa nella lezione 2

Come si chiede

Con i vostri passi al posto dei segnaposto

Abbiamo disegnato i passi del nostro progetto: il diagramma è in docs/flussi.drawio.png.
Eccoli, in ordine:
1. <primo passo: cosa entra, cosa succede, cosa esce>
2. <secondo passo>
3. <terzo passo>

Scrivi docs/flussi.md con: una riga di introduzione, l'immagine del diagramma
(![Flussi del progetto](flussi.drawio.png)), e per ogni passo una frase che dice cosa
entra, cosa succede, cosa esce.

Se un passo ti sembra mancare o essere ambiguo, segnalalo in fondo al file con una
domanda: non inventarlo. Non creare altri file, non toccare il diagramma e non
modificare CLAUDE.md e AGENTS.md.

Quando hai finito, fermati e dimmi cosa hai scritto.

Quattro cose lo rendono diverso: gli date voi il contenuto, dite esattamente cosa scrivere e dove, dite cosa non fare, e gli chiedete le domande invece delle risposte. Non dice “leggi le regole”: quello lo fa da solo, se è nella cartella giusta. E il diagramma non glielo fate fare: il disegno è il vostro ragionamento, lui ci mette le parole intorno.

Non fatta il 24 settembre: si fa nella lezione 2

Se c’è tempo: una pagina che presenta il progetto

Un solo file in sito/, si apre con un doppio clic, niente server. Serve a vedere l’agente costruire qualcosa di visibile partendo solo da quello che avete scritto: se lì c’è poco, la pagina viene vuota, ed è giusto così.

Il prompt

Crea sito/index.html: una sola pagina statica, HTML e CSS nello stesso file, niente
JavaScript e niente librerie, che presenta il progetto a chi non lo conosce: titolo, una
frase che dice cosa facciamo, chi siamo, i passi del progetto presi da flussi.md, come
contattarci.

Testo in italiano, preso da CLAUDE.md (o AGENTS.md) e docs/flussi.md: non inventare niente. Deve aprirsi con
un doppio clic sul file. Non creare altri file.

Quando hai finito, fermati e dimmi come la apro.

Aprite sito/index.html con un doppio clic, leggete cosa c’è scritto, e cercate la frase che non avete mai detto: c’è quasi sempre. Poi commit e Sincronizza.

Non fatta il 24 settembre: si fa nella lezione 2

Tre segnali, tre regole

Inventa

Numeri, fonti, passi del progetto che non gli avete detto. Non lo fa per ingannarti: completa il testo nel modo che sembra più plausibile. Si smaschera controllando.

Fa troppo

Hai chiesto un file, ti ritrovi quindici file e una cartella di codice. Più cose fa, meno le controlli.

Dice "fatto" senza aver controllato

Dichiara il lavoro finito senza averlo verificato. Il test vero lo fai tu: apri il file, leggi, prova.

Sono i tre “non può” della sezione 1 visti da vicino: inventa perché produce testo plausibile, fa troppo perché il ciclo non sa dove fermarsi, dice “fatto” perché non ha un passaggio di verifica. Il passaggio di verifica siete voi.

  1. Un passo alla volta. Una richiesta, una cosa.
  2. Prima di dire di sì, leggi cosa ha cambiato. Se non capisci un file, chiedigli di spiegartelo riga per riga.
  3. Commit e push li fai tu, dopo aver letto. Mai l’agente da solo.
Non fatta il 24 settembre: si fa nella lezione 2

Tre cose restano vostre, e non è questione di versioni future

La domanda

Un agente ottimizza il percorso verso l’obiettivo che gli date. Se l’obiettivo è mediocre, arriva benissimo a un risultato mediocre. I flussi di oggi sono la domanda.

Il giudizio sul metodo

Vi dirà che il calcolo è tornato. Non vi dirà che quel calcolo, sul vostro problema, non aveva senso.

La responsabilità

Sulla relazione c’è il vostro nome. La firma non si delega.

Quello che si sposta, invece, è enorme: tutto il lavoro intermedio. Il codice per l’analisi, il grafico rifatto sei volte, il ritrovare fra sei mesi come si era fatta una cosa. È la parte del mestiere che non vi ha mai insegnato niente, e adesso costa poco.

Non fatta il 24 settembre: si fa nella lezione 2

Se si rompe

In VS Code non compare "Pubblica su GitHub"
Non avete fatto il login a GitHub dentro VS Code: icona Account in basso a sinistra → Accedi con GitHub. Poi riaprite il pannello Controllo del codice sorgente.
"Clona da GitHub" non mostra il repository del gruppo
Non avete ancora accettato l’invito: github.com/notifications. Oppure incollate l’indirizzo del repository a mano.
`Permission denied` o `403` quando sincronizzate
Non siete collaboratori del repository, o l’invito non è accettato.
miePersonalizzazioni.md compare tra le modifiche
Il nome non è esattamente quello (maiuscole comprese), oppure il file non è nella radice, oppure manca il .gitignore del kit.
Conflitto durante Sincronizza
Due persone hanno cambiato la stessa riga. VS Code mostra le due versioni una sopra l’altra: scegliete, salvate, commit di nuovo, Sincronizza.
L’agente ignora le regole
Quasi sempre è aperto in un’altra cartella. Chiudetelo, aprite il terminale da VS Code (Terminale → Nuovo terminale, si apre nella cartella giusta), rilanciatelo. Per controllare, chiedetegli: "quali file di regole hai caricato?"
L’agente ha riscritto mezzo progetto
Pannello Controllo del codice sorgente → sui file cambiati, Ignora modifiche: torna tutto all’ultimo commit. Poi rifate la richiesta più stretta.
Non fatta il 24 settembre: si fa nella lezione 2

Compiti

  • CLAUDE.md e AGENTS.md finiti, uguali, con il progetto vero, committati.
  • Ogni componente: il proprio miePersonalizzazioni.md sul proprio PC, e verificato che git non lo veda.
  • docs/flussi.md e docs/flussi.drawio.png finiti a mente fredda: le domande in fondo hanno una risposta, il diagramma è quello che avete in testa. Diventano la sezione Metodo della relazione.
  • diario.md con la voce di oggi: fatto, deciso, aperto, prossimo passo.
  • relazione: titolo, autori e introduzione (mezza pagina), nella versione che preferite (LaTeX o Word).
  • Su GitHub, nella pagina del repository, almeno un commit con il nome di ogni componente.

Questa pagina resta qui: danielemartini.eu/automazione/lezione-1. Tutti i materiali: danielemartini.eu/automazione

1 / 34

We use cookies to analyze site traffic and enhance your experience. By clicking "Accept", you consent to our use of cookies.