SpecScore vs OpenSpec
Entrambi collocano le specifiche in Markdown, accanto al tuo codice, leggibili dagli agenti IA. Rispondono a domande diverse: OpenSpec organizza le specifiche e genera comandi per gli agenti. SpecScore valida il contenuto delle specifiche, applica il ciclo di vita e traccia il codice risalendo ai requisiti.
Cosa hanno in comune.
Cosa fa bene OpenSpec.
Il supporto più ampio per gli agenti
OpenSpec supporta 29 agenti IA tramite file di skill generati — Claude, Cursor, Copilot, Gemini, Windsurf, Cline e altri. Se il tuo agente è nella lista, OpenSpec si integra senza alcuna configurazione.
Bassa barriera all'ingresso
npm install -g @fission-ai/openspec && openspec init e puoi già iniziare a scrivere specifiche. Nessuno schema da imparare, nessun frontmatter obbligatorio. Progettato per essere semplice — soprattutto per progetti già esistenti.
Un modello chiaro per i delta di modifica
Il formato ADDED / MODIFIED / REMOVED di OpenSpec per far evolvere le specifiche è ben progettato. Ogni modifica è una directory contenente una proposta, specifiche delta e task — un modo strutturato per proporre modifiche.
Confronto delle funzionalità.
| Funzionalità | OpenSpec | SpecScore |
|---|---|---|
| Formato della specifica | Markdown (senza frontmatter) | Markdown + YAML frontmatter |
| Linting delle specifiche | Solo struttura dei file | Qualità dei contenuti — verbi vaghi, AC mancanti, riferimenti orfani |
| ID dei requisiti | Nessuno (riferiti per titolo) | Basati su slug (REQ: slug-format) |
| ID dei criteri di accettazione | Nessuno | ID indirizzabili via software |
| Stato del ciclo di vita | Implicito (posizione del file) | Applicato rigorosamente — Draft → Under Review → Approved → Implementing → Stable → Deprecated |
| Tracciabilità codice-a-specifica | Nessuna | Annotazioni specscore: + trailer di commit Verifies: |
| Sotto-feature | No | Sì (directory nidificate) |
| Riferimenti incrociati | Nessun meccanismo formale | Dipendenze, Idee d'origine, riferimenti ai piani |
| Integrazione CI | Base (openspec validate) | specscore lint con gravità configurabile, hook di pre-commit |
| Supporto degli agenti | 29 agenti | Claude Code come agente primario + CLI per qualsiasi agente |
| Personalizzazione dello schema | Sì (schema.yaml, fork/init) | Schema standard fisso (coerenza per progettazione) |
| Proposte di modifica | Modello delta (ADDED/MODIFIED/REMOVED) | Idee di modifica + proposte |
| Dipendenza da runtime | Node.js 20.19+ | Nessuna — singolo binario Go |
| Licenza | MIT | MIT |
Dove SpecScore va oltre.
La validazione va oltre la struttura dei file
Il comando validate di OpenSpec verifica la struttura dei file — se il file esiste e se ha le sezioni corrette. SpecScore controlla molto più a fondo su due livelli: lint verifica in modo deterministico le relazioni di contenuto — ogni requisito ha criteri di accettazione, i riferimenti incrociati sono risolti, le transizioni di stato sono valide — e un revisore IA (/review, /score) rileva ciò che nessun linter statico può individuare: criteri ambigui e verbi vaghi.
$ specscore lint checkout/apply-discount.md ✗ R3 no acceptance criteria ✗ link "Related Feature: discount-tiers" not found
Ogni requisito ha un ID leggibile via software
OpenSpec fa riferimento ai requisiti tramite il titolo — fragile di fronte a ridenominazioni. SpecScore assegna ID basati su slug (REQ: slug-format) e ID per i criteri di accettazione che sopravvivono a rinomine, refactoring e passaggi di consegne tra agenti.
Il ciclo di vita viene applicato, non dedotto
In OpenSpec, il ciclo di vita di una specifica coincide con la sua posizione nel filesystem: specs/ (attuale), changes/ (proposto), archive/ (completato). In SpecScore, il ciclo di vita è un campo di stato effettivo — Draft → Under Review → Approved → Implementing → Stable → Deprecated — validato dal lint e modificato tramite specscore change-status da git hook o CI.
Il codice risale alle specifiche
OpenSpec non dispone di meccanismi di tracciabilità. SpecScore offre annotazioni specscore: nei commenti del codice e trailer Verifies: nei commit. Esegui specscore code refs e ottieni una risposta deterministica a "quale codice implementa questo requisito?".
Nessuna dipendenza da runtime
OpenSpec richiede Node.js 20.19+. SpecScore è un singolo binario Go — nessun runtime, niente node_modules. Funziona in progetti Go, Rust, Python o Java senza dover aggiungere Node al toolchain.
Gerarchia di artefatti componibile
Le specifiche di OpenSpec sono piatte per dominio. SpecScore adotta una gerarchia tipizzata: le Idee vengono promosse a Feature, le Feature contengono requisiti e AC, i Plan referenziano AC, i Task referenziano Plan. Tutte le relazioni sono navigabili via software tramite la CLI.
Quando usare l'uno o l'altro.
Inizia con OpenSpec se…
- Usi Cursor, Copilot o altri agenti non-Claude e desideri un'integrazione pronta all'uso.
- Stai aggiungendo specifiche a una codebase esistente per la prima volta e cerchi zero attrito iniziale.
- Il tuo team preferisce la flessibilità dello schema rispetto all'applicazione rigorosa delle regole.
Usa SpecScore se…
- Hai bisogno di controllo di qualità sulle specifiche — il lint rileva le ambiguità prima che gli agenti sprechino token.
- Ti serve tracciabilità da codice a specifica — "quale codice implementa questo requisito?" restituisce una risposta deterministica.
- Stai costruendo un sistema complesso con molte feature, sotto-feature e transizioni di ciclo di vita.
- Vuoi zero dipendenze da runtime — un binario autonomo, senza richiedere Node.js.
- Hai bisogno di controlli di qualità in CI —
specscore linttermina con codice diverso da zero in caso di errori, proprio come ESLint ogo vet.
Non si escludono a vicenda.
SpecScore può verificare tramite lint anche i file spec.md di OpenSpec. I team che iniziano con OpenSpec possono aggiungere il livello di qualità di SpecScore senza dover migrare — valida le specifiche che hai già, aggiungi la tracciabilità quando serve, applica il ciclo di vita man mano che il team cresce.
OpenSpec è un'ottima rampa di accesso. SpecScore offre le barriere di sicurezza.
Altri confronti.
Lo stesso formato, accanto ad altri strumenti di sviluppo guidato dalle specifiche:
Tutti insieme, in una pagina: migliori strumenti di sviluppo guidato dalle specifiche nel 2026.
Feedback
Questo confronto si basa su documentazione e codice sorgente pubblici. Qualcosa è sbagliato o superato? apri una issue di correzione. Vuoi che confrontiamo SpecScore con un altro strumento? richiedine uno.