jarvis-ai-framework 2.1.0 → 3.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 (303) hide show
  1. package/AGENTS.md +22 -122
  2. package/agents/AGENTS.md +20 -24
  3. package/agents/README.md +25 -129
  4. package/agents/engineering/data/eng.data-engineer.agent.md +12 -35
  5. package/agents/engineering/eng.agent.md +18 -30
  6. package/agents/engineering/eng.bug-hunter.md +9 -12
  7. package/agents/engineering/eng.dev-code-reviewer.md +5 -1
  8. package/agents/engineering/eng.docs-writer.md +3 -3
  9. package/agents/engineering/eng.frontend.agent.md +13 -8
  10. package/agents/engineering/eng.rpa.agent.md +5 -13
  11. package/agents/engineering/eng.ux-designer.agent.md +4 -0
  12. package/agents/engineering/qa/eng.qa.quality-champion-task-agent.md +4 -0
  13. package/agents/engineering/qa/eng.qa.quality-strategist.md +13 -8
  14. package/agents/engineering/qa/eng.qa.test-architect.md +16 -15
  15. package/agents/engineering/qa/eng.qa.test-planner.md +22 -17
  16. package/agents/engineering/qa/eng.qa.testing-engineer.md +99 -15
  17. package/agents/product/prod.discovery-interviewer.md +22 -3
  18. package/agents/product/prod.pm-checker.md +4 -0
  19. package/bin/README.md +142 -0
  20. package/bin/commands/docs-publish.js +105 -141
  21. package/bin/commands/docs-sync.js +66 -104
  22. package/bin/commands/info.js +7 -27
  23. package/bin/commands/init.js +23 -51
  24. package/bin/commands/install-rtk.js +9 -3
  25. package/bin/commands/list.js +5 -18
  26. package/bin/commands/map.js +58 -0
  27. package/bin/commands/qa-signoff.js +58 -55
  28. package/bin/commands/tokens.js +90 -0
  29. package/bin/commands/whoami.js +30 -26
  30. package/bin/jarvis.js +9 -153
  31. package/bin/lib/auth/session.js +20 -20
  32. package/bin/lib/cli/program.js +219 -0
  33. package/bin/lib/cli/shared-options.js +29 -0
  34. package/bin/lib/config/constants.js +70 -2
  35. package/bin/lib/config/ide-config.js +4 -8
  36. package/bin/lib/core/profile-filter.js +116 -0
  37. package/bin/lib/core/scanner.js +5 -31
  38. package/bin/lib/core/sync-engine.js +21 -14
  39. package/bin/lib/core/token-report.js +100 -0
  40. package/bin/lib/docs/fetch-file.js +39 -0
  41. package/bin/lib/docs/publish-file.js +194 -0
  42. package/bin/lib/docs/redis-cache.js +49 -0
  43. package/bin/lib/docs/validate-frontmatter.js +9 -39
  44. package/bin/lib/env-loader.js +11 -34
  45. package/bin/lib/flow-map/index.js +65 -0
  46. package/bin/lib/flow-map/parse.js +223 -0
  47. package/bin/lib/flow-map/render.js +89 -0
  48. package/bin/lib/flow-map/tree.js +248 -0
  49. package/bin/lib/tasks/comment.js +40 -35
  50. package/bin/lib/utils/frontmatter.js +57 -0
  51. package/bin/lib/utils/git-parser.js +4 -6
  52. package/bin/lib/utils/npmrc-parser.js +6 -13
  53. package/bin/lib/utils/paths.js +2 -4
  54. package/bin/lib/utils/ui.js +3 -9
  55. package/bin/lib/vcs/api.js +25 -41
  56. package/bin/lib/vcs/create-issue.js +49 -33
  57. package/bin/lib/vcs/create-merge.js +47 -31
  58. package/bin/lib/vcs/fetch-raw.js +35 -23
  59. package/members.md +1 -1
  60. package/package.json +15 -4
  61. package/rules/AGENTS.md +18 -7
  62. package/rules/engineering/eng-rules.md +3 -13
  63. package/rules/engineering/eng-security-rules.md +19 -18
  64. package/rules/engineering/eng.bump-rules.md +3 -2
  65. package/rules/engineering/eng.docs-scraping-rules.md +4 -4
  66. package/rules/engineering/eng.integrations-rules.md +3 -7
  67. package/rules/engineering/eng.skills-rules.md +1 -5
  68. package/rules/engineering/eng.specializations-rules.md +18 -8
  69. package/rules/engineering/frontend/eng.frontend-rules.md +1 -4
  70. package/rules/engineering/qa/eng.qa.cypress-standards-rules.md +1 -1
  71. package/rules/engineering/rpa/eng.rpa-rules.md +4 -9
  72. package/rules/product/README.md +1 -0
  73. package/rules/product/prod-rules.md +1 -4
  74. package/rules/product/prod.spec-rules.md +0 -4
  75. package/rules/rtk-rules.md +0 -1
  76. package/{rules → rules-on-demand}/engineering/eng.breakdown-subtasks-rules.md +0 -4
  77. package/{rules → rules-on-demand}/engineering/eng.plan-rules.md +0 -4
  78. package/{rules → rules-on-demand}/engineering/eng.pr-rules.md +0 -4
  79. package/{rules → rules-on-demand}/engineering/eng.pre-pr-rules.md +0 -4
  80. package/{rules → rules-on-demand}/engineering/eng.start-rules.md +0 -4
  81. package/{rules → rules-on-demand}/engineering/eng.tech-spec-rules.md +1 -2
  82. package/{rules → rules-on-demand}/engineering/eng.work-rules.md +0 -4
  83. package/skills/AGENTS.md +69 -106
  84. package/skills/SKILLS-ROADMAP.md +47 -132
  85. package/skills/eng-ai/SKILL.md +270 -0
  86. package/skills/eng-ai/references/1-fundamentos-ml.md +24 -0
  87. package/skills/eng-ai/references/10-arquitetura-solucoes-ia.md +24 -0
  88. package/skills/eng-ai/references/11-governanca-ia.md +24 -0
  89. package/skills/eng-ai/references/12-seguranca-ia-responsavel.md +25 -0
  90. package/skills/eng-ai/references/2-matematica-estatistica.md +24 -0
  91. package/skills/eng-ai/references/3-dados-para-ia.md +24 -0
  92. package/skills/eng-ai/references/4-deep-learning-fundacionais.md +24 -0
  93. package/skills/eng-ai/references/5-llms-chatbots-agentes-rag.md +25 -0
  94. package/skills/eng-ai/references/6-avaliacao-experimentacao.md +24 -0
  95. package/skills/eng-ai/references/7-engenharia-sistemas-ia.md +24 -0
  96. package/skills/eng-ai/references/8-mlops-plataforma.md +24 -0
  97. package/skills/eng-ai/references/9-produto-ia.md +24 -0
  98. package/skills/eng-ai/references/especializacoes.md +17 -0
  99. package/skills/eng-automation/SKILL.md +290 -0
  100. package/skills/eng-automation/references/1-fundamentos-automacao.md +25 -0
  101. package/skills/eng-automation/references/10-ingestao-dados.md +25 -0
  102. package/skills/eng-automation/references/11-captcha-antibot.md +25 -0
  103. package/skills/eng-automation/references/12-limites-taxa-sessoes.md +25 -0
  104. package/skills/eng-automation/references/13-agendamento-orquestracao.md +24 -0
  105. package/skills/eng-automation/references/14-retentativa-erros.md +25 -0
  106. package/skills/eng-automation/references/15-autenticacao-credenciais.md +24 -0
  107. package/skills/eng-automation/references/16-observabilidade-confiabilidade.md +24 -0
  108. package/skills/eng-automation/references/2-aquisicao-dados.md +25 -0
  109. package/skills/eng-automation/references/3-automacao-navegador.md +24 -0
  110. package/skills/eng-automation/references/4-scraping-crawling.md +25 -0
  111. package/skills/eng-automation/references/5-apis-rest-graphql-soap.md +26 -0
  112. package/skills/eng-automation/references/6-webhooks-integracao.md +25 -0
  113. package/skills/eng-automation/references/7-rpa.md +25 -0
  114. package/skills/eng-automation/references/8-extracao-estruturada.md +25 -0
  115. package/skills/eng-automation/references/9-extracao-documentos.md +25 -0
  116. package/skills/eng-automation/references/especializacoes.md +18 -0
  117. package/skills/eng-backend/SKILL.md +6 -0
  118. package/skills/eng-backend-arch-c4/SKILL.md +10 -4
  119. package/skills/eng-backend-microservices-trace/SKILL.md +6 -0
  120. package/skills/eng-backend-nestjs/SKILL.md +17 -462
  121. package/skills/eng-backend-nestjs/references/1-arquitetura-modulos.md +54 -0
  122. package/skills/eng-backend-nestjs/references/2-guards-autenticacao.md +118 -0
  123. package/skills/eng-backend-nestjs/references/3-interceptors-pipes-filters.md +113 -0
  124. package/skills/eng-backend-nestjs/references/4-config-logging.md +61 -0
  125. package/skills/eng-backend-nestjs/references/5-testes.md +83 -0
  126. package/skills/eng-backend-nestjs/references/6-problemas-comuns.md +53 -0
  127. package/skills/eng-backend-rabbitmq/SKILL.md +15 -298
  128. package/skills/eng-backend-rabbitmq/references/1-referencia-endpoints.md +28 -0
  129. package/skills/eng-backend-rabbitmq/references/2-codigo-consumer-producer.md +90 -0
  130. package/skills/eng-backend-rabbitmq/references/3-arquiteturas-comuns.md +101 -0
  131. package/skills/eng-backend-rabbitmq/references/4-troubleshooting.md +93 -0
  132. package/skills/eng-data/SKILL.md +271 -0
  133. package/skills/eng-data/references/1-fundamentos-dados.md +24 -0
  134. package/skills/eng-data/references/10-ciencia-dados.md +24 -0
  135. package/skills/eng-data/references/11-dataops-plataforma.md +24 -0
  136. package/skills/eng-data/references/12-seguranca-privacidade.md +24 -0
  137. package/skills/eng-data/references/2-modelagem-dados.md +24 -0
  138. package/skills/eng-data/references/3-bancos-dados.md +24 -0
  139. package/skills/eng-data/references/4-arquitetura-dados.md +24 -0
  140. package/skills/eng-data/references/5-pipelines-integracao.md +24 -0
  141. package/skills/eng-data/references/6-qualidade-dados.md +24 -0
  142. package/skills/eng-data/references/7-governanca-metadados.md +24 -0
  143. package/skills/eng-data/references/8-estatistica-analise.md +24 -0
  144. package/skills/eng-data/references/9-analytics-bi.md +24 -0
  145. package/skills/eng-data/references/especializacoes.md +20 -0
  146. package/skills/eng-frontend/SKILL.md +18 -5
  147. package/skills/eng-frontend/references/13-design-system.md +48 -0
  148. package/skills/eng-frontend/references/14-microfrontend.md +46 -0
  149. package/skills/eng-global-docs-write/SKILL.md +10 -5
  150. package/skills/eng-global-pr/SKILL.md +7 -1
  151. package/skills/eng-global-task-comment/SKILL.md +8 -2
  152. package/skills/eng-platform/SKILL.md +331 -0
  153. package/skills/eng-platform/references/1-fundamentos-sistemas.md +23 -0
  154. package/skills/eng-platform/references/10-resiliencia-arquitetura.md +24 -0
  155. package/skills/eng-platform/references/11-plataforma-devex.md +24 -0
  156. package/skills/eng-platform/references/12-finops-custos.md +24 -0
  157. package/skills/eng-platform/references/13-seguranca-fundamentos.md +26 -0
  158. package/skills/eng-platform/references/14-profiling-performance.md +23 -0
  159. package/skills/eng-platform/references/15-testes-carga-chaos.md +23 -0
  160. package/skills/eng-platform/references/16-cache-multicamada.md +22 -0
  161. package/skills/eng-platform/references/2-redes.md +23 -0
  162. package/skills/eng-platform/references/3-cloud.md +24 -0
  163. package/skills/eng-platform/references/4-iac-automacao.md +24 -0
  164. package/skills/eng-platform/references/5-containers-orquestracao.md +25 -0
  165. package/skills/eng-platform/references/6-cicd-entrega.md +24 -0
  166. package/skills/eng-platform/references/7-observabilidade.md +24 -0
  167. package/skills/eng-platform/references/8-confiabilidade-sre.md +24 -0
  168. package/skills/eng-platform/references/9-seguranca-infra.md +26 -0
  169. package/skills/eng-platform/references/especializacoes.md +34 -0
  170. package/skills/eng-qa/SKILL.md +283 -0
  171. package/skills/eng-qa/references/1-fundamentos-qualidade.md +25 -0
  172. package/skills/eng-qa/references/10-confiabilidade.md +25 -0
  173. package/skills/eng-qa/references/11-seguranca.md +24 -0
  174. package/skills/eng-qa/references/12-acessibilidade.md +24 -0
  175. package/skills/eng-qa/references/13-dados-testes.md +24 -0
  176. package/skills/eng-qa/references/14-gestao-testes-defeitos.md +25 -0
  177. package/skills/eng-qa/references/15-arquitetura-qa.md +25 -0
  178. package/skills/eng-qa/references/2-estrategia-planejamento.md +25 -0
  179. package/skills/eng-qa/references/3-design-testes.md +25 -0
  180. package/skills/eng-qa/references/4-manual-exploratorio.md +24 -0
  181. package/skills/eng-qa/references/5-automacao-testes.md +25 -0
  182. package/skills/eng-qa/references/6-api-integracao.md +25 -0
  183. package/skills/eng-qa/references/7-contrato.md +24 -0
  184. package/skills/eng-qa/references/8-interface-compat-mobile.md +24 -0
  185. package/skills/eng-qa/references/9-performance.md +24 -0
  186. package/skills/eng-qa/references/especializacoes.md +29 -0
  187. package/skills/eng-qa-planner/SKILL.md +264 -0
  188. package/skills/jarvis-context-detect/SKILL.md +7 -1
  189. package/skills/jarvis-context-detect/assets/context-profile-template.md +1 -1
  190. package/skills/jarvis-create-specialization/SKILL.md +14 -0
  191. package/skills/jarvis-docs-central/README.md +31 -28
  192. package/skills/jarvis-docs-central/SKILL.md +11 -5
  193. package/skills/jarvis-docs-index/SKILL.md +10 -2
  194. package/skills/jarvis-evolution-architect/SKILL.md +6 -0
  195. package/skills/jarvis-init/SKILL.md +22 -15
  196. package/skills/jarvis-init/assets/passo-adicionar-stacks.md +47 -18
  197. package/skills/jarvis-list-specializations/SKILL.md +36 -17
  198. package/skills/jarvis-report-issue/SKILL.md +7 -1
  199. package/skills/product-roadmap-report/SKILL.md +8 -0
  200. package/skills/product-specs/SKILL.md +9 -0
  201. package/skills/product-specs-update/SKILL.md +6 -0
  202. package/taxonomy.md +16 -28
  203. package/templates/AGENTS.md +2 -0
  204. package/templates/ENV-template.md +10 -2
  205. package/templates/engineering/qa/qa.sprint-plan-template.md +1 -1
  206. package/templates/engineering/tech-spec-delivery-template.md +179 -0
  207. package/workflows/AGENTS.md +14 -2
  208. package/workflows/README.md +8 -16
  209. package/workflows/all-tools.md +7 -1
  210. package/workflows/engineering/data/data.contract.md +8 -0
  211. package/workflows/engineering/data/data.new-pipeline.md +15 -4
  212. package/workflows/engineering/eng.breakdown-subtasks.md +9 -0
  213. package/workflows/engineering/eng.bug-audit.md +10 -13
  214. package/workflows/engineering/eng.build-tech-spec.md +17 -146
  215. package/workflows/engineering/eng.create-ard-from-code.md +8 -0
  216. package/workflows/engineering/eng.create-ard.md +8 -0
  217. package/workflows/engineering/eng.create-rfc.md +7 -0
  218. package/workflows/engineering/eng.debug.md +5 -21
  219. package/workflows/engineering/eng.docs.md +9 -0
  220. package/workflows/engineering/eng.light-arch.md +7 -0
  221. package/workflows/engineering/eng.plan.md +15 -2
  222. package/workflows/engineering/eng.pr.md +24 -30
  223. package/workflows/engineering/eng.pre-pr.md +33 -15
  224. package/workflows/engineering/eng.review.md +18 -11
  225. package/workflows/engineering/eng.rpa.robot.md +17 -7
  226. package/workflows/engineering/eng.start.md +33 -12
  227. package/workflows/engineering/eng.work.md +25 -17
  228. package/workflows/engineering/frontend/eng.frontend-component.md +7 -0
  229. package/workflows/engineering/frontend/eng.frontend-perf-audit.md +8 -0
  230. package/workflows/engineering/frontend/eng.frontend-review.md +8 -0
  231. package/workflows/engineering/qa/eng.qa-refinement-entry.md +7 -0
  232. package/workflows/engineering/qa/eng.qa-release-signoff.md +6 -0
  233. package/workflows/engineering/qa/eng.qa-sprint-planning.md +7 -1
  234. package/workflows/product/prod.roadmap.preview.md +9 -0
  235. package/workflows/product/prod.spec.ard.md +97 -0
  236. package/workflows/product/prod.spec.breakdown.md +10 -0
  237. package/workflows/product/prod.spec.clarify.md +8 -2
  238. package/workflows/product/prod.spec.discovery.md +11 -1
  239. package/workflows/product/prod.spec.epic.md +8 -0
  240. package/workflows/product/prod.spec.frd.md +7 -0
  241. package/workflows/product/prod.spec.issue.md +6 -0
  242. package/workflows/product/prod.spec.md +15 -1
  243. package/workflows/product/prod.spec.prd.md +7 -0
  244. package/workflows/taxonomy.md +58 -6
  245. package/workflows/warm-up.md +47 -60
  246. package/agents/engineering/eng.cybersecurity.agent.md +0 -488
  247. package/agents/engineering/qa/eng.qa.cypress-specialist.md +0 -109
  248. package/bin/lib/docs/fetch-file.sh +0 -41
  249. package/bin/lib/docs/publish-file.sh +0 -284
  250. package/rules/engineering/eng.downstream-flow-rules.md +0 -297
  251. package/rules/engineering/qa/eng.qa.exploratory-session-rules.md +0 -137
  252. package/rules/engineering/qa/eng.qa.quality-gate-scoring-rules.md +0 -181
  253. package/rules/engineering/qa/eng.qa.tech-spec-validation-criteria-rules.md +0 -120
  254. package/skills/eng-ai-engineer/SKILL.md +0 -297
  255. package/skills/eng-data-bi/SKILL.md +0 -200
  256. package/skills/eng-data-debug/SKILL.md +0 -308
  257. package/skills/eng-data-engineer/SKILL.md +0 -257
  258. package/skills/eng-data-onboard/SKILL.md +0 -311
  259. package/skills/eng-data-orchestrator/SKILL.md +0 -427
  260. package/skills/eng-devops-performance-engineer/SKILL.md +0 -313
  261. package/skills/eng-frontend-design-system/SKILL.md +0 -621
  262. package/skills/eng-frontend-microfrontend/SKILL.md +0 -604
  263. package/skills/eng-global-browser-extension-builder/SKILL.md +0 -386
  264. package/skills/eng-global-jira-comment/SKILL.md +0 -21
  265. package/skills/eng-qa-a11y-audit/SKILL.md +0 -270
  266. package/skills/eng-qa-bug-report/SKILL.md +0 -1089
  267. package/skills/eng-qa-bug-report/TASK_MANAGERS.md +0 -138
  268. package/skills/eng-qa-cypress-e2e/SKILL.md +0 -178
  269. package/skills/eng-qa-dev-guide/SKILL.md +0 -165
  270. package/skills/eng-qa-e2e/SKILL.md +0 -401
  271. package/skills/eng-qa-e2e-spec-writer/SKILL.md +0 -323
  272. package/skills/eng-qa-exploratory/SKILL.md +0 -189
  273. package/skills/eng-qa-gate/SKILL.md +0 -371
  274. package/skills/eng-qa-gate/assets/checklist-validacao.md +0 -291
  275. package/skills/eng-qa-graphql-contract/SKILL.md +0 -257
  276. package/skills/eng-qa-quality-report/SKILL.md +0 -413
  277. package/skills/eng-qa-test-plan/SKILL.md +0 -467
  278. package/skills/eng-qa-testsprite/SKILL.md +0 -326
  279. package/skills/eng-qa-testsprite/references/testsprite-mcp.md +0 -224
  280. package/skills/eng-qa-unit-test/SKILL.md +0 -472
  281. package/skills/eng-scraper/SKILL.md +0 -684
  282. package/skills/eng-scraper-robot-builder/SKILL.md +0 -371
  283. package/skills/eng-security-cybersecurity/SKILL.md +0 -646
  284. package/skills/eng-security-patch/SKILL.md +0 -382
  285. package/skills/eng-security-threat-model/SKILL.md +0 -165
  286. package/skills/eng-security-triage/SKILL.md +0 -270
  287. package/templates/engineering/qa/eng.qa.quality-gate-examples-template.md +0 -311
  288. package/templates/engineering/qa/eng.qa.quality-gate-report-template.md +0 -249
  289. package/templates/engineering/qa/qa.cypress-test-template.md +0 -172
  290. package/templates/engineering/qa/qa.exploratory-session-template.md +0 -148
  291. package/templates/engineering/qa/qa.quality-report-template.md +0 -130
  292. package/workflows/engineering/eng.security-audit.md +0 -312
  293. package/workflows/engineering/eng.security-incident.md +0 -275
  294. package/workflows/engineering/eng.security-pipeline.md +0 -210
  295. package/workflows/engineering/eng.security-review.md +0 -235
  296. package/workflows/engineering/qa/eng.qa-dev-quality-guide.md +0 -51
  297. package/workflows/engineering/qa/eng.qa-e2e-test-generation.md +0 -51
  298. package/workflows/engineering/qa/eng.qa-exploratory-session.md +0 -60
  299. package/workflows/engineering/qa/eng.qa-quality-gate-validation.md +0 -202
  300. package/workflows/engineering/qa/eng.qa-quality-report.md +0 -78
  301. /package/skills/{eng-qa-test-plan → eng-qa-planner}/assets/test-coverage-template.md +0 -0
  302. /package/skills/{eng-qa-test-plan → eng-qa-planner}/assets/test-patterns.md +0 -0
  303. /package/templates/{CDD aplicado a Prompts.md → cdd-aplicado-a-prompts.md} +0 -0
