diff --git a/skills/feature-research-prd/SKILL.md b/skills/feature-research-prd/SKILL.md new file mode 100644 index 0000000..b9f7d09 --- /dev/null +++ b/skills/feature-research-prd/SKILL.md @@ -0,0 +1,59 @@ +--- +name: researching-feature-prd +description: Prepares a PRD by researching the codebase and external docs. Use when the user mentions PLAN, RESEARCH_FEATURE, or PREPARE_PRD. +--- + +# Feature Research & PRD Specialist + +## When to use this skill + +- User requests creating/modifying a feature and wants a PRD first. +- Trigger keywords: PLAN, RESEARCH_FEATURE, PREPARE_PRD. + +## Workflow + +Copy this checklist to `task.md`: + +- [ ] **Fase 1: Descoberta Interna (Codebase)** + - [ ] Identificar arquivos que precisarão ser modificados (`find_by_name`). + - [ ] Identificar padrões internos existentes para reutilização (evitar duplicidade de componentes/funções). +- [ ] **Fase 2: Descoberta Externa (Web)** + - [ ] Buscar documentação oficial atualizada das tecnologias envolvidas (ex: "NextAuth v5 docs"). + - [ ] Buscar "Implementation Patterns" recomendados para o problema. +- [ ] **Fase 3: Síntese (Geração do PRD)** + - [ ] Filtrar o excesso de informação (manter apenas o relevante para a implementação). + - [ ] Criar/Sobrescrever o arquivo: `PRD.md`. + +## Instructions + +- Priorize fontes oficiais e atuais para documentação externa. +- Use `rg` para localizar padrões internos e evitar duplicidade. +- Registre apenas o essencial para implementação (sem overengineering). +- Evite suposições; confirme com evidências do código/dos docs. + +## PRD Template + +```markdown +# Product Requirements Document (PRD) +**Feature**: {{USER_QUERY}} +**Data**: {{CURRENT_DATE}} + +## 1. Contexto & Objetivo +Breve descrição do que vamos construir. + +## 2. Contexto da Base de Código (Interno) +- **Arquivos para Modificar**: + - `caminho/do/arquivo.ts`: Motivo da alteração. +- **Padrões para Reutilizar**: + - Ex: Usar o componente `Button.tsx` existente. + - Ex: Usar a função de log em `lib/logger.ts`. + +## 3. Documentação & Padrões (Externo) +- **Links/Snippets de Docs**: + - Trecho da documentação oficial explicando o método a ser usado. +- **Padrão de Implementação**: + - Resumo de como resolveremos isso (ex: "Usar Webhooks ao invés de Polling"). + +## 4. Restrições Técnicas +- Listar limitações (ex: versão do Node, estrutura de pastas). +```