Caso de uso — Bootstrap de governança
Há uma janela curta no início de um repositório novo em que tudo é mais barato: criar pastas, decidir convenções, deixar placeholders para artefactos que ainda não existem. Passada essa janela, retrofitar governança custa o triplo. Este caso de uso aproveita-a: o MCP sabe que artefactos o manual identifica para cada capítulo (políticas, templates, registos, checklists), e o agente usa essa lista para gerar um scaffold coerente em minutos. O conteúdo dos artefactos fica em aberto — preencher é trabalho da equipa — mas o esqueleto deixa visível, desde o primeiro dia, o que falta.
Pré-requisitos
- MCP instalado.
- Risk level alvo conhecido (
L1é típico no arranque; subir conforme o sistema cresce).
Fluxo
1. Listar artefactos requeridos
plan_sbd_toe_repo_governance(riskLevel, offset, limit)
Output esperado (campos): byChapter[] (os artefactos agrupados por capítulo, cada um {artefactId, chapterId, riskLevels[]}), totalArtefacts (o número de linhas capítulo↔artefacto), artefact_totals (distinct_count, os artefactos distintos, e chapter_relation_count, as linhas — nunca se somam linhas para contar artefactos), coverage e risk_level_effect. Os ids de artefacto têm a forma ART-<slug>-<hash>. A relação capítulo↔artefacto é uma projecção: não diz quem possui o artefacto nem obriga a produzi-lo. A resposta é paginada (offset / limit): percorrer todas as páginas antes de dar a lista por completa.
2. Passar o risk level
Passar o riskLevel a plan_sbd_toe_repo_governance: a resposta declara o efeito do nível em risk_level_effect. Não há artefactos a eliminar por nível — nenhum capítulo é excluído; a aplicabilidade é graduada e o que muda é a exigência (ver sbd://toe/chapter-applicability/{riskLevel}).
3. Estruturar o repo
Layout recomendado:
repo-root/
├── governance/
│ ├── 01-classificacao-aplicacoes/
│ │ ├── README.md # Refere ART-* + capítulo
│ │ └── classificacao.md # Artefacto preenchido
│ ├── 02-requisitos-seguranca/
│ │ └── catalogo.md
│ ├── ...
├── policies/ # (opcional) cópias adaptadas das policies do manual
├── AGENTS.md # Aponta ao SbD-ToE como guia
├── CLAUDE.md # Idem para Claude Code
└── .claude/skills/sbd-toe.md # Skill canónica (de generate_sbd_toe_skill)
4. Scaffold automático
Para cada artefacto devolvido:
<!-- governance/<chapter>/<artifact>.md -->
# <título>
> **Artefacto:** `ART-<slug>-<hash>`
> **Capítulo:** [<chapter>](https://www.securitybydesign.dev/sbd-toe/sbd-manual/<chapter>/intro)
> **Estado:** ⏳ pendente
## Propósito
<do que o MCP devolve para o artefacto>
## Conteúdo esperado
- ...
## Aprovação
- Owner: <role>
- Reviewers: <roles>
5. Inicializar a sessão de equipa
Em AGENTS.md / CLAUDE.md, incluir bloco de inicialização:
## SbD-ToE
Este repositório segue o manual Security by Design — Theory of Everything.
- Risk level: L1
- Roles primários: developer, devops, appsec (rotativo)
- Skill: `.claude/skills/sbd-toe.md`
- Em qualquer sessão de design/implementação de segurança, inicializar:
`setup_sbd_toe_agent(riskLevel="L1", projectRole="<role>")`
Disciplina de output
- O bootstrap gera placeholders — não preenche os artefactos. Cada artefacto requer trabalho de equipa.
- Não declarar conformidade com base na existência de placeholders. Conformidade requer conteúdo preenchido + evidência.
- Documentar o risk level assumido explicitamente em cada artefacto. Ao subir de L1 para L2, o capítulo 03 passa a listar os seus artefactos, e a lista por capítulo cresce, mas não aparecem artefactos novos.
risk_level_effectdeclara que o nível filtra pouco, por desenho.
Skill / subagent — Claude Code
.claude/agents/sbd-toe-bootstrap.md:
---
name: sbd-toe-bootstrap
description: Bootstrap inicial de governança SbD-ToE num repo novo — gera scaffold de artefactos por capítulo.
tools: Read, Write, Edit, Bash, mcp__sbd-toe__*
---
# Workflow
1. Perguntar risk_level alvo se não estiver explícito.
2. Chamar plan_sbd_toe_repo_governance.
3. Passar riskLevel a plan_sbd_toe_repo_governance e ler risk_level_effect (nenhum capítulo é excluído; paginar até ao fim).
4. Criar layout governance/<chapter>/<artifact>.md com placeholders.
5. Criar AGENTS.md + CLAUDE.md com bloco de inicialização.
6. Guardar a skill canónica via generate_sbd_toe_skill em .claude/skills/sbd-toe.md.
7. Reportar lista do que ficou criado + lista do que falta preencher.
8. Não inventar conteúdo de artefactos — só scaffold.
Quando re-correr
| Trigger | Acção |
|---|---|
| Risk level sobe (L1→L2 ou L2→L3) | Re-correr — a exigência muda; não apagar nada. |
| Upgrade do MCP server | Re-correr generate_sbd_toe_skill() para refrescar a skill. |
| Adição de cross-check normativo posterior ao snapshot do MCP | Adicionar manualmente a partir do manual web até nova publicação — confirmar a cobertura em sbd://toe/version (ver content lag). |
Anti-patterns
- ❌ Preencher os placeholders automaticamente com texto genérico — pior que vazio.
- ❌ Apagar artefactos "que não vão ser usados" — esconde o gap.
- ❌ Marcar artefactos como "concluídos" sem revisão humana.
Relacionado
- Onboarding — depois do scaffold, treinar a equipa.
- Skills e agentes — para configurar persistência.