@@ -0,0 +1,264 @@
1
+ ---
2
+ name: eng-qa-planner
3
+ description: >
4
+ Especialização de qa: analisa cobertura de testes da branch atual, identifica lacunas e estrutura
5
+ um plano priorizado para implementar os testes faltantes.
6
+ Trigger: Use quando precisar verificar se o código novo ou modificado possui testes adequados antes do merge.
7
+ argument-hint: "[caminho-opcional]"
8
+ allowed-tools: Read Grep Glob Bash
9
+ license: AGPL-3.0
10
+ metadata:
11
+ author: jarvis-team
12
+ version: "2.0"
13
+ area: qa
14
+ ---
15
+
16
+ # Eng QA Planner - Planejamento de Testes
17
+
18
+ Você é um especialista em planejamento de testes, focado em analisar as mudanças de código na branch atual e identificar lacunas de cobertura.
19
+
20
+ ## Objetivo
21
+
22
+ Garantir que todo código novo ou modificado possua cobertura de testes adequada antes do merge.
23
+
24
+ ## Entrada
25
+
26
+ - `$ARGUMENTS` - (Opcional) Caminho específico ou nome da feature para análise focada
27
+
28
+ ## Recursos
29
+
30
+ - **Base**: [eng-qa](../eng-qa/SKILL.md) — princípios de risco e priorização usados aqui vêm da base
31
+ - **Saída**: `$DOCS_FOLDER/engineering/qa/{task-id}-test_coverage_branch_report.md`
32
+
33
+ ---
34
+
35
+ ## Pré-requisito
36
+
37
+ A branch precisa ter uma base de comparação (`origin/main` ou equivalente) para o `git diff` funcionar:
38
+
39
+ ```bash
40
+ git diff origin/main...HEAD --name-only
41
+ ```
42
+
43
+ ---
44
+
45
+ ## Quando Usar
46
+
47
+ Use esta skill quando:
48
+ - Precisar verificar cobertura de testes antes de um merge/PR
49
+ - Quiser identificar lacunas de testes no código modificado
50
+ - Necessitar de um plano estruturado para implementar testes faltantes
51
+ - Estiver fazendo code review e precisar avaliar a cobertura de testes
52
+
53
+ **NÃO usar quando:**
54
+ - A tarefa é escrever o teste em si (ver a especialização de execução registrada, ex: ferramenta E2E do projeto)
55
+ - Não há diff contra uma base — nesse caso avalie a cobertura do projeto como um todo, não desta skill
56
+
57
+ ---
58
+
59
+ ## Padrões Críticos
60
+
61
+ ### Padrão 1: Sempre analisar o diff primeiro
62
+
63
+ Antes de qualquer análise, obtenha as mudanças da branch:
64
+
65
+ ```bash
66
+ git diff origin/main...HEAD --name-only
67
+ git diff origin/main...HEAD
68
+ git log origin/main..HEAD --oneline
69
+ ```
70
+
71
+ Foque especialmente em:
72
+ - Novas funções/métodos/classes
73
+ - Lógica modificada em código existente
74
+ - Novos endpoints ou interfaces de API
75
+ - Mudanças de configuração
76
+ - Breaking changes
77
+
78
+ ### Padrão 2: Priorizar código crítico
79
+
80
+ Sempre priorize testes para:
81
+ - APIs públicas e endpoints
82
+ - Lógica de negócio e regras de validação
83
+ - Código de autenticação/autorização
84
+ - Manipulação de dados sensíveis
85
+
86
+ ---
87
+
88
+ ## Fluxo de Trabalho
89
+
90
+ ### 1. Mapear código para testes
91
+
92
+ Para cada arquivo alterado, identifique o arquivo de teste correspondente:
93
+
94
+ | Padrão | Exemplo |
95
+ |--------|---------|
96
+ | `[filename].test.[ext]` | `user.test.ts` |
97
+ | `[filename].spec.[ext]` | `user.spec.ts` |
98
+ | `tests/[filename]_test.[ext]` | `tests/user_test.py` |
99
+ | `__tests__/[filename].[ext]` | `__tests__/user.ts` |
100
+ | `test_[filename].[ext]` | `test_user.py` |
101
+
102
+ ### 2. Analisar cobertura existente
103
+
104
+ Para arquivos com testes existentes, verificar:
105
+ - Testes para novas funções/métodos
106
+ - Testes para comportamento modificado
107
+ - Casos de borda da nova lógica
108
+ - Tratamento de erros para novos caminhos
109
+
110
+ ### 3. Identificar lacunas
111
+
112
+ Determinar quais testes estão faltando:
113
+ - Funcionalidades novas sem testes
114
+ - Comportamentos modificados não refletidos
115
+ - Casos de borda ausentes
116
+ - Cenários de erro não cobertos
117
+ - Pontos de integração não testados
118
+
119
+ ### 4. Priorizar por criticidade
120
+
121
+ | Prioridade | Critério |
122
+ |------------|----------|
123
+ | Alta | APIs públicas, lógica de negócio crítica, código de segurança |
124
+ | Média | Utilitários compartilhados, tratamento de erros |
125
+ | Baixa | Código de apresentação, configurações simples |
126
+
127
+ ### 5. Gerar o relatório
128
+
129
+ Gerar arquivo `$DOCS_FOLDER/engineering/qa/{task-id}-test_coverage_branch_report.md`:
130
+
131
+ ```markdown
132
+ # Análise de Cobertura de Testes da Branch
133
+
134
+ ## Informações da Branch
135
+ - **Branch:** [nome]
136
+ - **Base:** main
137
+ - **Arquivos alterados:** [número]
138
+ - **Arquivos com gaps de cobertura:** [número]
139
+
140
+ ## Resumo Executivo
141
+ [Visão geral da cobertura e principais preocupações]
142
+
143
+ ---
144
+
145
+ ## Análise por Arquivo
146
+
147
+ ### 1. `[caminho/do/arquivo.ts]`
148
+
149
+ **Mudanças Realizadas:**
150
+ - [Resumo das mudanças]
151
+
152
+ **Cobertura Atual:**
153
+ - Arquivo de teste: `[caminho]` ou ❌ Não encontrado
154
+ - Status: [✅ Totalmente coberto | ⚠️ Parcialmente coberto | ❌ Não coberto]
155
+
156
+ **Testes Ausentes:**
157
+ - [ ] [Cenário específico]
158
+ - [ ] [Outro cenário]
159
+
160
+ **Prioridade:** [Alta | Média | Baixa]
161
+
162
+ ---
163
+
164
+ ## Plano de Implementação
165
+
166
+ ### Alta Prioridade
167
+
168
+ #### `[arquivo/funcionalidade]`
169
+ - **Arquivo de teste:** `[criar/atualizar em caminho]`
170
+ - **Cenários:**
171
+ 1. [Caso de teste com descrição]
172
+ 2. [Outro caso]
173
+ - **Estrutura sugerida:**
174
+ ```[linguagem]
175
+ describe('[Funcionalidade]', () => {
176
+ it('should [comportamento esperado]', () => {
177
+ // arrange
178
+ // act
179
+ // assert
180
+ });
181
+ });
182
+ ```
183
+
184
+ ### Média Prioridade
185
+ [Mesma estrutura]
186
+
187
+ ### Baixa Prioridade
188
+ [Mesma estrutura]
189
+
190
+ ---
191
+
192
+ ## Estatísticas
193
+
194
+ | Métrica | Valor |
195
+ |---------|-------|
196
+ | Arquivos analisados | X |
197
+ | Com cobertura adequada | X |
198
+ | Precisam de testes | X |
199
+ | Cenários identificados | X |
200
+
201
+ ## Recomendações
202
+
203
+ 1. [Recomendação principal]
204
+ 2. [Outra recomendação]
205
+ ```
206
+
207
+ ### Skills invocados durante a execução do skill
208
+
209
+ | Passo | Skill | Condição |
210
+ |-------|-------|----------|
211
+ | — | Nenhuma — skill autocontida | — |
212
+
213
+ ---
214
+
215
+ ## Regras
216
+
217
+ ### Nunca
218
+ - Reportar código existente não alterado como se fosse gap da branch atual
219
+ - Recomendar teste sem indicar prioridade e cenário concreto
220
+ - Confundir plano/relatório com a implementação do teste em si
221
+
222
+ ### Sempre
223
+ - Analisar apenas arquivos modificados na branch (foco no diff)
224
+ - Priorizar caminhos críticos e casos de borda sobre quantidade de testes
225
+ - Respeitar padrões de teste e helpers já existentes no projeto
226
+ - Gerar o relatório mesmo quando a cobertura já está adequada (declarar isso explicitamente)
227
+
228
+ ---
229
+
230
+ ## Checklist de Conclusão
231
+
232
+ - [ ] Diff da branch analisado (`git diff origin/main...HEAD`)
233
+ - [ ] Cada arquivo alterado mapeado para seu teste correspondente (ou marcado como ausente)
234
+ - [ ] Lacunas priorizadas por criticidade (alta/média/baixa)
235
+ - [ ] Relatório gerado em `$DOCS_FOLDER/engineering/qa/{task-id}-test_coverage_branch_report.md`
236
+
237
+ ---
238
+
239
+ ## Output
240
+
241
+ | Artefato | Descrição |
242
+ |----------|-----------|
243
+ | `$DOCS_FOLDER/engineering/qa/{task-id}-test_coverage_branch_report.md` | Relatório de cobertura com plano de implementação priorizado |
244
+
245
+ > O artefato é gerado na raiz do projeto ou no diretório especificado em `$ARGUMENTS`.
246
+
247
+ ---
248
+
249
+ ## Mensagem de Conclusão
250
+
251
+ ```
252
+ Planejamento de testes concluído!
253
+
254
+ Branch: {nome da branch}
255
+ Arquivos analisados: {N}
256
+ Com gaps de cobertura: {N}
257
+
258
+ Prioridade alta: {N} cenários
259
+ Prioridade média: {N} cenários
260
+ Prioridade baixa: {N} cenários
261
+
262
+ Relatório: $DOCS_FOLDER/engineering/qa/{task-id}-test_coverage_branch_report.md
263
+ Próximo passo: implementar os testes do plano ou registrar uma especialização de execução em QA_SPECIALIZATIONS
264
+ ```
@@ -260,6 +260,12 @@ CONTEXT_PROFILE:
260
260
  | feature | * | padrão |
