{
  "markdown": "# SDD — Spec-Driven Development (plugin multiplataforma)\n\nFluxo de desenvolvimento guiado por spec, empacotado como **plugin de skills** instalável em **Cursor, Claude Code, OpenAI Codex, GitHub Copilot CLI, Gemini CLI e OpenCode**.\n\nAs skills cobrem o ciclo completo — `/sdd-init` (bootstrap) → `01 New` → `02 Research` → `03 Specify` → `04 Plan` → `05 Review` → `06 Execute` (implement + review loop; worktree opt-in) → `07 Spec review` → `08 Docs` → `finish-branch` — mais skills transversais de **TDD condicional**, **debugging**, **verificação**, **worktrees**, **receber review**, **execução paralela**, **commit message** e **design de schema PostgreSQL**.\n\nEm cada mudança rastreável, o fluxo também **gera documentação de histórico** versionada no repositório — pasta `specs/` com spec (As Is → To Be), plano, execuções, revisões e `implementation-log.md` — registrando o porquê, o que mudou e como foi validado.\n\n> **Genérico por design.** As skills não assumem stack/linguagem. O específico de cada projeto (comandos de build, issue tracker, integrações, branch base, mapas) vive no `AGENTS.md` do repositório que consome o plugin. Veja o contrato em [`skills/using-sdd/references/agents-md-contract.md`](skills/using-sdd/references/agents-md-contract.md).\n\n> Repositório: **[guskuma/sdd-workflow](https://github.com/guskuma/sdd-workflow)**.\n\n## Documentação de histórico\n\nO `/sdd-01-new` faz o scaffold de `specs/` na primeira mudança do repositório (templates em `specs/templates/`). Cada spec vive em uma pasta datada e acumula artefatos ao longo das fases:\n\n```\nspecs/\n├── templates/                 # cópia dos templates do plugin (primeira spec)\n├── implementation-log.md      # índice global de specs concluídas\n└── YYYY-MM-{ISSUE-KEY}-slug/\n    ├── spec.md                # As Is, To Be, goals, restrições (research → specify)\n    ├── design.md              # opcional — alta complexidade (specify)\n    ├── tasks.md               # opcional — backlog detalhado (plan, ≥ 5 tasks)\n    ├── executions.md          # gates, revisões, desvios, fechamento (execute → docs)\n    ├── issue-summary.md       # snapshot da issue (new)\n    └── mr-template.md         # corpo do MR/PR (preenchido em docs)\n```\n\n| Arquivo | Fase principal | O que registra |\n|---------|----------------|----------------|\n| `spec.md` | 02 Research → 03 Specify | Contexto, As Is, To Be, goals, non-goals, restrições |\n| `design.md` | 03 Specify | Decisões de design quando a complexidade exige |\n| `tasks.md` | 04 Plan | Backlog zero-context: Constraints, mapa, Interfaces, Steps; em specs grandes, **Plan em ondas** (progresso + checkpoints) |\n| `executions.md` | 06 Execute → 08 Docs | O que foi feito, gates, revisões, documentação |\n| `issue-summary.md` | 01 New | Snapshot da issue no início |\n| `mr-template.md` | 08 Docs | Descrição pronta para abrir o MR/PR |\n| `implementation-log.md` | 08 Docs | Entrada por spec concluída (link, branch, data) |\n\n> Sem issue tracker? Use um identificador curto no lugar de `{ISSUE-KEY}` (ex.: o slug) e marque os campos de issue como `N/A`. A convenção completa está em [`skills/using-sdd/references/agents-md-contract.md`](skills/using-sdd/references/agents-md-contract.md).\n\n## O que está incluído\n\n| Skill | Tipo | Para que serve |\n|-------|------|----------------|\n| `using-sdd` | bootstrap | Disciplina de uso + adaptação entre plataformas |\n| `sdd-init` | bootstrap | Análise do repositório + geração de `AGENTS.md`, `CLAUDE.md` e `GEMINI.md` (idempotente) |\n| `sdd-01-new` … `sdd-08-docs` | fases | Ciclo SDD ponta a ponta (TDD e feature flag decididos no `01-new`; padrão de implementação no `AGENTS.md` via `/sdd-init`) |\n| `tdd` | transversal | Red → green → refactor com Iron Law (só se `tdd: true`) |\n| `debugging` | transversal | Causa raiz antes do fix (4 fases + instrumentação multi-camada) |\n| `verification` | transversal | Evidência antes de afirmar sucesso |\n| `worktrees` | transversal | Isolamento via git worktree (opt-in no `/sdd-06-execute`) |\n| `parallel-execution` | transversal | Tasks independentes via subagentes |\n| `receiving-review` | transversal | Filtra findings (loop 06 + review externo) antes de implementar |\n| `finish-branch` | transversal | Menu pós-docs: merge / MR/PR / manter / descartar |\n| `commit-message` | transversal | Mensagens Conventional Commits (+ issue key opcional) |\n| `postgresql-table-design` | transversal | Schema PostgreSQL (tipos, indexes, constraints, gotchas) |\n| `writing-skills` | meta | Endurecer/criar skills com pressure scenarios |\n\nInclui ainda: `commands/` (slash `/sdd-init` e `/sdd-0X`), `agents/code-reviewer.agent.md`, templates SDD empacotados (scaffoldados em `specs/` pelo `/sdd-01-new`; bootstrap de projeto pelo `/sdd-init`).\n\n## Instalação\n\n### Cursor\n\nAdicione o marketplace e instale o plugin `sdd-workflow` (ou aponte o Cursor para este repositório como plugin). Os comandos `/sdd-init` e `/sdd-0X` ficam disponíveis no chat.\n\n### Claude Code\n\n```bash\n/plugin marketplace add guskuma/sdd-workflow\n/plugin install sdd-workflow@sdd-marketplace\n```\n\n### GitHub Copilot CLI\n\n```bash\ncopilot plugin marketplace add guskuma/sdd-workflow\ncopilot plugin install sdd-workflow@sdd-marketplace\n```\n\n### OpenAI Codex\n\nPeça ao Codex:\n\n```\nFetch and follow instructions from https://raw.githubusercontent.com/guskuma/sdd-workflow/refs/heads/main/.codex/INSTALL.md\n```\n\nDetalhes: [`.codex/INSTALL.md`](.codex/INSTALL.md).\n\n### Gemini CLI\n\n```bash\ngemini extensions install https://github.com/guskuma/sdd-workflow\n```\n\n### OpenCode\n\nDetalhes: [`.opencode/INSTALL.md`](.opencode/INSTALL.md).\n\n## Como funciona\n\n1. O hook `SessionStart` injeta a skill `using-sdd` no início da sessão (formato JSON detectado por plataforma).\n2. `using-sdd` orienta o agente a sempre consultar o `AGENTS.md` do projeto e a invocar as skills relevantes.\n3. Sem `AGENTS.md`, o agente sugere `/sdd-init` para analisar o repositório e gerar os arquivos de bootstrap.\n4. As skills usam nomes de tools do estilo Claude Code/Cursor; o mapeamento para outras plataformas está em `skills/using-sdd/references/*-tools.md`.\n\n## Pré-requisito no projeto-alvo: `AGENTS.md`\n\nPara o fluxo funcionar bem, o repositório que usa o plugin precisa de um `AGENTS.md` na raiz com, no mínimo: **Gate de qualidade** (comandos de lint/test/build), **issue tracker**, **branches**, **integrações externas** e **restrições padrão**. Modelo completo em [`skills/using-sdd/references/agents-md-contract.md`](skills/using-sdd/references/agents-md-contract.md).\n\n> **Primeira vez no projeto?** Rode `/sdd-init` — a skill detecta stack, comandos de CI, issue tracker e convenções Git quando possível, gera `AGENTS.md` (ou preenche lacunas no existente) e cria `CLAUDE.md` / `GEMINI.md` apontando para ele.\n\n## Compatibilidade por plataforma\n\n| Recurso | Cursor | Claude Code | Codex | Copilot CLI | Gemini CLI | OpenCode |\n|---------|:------:|:-----------:|:-----:|:-----------:|:----------:|:--------:|\n| Skills | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |\n| Slash `/sdd-init`, `/sdd-0X` | ✓ | ✓ | — (invocar por nome) | — | ✓ | — |\n| Subagentes (`parallel-execution`, `code-reviewer`) | ✓ | ✓ | ✓ (multi_agent) | ✓ | — | depende |\n| Plan mode (no `/sdd-06`) | ✓ | ✓ | — (degrada) | — | — | — |\n| Hook SessionStart | ✓ | ✓ | n/a | ✓ | n/a | n/a |\n\n> Onde um recurso não existe, as skills degradam graciosamente (ex.: sem Plan mode, descrevem o micro-plano no chat; sem subagentes, executam sequencialmente).\n\n## Licença\n\nMIT — ver [LICENSE](LICENSE).\n",
  "bytes": 7482,
  "sha": "42907c1eb60fb11c6324c018e70c66c9340532819e1f4b0e7011908e4c35393f",
  "repo_slug": "guskuma/sdd-workflow",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/plg_guskuma_sdd_workflow_56724321/readme"
}