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,326 +0,0 @@
1
- ---
2
- name: eng-qa-testsprite
3
- description: >
4
- Executa testes automatizados usando TestSprite MCP Server para frontend e backend.
5
- Trigger: Use quando precisar gerar e executar testes automatizados com TestSprite, validar cobertura de testes ou criar planos de teste.
6
- argument-hint: "[frontend|backend|diff|codebase]"
7
- disable-model-invocation: false
8
- allowed-tools: Read Write Edit Grep Glob Bash mcp__TestSprite__testsprite_bootstrap mcp__TestSprite__testsprite_generate_code_summary mcp__TestSprite__testsprite_generate_standardized_prd mcp__TestSprite__testsprite_generate_frontend_test_plan mcp__TestSprite__testsprite_generate_backend_test_plan mcp__TestSprite__testsprite_generate_code_and_execute mcp__TestSprite__testsprite_rerun_tests
9
- license: AGPL-3.0
10
- metadata:
11
- author: jarvis-team
12
- version: "1.0"
13
- area: qa
14
- ---
15
-
16
- # QA TestSprite - Testes Automatizados
17
-
18
- Você é um **especialista em testes automatizados** usando o TestSprite MCP Server para gerar e executar testes de forma autônoma.
19
-
20
- ## Objetivo
21
-
22
- Automatizar a geração e execução de testes para projetos frontend e backend, utilizando o TestSprite para criar planos de teste abrangentes e scripts executáveis.
23
-
24
- ## Entrada
25
-
26
- - `$ARGUMENTS` - Tipo de teste: `frontend`, `backend`, `diff` (mudanças recentes) ou `codebase` (projeto completo)
27
-
28
- ## Recursos
29
-
30
- - **Referência (local)**: `$IDE/skills/qa-testsprite/references/testsprite-mcp.md`
31
- - **Documentação oficial (backup)**: https://docs.testsprite.com/mcp/getting-started/overview
32
- - **Saída**: Relatório de testes em markdown + scripts de teste gerados pelo TestSprite
33
-
34
- ---
35
-
36
- ## Pré-requisito
37
-
38
- Verificar se o `ENV.md` existe e está preenchido corretamente. Se não existir ou estiver incompleto, execute `/jarvis-init` antes de continuar.
39
-
40
- **Requisitos do projeto:**
41
- - Frontend: React, Vue, Angular, Svelte, Next.js, Vite ou vanilla JS/TS
42
- - Backend: Node.js, Python, Java, Go, Express.js, FastAPI, Spring Boot, REST ou GraphQL
43
-
44
- ---
45
-
46
- ## Quando Usar
47
-
48
- Use este skill quando:
49
- - Precisar gerar testes automatizados para o projeto
50
- - Quiser validar cobertura de testes existente
51
- - Necessitar de plano de testes abrangente
52
- - Testar mudanças recentes (diff) antes de commit/PR
53
- - Validar qualidade do código com testes E2E
54
-
55
- **NÃO usar quando:**
56
- - Projeto não tem frontend/backend suportado
57
- - Necessitar apenas de testes unitários simples (use qa-unit-test)
58
- - Ambiente local não está configurado para rodar o projeto
59
-
60
- ---
61
-
62
- ## Validação de Entrada
63
-
64
- ```
65
- Se $ARGUMENTS está vazio:
66
- → Perguntar: "Qual tipo de teste deseja executar?"
67
- → Opções: frontend, backend, diff, codebase
68
- → Usar resposta como $ARGUMENTS
69
-
70
- Se $ARGUMENTS não é válido:
71
- → Exibir: "⚠️ Tipo inválido. Use: frontend, backend, diff ou codebase"
72
- → Encerrar execução
73
- ```
74
-
75
- ---
76
-
77
- ## Padrões Críticos
78
-
79
- ### Padrão 1: Determinar porta local do projeto
80
-
81
- Antes de executar `testsprite_bootstrap`, identificar a porta local:
82
-
83
- ```
84
- Verificar em ordem:
85
- 1. package.json scripts (dev/start) → porta no comando
86
- 2. vite.config.js/ts → server.port
87
- 3. next.config.js → porta padrão 3000
88
- 4. Dockerfile → EXPOSE
89
- 5. .env → PORT variável
90
- 6. Padrão: 5173 (Vite) ou 3000 (Next/Express)
91
- ```
92
-
93
- ### Padrão 2: Fluxo sequencial obrigatório
94
-
95
- O TestSprite requer execução em ordem específica:
96
-
97
- ```
98
- 1. testsprite_bootstrap → Inicializa ambiente
99
- 2. testsprite_generate_code_summary → Analisa codebase
100
- 3. testsprite_generate_standardized_prd → Gera PRD normalizado
101
- 4. testsprite_generate_*_test_plan → Cria plano de testes
102
- 5. testsprite_generate_code_and_execute → Executa testes
103
- ```
104
-
105
- ### Padrão 3: Escopo correto para diff vs codebase
106
-
107
- ```
108
- diff → Testa mudanças recentes do seu trabalho (git)
109
- codebase → Testa projeto completo
110
- ```
111
-
112
- Observação: o comportamento exato de "diff" pode variar (staged vs uncommitted). Se houver dúvida, pergunte ao usuário qual estado do Git deve ser considerado e ajuste o preparo da branch antes de executar.
113
-
114
- ---
115
-
116
- ## Árvore de Decisão
117
-
118
- ```
119
- Argumento é "frontend"? → Usar testsprite_generate_frontend_test_plan
120
- Argumento é "backend"? → Usar testsprite_generate_backend_test_plan
121
- Argumento é "diff"? → testScope: "diff"
122
- Argumento é "codebase"? → testScope: "codebase"
123
- Sem argumento? → Perguntar ao usuário
124
- ```
125
-
126
- ### Quando rodar Frontend + Backend juntos
127
-
128
- Execute ambos os tipos quando:
129
- - O fluxo é ponta-a-ponta (UI chama API) e você quer diagnóstico mais rápido
130
- - Existem regras de auth e modelos de dados compartilhados entre UI e API
131
- - O problema pode estar em contrato/payloads/status codes (API), mas se manifesta na UI
132
-
133
- ---
134
-
135
- ## Fluxo de Trabalho
136
-
137
- ### 1. Identificar Tipo de Projeto
138
-
139
- Analisar estrutura para determinar se é frontend ou backend:
140
-
141
- ```bash
142
- # Frontend indicators
143
- ls package.json src/App.* src/main.* pages/ app/
144
-
145
- # Backend indicators
146
- ls server.* app.py main.go routes/ controllers/
147
- ```
148
-
149
- ### 2. Determinar Porta Local
150
-
151
- ```bash
152
- # Verificar package.json
153
- grep -E "\"(dev|start)\":" package.json
154
-
155
- # Verificar vite.config
156
- grep "port" vite.config.*
157
-
158
- # Verificar .env
159
- grep "PORT" .env
160
- ```
161
-
162
- ### 3. Bootstrap TestSprite
163
-
164
- Executar `testsprite_bootstrap` com parâmetros corretos:
165
-
166
- | Parâmetro | Descrição |
167
- |-----------|-----------|
168
- | `localPort` | Porta do servidor local (ex: 5173, 3000) |
169
- | `type` | "frontend" ou "backend" |
170
- | `projectPath` | Caminho absoluto do projeto |
171
- | `testScope` | "diff" ou "codebase" |
172
- | `pathname` | Caminho da página (opcional, padrão "") |
173
-
174
- ### 4. Gerar Sumário do Código
175
-
176
- Executar `testsprite_generate_code_summary` para analisar o projeto.
177
-
178
- ### 5. Gerar PRD Padronizado
179
-
180
- Executar `testsprite_generate_standardized_prd` para criar PRD normalizado.
181
-
182
- ### 6. Gerar Plano de Testes
183
-
184
- Executar o plano apropriado:
185
- - Frontend: `testsprite_generate_frontend_test_plan`
186
- - Backend: `testsprite_generate_backend_test_plan`
187
-
188
- **Parâmetros do Frontend Test Plan:**
189
-
190
- | Parâmetro | Descrição |
191
- |-----------|-----------|
192
- | `projectPath` | Caminho absoluto do projeto |
193
- | `needLogin` | `true` se o app requer autenticação, `false` caso contrário |
194
-
195
- > **Nota**: Se `needLogin: true`, o TestSprite incluirá fluxos de login/logout e rotas protegidas no plano de testes. Forneça credenciais de conta de teste quando solicitado.
196
-
197
- **Parâmetros do Backend Test Plan:**
198
-
199
- A documentação do TestSprite pode solicitar campos adicionais dependendo do projeto e do modo de execução.
200
-
201
- - Se a ferramenta pedir parâmetros extras, pergunte ao usuário os valores necessários e prossiga.
202
- - Evite assumir valores padrão não documentados.
203
-
204
- ### 7. Executar Testes
205
-
206
- Executar `testsprite_generate_code_and_execute`:
207
-
208
- | Parâmetro | Descrição |
209
- |-----------|-----------|
210
- | `projectName` | Nome do diretório raiz |
211
- | `projectPath` | Caminho absoluto |
212
- | `testIds` | IDs dos testes ([] = todos) |
213
- | `additionalInstruction` | Instruções extras ("" = nenhuma) |
214
-
215
- ### 8. Analisar Resultados
216
-
217
- Verificar relatório gerado e apresentar resumo ao usuário.
218
-
219
- ---
220
-
221
- ## Regras
222
-
223
- ### Nunca
224
- - Executar bootstrap sem identificar a porta correta
225
- - Pular etapas do fluxo sequencial
226
- - Usar testScope errado (diff vs codebase)
227
- - Executar sem projeto rodando localmente
228
- - Ignorar erros de execução
229
-
230
- ### Sempre
231
- - Identificar porta local antes do bootstrap
232
- - Seguir ordem sequencial das ferramentas
233
- - Verificar se projeto está rodando antes de testar
234
- - Apresentar resumo dos resultados ao usuário
235
- - Perguntar tipo se argumento não fornecido
236
-
237
- ---
238
-
239
- ## Tratamento de Erros
240
-
241
- ### Projeto não está rodando
242
- - Exibir: "⚠️ O projeto precisa estar rodando localmente na porta {porta}"
243
- - Sugerir: "Execute `npm run dev` ou equivalente antes de testar"
244
-
245
- ### Porta incorreta
246
- - Exibir: "⚠️ Não foi possível conectar na porta {porta}"
247
- - Verificar novamente os arquivos de configuração
248
- - Perguntar ao usuário qual porta usar
249
-
250
- ### Tipo de projeto não suportado
251
- - Exibir: "⚠️ Framework não suportado pelo TestSprite"
252
- - Listar frameworks suportados
253
- - Sugerir alternativas (qa-unit-test)
254
-
255
- ### Testes falharam
256
- - Apresentar resumo dos testes que falharam
257
- - Oferecer opção de re-executar com `testsprite_rerun_tests`
258
- - Sugerir correções baseadas nos erros
259
-
260
- ---
261
-
262
- ## Checklist de Conclusão
263
-
264
- - [ ] Tipo de teste identificado (frontend/backend/ambos)
265
- - [ ] Porta local determinada corretamente
266
- - [ ] Projeto está rodando localmente
267
- - [ ] Bootstrap executado com sucesso
268
- - [ ] Sumário do código gerado
269
- - [ ] PRD padronizado criado
270
- - [ ] Parâmetro `needLogin` definido (se frontend)
271
- - [ ] Credenciais de teste obtidas (se `needLogin: true`)
272
- - [ ] Plano de testes gerado
273
- - [ ] Testes executados
274
- - [ ] Artefatos gerados em `testsprite_tests/`
275
- - [ ] Resultados apresentados ao usuário
276
-
277
- ---
278
-
279
- ## Output
280
-
281
- Artefatos gerados na pasta `testsprite_tests/`:
282
-
283
- | Artefato | Caminho | Descrição |
284
- |----------|---------|-----------|
285
- | PRD normalizado | `standard_prd.json` | Requisitos estruturados do projeto |
286
- | Relatório MD | `TestSprite_MCP_Test_Report.md` | Relatório em markdown |
287
- | Relatório HTML | `TestSprite_MCP_Test_Report.html` | Relatório visual |
288
- | Casos de teste | `TC001_*.py`, `TC002_*.py`, ... | Scripts de teste gerados |
289
- | Config auxiliar | `tmp/config.json` | Configuração da execução |
290
- | Sumário do código | `tmp/code_summary.json` | Análise do codebase |
291
- | Resultados | `tmp/test_results.json` | Resultados detalhados dos testes |
292
-
293
- ---
294
-
295
- ## Mensagem de Conclusão
296
-
297
- ```
298
- TestSprite executado com sucesso!
299
-
300
- Projeto: {projectName}
301
- Tipo: {type}
302
- Escopo: {testScope}
303
- Porta: {localPort}
304
-
305
- Resultados:
306
- - Testes executados: {total}
307
- - Passou: {passed}
308
- - Falhou: {failed}
309
- - Cobertura: {coverage}%
310
-
311
- Artefatos gerados:
312
- - Relatório: testsprite_tests/TestSprite_MCP_Test_Report.md
313
- - Casos de teste: testsprite_tests/TC*.py
314
-
315
- Próximo passo: Revisar relatório em testsprite_tests/
316
- ```
317
-
318
- ---
319
-
320
- ## Recursos Adicionais
321
-
322
- - **Referência (local)**: `$IDE/skills/qa-testsprite/references/testsprite-mcp.md`
323
- - **Documentação oficial (backup)**: https://docs.testsprite.com/mcp/getting-started/overview
324
- - **Frameworks suportados**:
325
- - Frontend: React, Vue, Angular, Svelte, Next.js, Vite, vanilla JS/TS
326
- - Backend: Node.js, Python, Java, Go, Express.js, FastAPI, Spring Boot, REST, GraphQL
@@ -1,224 +0,0 @@
1
- # TestSprite MCP — Referência (Resumo Operacional)
2
-
3
- > Esta referência consolida, em formato local, as capacidades e o fluxo do **TestSprite MCP Server**.
4
- >
5
- > Fonte original: https://docs.testsprite.com/mcp/getting-started/introduction
6
-
7
- ---
8
-
9
- ## O que é
10
-
11
- O **TestSprite MCP Server** é um MCP para IDE que funciona como um agente de testes automatizados. Ele:
12
-
13
- - Lê PRD (quando fornecido)
14
- - Analisa o codebase
15
- - Gera um PRD normalizado (TestSprite PRD)
16
- - Cria planos de teste
17
- - Gera código de teste
18
- - Executa testes
19
- - Produz relatórios
20
- - Suporta fluxo de correção com base nos resultados
21
-
22
- A documentação descreve esse funcionamento como um fluxo em múltiplas etapas ("reads PRD" → "analyzes code" → "generates test PRD" → "creates test plans" → "generates test code" → "executes tests" → "provides results" → "enables fixes").
23
-
24
- ---
25
-
26
- ## Tipos de teste suportados
27
-
28
- - **Frontend**: UI & Business-Flow (E2E / integração de fluxos)
29
- - **Backend**: API & Integration
30
-
31
- ## Quando usar cada tipo
32
-
33
- ### Frontend (UI & Business-Flow)
34
-
35
- Use quando o risco/valor está no comportamento percebido pelo usuário:
36
-
37
- - Fluxos de navegação (multi-step), páginas e rotas
38
- - Formulários, validações e mensagens de erro
39
- - Componentes interativos e estados (loading/empty)
40
- - Fluxos de autenticação/autorizações na UI (login/logout/rotas protegidas)
41
-
42
- Evite escolher Frontend como única camada quando o objetivo é validar contrato/semântica de API (nesse caso, inclua Backend).
43
-
44
- ### Backend (API & Integration)
45
-
46
- Use quando o risco/valor está na API/serviço e suas integrações:
47
-
48
- - Contratos de request/response, schemas e versionamento
49
- - Regras de autorização/autenticação (RBAC/scopes, token validation)
50
- - Resiliência e tratamento de erro (status codes, timeouts, retries/backoff)
51
- - Edge cases e validações de payload/paginação
52
- - Integridade/persistência de dados (idempotência/constraints)
53
-
54
- ### Quando rodar os dois
55
-
56
- Rode **Frontend + Backend** quando:
57
-
58
- - O fluxo é ponta-a-ponta (UI chama API) e você quer diagnóstico mais rápido
59
- - Existem regras de auth e modelos de dados compartilhados entre UI e API
60
- - O problema pode estar em contrato, payloads ou status codes (camada API), mas se manifesta na UI
61
-
62
- ---
63
-
64
- ## Escopo de execução (Codebase vs Code Diff)
65
-
66
- A documentação menciona dois modos de escopo:
67
-
68
- - **Codebase**: varredura completa do projeto.
69
- - Use quando:
70
- - é a primeira execução do TestSprite no repo
71
- - você quer um baseline amplo de qualidade
72
- - houve mudanças grandes/estruturais e o risco é sistêmico
73
-
74
- - **Code Diff**: executar focado nas mudanças recentes (a doc cita mudanças não commitadas/uncommitted).
75
- - Use quando:
76
- - você quer feedback rápido antes de abrir PR
77
- - quer validar apenas o impacto do que acabou de alterar
78
- - está iterando rapidamente e o full sweep seria caro/lento
79
-
80
- Observação: se você precisar focar especificamente em staged vs uncommitted, valide com o usuário qual estado do Git deve ser considerado antes de executar.
81
-
82
- ## Tipos de testes (detalhamento)
83
-
84
- Esta lista é uma transcrição/normalização do que a documentação descreve como capacidades suportadas.
85
-
86
- ### Frontend (UI & Business-Flow Integration)
87
-
88
- - **User Journey Navigation**: fluxos multi-etapa, transições de página, deep linking, histórico do navegador e route guards.
89
- - Exemplos de quando usar:
90
- - Quando você alterou navegação/roteamento (ex.: novas rotas, guards, redirects pós-login).
91
- - Quando implementou um fluxo multi-página (ex.: onboarding, checkout, wizard).
92
- - Quando mudou deep links (ex.: abrir detalhes via URL) ou comportamento do back/forward.
93
- - **Form Flows & Validation**: validação de input, mensagens de erro, dependências entre campos, submissão e persistência.
94
- - Exemplos de quando usar:
95
- - Quando criou/alterou regras de validação (ex.: email, senha, máscara, required).
96
- - Quando mudou mensagens de erro, estados inválidos e validação em tempo real.
97
- - Quando o submit depende de múltiplos campos/etapas (ex.: endereço + pagamento).
98
- - **Visual States & Layouts**: renderização, responsividade, loading/empty states e compliance de acessibilidade.
99
- - Exemplos de quando usar:
100
- - Quando adicionou estados de carregamento/placeholder/skeleton.
101
- - Quando alterou layout responsivo (breakpoints) ou grid.
102
- - Quando implementou empty states (lista vazia, zero-state) e quer validar acessibilidade.
103
- - **Interactive Components & Stateful UI**: dropdowns, modals, tabs, accordions, drag-and-drop, persistência de estado e updates em tempo real.
104
- - Exemplos de quando usar:
105
- - Quando adicionou/alterou modal, dropdown, tab ou accordion que controla estado.
106
- - Quando implementou drag-and-drop (ordenar itens, kanban).
107
- - Quando tem UI com updates em tempo real (polling/websocket) e precisa validar consistência visual.
108
- - **Authorization & Auth Flows (UI)**: login/logout, rotas protegidas, visibilidade por papel, session management e token refresh.
109
- - Exemplos de quando usar:
110
- - Quando alterou fluxo de login/logout (ex.: SSO, MFA, step extra).
111
- - Quando introduziu nova rota protegida ou mudança de RBAC na UI.
112
- - Quando houve mudança em refresh/expiração de token (ex.: reauth silencioso).
113
- - **Error Handling (UI)**: toasts, modals, inline errors, feedback de validação e graceful degradation.
114
- - Exemplos de quando usar:
115
- - Quando mudou o padrão de exibição de erros (toast vs inline vs modal).
116
- - Quando adicionou tratamento para falhas de rede/timeout.
117
- - Quando precisa validar que o usuário recebe feedback correto em cenários de erro.
118
-
119
- ### Backend (API & Integration)
120
-
121
- - **Functional API Workflows**: comportamento de endpoints, workflows multi-step, orquestração de serviços e padrões de integração.
122
- - Exemplos de quando usar:
123
- - Quando introduziu um fluxo que chama múltiplos endpoints (ex.: criar pedido → pagar → confirmar).
124
- - Quando mudou orquestração/integração entre serviços (ex.: webhook + job async).
125
- - Quando há dependência de estados/transições (ex.: status de pedido).
126
- - **Contract & Schema Validation**: schemas request/response, data types, required fields, formatos de serialização e versionamento.
127
- - Exemplos de quando usar:
128
- - Quando adicionou/removeu campos no payload (request/response).
129
- - Quando alterou tipos/formatos (ex.: date string → epoch) ou regras de required/optional.
130
- - Quando mudou versionamento de API ou contratos entre serviços.
131
- - **Error Handling & Resilience**: status codes, error bodies, retry/backoff, timeouts e graceful degradation.
132
- - Exemplos de quando usar:
133
- - Quando ajustou códigos de status (ex.: 400/404/409/422) e mensagens de erro.
134
- - Quando adicionou timeouts, retries/backoff ou circuit breaker.
135
- - Quando precisa validar comportamento em dependência instável (ex.: serviço terceiro).
136
- - **Authorization & Authentication**: token validation, RBAC, permission scopes, session management e credential handling.
137
- - Exemplos de quando usar:
138
- - Quando alterou regras de permissão (RBAC/scopes) por endpoint.
139
- - Quando mudou validação de token (claims, expiração, audience/issuer).
140
- - Quando introduziu novo mecanismo de autenticação (ex.: API key, OAuth).
141
- - **Boundary & Edge Cases**: limites de payload, paginação, valores null/empty, inputs malformados e constraint validation.
142
- - Exemplos de quando usar:
143
- - Quando adicionou paginação/filters/sorting e precisa validar limites.
144
- - Quando o endpoint aceita payload grande ou novos formatos.
145
- - Quando adicionou validações de input e quer cobrir casos inválidos.
146
- - **Data Integrity & Persistence**: consistência de dados, transações, idempotência, state management e database constraints.
147
- - Exemplos de quando usar:
148
- - Quando introduziu escrita em banco (insert/update) com constraints novas.
149
- - Quando implementou idempotência (ex.: POST com idempotency-key).
150
- - Quando adicionou transações/sagas e quer validar consistência sob falha.
151
- - **Security Testing**: vulnerabilidades comuns (injection, XSS, CSRF), auth bypass, authorization flaws, data exposure e security misconfigurations.
152
- - Exemplos de quando usar:
153
- - Quando expôs endpoint novo e quer validar que não há bypass de auth.
154
- - Quando mexeu em sanitização/validação e quer detectar injection.
155
- - Quando lida com dados sensíveis e quer checar exposição indevida.
156
-
157
- ---
158
-
159
- ## Lifecycle (modelo mental)
160
-
161
- A documentação descreve um lifecycle conceitual:
162
-
163
- - Discover & Understand
164
- - Plan
165
- - Generate
166
- - Execute
167
- - Analyze
168
- - Heal & Maintain
169
- - Report & Integrate
170
-
171
- ---
172
-
173
- ## Fluxo de "primeiro teste" (Getting Started)
174
-
175
- A documentação sugere:
176
-
177
- 1. Subir o projeto localmente (ex.: `npm run dev`, `node index.js`, etc.)
178
- 2. Abrir um chat no IDE e pedir:
179
-
180
- ```text
181
- Can you test this project with TestSprite?
182
- ```
183
-
184
- 3. Fornecer configuração obrigatória (conforme solicitado pelo fluxo do MCP), incluindo:
185
- - Tipo: Frontend ou Backend
186
- - Scope: Codebase (varredura completa) ou Code Diff (mudanças recentes / uncommitted)
187
- - Credenciais de conta de teste (se houver login)
188
- - URLs locais (ex.: frontend `http://localhost:5173`, backend `http://localhost:4000`)
189
- - PRD (quando aplicável)
190
-
191
- ---
192
-
193
- ## Artefatos gerados
194
-
195
- A documentação mostra um output típico em `testsprite_tests/`, incluindo:
196
-
197
- - `standard_prd.json` (PRD normalizado)
198
- - `TestSprite_MCP_Test_Report.md` e `TestSprite_MCP_Test_Report.html`
199
- - `tmp/` com dados auxiliares (ex.: `config.json`, `code_summary.json`, `test_results.json`)
200
- - Arquivos de casos de teste (ex.: `TC001_...py`, `TC002_...py`, etc.)
201
-
202
- ---
203
-
204
- ## Pré-requisitos / instalação (pontos essenciais)
205
-
206
- - Conta TestSprite e **API key**
207
- - **Node.js >= 22** (para rodar o MCP via `npx`)
208
- - Instalação do MCP depende do IDE, mas o comando base é:
209
-
210
- ```text
211
- npx @testsprite/testsprite-mcp@latest
212
- ```
213
-
214
- Em configurações de MCP, é comum usar `API_KEY` via variável de ambiente.
215
-
216
- ---
217
-
218
- ## Referências
219
-
220
- - Introduction: https://docs.testsprite.com/mcp/getting-started/introduction
221
- - Overview: https://docs.testsprite.com/mcp/getting-started/overview
222
- - Installation: https://docs.testsprite.com/mcp/getting-started/installation
223
- - First MCP Test: https://docs.testsprite.com/mcp/getting-started/first-test
224
- - Test Types & Lifecycle: https://docs.testsprite.com/mcp/concepts/test-type-lifecycle