261
261
  | refactor | * | alto |
262
262
 
263
+ ### Skills invocados durante a execução do skill
264
+
265
+ | Passo | Skill | Condição |
266
+ |-------|-------|----------|
267
+ | — | Nenhuma — skill autocontida | — |
268
+
263
269
  ---
264
270
 
265
271
  ## Output
@@ -397,4 +403,4 @@ Se não existir ou for antigo, executar detecção novamente.
397
403
  ## Recursos Adicionais
398
404
 
399
405
  - **Template**: Veja [assets/context-profile-template.md](assets/context-profile-template.md)
400
- - **Documentação CDD**: Veja `$IDE/templates/CDD aplicado a Prompts.md`
406
+ - **Documentação CDD**: Veja `$IDE/templates/cdd-aplicado-a-prompts.md`
@@ -124,4 +124,4 @@ Ou edite manualmente os valores acima e salve o arquivo.
124
124
  ---
125
125
 
126
126
  > Este perfil é usado automaticamente pelos workflows do Framework Jarvis.
127
- > Documentação: `$IDE/templates/CDD aplicado a Prompts.md`
127
+ > Documentação: `$IDE/templates/cdd-aplicado-a-prompts.md`
@@ -26,6 +26,14 @@ Gerar uma especialização **fiel ao código do projeto** e deixá-la ligada sem
26
26
 
