@ggailabs/cli-context 0.5.6 → 1.1.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 (298) hide show
  1. package/README.md +25 -181
  2. package/dist/.context/docs/GENESIS_SYSTEM_PROMPT.md +61 -0
  3. package/dist/.context/eng/agents/architect.md +68 -0
  4. package/dist/.context/eng/agents/backend_typescript.md +1000 -0
  5. package/dist/.context/eng/agents/bug_hunter.md +49 -0
  6. package/dist/.context/eng/agents/code_archaeologist.md +83 -0
  7. package/dist/.context/eng/agents/code_reviewer.md +90 -0
  8. package/dist/.context/eng/agents/devops_specialist.md +718 -0
  9. package/dist/.context/eng/agents/frontend_specialist.md +1027 -0
  10. package/dist/.context/eng/agents/orchestrator.md +89 -0
  11. package/dist/.context/eng/agents/penetration_tester.md +59 -0
  12. package/dist/.context/eng/agents/qa_specialist.md +1234 -0
  13. package/dist/.context/eng/agents/security_reviewer.md +92 -0
  14. package/dist/.context/eng/agents/ui_specialist.md +16 -0
  15. package/dist/.context/eng/docs/AGENT_HANDOFF_PROMPT.md +44 -0
  16. package/dist/.context/eng/docs/GENESIS_DESIGN_SYSTEM.md +88 -0
  17. package/dist/.context/eng/docs/GG_METHODOLOGY.md +48 -0
  18. package/dist/.context/eng/docs/OPERATIONS_LOG.md +31 -0
  19. package/dist/.context/eng/docs/PROJECT_MAP.md +35 -0
  20. package/dist/.context/eng/docs/standards/devops.md +0 -0
  21. package/dist/.context/eng/docs/standards/frontend.md +0 -0
  22. package/dist/.context/eng/docs/standards/typescript.md +12 -0
  23. package/dist/.context/eng/skills/agent_logging/SKILL.md +22 -0
  24. package/dist/.context/eng/skills/brainstorming/SKILL.md +51 -0
  25. package/dist/.context/eng/skills/documentation_templates/SKILL.md +73 -0
  26. package/dist/.context/eng/skills/exploring_codebase/SKILL.md +52 -0
  27. package/dist/.context/eng/skills/mcp_builder/SKILL.md +64 -0
  28. package/dist/.context/eng/skills/patterns/compliance_check/SKILL.md +37 -0
  29. package/dist/.context/eng/skills/patterns/coverage_table/SKILL.md +57 -0
  30. package/dist/.context/eng/skills/patterns/exit_criteria/SKILL.md +35 -0
  31. package/dist/.context/eng/skills/patterns/failure_recovery/SKILL.md +78 -0
  32. package/dist/.context/eng/skills/patterns/quality_gate/SKILL.md +43 -0
  33. package/dist/.context/eng/skills/patterns/standards_workflow/SKILL.md +395 -0
  34. package/dist/.context/eng/skills/patterns/state_tracking/SKILL.md +34 -0
  35. package/dist/.context/eng/skills/patterns/task_tracking/SKILL.md +42 -0
  36. package/dist/.context/eng/skills/performance_profiling/SKILL.md +60 -0
  37. package/dist/.context/eng/skills/previce/SKILL.md +49 -0
  38. package/dist/.context/eng/skills/tdd/SKILL.md +59 -0
  39. package/dist/.context/eng/skills/using_git_worktrees/SKILL.md +45 -0
  40. package/dist/.context/eng/skills/vulnerability_scanner/SKILL.md +78 -0
  41. package/dist/.context/eng/skills/writing_plans/SKILL.md +85 -0
  42. package/dist/.context/plans/.gitkeep +0 -0
  43. package/dist/.context/pt-br/agents/architect.md +68 -0
  44. package/dist/.context/pt-br/agents/backend_typescript.md +1002 -0
  45. package/dist/.context/pt-br/agents/bug_hunter.md +49 -0
  46. package/dist/.context/pt-br/agents/code_archaeologist.md +82 -0
  47. package/dist/.context/pt-br/agents/code_reviewer.md +88 -0
  48. package/dist/.context/pt-br/agents/devops_specialist.md +718 -0
  49. package/dist/.context/pt-br/agents/frontend_specialist.md +1029 -0
  50. package/dist/.context/pt-br/agents/orchestrator.md +87 -0
  51. package/dist/.context/pt-br/agents/penetration_tester.md +59 -0
  52. package/dist/.context/pt-br/agents/qa_specialist.md +1234 -0
  53. package/dist/.context/pt-br/agents/security_reviewer.md +92 -0
  54. package/dist/.context/pt-br/agents/ui_specialist.md +55 -0
  55. package/dist/.context/pt-br/docs/AGENT_HANDOFF_PROMPT.md +44 -0
  56. package/dist/.context/pt-br/docs/GENESIS_DESIGN_SYSTEM.md +88 -0
  57. package/dist/.context/pt-br/docs/GG_METHODOLOGY.md +48 -0
  58. package/dist/.context/pt-br/docs/OPERATIONS_LOG.md +31 -0
  59. package/dist/.context/pt-br/docs/PROJECT_MAP.md +37 -0
  60. package/dist/.context/pt-br/docs/standards/devops.md +707 -0
  61. package/dist/.context/pt-br/docs/standards/frontend.md +748 -0
  62. package/dist/.context/pt-br/docs/standards/typescript.md +1150 -0
  63. package/dist/.context/pt-br/skills/agent_logging/SKILL.md +40 -0
  64. package/dist/.context/pt-br/skills/brainstorming/SKILL.md +51 -0
  65. package/dist/.context/pt-br/skills/documentation_templates/SKILL.md +73 -0
  66. package/dist/.context/pt-br/skills/exploring_codebase/SKILL.md +52 -0
  67. package/dist/.context/pt-br/skills/mcp_builder/SKILL.md +64 -0
  68. package/dist/.context/pt-br/skills/patterns/compliance_check/SKILL.md +37 -0
  69. package/dist/.context/pt-br/skills/patterns/coverage_table/SKILL.md +57 -0
  70. package/dist/.context/pt-br/skills/patterns/exit_criteria/SKILL.md +38 -0
  71. package/dist/.context/pt-br/skills/patterns/failure_recovery/SKILL.md +30 -0
  72. package/dist/.context/pt-br/skills/patterns/quality_gate/SKILL.md +43 -0
  73. package/dist/.context/pt-br/skills/patterns/standards_workflow/SKILL.md +45 -0
  74. package/dist/.context/pt-br/skills/patterns/state_tracking/SKILL.md +31 -0
  75. package/dist/.context/pt-br/skills/patterns/task_tracking/SKILL.md +27 -0
  76. package/dist/.context/pt-br/skills/performance_profiling/SKILL.md +60 -0
  77. package/dist/.context/pt-br/skills/previce/SKILL.md +51 -0
  78. package/dist/.context/pt-br/skills/tdd/SKILL.md +59 -0
  79. package/dist/.context/pt-br/skills/using_git_worktrees/SKILL.md +45 -0
  80. package/dist/.context/pt-br/skills/vulnerability_scanner/SKILL.md +78 -0
  81. package/dist/.context/pt-br/skills/writing_plans/SKILL.md +85 -0
  82. package/dist/.context/workflow/.gitkeep +0 -0
  83. package/dist/commands/init.js +159 -0
  84. package/dist/commands/monitor.js +34 -0
  85. package/dist/index.js +20 -568
  86. package/dist/services/monitor-service.js +342 -0
  87. package/dist/services/scaffolder.js +177 -0
  88. package/package.json +16 -58
  89. package/LICENSE +0 -21
  90. package/dist/generators/agents/agentConfig.d.ts +0 -4
  91. package/dist/generators/agents/agentConfig.d.ts.map +0 -1
  92. package/dist/generators/agents/agentConfig.js +0 -180
  93. package/dist/generators/agents/agentConfig.js.map +0 -1
  94. package/dist/generators/agents/agentGenerator.d.ts +0 -9
  95. package/dist/generators/agents/agentGenerator.d.ts.map +0 -1
  96. package/dist/generators/agents/agentGenerator.js +0 -97
  97. package/dist/generators/agents/agentGenerator.js.map +0 -1
  98. package/dist/generators/agents/agentTypes.d.ts +0 -4
  99. package/dist/generators/agents/agentTypes.d.ts.map +0 -1
  100. package/dist/generators/agents/agentTypes.js +0 -25
  101. package/dist/generators/agents/agentTypes.js.map +0 -1
  102. package/dist/generators/agents/index.d.ts +0 -4
  103. package/dist/generators/agents/index.d.ts.map +0 -1
  104. package/dist/generators/agents/index.js +0 -12
  105. package/dist/generators/agents/index.js.map +0 -1
  106. package/dist/generators/agents/templates/index.d.ts +0 -4
  107. package/dist/generators/agents/templates/index.d.ts.map +0 -1
  108. package/dist/generators/agents/templates/index.js +0 -8
  109. package/dist/generators/agents/templates/index.js.map +0 -1
  110. package/dist/generators/agents/templates/indexTemplate.d.ts +0 -3
  111. package/dist/generators/agents/templates/indexTemplate.d.ts.map +0 -1
  112. package/dist/generators/agents/templates/indexTemplate.js +0 -36
  113. package/dist/generators/agents/templates/indexTemplate.js.map +0 -1
  114. package/dist/generators/agents/templates/playbookTemplate.d.ts +0 -4
  115. package/dist/generators/agents/templates/playbookTemplate.d.ts.map +0 -1
  116. package/dist/generators/agents/templates/playbookTemplate.js +0 -99
  117. package/dist/generators/agents/templates/playbookTemplate.js.map +0 -1
  118. package/dist/generators/agents/templates/types.d.ts +0 -14
  119. package/dist/generators/agents/templates/types.d.ts.map +0 -1
  120. package/dist/generators/agents/templates/types.js +0 -3
  121. package/dist/generators/agents/templates/types.js.map +0 -1
  122. package/dist/generators/documentation/documentationGenerator.d.ts +0 -15
  123. package/dist/generators/documentation/documentationGenerator.d.ts.map +0 -1
  124. package/dist/generators/documentation/documentationGenerator.js +0 -188
  125. package/dist/generators/documentation/documentationGenerator.js.map +0 -1
  126. package/dist/generators/documentation/guideRegistry.d.ts +0 -6
  127. package/dist/generators/documentation/guideRegistry.d.ts.map +0 -1
  128. package/dist/generators/documentation/guideRegistry.js +0 -82
  129. package/dist/generators/documentation/guideRegistry.js.map +0 -1
  130. package/dist/generators/documentation/index.d.ts +0 -2
  131. package/dist/generators/documentation/index.d.ts.map +0 -1
  132. package/dist/generators/documentation/index.js +0 -6
  133. package/dist/generators/documentation/index.js.map +0 -1
  134. package/dist/generators/documentation/templates/apiReferenceTemplate.d.ts +0 -2
  135. package/dist/generators/documentation/templates/apiReferenceTemplate.d.ts.map +0 -1
  136. package/dist/generators/documentation/templates/apiReferenceTemplate.js +0 -490
  137. package/dist/generators/documentation/templates/apiReferenceTemplate.js.map +0 -1
  138. package/dist/generators/documentation/templates/architectureTemplate.d.ts +0 -3
  139. package/dist/generators/documentation/templates/architectureTemplate.d.ts.map +0 -1
  140. package/dist/generators/documentation/templates/architectureTemplate.js +0 -66
  141. package/dist/generators/documentation/templates/architectureTemplate.js.map +0 -1
  142. package/dist/generators/documentation/templates/common.d.ts +0 -7
  143. package/dist/generators/documentation/templates/common.d.ts.map +0 -1
  144. package/dist/generators/documentation/templates/common.js +0 -58
  145. package/dist/generators/documentation/templates/common.js.map +0 -1
  146. package/dist/generators/documentation/templates/dataFlowTemplate.d.ts +0 -3
  147. package/dist/generators/documentation/templates/dataFlowTemplate.d.ts.map +0 -1
  148. package/dist/generators/documentation/templates/dataFlowTemplate.js +0 -40
  149. package/dist/generators/documentation/templates/dataFlowTemplate.js.map +0 -1
  150. package/dist/generators/documentation/templates/developmentWorkflowTemplate.d.ts +0 -2
  151. package/dist/generators/documentation/templates/developmentWorkflowTemplate.d.ts.map +0 -1
  152. package/dist/generators/documentation/templates/developmentWorkflowTemplate.js +0 -44
  153. package/dist/generators/documentation/templates/developmentWorkflowTemplate.js.map +0 -1
  154. package/dist/generators/documentation/templates/glossaryTemplate.d.ts +0 -3
  155. package/dist/generators/documentation/templates/glossaryTemplate.d.ts.map +0 -1
  156. package/dist/generators/documentation/templates/glossaryTemplate.js +0 -41
  157. package/dist/generators/documentation/templates/glossaryTemplate.js.map +0 -1
  158. package/dist/generators/documentation/templates/index.d.ts +0 -15
  159. package/dist/generators/documentation/templates/index.d.ts.map +0 -1
  160. package/dist/generators/documentation/templates/index.js +0 -30
  161. package/dist/generators/documentation/templates/index.js.map +0 -1
  162. package/dist/generators/documentation/templates/indexTemplate.d.ts +0 -3
  163. package/dist/generators/documentation/templates/indexTemplate.d.ts.map +0 -1
  164. package/dist/generators/documentation/templates/indexTemplate.js +0 -42
  165. package/dist/generators/documentation/templates/indexTemplate.js.map +0 -1
  166. package/dist/generators/documentation/templates/migrationTemplate.d.ts +0 -2
  167. package/dist/generators/documentation/templates/migrationTemplate.d.ts.map +0 -1
  168. package/dist/generators/documentation/templates/migrationTemplate.js +0 -422
  169. package/dist/generators/documentation/templates/migrationTemplate.js.map +0 -1
  170. package/dist/generators/documentation/templates/onboardingTemplate.d.ts +0 -2
  171. package/dist/generators/documentation/templates/onboardingTemplate.d.ts.map +0 -1
  172. package/dist/generators/documentation/templates/onboardingTemplate.js +0 -431
  173. package/dist/generators/documentation/templates/onboardingTemplate.js.map +0 -1
  174. package/dist/generators/documentation/templates/projectOverviewTemplate.d.ts +0 -3
  175. package/dist/generators/documentation/templates/projectOverviewTemplate.d.ts.map +0 -1
  176. package/dist/generators/documentation/templates/projectOverviewTemplate.js +0 -65
  177. package/dist/generators/documentation/templates/projectOverviewTemplate.js.map +0 -1
  178. package/dist/generators/documentation/templates/securityTemplate.d.ts +0 -2
  179. package/dist/generators/documentation/templates/securityTemplate.d.ts.map +0 -1
  180. package/dist/generators/documentation/templates/securityTemplate.js +0 -39
  181. package/dist/generators/documentation/templates/securityTemplate.js.map +0 -1
  182. package/dist/generators/documentation/templates/testingTemplate.d.ts +0 -2
  183. package/dist/generators/documentation/templates/testingTemplate.d.ts.map +0 -1
  184. package/dist/generators/documentation/templates/testingTemplate.js +0 -45
  185. package/dist/generators/documentation/templates/testingTemplate.js.map +0 -1
  186. package/dist/generators/documentation/templates/toolingTemplate.d.ts +0 -2
  187. package/dist/generators/documentation/templates/toolingTemplate.d.ts.map +0 -1
  188. package/dist/generators/documentation/templates/toolingTemplate.js +0 -42
  189. package/dist/generators/documentation/templates/toolingTemplate.js.map +0 -1
  190. package/dist/generators/documentation/templates/troubleshootingTemplate.d.ts +0 -2
  191. package/dist/generators/documentation/templates/troubleshootingTemplate.d.ts.map +0 -1
  192. package/dist/generators/documentation/templates/troubleshootingTemplate.js +0 -292
  193. package/dist/generators/documentation/templates/troubleshootingTemplate.js.map +0 -1
  194. package/dist/generators/documentation/templates/types.d.ts +0 -23
  195. package/dist/generators/documentation/templates/types.d.ts.map +0 -1
  196. package/dist/generators/documentation/templates/types.js +0 -3
  197. package/dist/generators/documentation/templates/types.js.map +0 -1
  198. package/dist/generators/plans/index.d.ts +0 -2
  199. package/dist/generators/plans/index.d.ts.map +0 -1
  200. package/dist/generators/plans/index.js +0 -6
  201. package/dist/generators/plans/index.js.map +0 -1
  202. package/dist/generators/plans/planGenerator.d.ts +0 -22
  203. package/dist/generators/plans/planGenerator.d.ts.map +0 -1
  204. package/dist/generators/plans/planGenerator.js +0 -109
  205. package/dist/generators/plans/planGenerator.js.map +0 -1
  206. package/dist/generators/plans/templates/indexTemplate.d.ts +0 -3
  207. package/dist/generators/plans/templates/indexTemplate.d.ts.map +0 -1
  208. package/dist/generators/plans/templates/indexTemplate.js +0 -37
  209. package/dist/generators/plans/templates/indexTemplate.js.map +0 -1
  210. package/dist/generators/plans/templates/planTemplate.d.ts +0 -3
  211. package/dist/generators/plans/templates/planTemplate.d.ts.map +0 -1
  212. package/dist/generators/plans/templates/planTemplate.js +0 -166
  213. package/dist/generators/plans/templates/planTemplate.js.map +0 -1
  214. package/dist/generators/plans/templates/types.d.ts +0 -19
  215. package/dist/generators/plans/templates/types.d.ts.map +0 -1
  216. package/dist/generators/plans/templates/types.js +0 -3
  217. package/dist/generators/plans/templates/types.js.map +0 -1
  218. package/dist/generators/shared/contextGenerator.d.ts +0 -7
  219. package/dist/generators/shared/contextGenerator.d.ts.map +0 -1
  220. package/dist/generators/shared/contextGenerator.js +0 -13
  221. package/dist/generators/shared/contextGenerator.js.map +0 -1
  222. package/dist/generators/shared/directoryTemplateHelpers.d.ts +0 -2
  223. package/dist/generators/shared/directoryTemplateHelpers.d.ts.map +0 -1
  224. package/dist/generators/shared/directoryTemplateHelpers.js +0 -12
  225. package/dist/generators/shared/directoryTemplateHelpers.js.map +0 -1
  226. package/dist/generators/shared/generatorUtils.d.ts +0 -16
  227. package/dist/generators/shared/generatorUtils.d.ts.map +0 -1
  228. package/dist/generators/shared/generatorUtils.js +0 -119
  229. package/dist/generators/shared/generatorUtils.js.map +0 -1
  230. package/dist/generators/shared/index.d.ts +0 -4
  231. package/dist/generators/shared/index.d.ts.map +0 -1
  232. package/dist/generators/shared/index.js +0 -10
  233. package/dist/generators/shared/index.js.map +0 -1
  234. package/dist/index.d.ts +0 -9
  235. package/dist/index.d.ts.map +0 -1
  236. package/dist/index.js.map +0 -1
  237. package/dist/prompts/defaults.d.ts +0 -3
  238. package/dist/prompts/defaults.d.ts.map +0 -1
  239. package/dist/prompts/defaults.js +0 -95
  240. package/dist/prompts/defaults.js.map +0 -1
  241. package/dist/services/baseLLMClient.d.ts +0 -12
  242. package/dist/services/baseLLMClient.d.ts.map +0 -1
  243. package/dist/services/baseLLMClient.js +0 -80
  244. package/dist/services/baseLLMClient.js.map +0 -1
  245. package/dist/services/fill/fillService.d.ts +0 -46
  246. package/dist/services/fill/fillService.d.ts.map +0 -1
  247. package/dist/services/fill/fillService.js +0 -254
  248. package/dist/services/fill/fillService.js.map +0 -1
  249. package/dist/services/init/initService.d.ts +0 -37
  250. package/dist/services/init/initService.d.ts.map +0 -1
  251. package/dist/services/init/initService.js +0 -167
  252. package/dist/services/init/initService.js.map +0 -1
  253. package/dist/services/llmClientFactory.d.ts +0 -8
  254. package/dist/services/llmClientFactory.d.ts.map +0 -1
  255. package/dist/services/llmClientFactory.js +0 -23
  256. package/dist/services/llmClientFactory.js.map +0 -1
  257. package/dist/services/openRouterClient.d.ts +0 -9
  258. package/dist/services/openRouterClient.d.ts.map +0 -1
  259. package/dist/services/openRouterClient.js +0 -49
  260. package/dist/services/openRouterClient.js.map +0 -1
  261. package/dist/services/plan/planService.d.ts +0 -57
  262. package/dist/services/plan/planService.d.ts.map +0 -1
  263. package/dist/services/plan/planService.js +0 -334
  264. package/dist/services/plan/planService.js.map +0 -1
  265. package/dist/services/shared/llmConfig.d.ts +0 -22
  266. package/dist/services/shared/llmConfig.d.ts.map +0 -1
  267. package/dist/services/shared/llmConfig.js +0 -38
  268. package/dist/services/shared/llmConfig.js.map +0 -1
  269. package/dist/types.d.ts +0 -65
  270. package/dist/types.d.ts.map +0 -1
  271. package/dist/types.js +0 -3
  272. package/dist/types.js.map +0 -1
  273. package/dist/utils/cliUI.d.ts +0 -27
  274. package/dist/utils/cliUI.d.ts.map +0 -1
  275. package/dist/utils/cliUI.js +0 -252
  276. package/dist/utils/cliUI.js.map +0 -1
  277. package/dist/utils/fileMapper.d.ts +0 -11
  278. package/dist/utils/fileMapper.d.ts.map +0 -1
  279. package/dist/utils/fileMapper.js +0 -146
  280. package/dist/utils/fileMapper.js.map +0 -1
  281. package/dist/utils/gitService.d.ts +0 -50
  282. package/dist/utils/gitService.d.ts.map +0 -1
  283. package/dist/utils/gitService.js +0 -470
  284. package/dist/utils/gitService.js.map +0 -1
  285. package/dist/utils/i18n.d.ts +0 -171
  286. package/dist/utils/i18n.d.ts.map +0 -1
  287. package/dist/utils/i18n.js +0 -381
  288. package/dist/utils/i18n.js.map +0 -1
  289. package/dist/utils/promptLoader.d.ts +0 -12
  290. package/dist/utils/promptLoader.d.ts.map +0 -1
  291. package/dist/utils/promptLoader.js +0 -81
  292. package/dist/utils/promptLoader.js.map +0 -1
  293. package/dist/utils/versionChecker.d.ts +0 -15
  294. package/dist/utils/versionChecker.d.ts.map +0 -1
  295. package/dist/utils/versionChecker.js +0 -49
  296. package/dist/utils/versionChecker.js.map +0 -1
  297. package/prompts/update_plan_prompt.md +0 -41
  298. package/prompts/update_scaffold_prompt.md +0 -47
