# SpecScore vs Tessl

Canonical: https://specscore.md/it/vs/tessl/

[Sviluppo guidato dalle specifiche](https://specscore.md/it/spec-driven-development/) (SDD) significa che la specifica del comportamento previsto si scrive prima del codice. [Tessl](https://tessl.io/) (Tessl AI Ltd) è, al 30 ottobre 2026, una piattaforma di abilitazione degli agenti: un registro e un piano di controllo per le skill, le regole e i plugin che gli agenti di programmazione caricano. «Spec as source» è l’affermazione più forte del [saggio del giugno 2025](https://tessl.io/blog/from-code-centric-to-spec-centric) di Tessl: la specifica è l’artefatto che dura, e il codice ne deriva. [SpecScore](https://specscore.md/it/) è un formato di file [a codice aperto](https://github.com/specscore/specscore) per quella specifica, controllato da un’[interfaccia a riga di comando](https://specscore.md/it/cli/) (CLI). L’[integrazione continua](https://specscore.md/it/validators/) (CI) — un controllo automatico su ogni modifica proposta — esegue quel controllo in questo repository.

## Cosa hanno in comune.

- Entrambi dicono che un prompt è un posto debole in cui tenere l’intenzione. Una specifica scritta deve sopravvivere alla chat.
- Entrambi si aspettano che un agente di programmazione IA legga la specifica prima di modificare il codice.
- Entrambi possono allegare test ai requisiti, così «fatto» è qualcosa che puoi indicare.

## Cosa fa bene Tessl.

Due superfici diverse di Tessl si confondono facilmente. Le note sotto le tengono distinte, da pagine lette il 30 ottobre 2026.

### Un argomento chiaro per lo spec as source

Il saggio di Simon Maple del 27 giugno 2025 dice che un documento dei requisiti di prodotto (PRD) — prosa scritta per le persone su che cosa costruire — di solito invecchia, mentre il codice diventa l’unica fonte di verità. L’alternativa del saggio è che la specifica è ciò che cambi, e un grande modello linguistico (LLM) genera da essa codice, test e documentazione. È una posizione reale, non uno slogan.

### Una piattaforma per il contesto dell’agente

[La documentazione di Tessl](https://docs.tessl.io/) descrive un registro, una governance che analizza e assegna un punteggio alle skill, valutazioni e osservabilità tra agenti. La documentazione dice che le skill sono artefatti semplici nel tuo repository, e che la piattaforma funziona con Claude Code, Cursor, Copilot, Gemini e altri. Lì, il punteggio riguarda una skill, non una specifica di prodotto.

### Un tile ufficiale di sviluppo guidato dalle specifiche, con controlli shell

Il tile [tessl-labs/spec-driven-development](https://tessl.io/registry/tessl-labs/spec-driven-development), con licenza MIT nel [repository pubblico del tile](https://github.com/tesslio/spec-driven-development-tile), insegna a un agente a intervistare, scrivere file `.spec.md`, attendere l’approvazione e poi implementare. La pagina del registro elenca `scripts/validate-specs.sh` e `scripts/check-spec-links.sh` per il frontmatter, `targets` e i link `[@test]`. La stessa pagina dice che il tile è contesto di guida: nessun comando speciale, nessun framework.

## Confronto delle funzionalità.

«Spec as source» è il saggio di Tessl. Il tile è un pacchetto di skill sopra la piattaforma di oggi. SpecScore è un formato con un linter versionato.

| Capacità | Tessl | SpecScore |
| --- | --- | --- |
| Ruolo principale | Piattaforma di skill per agenti, più un tile di sviluppo guidato dalle specifiche e un saggio del 2025 sullo spec as source | **Formato di specifica aperto + CLI** |
| Che cos’è la specifica | Saggio: la fonte durevole da cui si genera il codice. Tile: un .spec.md rispetto al quale l’agente implementa, e tu tieni il codice. | **Un contratto accanto al codice**. Il lint non rigenera il codice. |
| Forma della specifica | Tile: frontmatter YAML, glob di targets e link [@test] a file di test | **Markdown + YAML**, `REQ: slug`, [Dato/Quando/Allora](https://specscore.md/acceptance-criteria-specification) |
| Controllare la specifica | Script shell distribuiti con il tile, per il frontmatter e i link di quel tile | **specscore spec lint** sul formato SpecScore, nella CI di questo repository. `/score` è una valutazione IA manuale. |
| Licenza | Il tile è [MIT](https://github.com/tesslio/spec-driven-development-tile/blob/main/LICENSE). La piattaforma è un prodotto. La documentazione non pubblica il codice sorgente della piattaforma. | [CC BY 4.0](https://github.com/specscore/specscore/blob/main/LICENSE) per il formato · [Apache-2.0](https://github.com/specscore/specscore-cli/blob/main/LICENSE) per la CLI |
| Prezzo | La [homepage di Tessl](https://tessl.io/), letta il 30 ottobre 2026, descrive un piano gratuito (1.000 crediti al mese su uno spazio di lavoro) e piani enterprise a pagamento. | **Nessun costo** per il formato né per la CLI |

## Cosa aggiunge SpecScore.

### Un formato pubblicato, non uno script del tile

Gli script shell del tile controllano i file `.spec.md` che quel tile ha chiesto all’agente di scrivere. SpecScore controlla un formato documentato su questo sito. [dogfood.yml](https://github.com/specscore/specscore/blob/main/.github/workflows/dogfood.yml) installa una release fissata di [specscore](https://github.com/specscore/specscore-cli) ed esegue `specscore spec lint`. [/score](https://github.com/specscore/specstudio-skills/blob/main/skills/score/SKILL.md) non è quell’esecuzione: è una skill manuale che esce con codice diverso da zero quando i revisori IA segnalano problemi.

```
$ specscore spec lint

features/apply-discount/README.md:0 [error] oq-section: Open Questions section not found
features/apply-discount/README.md:0 [error] index-entries: Child directory not listed in index: refunds
features/apply-discount/refunds:0 [error] readme-exists: README.md not found

3 violations found (3 errors)
```

### Tieni il codice in entrambi i casi — il saggio va oltre

Il saggio del 2025 dice che il codice andrebbe rigenerato dalla specifica. Il tile, sulla pagina letta il 30 ottobre 2026, fa implementare l’agente rispetto a una specifica approvata e non descrive un compilatore che sostituisca il tuo albero dei sorgenti. SpecScore non ti toglie mai il codice. La specifica è il contratto revisionato; il codice resta tuo.

### Identità del requisito

Il tile punta un requisito a dei file con `targets` e `[@test]`. SpecScore nomina il requisito `REQ: slug` così un piano, un’attività e un trailer di commit possono citarlo dopo che i file si sono spostati.

## Quando usare l'uno o l'altro.

### Scegli Tessl quando…

- Ti serve un registro, valutazioni e governance per skill condivise tra molti agenti e repository.
- Vuoi il flusso del saggio spec as source come tile di guida: intervistare, approvare un .spec.md, poi implementare.
- Stai già pagando la piattaforma Tessl, o la stai provando, e vuoi il suo tile di specifica in quel registro.

### Usa SpecScore se…

- Il formato della specifica stessa deve essere valido nella CI, anche nei repository che non installano Tessl.
- Vuoi id dei requisiti e un linter che non chiama un modello.
- Vuoi il formato [a codice aperto](https://github.com/specscore/specscore) sotto una licenza Creative Commons, separato da una piattaforma di skill.

## Spec as source, e una specifica che si può sottoporre a lint.

Il saggio di Tessl ha ragione: un PRD invecchiato perde rispetto al codice. Un controllo di formato è il modo in cui la specifica resta ciò di cui ti fidi. SpecScore non genera la tua applicazione dalla specifica. Fa fallire la specifica nella CI quando la struttura, i link o lo stato sono sbagliati.

Usa Tessl se vuoi la piattaforma e il tile. Usa SpecScore se l’artefatto in git è ciò che la pull request deve dimostrare.

## Fonti.

Le pagine pubbliche qui sotto sono state lette il 30 ottobre 2026. Prezzi, nomi dei piani e linee di rilascio cambiano.

- [Documentazione Tessl — Che cos’è Tessl?](https://docs.tessl.io/)
- [Homepage di Tessl](https://tessl.io/)
- [Blog di Tessl — Why code alone isn’t enough (27 giugno 2025)](https://tessl.io/blog/from-code-centric-to-spec-centric)
- [Registro Tessl — tessl-labs/spec-driven-development](https://tessl.io/registry/tessl-labs/spec-driven-development)
- [tesslio/spec-driven-development-tile](https://github.com/tesslio/spec-driven-development-tile)
- [specscore/specscore — flusso CI dogfood](https://github.com/specscore/specscore/blob/main/.github/workflows/dogfood.yml)
- [specstudio-skills — skill /score](https://github.com/specscore/specstudio-skills/blob/main/skills/score/SKILL.md)
- [specscore/specscore — CC BY 4.0](https://github.com/specscore/specscore/blob/main/LICENSE)
- [specscore/specscore-cli — Apache-2.0](https://github.com/specscore/specscore-cli/blob/main/LICENSE)