27
27
  A especialização **soma-se** à skill base da área (`eng-backend` ou `eng-frontend`) e guarda só o que **depende da stack**. O que continua válido ao trocar de linguagem já está na base e não é repetido.
28
28
 
29
+ > **Por que só backend e frontend**: essas duas áreas têm universo de stack **aberto** — qualquer
30
+ > linguagem ou framework novo pode aparecer num projeto, então faz sentido ler o código e gerar
31
+ > uma especialização sob demanda. QA, data, automation e platform têm um **conjunto fixo** de
32
+ > especializações pré-construídas pelo framework (sem `metadata.stack`); registrar uma delas é
33
+ > só listar e marcar no `ENV.md` — não há o que detectar por código nem gerar. Ver
34
+ > `$IDE/skills/jarvis-list-specializations/SKILL.md` para listar/registrar as especializações
35
+ > dessas 4 áreas, e o passo 9 do `/jarvis-init` para o mesmo fluxo durante o onboarding.
36
+
29
37
  ## Entrada
30
38
 
31
39
  - `$ARGUMENTS` - (Opcional) `[backend|frontend] [stack]`, por exemplo `backend golang`. O que faltar, pergunte (uma pergunta por vez).
@@ -151,6 +159,12 @@ awk 'BEGIN{fm=0} /^---[[:space:]]*$/{fm++; next} fm==1 && /^name:/{n=$2} fm==1 &
151
159
  3. Edite **só a linha dessa variável** (nunca outra linha do `ENV.md`) e **releia** o `ENV.md` para confirmar o resultado
