jarvis-ai-framework 1.0.3 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (193) hide show
  1. package/AGENTS.md +66 -64
  2. package/README.md +24 -10
  3. package/agents/AGENTS.md +12 -8
  4. package/agents/README.md +14 -16
  5. package/agents/engineering/data/eng.data-engineer.agent.md +6 -6
  6. package/agents/engineering/eng.agent.md +19 -36
  7. package/agents/engineering/eng.bug-hunter.md +13 -12
  8. package/agents/engineering/eng.cybersecurity.agent.md +20 -35
  9. package/agents/engineering/eng.docs-writer.md +2 -2
  10. package/agents/engineering/eng.frontend.agent.md +17 -22
  11. package/agents/engineering/eng.rpa.agent.md +5 -15
  12. package/agents/engineering/qa/eng.qa.test-architect.md +4 -4
  13. package/agents/engineering/qa/eng.qa.test-planner.md +3 -3
  14. package/agents/engineering/qa/eng.qa.testing-engineer.md +3 -3
  15. package/agents/product/prod.discovery-interviewer.md +86 -0
  16. package/bin/commands/init.js +6 -6
  17. package/bin/jarvis.js +1 -1
  18. package/bin/lib/config/constants.js +47 -0
  19. package/bin/lib/core/sync-engine.js +12 -0
  20. package/package.json +2 -5
  21. package/rules/AGENTS.md +6 -4
  22. package/rules/engineering/eng-rules.md +5 -3
  23. package/rules/engineering/eng-security-rules.md +4 -4
  24. package/rules/engineering/eng.breakdown-subtasks-rules.md +208 -37
  25. package/rules/engineering/eng.docs-scraping-rules.md +1 -1
  26. package/rules/engineering/eng.downstream-flow-rules.md +1 -1
  27. package/rules/engineering/eng.integrations-rules.md +2 -2
  28. package/rules/engineering/eng.pre-pr-rules.md +1 -1
  29. package/rules/engineering/eng.skills-rules.md +60 -0
  30. package/rules/engineering/eng.specializations-rules.md +69 -0
  31. package/rules/engineering/eng.start-rules.md +11 -11
  32. package/rules/engineering/eng.work-rules.md +19 -14
  33. package/rules/engineering/frontend/eng.frontend-rules.md +70 -69
  34. package/rules/product/README.md +2 -0
  35. package/rules/product/prod-rules.md +7 -5
  36. package/{skills/prod-specs/rules/prod-spec-rules.md → rules/product/prod.spec-rules.md} +55 -50
  37. package/skills/AGENTS.md +111 -47
  38. package/skills/SKILLS-ROADMAP.md +26 -45
  39. package/skills/eng-ai-engineer/SKILL.md +1 -0
  40. package/skills/eng-backend/SKILL.md +142 -644
  41. package/skills/eng-backend/references/1-fundamentos-programacao.md +41 -0
  42. package/skills/eng-backend/references/10-seguranca.md +61 -0
  43. package/skills/eng-backend/references/11-performance.md +49 -0
  44. package/skills/eng-backend/references/12-erros-logging.md +42 -0
  45. package/skills/eng-backend/references/13-qualidade-codigo.md +51 -0
  46. package/skills/eng-backend/references/2-design-arquitetura.md +48 -0
  47. package/skills/eng-backend/references/3-design-patterns.md +50 -0
  48. package/skills/eng-backend/references/4-algoritmos-estruturas.md +43 -0
  49. package/skills/eng-backend/references/5-banco-dados.md +53 -0
  50. package/skills/eng-backend/references/6-api-comunicacao.md +42 -0
  51. package/skills/eng-backend/references/7-concorrencia-async.md +49 -0
  52. package/skills/eng-backend/references/8-arquitetura-servidor.md +49 -0
  53. package/skills/eng-backend/references/9-testes.md +43 -0
  54. package/skills/{eng-arch-c4 → eng-backend-arch-c4}/SKILL.md +12 -7
  55. package/skills/{eng-ms-trace → eng-backend-microservices-trace}/SKILL.md +6 -4
  56. package/skills/{eng-nestjs → eng-backend-nestjs}/SKILL.md +3 -1
  57. package/skills/{eng-rabbitmq → eng-backend-rabbitmq}/SKILL.md +3 -1
  58. package/skills/eng-data-bi/SKILL.md +1 -0
  59. package/skills/eng-data-debug/SKILL.md +2 -1
  60. package/skills/eng-data-engineer/SKILL.md +1 -0
  61. package/skills/eng-data-onboard/SKILL.md +1 -0
  62. package/skills/eng-data-orchestrator/SKILL.md +1 -0
  63. package/skills/{eng-performance-engineer → eng-devops-performance-engineer}/SKILL.md +2 -1
  64. package/skills/eng-frontend/SKILL.md +145 -782
  65. package/skills/eng-frontend/references/1-fundamentos-programacao.md +37 -0
  66. package/skills/eng-frontend/references/10-testes.md +47 -0
  67. package/skills/eng-frontend/references/11-seguranca.md +56 -0
  68. package/skills/eng-frontend/references/12-qualidade-codigo.md +51 -0
  69. package/skills/eng-frontend/references/2-html-fundamentals.md +51 -0
  70. package/skills/eng-frontend/references/3-css-responsive.md +61 -0
  71. package/skills/eng-frontend/references/4-javascript-dom.md +60 -0
  72. package/skills/eng-frontend/references/5-state-management.md +55 -0
  73. package/skills/eng-frontend/references/6-uiux-design.md +59 -0
  74. package/skills/eng-frontend/references/7-acessibilidade.md +46 -0
  75. package/skills/eng-frontend/references/8-performance.md +58 -0
  76. package/skills/eng-frontend/references/9-browser-apis.md +54 -0
  77. package/skills/{eng-design-system → eng-frontend-design-system}/SKILL.md +4 -2
  78. package/skills/{eng-microfrontend → eng-frontend-microfrontend}/SKILL.md +4 -2
  79. package/skills/{eng-browser-extension-builder → eng-global-browser-extension-builder}/SKILL.md +2 -1
  80. package/skills/{eng-docs-write → eng-global-docs-write}/SKILL.md +8 -4
  81. package/skills/eng-global-jira-comment/SKILL.md +21 -0
  82. package/skills/{eng-pr → eng-global-pr}/SKILL.md +7 -3
  83. package/skills/{eng-task-comment → eng-global-task-comment}/SKILL.md +6 -2
  84. package/skills/eng-qa-a11y-audit/SKILL.md +1 -0
  85. package/skills/eng-qa-bug-report/SKILL.md +2 -1
  86. package/skills/eng-qa-bug-report/TASK_MANAGERS.md +1 -1
  87. package/skills/eng-qa-cypress-e2e/SKILL.md +1 -0
  88. package/skills/eng-qa-dev-guide/SKILL.md +1 -0
  89. package/skills/eng-qa-e2e/SKILL.md +1 -0
  90. package/skills/eng-qa-e2e-spec-writer/SKILL.md +1 -0
  91. package/skills/eng-qa-exploratory/SKILL.md +1 -0
  92. package/skills/eng-qa-gate/SKILL.md +3 -2
  93. package/skills/eng-qa-graphql-contract/SKILL.md +1 -0
  94. package/skills/eng-qa-quality-report/SKILL.md +3 -2
  95. package/skills/eng-qa-test-plan/SKILL.md +1 -0
  96. package/skills/eng-qa-testsprite/SKILL.md +2 -1
  97. package/skills/eng-qa-unit-test/SKILL.md +1 -0
  98. package/skills/eng-scraper/SKILL.md +1 -0
  99. package/skills/eng-scraper-robot-builder/SKILL.md +1 -0
  100. package/skills/{eng-cybersecurity → eng-security-cybersecurity}/SKILL.md +3 -2
  101. package/skills/eng-security-patch/SKILL.md +6 -2
  102. package/skills/{eng-threat-model → eng-security-threat-model}/SKILL.md +6 -2
  103. package/skills/eng-security-triage/SKILL.md +4 -0
  104. package/skills/{context-detect → jarvis-context-detect}/SKILL.md +6 -5
  105. package/skills/{context-detect → jarvis-context-detect}/assets/context-profile-template.md +3 -3
  106. package/skills/jarvis-create-specialization/SKILL.md +230 -0
  107. package/skills/jarvis-create-specialization/assets/referencia-template.md +39 -0
  108. package/skills/jarvis-create-specialization/assets/skill-especializacao-template.md +78 -0
  109. package/skills/{docs-central → jarvis-docs-central}/README.md +1 -1
  110. package/skills/{docs-central → jarvis-docs-central}/SKILL.md +3 -40
  111. package/skills/{docs-index → jarvis-docs-index}/SKILL.md +8 -4
  112. package/skills/{init-jarvis → jarvis-init}/SKILL.md +42 -19
  113. package/skills/{init-jarvis → jarvis-init}/assets/mcp-configs.md +3 -3
  114. package/skills/{init-jarvis → jarvis-init}/assets/onboarding-checklist.md +1 -1
  115. package/skills/jarvis-init/assets/passo-adicionar-stacks.md +163 -0
  116. package/skills/{init-jarvis → jarvis-init}/assets/setup-guide.md +1 -1
  117. package/skills/jarvis-init/assets/sinais-de-stack.md +54 -0
  118. package/skills/jarvis-list-specializations/SKILL.md +148 -0
  119. package/skills/{report-issue → jarvis-report-issue}/SKILL.md +3 -2
  120. package/skills/{prod-roadmap-report → product-roadmap-report}/SKILL.md +2 -1
  121. package/skills/product-specs/SKILL.md +45 -0
  122. package/skills/{prod-specs-update → product-specs-update}/SKILL.md +3 -2
  123. package/taxonomy.md +3 -21
  124. package/templates/AGENTS.md +7 -6
  125. package/templates/CDD aplicado a Prompts.md +5 -5
  126. package/templates/ENV-template.md +12 -9
  127. package/templates/engineering/AGENTS-template.md +1 -1
  128. package/templates/engineering/CONTACTS-template.md +1 -1
  129. package/templates/product/prod-discovery-template.md +98 -0
  130. package/{skills/prod-specs/templates → templates/product}/prod-epic-template.md +1 -0
  131. package/{skills/prod-specs/templates → templates/product}/prod-frd-template.md +1 -0
  132. package/{skills/prod-specs/templates → templates/product}/prod-issue-template.md +1 -0
  133. package/{skills/prod-specs/templates → templates/product}/prod-prd-template.md +1 -0
  134. package/workflows/AGENTS.md +3 -1
  135. package/workflows/README.md +2 -0
  136. package/workflows/engineering/eng.bug-audit.md +2 -2
  137. package/workflows/engineering/eng.build-tech-spec.md +38 -49
  138. package/workflows/engineering/eng.debug.md +10 -10
  139. package/workflows/engineering/eng.docs.md +2 -2
  140. package/workflows/engineering/eng.plan.md +5 -5
  141. package/workflows/engineering/eng.pr.md +8 -8
  142. package/workflows/engineering/eng.pre-pr.md +16 -20
  143. package/workflows/engineering/eng.review.md +5 -10
  144. package/workflows/engineering/eng.rpa.robot.md +3 -3
  145. package/workflows/engineering/eng.security-audit.md +5 -5
  146. package/workflows/engineering/eng.security-incident.md +2 -2
  147. package/workflows/engineering/eng.security-pipeline.md +2 -2
  148. package/workflows/engineering/eng.start.md +16 -50
  149. package/workflows/engineering/eng.work.md +9 -12
  150. package/workflows/engineering/frontend/eng.frontend-component.md +68 -96
  151. package/workflows/engineering/frontend/eng.frontend-perf-audit.md +90 -220
  152. package/workflows/engineering/frontend/eng.frontend-review.md +57 -63
  153. package/workflows/engineering/qa/eng.qa-quality-report.md +0 -5
  154. package/workflows/product/prod.roadmap.preview.md +2 -2
  155. package/workflows/product/prod.spec.breakdown.md +3 -8
  156. package/workflows/product/prod.spec.discovery.md +152 -0
  157. package/workflows/product/prod.spec.epic.md +3 -0
  158. package/workflows/product/prod.spec.frd.md +123 -8
  159. package/workflows/product/prod.spec.issue.md +3 -2
  160. package/workflows/product/prod.spec.md +2 -0
  161. package/workflows/product/prod.spec.prd.md +105 -6
  162. package/workflows/taxonomy.md +1 -1
  163. package/workflows/warm-up.md +5 -26
  164. package/agents/engineering/eng.tech-analyst.agent.md +0 -102
  165. package/skills/churn-audit/SKILL.md +0 -385
  166. package/skills/eng-jira-comment/SKILL.md +0 -17
  167. package/skills/eng-tech-analyst/SKILL.md +0 -529
  168. package/skills/lovable-prompt-generator/SKILL.md +0 -304
  169. package/skills/prod-specs/SKILL.md +0 -108
  170. package/skills/prod-specs/references/prod.spec.clarify.md +0 -176
  171. package/skills/prod-specs/references/prod.spec.epic.md +0 -107
  172. package/skills/prod-specs/references/prod.spec.frd.md +0 -135
  173. package/skills/prod-specs/references/prod.spec.issue.md +0 -145
  174. package/skills/prod-specs/references/prod.spec.prd.md +0 -118
  175. package/skills/prod-specs/templates/prod-prd-full-template.md +0 -159
  176. package/workflows/engineering/ta/eng.ta.atendimento.md +0 -93
  177. /package/skills/{eng-arch-c4 → eng-backend-arch-c4}/assets/example-code.md +0 -0
  178. /package/skills/{eng-arch-c4 → eng-backend-arch-c4}/assets/example-component.md +0 -0
  179. /package/skills/{eng-arch-c4 → eng-backend-arch-c4}/assets/example-container.md +0 -0
  180. /package/skills/{eng-arch-c4 → eng-backend-arch-c4}/assets/example-context.md +0 -0
  181. /package/skills/{prod-roadmap-report → product-roadmap-report}/README.md +0 -0
  182. /package/skills/{prod-roadmap-report → product-roadmap-report}/commands/status.compiled.single.team.md +0 -0
  183. /package/skills/{prod-roadmap-report → product-roadmap-report}/commands/status.list.projects.md +0 -0
  184. /package/skills/{prod-roadmap-report → product-roadmap-report}/commands/status.memory.md +0 -0
  185. /package/skills/{prod-roadmap-report → product-roadmap-report}/commands/status.roadmap.preview.md +0 -0
  186. /package/skills/{prod-roadmap-report → product-roadmap-report}/references/detailed-guide.md +0 -0
  187. /package/skills/{prod-roadmap-report → product-roadmap-report}/rules/detailed-guide.md +0 -0
  188. /package/skills/{prod-roadmap-report → product-roadmap-report}/rules/status-report-rules.md +0 -0
  189. /package/skills/{prod-roadmap-report → product-roadmap-report}/templates/template-multiple-teams-compiled-status.md +0 -0
  190. /package/skills/{prod-roadmap-report → product-roadmap-report}/templates/template-projects-list.md +0 -0
  191. /package/skills/{prod-roadmap-report → product-roadmap-report}/templates/template-single-team-compiled-status.md +0 -0
  192. /package/skills/{prod-roadmap-report → product-roadmap-report}/templates/template-single-team-status.md +0 -0
  193. /package/{skills/prod-specs/templates → templates/product}/prod-breakdown-template.md +0 -0
