# SpecScore vs Tessl

Canonical: https://specscore.md/pt-br/vs/tessl/

[Desenvolvimento baseado em especificações](https://specscore.md/pt-br/spec-driven-development/) (SDD) significa que a especificação do comportamento pretendido é escrita antes do código. [Tessl](https://tessl.io/) (Tessl AI Ltd) é, em 30 de outubro de 2026, uma plataforma de habilitação de agentes: um registro e um plano de controle para os skills, regras e plugins que os agentes de código carregam. “Especificação como fonte” é a afirmação mais forte no [ensaio de junho de 2025](https://tessl.io/blog/from-code-centric-to-spec-centric) do Tessl: a especificação é o artefato duradouro, e o código é derivado dela. [SpecScore](https://specscore.md/pt-br/) é um formato de arquivo [de código aberto](https://github.com/specscore/specscore) para essa especificação, verificado por uma [interface de linha de comando](https://specscore.md/pt-br/cli/) (CLI). A [integração contínua](https://specscore.md/pt-br/validators/) (CI) — uma verificação automática de cada mudança proposta — executa essa verificação neste repositório.

## O que têm em comum.

- Ambos dizem que um prompt é um lugar fraco para guardar a intenção. Uma especificação escrita deve sobreviver ao chat.
- Ambos esperam que um agente de código com IA leia a especificação antes de editar o código.
- Ambos podem ligar testes aos requisitos, então “pronto” é algo que dá para apontar.

## O que o Tessl faz bem.

Duas superfícies diferentes do Tessl são fáceis de misturar. As notas abaixo as separam, a partir de páginas lidas em 30 de outubro de 2026.

### Um argumento claro para a especificação como fonte

O ensaio de Simon Maple de 27 de junho de 2025 diz que um documento de requisitos do produto (PRD) — prosa escrita para pessoas sobre o que construir — costuma ficar desatualizado, enquanto o código vira a única fonte da verdade. A alternativa do ensaio é que a especificação é o que você muda, e um LLM gera código, testes e documentação a partir dela. Isso é uma posição real, não um slogan.

### Uma plataforma para o contexto do agente

[A documentação do Tessl](https://docs.tessl.io/) descreve um registro, governança que analisa e pontua skills, avaliações e observabilidade entre agentes. A documentação diz que skills são artefatos simples no seu repositório e que a plataforma funciona com Claude Code, Cursor, Copilot, Gemini e outros. Pontuar ali significa pontuar um skill, não pontuar uma especificação de produto.

### Um tile oficial orientado por especificação, com verificações em shell

O tile [tessl-labs/spec-driven-development](https://tessl.io/registry/tessl-labs/spec-driven-development), sob licença MIT no [repositório público do tile](https://github.com/tesslio/spec-driven-development-tile), ensina um agente a entrevistar, escrever arquivos `.spec.md`, esperar aprovação e então implementar. A página do registro lista `scripts/validate-specs.sh` e `scripts/check-spec-links.sh` para frontmatter, `targets` e links `[@test]`. A mesma página diz que o tile é contexto de orientação: sem comandos especiais, sem framework.

## Comparação de funcionalidades.

“Especificação como fonte” é o ensaio do Tessl. O tile é um pacote de skills sobre a plataforma de hoje. O SpecScore é um formato com um linter versionado.

| Capacidade | Tessl | SpecScore |
| --- | --- | --- |
| Papel principal | Plataforma de skills para agentes, mais um tile orientado por especificação e um ensaio de 2025 sobre especificação como fonte | **Formato aberto de especificação + CLI** |
| O que a especificação é | Ensaio: a fonte duradoura da qual o código é gerado. Tile: um .spec.md contra o qual o agente implementa, e você fica com o código. | **Um contrato ao lado do código**. O lint não regenera o código. |
| Forma da especificação | Tile: frontmatter YAML, globs em targets e links [@test] para arquivos de teste | **Markdown + YAML**, `REQ: slug`, [Given/When/Then](https://specscore.md/acceptance-criteria-specification) |
| Verificação da especificação | Scripts de shell entregues com o tile, para o frontmatter e os links desse tile | **specscore spec lint** no formato SpecScore, na CI deste repositório. `/score` é uma nota de IA manual. |
| Licença | O tile é [MIT](https://github.com/tesslio/spec-driven-development-tile/blob/main/LICENSE). A plataforma é um produto. A documentação não publica o código da plataforma. | [CC BY 4.0](https://github.com/specscore/specscore/blob/main/LICENSE) formato · [Apache-2.0](https://github.com/specscore/specscore-cli/blob/main/LICENSE) CLI |
| Preço | A [página inicial do Tessl](https://tessl.io/), lida em 30 de outubro de 2026, descreve um nível gratuito (1.000 créditos por mês em um espaço de trabalho) e planos empresariais pagos. | **Sem taxa** pelo formato nem pela CLI |

## O que o SpecScore acrescenta.

### Um formato publicado, não um script de tile

Os scripts de shell do tile verificam arquivos `.spec.md` que o tile pediu ao agente para escrever. O SpecScore verifica um formato documentado neste site. O [dogfood.yml](https://github.com/specscore/specscore/blob/main/.github/workflows/dogfood.yml) instala uma release fixada do [specscore](https://github.com/specscore/specscore-cli) e executa `specscore spec lint`. O [/score](https://github.com/specscore/specstudio-skills/blob/main/skills/score/SKILL.md) não é esse job: é um skill manual que sai com código diferente de zero quando revisores de IA relatam problemas.

```
$ 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)
```

### Você fica com o código nos dois casos — o ensaio vai além

O ensaio de 2025 diz que o código deve ser regenerado a partir da especificação. O tile, na página lida em 30 de outubro de 2026, faz o agente implementar contra uma especificação aprovada e não descreve um compilador que substitui a sua árvore de código. O SpecScore nunca tira o código de você. A especificação é o contrato revisado; o código continua seu.

### Identidade do requisito

O tile aponta um requisito para arquivos com `targets` e `[@test]`. O SpecScore nomeia o requisito `REQ: slug` para que um plano, uma tarefa e um trailer de commit possam citá-lo depois que os arquivos mudarem de lugar.

## Quando usar cada um.

### Recorra ao Tessl quando…

- Você precisa de um registro, avaliações e governança para skills compartilhados entre muitos agentes e repositórios.
- Você quer o fluxo do ensaio de especificação como fonte na forma de um tile de orientação: entrevistar, aprovar um .spec.md e então implementar.
- Você já paga pela plataforma Tessl, ou está experimentando, e quer o tile de especificação nesse registro.

### Use o SpecScore quando…

- O próprio formato da especificação precisa ser válido na CI, inclusive em repositórios que não instalam o Tessl.
- Você quer ids de requisitos e um linter que não chama um modelo.
- Você quer o formato [de código aberto](https://github.com/specscore/specscore) sob uma licença Creative Commons, separado de uma plataforma de skills.

## Especificação como fonte, e uma especificação que dá para lintar.

O ensaio do Tessl acerta quando diz que um PRD desatualizado perde para o código. Uma verificação de formato é o modo de a especificação continuar sendo aquilo em que você confia. O SpecScore não gera o seu aplicativo a partir da especificação. Ele faz a especificação falhar na CI quando a estrutura, os links ou o status estão errados.

Use o Tessl se você quer a plataforma e o tile. Use o SpecScore se o artefato no git é o que o pull request precisa provar.

## Fontes.

As páginas públicas abaixo foram lidas em 30 de outubro de 2026. Preços, nomes de planos e linhas de versão mudam.

- [Documentação do Tessl — o que é o Tessl?](https://docs.tessl.io/)
- [Página inicial do Tessl](https://tessl.io/)
- [Blog do Tessl — por que só o código não basta (27 de junho de 2025)](https://tessl.io/blog/from-code-centric-to-spec-centric)
- [Registro do 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 — workflow de 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)