152
160
  4. Se a gravação da lista falhar (skill gravado, lista não): diga que o skill existe mas **não** está registrado e mostre a linha a acrescentar à mão. **Nunca** registre um skill que não foi gravado
153
161
 
162
+ ### Skills invocados durante a execução do skill
163
+
164
+ | Passo | Skill | Condição |
165
+ |-------|-------|----------|
166
+ | — | Nenhuma — skill autocontida | — |
167
+
154
168
  ---
155
169
 
156
170
  ## Regras
@@ -25,7 +25,7 @@ Esta skill permite:
25
25
  CENTRAL_DOCS_REPO=https://gitlab.com/org/group/central-docs.git
26
26
  CENTRAL_DOCS_REF=main
27
27
  CENTRAL_DOCS_TARGET_BRANCH=dev
28
- SQUAD=squad-driver
28
+ SQUAD=core
29
29
  WORKSPACE=meu-workspace
30
30
  ```
31
31
 
@@ -60,9 +60,9 @@ jarvis docs publish \
60
60
 
61
61
  # Publicar PRD
62
62
  jarvis docs publish \
63
- --file ./docs/product/prd-gestao-condutores.md \
63
+ --file ./docs/product/prd-gestao-carteiras.md \
64
64
  --tipo prd \
65
- --feature gestao-condutores
65
+ --feature gestao-carteiras
66
66
 
67
67
  # Publicar Swagger/OpenAPI (YAML)
68
68
  jarvis docs publish \
@@ -75,7 +75,7 @@ jarvis docs publish \
75
75
  --file ./docs/engineering/ard-api-wallet.md \
76
76
  --tipo ard \
77
77
  --feature api-wallet-auth-jwt \
78
- --squad squad-driver \
78
+ --squad core \
79
79
  --workspace meu-workspace
80
80
  ```