@@ -1,107 +0,0 @@
1
- ---
2
- name: prod.spec.epic
3
- description: Fluxo de trabalho para criação de épicos que agrupam histórias de usuários e tarefas relacionadas seguindo as diretrizes do Product Spec Kit.
4
- auto_execution_mode: 3
5
- env_file: "@/ENV.md"
6
- recommended_model: gpt-4o
7
- model_tier: medium
8
- model_justification: Criação de épicos segue templates estruturados e requer compreensão de contexto de produto
9
- ---
10
-
11
- # Crie um fluxo de trabalho épico
12
-
13
- Este fluxo de trabalho orienta você na criação de um épico usando `$PROD_TEMPLATES/prod-epic-template.md`. épicos agrupam histórias de usuários relacionadas que oferecem uma funcionalidade significativa.
14
-
15
-
16
- ## Quando usar
17
- - Ao dividir grandes recursos ou PRDs em partes gerenciáveis
18
- - Quando o trabalho abrange vários sprints ou iterações
19
- - Ao coordenar o trabalho entre várias equipes
20
- - Se precisar agrupar várias histórias ou tasks de um mesmo tema ou entrega
21
- - Para recursos ou componentes principais que precisam de rastreamento em um nível superior
22
- - Quando o usuári quiser criar um épico independente de especificações anteriores ou para projetos que já estão em andamento
23
-
24
- ## Pré-requisitos e opcionais
25
- - Ter uma PRD existente ou requisitos de produto é importante, mas opcional. Questione o usuário se ele deseja criar um PRD ou se ele deseja criar um épico independente de especificações anteriores ou para projetos que já estão em andamento
26
- - Ter um breakdown existente é importante, mas opcional. Questione o usuário se ele deseja criar um breakdown (siga o fluxo de trabalho `prod.spec.breakdown.md`) ou se ele deseja criar um épico independente de especificações anteriores ou para projetos que já estão em andamento
27
- - Compreensão de alto nível da abordagem técnica
28
-
29
- ## Resultado final
30
- - Por padrão, use o modelo `$PROD_TEMPLATES/prod-epic-template.md` integralmente
31
- - Siga a estrutura do modelo exatamente como definida, não pule passos, a não ser que o usuário solicite explicitamente
32
- - Nomeie o arquivo usando a convenção: `$PROD_DOCS/{epic-ID}-{epic-name}.md` (se não existir uma PRD para pegar o nome, ignore esse prefixo)
33
- - O arquivo final deverá estar no mesmo idioma da interação do usuário
34
-
35
- ## Diretrizes do épico
36
- - Concentre-se no “o que” e não no “como”
37
- - Cada épico deve agregar valor independente
38
- - Mantenha os épicos em um tamanho gerenciável (normalmente de 2 a 4 semanas de trabalho)
39
- - Garantir critérios de aceitação claros, não levando para o micro interações de usuário (isso fica em histórias e tasks), mas sim na solução de alto nível, possibilitando que as histórias e tasks sejam criadas com base nessas informações
40
- - Link para PRD relacionado ou iniciativa dos pais
41
-
42
- ## Etapas de execução
43
-
44
- ### 1. Validar pré-requisitos
45
- Verifique se existe um PRD ou plano de detalhamento. Caso contrário, oriente o usuário a criar um primeiro usando o fluxo de trabalho apropriado.
46
-
47
- ### 2. Defina detalhes épicos
48
- 1. **Nome épico**: título claro e voltado para a ação
49
- 2. **Lançamento**: Lançamento associado (se aplicável)
50
- 3. **Contexto**: Antecedentes e importância
51
- 4. **Declaração do problema**: qual problema do usuário ou da empresa isso resolve
52
- 5. **Solução**: abordagem de alto nível para resolver o problema
53
-
54
- ### 3. Definir critérios de aceitação
55
- - Definir 3-5 critérios de aceitação de alto nível
56
- - Concentre-se nos resultados e não nos detalhes da implementação
57
- - Garantir que os critérios sejam testáveis e mensuráveis
58
- - Baseie-se nas necessidades do usuário, não em detalhes técnicos
59
-
60
- ### 4. Identifique histórias relacionadas
61
- - Liste histórias de usuários conhecidas que pertencem a este épico
62
- - Cada história deve ser valiosa de forma independente
63
- - Incluir IDs de histórias e breves descrições
64
- - Defina prioridades sempre que possível
65
-
66
- ### 5. Considerações técnicas do documento
67
- - Principais decisões de arquitetura
68
- - Dependências principais
69
- - Considerações de desempenho
70
- - Requisitos de segurança
71
-
72
- ## Melhores práticas
73
-
74
- ### Do
75
- - Mantenha os épicos focados em um único objetivo
76
- - Garantir que cada épico ofereça valor tangível
77
- - Torne os critérios de aceitação claros e testáveis
78
- - Alinhar com estratégia de produto e PRD
79
- - Incluir as partes interessadas relevantes na revisão
80
-
81
- ### Don't
82
- - Faça épicos muito grandes ou muito pequenos
83
- - Incluir detalhes de implementação nos critérios de aceitação
84
- - Esquecer de vincular a PRDs relacionados ou iniciativas dos pais
85
- - Ignorar dependências técnicas
86
- - Ignore o processo de revisão
87
-
88
- ## Integração com outros fluxos de trabalho
89
- - **PRD**: os épicos devem estar alinhados aos requisitos do produto. Se não existir um PRD, oriente o usuário a criar um usando o fluxo em `prod.spec.prd.md` ou a fornecer mais informações para que o épico seja construído
90
- - **Histórias**: eventualmente os épicos serão divididos em diversas histórias de usuários ou tasks, então, mantenha as informações de forma que isso seja possível
91
- - **Sprints**: os épicos normalmente abrangem vários sprints ou semanas, abrangendo várias entregas menores em formatos de histórias e tasks
92
- - **Problemas**: pode gerar tarefas ou bugs relacionados
93
-
94
- ## Próximas etapas
95
- Depois de criar um épico, pergunte para o usuário:
96
- 1. Se o ele quer explorar ou modificar algum tópico do épico ou se aprova o conteúdo final
97
- 1. Escrever as histórias de usuário ou tasks relacionadas ao épico que forma planejadas e/ou que o usuário sugeriu. Utilize o fluxo de trabalho `prod.spec.issue.md`
98
-
99
- ## Atualize os docs
100
- Após a aprovação do usuário:
101
- 1. Atualize a PRD com as alterações relacionadas ao épico
102
- 2. Atualize o arquivo de breakdown (plan) com as alterações relacionadas ao épico
103
-
104
- Utilize o que o usuário fornecer analisar em:
105
- <requirement>
106
- #$ARGUMENTS
107
- </requirement>
@@ -1,135 +0,0 @@
1
- ---
2
- name: prod.spec.frd
3
- description: Fluxo para criação de FRD (Feature Requirements Document), que auxilia na definição detalhada dos requisitos funcionais de uma feature
4
- auto_execution_mode: 3
5
- env_file: "@/ENV.md"
6
- allowed-tools: Read, Grep
7
- recommended_model: claude-sonnet-4-20250514
8
- model_tier: high
9
- model_justification: FRDs requerem análise detalhada de requisitos funcionais, comportamento de usuário e especificações técnicas
10
- ---
11
-
12
- # FRD - Feature Requirements Document
13
-
14
- Utilize o `$ARGUMENTS` que o usuário passar como ponto de partida e para entender o contexto do que foi pedido.
15
- <requirement>
16
- #$ARGUMENTS
17
- </requirement>
18
-
19
- ## Quando usar
20
- - Quando é necessário documentar requisitos funcionais detalhados para uma feature
21
- - Antes do desenvolvimento para garantir clareza sobre o que deve ser construído
22
- - Para alinhar equipes técnicas e de produto sobre os requisitos esperados
23
- - Para documentar critérios de aceitação claros e testáveis
24
- - Para descrever o funcionamento detalhado da feature a partir do comportamento do usuário, de especificações de produto e de design
25
-
26
- ## Princípios Fundamentais
27
- 1. **Sempre use o template** localizado em `$SKILL_TEMPLATE_FOLDER/prod-frd-template.md`
28
- 2. **Nunca crie o arquivo final com suposições não validadas** — sempre confirme sugestões primeiro
29
- 3. **Seja inteligente, não robótico** — analise o contexto e proponha sugestões inteligentes, não faça perguntas vazias
30
-
31
- ---
32
-
33
- ## Sobre a atuação e função de uma FRD
34
-
35
- A FRD não é um épico, história ou task: ela serve como documento de detalhamento que descreve profundamente os requisitos funcionais e não funcionais de uma solução de produto, atuando como ponte entre a especificação de produto e o código. Ela unifica requisitos e critérios da funcionalidade do ponto de vista de produto, usuário, design e técnico.
36
-
37
- - A partir de FRDs é possível criar épicos, histórias e tasks
38
- - FRDs são relacionadas a PRDs e também a ARDs
39
- - FRDs são formadas por features, ações e jornadas que o usuário executa na plataforma
40
- - FRD não é um produto, mas uma solução dentro de um produto
41
- - Dentro das FRDs devem ter as descrições micro de ações e sub-funcionalidades
42
- - Uma FRD descreve a solução nível médio, que faz parte de um produto ou solução maior descrita no PRD
43
- - A FRD precisa descrever o comportamento do usuário e do sistema de forma detalhada, agrupando micro-ações e jobs to be done do usuário
44
-
45
- ---
46
-
47
- ## Fluxo de Trabalho
48
-
49
- O fluxo é dividido em checkpoints obrigatórios (gates). Você NÃO DEVE avançar para o próximo gate até que o usuário aprove explicitamente o atual. NUNCA gere o arquivo final até que TODOS os gates sejam aprovados.
50
-
51
- Não busque validação de tudo de uma vez; valide os gates de forma incremental.
52
-
53
- ### Gate 1: Reconhecer e contextualizar
54
-
55
- - Reconheça o que o usuário forneceu (liste o que foi recebido)
56
- - Utilize o contexto fornecido pelo usuário ou pelo agente para criar o output final
57
- - Se houverem PRDs, liste-as para que o usuário possa escolher qual é o PRD de origem desta FRD. Se não houver PRD, pergunte se o usuário quer criar uma antes ou continuar sem PRD relacionada
58
- - Faça 2–3 perguntas estratégicas sobre: escopo da feature, usuário impactado, restrições técnicas ou de design conhecidas
59
- - **PARE e aguarde a resposta do usuário antes de prosseguir**
60
-
61
- ### Gate 2: Lista de Features e Jornada do Usuário
62
-
63
- - Pergunte para o usuário se ele já tem informações de features relacionadas a essa FRD
64
- - Proponha a lista de features que compõem este FRD — cada feature deve ser uma funcionalidade específica e implementável, e não uma tarefa técnica ou história de usuário
65
- - Utilize as informações do usuário para escrever uma descrição de até 350 caracteres de cada feature, sintetizando o que aquela feature deve fazer e o seu resultado
66
- - Formato: "Para a feature [Nome], sugiro: [descrição]. Justificativa: [por quê].
67
- - Apresente um rascunho da jornada do usuário com base no que foi fornecido. Pergunte se o usuário tem artefatos de design (layouts, imagens, diagramas, links de Figma ou similares) que possam enriquecer a jornada
68
- - **PARE e aguarde confirmação do usuário antes de prosseguir**
69
-
70
- ### Gate 3: Sugerir conteúdo para seções ausentes
71
-
72
- - Para CADA seção do template que o usuário NÃO forneceu conteúdo explicitamente, apresente suas sugestões com justificativa. Se o usuário pular, não inclua o bloco no output final
73
- - Agrupe sugestões relacionadas (ex.: todos os requisitos juntos, todas as dependências juntas)
74
- - Formato: "Para [Nome da Seção], sugiro: [conteúdo]. Justificativa: [por quê]. Devo incluir, modificar ou remover?"
75
- - Seções que DEVEM ser validadas se não fornecidas: TL;DR, Introdução e contexto, Requisitos e critérios, Dependências, O que essa solução não é
76
- - Se você identificar que está em uma pasta que contém o código do projeto/produto, procure entender o contexto. Mostre uma sugestão para o usuário de critérios técnicos do que você encontrou (endpoints, tabelas, tecnologias), e pergunte se ele quer confirmar, validar ou deixar para depois. Se depois, preencha apenas com comportamentos de produto e do usuário
77
- - **PARE e aguarde o usuário aprovar, modificar ou rejeitar CADA grupo de sugestões antes de prosseguir**
78
-
79
- ### Gate 4: Gerar output final
80
-
81
- - Se está modificando uma FRD existente, atualize apenas as seções alteradas ou especificadas pelo usuário. Não modifique o arquivo sem pedido explícito
82
- - Somente após os Gates 1–3 aprovados, gere o output final usando o template em `$SKILL_TEMPLATE_FOLDER/prod-frd-template.md`
83
- - O output deve conter APENAS: conteúdo fornecido pelo usuário + sugestões aprovadas, seguindo o template
84
- - Se uma seção não tiver conteúdo fornecido ou aprovado, deixe em branco com marcador TODO e informe o usuário
85
-
86
- ---
87
-
88
- ## Abordagens por Contexto
89
-
90
- **Contexto rico** (documento, PRD ou requisitos detalhados fornecidos):
91
- - Analise o que está completo vs. o que está faltando
92
- - Sugira complementos com raciocínio: "Com base em X, sugiro Y porque Z. Está correto?"
93
- - Agrupe sugestões relacionadas
94
-
95
- **Contexto mínimo** (apenas uma ideia ou nome de feature):
96
- - Faça perguntas direcionadas para o TL;DR (O QUÊ / POR QUÊ / COMO)
97
- - Infira contexto adicional e valide: "A partir das suas respostas, infiro X. Devo incluir isso?"
98
-
99
- **Feature de projeto existente**:
100
- - Leia o código-fonte, documentos e FRDs existentes primeiro
101
- - Sugira a jornada e as features com base na análise para confirmação
102
-
103
- **Design disponível**:
104
- - Use os artefatos de design (Figma, imagens) como fonte primária para a jornada
105
- - Derive os requisitos a partir dos fluxos de tela, não ao contrário
106
-
107
- ---
108
-
109
- ## Padrões de Qualidade
110
-
111
- ✅ **Boa sugestão**: Contextual, específica, orientada ao comportamento do usuário
112
- ```
113
- Com base no fluxo de cadastro de oficinas, sugiro como requisito:
114
- "Quando o usuário clica em 'Salvar', o sistema valida os campos obrigatórios
115
- em tempo real e exibe mensagens de erro inline abaixo de cada campo inválido."
116
-
117
- Isso cobre o comportamento esperado e o estado de erro. Posso usá-lo?
118
- ```
119
-
120
- ❌ **Má sugestão**: Genérica, sem comportamento definido
121
- ```
122
- O sistema deve validar os dados do formulário.
123
- ```
124
-
125
- ---
126
-
127
- ## Evite
128
- - Perguntas vazias sem sugestões quando há contexto disponível
129
- - Perguntar sobre cada pequeno detalhe separadamente
130
- - Misturar requisitos funcionais com não funcionais no mesmo item
131
- - Requisitos vagos ou não testáveis ("o sistema deve ser rápido")
132
- - Combinar múltiplos comportamentos em um único requisito
133
- - Inventar jornadas, fluxos ou restrições técnicas sem base no input do usuário
134
- - Criar o documento final antes de o usuário validar as suposições
135
- - Superengenheirar — foque nas necessidades principais, não em casos extremos desnecessários
@@ -1,145 +0,0 @@
1
- ---
2
- name: prod.spec.issue
3
- description: Criar um especificação de issues como Histórias de Usuário, Tarefas técnicas e bugs, seguindo as melhores práticas de gestão de produto e projeto.
4
- auto_execution_mode: 3
5
- env_file: "@/ENV.md"
6
- recommended_model: gpt-4o
7
- model_tier: medium
8
- model_justification: Criação de issues é estruturada e segue templates, requer boa compreensão mas não raciocínio extremamente complexo
9
- ---
10
-
11
- # Fluxo de Criação de Issues
12
-
13
- Antes de iniciar, revise o arquivo de regras invioláveis em `$PROD_RULES/prod-spec-rules.md`.
14
-
15
- Este fluxo orienta você na criação de issues (histórias de usuários, tarefas, bugs etc) bem definidas usando o template `$PROD_TEMPLATES/prod-issue-template.md`. Cada issue deve ser uma unidade de trabalho autocontida que pode ser completada dentro de uma única sprint.
16
-
17
- Uma issue é a menor unidade de trabalho que pode ser feita. Ela deve entregar valor sozinha. Ela precisa ser o menor tamanho possível para entregar rápido e com qualidade, mas não pode ser tão pequena que não entrega valor percebido para o usuário ou para o produto.
18
-
19
- Um grupo de histórias de um mesmo assunto podem formar um épico.
20
-
21
- ## Quando Usar
22
- - Ao decompor épicos em histórias de usuário implementáveis
23
- - Criar tarefas técnicas
24
- - Criar requisitos não funcionais
25
- - Documentar e rastrear bugs
26
- - Quando você precisa capturar trabalho que não requer documentação completa de PRD
27
- - Para qualquer item de trabalho que precisa ser rastreado em uma sprint ou que necessita ser feita no projeto
28
- - Para criar ou modificar novas funcionalidades, jornadas, ações de usuário e outras modificações dentro do projeto
29
-
30
- ## Pré-requisitos
31
- - Entendimento claro do trabalho a ser feito. Leia a PRD, épicos, histórias criadas anteriormente para entender o contexto a ser feito.
32
- - Entenda também últimos commits do projeto e outras alterações que possam ter sido feitas em sessões anteriores
33
- - Se não houver uma PRD ou épico relacionado, sugira para o usuário a criação do épico ou da PRD, mas é totalmente opcional
34
- - Referências de design (para histórias de usuário)
35
- - Quaisquer restrições técnicas ou requisitos relevantes
36
-
37
- ## Resultado Final
38
- - Siga a estrutura exata do template `$PROD_TEMPLATES/prod-issue-template.md`
39
- - Convenção de nomenclatura: `{issue_type}-{id}-{issue_name}.md` (ex: story-123-fluxo-lembrar-senha.md)
40
- - O idioma do arquivo deve corresponder ao idioma de interação do usuário
41
- - Se o usuário não tiver um título claro, crie um título baseado no conteúdo do arquivo e no contexto do épico
42
- - Uma História ou Task pode ou não ter subtasks. Sugira as subtasks que são as menores partes da issue para guiar o PM ou o Dev na criação dessas histórias ou tasks.
43
- - Se o usuário pedir para salvar no `$TASK_MANAGER`, leia `TASK_MANAGER`, `TOKEN_TASK_MANAGER` e `TASK_MANAGER_URL_BASE` no ENV.md e use `eng-task-comment` / adapter do vendor (jira | linear | github | asana).
44
- - Se `TASK_MANAGER` estiver vazio (freelance) ou faltar token/URL, **não invente board** — pergunte as informações necessárias ou salve só o markdown local.
45
-
46
- ## Estrutura da Issue
47
-
48
- ### 1. Título e Metadados
49
- - **Título**: Título claro e orientado à ação (ex: "Implementar Formulário de Login do Usuário")
50
- - **PRD Relacionada**: Link para a PRD pai, se aplicável
51
- - **Épico Relacionado**: Link para o épico pai, se aplicável
52
- - **Tipo**: História/Tarefa/Bug
53
- - **Prioridade**: Alta/Média/Baixa
54
-
55
- ### 2. Contexto
56
-
57
- Deve descrever o contexto do problema ou funcionalidade a ser implementada:
58
- - Informações de contexto
59
- - Valor de negócio
60
- - Como se encaixa no panorama maior
61
- - Qualquer pesquisa de usuário ou dados relevantes
62
-
63
- Para resumir a ação final que deve ser feita, use o formato abaixo:
64
- ```
65
- **Como** [papel do usuário]
66
- **Eu quero** [objetivo]
67
- **Para que** [benefício/valor]
68
- ```
69
-
70
- #### Assets de Design
71
- - Links para mockups/wireframes
72
- - Referências do design system
73
- - Links de protótipos
74
-
75
- Se usuário não tiver fornecido os links ou os assets de design, questione se podemos avançar sem eles. Se ele aprover, continue. Se ele entregar os assets, liste-os no template. Se ele enviar imagens, utilize-as como referência, entendendo os principais pontos e fluxos descritos no design.
76
-
77
- ### 3. Critérios de Aceitação
78
- - Siga o formato do template
79
- - Agrupe critérios relacionados sob subtítulos claros
80
- - Inclua todos os cenários possíveis e casos extremos
81
- - Seja específico sobre elementos de UI e comportamento
82
- - Inclua estados de erro e validações
83
-
84
- Exemplo:
85
- ```
86
- #### Fluxo de Autenticação
87
- - Quando o usuário clicar no botão "Login" na página inicial, o sistema exibe modal de login
88
- - Quando o usuário inserir formato de email inválido, o sistema exibe mensagem de erro abaixo do campo
89
- - Quando a autenticação falhar, o sistema mostra mensagem de erro específica
90
- - Após login bem-sucedido, o sistema redireciona para o dashboard do usuário
91
- ```
92
-
93
- ### 4. Requisitos Técnicos
94
- Nesse bloco, você deve ser explicito sobre como serão organizados os requisitos técnicos e defuncionamento. Utilize FRD para descrever os requisitos técnicos.
95
- - Orientações de implementação (sugestões, não requisitos)
96
- - Considerações de performance
97
- - Requisitos de segurança
98
- - Requisitos de dados
99
- - Dependências
100
-
101
- ### 5. Casos Extremos e Tratamento de Erros
102
- - Liste potenciais casos extremos
103
- - Defina como o sistema deve lidar com cada caso
104
- - Inclua mensagens de erro amigáveis ao usuário
105
-
106
- ### 6. Fora do Escopo
107
- - Declare claramente o que não está incluído
108
- - Referencie melhorias futuras se necessário
109
-
110
- ## Melhores Práticas
111
-
112
- ### Para Histórias de Usuário
113
- - Foque nas necessidades do usuário, não na implementação
114
- - Deixe as histórias descritivas para que agentes de IA possam construir as features corretas
115
- - Torne-as independentes e negociáveis. As histórias devem entregar valor para o usuário ou para o produto en suas entregas.
116
- - Elas devem ser o menor tamanho possível para entregar rápido e com qualidade, mas não pode ser tão pequena que não entrega valor percebido para o usuário ou para o produto.
117
- - Garanta que sejam valiosas para os usuários
118
-
119
- ### Para Tarefas
120
- - Seja específico sobre o que precisa ser feito
121
- - Inclua critérios de sucesso
122
- - Anote quaisquer dependências
123
- - Estime o esforço se possível
124
- - Torne-as independentes e negociáveis
125
- - Elas devem ser o menor tamanho possível para entregar rápido e com qualidade, mas não pode ser tão pequena que não entrega valor percebido para o usuário ou para o produto.
126
-
127
- ### Para Bugs
128
- - Inclua passos para reproduzir
129
- - Peça para o usuário se ele tem evidências como vídeos ou imagens para adicionar na história. Se ele enviar, coloque o link no arquivo final, e salve os arquivos em `<project-path>/docs/master-docs/assets/`
130
- - Documente comportamento esperado vs. real
131
- - Pergunte detalhes do ambiente, erros no console, mensagens de erro do próprio produto
132
- - Solicite informações de identificação do cliente, o fluxo que ele seguiu para reproduzir o erro, e quaisquer outros detalhes que possam ajudar a reproduzir o erro
133
-
134
- ## Armadilhas Comuns
135
- - Critérios de aceitação vagos ou incompletos
136
- - Casos extremos faltando
137
- - Descrições excessivamente técnicas
138
- - Falta de critérios claros de sucesso
139
- - Não vincular ao trabalho relacionado
140
-
141
- ## Pontos de Integração
142
- - **PRDs**: Devemos atualizar a PRD com as modificações feitas nas FRDs, sem abordar o micro, mas alterações de alto nível.
143
- - **FRDs**: Devemos atualizar a FRD com as modificações feitas nas issues, sem abordar o micro, mas alterações de alto nível.
144
- - **Épicos**: Issues como Histórias ou Tasks devem se encaixar no escopo do épico
145
- - **Código**: Devem referenciar ID da issue nos commits
@@ -1,118 +0,0 @@
1
- ---
2
- name: prod.spec.prd
3
- description: Instruções para alterar ou criar um especificação de produto PRD - Product Requirement Document seguindo o template e as melhores prática de mercado, de forma que possa ser utilizado e expandido por agentes de IA e humanos.
4
- auto_execution_mode: 3
5
- env_file: "@/ENV.md"
6
- allowed-tools: Read, Grep
7
- recommended_model: claude-sonnet-4-20250514
8
- model_tier: high
9
- model_justification: PRDs requerem análise profunda de requisitos, estruturação de documentos complexos e compreensão de contexto de negócio
10
- ---
11
-
12
- # PRD - Product Requirement Document
13
-
14
- Utilize o `$ARGUMENTS` que o usuário passar como ponto de partida e para entender o contexto do que foi pedido.
15
- <requirement>
16
- #$ARGUMENTS
17
- </requirement>
18
-
19
- # Quando usar
20
- - Ao iniciar uma nova especificação de PRD (Product Requirment Document)
21
- - Precisar modificar um PRD existente
22
- - Quando documentação abrangente é necessária
23
- - Como fonte única de verdade para o desenvolvimento do produto e base para derivar histórias e tarefas
24
-
25
- ## Princípios Fundamentais
26
- 1. **Sempre use o template** desta skill localizado em `$SKILL_TEMPLATE_FOLDER/prod-prd-template.md` dessa skill para o output final
27
- 2. **Nunca crie o arquivo final com suposições não validadas** — sempre confirme sugestões primeiro
28
- 3. **Seja inteligente, não robótico** — analise o contexto e proponha sugestões inteligentes, não faça perguntas vazias
29
-
30
- ---
31
-
32
- ## Fluxo de Trabalho
33
-
34
- O fluxo é dividido em checkpoints obrigatórios (gates). Você NÃO DEVE avançar para o próximo gate até que o usuário aprove explicitamente o atual. NUNCA gere o arquivo final até que TODOS os gates sejam aprovados.
35
-
36
- Não busque validação de tudo de uma vez; valide os gates de forma incremental.
37
-
38
- ### Gate 1: Reconhecer e esclarecer
39
- - Reconheça o que o usuário forneceu (liste o que foi recebido).
40
- - Identifique o que foi fornecido explicitamente vs. o que está faltando
41
- - Evite fazer novas buscas ou leitura de arquivos se você já recebeu informações suficientes para prosseguir. Caso contrário, peça mais informações para o usuário. Diga exatamente o que você precisa para preencher o template completamente.
42
- - Faça 2–3 perguntas estratégicas sobre: clareza do problema, limites de escopo, restrições técnicas
43
- - **PARE e aguarde a resposta do usuário antes de prosseguir**
44
-
45
- ### Gate 2: Sugerir conteúdo para seções ausentes
46
- - Para CADA seção do template que o usuário NÃO forneceu conteúdo explicitamente, apresente suas sugestões com justificativa. Se o usuário pular, não coloque o bloco no output final.
47
- - Agrupe sugestões relacionadas (ex.: todos os indicadores de sucesso juntos, todas as evoluções futuras juntas)
48
- - Formato: "Para [Nome da Seção], sugiro: [conteúdo]. Justificativa: [por quê]. Devo incluir, modificar ou remover?"
49
- - Seções que DEVEM ser validadas se não fornecidas pelo usuário: TL;DR, Contexto, Definição do Problema, Indicadores de Sucesso, O que esta Iniciativa Não É, Evoluções Futuras, Fora do Escopo
50
- - **PARE e aguarde o usuário aprovar, modificar ou rejeitar CADA grupo de sugestões antes de prosseguir**
51
-
52
- ### Gate 3: Confirmar lista de FRDs
53
- O FRD representa funcionalidades e características do produto/solução. Não são tarefas, histórias ou micro ações dentro da funcionalidade. O FRD decompõe o PRD em soluções de médio porte que, juntas, formam a solução final.
54
-
55
- - Utilize primariamente a lista de FRDs que o usuário deve ter fornecido.
56
- - Se usuário não forneceu qualquer tipo de FRD, apresente uma lista sugestiva a partir das informações do projeto que você tem até agora e use práticas e seu conhecimento de mercado para sugerir uma lista completa de FRDs que podem ser concluídos, com ID, nome e uma descrição em uma linha
57
- - Separe claramente: FRDs baseados no input do usuário vs. FRDs que você está sugerindo
58
- - **PARE e aguarde a confirmação do usuário antes de prosseguir**
59
-
60
- ### Gate 4: Gerar output final
61
- - Se está modificando um PRD existente, apenas atualize as seções que foram alteradas ou adicionadas ou especificadas pelo usuário. Não modifique o arquivo sem pedido explicito do usuário.
62
- - Somente após os Gates 1–3 aprovados, gere o output final usando o template localizado em `$SKILL_TEMPLATE_FOLDER/prod-prd-template.md`
63
- - O output final deve conter APENAS: conteúdo fornecido pelo usuário + sugestões aprovadas pelo usuário, seguindo o template
64
- - Se uma seção não tiver conteúdo fornecido ou aprovado, deixe em branco com um marcador TODO e informe o usuário
65
- - Antes de disponibilizar o output final, valide se está seguindo todos os padrões estabelecidos no template
66
- - Disponibilize o output final como artefato para o usuário ou para o Agente AI utilizado, conforme a necessidade
67
-
68
- ---
69
-
70
- ## Abordagens por Contexto
71
-
72
- **Contexto rico** (documento/requisitos detalhados fornecidos):
73
- - Analise o que está completo vs. o que está faltando
74
- - Sugira complementos com raciocínio: "Com base em X, sugiro Y porque Z. Está correto?"
75
- - Agrupe sugestões relacionadas (ex.: todos os indicadores de sucesso juntos)
76
-
77
- **Contexto mínimo** (apenas uma ideia):
78
- - Faça perguntas direcionadas para o TL;DR (O QUÊ / POR QUÊ / COMO)
79
- - Infira contexto adicional e valide: "A partir das suas respostas, infiro X. Devo incluir isso?"
80
-
81
- **Projeto existente**:
82
- - Leia o código-fonte, documentos e commits recentes primeiro
83
- - Sugira o TL;DR com base na análise para confirmação
84
-
85
- **Funcionalidades mencionadas**:
86
- - Sugira a lista de FRDs e confirme antes de incluir
87
-
88
- ---
89
-
90
- ## Padrões de Qualidade
91
-
92
- ✅ **Boa sugestão**: Contextual, específica, demonstra entendimento do domínio
93
- ```
94
- Com base em ser um plugin de sincronização para criadores, sugiro:
95
- - Confiabilidade de Sincronização: taxa de sucesso de 99,5%
96
- - Tempo Economizado: redução de 15 min/publicação
97
- - Adoção: 70% usando 3+ vezes/semana após 30 dias
98
-
99
- Esses indicadores estão alinhados com "eliminar o atrito da sincronização manual." Posso usá-los?
100
- ```
101
-
102
- ❌ **Má sugestão**: Genérica, sem raciocínio
103
- ```
104
- Quais métricas? A) Engajamento B) Receita C) Outro
105
- ```
106
-
107
- ---
108
-
109
- ## Evite
110
- - Perguntas vazias sem sugestões quando há contexto disponível
111
- - Perguntar sobre cada pequeno detalhe separadamente
112
- - Sugestões genéricas que se aplicam a qualquer produto
113
- - Inventar pesquisas de usuário, dados de concorrentes ou restrições técnicas
114
- - Criar o documento final antes de o usuário validar as suposições
115
- - Usar frases e termos como:
116
- - "Vamos construir uma solução", "Vamos criar", "Vamos planejar"
117
- - Os PRDs descrevem o produto como se ele já existisse, não como se fosse ser construído no futuro
118
- - Em vez disso, use: "Esta é uma solução", "Nossa solução", "Nossa abordagem", "Este produto", "Esta funcionalidade"
@@ -1,159 +0,0 @@
1
- ---
2
- name: [Nome]
3
- version: [X.Y.Z]
4
- created_at: [YYYY-MM-DD]
5
- updated_at: [YYYY-MM-DD]
6
- link_task: [URL referêncial do $TASK_MANAGER]
7
- ---
8
-
9
-
10
- # [Nome do PRD]
11
-
12
- ## TL:DR;
13
-
14
- - **O que** resolver:
15
- - [Descreva no mínimo 2 bullet points qual o problema queremos resolver? O que está nos motivando/estimulando a criar uma solução? Quais as dores que o usuário tem sentido?]
16
- - **Por que** resolver:
17
- - [Descreva no mínimo 2 bullet points quais as razões pelas quais queremos resolver ou explorar; marcadores. Escreva no máximo 3 bullet points. Se o usuário enviar informações, use-as.]
18
- - **Como** resolver:
19
- - [Descreva no mínimo 2 bullet points as descrições da solução ou hipóteses que iremos construir. Se o usuário não deixou claro, pergunte.]
20
-
21
- ## Contexto
22
-
23
- [Descrição detalhada do contexto divididos em 3-4 parágrafos que somados devem ter um total máximo de 250 palavras, respondendo: Qual o problema que iremos resolver ou a oportunidade que iremos explorar? O que está acontecendo hoje? Que dor existe? Por que isso é importante para o usuário e quais os impactos benéficos para o negócio? Você pode expandir e usar as informações da TL:DR, mas sempre pergunte ao usuário caso não houver informações suficientes. Procure na web casos parecidos para criar uma resposta mais correta e completa.]
24
-
25
- ### Declaração dos problemas
26
- [Use o formato abaixo para listar os problemas que queremos resolver. Utilize as informações do usuário para sugerir problemas comuns que essa solução irá resolver. Foque-se nos problemas que o usuário enfrenta. Sugira a partir de pesquisas na web por casos reais e também utilize informações já feitas no próprio projeto.]
27
-
28
- ```
29
- - Clientes não conseguem fazer seus pagamentos de maneira eficaz
30
- - Ainda temos processos manuais em fluxos altamente sensíveis
31
- - Usuário não tem feedback imediato sobre conclusão ou erro do pagamento via plataforma
32
- ```
33
-
34
-
35
- ## Solução
36
- [Visão geral de 2 a 3 parágrafos respondendo: O que estamos construindo? Por que? Para quem? Impacto esperado? Você pode expandir as informações do TLDR;]
37
-
38
- [Descreva qual é a solução e por que é a melhor solução. Qual é o custo de oportunidade de não fazer isso? A descrição da nossa solução e como ela ajudará o usuário a resolver o problema e a empresa a explorar esta oportunidade.]
39
-
40
- ### Funcionalidades chave
41
-
42
- ```
43
- #### Suportar múltiplos métodos de pagamento
44
- - Pagamento com criptomoedas: permite que usuários paguem utilizando criptmoedas como Bitcoin, ETH e outras
45
- - Integração com cartão de crédito via gateways: para facilitar a integração e pagamento feito com cartão na plataforma, sem a necessidade de ter regulações oficiais.
46
- - Suporte com carteiras digitais como Apple Pay e Google Pay: facilitando a adoção de usuários sem a necessidade de cadastro de novas informações na plataforma.
47
- - Pagamento via PIX: facilitando a adoção com pagamentos utilizando código copia/cola e QR Code;
48
-
49
- #### Prevenção a fraude
50
- - Detecção de fraudes via machine learning: automatizando ao máximo a detecção de possíveis compras fraudulentas e prevenindo lavagem de dinheiro.
51
- - Assessment de risco em tempo real: com fallback para a mesa de operações quando validação automática falhar.
52
-
53
- #### Pagamento via plataforma
54
- - Pagamento utilizando saldo: clientes fazem recarga de saldo na plataforma para fazer pagamentos diretamente na plataforma
55
- - Agendamento de pagamentos: usuário agendar pagamentos via plataforma para que sejam executados automaticamente em dia específico
56
- - URL aberta para um terceiro pagar: cliente poderá compartilhar a págian de pagamento com os valores a serem pagos para outras pessoas efetuarem o pagamento.
57
- ```
58
-
59
- ## Critérios Gerais
60
- [Siga o padrão que está abaixo. Lembre-se que os critérios em uma PRD devem ser descrições de alto nível, de regras de funcionamento e enfatizando as regras de negócio. Definir o que e não o como. ]
61
-
62
- ```
63
- ### CRT-1: [nome do cenário]
64
- - Usuário pode filtrar resultados da pesquisa por faixa de preço
65
- - Deve ter possibilidade de login via redes sociais
66
- - O sistema deve processar e exibir atualizações de localização com latência máxima de 30 segundos para 95% das requisições, mesmo com 1000+ veículos simultâneos
67
- - Todos os dados sensíveis devem ser criptografados em repouso e em trânsito, seguindo conformidade com LGPD e GDPR
68
- - Todas as funcionalidades devem passar por revisão de segurança automatizada e validação manual das 10 vulnerabilidades OWASP mais frequentes.
69
-
70
- ### CRT-2: [nome do cenário]
71
-
72
- - Arquivos enviados devem permitir os formatos MP3, WAV e MPG4, com tamanho máximo de 100MB
73
- - O usuário pode ouvir o áudio enviado antes de confirmar o envio, e arquivos corrompidos ou fora do padrão devem gerar alerta e impedir o envio
74
- - Todos os dados sensíveis devem ser criptografados em repouso e em trânsito, seguindo conformidade com LGPD e GDPR.
75
- - O produto deve ser integrado de forma bidirecional com os sistemas externos aprovados, passando nos cenários de teste de integração.
76
-
77
- ### CRT-3: [nome do cenário]
78
-
79
- - Campo de busca deve sugerir resultados em tempo real com tolerância a erros de digitação
80
- - Resultados da busca devem ser apresentados em até 1 segundo e exibidos em páginas paginadas.
81
- - Histórico de ações realizadas pelo usuário deve ser registrado e disponível mediante consulta no painel administrativo.
82
-
83
- ### CRT-4: [nome do cenário]
84
- - Usuário deve conseguir redefinir senha com validação via e-mail em menos de 5 minutos
85
- - Sistema deve bloquear a conta após cinco tentativas de login mal-sucedidas e registrar o evento para consulta posterior.
86
- ```
87
-
88
-
89
- ## Indicadores de Sucesso
90
- [Sugira e pergunte para o usuário quais indicadores que devem ser monitorados para entendermos o sucesso.]
91
-
92
- ```
93
- - Aumentar sucesso de pagamento em 21%
94
- - Reduzir perdas por fraude em 25%
95
- - Melhorar satisfação do cliente em 30%
96
- - Manter uptime de plataform em 99%
97
- ```
98
-
99
-
100
- ## Escopo
101
-
102
- ### Dentro do Escopo
103
- ✅ [Item 1]
104
- ✅ [Item 2]
105
- ✅ [Item 3]
106
-
107
- ### Fora do escopo
108
- ❌ [Item 1]
109
- ❌ [Item 2]
110
- ❌ [Item 3]
111
-
112
- ### Evoluções futuras
113
- 🔮 [Item 1]
114
- 🔮 [Item 2]
115
-
116
- ## Artefatos e documentações
117
- - [Link file 1]
118
- - [Link file 2]
119
-
120
- ## Competidores
121
-
122
- [Descrição de soluções já utilizadas no mercado pelos usuários. Crie seções com cada um dos competidores, descrevendo suas principais features e contextos. Siga o padrão abaixo:]
123
-
124
- ```
125
- ### Nome do Competidor 1
126
-
127
- [Nome do Competidor 1](URL do site)
128
-
129
- - Breve descrição (segmento, localização, data de fundação)
130
- - Tamanho da empresa: número de funcionários, presença geográfica, faturamento estimado (se público)
131
- - Histórico relevante e diferenciais
132
-
133
- #### Principais features
134
- - Lista das principais funcionalidades ou produtos oferecidos
135
- - Características essenciais (preço, usabilidade, benefícios, diferenciais técnicos)
136
- - Estrutura de suporte e atendimento ao cliente (se aplicável)
137
-
138
- #### Economics / Base de usuários
139
-
140
- - Faturamento anual, margem de lucro ou dados financeiros relevantes (se públicos)
141
- - Número de usuários/clientes ativos (caso disponível)
142
- - Participação de mercado relativa
143
- - Crescimento recente ou taxa de aquisição de novos clientes, se possível
144
-
145
- ```
146
-
147
- ## Restrições, Suposições e Riscos
148
- [Pergunte para o usuário se existem alguma restrição de negócio, técnico ou de produto que possa dificultar a construção ou que precisa ser discutido com áreas ou stakeholders.]
149
-
150
- [Escreva aqui as principais suposições e hipóteses sobre esse projeto. Utilize informações fornecidas pelo usuário, caso contrário, pergunte para ele nessa etapa.]
151
-
152
- ### Restrições de Negócio
153
- [Bullet points com as restrições de negócio mapeadas e fornecidas pelo usuário. Se não tiver essa informação, pergunte para o usuário.]
154
-
155
- ### Restrições técnicas
156
- [Bullet points com as restrições técnicas mapeadas e fornecidas pelo usuário. Se não tiver essa informação, pergunte para o usuário.]
157
-
158
- ### Riscos e mitigações
159
- [Seções o título do tópico e sua detalhes expandidos sobre os riscos que podem existir sobre essa iniciativa e como elas são mitigadas.]