OpenSDD e uma evolucao do OpenSpec focada em memoria operacional, planejamento rastreavel e handoff entre agentes.
O objetivo nao e apenas criar specs. O objetivo e permitir que um projeto grande continue compreensivel ao longo do tempo, mesmo quando:
- novas ideias aparecem no meio da implementacao;
- existem varios agentes trabalhando em paralelo;
- o frontend fica defasado em relacao ao backend;
- um agente novo entra no repositorio sem contexto previo;
- o sistema ja existe e precisa ser absorvido sem reler todo o codigo.
O OpenSDD organiza o desenvolvimento em 4 camadas:
- Descoberta
INSIGHT: ideia brutaDEBATE: discussao estruturadaRADAR: ideia aprovada para futuro planejamentoDISCARDED: ideia rejeitada com motivo registrado
- Planejamento
RADpode ser quebrado emFEATsFEATvira unidade executavel- o backlog registra dependencias, bloqueios e paralelizacao
- Execucao
- cada
FEATganha um workspace proprio em.sdd/active/FEAT-###/ - esse workspace tem
spec,plan,tasksechangelog
- Memoria operacional
.sdd/state/*.yamle a fonte canonica.sdd/core/*.mdsao views operacionais geradas a partir do estadoREADME.md,AGENTS.md,AGENT.mde.sdd/AGENT.mdorientam humanos e agentes
Depois do bootstrap, o projeto passa a ter:
README.mdAGENTS.mdAGENT.md.sdd/.sdd/state/.sdd/core/.sdd/discovery/.sdd/pendencias/.sdd/active/.sdd/templates/.sdd/skills/curated/(layout legacy) ou.sdd/habilidades/skills/(layout pt-BR).sdd/deposito/.sdd/prompts/openspec/changes/
Dentro de .sdd/ ficam:
- memoria operacional do projeto
- backlog executavel
- debates e radar
- gaps e decisoes de frontend
- skills curadas
- documentacao viva do sistema
Requer:
- Node.js
20.19.0ou superior npm
Instalacao global oficial via npm:
npm install -g @gfmozzer/opensddDepois confira:
opensdd --versionSe voce estiver desenvolvendo este fork localmente:
pnpm install
pnpm run build
npm install -g .Entre no repositorio onde voce quer usar o sistema e rode:
opensdd install --tools nonePara ja nascer com nomenclatura mais intuitiva em portugues nas pastas do SDD:
opensdd install --tools none --lang pt-BR --layout pt-BRSe quiser integrar ferramentas suportadas no bootstrap:
opensdd install --tools allOu somente algumas:
opensdd install --tools codex,cursor,claudeEsse comando instala de uma vez:
- a base do runtime
openspec/config.yaml.sdd/- skills curadas
- prompts recomendados por workflow
- templates
- estados YAML canonicos
- documentos iniciais do projeto
Se voce nao quiser habilitar frontend no bootstrap:
opensdd install --tools none --no-frontendAtalhos em portugues no CLI:
opensdd instalar(alias deopensdd install)opensdd sdd iniciar(alias deopensdd sdd init)opensdd sdd iniciar-contexto(alias deopensdd sdd init-context)opensdd sdd ideia,debater,decidir,desdobrar,iniciar-execucao,aprovar,contexto,orientar,consolidar,proximo,checar,ingestao-depositoopensdd arquivar(alias em portugues paraopensdd archive)
Se o projeto ja esta em andamento, o primeiro passo depois do install e inicializar o contexto:
opensdd sdd init-context
opensdd sdd check --render
opensdd sdd onboard systemO init-context serve para:
- inspecionar a base existente
- preencher contexto inicial de arquitetura, stack, servicos e mapa do repositorio
- gerar a memoria inicial do sistema
- preparar onboarding para agentes novos
Em projetos grandes, esse bootstrap inicial nao substitui consolidacao progressiva. Ele cria uma base inicial para que o processo passe a evoluir de forma rastreavel.
Fluxo principal:
- Ver o sistema como um todo
opensdd sdd onboard systemSe nao houver FEAT pronta, o onboarding agora retorna passos guiados (ex.: criar insight, abrir debate, decidir e quebrar RAD) em vez de deixar proximos_passos vazio.
- Ver o que pode comecar agora
opensdd sdd next- Iniciar uma feature
opensdd sdd start FEAT-001 --fluxo padrao- Ler o contexto da feature
opensdd sdd context FEAT-001-
Implementar
-
Consolidar memoria ao final
opensdd sdd finalize --ref FEAT-001Regra operacional central:
uma feature so esta realmente concluida quando a documentacao afetada foi atualizada antes do finalize.
Isso inclui, quando houver impacto:
README.mdAGENTS.mdAGENT.md.sdd/README.md.sdd/AGENT.md.sdd/core/*.md- gaps e decisoes de frontend
Quando surgir uma ideia no meio do desenvolvimento:
opensdd sdd insight "descricao da ideia"
opensdd sdd debate INS-001
opensdd sdd decide DEB-001 --outcome radar
opensdd sdd breakdown RAD-001 --mode graph --incrementalEsse fluxo serve para nao enfiar no backlog algo que ainda nao foi pensado.
O OpenSDD separa descoberta de ingestao de documentos consolidados.
Se voce ja possui:
- PRD
- RFC
- historias do usuario
- wireframes
- imagens
- html mockado
- referencias visuais
esses materiais devem ir para:
.sdd/deposito/
Estrutura:
.sdd/deposito/
├── prds/
├── rfcs/
├── historias/
├── wireframes/
├── html-mocks/
├── referencias-visuais/
├── entrevistas/
├── anexos/
└── legado/
Depois disso, rode:
opensdd sdd ingest-deposito --title "Planejamento inicial do sistema"Esse comando varre o deposito, indexa fontes, cria/reaproveita RAD, desdobra FEATs e tenta iniciar a primeira FEAT pronta.
Depois disso, o sistema usa o indice de fontes e as skills curadas para transformar esse material em:
- contexto canonico
- radar
- features
- gaps pendentes e resolvidos de frontend
- sitemap frontend consolidado
- insights apenas quando houver ambiguidade real
O bootstrap do SDD instala curadoria local em:
.sdd/skills/curated/ (layout legacy)
.sdd/habilidades/skills/ (layout pt-BR)
Entre elas:
repo-context-bootstrapsource-intake-sddbusiness-extractor-sddfrontend-extractor-sddplanning-normalizer-sdd
Prompts recomendados tambem sao instalados em:
.sdd/prompts/
Tambem sao instaladas skills curadas de apoio para execucao e planejamento.
Um agente novo deve seguir esta ordem:
README.md.sdd/AGENT.md.sdd/core/index.md.sdd/core/arquitetura.md.sdd/core/servicos.md.sdd/core/spec-tecnologica.md.sdd/core/repo-map.md.sdd/core/fontes.md.sdd/core/frontend-decisions.md
Bootstrap:
opensdd install --tools noneopensdd install --tools allopensdd sdd init-contextopensdd sdd check --renderopensdd sdd ingest-deposito
Onboarding e operacao:
opensdd sdd onboard systemopensdd sdd orientar systemopensdd sdd nextopensdd sdd start FEAT-### --fluxo direto|padrao|rigorosoopensdd sdd aprovar FEAT-### --etapa proposta|planejamento|tarefasopensdd sdd context FEAT-###opensdd sdd finalize --ref FEAT-###
Descoberta:
opensdd sdd insight "..."opensdd sdd debate INS-###opensdd sdd decide DEB-### --outcome radar|discardopensdd sdd desdobrar RAD-### --mode graph --incremental
Guia detalhado em portugues:
Guia interno do sistema:
pnpm install
pnpm run build
pnpm testLoop local do CLI:
pnpm run dev:cliO comando global oficial deste fork e:
opensddO caminho de distribuicao oficial deste repositorio e npm:
npm install -g @gfmozzer/opensddFallback suportado:
- instalacao por tarball (
npm pack+npm install -g ./gfmozzer-opensdd-<versao>.tgz)
MIT
Ordem de leitura para qualquer agente novo:
README.md(este bloco).sdd/AGENT.md.sdd/core/index.md.sdd/core/arquitetura.md.sdd/core/servicos.md.sdd/core/spec-tecnologica.md.sdd/core/repo-map.md.sdd/core/fontes.md.sdd/core/frontend-sitemap.md(quando frontend estiver ativado).sdd/core/frontend-decisions.md(quando frontend estiver ativado)
Comandos essenciais:
opensdd sdd onboard systemopensdd sdd nextopensdd sdd context FEAT-###opensdd sdd frontend-impact FEAT-### --status required|none --reason "..."opensdd sdd finalize --ref FEAT-###