Un gestionale per la mia attività, riscritto con i coding agent: il metodo su un progetto intero.
Ho sempre avuto un mio programma per gestire le attività: registro il lavoro giorno per giorno e lo uso per provare nuove tecnologie su un progetto abbastanza reale, anche se ridotto. Di recente l'ho riscritto con i coding agent Claude Code e Codex, con lo stesso metodo che applico nei progetti dei clienti. A differenza di quelli, questo posso mostrarlo.
Buona parte del codice viene dagli agentiDi solito Claude Code per analisi e realizzazione, Codex per la revisione esterna.
Non mi limito a rivedereControllo di continuo il codice e i documenti prodotti mentre si lavora sulle specifiche, e studio come è stato fatto ciò che non conoscevo.
Cosa ho aggiunto con la riscrittura
Oltre alla gestione delle attività, il programma ora raccoglie le fonti periodiche che mi informano su novità e rilasci.
Le informazioni vengono archiviate in un database e in un archivio per la ricerca per significato (vector store). Su ciò che ho archiviato posso fare domande in linguaggio naturale, con una funzione di RAG.
Nel programma ho portato anche la gestione della posta: leggo e gestisco le email, con regole che evidenziano newsletter e messaggi importanti. Avevo valutato un componente aggiuntivo per Outlook, ma Microsoft non li supporta sulle caselle IMAP.
I moduli
Sette parti separate, ciascuna con un compito preciso.
App per le attività (React): la registrazione giornaliera e la consultazione dei dati.
Web API (ASP.NET Core): il servizio su cui si appoggia l'app.
Worker: processi separati che leggono notizie e dati di YouTube.
Gestione delle commesse (WolverineFx e Marten): ogni modifica viene salvata come evento in un event store, così la storia di una commessa resta ricostruibile.
Portale (Umbraco): la parte più amministrativa di commesse e attività.
Estensione per Chrome: gestione dei link e delle liste.
Server MCP: un servizio a cui si collegano gli agenti per registrare il lavoro svolto su ogni commessa, come analisi, specifiche, sviluppo e revisioni. Così tengo traccia di tutto.
Le schermate
Nelle immagini nomi, numeri di commessa, ore e messaggi privati sono coperti. Fate clic su un'immagine per vederla intera.
La home dell'app React: il pannello di controllo delle attività giornaliere.La pagina principale dell'estensione per Chrome: controllo le schede aperte e l'archivio in modo strutturato.La home del portale amministrativo in Umbraco.La registrazione della giornata: un resoconto giornaliero e i dettagli per commessa. In basso compaiono anche le informazioni inviate dal server MCP mentre si lavora sulle specifiche.La gestione delle email: da qui leggo e gestisco la posta, con regole che evidenziano newsletter e messaggi importanti.La lettura di un'email: vedo il contenuto, creo regole, la archivio nel database e nel vector store, la sposto nel cestino e interrogo il testo con un modello locale tramite Ollama.Lo stato generale della posta, in un'unica pagina: supporta caselle IMAP, Outlook.com, Gmail e PEC.Una semplice maschera per consultare il meteo della settimana.Le pagine di link: un processo periodico legge le pagine che mi interessano e me le rende consultabili. Quando si possono scaricare, anche i contenuti finiscono nel vector store.Il dettaglio di una lista giornaliera.L'archivio dei video di YouTube, per controllare le novità e accedervi rapidamente.La harness del progetto: a sinistra le decisioni architetturali, a destra le specifiche per funzione e i documenti di stato, diario e insidie.
Tempi e dimensioni
Circa due settimane
Di lavoro pieno in tutto, una mia stima: l'ho sviluppato nel tempo libero, da agosto 2026.
Sette moduli
Descritti sopra.
24 decisioni architetturali
Registrate con contesto e motivazione.
Oltre 600 test automatici
Server, interfaccia, estensione. Dati del repository al 31 ottobre 2026.
Come ho lavorato
Lo stesso ciclo della pagina Coding agent. Qui si vede cosa lascia dietro di sé.
Ogni funzione ha requisiti numerati, criteri di accettazione e una revisione. Li leggo e li correggo io prima che diventino codice.
Chi controlla non è chi ha scritto
Di solito Claude Code analizza e realizza, Codex fa la revisione esterna, io rivedo codice e documenti lungo tutto il lavoro.
La memoria sta nei documenti, non nella chat
Stato del progetto, punti aperti, diario e decisioni sono file che l'agente legge in un ordine stabilito a ogni sessione. Qui la harness sta nel repository perché il progetto è mio e ci lavoro da solo; in quelli dei clienti la tengo separata.
I test girano su database temporanei con dati sintetici. Sul database vero l'agente non modifica nulla senza una mia approvazione esplicita.
Un banco di prova
Qui provo il metodo, le skill che sviluppo per gli agenti e il modo di adattarle alle esigenze di un programma.
Le skill sono procedure riutilizzabili che l'agente segue per un certo tipo di lavoro. Alcune scelte sono sicuramente sproporzionate per ciò che il programma deve fare: le ho fatte per provare funzioni e modalità di progetto.
Come imparo da ciò che fa l'agente
01
Realizzo
Con strumenti e problemi nuovi, realizzo la funzione con il coding agent.
02
Arrivo in fondo
Raggiungo la piena funzionalità.
03
Analizzo
Leggo il codice prodotto per capire come ha fatto.
04
Consolido
Verifico conoscenza e implementazione su fonti esterne.
In questo modo non delego soltanto l'implementazione facendo da revisore: imparo come ha fatto, mi formo e poi uso quegli strumenti con più autonomia.
Conta soprattutto nei progetti più complessi, come il progetto RAG. Lì devo entrare nel dettaglio di una funzione e verificare cosa fa davvero, perché spesso la descrizione che ne dà l'agente non è abbastanza chiara. Bisogna sporcarsi le mani e lavorare in coppia con l'agente, non limitarsi a supervisionarlo.
Cosa non dimostra
Questo progetto mostra un modo di lavorare, non un risultato che si ripete uguale altrove.
È un progetto ridotto, e sono da solo. Nessun collega sullo stesso codice e nessuna harness condivisa: far lavorare un team su un'unica harness è un passo che non ho ancora affrontato. Qualità e coding agent.
Sono il cliente di me stesso. Decido in un attimo cosa cambiare e accetto limiti che un cliente non accetterebbe.
Lo uso solo io, in locale. Sicurezza, permessi e disponibilità per molti utenti sono un altro lavoro.
Ha condizioni favorevoli. Tecnologie diffuse, codice riscritto da zero e un dominio che conosco: su sistemi legacy o fuori standard l'agente rende meno. Limiti e condizioni.
Non misura un risparmio. Le due settimane sono una stima e non ho un confronto con lo stesso lavoro fatto senza agenti.
Gli errori e le lezioni che ne ho ricavato li racconto a proposito di un progetto più complesso.
Il modo di lavorare è lo stesso: specifiche scritte, decisioni tracciate, revisione separata da chi scrive il codice. Cambiano le regole di contorno.
Nei progetti dei clienti uso i coding agent solo dove le loro regole lo consentono, la harness resta riservata come il codice e le analisi sui dati avvengono su ambienti di test o dati anonimizzati.
.NET 10 e React con TypeScript; EF Core su un database Azure SQL esistente, senza migrazioni (database-first); event sourcing su PostgreSQL con Marten e WolverineFx, collegato alle altre parti tramite RabbitMQ; Docker Compose e .NET Aspire per l'esecuzione locale; test con Testcontainers su database veri; ricerca con Qdrant e modelli locali tramite Ollama.
Fonti a supporto
Il mio modo di studiare è una scelta personale: questi studi non lo dimostrano, ma vanno nella stessa direzione.
Anthropic — How AI assistance impacts the formation of coding skills (si apre in una nuova scheda): studio controllato su 52 sviluppatori, in prevalenza junior, gennaio 2026. Con l'assistente il test di comprensione ha dato in media il 50%, contro il 67% di chi ha lavorato a mano. Chi delegava il codice ha ottenuto risultati più bassi di chi chiedeva spiegazioni o approfondiva dopo. Campione piccolo, risultati preliminari misurati subito dopo il compito, con un assistente in chat e non un coding agent; il legame tra modo d'uso e risultato non è dimostrato.