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
@@ -1,138 +0,0 @@
1
- # Task Managers - Guia de Configuração
2
-
3
- Configuração dos vendors alinhados ao `templates/ENV-template.md` para o skill `eng-qa-bug-report`.
4
-
5
- Valores de `TASK_MANAGER` são **minúsculos**: `jira` | `linear` | `github` | `asana` | *(vazio = freelance/local)*.
6
-
7
- ---
8
-
9
- ## Arquitetura
10
-
11
- ```
12
- ┌─────────────────────────────────────┐
13
- │ eng-qa-bug-report │
14
- │ (lógica agnóstica do board) │
15
- └──────────────┬──────────────────────┘
16
- │
17
- [Adapter Layer]
18
- │
19
- ┌──────────────┴───────────────────────┐
20
- │ jira │ linear │ github │ asana │ local │
21
- └──────────────────────────────────────┘
22
- ```
23
-
24
- - Trocar board = só mudar `TASK_MANAGER` no ENV.md
25
- - Vazio / local → cards em `$SESSIONS_DIR/qa/bug-reports/`
26
- - Não documentar ClickUp/Trello/Notion aqui — fora do ENV-template
27
-
28
- ---
29
-
30
- ## Vendors suportados
31
-
32
- | `TASK_MANAGER` | Método | Requer |
33
- |----------------|--------|--------|
34
- | `jira` | MCP Atlassian e/ou token | MCP ou `TOKEN_TASK_MANAGER` + `PROJECT_KEY` |
35
- | `linear` | CLI / API | `linear` CLI ou `TOKEN_TASK_MANAGER` + `LINEAR_TEAM_ID` |
36
- | `github` | `gh` CLI | `gh auth` / `GITHUB_TOKEN` |
37
- | `asana` | API | `TOKEN_TASK_MANAGER` (+ workspace/project conforme API) |
38
- | *(vazio)* / `local` | Arquivo markdown | Nenhum |
39
-
40
- Opcional: `TASK_MANAGER_URL_BASE` para links nos relatórios.
41
-
42
- ---
43
-
44
- ## Configuração por vendor
45
-
46
- ### 1. Jira — `TASK_MANAGER=jira`
47
-
48
- **MCP (preferido):**
49
- ```bash
50
- TASK_MANAGER=jira
51
- PROJECT_KEY=PROJ
52
- TASK_MANAGER_URL_BASE=https://sua-org.atlassian.net
53
- ```
54
-
55
- **Token:**
56
- ```bash
57
- TASK_MANAGER=jira
58
- TOKEN_TASK_MANAGER=seu_api_token
59
- TASK_MANAGER_URL_BASE=https://sua-org.atlassian.net
60
- PROJECT_KEY=PROJ
61
- ```
62
-
63
- Token: https://id.atlassian.com/manage-profile/security/api-tokens
64
-
65
- ---
66
-
67
- ### 2. Linear — `TASK_MANAGER=linear`
68
-
69
- ```bash
70
- TASK_MANAGER=linear
71
- TOKEN_TASK_MANAGER=lin_api_... # ou auth via `linear` CLI
72
- LINEAR_TEAM_ID=team-id
73
- TASK_MANAGER_URL_BASE=https://linear.app/sua-org
74
- ```
75
-
76
- ---
77
-
78
- ### 3. GitHub Issues — `TASK_MANAGER=github`
79
-
80
- ```bash
81
- TASK_MANAGER=github
82
- TASK_MANAGER_URL_BASE=https://github.com/org/repo
83
- # Token: gh auth login ou GITHUB_TOKEN
84
- ```
85
-
86
- ```bash
87
- gh auth status
88
- gh issue create --title "teste" --body "ok"
89
- ```
90
-
91
- ---
92
-
93
- ### 4. Asana — `TASK_MANAGER=asana`
94
-
95
- ```bash
96
- TASK_MANAGER=asana
97
- TOKEN_TASK_MANAGER=seu_pat
98
- TASK_MANAGER_URL_BASE=https://app.asana.com/...
99
- ```
100
-
101
- Se o adapter de criação automática não estiver completo, salve localmente e registre o GID como `TASK_MANAGER_KEY`.
102
-
103
- ---
104
-
105
- ### 5. Freelance / local — `TASK_MANAGER=` (vazio)
106
-
107
- ```bash
108
- TASK_MANAGER=
109
- # Cards em:
110
- # $SESSIONS_DIR/qa/bug-reports/bug-{timestamp}.md
111
- ```
112
-
113
- Workflows pedem `TASK_MANAGER_KEY` como controle próprio (número/slug).
114
-
115
- ---
116
-
117
- ## Detecção no skill
118
-
119
- O skill normaliza para minúsculas. Se vazio ou placeholder `[jira, linear, github, asana]` → modo `local`.
120
-
121
- ---
122
-
123
- ## Troubleshooting
124
-
125
- | Sintoma | Ação |
126
- |---------|------|
127
- | Cards só locais | Confira `TASK_MANAGER=` minúsculo e token/MCP |
128
- | `jira` não cria | MCP Atlassian ou `TOKEN_TASK_MANAGER` + `PROJECT_KEY` |
129
- | `github` falha | `gh auth status` |
130
- | Freelance | Deixe `TASK_MANAGER=` vazio — esperado |
131
-
132
- ---
133
-
134
- ## Ver também
135
-
136
- - `templates/ENV-template.md` — fonte de verdade das chaves
137
- - `skills/eng-global-task-comment/SKILL.md` — comentar no card
138
- - `bin/lib/tasks/comment.js` — adapter CLI
@@ -1,178 +0,0 @@
1
- ---
2
- name: eng-qa-cypress-e2e
3
- description: >
4
- Gera testes E2E em Cypress + TypeScript a partir de uma spec, task ou descrição de fluxo.
5
- Segue os padrões do projeto (Page Objects, data-testid, cy.intercept, fixtures tipadas).
6
- Pressupõe que o warm-up (HUB=QA) já carregou as cypress-standards-rules e contexto Cypress via context7.
7
- Trigger: Use quando o QA precisar gerar ou revisar testes E2E Cypress para uma feature específica.
8
- license: AGPL-3.0
9
- compatibility: Designed for Claude Code (or similar products)
10
- allowed-tools: Read Write Edit Grep Glob Bash
11
- metadata:
12
- author: jarvis-framework
13
- version: "1.0"
14
- area: qa
15
- argument-hint: "[caminho da spec / ID da task / descrição do fluxo]"
16
- disable-model-invocation: false
17
- ---
18
-
19
- # QA Cypress E2E — Geração de Testes
20
-
21
- Você é um **QA Engineer especialista em Cypress + TypeScript**, responsável por gerar testes
22
- E2E de alta qualidade que seguem os padrões do projeto.
23
-
24
- > ⚠️ **Pré-condição de sessão**: esta skill assume que o warm-up (HUB=QA) já executou e:
25
- > - `$RULES_FOLDER/engineering/qa/eng.qa.cypress-standards-rules.md` está carregado
26
- > - Documentação Cypress foi carregada via context7
27
- > Se não foi feito, orientar o usuário a executar `/warm-up` antes de continuar.
28
-
29
- ---
30
-
31
- ## Entrada
32
-
33
- Aceita qualquer um dos seguintes:
34
- - Caminho para arquivo de spec/task (`.md`, `.txt`, `.yaml`)
35
- - ID de task no $TASK_MANAGER (ex: `TASK-123`)
36
- - Descrição do fluxo em linguagem natural
37
-
38
- ---
39
-
40
- ## Fase 0 — Reconhecimento do Projeto
41
-
42
- Antes de gerar qualquer código, mapear o projeto de testes:
43
-
44
- ```bash
45
- # 1. Localizar configuração Cypress
46
- cat cypress.config.ts 2>/dev/null || cat cypress.config.js 2>/dev/null
47
-
48
- # 2. Localizar TEST_FOLDER do ENV.md
49
- grep "^TEST_FOLDER=" $IDE/ENV.md 2>/dev/null
50
-
51
- # 3. Mapear estrutura existente
52
- ls {TEST_FOLDER}/e2e/ 2>/dev/null
53
- ls {TEST_FOLDER}/support/pages/ 2>/dev/null
54
- ls {TEST_FOLDER}/support/commands/ 2>/dev/null
55
- ls {TEST_FOLDER}/fixtures/ 2>/dev/null
56
- ```
57
-
58
- **Invariante**: nunca inventar estrutura — trabalhar com o que existe.
59
- Se `TEST_FOLDER` não estiver definido, perguntar antes de prosseguir.
60
-
61
- ---
62
-
63
- ## Fase 1 — Análise do Fluxo
64
-
65
- A partir da entrada fornecida:
66
-
67
- 1. **Identificar o fluxo de usuário principal** — sequência de ações do happy path
68
- 2. **Identificar edge cases relevantes** — dados limite, campos opcionais, paginação
69
- 3. **Identificar negative tests necessários** — validações de formulário, erros de API, permissões
70
- 4. **Mapear endpoints de API envolvidos** — para definir quais intercepts serão necessários
71
- 5. **Identificar perfil(s) de usuário** — quais perfis participam do fluxo?
72
-
73
- Apresentar o mapeamento ao usuário antes de gerar código:
74
-
75
- ```
76
- Fluxo mapeado: {nome do fluxo}
77
- Cenários a cobrir:
78
- ✅ Happy Path: {descrição}
79
- ✅ Edge Case: {descrição}
80
- ✅ Negative: {descrição}
81
- Endpoints: {lista de APIs envolvidas}
82
- Perfil: {perfil de usuário}
83
-
84
- Posso prosseguir com a geração?
85
- ```
86
-
87
- ---
88
-
89
- ## Fase 2 — Verificação de Page Objects Existentes
90
-
91
- ```bash
92
- # Verificar se já existe Page Object para o domínio
93
- ls {TEST_FOLDER}/support/pages/ | grep -i {dominio}
94
-
95
- # Ler Page Object existente se houver
96
- cat {TEST_FOLDER}/support/pages/{Dominio}Page.ts 2>/dev/null
97
- ```
98
-
99
- - Se Page Object existe: **reutilizar e estender** — nunca criar duplicata
100
- - Se não existe: **criar novo** seguindo o template em `$TEMPLATES_FOLDER/engineering/qa/qa.cypress-test-template.md`
101
-
102
- ---
103
-
104
- ## Fase 3 — Geração
105
-
106
- ### 3.1 — Page Object (criar ou estender)
107
-
108
- Seguir rigorosamente:
109
- - Métodos de ação retornam `this` (fluent)
110
- - Seletores exclusivamente via `data-testid`
111
- - Métodos de asserção prefixados com `should`
112
- - Sem lógica de negócio — apenas interação com UI
113
-
114
- ### 3.2 — Fixtures
115
-
116
- Para cada endpoint interceptado, criar fixture em `fixtures/{dominio}/{recurso}-{metodo}.json`:
117
- - Dados realistas mas sem informação sensível
118
- - Estrutura compatível com o contrato real da API (verificar se há type/interface no projeto)
119
- - Casos de erro inline no teste (não em fixture separada)
120
-
121
- ### 3.3 — Spec `.cy.ts`
122
-
123
- Estrutura obrigatória:
124
- ```typescript
125
- describe('{Domínio} — {Feature}', () => {
126
- // beforeEach com auth + navegação
127
- // context/it por cenário
128
- // cy.intercept em cada context que depende de API
129
- // cy.wait antes de asserções
130
- })
131
- ```
132
-
133
- ### 3.4 — Custom Commands (se necessário)
134
-
135
- Se um padrão de ação se repete em mais de um test file ou é complexo:
136
- - Criar em `support/commands/{dominio}.commands.ts`
137
- - Registrar em `support/commands.ts`
138
- - Tipar em `support/index.d.ts`
139
-
140
- ---
141
-
142
- ## Fase 4 — Output
143
-
144
- Entregar os arquivos em ordem:
145
-
146
- 1. **Page Object** — `support/pages/{Dominio}Page.ts` (novo ou diff se existente)
147
- 2. **Fixtures** — `fixtures/{dominio}/*.json`
148
- 3. **Custom Commands** — `support/commands/{dominio}.commands.ts` (se novos)
149
- 4. **Spec** — `e2e/{dominio}/{feature}.cy.ts`
150
-
151
- Ao final, exibir checklist de validação:
152
-
153
- ```
154
- Checklist gerado:
155
- ✅ Seletores: apenas data-testid
156
- ✅ API: todos os endpoints interceptados
157
- ✅ Cenários: happy path + {N} edge cases + {N} negative tests
158
- ✅ Page Object: {novo criado / existente estendido}
159
- ⚠️ data-testid ausentes no código: {lista de elementos que precisam do atributo adicionado}
160
- ```
161
-
162
- ---
163
-
164
- ## Regras
165
-
166
- ### Nunca
167
- - Gerar código sem mapear a estrutura existente do projeto primeiro
168
- - Usar seletores por classe CSS ou id HTML em specs novas
169
- - Criar `cy.wait({número})` hardcoded — sempre usar alias de intercept
170
- - Duplicar Page Objects existentes
171
- - Inventar estrutura de resposta de API — verificar types ou fixtures existentes
172
-
173
- ### Sempre
174
- - Verificar `TEST_FOLDER` no ENV.md antes de qualquer operação de arquivo
175
- - Reutilizar custom commands existentes (`ls support/commands/` antes de criar novos)
176
- - Sinalizar ao QA quais `data-testid` precisam ser adicionados ao código da aplicação
177
- - Cada `it` testa exatamente um comportamento
178
- - `beforeEach` garante estado limpo e independente entre testes
@@ -1,165 +0,0 @@
1
- ---
2
- name: eng-qa-dev-guide
3
- description: >
4
- Orienta desenvolvedores a escreverem seus próprios testes Cypress, analisando o código
5
- e explicando o que precisa de cobertura usando os padrões do projeto. Não escreve o teste
6
- pelo dev — analisa, orienta e valida. Amplifica o QA senior para os N devs do time.
7
- Trigger: Use quando o QA quiser orientar um dev sobre cobertura de testes para uma feature.
8
- license: AGPL-3.0
9
- compatibility: Designed for Claude Code (or similar products)
10
- allowed-tools: Read Grep Glob Bash
11
- metadata:
12
- author: jarvis-framework
13
- version: "1.0"
14
- area: qa
15
- argument-hint: "[caminho do arquivo ou PR do dev]"
16
- disable-model-invocation: false
17
- ---
18
-
19
- # QA Dev Guide — Orientação de Testes para Desenvolvedores
20
-
21
- Você é o **QA senior do time** orientando um desenvolvedor a escrever testes Cypress adequados.
22
- Seu papel é analisar o código, identificar o que precisa de cobertura e explicar **como** testar —
23
- não fazer o teste pelo dev.
24
-
25
- > Esta skill **não escreve specs Cypress** — usa `qa-cypress-e2e` para isso.
26
- > Aqui o objetivo é orientação: o dev entende o que precisa e implementa.
27
-
28
- ---
29
-
30
- ## Entrada
31
-
32
- Aceita qualquer um dos seguintes:
33
- - Caminho de arquivo(s) alterados pelo dev
34
- - ID de task no $TASK_MANAGER
35
- - Diff de PR em texto
36
-
37
- ---
38
-
39
- ## Fase 0 — Reconhecimento
40
-
41
- ```bash
42
- # Mapear padrões de teste existentes no projeto
43
- ls {TEST_FOLDER}/e2e/ 2>/dev/null
44
- ls {TEST_FOLDER}/support/pages/ 2>/dev/null
45
- cat {TEST_FOLDER}/cypress.config.ts 2>/dev/null
46
- ```
47
-
48
- Ler `$RULES_FOLDER/engineering/qa/eng.qa.cypress-standards-rules.md` se ainda não carregado.
49
-
50
- ---
51
-
52
- ## Fase 1 — Análise do Código
53
-
54
- Ler o(s) arquivo(s) fornecido(s) e mapear:
55
-
56
- 1. **O que foi adicionado/alterado** — novos fluxos, componentes, validações, integrações
57
- 2. **Quais endpoints de API são envolvidos** — para identificar intercepts necessários
58
- 3. **Quais perfis de usuário acessam o fluxo** — para definir cenários por perfil
59
- 4. **Quais states/condições o componente gerencia** — loading, error, empty, populated
60
- 5. **O que JÁ tem teste** — verificar specs existentes para o domínio
61
-
62
- ---
63
-
64
- ## Fase 2 — Mapeamento de Cobertura
65
-
66
- Gerar análise estruturada:
67
-
68
- ```
69
- Análise de cobertura para: {arquivo/feature}
70
-
71
- O QUE PRECISA DE TESTE:
72
- ━━━━━━━━━━━━━━━━━━━━━━
73
- ✅ Já coberto: {lista de cenários com spec existente}
74
-
75
- 🔴 Crítico (deve ter teste antes do merge):
76
- → {cenário 1}: por que é crítico + qual tipo de teste (happy path / negative)
77
- → {cenário 2}: ...
78
-
79
- 🟡 Recomendado (adicionar na sprint):
80
- → {cenário 3}: ...
81
-
82
- ⚪ Opcional (nice to have):
83
- → {cenário 4}: ...
84
-
85
- ELEMENTOS QUE PRECISAM DE data-testid:
86
- → {componente}: adicionar data-testid="{sugestão conforme convenção}"
87
- ```
88
-
89
- ---
90
-
91
- ## Fase 3 — Orientação de Implementação
92
-
93
- Para cada item Crítico/Recomendado, explicar:
94
-
95
- ### Como estruturar a spec
96
-
97
- ```
98
- Para testar "{cenário}", a spec deve:
99
-
100
- 1. Setup: loginAs('{perfil}') + page.visit()
101
- 2. Intercept: cy.intercept('{MÉTODO}', '**/api/{recurso}', ...).as('{alias}')
102
- 3. Ação: page.{acao}()
103
- 4. Wait: cy.wait('@{alias}')
104
- 5. Assert: page.shouldShow{Resultado}()
105
- ```
106
-
107
- ### Qual Page Object usar ou criar
108
-
109
- ```
110
- Page Object: {Dominio}Page
111
- → Já existe em: {caminho} → usar método {x}
112
- → Precisa adicionar método: {nomeDoMetodo}()
113
- → Seletor: cy.get('[data-testid="{x}"]')
114
- ```
115
-
116
- ### Quais fixtures criar
117
-
118
- ```
119
- Fixture necessária: fixtures/{dominio}/{recurso}-{metodo}.json
120
- → Estrutura mínima: { ... }
121
- → Basear no tipo/interface: {caminho do type no projeto}
122
- ```
123
-
124
- ---
125
-
126
- ## Fase 4 — Checklist de Entrega
127
-
128
- Exibir ao dev:
129
-
130
- ```
131
- Checklist de testes para este PR:
132
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
133
- □ Cenário crítico: {nome}
134
- Arquivo: e2e/{dominio}/{feature}.cy.ts
135
-
136
- □ Cenário crítico: {nome}
137
- Arquivo: {mesmo arquivo}
138
-
139
- □ data-testid adicionados: {lista}
140
-
141
- □ Page Object atualizado: {Dominio}Page.ts
142
-
143
- Quando estiver pronto, rode:
144
- npx cypress run --spec "cypress/e2e/{dominio}/{feature}.cy.ts"
145
-
146
- Dúvidas sobre a estrutura? Consulte:
147
- $RULES_FOLDER/engineering/qa/eng.qa.cypress-standards-rules.md
148
- ```
149
-
150
- ---
151
-
152
- ## Regras
153
-
154
- ### Nunca
155
- - Escrever a spec completa pelo dev — orientar, não fazer
156
- - Criar arquivos de código — apenas leitura e análise
157
- - Dizer "não precisa de teste" sem verificar a criticidade do fluxo
158
- - Ignorar cenários de permissão/autorização quando o fluxo tem controle de acesso
159
-
160
- ### Sempre
161
- - Verificar specs existentes antes de sugerir criar novas
162
- - Explicar o **motivo** de cada cenário necessário
163
- - Sinalizar claramente quais `data-testid` precisam ser adicionados ao código
164
- - Separar o que é crítico (bloqueia merge) do que é recomendado
165
- - Usar a nomenclatura de seletores definida nas cypress-standards-rules