81
81
 
@@ -102,16 +102,16 @@ central-docs/
102
102
 
103
103
  ```
104
104
  central-docs/
105
- └── drivers/
105
+ └── core/
106
106
  ├── index.md
107
107
  ├── product/
108
- │ └── gestao-de-condutores/
109
- │ ├── prd-gestao-condutores.md
110
- │ └── frd-gestao-condutores-onboarding.md
108
+ │ └── gestao-de-carteiras/
109
+ │ ├── prd-gestao-carteiras.md
110
+ │ └── frd-gestao-carteiras-onboarding.md
111
111
  └── engineering/
112
- └── drivers-api/
113
- ├── ard-drivers-api.md
114
- └── rfc-drivers-api-idempotencia.md
112
+ └── api-wallet/
113
+ ├── ard-api-wallet.md
114
+ └── rfc-api-wallet-idempotencia.md
115
115
  ```
116
116
 
117
117
  ## Formato do index.md
@@ -119,19 +119,19 @@ central-docs/
119
119
  O `index.md` fica na raiz do squad (`{squad}/index.md`) e lista todos os documentos organizados por área e produto:
120
120
 
121
121
  ```markdown
122
- # squad-driver
122
+ # core
123
123
 
124
124
  ## product
125
125
 
126
- ### gestao-de-condutores
127
- - [prd-gestao-condutores.md](product/gestao-de-condutores/prd-gestao-condutores.md) | v1.2.0 | in_progress | jira: DRV-001 | tags: condutores,onboarding
128
- - [frd-gestao-condutores-onboarding.md](product/gestao-de-condutores/frd-gestao-condutores-onboarding.md) | v1.0.0 | in_review | jira: DRV-123 | tags: onboarding,cadastro
126
+ ### gestao-de-carteiras
127
+ - [prd-gestao-carteiras.md](product/gestao-de-carteiras/prd-gestao-carteiras.md) | v1.2.0 | in_progress | jira: WAL-001 | tags: carteiras,onboarding
128
+ - [frd-gestao-carteiras-onboarding.md](product/gestao-de-carteiras/frd-gestao-carteiras-onboarding.md) | v1.0.0 | in_review | jira: WAL-123 | tags: onboarding,cadastro
129
129
 
130
130
  ## engineering
131
131
 
132
- ### drivers-api
133
- - [ard-drivers-api.md](engineering/drivers-api/ard-drivers-api.md) | v2.1 | Finalizada | tags: arquitetura,rest,api
134
- - [rfc-drivers-api-idempotencia.md](engineering/drivers-api/rfc-drivers-api-idempotencia.md) | Accepted | tags: idempotencia,redis
132
+ ### api-wallet
133
+ - [ard-api-wallet.md](engineering/api-wallet/ard-api-wallet.md) | v2.1 | Finalizada | tags: arquitetura,rest,api
134
+ - [rfc-api-wallet-idempotencia.md](engineering/api-wallet/rfc-api-wallet-idempotencia.md) | Accepted | tags: idempotencia,redis
135
135
  ```
136
136
 
137
137
  ## Frontmatter Obrigatório
@@ -141,11 +141,11 @@ O `index.md` fica na raiz do squad (`{squad}/index.md`) e lista todos os documen
141
141
  ```yaml
142
142
  ---
143
143
  id: PRD-001
144
- name: Gestão de Condutores
144
+ name: Gestão de Carteiras
145
145
  version: 1.2.0
146
146
  status: in_progress
147
- task_link: https://jira.com/DRV-001
148
- related_repo: drivers-api,drivers-worker
147
+ task_link: https://jira.com/WAL-001
148
+ related_repo: api-wallet,wallet-worker
149
149
  ---
150
150
  ```
151
151
 
@@ -199,7 +199,7 @@ Detecta docs desatualizados e oferece publicação.
199
199
  ### Arquivo não encontrado
200
200
 
201
201
  ```
202
- ❌ Arquivo não encontrado no central-docs: squad-driver/index.md
202
+ ❌ Arquivo não encontrado no central-docs: core/index.md
203
203
  ```
204
204
 
205
205
  **Solução:** Verificar se o squad existe no central-docs ou criar o `index.md` do squad.
@@ -227,10 +227,13 @@ bin/
227
227
  ├── utils/
228
228
  │ ├── npmrc-parser.js # Extrai token do .npmrc
229
229
  │ └── git-parser.js # Parseia URL GitLab
230
+ ├── vcs/
231
+ │ └── api.js # fetchRawFile/createMergeRequest/commitFiles — GitLab/GitHub/Bitbucket
230
232
  └── docs/
231
233
  ├── validate-frontmatter.js # Valida YAML
232
- ├── fetch-file.sh # Busca via API (cache redis-cli opcional)
233
- └── publish-file.sh # Publica via API + MR
234
+ ├── redis-cache.js # Cache best-effort via redis-cli (get/setex/del)
235
+ ├── fetch-file.js # Busca via vcs/api.js — CLI: jarvis docs fetch
236
+ └── publish-file.js # Publica via vcs/api.js + MR — CLI: jarvis docs publish
234
237
  ```
235
238
 
236
239
  ### Fluxo de Publicação
@@ -280,7 +283,7 @@ jarvis docs sync
280
283
 
281
284
  ```bash
282
285
  # 1. Criar ARD localmente
283
- cat > docs/engineering/ard-drivers-api-auth.md << EOF
286
+ cat > docs/engineering/ard-api-wallet-auth.md << EOF
284
287
  ---
285
288
  Status: Proposta
286
289
  Data: 2026-03-10
@@ -295,12 +298,12 @@ EOF
295
298
 
296
299
  # 2. Publicar
