synapos 2.5.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 (238) hide show
  1. package/.github/copilot-instructions.md +72 -0
  2. package/.synapos/.manifest.json +155 -0
  3. package/.synapos/GUIDE.md +660 -0
  4. package/.synapos/VERSION +1 -0
  5. package/.synapos/_memory/company.md +11 -0
  6. package/.synapos/_memory/preferences.md +15 -0
  7. package/.synapos/copilot.md +451 -0
  8. package/.synapos/core/best-practices/_catalog.yaml +56 -0
  9. package/.synapos/core/best-practices/content/blog-post.md +238 -0
  10. package/.synapos/core/best-practices/content/copywriting.md +164 -0
  11. package/.synapos/core/best-practices/content/linkedin-post.md +186 -0
  12. package/.synapos/core/best-practices/dev/api-design.md +274 -0
  13. package/.synapos/core/best-practices/dev/code-review.md +138 -0
  14. package/.synapos/core/best-practices/dev/git-workflow.md +256 -0
  15. package/.synapos/core/best-practices/dev/testing-strategy.md +213 -0
  16. package/.synapos/core/best-practices/product/product-spec.md +235 -0
  17. package/.synapos/core/best-practices/product/technical-writing.md +264 -0
  18. package/.synapos/core/best-practices/product/user-research.md +242 -0
  19. package/.synapos/core/commands/bump.md +59 -0
  20. package/.synapos/core/commands/debug/session.md +100 -0
  21. package/.synapos/core/commands/migrate/v1-to-v2.md +142 -0
  22. package/.synapos/core/commands/set-model.md +197 -0
  23. package/.synapos/core/commands/setup/build-business.md +378 -0
  24. package/.synapos/core/commands/setup/build-tech.md +374 -0
  25. package/.synapos/core/commands/setup/discover.md +543 -0
  26. package/.synapos/core/commands/setup/from-code.md +407 -0
  27. package/.synapos/core/commands/setup/start.md +201 -0
  28. package/.synapos/core/copilot-adapter.md +283 -0
  29. package/.synapos/core/gate-system.md +417 -0
  30. package/.synapos/core/model-adapter.md +245 -0
  31. package/.synapos/core/orchestrator.md +794 -0
  32. package/.synapos/core/pipeline-runner.md +784 -0
  33. package/.synapos/core/pipelines/pre-execution.yaml +107 -0
  34. package/.synapos/core/rules/product-agent.mdc +59 -0
  35. package/.synapos/core/skills-engine.md +207 -0
  36. package/.synapos/core/versioning.md +218 -0
  37. package/.synapos/skills/.gitkeep +0 -0
  38. package/.synapos/skills/brave-search/SKILL.md +130 -0
  39. package/.synapos/skills/fetch-url/SKILL.md +135 -0
  40. package/.synapos/skills/filesystem/SKILL.md +162 -0
  41. package/.synapos/skills/github/SKILL.md +148 -0
  42. package/.synapos/skills/playwright-browser/SKILL.md +124 -0
  43. package/.synapos/squad-templates/backend/agents/alexandre-api.agent.md +243 -0
  44. package/.synapos/squad-templates/backend/agents/bruno-base.agent.md +240 -0
  45. package/.synapos/squad-templates/backend/agents/daniela-dados.agent.md +267 -0
  46. package/.synapos/squad-templates/backend/agents/roberto-revisao-be.agent.md +219 -0
  47. package/.synapos/squad-templates/backend/agents/sergio-seguranca.agent.md +266 -0
  48. package/.synapos/squad-templates/backend/pipelines/api-development.yaml +83 -0
  49. package/.synapos/squad-templates/backend/pipelines/bug-fix.yaml +41 -0
  50. package/.synapos/squad-templates/backend/pipelines/database-migration.yaml +56 -0
  51. package/.synapos/squad-templates/backend/pipelines/quick-fix.yaml +40 -0
  52. package/.synapos/squad-templates/backend/pipelines/steps/01-gate-integridade.md +66 -0
  53. package/.synapos/squad-templates/backend/pipelines/steps/02-design-api.md +155 -0
  54. package/.synapos/squad-templates/backend/pipelines/steps/03-checkpoint-contrato.md +44 -0
  55. package/.synapos/squad-templates/backend/pipelines/steps/04-implementacao.md +113 -0
  56. package/.synapos/squad-templates/backend/pipelines/steps/05-seguranca.md +100 -0
  57. package/.synapos/squad-templates/backend/pipelines/steps/06-review.md +80 -0
  58. package/.synapos/squad-templates/backend/pipelines/steps/atualizar-tarefa.md +138 -0
  59. package/.synapos/squad-templates/backend/pipelines/steps/bfbe-02-diagnostico.md +47 -0
  60. package/.synapos/squad-templates/backend/pipelines/steps/bfbe-03-fix.md +41 -0
  61. package/.synapos/squad-templates/backend/pipelines/steps/bfbe-04-review.md +42 -0
  62. package/.synapos/squad-templates/backend/pipelines/steps/dm-02-schema.md +85 -0
  63. package/.synapos/squad-templates/backend/pipelines/steps/dm-03-checkpoint.md +30 -0
  64. package/.synapos/squad-templates/backend/pipelines/steps/dm-04-migration.md +58 -0
  65. package/.synapos/squad-templates/backend/pipelines/steps/dm-05-review.md +44 -0
  66. package/.synapos/squad-templates/backend/pipelines/steps/qf-02-contexto.md +34 -0
  67. package/.synapos/squad-templates/backend/pipelines/steps/qf-03-executar.md +49 -0
  68. package/.synapos/squad-templates/backend/pipelines/steps/qf-04-registrar.md +35 -0
  69. package/.synapos/squad-templates/backend/template.yaml +72 -0
  70. package/.synapos/squad-templates/devops/agents/claudio-containers.agent.md +245 -0
  71. package/.synapos/squad-templates/devops/agents/igor-infra.agent.md +198 -0
  72. package/.synapos/squad-templates/devops/agents/osvaldo-observabilidade.agent.md +262 -0
  73. package/.synapos/squad-templates/devops/agents/patricia-pipeline.agent.md +253 -0
  74. package/.synapos/squad-templates/devops/pipelines/ci-cd-setup.yaml +93 -0
  75. package/.synapos/squad-templates/devops/pipelines/infra-provision.yaml +56 -0
  76. package/.synapos/squad-templates/devops/pipelines/quick-fix.yaml +41 -0
  77. package/.synapos/squad-templates/devops/pipelines/steps/01-gate-integridade.md +62 -0
  78. package/.synapos/squad-templates/devops/pipelines/steps/02-infra-design.md +31 -0
  79. package/.synapos/squad-templates/devops/pipelines/steps/03-containers.md +28 -0
  80. package/.synapos/squad-templates/devops/pipelines/steps/04-checkpoint.md +20 -0
  81. package/.synapos/squad-templates/devops/pipelines/steps/05-pipeline-cicd.md +29 -0
  82. package/.synapos/squad-templates/devops/pipelines/steps/06-observabilidade.md +28 -0
  83. package/.synapos/squad-templates/devops/pipelines/steps/07-review.md +27 -0
  84. package/.synapos/squad-templates/devops/pipelines/steps/atualizar-tarefa.md +138 -0
  85. package/.synapos/squad-templates/devops/pipelines/steps/ip-02-design.md +21 -0
  86. package/.synapos/squad-templates/devops/pipelines/steps/ip-03-iac.md +20 -0
  87. package/.synapos/squad-templates/devops/pipelines/steps/ip-04-checkpoint.md +22 -0
  88. package/.synapos/squad-templates/devops/pipelines/steps/ip-05-apply.md +22 -0
  89. package/.synapos/squad-templates/devops/pipelines/steps/qf-02-contexto.md +34 -0
  90. package/.synapos/squad-templates/devops/pipelines/steps/qf-03-executar.md +52 -0
  91. package/.synapos/squad-templates/devops/pipelines/steps/qf-04-registrar.md +35 -0
  92. package/.synapos/squad-templates/devops/template.yaml +68 -0
  93. package/.synapos/squad-templates/engineer/agents/leo-engenheiro.agent.md +203 -0
  94. package/.synapos/squad-templates/engineer/pipeline/steps/01-gate.md +22 -0
  95. package/.synapos/squad-templates/engineer/pipeline/steps/02-preparacao.md +66 -0
  96. package/.synapos/squad-templates/engineer/pipeline/steps/03-investigacao.md +110 -0
  97. package/.synapos/squad-templates/engineer/pipeline/steps/04-checkpoint-contexto.md +24 -0
  98. package/.synapos/squad-templates/engineer/pipeline/steps/05-arquitetura.md +127 -0
  99. package/.synapos/squad-templates/engineer/pipeline/steps/06-checkpoint-arquitetura.md +27 -0
  100. package/.synapos/squad-templates/engineer/pipeline/steps/07-planejamento.md +109 -0
  101. package/.synapos/squad-templates/engineer/pipeline/steps/08-checkpoint-plano.md +27 -0
  102. package/.synapos/squad-templates/engineer/pipeline/steps/09-execucao.md +121 -0
  103. package/.synapos/squad-templates/engineer/pipeline/steps/atualizar-tarefa.md +27 -0
  104. package/.synapos/squad-templates/engineer/pipeline/steps/visual-spec.md +74 -0
  105. package/.synapos/squad-templates/engineer/pipelines/feature-development.yaml +107 -0
  106. package/.synapos/squad-templates/engineer/template.yaml +56 -0
  107. package/.synapos/squad-templates/frontend/agents/ana-arquitetura-fe.agent.md +245 -0
  108. package/.synapos/squad-templates/frontend/agents/paulo-performance.agent.md +234 -0
  109. package/.synapos/squad-templates/frontend/agents/renata-revisao-fe.agent.md +219 -0
  110. package/.synapos/squad-templates/frontend/agents/rodrigo-react.agent.md +261 -0
  111. package/.synapos/squad-templates/frontend/agents/tiago-testes-fe.agent.md +229 -0
  112. package/.synapos/squad-templates/frontend/agents/ursula-ui.agent.md +283 -0
  113. package/.synapos/squad-templates/frontend/pipelines/bug-fix.yaml +40 -0
  114. package/.synapos/squad-templates/frontend/pipelines/component-development.yaml +48 -0
  115. package/.synapos/squad-templates/frontend/pipelines/feature-development.yaml +76 -0
  116. package/.synapos/squad-templates/frontend/pipelines/quick-fix.yaml +40 -0
  117. package/.synapos/squad-templates/frontend/pipelines/steps/01-gate-integridade.md +66 -0
  118. package/.synapos/squad-templates/frontend/pipelines/steps/02-arquitetura.md +100 -0
  119. package/.synapos/squad-templates/frontend/pipelines/steps/03-checkpoint-design.md +43 -0
  120. package/.synapos/squad-templates/frontend/pipelines/steps/04-implementacao.md +114 -0
  121. package/.synapos/squad-templates/frontend/pipelines/steps/05-review.md +104 -0
  122. package/.synapos/squad-templates/frontend/pipelines/steps/06-docs.md +51 -0
  123. package/.synapos/squad-templates/frontend/pipelines/steps/atualizar-tarefa.md +138 -0
  124. package/.synapos/squad-templates/frontend/pipelines/steps/bf-02-diagnostico.md +52 -0
  125. package/.synapos/squad-templates/frontend/pipelines/steps/bf-03-fix.md +58 -0
  126. package/.synapos/squad-templates/frontend/pipelines/steps/bf-04-review.md +43 -0
  127. package/.synapos/squad-templates/frontend/pipelines/steps/cd-02-spec.md +96 -0
  128. package/.synapos/squad-templates/frontend/pipelines/steps/qf-02-contexto.md +34 -0
  129. package/.synapos/squad-templates/frontend/pipelines/steps/qf-03-executar.md +45 -0
  130. package/.synapos/squad-templates/frontend/pipelines/steps/qf-04-registrar.md +35 -0
  131. package/.synapos/squad-templates/frontend/template.yaml +77 -0
  132. package/.synapos/squad-templates/fullstack/agents/carlos-coordenador.agent.md +266 -0
  133. package/.synapos/squad-templates/fullstack/pipelines/bug-fix.yaml +46 -0
  134. package/.synapos/squad-templates/fullstack/pipelines/integration-feature.yaml +92 -0
  135. package/.synapos/squad-templates/fullstack/pipelines/quick-fix.yaml +40 -0
  136. package/.synapos/squad-templates/fullstack/pipelines/steps/01-gate-integridade.md +66 -0
  137. package/.synapos/squad-templates/fullstack/pipelines/steps/02-contrato-api.md +63 -0
  138. package/.synapos/squad-templates/fullstack/pipelines/steps/03-checkpoint-contrato.md +25 -0
  139. package/.synapos/squad-templates/fullstack/pipelines/steps/04-frontend.md +35 -0
  140. package/.synapos/squad-templates/fullstack/pipelines/steps/05-backend.md +36 -0
  141. package/.synapos/squad-templates/fullstack/pipelines/steps/06-integracao.md +47 -0
  142. package/.synapos/squad-templates/fullstack/pipelines/steps/07-review.md +49 -0
  143. package/.synapos/squad-templates/fullstack/pipelines/steps/atualizar-tarefa.md +138 -0
  144. package/.synapos/squad-templates/fullstack/pipelines/steps/bf-02-diagnostico.md +34 -0
  145. package/.synapos/squad-templates/fullstack/pipelines/steps/bf-03-fix.md +22 -0
  146. package/.synapos/squad-templates/fullstack/pipelines/steps/bf-04-review.md +22 -0
  147. package/.synapos/squad-templates/fullstack/pipelines/steps/qf-02-contexto.md +34 -0
  148. package/.synapos/squad-templates/fullstack/pipelines/steps/qf-03-executar.md +49 -0
  149. package/.synapos/squad-templates/fullstack/pipelines/steps/qf-04-registrar.md +35 -0
  150. package/.synapos/squad-templates/fullstack/template.yaml +93 -0
  151. package/.synapos/squad-templates/ia-dados/agents/diana-dados.agent.md +269 -0
  152. package/.synapos/squad-templates/ia-dados/agents/larissa-llm.agent.md +255 -0
  153. package/.synapos/squad-templates/ia-dados/agents/marco-ml.agent.md +227 -0
  154. package/.synapos/squad-templates/ia-dados/agents/nelson-notebook.agent.md +252 -0
  155. package/.synapos/squad-templates/ia-dados/pipelines/data-pipeline.yaml +71 -0
  156. package/.synapos/squad-templates/ia-dados/pipelines/ml-feature.yaml +91 -0
  157. package/.synapos/squad-templates/ia-dados/pipelines/quick-fix.yaml +40 -0
  158. package/.synapos/squad-templates/ia-dados/pipelines/steps/01-gate-integridade.md +62 -0
  159. package/.synapos/squad-templates/ia-dados/pipelines/steps/02-exploracao.md +36 -0
  160. package/.synapos/squad-templates/ia-dados/pipelines/steps/03-design.md +25 -0
  161. package/.synapos/squad-templates/ia-dados/pipelines/steps/04-checkpoint.md +23 -0
  162. package/.synapos/squad-templates/ia-dados/pipelines/steps/05-implementacao.md +26 -0
  163. package/.synapos/squad-templates/ia-dados/pipelines/steps/06-avaliacao.md +29 -0
  164. package/.synapos/squad-templates/ia-dados/pipelines/steps/07-deploy.md +30 -0
  165. package/.synapos/squad-templates/ia-dados/pipelines/steps/atualizar-tarefa.md +138 -0
  166. package/.synapos/squad-templates/ia-dados/pipelines/steps/dp-02-design.md +21 -0
  167. package/.synapos/squad-templates/ia-dados/pipelines/steps/dp-03-checkpoint.md +14 -0
  168. package/.synapos/squad-templates/ia-dados/pipelines/steps/dp-04-implementacao.md +19 -0
  169. package/.synapos/squad-templates/ia-dados/pipelines/steps/dp-05-qualidade.md +21 -0
  170. package/.synapos/squad-templates/ia-dados/pipelines/steps/dp-06-deploy.md +22 -0
  171. package/.synapos/squad-templates/ia-dados/pipelines/steps/qf-02-contexto.md +34 -0
  172. package/.synapos/squad-templates/ia-dados/pipelines/steps/qf-03-executar.md +53 -0
  173. package/.synapos/squad-templates/ia-dados/pipelines/steps/qf-04-registrar.md +35 -0
  174. package/.synapos/squad-templates/ia-dados/template.yaml +68 -0
  175. package/.synapos/squad-templates/mobile/agents/felipe-feature.agent.md +234 -0
  176. package/.synapos/squad-templates/mobile/agents/marina-mobile.agent.md +219 -0
  177. package/.synapos/squad-templates/mobile/agents/viviane-visual.agent.md +218 -0
  178. package/.synapos/squad-templates/mobile/pipelines/bug-fix.yaml +47 -0
  179. package/.synapos/squad-templates/mobile/pipelines/feature-development.yaml +77 -0
  180. package/.synapos/squad-templates/mobile/pipelines/quick-fix.yaml +40 -0
  181. package/.synapos/squad-templates/mobile/pipelines/steps/01-gate-integridade.md +62 -0
  182. package/.synapos/squad-templates/mobile/pipelines/steps/02-arquitetura.md +35 -0
  183. package/.synapos/squad-templates/mobile/pipelines/steps/03-design-ux.md +29 -0
  184. package/.synapos/squad-templates/mobile/pipelines/steps/04-checkpoint.md +20 -0
  185. package/.synapos/squad-templates/mobile/pipelines/steps/05-implementacao.md +26 -0
  186. package/.synapos/squad-templates/mobile/pipelines/steps/06-review.md +27 -0
  187. package/.synapos/squad-templates/mobile/pipelines/steps/atualizar-tarefa.md +138 -0
  188. package/.synapos/squad-templates/mobile/pipelines/steps/bf-02-diagnostico.md +22 -0
  189. package/.synapos/squad-templates/mobile/pipelines/steps/bf-03-fix.md +23 -0
  190. package/.synapos/squad-templates/mobile/pipelines/steps/bf-04-review.md +20 -0
  191. package/.synapos/squad-templates/mobile/pipelines/steps/qf-02-contexto.md +34 -0
  192. package/.synapos/squad-templates/mobile/pipelines/steps/qf-03-executar.md +49 -0
  193. package/.synapos/squad-templates/mobile/pipelines/steps/qf-04-registrar.md +35 -0
  194. package/.synapos/squad-templates/mobile/template.yaml +73 -0
  195. package/.synapos/squad-templates/produto/agents/ana-analise.agent.md +243 -0
  196. package/.synapos/squad-templates/produto/agents/eduardo-estrategia.agent.md +258 -0
  197. package/.synapos/squad-templates/produto/agents/paulo-pesquisa.agent.md +226 -0
  198. package/.synapos/squad-templates/produto/agents/priscila-produto.agent.md +235 -0
  199. package/.synapos/squad-templates/produto/agents/tania-tecnica.agent.md +239 -0
  200. package/.synapos/squad-templates/produto/agents/ursula-ux.agent.md +231 -0
  201. package/.synapos/squad-templates/produto/pipelines/discovery-spec-handoff.yaml +152 -0
  202. package/.synapos/squad-templates/produto/pipelines/nova-feature.yaml +77 -0
  203. package/.synapos/squad-templates/produto/pipelines/quick-fix.yaml +40 -0
  204. package/.synapos/squad-templates/produto/pipelines/quick-spec.yaml +60 -0
  205. package/.synapos/squad-templates/produto/pipelines/refinar-docs.yaml +33 -0
  206. package/.synapos/squad-templates/produto/pipelines/steps/01-gate-integridade.md +48 -0
  207. package/.synapos/squad-templates/produto/pipelines/steps/02-contexto-negocio.md +119 -0
  208. package/.synapos/squad-templates/produto/pipelines/steps/03-personas.md +107 -0
  209. package/.synapos/squad-templates/produto/pipelines/steps/04-checkpoint-research.md +53 -0
  210. package/.synapos/squad-templates/produto/pipelines/steps/04b-alinhamento-estrategico.md +92 -0
  211. package/.synapos/squad-templates/produto/pipelines/steps/05-spec.md +138 -0
  212. package/.synapos/squad-templates/produto/pipelines/steps/05b-checkpoint-spec.md +60 -0
  213. package/.synapos/squad-templates/produto/pipelines/steps/06-requisitos.md +118 -0
  214. package/.synapos/squad-templates/produto/pipelines/steps/06b-checkpoint-requisitos.md +53 -0
  215. package/.synapos/squad-templates/produto/pipelines/steps/06c-visual-spec.md +59 -0
  216. package/.synapos/squad-templates/produto/pipelines/steps/07-arquitetura.md +160 -0
  217. package/.synapos/squad-templates/produto/pipelines/steps/08-handoff.md +130 -0
  218. package/.synapos/squad-templates/produto/pipelines/steps/nf-02-validar-requisito.md +73 -0
  219. package/.synapos/squad-templates/produto/pipelines/steps/nf-03-verificar-docs.md +69 -0
  220. package/.synapos/squad-templates/produto/pipelines/steps/nf-04-spec.md +160 -0
  221. package/.synapos/squad-templates/produto/pipelines/steps/nf-05-checkpoint-aprovacao.md +50 -0
  222. package/.synapos/squad-templates/produto/pipelines/steps/nf-06-versionar.md +71 -0
  223. package/.synapos/squad-templates/produto/pipelines/steps/nf-07-handoff.md +99 -0
  224. package/.synapos/squad-templates/produto/pipelines/steps/nf-08-criar-tarefas.md +232 -0
  225. package/.synapos/squad-templates/produto/pipelines/steps/qf-02-contexto.md +34 -0
  226. package/.synapos/squad-templates/produto/pipelines/steps/qf-03-executar.md +49 -0
  227. package/.synapos/squad-templates/produto/pipelines/steps/qf-04-registrar.md +35 -0
  228. package/.synapos/squad-templates/produto/pipelines/steps/qs-02-contexto.md +59 -0
  229. package/.synapos/squad-templates/produto/pipelines/steps/qs-03-spec.md +67 -0
  230. package/.synapos/squad-templates/produto/pipelines/steps/qs-05-handoff.md +49 -0
  231. package/.synapos/squad-templates/produto/pipelines/steps/rf-02-selecionar.md +66 -0
  232. package/.synapos/squad-templates/produto/pipelines/steps/rf-03-delta.md +73 -0
  233. package/.synapos/squad-templates/produto/pipelines/steps/rf-04-criar-versao.md +86 -0
  234. package/.synapos/squad-templates/produto/template.yaml +91 -0
  235. package/.synapos/squads/.gitkeep +0 -0
  236. package/README.md +285 -0
  237. package/bin/synapos.js +331 -0
  238. package/package.json +26 -0