@@ -0,0 +1,51 @@
1
+ ---
2
+ name: zenith-previce
3
+ description: Ciclo de desenvolvimento Zenith (Planning, Review, Execution, Validation, Confirmation, Evolution). O loop inegociável da v1.1.0.
4
+ ---
5
+ ---
6
+ name: genesis:previce
7
+ description: Main implementation workflow (Planejamento, Revisão, Execução, Validação, Confirmação).
8
+ trigger: |
9
+ - New feature request
10
+ - Bug fix implementation
11
+ - Architectural refactoring
12
+ ---
13
+
14
+ # ⚡ PREVICE Workflow - Genesis Grid AI Labs
15
+
16
+ Este é o workflow mandatório para o desenvolvimento no **GG-Framework**. Ele garante governança, qualidade e alinhamento com a visão de **Guilherme Giorgi (GG)**.
17
+
18
+ ## Fases do Ciclo
19
+
20
+ ### 1. P - Planejamento (Planning)
21
+ **Objetivo:** Definir o escopo e a estratégia técnica antes de codar.
22
+ - **Ação:** O agente `genesis:architect` deve criar um arquivo de plano em `.context/plans/[YYYY-MM-DD]-[feature-name].md`.
23
+ - **Conteúdo:** Objetivo, arquivos afetados, agent lineup e passos detalhados (bite-sized).
24
+
25
+ ### 2. R - Revisão (Review)
26
+ **Objetivo:** Validação humana (GG) do plano técnico.
27
+ - **Ação:** Notificar o usuário para revisar o plano gerado.
28
+ - **Critério de Saída:** Aprovação explícita do usuário.
29
+
30
+ ### 3. E - Execução (Execution)
31
+ **Objetivo:** Implementação do código seguindo o plano.
32
+ - **Ação:** Executar os passos do plano um a um.
33
+ - **Ação:** Executar os passos do plano um a um.
34
+ - **Regra:** Usar agentes especialistas (`genesis:ui_specialist`, `genesis:code_archaeologist`, `genesis:penetration_tester`) conforme necessário.
35
+
36
+ ### 4. V - Validação (Validation)
37
+ **Objetivo:** Garantir que a implementação está correta e segura.
38
+ - **Ação:** Rodar testes (unitários/E2E) e realizar o check visual do Genesis Design System.
39
+ - **Ação:** Rodar testes (unitários/E2E) e realizar o check visual do Genesis Design System.
40
+ - **Ferramenta:** Usar `genesis:qa_specialist` para auditoria de estabilidade.
41
+
42
+ ### 5. C - Confirmação (Confirmation)
43
+ **Objetivo:** Finalização e entrega.
44
+ - **Ação:** Realizar o commit com mensagem padronizada e informar ao usuário o sucesso da tarefa.
45
+
46
+ ## Regras de Execução
47
+ - **TODO Tracking:** Use um arquivo `task.md` ou similar para rastrear o progresso de cada fase.
48
+ - **Context Preservation:** Mantenha o estado do workflow em `.context/workflow/state.json`.
49
+
50
+ ---
51
+ *Genesis Grid AI Labs - Efficiency by Design.*
@@ -0,0 +1,59 @@
1
+ ---
2
+ name: zenith:tdd
3
+ description: Fluxo de desenvolvimento orientado a testes (Red-Green-Refactor). Use para garantir 100% de cobertura em lógica crítica.
4
+ ---
5
+ ---
6
+ name: zenith:tdd
7
+ description: |
8
+ Metodologia de implementação RED-GREEN-REFACTOR - escreva o teste que falha primeiro,
9
+ implementação mínima para passar e, em seguida, refatore. Garante que os testes verifiquem o comportamento.
10
+
11
+ trigger: |
12
+ - Iniciando implementação de nova funcionalidade
13
+ - Iniciando implementação de bugfix
14
+ - Escrevendo novo código de produção
15
+
16
+ skip_when: |
17
+ - Revisando/modificando testes existentes → use padrões de teste
18
+ - Código já existe sem testes → adicione testes primeiro, depois TDD para novo código
19
+ - Trabalho exploratório/spike → considere brainstorming primeiro
20
+
21
+ sequence:
22
+ after: [writing_plans]
23
+ before: [verification_before_completion]
24
+
25
+ related:
26
+ similar: [verification]
27
+ ---
28
+
29
+ # 🧪 Test-Driven Development (TDD)
30
+
31
+ ## Visão Geral
32
+
33
+ Escreva o teste primeiro. Veja-o falhar. Escreva o código mínimo para passar.
34
+
35
+ **Princípio Core:** Se você não viu o teste falhar, você não sabe se ele está testando a coisa certa.
36
+
37
+ ## O Ciclo Red-Green-Refactor
38
+
39
+ 1. **RED**: Escreva um teste minimalista para a nova funcionalidade. Execute o teste e **veja-o falhar**.
40
+ 2. **GREEN**: Escreva apenas o código necessário para fazer o teste passar. Não adicione lógica extra.
41
+ 3. **REFACTOR**: Limpe o código, remova duplicidade e melhore nomes, mantendo os testes em verde.
42
+
43
+ ## Regra de Ouro Zenith
44
+
45
+ ```
46
+ NENHUM CÓDIGO DE PRODUÇÃO SEM UM TESTE QUE FALHA PRIMEIRO.
47
+ ```
48
+
49
+ ## Padrões Mandatórios
50
+
51
+ Esta skill utiliza estes padrões universais:
52
+ - **State Tracking:** Veja [skills/patterns/state_tracking/SKILL.md](file:///.context/pt-br/skills/patterns/state_tracking/SKILL.md)
53
+ - **Failure Recovery:** Veja [skills/patterns/failure_recovery/SKILL.md](file:///.context/pt-br/skills/patterns/failure_recovery/SKILL.md)
54
+ - **Exit Criteria:** Veja [skills/patterns/exit_criteria/SKILL.md](file:///.context/pt-br/skills/patterns/exit_criteria/SKILL.md)
55
+
56
+ Aplique TODOS os padrões ao usar esta skill.
57
+
58
+ ---
59
+ *Genesis Grid - Qualidade através do Rigor Técnico.*
@@ -0,0 +1,45 @@
1
+ ---
2
+ name: zenith-using_git_worktrees
3
+ description: Criação e gestão de workspaces isolados via git worktree. Use ao iniciar novas funcionalidades ou mudanças paralelas.
4
+ ---
5
+ # 🌲 Skill: Uso de Git Worktrees (v1.1.0)
6
+
7
+ ## 🎯 Objetivo
8
+ Criar e gerenciar ambientes de trabalho isolados utilizando `git worktree` para garantir que o desenvolvimento de novas funcionalidades não polua o workspace principal e permita builds limpos.
9
+
10
+ ## 🛠 Sequência Operacional
11
+
12
+ ### 1. Seleção de Diretório
13
+ A prioridade de diretório para worktrees segue a ordem:
14
+ 1. Pasta existente `.worktrees/` ou `worktrees/` na raiz do projeto.
15
+ 2. Preferência definida no `PROJECT_MAP.md` ou `GEMINI.md`.
16
+ 3. Perguntar ao usuário: `.worktrees/` (local) ou `~/.config/genesis/worktrees/<projeto>/` (global).
17
+
18
+ ### 2. Verificação de Segurança (Mandatório)
19
+ Se o diretório for local (dentro do projeto):
20
+ - **Verificar .gitignore:** `grep -q "^\.worktrees/$\|^worktrees/$" .gitignore`.
21
+ - **Ação Corretiva:** Se não estiver no `.gitignore`, adicione imediatamente, commite e prossiga. *Nunca crie um worktree local sem proteção no git.*
22
+
23
+ ### 3. Criação e Setup
24
+ ```bash
25
+ # 1. Criar o worktree
26
+ git worktree add .worktrees/<nome-branch> -b <nome-branch>
27
+
28
+ # 2. Entrar no ambiente
29
+ cd .worktrees/<nome-branch>
30
+
31
+ # 3. Setup Automático
32
+ npm install # Detectar via package.json
33
+ ```
34
+
35
+ ### 4. Validação de Baseline
36
+ - Antes de começar a codar, rode os testes: `npm test`.
37
+ - Se os testes falharem no baseline, reporte ao usuário antes de prosseguir.
38
+
39
+ ## 🚫 Red Flags
40
+ - **NUNCA** crie um worktree local sem verificar o `.gitignore`.
41
+ - **NUNCA** pule a instalação de dependências ou o teste de baseline no novo worktree.
42
+ - **EVITE** manter worktrees antigos ativos; use a skill de "Cleanup" ao finalizar.
43
+
44
+ ---
45
+ **Protocolo:** v1.1.0 | **Soberania:** Genesis Grid AI Labs
@@ -0,0 +1,78 @@
1
+ ---
2
+ name: vulnerability_scanner
3
+ description: Princípios avançados de análise de vulnerabilidades. OWASP 2025, Segurança da Cadeia de Suprimentos (Supply Chain), mapeamento de superfície de ataque e priorização de risco.
4
+ allowed-tools: Read, Glob, Grep, Bash
5
+ ---
6
+
7
+ # 🛡️ Vulnerability Scanner (Soberania Zenit)
8
+
9
+ > Pense como um atacante, defenda como um mestre. Foco no cenário de ameaças de 2025.
10
+
11
+ ## 📋 Arquivos de Referência
12
+
13
+ | Arquivo | Propósito |
14
+ |------|---------|
15
+ | `checklists.md` | OWASP Top 10, Auth, API, e Proteção de Dados. |
16
+
17
+ ---
18
+
19
+ ## 1. Mentalidade de Especialista em Segurança
20
+
21
+ ### Princípios Core
22
+
23
+ | Princípio | Aplicação |
24
+ |-----------|-------------|
25
+ | **Assume Breach** | Desenvolva como se o atacante já estivesse dentro da rede. |
26
+ | **Zero Trust** | Nunca confie, sempre verifique cada requisição. |
27
+ | **Defense in Depth** | Múltiplas camadas de segurança, sem ponto único de falha. |
28
+ | **Least Privilege** | Acesso mínimo necessário para cada função/agente. |
29
+ | **Fail Secure** | Em caso de erro, bloqueie o acesso por padrão. |
30
+
31
+ ---
32
+
33
+ ## 2. OWASP Top 10: 2025 (Foco Zenith)
34
+
35
+ ### Categorias de Risco
36
+
37
+ | Rank | Categoria | O que auditar? |
38
+ |------|----------|-------------|
39
+ | **A01** | Broken Access Control | Quem acessa o quê? IDOR, SSRF. |
40
+ | **A02** | Security Misconfiguration | Configurações padrão, headers, serviços expostos. |
41
+ | **A03** | Software Supply Chain 🆕 | Dependências, CI/CD, integridade do build. |
42
+ | **A04** | Cryptographic Failures | Cripto fraca, segredos expostos no código. |
43
+ | **A05** | Injection | Input de usuário alimentando comandos do sistema ou DB. |
44
+
45
+ ---
46
+
47
+ ## 3. Segurança da Cadeia de Suprimentos (A03)
48
+
49
+ ### Vetores de Ataque em 2025
50
+
51
+ - **Dependências Maliciosas**: Audite pacotes novos (`npm audit`).
52
+ - **Arquivos de Lock**: Garanta a integridade dos arquivos de lock nos commits.
53
+ - **Pipeline de Build**: Quem pode modificar seus scripts de CI/CD?
54
+ - **Typosquatting**: Verifique se o nome do pacote está correto.
55
+
56
+ ---
57
+
58
+ ## 4. Metodologia de Escaneamento Zenith
59
+
60
+ 1. **RECONHECIMENTO**: Entender a stack tecnológica e pontos de entrada.
61
+ 2. **DESCOBERTA**: Identificar padrões de código inseguros.
62
+ 3. **ANÁLISE**: Eliminar falsos positivos e mapear a cadeia de ataque.
63
+ 4. **RELATÓRIO**: Gerar recomendações acionáveis (Pilar VII).
64
+
65
+ ---
66
+
67
+ ## 5. Padrões de Código de Alto Risco
68
+
69
+ | Padrão | Risco | O que procurar |
70
+ |---------|------|----------|
71
+ | **Concatatação em Queries** | Injeção SQL | `"SELECT * FROM " + input` |
72
+ | **Execução Dinâmica** | RCE | `eval()`, `exec()`, `Function()` |
73
+ | **Deserialização Insegura**| RCE | `pickle.loads()`, `unserialize()` |
74
+ | **Manipulação de Path** | Traversal | Input de usuário em caminhos de arquivo |
75
+
76
+ ---
77
+
78
+ > **Lembre-se:** Escaneamento automatizado encontra bugs. Pensamento de especialista prioriza o que importa. Sempre pergunte: "O que um atacante faria com isso?".
@@ -0,0 +1,85 @@
1
+ ---
2
+ name: zenith:writing_plans
3
+ description: Criação de planos de implementação técnica (Design Docs). Use para detalhar mudanças antes de codar.
4
+ ---
5
+ ---
6
+ name: zenith:writing_plans
7
+ description: |
8
+ Cria planos de implementação abrangentes com caminhos de arquivo exatos, exemplos de código
9
+ completos e etapas de verificação para engenheiros com zero contexto de base de código.
10
+
11
+ trigger: |
12
+ - Fase de design concluída (brainstorming/PRD/TRD validado)
13
+ - Necessidade de criar um detalhamento de tarefas executáveis
14
+ - Criando trabalho para outros engenheiros ou agentes de IA
15
+
16
+ skip_when: |
17
+ - Design não validado → use brainstorming primeiro
18
+ - Requisitos ainda incertos → use previce primeiro
19
+ - Já possui um plano → use execução planejada
20
+
21
+ sequence:
22
+ after: [brainstorming, previce]
23
+ before: [executing_plans, subagent_driven_development]
24
+
25
+ related:
26
+ similar: [brainstorming]
27
+ ---
28
+
29
+ # 📝 Planejamento de Escrita (Writing Plans)
30
+
31
+ ## Visão Geral
32
+
33
+ Esta skill despacha um agente especializado para escrever planos de implementação abrangentes para engenheiros com zero contexto da base de código.
34
+
35
+ **Anuncie no início:** "Estou usando a skill zenith:writing_plans para criar o plano de implementação."
36
+
37
+ **Contexto:** Isso deve ser executado em uma worktree dedicada (criada pela skill de brainstorming).
38
+
39
+ ## O Processo
40
+
41
+ **Passo 1: Despachar Agente de Escrita de Plano**
42
+
43
+ Despache via `Task(subagent_type: "orchestrator", model: "opus")` com:
44
+ - Instruções para criar tarefas atômicas (2-5 min cada)
45
+ - Incluir caminhos de arquivo exatos, código completo, etapas de verificação
46
+ - Salvar em `docs/plans/YYYY-MM-DD-<nome-da-feature>.md`
47
+
48
+ **Passo 2: Validar Plano**
49
+
50
+ Após o plano ser salvo, valide-o conforme os 7 Pilares da Metodologia GG.
51
+
52
+ **Passo 3: Perguntar ao Usuário Sobre a Execução**
53
+
54
+ Pergunte via `notify_user`: "Executar agora?" Opções:
55
+ 1. Executar agora → Despachar especialistas.
56
+ 2. Sessão paralela → Usuário abre nova sessão em worktree.
57
+ 3. Salvar para depois → Reportar local e encerrar.
58
+
59
+ ## Por Que Usar um Agente?
60
+
61
+ **Preservação de Contexto** (ler muitos arquivos mantém o supervisor limpo) | **Poder do Modelo** (Capacidade de planejamento abrangente) | **Separação de Preocupações** (supervisor orquestra, agente planeja)
62
+
63
+ ## Seleção de Agentes por Tarefa
64
+
65
+ | Tipo de Tarefa | Agente Zenith |
66
+ |-----------|-------|
67
+ | API/Serviços Backend | `backend_typescript` |
68
+ | Frontend/UI | `frontend_specialist` |
69
+ | Infra/CI/CD/SRE | `devops_specialist` |
70
+ | Testes e QA | `qa_specialist` |
71
+ | Segurança | `security_reviewer` |
72
+ | Arqueologia/Legado | `code_archaeologist` |
73
+ | Fallback | `architect` |
74
+
75
+ ## Padrões Mandatórios
76
+
77
+ Esta skill utiliza estes padrões universais (Zenith Patterns):
78
+ - **State Tracking:** Veja [skills/patterns/state_tracking/SKILL.md](file:///.context/pt-br/skills/patterns/state_tracking/SKILL.md)
79
+ - **Failure Recovery:** Veja [skills/patterns/failure_recovery/SKILL.md](file:///.context/pt-br/skills/patterns/failure_recovery/SKILL.md)
80
+ - **Exit Criteria:** Veja [skills/patterns/exit_criteria/SKILL.md](file:///.context/pt-br/skills/patterns/exit_criteria/SKILL.md)
81
+
82
+ Aplique TODOS os padrões ao usar esta skill.
83
+
84
+ ---
85
+ *Genesis Grid - Excelência em Planejamento Agentico.*
File without changes
@@ -0,0 +1,159 @@
1
+ import { Command } from 'commander';
2
+ import chalk from 'chalk';
3
+ import inquirer from 'inquirer';
4
+ import ora from 'ora';
5
+ import fs from 'fs-extra';
6
+ import path from 'path';
7
+ import { Scaffolder } from '../services/scaffolder.js';
8
+ export function createInitCommand() {
9
+ return new Command('init')
10
+ .description('Inicializa o contexto Genesis Grid em um projeto')
11
+ .option('-y, --yes', 'Pular perguntas e usar valores padrão')
12
+ .option('-d, --discovery', 'Ativar modo Discovery (para projetos existentes)')
13
+ .option('-u, --ui <mode>', 'Nível de Design System (full, mix, core)', 'full')
14
+ .option('-l, --lang <language>', 'Idioma do contexto (pt-br, eng)', 'pt-br')
15
+ .option('-o, --output <path>', 'Diretório de saída para o contexto', '.context')
16
+ .action(async (options) => {
17
+ const logo = `
18
+ ${chalk.white(' ██████╗ ██████╗ █████╗ ██╗ ██╗ █████╗ ██████╗ ███████╗')}
19
+ ${chalk.gray('██╔════╝ ██╔════╝ ██╔══██╗██║ ██║ ██╔══██╗██╔══██╗██╔════╝')}
20
+ ${chalk.white('██║ ███╗██║ ███╗ ███████║██║ ██║ ███████║██████╔╝███████╗')}
21
+ ${chalk.gray('██║ ██║██║ ██║ ██╔══██║██║ ██║ ██╔══██║██╔══██╗╚════██║')}
22
+ ${chalk.white('╚██████╔╝╚██████╔╝██╗██║ ██║██║ ███████╗██║ ██║██████╔╝███████║')}
23
+ ${chalk.gray(' ╚═════╝ ╚═════╝ ╚═╝╚═╝ ╚═╝╚═╝ ╚══════╝╚═╝ ╚═╝╚═════╝ ╚══════╝')}
24
+ `;
25
+ console.log(logo);
26
+ console.log(` ${chalk.magenta('Protocol')} ${chalk.white.bold('v1.1.0')} ${chalk.gray('Ready to synchronize...')}\n`);
27
+ let config = {
28
+ output: options.output,
29
+ projectName: 'Genesis Project',
30
+ framework: 'React',
31
+ mode: options.discovery ? 'discovery' : 'bootstrap',
32
+ uiMode: options.ui,
33
+ language: options.lang
34
+ };
35
+ if (!options.yes) {
36
+ const answers = await inquirer.prompt([
37
+ {
38
+ type: 'list',
39
+ name: 'language',
40
+ message: 'Qual o idioma principal do projeto?',
41
+ choices: [
42
+ { name: '🇧🇷 Português (PT-BR)', value: 'pt-br' },
43
+ { name: '🇺🇸 English (ENG)', value: 'eng' }
44
+ ],
45
+ default: 'pt-br',
46
+ },
47
+ {
48
+ type: 'list',
49
+ name: 'mode',
50
+ message: 'O que deseja fazer?',
51
+ choices: [
52
+ { name: '✨ Bootstrap (Criar novo contexto do zero)', value: 'bootstrap' },
53
+ { name: '🔍 Discovery (Mapear evolução de projeto existente)', value: 'discovery' }
54
+ ],
55
+ default: 'bootstrap',
56
+ },
57
+ {
58
+ type: 'input',
59
+ name: 'projectName',
60
+ message: 'Qual o nome deste projeto?',
61
+ default: 'Genesis Project',
62
+ },
63
+ {
64
+ type: 'list',
65
+ name: 'framework',
66
+ message: 'Qual a Stack/Tecnologia base?',
67
+ choices: ['React', 'Next.js', 'Vite/Vanilla', 'NodeJS', 'Outra'],
68
+ default: 'React',
69
+ }
70
+ ]);
71
+ config = { ...config, ...answers };
72
+ // Zenith Tech Stack Orchestration
73
+ const engineAnswers = await inquirer.prompt([
74
+ {
75
+ type: 'checkbox',
76
+ name: 'targetEngines',
77
+ message: 'Quais Engines de IA você utilizará? (Orquestração de Sincronia)',
78
+ choices: [
79
+ { name: 'Cursor (Composer/Rules)', value: 'cursor', checked: true },
80
+ { name: 'Gemini (Antigravity/Vertex)', value: 'antigravity', checked: true },
81
+ { name: 'Windsurf (Cascade/Codeium)', value: 'windsurf' },
82
+ { name: 'OpenAI (Codex/GPTs)', value: 'codex' },
83
+ { name: 'Claude Code (Anthropic CLI)', value: 'claude' }
84
+ ]
85
+ }
86
+ ]);
87
+ config = { ...config, ...engineAnswers };
88
+ // Zenith Interactive Orchestration (Deep Feed)
89
+ if (config.mode === 'discovery') {
90
+ console.log(chalk.yellow('\n🧠 Iniciando Orquestração Interativa (Deep Feed)...'));
91
+ const feedAnswers = await inquirer.prompt([
92
+ {
93
+ type: 'input',
94
+ name: 'modules',
95
+ message: 'Quais os principais Módulos/Domains? (ex: auth, components, api)',
96
+ default: 'core, ui, auth',
97
+ },
98
+ {
99
+ type: 'input',
100
+ name: 'objective',
101
+ message: 'Qual o foco da IA agora? (Milestone Objective)',
102
+ default: 'Estabilização de arquitetura e novas funcionalidades.',
103
+ },
104
+ {
105
+ type: 'input',
106
+ name: 'techDebt',
107
+ message: 'Existem Dívidas Técnicas (Tech Debt) críticas a reportar?',
108
+ default: 'Nenhum reportada.',
109
+ }
110
+ ]);
111
+ config.feed = feedAnswers;
112
+ }
113
+ }
114
+ const spinner = ora('Garantindo Soberania do Contexto...').start();
115
+ try {
116
+ const scaffolder = new Scaffolder(config);
117
+ await scaffolder.init();
118
+ // Se houver feed, injetar no log e no mapa
119
+ if (config.feed) {
120
+ const contextDir = path.resolve(process.cwd(), config.output);
121
+ const logPath = path.join(contextDir, 'docs/OPERATIONS_LOG.md');
122
+ const mapPath = path.join(contextDir, 'docs/PROJECT_MAP.md');
123
+ const feed = config.feed;
124
+ // Injetar no Log
125
+ const logContent = await fs.readFile(logPath, 'utf-8');
126
+ const updatedLog = logContent.replace('[Log inicializado via Discovery Mode]', `Objetivo: ${feed.objective}\nDívida Técnica: ${feed.techDebt}`).replace('[Log initialized via Discovery Mode]', `Objective: ${feed.objective}\nTech Debt: ${feed.techDebt}`);
127
+ await fs.writeFile(logPath, updatedLog);
128
+ // Atualizar PROJECT_MAP se possível (simplificado para este POC)
129
+ const mapContent = await fs.readFile(mapPath, 'utf-8');
130
+ let modulesSection = `\n## 🏛 Domain Architecture (Custom Feed)\n`;
131
+ feed.modules.split(',').forEach((m) => {
132
+ modulesSection += `- \`src/modules/${m.trim()}\`: Módulo identificado via Discovery.\n`;
133
+ });
134
+ await fs.writeFile(mapPath, mapContent + modulesSection);
135
+ }
136
+ spinner.succeed(chalk.green('Protocolo v1.1.0 ativado em ' + chalk.bold(config.output)));
137
+ // Exibir Sincronização Agmóstica (Filtrada)
138
+ const engines = config.targetEngines || ['antigravity', 'cursor', 'windsurf', 'codex', 'claude'];
139
+ const syncStatus = [
140
+ { id: 'cursor', name: 'Cursor', color: chalk.blue },
141
+ { id: 'antigravity', name: 'Gemini', color: chalk.cyan },
142
+ { id: 'windsurf', name: 'Windsurf', color: chalk.white },
143
+ { id: 'codex', name: 'Codex', color: chalk.gray },
144
+ { id: 'claude', name: 'Claude', color: chalk.yellow }
145
+ ];
146
+ console.log(chalk.gray('\n📡 Sincronização Agmóstica (Zenith-Sync):'));
147
+ syncStatus.forEach(s => {
148
+ const status = engines.includes(s.id) ? chalk.green('Sincronizado ✅') : chalk.gray('Ignorado ⚊');
149
+ console.log(` ${s.color('◈')} ${chalk.white(s.name.padEnd(8))} ${status}`);
150
+ });
151
+ console.log(chalk.gray('\n✨ Contexto alimentado e pronto para orquestração.'));
152
+ console.log(chalk.cyan('1. Leia o ') + chalk.white.bold('.context/docs/AGENT_HANDOFF_PROMPT.md') + chalk.cyan(' para o próximo agente.'));
153
+ console.log(chalk.cyan('2. Rode ') + chalk.white.bold('ggai monitor') + chalk.cyan(' para verificar a saúde do contexto.\n'));
154
+ }
155
+ catch (error) {
156
+ spinner.fail(chalk.red('Falha ao ativar Zenith Protocol: ' + error.message));
157
+ }
158
+ });
159
+ }
@@ -0,0 +1,34 @@
1
+ import { Command } from 'commander';
2
+ import fs from 'fs-extra';
3
+ import path from 'path';
4
+ import chalk from 'chalk';
5
+ import { MonitorService } from '../services/monitor-service.js';
6
+ export function createMonitorCommand() {
7
+ return new Command('monitor')
8
+ .description('Inicia o Hub de Contexto & Saúde Zenith (v1.1.0)')
9
+ .option('-c, --context <path>', 'Caminho para a pasta de contexto', '.context')
10
+ .option('-l, --lang <language>', 'Idioma do dashboard (pt-br, eng)', 'pt-br')
11
+ .action(async (options) => {
12
+ let contextPath = options.context;
13
+ // Auto-discovery: se o default não existe, tenta .context-dist ou outros padrões
14
+ if (contextPath === '.context' && !(await fs.pathExists(path.join(process.cwd(), contextPath)))) {
15
+ const alternates = ['.context-dist', '.context-clean', 'context'];
16
+ for (const alt of alternates) {
17
+ if (await fs.pathExists(path.join(process.cwd(), alt))) {
18
+ contextPath = alt;
19
+ break;
20
+ }
21
+ }
22
+ }
23
+ const monitor = new MonitorService(contextPath, options.lang);
24
+ try {
25
+ await monitor.start();
26
+ }
27
+ catch (error) {
28
+ console.error(chalk.red(`\n[Genesis Error] Contexto não encontrado.`));
29
+ console.log(chalk.gray(`Certifique-se de que o diretório de contexto existe ou especifique via:`));
30
+ console.log(chalk.cyan(`ggai monitor --context <path>\n`));
31
+ process.exit(1);
32
+ }
33
+ });
34
+ }