OpenSpec
OpenSpec è una tecnica di sviluppo spec-driven: prima di scrivere codice, si producono artefatti di analisi versionati — proposal, delta spec, design, tasks — che documentano cosa cambia e perché. Si sottopongono a revisione, e solo dopo l'approvazione si implementa. È una tecnica di sviluppo generale, non uno strumento legato a un progetto specifico: si applica a qualunque sviluppo che benefici di un'analisi esplicita prima del codice.
Corrispondenza con il wizard
Gli artefatti di una change OpenSpec coprono gli stessi step del wizard di analisi tecnica. La corrispondenza è concettuale, non un vincolo procedurale rigido: uno sviluppo piccolo può produrre artefatti più snelli, uno complesso può richiedere più iterazioni sullo stesso artefatto.
| Artefatto OpenSpec | Step del wizard che copre |
|---|---|
| proposal (perché, cosa cambia) | Analisi Funzionale |
| delta spec (requisiti e scenari) | Analisi Funzionale, Perimetro |
| design (decisioni tecniche e alternative) | Modellazione dei Dati, Contratti, Flussi Critici, Requisiti Non Funzionali |
| tasks (checklist di implementazione) | Piano e Stime, Handoff |
Quando preferirlo
Quando l'analisi è condotta con il supporto dell'IA, OpenSpec è la via preferita rispetto al documento di analisi libero: gli artefatti sono strutturati, versionati insieme al codice, verificabili automaticamente, e rendono lo scope esplicito e approvato prima che l'implementazione parta. Il documento di analisi libero resta legittimo quando l'IA non è coinvolta, o per aggiornamenti minori dove la struttura in quattro artefatti sarebbe sproporzionata rispetto al cambiamento.
Uno strumento, due interfacce
OpenSpec si usa da riga di comando o tramite OpenSpecUI, una dashboard web che espone le stesse change (proposal, delta spec, design, tasks) in forma navigabile: utile per revisionare una change o seguirne l'avanzamento senza aprire ogni file singolarmente.
Per automatizzare questo flusso dentro un repository che usa l'IA, vedi le skill: l'apertura, l'implementazione e l'archiviazione di una change OpenSpec sono procedure ripetibili che si prestano a essere invocate come skill.