@@ -0,0 +1,374 @@
1
+ ---
2
+ description: Gera documentação técnica do projeto
3
+ ---
4
+
5
+ # Build Tech Docs — Synapos
6
+
7
+ Você é um arquiteto de documentação técnica especializado em criar contexto de projeto abrangente e otimizado para IA. Sua missão é analisar o codebase do projeto, repositório e outras fontes de materiais para gerar uma estrutura completa de documentação técnica usando a abordagem de arquitetura multi-arquivo.
8
+
9
+ ---
10
+
11
+ # REGRAS ABSOLUTAS — NÃO INVENTAR NADA
12
+
13
+ ## Regra 1: JANELAS INTERATIVAS são OBRIGATÓRIAS
14
+
15
+ **SEMPRE que apresentar escolhas ou confirmar informações ao usuário, você DEVE usar `AskUserQuestion`.**
16
+
17
+ Exemplo ERRADO (não fazer isso):
18
+ ```
19
+ Detectei as seguintes tecnologias. Está correto?
20
+ - React
21
+ - Node.js
22
+ - PostgreSQL
23
+ ```
24
+
25
+ Exemplo CERTO (fazer isso):
26
+ ```
27
+ AskUserQuestion({
28
+ question: "Detectei as seguintes tecnologias. Confirme quais estão corretas:",
29
+ options: [
30
+ { label: "Todas corretas", description: "Prosseguir com a documentação" },
31
+ { label: "Corretar tecnologias", description: "Vou informar as tecnologias corretas" }
32
+ ]
33
+ })
34
+ ```
35
+
36
+ ## Regra 2: NUNCA INVENTE INFORMAÇÕES
37
+
38
+ Se você não consegue detectar algo no codebase, **NUNCA assuma ou invente**. Marque como "A INVESTIGAR" ou pergunte ao usuário.
39
+
40
+ **O que você PODE afirmar sem perguntar (porque dá para detectar do código):**
41
+ - Stack tecnológica (package.json, requirements.txt, etc.)
42
+ - Estrutura de pastas
43
+ - Padrões arquiteturais (se óbvios no código)
44
+ - Endpoints de API (se óbvios nas rotas)
45
+
46
+ **O que você NÃO PODE afirmar sem perguntar:**
47
+ - "Justificativa" para escolhas tecnológicas
48
+ - Decisões arquiteturais que não são óbvias no código
49
+ - Processos de desenvolvimento (CI/CD pode mostrar parcialmente)
50
+ - Restrições de negócio
51
+ - Bugs conhecidos ou dividas técnicas
52
+ - Roadmap ou planos futuros
53
+
54
+ ## Regra 3: TODO CAMPO DEVE SER VALIDADO
55
+
56
+ Antes de escrever qualquer seção de documentação, você DEVE:
57
+ 1. Mostrar o que detectou ao usuário via `AskUserQuestion`
58
+ 2. Aguardar confirmação ou correção
59
+ 3. Só então prosseguir para geração de documentação
60
+
61
+ ---
62
+
63
+ ## Objetivo Principal
64
+
65
+ Gerar uma arquitetura completa de contexto técnico seguindo o template em `@common/templates/technical_context_template.md`. Criar uma estrutura de documentação modular e multi-arquivo que permita tanto a desenvolvedores humanos quanto a sistemas de IA entender e trabalhar efetivamente com o codebase.
66
+
67
+ ## Parâmetros de Entrada
68
+
69
+ **Argumentos opcionais:**
70
+ Se argumentos forem fornecidos (links para arquivos, repositórios, etc.), use-os como fonte adicional.
71
+
72
+ <arguments>
73
+ #$ARGUMENTS
74
+ </arguments>
75
+
76
+ ---
77
+
78
+ ## PRÉ-VERIFICAÇÃO — Codebase Analysis
79
+
80
+ **Antes de iniciar a Fase 1**, verifique se `docs/_memory/codebase-analysis.md` existe.
81
+
82
+ **Se existir:**
83
+ - Leia o arquivo completo
84
+ - Use as informações já coletadas para pular perguntas já respondidas na Fase 2
85
+
86
+ **Se não existir:**
87
+ - Execute a Fase 1 completa normalmente.
88
+
89
+ ---
90
+
91
+ ## Fase 1: Descoberta do Codebase (Análise Silenciosa)
92
+
93
+ **Execute esta fase SEM perguntar nada ao usuário.** Varra o projeto e colete informações.
94
+
95
+ 1. **Análise da Estrutura do Projeto**
96
+ - Varrer a estrutura de diretórios
97
+ - Analisar package.json, requirements.txt, Cargo.toml
98
+ - Identificar sistemas de build, frameworks de testes e configurações
99
+
100
+ 2. **Detectar Stack Tecnológica**
101
+ - Extrair: linguagem, framework, ORM, banco de dados, ferramentas de teste
102
+
103
+ 3. **Reconhecer Padrões Arquiteturais**
104
+ - Identificar padrões de design (MVC, microsserviços, etc.)
105
+ - Analisar fluxo de dados e pontos de integração
106
+
107
+ 4. **Mapear Estrutura de Pastas**
108
+ - Identificar: controllers/routes, services, repositories, models, schemas
109
+
110
+ 5. **Descobrir Endpoints de API** (se aplicável)
111
+ - Listar rotas e métodos HTTP
112
+
113
+ 6. **Analisar Configs de CI/CD** (se existirem)
114
+ - Verificar .github/workflows, .gitlab-ci.yml, etc.
115
+
116
+ ---
117
+
118
+ ## Fase 2: VALIDAÇÃO COM USUÁRIO (OBRIGATÓRIO)
119
+
120
+ ### Regra: SEMPRE use AskUserQuestion para validar
121
+
122
+ Após a Fase 1, você DEVE apresentar os resultados ao usuário e VALIDAR cada item antes de prosseguir.
123
+
124
+ ### 2.1 — Validar Stack Detectada
125
+
126
+ ```
127
+ AskUserQuestion({
128
+ question: "Analisei o projeto e detectei a seguinte stack. Confirme ou corrija:",
129
+ options: [
130
+ {
131
+ label: "Stack Correta",
132
+ description: "Todas as tecnologias listadas estão corretas"
133
+ },
134
+ {
135
+ label: "Corrigir Stack",
136
+ description: "Vou informar as correções necessárias"
137
+ }
138
+ ]
139
+ })
140
+ ```
141
+
142
+ Se usuário selecionar "Stack Correta" → prosseguir.
143
+ Se usuário selecionar "Corrigir Stack" → fazer perguntas específicas sobre cada tecnologia.
144
+
145
+ ### 2.2 — Validar Padrão Arquitetural
146
+
147
+ ```
148
+ AskUserQuestion({
149
+ question: "Com base na estrutura do projeto, identifiquei este padrão arquitetural:",
150
+ options: [
151
+ { label: "Correto", description: "Padrão identificado está correto" },
152
+ { label: "Corrigir", description: "Vou informar o padrão correto" }
153
+ ]
154
+ })
155
+ ```
156
+
157
+ ### 2.3 — Listar Pastas Principais Detectadas
158
+
159
+ ```
160
+ AskUserQuestion({
161
+ question: "Encontrei as seguintes pastas principais. Confirmar estrutura?",
162
+ options: [
163
+ { label: "Confirmar", description: "Estrutura está correta" },
164
+ { label: "Corrigir", description: "Vou informar a estrutura correta" }
165
+ ]
166
+ })
167
+ ```
168
+
169
+ ### 2.4 — Validar Entidades/Models Detectados
170
+
171
+ Se encontrou entities, models ou schemas:
172
+
173
+ ```
174
+ AskUserQuestion({
175
+ question: "Encontrei as seguintes entidades de domínio. Estão corretas?",
176
+ options: [
177
+ { label: "Sim, corretas", description: "Prosseguir" },
178
+ { label: "Precisa corrigir", description: "Vou informar as correções" }
179
+ ]
180
+ })
181
+ ```
182
+
183
+ ### 2.5 — Coletar Informações que NÃO podem ser detectadas
184
+
185
+ Após validar o que foi detectado, você PRECISA perguntar sobre o que NÃO pode ser detectado:
186
+
187
+ ```
188
+ AskUserQuestion({
189
+ question: "Para completar a documentação técnica, preciso de algumas informações:",
190
+ options: [
191
+ { label: "Vou responder agora", description: "Responder as perguntas a seguir" },
192
+ { label: "Pular por agora", description: "Gerar docs com o que temos e marcar lacunas" }
193
+ ]
194
+ })
195
+ ```
196
+
197
+ Se usuário optar por responder, use `AskUserQuestion` para cada item:
198
+
199
+ **Item 1 — Justificativa de Stack:**
200
+ ```
201
+ AskUserQuestion({
202
+ question: "Por que foi escolhido [tecnologia X]? Escolha a justificativa mais próxima:",
203
+ options: [
204
+ { label: "Desempenho", description: "Foi escolhido por questões de performance" },
205
+ { label: "Produtividade", description: "Foi escolhido por produtividade da equipe" },
206
+ { label: "Ecosistema", description: "Boas bibliotecas e comunidade" },
207
+ { label: "Custo", description: "Custo-benefício ou open source" },
208
+ { label: "Decisão da equipe", description: "Decisão histórica da equipe" },
209
+ { label: "Outro", description: "Vou especificar" }
210
+ ]
211
+ })
212
+ ```
213
+
214
+ **Item 2 — Desafios Arquiteturais:**
215
+ ```
216
+ AskUserQuestion({
217
+ question: "Quais são os principais desafios arquiteturais atuais do projeto?",
218
+ options: [
219
+ { label: "Escalabilidade", description: "Sistema precisa escalar" },
220
+ { label: "Performance", description: "Problemas de lentidão" },
221
+ { label: "Manutenibilidade", description: "Código difícil de manter" },
222
+ { label: "Dívida técnica", description: "Acúmulo de gambiarras" },
223
+ { label: "Segurança", description: "Preocupações com segurança" },
224
+ { label: "Nenhum problema", description: "Não há desafios conhecidos" }
225
+ ]
226
+ })
227
+ ```
228
+
229
+ **Item 3 — Decisões Arquiteturais Importantes:**
230
+ ```
231
+ AskUserQuestion({
232
+ question: "Quais foram as principais decisões arquiteturais do projeto? (Escolha até 3)",
233
+ options: [
234
+ { label: "Database", description: "Escolha do banco de dados" },
235
+ { label: "API Design", description: "Design da API REST/GraphQL" },
236
+ { label: "Autenticação", description: "Como autenticção foi implementada" },
237
+ { label: "Microserviços", description: "Separação em serviços" },
238
+ { label: "Cache", description: "Estratégia de cache" },
239
+ { label: "Outro", description: "Vou especificar" }
240
+ ]
241
+ })
242
+ ```
243
+
244
+ **Item 4 — O que está FORA do escopo:**
245
+ ```
246
+ AskUserQuestion({
247
+ question: "O que está INTENCIONALMENTE fora do escopo do projeto?",
248
+ options: [
249
+ { label: "Sem restrições", description: "Tudo é permitido" },
250
+ { label: "Mobile", description: "Mobile não faz parte do escopo" },
251
+ { label: "Offline", description: "Não precisa funcionar offline" },
252
+ { label: "Multi-tenant", description: "Não é multi-tenant" },
253
+ { label: " Internacionalização", description: "Sem suporte a i18n" },
254
+ { label: "Especificar", description: "Vou listar as restrições" }
255
+ ]
256
+ })
257
+ ```
258
+
259
+ ### 2.6 — Solicitar Aprovação para Prosseguir
260
+
261
+ Após coletar todas as informações:
262
+
263
+ ```
264
+ AskUserQuestion({
265
+ question: "Resumo da análise técnica. Prosseguir com a geração da documentação?",
266
+ options: [
267
+ { label: "Sim, gerar docs", description: "Gerar toda a documentação técnica" },
268
+ { label: "Preciso corrigir algo", description: "Voltar para correção" },
269
+ { label: "Gerar parcialmente", description: "Gerar apenas o que foi validado" }
270
+ ]
271
+ })
272
+ ```
273
+
274
+ ---
275
+
276
+ ## Fase 3 — Geração dos Documentos
277
+
278
+ **SÓ Execute esta fase após validação completa do usuário.**
279
+
280
+ Salve **todos os arquivos na pasta `docs/` da raiz do projeto**.
281
+
282
+ ### Estrutura a criar:
283
+
284
+ ```
285
+ docs/
286
+ └── tech/
287
+ ├── index.md (índice técnico)
288
+ ├── architecture.md (arquitetura geral do sistema)
289
+ ├── business_logic.md (Documentação de Regras de Negócio)
290
+ ├── stack.md (tech stack e decisões de tecnologia)
291
+ ├── codebase-guide.md (guia de navegação do codebase)
292
+ ├── adr/ (Architecture Decision Records)
293
+ │ └── {NNN}-{titulo-da-decisao}.md # ex: 001-escolha-do-banco-de-dados.md
294
+ ├── api-spec.md (especificação de APIs, se aplicável)
295
+ └── contributing.md (guia de contribuição e workflow)
296
+ ```
297
+
298
+ ### Regras de Geração de Conteúdo
299
+
300
+ 1. **Stack documentada** = apenas tecnologias validadas pelo usuário
301
+ 2. **Padrão arquitetural** = apenas o que foi confirmado
302
+ 3. **ADR** = apenas para decisões confirmadas pelo usuário
303
+ 4. **Seção "A INVESTIGAR"** = para qualquer coisa que não pôde ser validada
304
+
305
+ ### O que FAZER na documentação:
306
+
307
+ **`docs/tech/stack.md`**
308
+ - Linguagens e versões (de package.json, verificado)
309
+ - Frameworks e bibliotecas principais (de dependências, verificado)
310
+ - Banco de dados (detectado, verificado)
311
+ - Infraestrutura e deploy (de configs, verificado)
312
+
313
+ **`docs/tech/architecture.md`**
314
+ - Componentes que dá para ver no código (confirmado)
315
+ - Fluxo de dados (analisado, confirmado)
316
+ - Pontos de integração (detectados, confirmados)
317
+
318
+ **`docs/tech/adr/`**
319
+ - **SÓ criar ADRs para decisões que o usuário confirmou explicitamente**
320
+ - Se usuário não confirmou, NÃO criar ADR
321
+
322
+ ### O que NÃO FAZER:
323
+
324
+ - NÃO invente justificativas para decisões
325
+ - NÃO assuma "porque a equipe escolheu X"
326
+ - NÃO marque algo como decisão se usuário não confirmou
327
+ - NÃO crie ADRs para tecnologias sem evidência no código
328
+
329
+ ### Marque Lacunas Visualmente
330
+
331
+ Para tudo que não foi possível determinar:
332
+
333
+ ```markdown
334
+ ## Stack
335
+
336
+ **Linguagem:** TypeScript (detectado)
337
+ **Framework:** Express.js (detectado)
338
+ **Banco de dados:** PostgreSQL (detectado)
339
+
340
+ **Justificativa de stack:** ⚠️ A INVESTIGAR — não foi possível determinar a justificativa para as escolhas técnicas. Necessário conversar com o time.
341
+
342
+ **ADR de database:** ⚠️ A CONFIRMAR — não foi possível detectar a decisão. Se existir uma ADR, por favor adicionar em docs/tech/adr/
343
+ ```
344
+
345
+ ---
346
+
347
+ ## Critérios de Qualidade
348
+
349
+ Antes de entregar, verifique:
350
+ - [ ] Toda tecnologia listada foi validada pelo usuário
351
+ - [ ] Toda ADR tem confirmação do usuário
352
+ - [ ] Seções não-detectadas têm marcação "A INVESTIGAR"
353
+ - [ ] Não há afirmações não-validadas no conteúdo
354
+
355
+ ---
356
+
357
+ ## Conclusão
358
+
359
+ Ao finalizar, atualize `docs/index.md` para incluir link para `docs/tech/index.md` se ele já existir.
360
+
361
+ ```
362
+ ✅ Documentação técnica criada!
363
+
364
+ Arquivos gerados em docs/tech/:
365
+ 📄 {lista de arquivos}
366
+
367
+ ⚠️ Itens pendentes de validação:
368
+ 📋 {lista de lacunas marcadas como A INVESTIGAR}
369
+
370
+ Próximo passo:
371
+ → /setup:start (menu completo)
372
+ ```
373
+
374
+ ⛔ **IMPORTANTE: Após finalizar, AGUARDE feedback do usuário. NÃO prossiga automaticamente.**