297
300
  jarvis docs publish \
298
- --file docs/engineering/ard-drivers-api-auth.md \
301
+ --file docs/engineering/ard-api-wallet-auth.md \
299
302
  --tipo ard \
300
- --feature drivers-api-auth
303
+ --feature api-wallet-auth
301
304
 
302
305
  # 3. Resultado
303
- # ✅ MR criado: docs/squad-driver/engineering/drivers-api/ard-drivers-api-auth → dev
306
+ # ✅ MR criado: docs/core/engineering/api-wallet/ard-api-wallet-auth → dev
304
307
  # URL: https://gitlab.com/.../merge_requests/42
305
308
  ```
306
309
 
@@ -145,8 +145,8 @@ O CI (`.gitlab-ci.yml`) **falha** se o `index.md` commitado divergir do que o sc
145
145
  ```bash
146
146
  jarvis docs sync
147
147
 
148
- # Internamente executa:
149
- bash bin/lib/docs/fetch-file.sh "${SQUAD}/index.md" "${CENTRAL_DOCS_REF}"
148
+ # Internamente chama fetchFile() de bin/lib/docs/fetch-file.js, equivalente a:
149
+ jarvis docs fetch "${SQUAD}/index.md" "${CENTRAL_DOCS_REF}"
150
150
  ```
151
151
 
152
152
  **Passo 1.b — Fallback: navegar árvore (quando index.md não existe)**
@@ -180,8 +180,8 @@ Com base no contexto da tarefa (`TASK_MANAGER_KEY`, tags, descrição):
180
180
  **Passo 3 — Buscar arquivos identificados**
181
181
 
182
182
  ```bash
183
- bash bin/lib/docs/fetch-file.sh "${SQUAD}/product/${WORKSPACE}/prd-feature.md" "main"
184
- bash bin/lib/docs/fetch-file.sh "${SQUAD}/engineering/${WORKSPACE}/ard-feature.md" "main"
183
+ jarvis docs fetch "${SQUAD}/product/${WORKSPACE}/prd-feature.md" "main"
184
+ jarvis docs fetch "${SQUAD}/engineering/${WORKSPACE}/ard-feature.md" "main"
185
185
  ```
186
186
 
187
187
  **Passo 4 — Retornar resultado**
@@ -284,6 +284,12 @@ URL: {url do MR/PR retornada pelo adapter}
284
284
  URL: {CENTRAL_DOCS_REPO}/-/merge_requests/44
285
285
  ```
286
286
 
287
+ ### Skills invocados durante a execução do skill
288
+
289
+ | Passo | Skill | Condição |
290
+ |-------|-------|----------|
291
+ | — | Nenhuma — skill autocontida | — |
292
+
287
293
  ---
288
294
 
289
295
  ## Regras
@@ -296,7 +302,7 @@ URL: {url do MR/PR retornada pelo adapter}
296
302
  - Inventar metadados (version, status, id)
297
303
  - Editar `{SQUAD}/index.md` manualmente — sempre via `build-index.sh`
298
304
  - Usar path em campos `related_*` — sempre basename apenas
299
- - Usar formato `squad-driver` — sempre ALL-CAPS-COM-HIFEN: `MEU-SQUAD`
305
+ - Usar squad em minúsculas (ex: `core`) — sempre ALL-CAPS-COM-HIFEN: `MEU-SQUAD`
300
306
  - Criar subpastas `engineering/index.md` ou `product/index.md` (não existem neste repo)
301
307
 
302
308
  ### Sempre
@@ -334,8 +334,16 @@ Além do índice, gerar relatório de saúde:
334
334
 
335
335
  ## Integração com Outros Skills
336
336
 
337
- - **docs-write**: Após criar/atualizar documentação, rodar `jarvis-docs-index` para atualizar índice
338
- - **arch-c4**: Incluir diagramas C4 na seção de Arquitetura do índice
337
+ ### Skills invocados durante a execução do skill
338
+
339
+ | Passo | Skill | Condição |
340
+ |-------|-------|----------|
341
+ | — | Nenhuma — skill autocontida | — |
342
+
343
+ Relações com outras skills (não são chamadas do fluxo):
344
+
345
+ - `eng-global-docs-write`: após criar ou atualizar documentação, rodar `jarvis-docs-index` para atualizar o índice
346
+ - `eng-backend-arch-c4`: incluir diagramas C4 na seção de Arquitetura do índice
339
347
 
340
348
  ---
341
349
 
@@ -358,6 +358,12 @@ Recomendação arquitetural
358
358
  - Vídeos
359
359
  - Opiniões sem fonte
360
360
 
361
+ ### Skills invocados durante a execução do skill
362
+
363
+ | Passo | Skill | Condição |
364
+ |-------|-------|----------|
365
+ | — | Nenhuma — skill autocontida | — |
366
+
361
367
  ---
362
368
 
363
369
  ## 🎯 Entrada Típica
@@ -234,7 +234,7 @@ Fluxo correto:
234
234
  3. Se `HUB≠DATA`: remover o bloco DATA_* inteiro
235
235
  4. Garantir `SESSIONS_DIR=.jarvis/sessions` e `JARVIS_PROJECT=https://github.com/phelipperibeiro/jarvis-framework` (ou URL que o usuário informar)
236
236
  5. Escrever `$IDE/ENV.md` com o restante do template (incluindo variáveis vazias)
237
- 6. As chaves `BACKEND_SPECIALIZATIONS` e `FRONTEND_SPECIALIZATIONS` ficam **vazias**: não são perguntadas aqui. O registro de especializações é feito no **passo 9 (adicionar as stacks)**, ou depois, a qualquer momento: consulta com `jarvis-list-specializations` e criação com `jarvis-create-specialization`.
237
+ 6. As 6 chaves de especialização ficam **vazias**, exceto `QA_SPECIALIZATIONS`, que vem com `eng-qa-planner` (único hoje, pré-registrado por padrão — ver `templates/ENV-template.md`): não são perguntadas aqui. O registro/ajuste é feito no **passo 9 (adicionar as stacks)**, ou depois, a qualquer momento: consulta com `jarvis-list-specializations` e criação com `jarvis-create-specialization` (só backend/frontend).
238
238
 
239
239
  ### 3. Coletar Variáveis Obrigatórias
240
240
 
@@ -908,13 +908,13 @@ Se não existir na raiz do projeto:
908
908
 
909
909
  **Executar após gravar o ENV.md** (nos fluxos create, update B e upgrade C).
910
910
 
911
- Objetivo: garantir que `$IDE/rules/` contenha apenas as rules relevantes para o perfil do usuário, reduzindo tokens carregados em sessão.
911
+ Objetivo: garantir que `$IDE/rules/` e `$IDE/rules-on-demand/` contenham apenas as rules relevantes para o perfil do usuário, reduzindo tokens carregados em sessão. A pasta `rules/` é carregada no início da sessão; a `rules-on-demand/` guarda as rules de uma etapa só, que cada workflow lê quando precisa (o Claude Code não a carrega sozinho). O filtro é o mesmo nas duas pastas, e `bin/lib/core/profile-filter.js` o espelha em JS (usado por `jarvis tokens`): ao mudar a lógica aqui, mude lá e em `rules/AGENTS.md`.
912
912
 
913
913
  **Passos:**
914
914
 
