Scrivere trecento pagine di matematica da solo pone un problema pratico: chi rilegge. Non ho un editor, non ho un correttore di bozze, e i miei capitoli sono lunghi abbastanza da esaurire la pazienza di chiunque glieli chieda per cortesia.
La risposta ovvia, oggi, è far rileggere il testo a un modello. La risposta ovvia, però, funziona male, e vale la pena spiegare perché. Se chiedo un parere sul capitolo allo stesso assistente con cui l’ho scritto, ottengo quasi sempre una delle due patologie: il timbro di approvazione, perché il testo è già passato dalla sua idea di buono, oppure una lista di problemi inventati, perché gli ho chiesto di trovarne e lui è servizievole. In tutti e due i casi ho perso un’ora e non ho imparato niente sul capitolo.
Quello che mi serviva era una separazione dei ruoli, non un modello più bravo. Così ho scritto un plugin per Claude Code che la impone.
Il meccanismo è semplice. Claude fa l’orchestratore: legge il capitolo per conto suo, prima di chiedere qualsiasi cosa, poi convoca il revisore esterno, filtra quello che riceve e applica le modifiche che ha accettato. Il revisore esterno è Codex, in sola lettura, e questa è la regola su cui non transigo: non tocca i file, produce soltanto rilievi. Due famiglie di modelli diverse sullo stesso testo si accorgono di cose diverse, soprattutto quando una delle due ha scritto il testo e l’altra no.
La revisione avviene in due fasi separate, e l’ordine conta. Prima il contenuto, cioè correttezza dei fatti, ordine logico, definizioni, passaggi mancanti. Poi, solo dopo che ho letto la sintesi e ho deciso che il capitolo regge, lo stile: ritmo, registro, ripetizioni, calchi. Fare le due cose insieme produce recensioni in cui un errore di segno e una virgola pesano uguale, e non è vero. Ogni rilievo arriva con una severità: bloccante quando compromette la comprensione, significativo quando è un’imprecisione o un’opacità, minore quando è lucidatura.
La parte del meccanismo di cui vado più fiero è quella che protegge il testo da me. Alla fine di ogni fase c’è una passata di verifica obbligatoria sul file aggiornato, e in quella passata il revisore non si limita a ricontrollare le patch: gli vengono ripresentati anche i rilievi che ho rifiutato, con la richiesta di confermarli o di controbattere. Se il disaccordo non si chiude, non sparisce: finisce in fondo alla sintesi come questione aperta, da decidere a mente fredda. Senza quel passaggio l’orchestratore diventa il collo di bottiglia di tutta la revisione, e il filtro è esattamente il punto in cui è più facile ingannarsi.
Per il libro c’è poi una terza fase, nata dall’edizione inglese. Su un testo tradotto la correttezza dei contenuti è già stata verificata sull’originale, quindi al posto della fase di contenuto si fa una fase di fedeltà: si appaiano le sezioni della fonte e della traduzione e si confrontano una coppia alla volta, cercando omissioni, aggiunte, slittamenti di senso, deriva terminologica. Anche i difetti dell’originale, quando saltano fuori proprio lì.
Il tutto poggia su una cosa che avevo già: il file di regole del libro. Un revisore che non sappia quali scelte sono deliberate ti riporta il testo verso la media, e a me tocca rifiutare ogni volta gli stessi rilievi. Dichiarare in anticipo il gergo ammesso e le convenzioni intoccabili è ciò che distingue una revisione utile da una passata di normalizzazione.
Il plugin è pubblico, sotto licenza MIT, e non è ancora maturo. Il difetto più istruttivo l’ho trovato la settimana scorsa: un campo di troppo nel manifesto impediva in silenzio la registrazione dei comandi, e in una certa modalità di caricamento il plugin risultava installato e completamente muto. Nessun errore, nessun avviso, solo comandi che non esistevano.
Il secondo parere non arriva perché coinvolgi un secondo modello. Arriva perché gli dai un ruolo diverso e gli togli il diritto di firmare le modifiche.
Ultima modifica 23/07/2026