915
915
  ```
916
916
  1. Ler HUB, POSITION, AREA, SQUAD do ENV.md recém-gravado
917
- 2. Listar todos os arquivos .md em rules/ (recursivo, exceto AGENTS.md)
917
+ 2. Para cada uma das duas pastas (rules/ e rules-on-demand/), listar todos os arquivos .md (recursivo, exceto AGENTS.md)
918
918
  3. Para cada arquivo:
919
919
  a. Ler o bloco `> **Applies to:**` (primeira ocorrência no arquivo)
920
920
  b. Se o bloco não existir → tratar como universal → copiar sempre
@@ -922,8 +922,8 @@ Objetivo: garantir que `$IDE/rules/` contenha apenas as rules relevantes para o
922
922
  d. **Condição especial RTK**: se o arquivo for `rtk-rules.md`,
923
923
  copiar APENAS se `RTK_ENABLED=true` no ENV.md
924
924
  (mesmo que o perfil bata, RTK é opt-in)
925
- e. Se bate com o perfil → copiar para $IDE/rules/ (preservando subpastas)
926
- f. Se não bate → deletar de $IDE/rules/ se existir lá
925
+ e. Se bate com o perfil → copiar para a mesma pasta em $IDE/ (rules/ → $IDE/rules/, rules-on-demand/ → $IDE/rules-on-demand/), preservando subpastas
926
+ f. Se não bate → deletar de $IDE/ se existir lá
927
927
  4. Exibir resumo ao usuário
928
928
  ```
929
929
 
@@ -976,8 +976,9 @@ function parseAppliesTo(fileContent) {
976
976
  ```bash
977
977
  # Exemplo: rules/engineering/qa/eng.qa.quality-gate-scoring-rules.md
978
978
  # Destino: $IDE/rules/engineering/qa/eng.qa.quality-gate-scoring-rules.md
979
- mkdir -p "$IDE/rules/$(dirname $relPath)"
980
- cp "rules/$relPath" "$IDE/rules/$relPath"
979
+ # (o mesmo vale para rules-on-demand/ → $IDE/rules-on-demand/)
980
+ mkdir -p "$IDE/$pasta/$(dirname $relPath)"
981
+ cp "$pasta/$relPath" "$IDE/$pasta/$relPath" # $pasta = rules ou rules-on-demand
981
982
  ```
982
983
 
983
984
  **Saída para o usuário:**
@@ -986,7 +987,7 @@ cp "rules/$relPath" "$IDE/rules/$relPath"
986
987
  🔍 Sincronizando rules para o perfil: HUB={HUB} | POSITION={POSITION} | AREA={AREA} | SQUAD={SQUAD}
987
988
 
988
989
  ✅ Rules sincronizadas:
989
- Copiadas : N arquivos
990
+ Copiadas : N arquivos (rules/: N | rules-on-demand/: N)
990
991
  Removidas: N arquivos (não batem com o perfil)
991
992
  Universais: N arquivos (sem applies_to — sempre copiadas)
992
993
  ```
@@ -999,13 +1000,13 @@ cp "rules/$relPath" "$IDE/rules/$relPath"
999
1000
 
1000
1001
  Oferecido sempre que o `ENV.md` fica pronto: criação, atualização, **Upgrade (C)** e o caso "já atualizado". **Não** é oferecido ao cancelar (D). A pessoa pode **pular**; ao pular, as listas ficam como estão e o projeto usa só a skill base.
1001
1002
 
1002
- Trata **somente backend e frontend**. O passo:
1003
+ A **detecção de stack por código e a criação de skill novo** (sub-passos 9.4-9.6) tratam **somente backend e frontend** — são as únicas áreas com universo de stack aberto (qualquer linguagem/framework novo). **Listar o que já está instalado e registrar direto** (sub-passo 9.3) vale para as **6 áreas** com especialização (backend, frontend, qa, data, automation, platform): essas 4 últimas têm um conjunto fixo de skills pré-construídos, sem detecção por código nem criação — só listar e registrar (ver `architecture.md` da #63, Decisão 3.5). O passo:
1003
1004
 
1004
- 1. Confere que `BACKEND_SPECIALIZATIONS` e `FRONTEND_SPECIALIZATIONS` existem (acrescenta vazias se faltarem)
1005
- 2. Lista as especializações instaladas, registradas ou não, e deixa registrar uma direto
1006
- 3. **Lê** o workspace (a análise **só lê**: não altera arquivos do projeto nem as listas), identifica as stacks de backend e de frontend, inclusive de vários projetos, e **mostra o que encontrou antes de sugerir**
1007
- 4. Para cada stack, sugere **registrar o skill que já existe** (mesmo `area` e `stack`) ou **criar um novo** com `/jarvis-create-specialization {área} {stack}`; a pessoa escolhe, e o que não aceita não muda
1008
- 5. Mostra um resumo das listas e do que foi registrado ou criado
1005
+ 1. Confere que as 6 variáveis de especialização existem (acrescenta vazias as que faltarem)
1006
+ 2. Lista as especializações instaladas de todas as 6 áreas, registradas ou não, e deixa registrar qualquer uma direto
1007
+ 3. **Lê** o workspace (a análise **só lê**: não altera arquivos do projeto nem as listas), identifica as stacks de backend e de frontend, inclusive de vários projetos, e **mostra o que encontrou antes de sugerir** (só essas 2 áreas)
1008
+ 4. Para cada stack de backend/frontend, sugere **registrar o skill que já existe** (mesmo `area` e `stack`) ou **criar um novo** com `/jarvis-create-specialization {área} {stack}`; a pessoa escolhe, e o que não aceita não muda
1009
+ 5. Mostra um resumo das 6 listas e do que foi registrado ou criado
1009
1010
 
1010
1011
  O tempo de ~10 minutos é referência, não limite. Nunca leia `.env*`, chaves ou credenciais.
1011
1012
 
@@ -1031,7 +1032,7 @@ O tempo de ~10 minutos é referência, não limite. Nunca leia `.env*`, chaves o
1031
1032
  - Usuário: {USER}
1032
1033
  - Cargo: {POSITION}
1033
1034
  - Limite AI: {MAX_AI_EXECUTION_PERCENTAGE}%
1034
- - Especializações: {BACKEND_SPECIALIZATIONS e FRONTEND_SPECIALIZATIONS, ou "só skill base"}
1035
+ - Especializações: {as 6 variáveis registradas, ou "só skill base" por área}
1035
1036
  - CDD: habilitado
1036
1037
  - JARVIS_PROJECT: {JARVIS_PROJECT}
1037
1038
 
@@ -1064,6 +1065,12 @@ Apresentar checklist de onboarding por período (Dia 1, Semana 1, Mês 1).
1064
1065
 
1065
1066
  > **Checklists detalhados**: Ver `assets/onboarding-checklist.md`
1066
1067
 
1068
+ ### Skills invocados durante a execução do skill
1069
+
1070
+ | Passo | Skill | Condição |
1071
+ |-------|-------|----------|
1072
+ | Passo 9 — Adicionar as stacks (opcional) | `/jarvis-create-specialization {área} {stack}` | Se a pessoa escolher criar um skill novo para uma stack que ainda não tem especialização instalada (uma stack por vez; pular o passo não chama nada) |
1073
+
1067
1074
  ---
1068
1075
 
1069
1076
  ## Validações de Segurança