code-ai-installer 1.1.11 → 1.2.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 (882) hide show
  1. package/.agents/a11y_baseline/agents/claude.json +18 -0
  2. package/.agents/a11y_baseline/agents/copilot.json +18 -0
  3. package/.agents/a11y_baseline/agents/gemini.json +18 -0
  4. package/.agents/a11y_baseline/agents/openai.yaml +8 -0
  5. package/.agents/a11y_baseline/agents/qwen.json +18 -0
  6. package/.agents/a11y_baseline/agents/skill.yaml +22 -0
  7. package/.agents/adr_log/agents/claude.json +18 -0
  8. package/.agents/adr_log/agents/copilot.json +18 -0
  9. package/.agents/adr_log/agents/gemini.json +18 -0
  10. package/.agents/adr_log/agents/openai.yaml +8 -0
  11. package/.agents/adr_log/agents/qwen.json +18 -0
  12. package/.agents/adr_log/agents/skill.yaml +22 -0
  13. package/.agents/api_contract_compliance_review/agents/claude.json +20 -0
  14. package/.agents/api_contract_compliance_review/agents/copilot.json +20 -0
  15. package/.agents/api_contract_compliance_review/agents/gemini.json +20 -0
  16. package/.agents/api_contract_compliance_review/agents/openai.yaml +8 -0
  17. package/.agents/api_contract_compliance_review/agents/qwen.json +20 -0
  18. package/.agents/api_contract_compliance_review/agents/skill.yaml +24 -0
  19. package/.agents/api_contracts/agents/claude.json +18 -0
  20. package/.agents/api_contracts/agents/copilot.json +18 -0
  21. package/.agents/api_contracts/agents/gemini.json +18 -0
  22. package/.agents/api_contracts/agents/openai.yaml +8 -0
  23. package/.agents/api_contracts/agents/qwen.json +18 -0
  24. package/.agents/api_contracts/agents/skill.yaml +22 -0
  25. package/.agents/architecture_compliance_review/agents/claude.json +19 -0
  26. package/.agents/architecture_compliance_review/agents/copilot.json +19 -0
  27. package/.agents/architecture_compliance_review/agents/gemini.json +19 -0
  28. package/.agents/architecture_compliance_review/agents/openai.yaml +8 -0
  29. package/.agents/architecture_compliance_review/agents/qwen.json +19 -0
  30. package/.agents/architecture_compliance_review/agents/skill.yaml +23 -0
  31. package/.agents/architecture_doc/agents/claude.json +18 -0
  32. package/.agents/architecture_doc/agents/copilot.json +18 -0
  33. package/.agents/architecture_doc/agents/gemini.json +18 -0
  34. package/.agents/architecture_doc/agents/openai.yaml +8 -0
  35. package/.agents/architecture_doc/agents/qwen.json +18 -0
  36. package/.agents/architecture_doc/agents/skill.yaml +22 -0
  37. package/.agents/board/agents/claude.json +16 -0
  38. package/.agents/board/agents/copilot.json +16 -0
  39. package/.agents/board/agents/gemini.json +16 -0
  40. package/.agents/board/agents/openai.yaml +8 -0
  41. package/.agents/board/agents/qwen.json +16 -0
  42. package/.agents/board/agents/skill.yaml +20 -0
  43. package/.agents/cloud_infrastructure_security/agents/claude.json +19 -0
  44. package/.agents/cloud_infrastructure_security/agents/copilot.json +19 -0
  45. package/.agents/cloud_infrastructure_security/agents/gemini.json +19 -0
  46. package/.agents/cloud_infrastructure_security/agents/openai.yaml +8 -0
  47. package/.agents/cloud_infrastructure_security/agents/qwen.json +19 -0
  48. package/.agents/cloud_infrastructure_security/agents/skill.yaml +23 -0
  49. package/.agents/code_review_checklist/agents/claude.json +19 -0
  50. package/.agents/code_review_checklist/agents/copilot.json +19 -0
  51. package/.agents/code_review_checklist/agents/gemini.json +19 -0
  52. package/.agents/code_review_checklist/agents/openai.yaml +8 -0
  53. package/.agents/code_review_checklist/agents/qwen.json +19 -0
  54. package/.agents/code_review_checklist/agents/skill.yaml +23 -0
  55. package/.agents/current_state_analysis/agents/claude.json +19 -0
  56. package/.agents/current_state_analysis/agents/copilot.json +19 -0
  57. package/.agents/current_state_analysis/agents/gemini.json +19 -0
  58. package/.agents/current_state_analysis/agents/openai.yaml +8 -0
  59. package/.agents/current_state_analysis/agents/qwen.json +19 -0
  60. package/.agents/current_state_analysis/agents/skill.yaml +23 -0
  61. package/.agents/data_model/agents/claude.json +18 -0
  62. package/.agents/data_model/agents/copilot.json +18 -0
  63. package/.agents/data_model/agents/gemini.json +18 -0
  64. package/.agents/data_model/agents/openai.yaml +8 -0
  65. package/.agents/data_model/agents/qwen.json +18 -0
  66. package/.agents/data_model/agents/skill.yaml +22 -0
  67. package/.agents/dependency_supply_chain_review/agents/claude.json +20 -0
  68. package/.agents/dependency_supply_chain_review/agents/copilot.json +20 -0
  69. package/.agents/dependency_supply_chain_review/agents/gemini.json +20 -0
  70. package/.agents/dependency_supply_chain_review/agents/openai.yaml +8 -0
  71. package/.agents/dependency_supply_chain_review/agents/qwen.json +20 -0
  72. package/.agents/dependency_supply_chain_review/agents/skill.yaml +24 -0
  73. package/.agents/deployment_ci_plan/agents/claude.json +18 -0
  74. package/.agents/deployment_ci_plan/agents/copilot.json +18 -0
  75. package/.agents/deployment_ci_plan/agents/gemini.json +18 -0
  76. package/.agents/deployment_ci_plan/agents/openai.yaml +8 -0
  77. package/.agents/deployment_ci_plan/agents/qwen.json +18 -0
  78. package/.agents/deployment_ci_plan/agents/skill.yaml +22 -0
  79. package/.agents/design_intake/agents/claude.json +18 -0
  80. package/.agents/design_intake/agents/copilot.json +18 -0
  81. package/.agents/design_intake/agents/gemini.json +18 -0
  82. package/.agents/design_intake/agents/openai.yaml +8 -0
  83. package/.agents/design_intake/agents/qwen.json +18 -0
  84. package/.agents/design_intake/agents/skill.yaml +22 -0
  85. package/.agents/design_parity_review/SKILL.md +1 -18
  86. package/.agents/design_parity_review/agents/claude.json +19 -0
  87. package/.agents/design_parity_review/agents/copilot.json +19 -0
  88. package/.agents/design_parity_review/agents/gemini.json +19 -0
  89. package/.agents/design_parity_review/agents/openai.yaml +8 -0
  90. package/.agents/design_parity_review/agents/qwen.json +19 -0
  91. package/.agents/design_parity_review/agents/skill.yaml +23 -0
  92. package/.agents/design_systems/agents/claude.json +18 -0
  93. package/.agents/design_systems/agents/copilot.json +18 -0
  94. package/.agents/design_systems/agents/gemini.json +18 -0
  95. package/.agents/design_systems/agents/openai.yaml +8 -0
  96. package/.agents/design_systems/agents/qwen.json +18 -0
  97. package/.agents/design_systems/agents/skill.yaml +22 -0
  98. package/.agents/dev_reference_snippets/agents/claude.json +19 -0
  99. package/.agents/dev_reference_snippets/agents/copilot.json +19 -0
  100. package/.agents/dev_reference_snippets/agents/gemini.json +19 -0
  101. package/.agents/dev_reference_snippets/agents/openai.yaml +8 -0
  102. package/.agents/dev_reference_snippets/agents/qwen.json +19 -0
  103. package/.agents/dev_reference_snippets/agents/skill.yaml +23 -0
  104. package/.agents/docker_kubernetes_architecture/agents/claude.json +19 -0
  105. package/.agents/docker_kubernetes_architecture/agents/copilot.json +19 -0
  106. package/.agents/docker_kubernetes_architecture/agents/gemini.json +19 -0
  107. package/.agents/docker_kubernetes_architecture/agents/openai.yaml +8 -0
  108. package/.agents/docker_kubernetes_architecture/agents/qwen.json +19 -0
  109. package/.agents/docker_kubernetes_architecture/agents/skill.yaml +23 -0
  110. package/.agents/es2025_beast_practices/agents/claude.json +19 -0
  111. package/.agents/es2025_beast_practices/agents/copilot.json +19 -0
  112. package/.agents/es2025_beast_practices/agents/gemini.json +19 -0
  113. package/.agents/es2025_beast_practices/agents/openai.yaml +8 -0
  114. package/.agents/es2025_beast_practices/agents/qwen.json +19 -0
  115. package/.agents/es2025_beast_practices/agents/skill.yaml +23 -0
  116. package/.agents/gates/agents/claude.json +16 -0
  117. package/.agents/gates/agents/copilot.json +16 -0
  118. package/.agents/gates/agents/gemini.json +16 -0
  119. package/.agents/gates/agents/openai.yaml +8 -0
  120. package/.agents/gates/agents/qwen.json +16 -0
  121. package/.agents/gates/agents/skill.yaml +20 -0
  122. package/.agents/go_beast_practices/agents/claude.json +19 -0
  123. package/.agents/go_beast_practices/agents/copilot.json +19 -0
  124. package/.agents/go_beast_practices/agents/gemini.json +19 -0
  125. package/.agents/go_beast_practices/agents/openai.yaml +8 -0
  126. package/.agents/go_beast_practices/agents/qwen.json +19 -0
  127. package/.agents/go_beast_practices/agents/skill.yaml +23 -0
  128. package/.agents/google_stitch_skill/SKILL.md +553 -0
  129. package/.agents/google_stitch_skill/agents/claude.json +19 -0
  130. package/.agents/google_stitch_skill/agents/copilot.json +19 -0
  131. package/.agents/google_stitch_skill/agents/gemini.json +19 -0
  132. package/.agents/google_stitch_skill/agents/openai.yaml +8 -0
  133. package/.agents/google_stitch_skill/agents/qwen.json +19 -0
  134. package/.agents/google_stitch_skill/agents/skill.yaml +23 -0
  135. package/.agents/google_stitch_skill/examples/scr_prompts.md +125 -0
  136. package/.agents/google_stitch_skill/resources/budget_planner.md +35 -0
  137. package/.agents/handoff/agents/claude.json +16 -0
  138. package/.agents/handoff/agents/copilot.json +16 -0
  139. package/.agents/handoff/agents/gemini.json +16 -0
  140. package/.agents/handoff/agents/openai.yaml +8 -0
  141. package/.agents/handoff/agents/qwen.json +16 -0
  142. package/.agents/handoff/agents/skill.yaml +20 -0
  143. package/.agents/k8s_manifests_conventions/agents/claude.json +19 -0
  144. package/.agents/k8s_manifests_conventions/agents/copilot.json +19 -0
  145. package/.agents/k8s_manifests_conventions/agents/gemini.json +19 -0
  146. package/.agents/k8s_manifests_conventions/agents/openai.yaml +8 -0
  147. package/.agents/k8s_manifests_conventions/agents/qwen.json +19 -0
  148. package/.agents/k8s_manifests_conventions/agents/skill.yaml +23 -0
  149. package/.agents/memory/agents/claude.json +16 -0
  150. package/.agents/memory/agents/copilot.json +16 -0
  151. package/.agents/memory/agents/gemini.json +16 -0
  152. package/.agents/memory/agents/openai.yaml +8 -0
  153. package/.agents/memory/agents/qwen.json +16 -0
  154. package/.agents/memory/agents/skill.yaml +20 -0
  155. package/.agents/mongodb_mongoose_best_practices/agents/claude.json +20 -0
  156. package/.agents/mongodb_mongoose_best_practices/agents/copilot.json +20 -0
  157. package/.agents/mongodb_mongoose_best_practices/agents/gemini.json +20 -0
  158. package/.agents/mongodb_mongoose_best_practices/agents/openai.yaml +8 -0
  159. package/.agents/mongodb_mongoose_best_practices/agents/qwen.json +20 -0
  160. package/.agents/mongodb_mongoose_best_practices/agents/skill.yaml +24 -0
  161. package/.agents/n8n_pinecone_qdrant_supabase/SKILL.md +0 -2
  162. package/.agents/n8n_pinecone_qdrant_supabase/agents/claude.json +20 -0
  163. package/.agents/n8n_pinecone_qdrant_supabase/agents/copilot.json +20 -0
  164. package/.agents/n8n_pinecone_qdrant_supabase/agents/gemini.json +20 -0
  165. package/.agents/n8n_pinecone_qdrant_supabase/agents/openai.yaml +8 -0
  166. package/.agents/n8n_pinecone_qdrant_supabase/agents/qwen.json +20 -0
  167. package/.agents/n8n_pinecone_qdrant_supabase/agents/skill.yaml +24 -0
  168. package/.agents/node_express_beast_practices/agents/claude.json +20 -0
  169. package/.agents/node_express_beast_practices/agents/copilot.json +20 -0
  170. package/.agents/node_express_beast_practices/agents/gemini.json +20 -0
  171. package/.agents/node_express_beast_practices/agents/openai.yaml +8 -0
  172. package/.agents/node_express_beast_practices/agents/qwen.json +20 -0
  173. package/.agents/node_express_beast_practices/agents/skill.yaml +24 -0
  174. package/.agents/observability_logging/agents/claude.json +18 -0
  175. package/.agents/observability_logging/agents/copilot.json +18 -0
  176. package/.agents/observability_logging/agents/gemini.json +18 -0
  177. package/.agents/observability_logging/agents/openai.yaml +8 -0
  178. package/.agents/observability_logging/agents/qwen.json +18 -0
  179. package/.agents/observability_logging/agents/skill.yaml +22 -0
  180. package/.agents/observability_plan/agents/claude.json +17 -0
  181. package/.agents/observability_plan/agents/copilot.json +17 -0
  182. package/.agents/observability_plan/agents/gemini.json +17 -0
  183. package/.agents/observability_plan/agents/openai.yaml +8 -0
  184. package/.agents/observability_plan/agents/qwen.json +17 -0
  185. package/.agents/observability_plan/agents/skill.yaml +21 -0
  186. package/.agents/observability_review/agents/claude.json +18 -0
  187. package/.agents/observability_review/agents/copilot.json +18 -0
  188. package/.agents/observability_review/agents/gemini.json +18 -0
  189. package/.agents/observability_review/agents/openai.yaml +8 -0
  190. package/.agents/observability_review/agents/qwen.json +18 -0
  191. package/.agents/observability_review/agents/skill.yaml +22 -0
  192. package/.agents/performance_review_baseline/agents/claude.json +19 -0
  193. package/.agents/performance_review_baseline/agents/copilot.json +19 -0
  194. package/.agents/performance_review_baseline/agents/gemini.json +19 -0
  195. package/.agents/performance_review_baseline/agents/openai.yaml +8 -0
  196. package/.agents/performance_review_baseline/agents/qwen.json +19 -0
  197. package/.agents/performance_review_baseline/agents/skill.yaml +23 -0
  198. package/.agents/pm_backlog/agents/claude.json +18 -0
  199. package/.agents/pm_backlog/agents/copilot.json +18 -0
  200. package/.agents/pm_backlog/agents/gemini.json +18 -0
  201. package/.agents/pm_backlog/agents/openai.yaml +8 -0
  202. package/.agents/pm_backlog/agents/qwen.json +18 -0
  203. package/.agents/pm_backlog/agents/skill.yaml +22 -0
  204. package/.agents/pm_interview/agents/claude.json +18 -0
  205. package/.agents/pm_interview/agents/copilot.json +18 -0
  206. package/.agents/pm_interview/agents/gemini.json +18 -0
  207. package/.agents/pm_interview/agents/openai.yaml +8 -0
  208. package/.agents/pm_interview/agents/qwen.json +18 -0
  209. package/.agents/pm_interview/agents/skill.yaml +22 -0
  210. package/.agents/pm_prd/agents/claude.json +18 -0
  211. package/.agents/pm_prd/agents/copilot.json +18 -0
  212. package/.agents/pm_prd/agents/gemini.json +18 -0
  213. package/.agents/pm_prd/agents/openai.yaml +8 -0
  214. package/.agents/pm_prd/agents/qwen.json +18 -0
  215. package/.agents/pm_prd/agents/skill.yaml +22 -0
  216. package/.agents/qa_api_contract_tests/agents/claude.json +20 -0
  217. package/.agents/qa_api_contract_tests/agents/copilot.json +20 -0
  218. package/.agents/qa_api_contract_tests/agents/gemini.json +20 -0
  219. package/.agents/qa_api_contract_tests/agents/openai.yaml +8 -0
  220. package/.agents/qa_api_contract_tests/agents/qwen.json +20 -0
  221. package/.agents/qa_api_contract_tests/agents/skill.yaml +24 -0
  222. package/.agents/qa_browser_testing/SKILL.md +255 -0
  223. package/.agents/qa_browser_testing/agents/claude.json +19 -0
  224. package/.agents/qa_browser_testing/agents/copilot.json +19 -0
  225. package/.agents/qa_browser_testing/agents/gemini.json +19 -0
  226. package/.agents/qa_browser_testing/agents/openai.yaml +8 -0
  227. package/.agents/qa_browser_testing/agents/qwen.json +19 -0
  228. package/.agents/qa_browser_testing/agents/skill.yaml +23 -0
  229. package/.agents/qa_e2e_playwright/SKILL.md +313 -0
  230. package/.agents/qa_e2e_playwright/agents/claude.json +19 -0
  231. package/.agents/qa_e2e_playwright/agents/copilot.json +19 -0
  232. package/.agents/qa_e2e_playwright/agents/gemini.json +19 -0
  233. package/.agents/qa_e2e_playwright/agents/openai.yaml +8 -0
  234. package/.agents/qa_e2e_playwright/agents/qwen.json +19 -0
  235. package/.agents/qa_e2e_playwright/agents/skill.yaml +23 -0
  236. package/.agents/qa_manual_run/agents/claude.json +19 -0
  237. package/.agents/qa_manual_run/agents/copilot.json +19 -0
  238. package/.agents/qa_manual_run/agents/gemini.json +19 -0
  239. package/.agents/qa_manual_run/agents/openai.yaml +8 -0
  240. package/.agents/qa_manual_run/agents/qwen.json +19 -0
  241. package/.agents/qa_manual_run/agents/skill.yaml +23 -0
  242. package/.agents/qa_security_smoke_tests/agents/claude.json +20 -0
  243. package/.agents/qa_security_smoke_tests/agents/copilot.json +20 -0
  244. package/.agents/qa_security_smoke_tests/agents/gemini.json +20 -0
  245. package/.agents/qa_security_smoke_tests/agents/openai.yaml +8 -0
  246. package/.agents/qa_security_smoke_tests/agents/qwen.json +20 -0
  247. package/.agents/qa_security_smoke_tests/agents/skill.yaml +24 -0
  248. package/.agents/qa_test_plan/agents/claude.json +19 -0
  249. package/.agents/qa_test_plan/agents/copilot.json +19 -0
  250. package/.agents/qa_test_plan/agents/gemini.json +19 -0
  251. package/.agents/qa_test_plan/agents/openai.yaml +8 -0
  252. package/.agents/qa_test_plan/agents/qwen.json +19 -0
  253. package/.agents/qa_test_plan/agents/skill.yaml +23 -0
  254. package/.agents/qa_ui_a11y_smoke/agents/claude.json +20 -0
  255. package/.agents/qa_ui_a11y_smoke/agents/copilot.json +20 -0
  256. package/.agents/qa_ui_a11y_smoke/agents/gemini.json +20 -0
  257. package/.agents/qa_ui_a11y_smoke/agents/openai.yaml +8 -0
  258. package/.agents/qa_ui_a11y_smoke/agents/qwen.json +20 -0
  259. package/.agents/qa_ui_a11y_smoke/agents/skill.yaml +24 -0
  260. package/.agents/react_15_3_wix_iframe/agents/claude.json +21 -0
  261. package/.agents/react_15_3_wix_iframe/agents/copilot.json +21 -0
  262. package/.agents/react_15_3_wix_iframe/agents/gemini.json +21 -0
  263. package/.agents/react_15_3_wix_iframe/agents/openai.yaml +8 -0
  264. package/.agents/react_15_3_wix_iframe/agents/qwen.json +21 -0
  265. package/.agents/react_15_3_wix_iframe/agents/skill.yaml +25 -0
  266. package/.agents/react_beast_practices/agents/claude.json +19 -0
  267. package/.agents/react_beast_practices/agents/copilot.json +19 -0
  268. package/.agents/react_beast_practices/agents/gemini.json +19 -0
  269. package/.agents/react_beast_practices/agents/openai.yaml +8 -0
  270. package/.agents/react_beast_practices/agents/qwen.json +19 -0
  271. package/.agents/react_beast_practices/agents/skill.yaml +23 -0
  272. package/.agents/release_gate/agents/claude.json +18 -0
  273. package/.agents/release_gate/agents/copilot.json +18 -0
  274. package/.agents/release_gate/agents/gemini.json +18 -0
  275. package/.agents/release_gate/agents/openai.yaml +8 -0
  276. package/.agents/release_gate/agents/qwen.json +18 -0
  277. package/.agents/release_gate/agents/skill.yaml +22 -0
  278. package/.agents/release_gate_checklist_template/agents/claude.json +20 -0
  279. package/.agents/release_gate_checklist_template/agents/copilot.json +20 -0
  280. package/.agents/release_gate_checklist_template/agents/gemini.json +20 -0
  281. package/.agents/release_gate_checklist_template/agents/openai.yaml +8 -0
  282. package/.agents/release_gate_checklist_template/agents/qwen.json +20 -0
  283. package/.agents/release_gate_checklist_template/agents/skill.yaml +24 -0
  284. package/.agents/review_reference_snippets/agents/claude.json +19 -0
  285. package/.agents/review_reference_snippets/agents/copilot.json +19 -0
  286. package/.agents/review_reference_snippets/agents/gemini.json +19 -0
  287. package/.agents/review_reference_snippets/agents/openai.yaml +8 -0
  288. package/.agents/review_reference_snippets/agents/qwen.json +19 -0
  289. package/.agents/review_reference_snippets/agents/skill.yaml +23 -0
  290. package/.agents/security_baseline_dev/agents/claude.json +19 -0
  291. package/.agents/security_baseline_dev/agents/copilot.json +19 -0
  292. package/.agents/security_baseline_dev/agents/gemini.json +19 -0
  293. package/.agents/security_baseline_dev/agents/openai.yaml +8 -0
  294. package/.agents/security_baseline_dev/agents/qwen.json +19 -0
  295. package/.agents/security_baseline_dev/agents/skill.yaml +23 -0
  296. package/.agents/security_review/agents/claude.json +18 -0
  297. package/.agents/security_review/agents/copilot.json +18 -0
  298. package/.agents/security_review/agents/gemini.json +18 -0
  299. package/.agents/security_review/agents/openai.yaml +8 -0
  300. package/.agents/security_review/agents/qwen.json +18 -0
  301. package/.agents/security_review/agents/skill.yaml +22 -0
  302. package/.agents/security_review_baseline/agents/claude.json +19 -0
  303. package/.agents/security_review_baseline/agents/copilot.json +19 -0
  304. package/.agents/security_review_baseline/agents/gemini.json +19 -0
  305. package/.agents/security_review_baseline/agents/openai.yaml +8 -0
  306. package/.agents/security_review_baseline/agents/qwen.json +19 -0
  307. package/.agents/security_review_baseline/agents/skill.yaml +23 -0
  308. package/.agents/state_rtk_beast_practices/agents/claude.json +20 -0
  309. package/.agents/state_rtk_beast_practices/agents/copilot.json +20 -0
  310. package/.agents/state_rtk_beast_practices/agents/gemini.json +20 -0
  311. package/.agents/state_rtk_beast_practices/agents/openai.yaml +8 -0
  312. package/.agents/state_rtk_beast_practices/agents/qwen.json +20 -0
  313. package/.agents/state_rtk_beast_practices/agents/skill.yaml +24 -0
  314. package/.agents/state_zustand_beast_practices/agents/claude.json +20 -0
  315. package/.agents/state_zustand_beast_practices/agents/copilot.json +20 -0
  316. package/.agents/state_zustand_beast_practices/agents/gemini.json +20 -0
  317. package/.agents/state_zustand_beast_practices/agents/openai.yaml +8 -0
  318. package/.agents/state_zustand_beast_practices/agents/qwen.json +20 -0
  319. package/.agents/state_zustand_beast_practices/agents/skill.yaml +24 -0
  320. package/.agents/styling_css_stack/agents/claude.json +19 -0
  321. package/.agents/styling_css_stack/agents/copilot.json +19 -0
  322. package/.agents/styling_css_stack/agents/gemini.json +19 -0
  323. package/.agents/styling_css_stack/agents/openai.yaml +8 -0
  324. package/.agents/styling_css_stack/agents/qwen.json +19 -0
  325. package/.agents/styling_css_stack/agents/skill.yaml +23 -0
  326. package/.agents/system_design_checklist/agents/claude.json +18 -0
  327. package/.agents/system_design_checklist/agents/copilot.json +18 -0
  328. package/.agents/system_design_checklist/agents/gemini.json +18 -0
  329. package/.agents/system_design_checklist/agents/openai.yaml +8 -0
  330. package/.agents/system_design_checklist/agents/qwen.json +18 -0
  331. package/.agents/system_design_checklist/agents/skill.yaml +22 -0
  332. package/.agents/tanstack_beast_practices/agents/claude.json +19 -0
  333. package/.agents/tanstack_beast_practices/agents/copilot.json +19 -0
  334. package/.agents/tanstack_beast_practices/agents/gemini.json +19 -0
  335. package/.agents/tanstack_beast_practices/agents/openai.yaml +8 -0
  336. package/.agents/tanstack_beast_practices/agents/qwen.json +19 -0
  337. package/.agents/tanstack_beast_practices/agents/skill.yaml +23 -0
  338. package/.agents/tdd_workflow/agents/claude.json +18 -0
  339. package/.agents/tdd_workflow/agents/copilot.json +18 -0
  340. package/.agents/tdd_workflow/agents/gemini.json +18 -0
  341. package/.agents/tdd_workflow/agents/openai.yaml +8 -0
  342. package/.agents/tdd_workflow/agents/qwen.json +18 -0
  343. package/.agents/tdd_workflow/agents/skill.yaml +22 -0
  344. package/.agents/testing_strategy_js/agents/claude.json +19 -0
  345. package/.agents/testing_strategy_js/agents/copilot.json +19 -0
  346. package/.agents/testing_strategy_js/agents/gemini.json +19 -0
  347. package/.agents/testing_strategy_js/agents/openai.yaml +8 -0
  348. package/.agents/testing_strategy_js/agents/qwen.json +19 -0
  349. package/.agents/testing_strategy_js/agents/skill.yaml +23 -0
  350. package/.agents/tests_quality_review/agents/claude.json +19 -0
  351. package/.agents/tests_quality_review/agents/copilot.json +19 -0
  352. package/.agents/tests_quality_review/agents/gemini.json +19 -0
  353. package/.agents/tests_quality_review/agents/openai.yaml +8 -0
  354. package/.agents/tests_quality_review/agents/qwen.json +19 -0
  355. package/.agents/tests_quality_review/agents/skill.yaml +23 -0
  356. package/.agents/threat_model_baseline/agents/claude.json +19 -0
  357. package/.agents/threat_model_baseline/agents/copilot.json +19 -0
  358. package/.agents/threat_model_baseline/agents/gemini.json +19 -0
  359. package/.agents/threat_model_baseline/agents/openai.yaml +8 -0
  360. package/.agents/threat_model_baseline/agents/qwen.json +19 -0
  361. package/.agents/threat_model_baseline/agents/skill.yaml +23 -0
  362. package/.agents/tooling_bun_biome/agents/claude.json +19 -0
  363. package/.agents/tooling_bun_biome/agents/copilot.json +19 -0
  364. package/.agents/tooling_bun_biome/agents/gemini.json +19 -0
  365. package/.agents/tooling_bun_biome/agents/openai.yaml +8 -0
  366. package/.agents/tooling_bun_biome/agents/qwen.json +19 -0
  367. package/.agents/tooling_bun_biome/agents/skill.yaml +23 -0
  368. package/.agents/typescript_beast_practices/agents/claude.json +19 -0
  369. package/.agents/typescript_beast_practices/agents/copilot.json +19 -0
  370. package/.agents/typescript_beast_practices/agents/gemini.json +19 -0
  371. package/.agents/typescript_beast_practices/agents/openai.yaml +8 -0
  372. package/.agents/typescript_beast_practices/agents/qwen.json +19 -0
  373. package/.agents/typescript_beast_practices/agents/skill.yaml +23 -0
  374. package/.agents/ui_a11y_smoke_review/agents/claude.json +20 -0
  375. package/.agents/ui_a11y_smoke_review/agents/copilot.json +20 -0
  376. package/.agents/ui_a11y_smoke_review/agents/gemini.json +20 -0
  377. package/.agents/ui_a11y_smoke_review/agents/openai.yaml +8 -0
  378. package/.agents/ui_a11y_smoke_review/agents/qwen.json +20 -0
  379. package/.agents/ui_a11y_smoke_review/agents/skill.yaml +24 -0
  380. package/.agents/ui_inventory/agents/claude.json +18 -0
  381. package/.agents/ui_inventory/agents/copilot.json +18 -0
  382. package/.agents/ui_inventory/agents/gemini.json +18 -0
  383. package/.agents/ui_inventory/agents/openai.yaml +8 -0
  384. package/.agents/ui_inventory/agents/qwen.json +18 -0
  385. package/.agents/ui_inventory/agents/skill.yaml +22 -0
  386. package/.agents/ux_discovery/agents/claude.json +17 -0
  387. package/.agents/ux_discovery/agents/copilot.json +17 -0
  388. package/.agents/ux_discovery/agents/gemini.json +17 -0
  389. package/.agents/ux_discovery/agents/openai.yaml +8 -0
  390. package/.agents/ux_discovery/agents/qwen.json +17 -0
  391. package/.agents/ux_discovery/agents/skill.yaml +21 -0
  392. package/.agents/ux_spec/agents/claude.json +18 -0
  393. package/.agents/ux_spec/agents/copilot.json +18 -0
  394. package/.agents/ux_spec/agents/gemini.json +18 -0
  395. package/.agents/ux_spec/agents/openai.yaml +8 -0
  396. package/.agents/ux_spec/agents/qwen.json +18 -0
  397. package/.agents/ux_spec/agents/skill.yaml +22 -0
  398. package/.agents/wix_iframe_sdk/SKILL.md +1 -3
  399. package/.agents/wix_iframe_sdk/agents/claude.json +18 -0
  400. package/.agents/wix_iframe_sdk/agents/copilot.json +18 -0
  401. package/.agents/wix_iframe_sdk/agents/gemini.json +18 -0
  402. package/.agents/wix_iframe_sdk/agents/openai.yaml +8 -0
  403. package/.agents/wix_iframe_sdk/agents/qwen.json +18 -0
  404. package/.agents/wix_iframe_sdk/agents/skill.yaml +22 -0
  405. package/.agents/wix_self_hosted_embedded_script/agents/claude.json +21 -0
  406. package/.agents/wix_self_hosted_embedded_script/agents/copilot.json +21 -0
  407. package/.agents/wix_self_hosted_embedded_script/agents/gemini.json +21 -0
  408. package/.agents/wix_self_hosted_embedded_script/agents/openai.yaml +8 -0
  409. package/.agents/wix_self_hosted_embedded_script/agents/qwen.json +21 -0
  410. package/.agents/wix_self_hosted_embedded_script/agents/skill.yaml +25 -0
  411. package/.agents/workflows/auto-restart-containers.md +51 -0
  412. package/.agents/workflows/pipeline-rules.md +137 -0
  413. package/.agents/workflows/start-task.md +121 -0
  414. package/AGENTS.md +3 -0
  415. package/AGENTS.yaml +105 -0
  416. package/README.md +2 -2
  417. package/agents/architect.md +21 -0
  418. package/agents/conductor.md +31 -12
  419. package/agents/devops.md +18 -0
  420. package/agents/orchestrator.claude.json +95 -0
  421. package/agents/orchestrator.copilot.json +95 -0
  422. package/agents/orchestrator.gemini.json +95 -0
  423. package/agents/orchestrator.openai.yaml +92 -0
  424. package/agents/orchestrator.qwen.json +95 -0
  425. package/agents/product_manager.md +6 -0
  426. package/agents/reviewer.md +15 -0
  427. package/agents/senior_full_stack.md +15 -0
  428. package/agents/tester.md +71 -2
  429. package/agents/ux_ui_designer.md +282 -272
  430. package/dist/doctor.js +6 -1
  431. package/dist/installer.js +4 -0
  432. package/dist/metadataAudit.d.ts +15 -0
  433. package/dist/metadataAudit.js +277 -0
  434. package/dist/platforms/adapters.js +32 -5
  435. package/dist/platforms/metadataSidecars.d.ts +55 -0
  436. package/dist/platforms/metadataSidecars.js +96 -0
  437. package/dist/types.d.ts +1 -0
  438. package/locales/en/.agents/a11y_baseline/agents/claude.json +17 -0
  439. package/locales/en/.agents/a11y_baseline/agents/copilot.json +17 -0
  440. package/locales/en/.agents/a11y_baseline/agents/gemini.json +17 -0
  441. package/locales/en/.agents/a11y_baseline/agents/openai.yaml +8 -0
  442. package/locales/en/.agents/a11y_baseline/agents/qwen.json +17 -0
  443. package/locales/en/.agents/a11y_baseline/agents/skill.yaml +21 -0
  444. package/locales/en/.agents/adr_log/agents/claude.json +18 -0
  445. package/locales/en/.agents/adr_log/agents/copilot.json +18 -0
  446. package/locales/en/.agents/adr_log/agents/gemini.json +18 -0
  447. package/locales/en/.agents/adr_log/agents/openai.yaml +8 -0
  448. package/locales/en/.agents/adr_log/agents/qwen.json +18 -0
  449. package/locales/en/.agents/adr_log/agents/skill.yaml +22 -0
  450. package/locales/en/.agents/api_contract_compliance_review/agents/claude.json +19 -0
  451. package/locales/en/.agents/api_contract_compliance_review/agents/copilot.json +19 -0
  452. package/locales/en/.agents/api_contract_compliance_review/agents/gemini.json +19 -0
  453. package/locales/en/.agents/api_contract_compliance_review/agents/openai.yaml +8 -0
  454. package/locales/en/.agents/api_contract_compliance_review/agents/qwen.json +19 -0
  455. package/locales/en/.agents/api_contract_compliance_review/agents/skill.yaml +23 -0
  456. package/locales/en/.agents/api_contracts/agents/claude.json +17 -0
  457. package/locales/en/.agents/api_contracts/agents/copilot.json +17 -0
  458. package/locales/en/.agents/api_contracts/agents/gemini.json +17 -0
  459. package/locales/en/.agents/api_contracts/agents/openai.yaml +8 -0
  460. package/locales/en/.agents/api_contracts/agents/qwen.json +17 -0
  461. package/locales/en/.agents/api_contracts/agents/skill.yaml +21 -0
  462. package/locales/en/.agents/architecture_compliance_review/agents/claude.json +18 -0
  463. package/locales/en/.agents/architecture_compliance_review/agents/copilot.json +18 -0
  464. package/locales/en/.agents/architecture_compliance_review/agents/gemini.json +18 -0
  465. package/locales/en/.agents/architecture_compliance_review/agents/openai.yaml +8 -0
  466. package/locales/en/.agents/architecture_compliance_review/agents/qwen.json +18 -0
  467. package/locales/en/.agents/architecture_compliance_review/agents/skill.yaml +22 -0
  468. package/locales/en/.agents/architecture_doc/agents/claude.json +18 -0
  469. package/locales/en/.agents/architecture_doc/agents/copilot.json +18 -0
  470. package/locales/en/.agents/architecture_doc/agents/gemini.json +18 -0
  471. package/locales/en/.agents/architecture_doc/agents/openai.yaml +8 -0
  472. package/locales/en/.agents/architecture_doc/agents/qwen.json +18 -0
  473. package/locales/en/.agents/architecture_doc/agents/skill.yaml +22 -0
  474. package/locales/en/.agents/board/agents/claude.json +16 -0
  475. package/locales/en/.agents/board/agents/copilot.json +16 -0
  476. package/locales/en/.agents/board/agents/gemini.json +16 -0
  477. package/locales/en/.agents/board/agents/openai.yaml +8 -0
  478. package/locales/en/.agents/board/agents/qwen.json +16 -0
  479. package/locales/en/.agents/board/agents/skill.yaml +20 -0
  480. package/locales/en/.agents/cloud_infrastructure_security/agents/claude.json +18 -0
  481. package/locales/en/.agents/cloud_infrastructure_security/agents/copilot.json +18 -0
  482. package/locales/en/.agents/cloud_infrastructure_security/agents/gemini.json +18 -0
  483. package/locales/en/.agents/cloud_infrastructure_security/agents/openai.yaml +8 -0
  484. package/locales/en/.agents/cloud_infrastructure_security/agents/qwen.json +18 -0
  485. package/locales/en/.agents/cloud_infrastructure_security/agents/skill.yaml +22 -0
  486. package/locales/en/.agents/code_review_checklist/agents/claude.json +18 -0
  487. package/locales/en/.agents/code_review_checklist/agents/copilot.json +18 -0
  488. package/locales/en/.agents/code_review_checklist/agents/gemini.json +18 -0
  489. package/locales/en/.agents/code_review_checklist/agents/openai.yaml +8 -0
  490. package/locales/en/.agents/code_review_checklist/agents/qwen.json +18 -0
  491. package/locales/en/.agents/code_review_checklist/agents/skill.yaml +22 -0
  492. package/locales/en/.agents/current_state_analysis/agents/claude.json +18 -0
  493. package/locales/en/.agents/current_state_analysis/agents/copilot.json +18 -0
  494. package/locales/en/.agents/current_state_analysis/agents/gemini.json +18 -0
  495. package/locales/en/.agents/current_state_analysis/agents/openai.yaml +8 -0
  496. package/locales/en/.agents/current_state_analysis/agents/qwen.json +18 -0
  497. package/locales/en/.agents/current_state_analysis/agents/skill.yaml +22 -0
  498. package/locales/en/.agents/data_model/agents/claude.json +17 -0
  499. package/locales/en/.agents/data_model/agents/copilot.json +17 -0
  500. package/locales/en/.agents/data_model/agents/gemini.json +17 -0
  501. package/locales/en/.agents/data_model/agents/openai.yaml +8 -0
  502. package/locales/en/.agents/data_model/agents/qwen.json +17 -0
  503. package/locales/en/.agents/data_model/agents/skill.yaml +21 -0
  504. package/locales/en/.agents/dependency_supply_chain_review/agents/claude.json +19 -0
  505. package/locales/en/.agents/dependency_supply_chain_review/agents/copilot.json +19 -0
  506. package/locales/en/.agents/dependency_supply_chain_review/agents/gemini.json +19 -0
  507. package/locales/en/.agents/dependency_supply_chain_review/agents/openai.yaml +8 -0
  508. package/locales/en/.agents/dependency_supply_chain_review/agents/qwen.json +19 -0
  509. package/locales/en/.agents/dependency_supply_chain_review/agents/skill.yaml +23 -0
  510. package/locales/en/.agents/deployment_ci_plan/agents/claude.json +19 -0
  511. package/locales/en/.agents/deployment_ci_plan/agents/copilot.json +19 -0
  512. package/locales/en/.agents/deployment_ci_plan/agents/gemini.json +19 -0
  513. package/locales/en/.agents/deployment_ci_plan/agents/openai.yaml +8 -0
  514. package/locales/en/.agents/deployment_ci_plan/agents/qwen.json +19 -0
  515. package/locales/en/.agents/deployment_ci_plan/agents/skill.yaml +23 -0
  516. package/locales/en/.agents/design_intake/agents/claude.json +18 -0
  517. package/locales/en/.agents/design_intake/agents/copilot.json +18 -0
  518. package/locales/en/.agents/design_intake/agents/gemini.json +18 -0
  519. package/locales/en/.agents/design_intake/agents/openai.yaml +8 -0
  520. package/locales/en/.agents/design_intake/agents/qwen.json +18 -0
  521. package/locales/en/.agents/design_intake/agents/skill.yaml +22 -0
  522. package/locales/en/.agents/design_parity_review/SKILL.md +55 -85
  523. package/locales/en/.agents/design_parity_review/agents/claude.json +19 -0
  524. package/locales/en/.agents/design_parity_review/agents/copilot.json +19 -0
  525. package/locales/en/.agents/design_parity_review/agents/gemini.json +19 -0
  526. package/locales/en/.agents/design_parity_review/agents/openai.yaml +8 -0
  527. package/locales/en/.agents/design_parity_review/agents/qwen.json +19 -0
  528. package/locales/en/.agents/design_parity_review/agents/skill.yaml +23 -0
  529. package/locales/en/.agents/design_systems/agents/claude.json +18 -0
  530. package/locales/en/.agents/design_systems/agents/copilot.json +18 -0
  531. package/locales/en/.agents/design_systems/agents/gemini.json +18 -0
  532. package/locales/en/.agents/design_systems/agents/openai.yaml +8 -0
  533. package/locales/en/.agents/design_systems/agents/qwen.json +18 -0
  534. package/locales/en/.agents/design_systems/agents/skill.yaml +22 -0
  535. package/locales/en/.agents/dev_reference_snippets/agents/claude.json +19 -0
  536. package/locales/en/.agents/dev_reference_snippets/agents/copilot.json +19 -0
  537. package/locales/en/.agents/dev_reference_snippets/agents/gemini.json +19 -0
  538. package/locales/en/.agents/dev_reference_snippets/agents/openai.yaml +8 -0
  539. package/locales/en/.agents/dev_reference_snippets/agents/qwen.json +19 -0
  540. package/locales/en/.agents/dev_reference_snippets/agents/skill.yaml +23 -0
  541. package/locales/en/.agents/docker_kubernetes_architecture/agents/claude.json +18 -0
  542. package/locales/en/.agents/docker_kubernetes_architecture/agents/copilot.json +18 -0
  543. package/locales/en/.agents/docker_kubernetes_architecture/agents/gemini.json +18 -0
  544. package/locales/en/.agents/docker_kubernetes_architecture/agents/openai.yaml +8 -0
  545. package/locales/en/.agents/docker_kubernetes_architecture/agents/qwen.json +18 -0
  546. package/locales/en/.agents/docker_kubernetes_architecture/agents/skill.yaml +22 -0
  547. package/locales/en/.agents/es2025_beast_practices/agents/claude.json +18 -0
  548. package/locales/en/.agents/es2025_beast_practices/agents/copilot.json +18 -0
  549. package/locales/en/.agents/es2025_beast_practices/agents/gemini.json +18 -0
  550. package/locales/en/.agents/es2025_beast_practices/agents/openai.yaml +8 -0
  551. package/locales/en/.agents/es2025_beast_practices/agents/qwen.json +18 -0
  552. package/locales/en/.agents/es2025_beast_practices/agents/skill.yaml +22 -0
  553. package/locales/en/.agents/gates/agents/claude.json +16 -0
  554. package/locales/en/.agents/gates/agents/copilot.json +16 -0
  555. package/locales/en/.agents/gates/agents/gemini.json +16 -0
  556. package/locales/en/.agents/gates/agents/openai.yaml +8 -0
  557. package/locales/en/.agents/gates/agents/qwen.json +16 -0
  558. package/locales/en/.agents/gates/agents/skill.yaml +20 -0
  559. package/locales/en/.agents/go_beast_practices/agents/claude.json +18 -0
  560. package/locales/en/.agents/go_beast_practices/agents/copilot.json +18 -0
  561. package/locales/en/.agents/go_beast_practices/agents/gemini.json +18 -0
  562. package/locales/en/.agents/go_beast_practices/agents/openai.yaml +8 -0
  563. package/locales/en/.agents/go_beast_practices/agents/qwen.json +18 -0
  564. package/locales/en/.agents/go_beast_practices/agents/skill.yaml +22 -0
  565. package/locales/en/.agents/google_stitch_skill/SKILL.md +117 -0
  566. package/locales/en/.agents/google_stitch_skill/agents/claude.json +19 -0
  567. package/locales/en/.agents/google_stitch_skill/agents/copilot.json +19 -0
  568. package/locales/en/.agents/google_stitch_skill/agents/gemini.json +19 -0
  569. package/locales/en/.agents/google_stitch_skill/agents/openai.yaml +8 -0
  570. package/locales/en/.agents/google_stitch_skill/agents/qwen.json +19 -0
  571. package/locales/en/.agents/google_stitch_skill/agents/skill.yaml +23 -0
  572. package/locales/en/.agents/google_stitch_skill/examples/scr_prompts.md +21 -0
  573. package/locales/en/.agents/google_stitch_skill/resources/budget_planner.md +23 -0
  574. package/locales/en/.agents/handoff/agents/claude.json +16 -0
  575. package/locales/en/.agents/handoff/agents/copilot.json +16 -0
  576. package/locales/en/.agents/handoff/agents/gemini.json +16 -0
  577. package/locales/en/.agents/handoff/agents/openai.yaml +8 -0
  578. package/locales/en/.agents/handoff/agents/qwen.json +16 -0
  579. package/locales/en/.agents/handoff/agents/skill.yaml +20 -0
  580. package/locales/en/.agents/k8s_manifests_conventions/agents/claude.json +18 -0
  581. package/locales/en/.agents/k8s_manifests_conventions/agents/copilot.json +18 -0
  582. package/locales/en/.agents/k8s_manifests_conventions/agents/gemini.json +18 -0
  583. package/locales/en/.agents/k8s_manifests_conventions/agents/openai.yaml +8 -0
  584. package/locales/en/.agents/k8s_manifests_conventions/agents/qwen.json +18 -0
  585. package/locales/en/.agents/k8s_manifests_conventions/agents/skill.yaml +22 -0
  586. package/locales/en/.agents/memory/agents/claude.json +15 -0
  587. package/locales/en/.agents/memory/agents/copilot.json +15 -0
  588. package/locales/en/.agents/memory/agents/gemini.json +15 -0
  589. package/locales/en/.agents/memory/agents/openai.yaml +8 -0
  590. package/locales/en/.agents/memory/agents/qwen.json +15 -0
  591. package/locales/en/.agents/memory/agents/skill.yaml +19 -0
  592. package/locales/en/.agents/mongodb_mongoose_best_practices/agents/claude.json +20 -0
  593. package/locales/en/.agents/mongodb_mongoose_best_practices/agents/copilot.json +20 -0
  594. package/locales/en/.agents/mongodb_mongoose_best_practices/agents/gemini.json +20 -0
  595. package/locales/en/.agents/mongodb_mongoose_best_practices/agents/openai.yaml +8 -0
  596. package/locales/en/.agents/mongodb_mongoose_best_practices/agents/qwen.json +20 -0
  597. package/locales/en/.agents/mongodb_mongoose_best_practices/agents/skill.yaml +24 -0
  598. package/locales/en/.agents/n8n_pinecone_qdrant_supabase/SKILL.md +0 -2
  599. package/locales/en/.agents/n8n_pinecone_qdrant_supabase/agents/claude.json +20 -0
  600. package/locales/en/.agents/n8n_pinecone_qdrant_supabase/agents/copilot.json +20 -0
  601. package/locales/en/.agents/n8n_pinecone_qdrant_supabase/agents/gemini.json +20 -0
  602. package/locales/en/.agents/n8n_pinecone_qdrant_supabase/agents/openai.yaml +8 -0
  603. package/locales/en/.agents/n8n_pinecone_qdrant_supabase/agents/qwen.json +20 -0
  604. package/locales/en/.agents/n8n_pinecone_qdrant_supabase/agents/skill.yaml +24 -0
  605. package/locales/en/.agents/node_express_beast_practices/agents/claude.json +20 -0
  606. package/locales/en/.agents/node_express_beast_practices/agents/copilot.json +20 -0
  607. package/locales/en/.agents/node_express_beast_practices/agents/gemini.json +20 -0
  608. package/locales/en/.agents/node_express_beast_practices/agents/openai.yaml +8 -0
  609. package/locales/en/.agents/node_express_beast_practices/agents/qwen.json +20 -0
  610. package/locales/en/.agents/node_express_beast_practices/agents/skill.yaml +24 -0
  611. package/locales/en/.agents/observability_logging/agents/claude.json +17 -0
  612. package/locales/en/.agents/observability_logging/agents/copilot.json +17 -0
  613. package/locales/en/.agents/observability_logging/agents/gemini.json +17 -0
  614. package/locales/en/.agents/observability_logging/agents/openai.yaml +8 -0
  615. package/locales/en/.agents/observability_logging/agents/qwen.json +17 -0
  616. package/locales/en/.agents/observability_logging/agents/skill.yaml +21 -0
  617. package/locales/en/.agents/observability_plan/agents/claude.json +16 -0
  618. package/locales/en/.agents/observability_plan/agents/copilot.json +16 -0
  619. package/locales/en/.agents/observability_plan/agents/gemini.json +16 -0
  620. package/locales/en/.agents/observability_plan/agents/openai.yaml +8 -0
  621. package/locales/en/.agents/observability_plan/agents/qwen.json +16 -0
  622. package/locales/en/.agents/observability_plan/agents/skill.yaml +20 -0
  623. package/locales/en/.agents/observability_review/agents/claude.json +16 -0
  624. package/locales/en/.agents/observability_review/agents/copilot.json +16 -0
  625. package/locales/en/.agents/observability_review/agents/gemini.json +16 -0
  626. package/locales/en/.agents/observability_review/agents/openai.yaml +8 -0
  627. package/locales/en/.agents/observability_review/agents/qwen.json +16 -0
  628. package/locales/en/.agents/observability_review/agents/skill.yaml +20 -0
  629. package/locales/en/.agents/performance_review_baseline/agents/claude.json +18 -0
  630. package/locales/en/.agents/performance_review_baseline/agents/copilot.json +18 -0
  631. package/locales/en/.agents/performance_review_baseline/agents/gemini.json +18 -0
  632. package/locales/en/.agents/performance_review_baseline/agents/openai.yaml +8 -0
  633. package/locales/en/.agents/performance_review_baseline/agents/qwen.json +18 -0
  634. package/locales/en/.agents/performance_review_baseline/agents/skill.yaml +22 -0
  635. package/locales/en/.agents/pm_backlog/agents/claude.json +18 -0
  636. package/locales/en/.agents/pm_backlog/agents/copilot.json +18 -0
  637. package/locales/en/.agents/pm_backlog/agents/gemini.json +18 -0
  638. package/locales/en/.agents/pm_backlog/agents/openai.yaml +8 -0
  639. package/locales/en/.agents/pm_backlog/agents/qwen.json +18 -0
  640. package/locales/en/.agents/pm_backlog/agents/skill.yaml +22 -0
  641. package/locales/en/.agents/pm_interview/agents/claude.json +17 -0
  642. package/locales/en/.agents/pm_interview/agents/copilot.json +17 -0
  643. package/locales/en/.agents/pm_interview/agents/gemini.json +17 -0
  644. package/locales/en/.agents/pm_interview/agents/openai.yaml +8 -0
  645. package/locales/en/.agents/pm_interview/agents/qwen.json +17 -0
  646. package/locales/en/.agents/pm_interview/agents/skill.yaml +21 -0
  647. package/locales/en/.agents/pm_prd/agents/claude.json +18 -0
  648. package/locales/en/.agents/pm_prd/agents/copilot.json +18 -0
  649. package/locales/en/.agents/pm_prd/agents/gemini.json +18 -0
  650. package/locales/en/.agents/pm_prd/agents/openai.yaml +8 -0
  651. package/locales/en/.agents/pm_prd/agents/qwen.json +18 -0
  652. package/locales/en/.agents/pm_prd/agents/skill.yaml +22 -0
  653. package/locales/en/.agents/qa_api_contract_tests/agents/claude.json +19 -0
  654. package/locales/en/.agents/qa_api_contract_tests/agents/copilot.json +19 -0
  655. package/locales/en/.agents/qa_api_contract_tests/agents/gemini.json +19 -0
  656. package/locales/en/.agents/qa_api_contract_tests/agents/openai.yaml +8 -0
  657. package/locales/en/.agents/qa_api_contract_tests/agents/qwen.json +19 -0
  658. package/locales/en/.agents/qa_api_contract_tests/agents/skill.yaml +23 -0
  659. package/locales/en/.agents/qa_browser_testing/SKILL.md +87 -0
  660. package/locales/en/.agents/qa_browser_testing/agents/claude.json +19 -0
  661. package/locales/en/.agents/qa_browser_testing/agents/copilot.json +19 -0
  662. package/locales/en/.agents/qa_browser_testing/agents/gemini.json +19 -0
  663. package/locales/en/.agents/qa_browser_testing/agents/openai.yaml +8 -0
  664. package/locales/en/.agents/qa_browser_testing/agents/qwen.json +19 -0
  665. package/locales/en/.agents/qa_browser_testing/agents/skill.yaml +23 -0
  666. package/locales/en/.agents/qa_e2e_playwright/SKILL.md +116 -0
  667. package/locales/en/.agents/qa_e2e_playwright/agents/claude.json +19 -0
  668. package/locales/en/.agents/qa_e2e_playwright/agents/copilot.json +19 -0
  669. package/locales/en/.agents/qa_e2e_playwright/agents/gemini.json +19 -0
  670. package/locales/en/.agents/qa_e2e_playwright/agents/openai.yaml +8 -0
  671. package/locales/en/.agents/qa_e2e_playwright/agents/qwen.json +19 -0
  672. package/locales/en/.agents/qa_e2e_playwright/agents/skill.yaml +23 -0
  673. package/locales/en/.agents/qa_manual_run/agents/claude.json +18 -0
  674. package/locales/en/.agents/qa_manual_run/agents/copilot.json +18 -0
  675. package/locales/en/.agents/qa_manual_run/agents/gemini.json +18 -0
  676. package/locales/en/.agents/qa_manual_run/agents/openai.yaml +8 -0
  677. package/locales/en/.agents/qa_manual_run/agents/qwen.json +18 -0
  678. package/locales/en/.agents/qa_manual_run/agents/skill.yaml +22 -0
  679. package/locales/en/.agents/qa_security_smoke_tests/agents/claude.json +19 -0
  680. package/locales/en/.agents/qa_security_smoke_tests/agents/copilot.json +19 -0
  681. package/locales/en/.agents/qa_security_smoke_tests/agents/gemini.json +19 -0
  682. package/locales/en/.agents/qa_security_smoke_tests/agents/openai.yaml +8 -0
  683. package/locales/en/.agents/qa_security_smoke_tests/agents/qwen.json +19 -0
  684. package/locales/en/.agents/qa_security_smoke_tests/agents/skill.yaml +23 -0
  685. package/locales/en/.agents/qa_test_plan/agents/claude.json +18 -0
  686. package/locales/en/.agents/qa_test_plan/agents/copilot.json +18 -0
  687. package/locales/en/.agents/qa_test_plan/agents/gemini.json +18 -0
  688. package/locales/en/.agents/qa_test_plan/agents/openai.yaml +8 -0
  689. package/locales/en/.agents/qa_test_plan/agents/qwen.json +18 -0
  690. package/locales/en/.agents/qa_test_plan/agents/skill.yaml +22 -0
  691. package/locales/en/.agents/qa_ui_a11y_smoke/agents/claude.json +19 -0
  692. package/locales/en/.agents/qa_ui_a11y_smoke/agents/copilot.json +19 -0
  693. package/locales/en/.agents/qa_ui_a11y_smoke/agents/gemini.json +19 -0
  694. package/locales/en/.agents/qa_ui_a11y_smoke/agents/openai.yaml +8 -0
  695. package/locales/en/.agents/qa_ui_a11y_smoke/agents/qwen.json +19 -0
  696. package/locales/en/.agents/qa_ui_a11y_smoke/agents/skill.yaml +23 -0
  697. package/locales/en/.agents/react_15_3_wix_iframe/agents/claude.json +21 -0
  698. package/locales/en/.agents/react_15_3_wix_iframe/agents/copilot.json +21 -0
  699. package/locales/en/.agents/react_15_3_wix_iframe/agents/gemini.json +21 -0
  700. package/locales/en/.agents/react_15_3_wix_iframe/agents/openai.yaml +8 -0
  701. package/locales/en/.agents/react_15_3_wix_iframe/agents/qwen.json +21 -0
  702. package/locales/en/.agents/react_15_3_wix_iframe/agents/skill.yaml +25 -0
  703. package/locales/en/.agents/react_beast_practices/agents/claude.json +18 -0
  704. package/locales/en/.agents/react_beast_practices/agents/copilot.json +18 -0
  705. package/locales/en/.agents/react_beast_practices/agents/gemini.json +18 -0
  706. package/locales/en/.agents/react_beast_practices/agents/openai.yaml +8 -0
  707. package/locales/en/.agents/react_beast_practices/agents/qwen.json +18 -0
  708. package/locales/en/.agents/react_beast_practices/agents/skill.yaml +22 -0
  709. package/locales/en/.agents/release_gate/agents/claude.json +17 -0
  710. package/locales/en/.agents/release_gate/agents/copilot.json +17 -0
  711. package/locales/en/.agents/release_gate/agents/gemini.json +17 -0
  712. package/locales/en/.agents/release_gate/agents/openai.yaml +8 -0
  713. package/locales/en/.agents/release_gate/agents/qwen.json +17 -0
  714. package/locales/en/.agents/release_gate/agents/skill.yaml +21 -0
  715. package/locales/en/.agents/release_gate_checklist_template/agents/claude.json +20 -0
  716. package/locales/en/.agents/release_gate_checklist_template/agents/copilot.json +20 -0
  717. package/locales/en/.agents/release_gate_checklist_template/agents/gemini.json +20 -0
  718. package/locales/en/.agents/release_gate_checklist_template/agents/openai.yaml +8 -0
  719. package/locales/en/.agents/release_gate_checklist_template/agents/qwen.json +20 -0
  720. package/locales/en/.agents/release_gate_checklist_template/agents/skill.yaml +24 -0
  721. package/locales/en/.agents/review_reference_snippets/agents/claude.json +19 -0
  722. package/locales/en/.agents/review_reference_snippets/agents/copilot.json +19 -0
  723. package/locales/en/.agents/review_reference_snippets/agents/gemini.json +19 -0
  724. package/locales/en/.agents/review_reference_snippets/agents/openai.yaml +8 -0
  725. package/locales/en/.agents/review_reference_snippets/agents/qwen.json +19 -0
  726. package/locales/en/.agents/review_reference_snippets/agents/skill.yaml +23 -0
  727. package/locales/en/.agents/security_baseline_dev/agents/claude.json +19 -0
  728. package/locales/en/.agents/security_baseline_dev/agents/copilot.json +19 -0
  729. package/locales/en/.agents/security_baseline_dev/agents/gemini.json +19 -0
  730. package/locales/en/.agents/security_baseline_dev/agents/openai.yaml +8 -0
  731. package/locales/en/.agents/security_baseline_dev/agents/qwen.json +19 -0
  732. package/locales/en/.agents/security_baseline_dev/agents/skill.yaml +23 -0
  733. package/locales/en/.agents/security_review/agents/claude.json +18 -0
  734. package/locales/en/.agents/security_review/agents/copilot.json +18 -0
  735. package/locales/en/.agents/security_review/agents/gemini.json +18 -0
  736. package/locales/en/.agents/security_review/agents/openai.yaml +8 -0
  737. package/locales/en/.agents/security_review/agents/qwen.json +18 -0
  738. package/locales/en/.agents/security_review/agents/skill.yaml +22 -0
  739. package/locales/en/.agents/security_review_baseline/SKILL.md +14 -14
  740. package/locales/en/.agents/security_review_baseline/agents/claude.json +18 -0
  741. package/locales/en/.agents/security_review_baseline/agents/copilot.json +18 -0
  742. package/locales/en/.agents/security_review_baseline/agents/gemini.json +18 -0
  743. package/locales/en/.agents/security_review_baseline/agents/openai.yaml +8 -0
  744. package/locales/en/.agents/security_review_baseline/agents/qwen.json +18 -0
  745. package/locales/en/.agents/security_review_baseline/agents/skill.yaml +22 -0
  746. package/locales/en/.agents/state_rtk_beast_practices/SKILL.md +8 -8
  747. package/locales/en/.agents/state_rtk_beast_practices/agents/claude.json +20 -0
  748. package/locales/en/.agents/state_rtk_beast_practices/agents/copilot.json +20 -0
  749. package/locales/en/.agents/state_rtk_beast_practices/agents/gemini.json +20 -0
  750. package/locales/en/.agents/state_rtk_beast_practices/agents/openai.yaml +8 -0
  751. package/locales/en/.agents/state_rtk_beast_practices/agents/qwen.json +20 -0
  752. package/locales/en/.agents/state_rtk_beast_practices/agents/skill.yaml +24 -0
  753. package/locales/en/.agents/state_zustand_beast_practices/SKILL.md +5 -5
  754. package/locales/en/.agents/state_zustand_beast_practices/agents/claude.json +20 -0
  755. package/locales/en/.agents/state_zustand_beast_practices/agents/copilot.json +20 -0
  756. package/locales/en/.agents/state_zustand_beast_practices/agents/gemini.json +20 -0
  757. package/locales/en/.agents/state_zustand_beast_practices/agents/openai.yaml +8 -0
  758. package/locales/en/.agents/state_zustand_beast_practices/agents/qwen.json +20 -0
  759. package/locales/en/.agents/state_zustand_beast_practices/agents/skill.yaml +24 -0
  760. package/locales/en/.agents/styling_css_stack/SKILL.md +6 -6
  761. package/locales/en/.agents/styling_css_stack/agents/claude.json +19 -0
  762. package/locales/en/.agents/styling_css_stack/agents/copilot.json +19 -0
  763. package/locales/en/.agents/styling_css_stack/agents/gemini.json +19 -0
  764. package/locales/en/.agents/styling_css_stack/agents/openai.yaml +8 -0
  765. package/locales/en/.agents/styling_css_stack/agents/qwen.json +19 -0
  766. package/locales/en/.agents/styling_css_stack/agents/skill.yaml +23 -0
  767. package/locales/en/.agents/system_design_checklist/SKILL.md +30 -30
  768. package/locales/en/.agents/system_design_checklist/agents/claude.json +17 -0
  769. package/locales/en/.agents/system_design_checklist/agents/copilot.json +17 -0
  770. package/locales/en/.agents/system_design_checklist/agents/gemini.json +17 -0
  771. package/locales/en/.agents/system_design_checklist/agents/openai.yaml +8 -0
  772. package/locales/en/.agents/system_design_checklist/agents/qwen.json +17 -0
  773. package/locales/en/.agents/system_design_checklist/agents/skill.yaml +21 -0
  774. package/locales/en/.agents/tanstack_beast_practices/SKILL.md +8 -8
  775. package/locales/en/.agents/tanstack_beast_practices/agents/claude.json +18 -0
  776. package/locales/en/.agents/tanstack_beast_practices/agents/copilot.json +18 -0
  777. package/locales/en/.agents/tanstack_beast_practices/agents/gemini.json +18 -0
  778. package/locales/en/.agents/tanstack_beast_practices/agents/openai.yaml +8 -0
  779. package/locales/en/.agents/tanstack_beast_practices/agents/qwen.json +18 -0
  780. package/locales/en/.agents/tanstack_beast_practices/agents/skill.yaml +22 -0
  781. package/locales/en/.agents/tdd_workflow/SKILL.md +22 -22
  782. package/locales/en/.agents/tdd_workflow/agents/claude.json +17 -0
  783. package/locales/en/.agents/tdd_workflow/agents/copilot.json +17 -0
  784. package/locales/en/.agents/tdd_workflow/agents/gemini.json +17 -0
  785. package/locales/en/.agents/tdd_workflow/agents/openai.yaml +8 -0
  786. package/locales/en/.agents/tdd_workflow/agents/qwen.json +17 -0
  787. package/locales/en/.agents/tdd_workflow/agents/skill.yaml +21 -0
  788. package/locales/en/.agents/testing_strategy_js/SKILL.md +14 -14
  789. package/locales/en/.agents/testing_strategy_js/agents/claude.json +19 -0
  790. package/locales/en/.agents/testing_strategy_js/agents/copilot.json +19 -0
  791. package/locales/en/.agents/testing_strategy_js/agents/gemini.json +19 -0
  792. package/locales/en/.agents/testing_strategy_js/agents/openai.yaml +8 -0
  793. package/locales/en/.agents/testing_strategy_js/agents/qwen.json +19 -0
  794. package/locales/en/.agents/testing_strategy_js/agents/skill.yaml +23 -0
  795. package/locales/en/.agents/tests_quality_review/SKILL.md +11 -11
  796. package/locales/en/.agents/tests_quality_review/agents/claude.json +18 -0
  797. package/locales/en/.agents/tests_quality_review/agents/copilot.json +18 -0
  798. package/locales/en/.agents/tests_quality_review/agents/gemini.json +18 -0
  799. package/locales/en/.agents/tests_quality_review/agents/openai.yaml +8 -0
  800. package/locales/en/.agents/tests_quality_review/agents/qwen.json +18 -0
  801. package/locales/en/.agents/tests_quality_review/agents/skill.yaml +22 -0
  802. package/locales/en/.agents/threat_model_baseline/SKILL.md +35 -35
  803. package/locales/en/.agents/threat_model_baseline/agents/claude.json +18 -0
  804. package/locales/en/.agents/threat_model_baseline/agents/copilot.json +18 -0
  805. package/locales/en/.agents/threat_model_baseline/agents/gemini.json +18 -0
  806. package/locales/en/.agents/threat_model_baseline/agents/openai.yaml +8 -0
  807. package/locales/en/.agents/threat_model_baseline/agents/qwen.json +18 -0
  808. package/locales/en/.agents/threat_model_baseline/agents/skill.yaml +22 -0
  809. package/locales/en/.agents/tooling_bun_biome/SKILL.md +6 -6
  810. package/locales/en/.agents/tooling_bun_biome/agents/claude.json +19 -0
  811. package/locales/en/.agents/tooling_bun_biome/agents/copilot.json +19 -0
  812. package/locales/en/.agents/tooling_bun_biome/agents/gemini.json +19 -0
  813. package/locales/en/.agents/tooling_bun_biome/agents/openai.yaml +8 -0
  814. package/locales/en/.agents/tooling_bun_biome/agents/qwen.json +19 -0
  815. package/locales/en/.agents/tooling_bun_biome/agents/skill.yaml +23 -0
  816. package/locales/en/.agents/typescript_beast_practices/SKILL.md +8 -8
  817. package/locales/en/.agents/typescript_beast_practices/agents/claude.json +18 -0
  818. package/locales/en/.agents/typescript_beast_practices/agents/copilot.json +18 -0
  819. package/locales/en/.agents/typescript_beast_practices/agents/gemini.json +18 -0
  820. package/locales/en/.agents/typescript_beast_practices/agents/openai.yaml +8 -0
  821. package/locales/en/.agents/typescript_beast_practices/agents/qwen.json +18 -0
  822. package/locales/en/.agents/typescript_beast_practices/agents/skill.yaml +22 -0
  823. package/locales/en/.agents/ui_a11y_smoke_review/SKILL.md +8 -8
  824. package/locales/en/.agents/ui_a11y_smoke_review/agents/claude.json +20 -0
  825. package/locales/en/.agents/ui_a11y_smoke_review/agents/copilot.json +20 -0
  826. package/locales/en/.agents/ui_a11y_smoke_review/agents/gemini.json +20 -0
  827. package/locales/en/.agents/ui_a11y_smoke_review/agents/openai.yaml +8 -0
  828. package/locales/en/.agents/ui_a11y_smoke_review/agents/qwen.json +20 -0
  829. package/locales/en/.agents/ui_a11y_smoke_review/agents/skill.yaml +24 -0
  830. package/locales/en/.agents/ui_inventory/SKILL.md +24 -24
  831. package/locales/en/.agents/ui_inventory/agents/claude.json +18 -0
  832. package/locales/en/.agents/ui_inventory/agents/copilot.json +18 -0
  833. package/locales/en/.agents/ui_inventory/agents/gemini.json +18 -0
  834. package/locales/en/.agents/ui_inventory/agents/openai.yaml +8 -0
  835. package/locales/en/.agents/ui_inventory/agents/qwen.json +18 -0
  836. package/locales/en/.agents/ui_inventory/agents/skill.yaml +22 -0
  837. package/locales/en/.agents/ux_discovery/SKILL.md +31 -31
  838. package/locales/en/.agents/ux_discovery/agents/claude.json +17 -0
  839. package/locales/en/.agents/ux_discovery/agents/copilot.json +17 -0
  840. package/locales/en/.agents/ux_discovery/agents/gemini.json +17 -0
  841. package/locales/en/.agents/ux_discovery/agents/openai.yaml +8 -0
  842. package/locales/en/.agents/ux_discovery/agents/qwen.json +17 -0
  843. package/locales/en/.agents/ux_discovery/agents/skill.yaml +21 -0
  844. package/locales/en/.agents/ux_spec/SKILL.md +26 -26
  845. package/locales/en/.agents/ux_spec/agents/claude.json +18 -0
  846. package/locales/en/.agents/ux_spec/agents/copilot.json +18 -0
  847. package/locales/en/.agents/ux_spec/agents/gemini.json +18 -0
  848. package/locales/en/.agents/ux_spec/agents/openai.yaml +8 -0
  849. package/locales/en/.agents/ux_spec/agents/qwen.json +18 -0
  850. package/locales/en/.agents/ux_spec/agents/skill.yaml +22 -0
  851. package/locales/en/.agents/wix_iframe_sdk/SKILL.md +1 -3
  852. package/locales/en/.agents/wix_iframe_sdk/agents/claude.json +19 -0
  853. package/locales/en/.agents/wix_iframe_sdk/agents/copilot.json +19 -0
  854. package/locales/en/.agents/wix_iframe_sdk/agents/gemini.json +19 -0
  855. package/locales/en/.agents/wix_iframe_sdk/agents/openai.yaml +8 -0
  856. package/locales/en/.agents/wix_iframe_sdk/agents/qwen.json +19 -0
  857. package/locales/en/.agents/wix_iframe_sdk/agents/skill.yaml +23 -0
  858. package/locales/en/.agents/wix_self_hosted_embedded_script/agents/claude.json +21 -0
  859. package/locales/en/.agents/wix_self_hosted_embedded_script/agents/copilot.json +21 -0
  860. package/locales/en/.agents/wix_self_hosted_embedded_script/agents/gemini.json +21 -0
  861. package/locales/en/.agents/wix_self_hosted_embedded_script/agents/openai.yaml +8 -0
  862. package/locales/en/.agents/wix_self_hosted_embedded_script/agents/qwen.json +21 -0
  863. package/locales/en/.agents/wix_self_hosted_embedded_script/agents/skill.yaml +25 -0
  864. package/locales/en/.agents/workflows/auto-restart-containers.md +24 -0
  865. package/locales/en/.agents/workflows/pipeline-rules.md +24 -0
  866. package/locales/en/.agents/workflows/start-task.md +27 -0
  867. package/locales/en/AGENTS.md +4 -1
  868. package/locales/en/AGENTS.yaml +105 -0
  869. package/locales/en/agents/architect.md +316 -298
  870. package/locales/en/agents/conductor.md +323 -307
  871. package/locales/en/agents/devops.md +256 -243
  872. package/locales/en/agents/orchestrator.claude.json +95 -0
  873. package/locales/en/agents/orchestrator.copilot.json +95 -0
  874. package/locales/en/agents/orchestrator.gemini.json +95 -0
  875. package/locales/en/agents/orchestrator.openai.yaml +92 -0
  876. package/locales/en/agents/orchestrator.qwen.json +95 -0
  877. package/locales/en/agents/product_manager.md +214 -208
  878. package/locales/en/agents/reviewer.md +248 -241
  879. package/locales/en/agents/senior_full_stack.md +286 -274
  880. package/locales/en/agents/tester.md +281 -254
  881. package/locales/en/agents/ux_ui_designer.md +285 -275
  882. package/package.json +54 -53
@@ -0,0 +1,255 @@
1
+ ---
2
+ name: qa_browser_testing
3
+ description: Визуальное E2E-тестирование через встроенный Antigravity Browser — Pre-Auth Handoff, browser_subagent, скриншоты, visual parity, evidence-сбор.
4
+ last_verified: 2026-03-11
5
+ version: 1.0
6
+ ---
7
+
8
+ # Skill: Antigravity Browser Testing
9
+
10
+ ## Назначение
11
+
12
+ Тестирование через **встроенный браузер Google Antigravity** (`browser_subagent`).
13
+ Основной инструмент Tester-агента для визуальной проверки, UI parity и DEMO gate.
14
+
15
+ > [!IMPORTANT]
16
+ > Этот скил — для **ручного-автоматизированного** тестирования внутри Antigravity.
17
+ > Для CI/CD автоматизации (spec-файлы, pipeline) → `$qa_e2e_playwright`.
18
+
19
+ ---
20
+
21
+ ## Когда использовать
22
+
23
+ - Тестирование Wix Dashboard / Shopify Admin (закрытая среда)
24
+ - Visual parity: сравнение реализации с дизайн-источником (Stitch / Figma / HTML-ref)
25
+ - DEMO gate: проверка DEV-xx срезов
26
+ - Быстрая regression проверка UI
27
+ - Сбор evidence (скриншоты + видео) для QA Report
28
+
29
+ ## Когда НЕ использовать
30
+
31
+ - Нужна автоматизация в CI/CD pipeline → `$qa_e2e_playwright`
32
+ - Unit/integration тестирование → Vitest
33
+ - API contract testing → `$qa_api_contract_tests`
34
+ - Вычислительная логика → unit-тесты
35
+
36
+ ---
37
+
38
+ ## Инструменты
39
+
40
+ | Инструмент | Что делает | Когда |
41
+ |-----------|-----------|-------|
42
+ | `browser_subagent` | Открывает страницу, кликает, вводит текст, проверяет UI | Основной |
43
+ | `capture_browser_screenshot` | Делает скриншот текущей страницы | Каждый шаг проверки |
44
+ | `open_browser_url` | Переходит на URL | Навигация |
45
+ | `read_browser_page` | Читает DOM/текст страницы | Проверка контента |
46
+ | `click_browser_element` | Кликает по элементу | Интерактивная проверка |
47
+
48
+ > [!NOTE]
49
+ > Каждый вызов `browser_subagent` автоматически записывает `.webp` видео.
50
+ > Видео = evidence для QA report и walkthrough.
51
+
52
+ ---
53
+
54
+ ## Pre-Auth Handoff (Wix / Shopify)
55
+
56
+ > **Триггер:** пользователь указывает **«Wix»** или **«Shopify»** при переходе к TEST gate.
57
+
58
+ ### Протокол
59
+
60
+ **Шаг 1 — Запросить авторизацию:**
61
+ ```
62
+ 🌐 Pre-Auth Handoff: обнаружен триггер [Wix/Shopify].
63
+ Пожалуйста:
64
+ 1. Откройте браузер Antigravity
65
+ 2. Залогиньтесь в [Wix Dashboard / Shopify Admin]
66
+ 3. Перейдите на страницу, которую нужно протестировать
67
+ 4. Напишите: "Браузер готов"
68
+ ```
69
+
70
+ **Шаг 2 — Пользователь авторизуется и открывает нужную страницу.**
71
+
72
+ **Шаг 3 — Tester запускает `browser_subagent` со строгими правилами:**
73
+ - ❌ НЕ открывать новые URL (только работать с текущей страницей)
74
+ - ❌ НЕ пытаться навигировать на localhost
75
+ - ✅ Делать скриншот на КАЖДОМ шаге проверки
76
+ - ✅ Кликать, переключать, проверять UI
77
+ - ✅ Записать видео (`.webp`) для evidence
78
+
79
+ **Шаг 4 — Анализ скриншотов и формирование findings.**
80
+
81
+ ### Ограничения
82
+
83
+ | Работает ✅ | Не работает ❌ |
84
+ |------------|---------------|
85
+ | `manage.wix.com` | `localhost` |
86
+ | `admin.shopify.com` | Self-signed SSL |
87
+ | Любой URL с валидным SSL | Wix sandbox iFrame API |
88
+ | Auth state сохраняется | Session expires (~24h) |
89
+
90
+ ---
91
+
92
+ ## Visual Parity через Antigravity Browser
93
+
94
+ > [!IMPORTANT]
95
+ > **Source of truth определяется UX Designer** (обязательный вопрос #2 Clarification Protocol).
96
+ > Если не указан — запросить перед проверкой.
97
+
98
+ ### Алгоритм
99
+
100
+ ```
101
+ 1. Получить reference-скриншот (зависит от Source of Truth):
102
+ (a) Stitch → get_screen() → скачать screenshot через browser_subagent
103
+ (b) Figma → пользователь предоставляет экспорт PNG
104
+ (c) HTML-ref → открыть HTML-файл в browser_subagent → capture_screenshot
105
+
106
+ 2. Получить actual-скриншот:
107
+ → browser_subagent: открыть реализацию → capture_screenshot
108
+
109
+ 3. Визуально сравнить (Tester анализирует оба скриншота):
110
+ → Структура: элементы на местах?
111
+ → Типографика: шрифт, размер, цвет?
112
+ → Spacing: отступы соответствуют?
113
+ → Цвета: палитра верна?
114
+ → Состояния: все реализованы?
115
+
116
+ 4. Оформить finding:
117
+ → UX-PARITY-xx: PASS / FAIL + скриншот + описание
118
+ ```
119
+
120
+ ### Пример: Stitch как Source of Truth
121
+
122
+ ```
123
+ Шаг 1: get_screen(projectId, screenId) → получить screenshot URL
124
+ Шаг 2: browser_subagent → открыть screenshot URL → capture_screenshot → сохранить как reference
125
+ Шаг 3: browser_subagent → открыть реализацию (Wix Dashboard) → capture_screenshot → сохранить как actual
126
+ Шаг 4: Сравнить reference vs actual → зафиксировать расхождения
127
+ ```
128
+
129
+ ### Пример: Figma как Source of Truth
130
+
131
+ ```
132
+ Шаг 1: Пользователь предоставляет PNG экспорт из Figma
133
+ Шаг 2: browser_subagent → открыть реализацию → capture_screenshot
134
+ Шаг 3: Сравнить Figma PNG vs actual screenshot
135
+ Шаг 4: Оформить findings
136
+ ```
137
+
138
+ ### Пример: HTML-ref как Source of Truth
139
+
140
+ ```
141
+ Шаг 1: browser_subagent → открыть popup_templates/glassmorphism.html → capture_screenshot
142
+ Шаг 2: browser_subagent → открыть реализацию → capture_screenshot
143
+ Шаг 3: Сравнить reference vs actual
144
+ Шаг 4: Оформить findings
145
+ ```
146
+
147
+ ---
148
+
149
+ ## DEMO Gate через Browser
150
+
151
+ ### Протокол DEMO-xx
152
+
153
+ ```
154
+ 1. Получить DEMO-инструкции от Dev (DEMO-xx)
155
+ 2. Pre-Auth (если Wix/Shopify) или открыть URL напрямую
156
+ 3. browser_subagent: выполнить шаги из DEMO
157
+ 4. capture_screenshot на КАЖДОМ шаге
158
+ 5. Зафиксировать: PASS/FAIL + скриншот + описание
159
+ 6. Embed в walkthrough.md
160
+ ```
161
+
162
+ ### Формат evidence
163
+
164
+ ```markdown
165
+ ### DEMO-01: Template Selection
166
+
167
+ ![Step 1: Open editor](path/to/screenshot_step1.png)
168
+ Статус: ✅ PASS — редактор открылся, шаблоны загрузились
169
+
170
+ ![Step 2: Select Glassmorphism](path/to/screenshot_step2.png)
171
+ Статус: ✅ PASS — preview обновился корректно
172
+
173
+ ![Step 3: Save changes](path/to/screenshot_step3.png)
174
+ Статус: ❌ FAIL — toast не появился после сохранения
175
+ ```
176
+
177
+ ---
178
+
179
+ ## browser_subagent Best Practices
180
+
181
+ ### Правила вызова
182
+
183
+ ```
184
+ browser_subagent(
185
+ Task: "Detailed description of what to check and what to return",
186
+ TaskName: "Short descriptive name",
187
+ RecordingName: "lowercase_with_underscores"
188
+ )
189
+ ```
190
+
191
+ ### Что указывать в Task
192
+
193
+ - **Конкретные элементы** для проверки (data-testid, текст, CSS)
194
+ - **Ожидаемый результат** (что должно быть видно)
195
+ - **Условие возврата** (когда считать задачу завершённой)
196
+ - **Скриншоты** — когда именно их делать
197
+
198
+ ### Пример хорошего Task
199
+
200
+ ```
201
+ Navigate to the Widget Design page. Verify that:
202
+ 1. Template selector shows at least 3 templates
203
+ 2. Click on "Glassmorphism" template
204
+ 3. Verify live preview updates with glassmorphism styling
205
+ 4. Take a screenshot after each step.
206
+ Return: screenshot paths and PASS/FAIL status for each step.
207
+ ```
208
+
209
+ ### Пример плохого Task ❌
210
+
211
+ ```
212
+ Check if the page works.
213
+ ```
214
+
215
+ ---
216
+
217
+ ## Anti-patterns
218
+
219
+ - ❌ `browser_subagent` без конкретных шагов — «проверь страницу» слишком размыто
220
+ - ❌ Открывать новые URL после Pre-Auth — потеряем auth state
221
+ - ❌ Не делать скриншоты — нет evidence = нет proof
222
+ - ❌ Визуальная проверка без reference — нужен baseline (Stitch/Figma/HTML)
223
+ - ❌ Игнорировать `.webp` записи — это готовый evidence
224
+ - ❌ Тестировать бизнес-логику через browser — используй unit-тесты
225
+
226
+ ---
227
+
228
+ ## Артефакты (Deliverables)
229
+
230
+ | Артефакт | Формат | Где |
231
+ |----------|--------|-----|
232
+ | Скриншоты шагов | `.png` | Embed в walkthrough.md |
233
+ | Видео-записи | `.webp` | Embed в walkthrough.md |
234
+ | DEMO Results | Таблица | В QA Report |
235
+ | UX Parity Results | Таблица | В QA Report |
236
+ | Findings | P0/P1/P2 блоки | В QA Report |
237
+
238
+ ---
239
+
240
+ ## Выход (формат)
241
+
242
+ ### Browser Test Summary
243
+ | Step | Action | Expected | Actual | Screenshot | Status |
244
+ |------|--------|----------|--------|------------|--------|
245
+ | 1 | ... | ... | ... | 📸 link | PASS/FAIL |
246
+
247
+ ### UX Parity Results
248
+ | UX-PARITY-xx | Screen | Source of Truth | Findings | Status |
249
+ |--------------|--------|----------------|----------|--------|
250
+ | ... | ... | Stitch / Figma / HTML-ref | ... | PASS/FAIL |
251
+
252
+ ### DEMO Results
253
+ | DEMO-xx | Steps verified | Issues | Status |
254
+ |---------|---------------|--------|--------|
255
+ | ... | 5/5 | none | ✅ PASS |
@@ -0,0 +1,19 @@
1
+ {
2
+ "name": "qa_browser_testing",
3
+ "display_name": "Antigravity Browser Testing",
4
+ "description": "Визуальное E2E-тестирование через встроенный Antigravity Browser — Pre-Auth Handoff, browser_subagent, скриншоты, visual parity, evidence-сбор.",
5
+ "default_prompt": "Используй $qa_browser_testing, когда задача относится к навыку \"Antigravity Browser Testing\".",
6
+ "triggers": [
7
+ "qa_browser_testing",
8
+ "qa browser testing",
9
+ "Antigravity Browser Testing",
10
+ "Визуальное E2E-тестирование через встроенный Antigravity Browser — Pre-Auth Handoff, browser_subagent, скриншоты, visual parity, evidence-сбор"
11
+ ],
12
+ "capabilities": [
13
+ "qa",
14
+ "browser",
15
+ "testing"
16
+ ],
17
+ "tools": [],
18
+ "implicit_invocation": true
19
+ }
@@ -0,0 +1,19 @@
1
+ {
2
+ "name": "qa_browser_testing",
3
+ "display_name": "Antigravity Browser Testing",
4
+ "description": "Визуальное E2E-тестирование через встроенный Antigravity Browser — Pre-Auth Handoff, browser_subagent, скриншоты, visual parity, evidence-сбор.",
5
+ "default_prompt": "Используй $qa_browser_testing, когда задача относится к навыку \"Antigravity Browser Testing\".",
6
+ "triggers": [
7
+ "qa_browser_testing",
8
+ "qa browser testing",
9
+ "Antigravity Browser Testing",
10
+ "Визуальное E2E-тестирование через встроенный Antigravity Browser — Pre-Auth Handoff, browser_subagent, скриншоты, visual parity, evidence-сбор"
11
+ ],
12
+ "capabilities": [
13
+ "qa",
14
+ "browser",
15
+ "testing"
16
+ ],
17
+ "tools": [],
18
+ "implicit_invocation": true
19
+ }
@@ -0,0 +1,19 @@
1
+ {
2
+ "name": "qa_browser_testing",
3
+ "display_name": "Antigravity Browser Testing",
4
+ "description": "Визуальное E2E-тестирование через встроенный Antigravity Browser — Pre-Auth Handoff, browser_subagent, скриншоты, visual parity, evidence-сбор.",
5
+ "default_prompt": "Используй $qa_browser_testing, когда задача относится к навыку \"Antigravity Browser Testing\".",
6
+ "triggers": [
7
+ "qa_browser_testing",
8
+ "qa browser testing",
9
+ "Antigravity Browser Testing",
10
+ "Визуальное E2E-тестирование через встроенный Antigravity Browser — Pre-Auth Handoff, browser_subagent, скриншоты, visual parity, evidence-сбор"
11
+ ],
12
+ "capabilities": [
13
+ "qa",
14
+ "browser",
15
+ "testing"
16
+ ],
17
+ "tools": [],
18
+ "implicit_invocation": true
19
+ }
@@ -0,0 +1,8 @@
1
+ interface:
2
+ display_name: "Antigravity Browser Testing"
3
+ short_description: "Визуальное E2E-тестирование через встроенный Antigravity Browser — Pre-Auth Handoff, browser_su…"
4
+ default_prompt: "Используй $qa_browser_testing, когда задача относится к навыку \"Antigravity Browser Testing\"."
5
+ dependencies:
6
+ tools: []
7
+ policy:
8
+ allow_implicit_invocation: true
@@ -0,0 +1,19 @@
1
+ {
2
+ "name": "qa_browser_testing",
3
+ "display_name": "Antigravity Browser Testing",
4
+ "description": "Визуальное E2E-тестирование через встроенный Antigravity Browser — Pre-Auth Handoff, browser_subagent, скриншоты, visual parity, evidence-сбор.",
5
+ "default_prompt": "Используй $qa_browser_testing, когда задача относится к навыку \"Antigravity Browser Testing\".",
6
+ "triggers": [
7
+ "qa_browser_testing",
8
+ "qa browser testing",
9
+ "Antigravity Browser Testing",
10
+ "Визуальное E2E-тестирование через встроенный Antigravity Browser — Pre-Auth Handoff, browser_subagent, скриншоты, visual parity, evidence-сбор"
11
+ ],
12
+ "capabilities": [
13
+ "qa",
14
+ "browser",
15
+ "testing"
16
+ ],
17
+ "tools": [],
18
+ "implicit_invocation": true
19
+ }
@@ -0,0 +1,23 @@
1
+ version: 1
2
+ name: "qa_browser_testing"
3
+ display_name: "Antigravity Browser Testing"
4
+ description: "Визуальное E2E-тестирование через встроенный Antigravity Browser — Pre-Auth Handoff, browser_subagent, скриншоты, visual parity, evidence-сбор."
5
+ default_prompt: "Используй $qa_browser_testing, когда задача относится к навыку \"Antigravity Browser Testing\"."
6
+ triggers:
7
+ - "qa_browser_testing"
8
+ - "qa browser testing"
9
+ - "Antigravity Browser Testing"
10
+ - "Визуальное E2E-тестирование через встроенный Antigravity Browser — Pre-Auth Handoff, browser_subagent, скриншоты, visual parity, evidence-сбор"
11
+ capabilities:
12
+ - "qa"
13
+ - "browser"
14
+ - "testing"
15
+ tools: []
16
+ invocation:
17
+ explicit: true
18
+ implicit: true
19
+ localization:
20
+ default_locale: "ru"
21
+ available_locales:
22
+ - "ru"
23
+ - "en"
@@ -0,0 +1,313 @@
1
+ ---
2
+ name: qa_e2e_playwright
3
+ description: E2E-тестирование через Playwright для CI/CD — автоматизированные spec-файлы, page objects, visual regression, pipeline интеграция. Для ручного тестирования в Antigravity → $qa_browser_testing.
4
+ last_verified: 2026-03-11
5
+ version: 2.0
6
+ ---
7
+
8
+ # Skill: E2E Playwright (CI/CD Automated)
9
+
10
+ ## Назначение
11
+
12
+ Автоматизированный E2E regression suite через **Playwright** для CI/CD pipeline.
13
+ Page Objects, spec-файлы, visual snapshot comparison, GitHub Actions.
14
+
15
+ > [!IMPORTANT]
16
+ > Этот скил — для **автоматизированных тестов в CI/CD**.
17
+ > Для интерактивного тестирования в Google Antigravity → `$qa_browser_testing`.
18
+
19
+ ---
20
+
21
+ ## Когда использовать
22
+
23
+ - Проект дорос до CI/CD pipeline c E2E gate
24
+ - Нужен автоматический regression на каждый PR/deploy
25
+ - Visual regression: pixel-perfect сравнение в CI
26
+ - Стабильный UI, который не будет часто flaky
27
+
28
+ ## Когда НЕ использовать
29
+
30
+ - Тестирование внутри Antigravity → `$qa_browser_testing`
31
+ - Wix/Shopify sandbox (нет доступа из CI) → `$qa_browser_testing`
32
+ - Unit/integration → Vitest
33
+ - Первый срез / нестабильный UI → тесты будут flaky
34
+
35
+ ---
36
+
37
+ ## Стек проекта (SCR)
38
+
39
+ | Компонент | Технология | Расположение |
40
+ |-----------|-----------|-------------|
41
+ | Unit/Integration | **Vitest** | `apps/*/vitest.config.js` |
42
+ | E2E | **Playwright** | `apps/dashboard/e2e/` (создать) |
43
+ | Wix Test Utils | `@wix/wix-ui-test-utils` | В node_modules |
44
+ | Wix UniDriver | `@wix/unidriver-playwright` | В node_modules |
45
+
46
+ ---
47
+
48
+ ## Setup
49
+
50
+ ### 1. Установка
51
+
52
+ ```bash
53
+ cd apps/dashboard
54
+ npm init playwright@latest -- --yes --browser=chromium --lang=js
55
+ ```
56
+
57
+ ### 2. Конфигурация: `playwright.config.js`
58
+
59
+ ```js
60
+ // apps/dashboard/playwright.config.js
61
+ import { defineConfig, devices } from '@playwright/test';
62
+
63
+ export default defineConfig({
64
+ testDir: './e2e',
65
+ timeout: 30_000,
66
+ expect: { timeout: 5_000 },
67
+ fullyParallel: false,
68
+ retries: process.env.CI ? 2 : 0,
69
+ workers: 1,
70
+ reporter: [['html', { open: 'never' }], ['list']],
71
+
72
+ use: {
73
+ baseURL: process.env.BASE_URL || 'https://manage.wix.com',
74
+ trace: 'on-first-retry',
75
+ screenshot: 'only-on-failure',
76
+ video: 'on-first-retry',
77
+ },
78
+
79
+ projects: [
80
+ {
81
+ name: 'wix-dashboard',
82
+ use: { ...devices['Desktop Chrome'] },
83
+ },
84
+ ],
85
+ });
86
+ ```
87
+
88
+ ### 3. Структура директории
89
+
90
+ ```
91
+ apps/dashboard/e2e/
92
+ ├── fixtures/
93
+ │ ├── auth.fixture.js # Auth (storageState)
94
+ │ └── test-data.js # Тестовые данные
95
+ ├── pages/
96
+ │ ├── BasePage.js # Base page object
97
+ │ ├── WidgetDesignPage.js # Widget Design Editor
98
+ │ ├── RulesTriggersPage.js # Rules & Triggers
99
+ │ └── CouponsPage.js # Coupons Management
100
+ ├── specs/
101
+ │ ├── widget-design.spec.js # Widget editor E2E
102
+ │ ├── coupon-flow.spec.js # Coupon CRUD
103
+ │ └── visual-parity.spec.js # Screenshot comparison
104
+ └── screenshots/
105
+ └── expected/ # Baseline скриншоты
106
+ ```
107
+
108
+ ---
109
+
110
+ ## Page Object Model
111
+
112
+ ### BasePage
113
+
114
+ ```js
115
+ /**
116
+ * Базовый page object для всех страниц dashboard.
117
+ */
118
+ export class BasePage {
119
+ /**
120
+ * @param {import('@playwright/test').Page} page - Playwright page instance.
121
+ */
122
+ constructor(page) {
123
+ this.page = page;
124
+ }
125
+
126
+ /**
127
+ * Ожидает загрузку страницы.
128
+ * @param {string} contentSelector - CSS-селектор основного контента.
129
+ * @param {number} [timeout=10000] - таймаут ожидания в мс.
130
+ */
131
+ async waitForPageLoad(contentSelector, timeout = 10_000) {
132
+ await this.page.waitForSelector(contentSelector, {
133
+ state: 'visible',
134
+ timeout,
135
+ });
136
+ }
137
+
138
+ /**
139
+ * Делает скриншот компонента для visual parity.
140
+ * @param {string} name - имя скриншота.
141
+ * @returns {Promise<Buffer>} скриншот.
142
+ */
143
+ async takeScreenshot(name) {
144
+ return this.page.screenshot({
145
+ path: `e2e/screenshots/actual/${name}.png`,
146
+ fullPage: true,
147
+ });
148
+ }
149
+ }
150
+ ```
151
+
152
+ ---
153
+
154
+ ## Тест-паттерны
155
+
156
+ ### Happy Path
157
+
158
+ ```js
159
+ import { test, expect } from '@playwright/test';
160
+ import { WidgetDesignPage } from '../pages/WidgetDesignPage.js';
161
+
162
+ test.describe('Widget Design Editor', () => {
163
+ test('should select template and save', async ({ page }) => {
164
+ const editor = new WidgetDesignPage(page);
165
+ await editor.waitForPageLoad('[data-testid="widget-editor"]');
166
+ await editor.selectTemplate('Glassmorphism');
167
+ await editor.fillFields({ headline: 'Special Offer!', coupon: 'SAVE20' });
168
+ await editor.save();
169
+
170
+ await expect(editor.livePreview).toContainText('Special Offer!');
171
+ });
172
+ });
173
+ ```
174
+
175
+ ### Error Path
176
+
177
+ ```js
178
+ test('should show validation error for empty coupon', async ({ page }) => {
179
+ const editor = new WidgetDesignPage(page);
180
+ await editor.waitForPageLoad('[data-testid="widget-editor"]');
181
+ await editor.fillFields({ coupon: '' });
182
+ await editor.save();
183
+
184
+ const error = page.locator('[data-testid="coupon-error"]');
185
+ await expect(error).toBeVisible();
186
+ });
187
+ ```
188
+
189
+ ### UI States
190
+
191
+ ```js
192
+ test('should show empty state when no templates', async ({ page }) => {
193
+ await page.route('**/api/templates', (route) =>
194
+ route.fulfill({ status: 200, body: '[]', headers: { 'Content-Type': 'application/json' } }),
195
+ );
196
+ await page.reload();
197
+ await expect(page.locator('[data-testid="empty-state"]')).toContainText('No templates');
198
+ });
199
+ ```
200
+
201
+ ---
202
+
203
+ ## Visual Regression
204
+
205
+ > [!IMPORTANT]
206
+ > **Source of truth определяется UX Designer** (обязательный вопрос #2).
207
+ > Baseline-скриншоты зависят от выбранного источника.
208
+
209
+ ```js
210
+ test('visual parity: popup matches design', async ({ page }) => {
211
+ await page.goto('/preview/glassmorphism');
212
+ const popup = page.locator('[data-testid="popup-container"]');
213
+ await expect(popup).toHaveScreenshot('glassmorphism-popup.png', {
214
+ maxDiffPixelRatio: 0.05,
215
+ threshold: 0.2,
216
+ });
217
+ });
218
+ ```
219
+
220
+ ```bash
221
+ # Обновить baseline
222
+ npx playwright test --update-snapshots
223
+ ```
224
+
225
+ ---
226
+
227
+ ## Naming Convention
228
+
229
+ ```
230
+ [feature].spec.js — тесты
231
+ [feature].visual.spec.js — visual regression
232
+ [PageName].js — page objects
233
+
234
+ # Test IDs (data-testid)
235
+ [component]-[element] → popup-container
236
+ [component]-[element]-[state] → save-button-disabled
237
+ ```
238
+
239
+ > [!WARNING]
240
+ > DEV обязан добавить `data-testid` для всех интерактивных элементов.
241
+
242
+ ---
243
+
244
+ ## Запуск
245
+
246
+ ```bash
247
+ npx playwright test # Все
248
+ npx playwright test e2e/specs/widget-design.spec.js # Один spec
249
+ npx playwright test --ui # Debug UI
250
+ npx playwright test --headed # Headed
251
+ npx playwright test --update-snapshots # Обновить baseline
252
+ npx playwright show-report # Отчёт
253
+ ```
254
+
255
+ ---
256
+
257
+ ## CI/CD Pipeline
258
+
259
+ ```yaml
260
+ # .github/workflows/e2e.yml
261
+ e2e-tests:
262
+ runs-on: ubuntu-latest
263
+ steps:
264
+ - uses: actions/checkout@v4
265
+ - uses: actions/setup-node@v4
266
+ with: { node-version: 20 }
267
+ - run: npm ci
268
+ working-directory: apps/dashboard
269
+ - run: npx playwright install --with-deps chromium
270
+ working-directory: apps/dashboard
271
+ - run: npx playwright test
272
+ working-directory: apps/dashboard
273
+ - uses: actions/upload-artifact@v4
274
+ if: failure()
275
+ with:
276
+ name: playwright-report
277
+ path: apps/dashboard/playwright-report/
278
+ ```
279
+
280
+ ---
281
+
282
+ ## Anti-patterns
283
+
284
+ - ❌ CSS-селекторы (`.class-name`) — хрупко, только `data-testid`
285
+ - ❌ `page.waitForTimeout(3000)` — использовать `waitForSelector`
286
+ - ❌ E2E для логики, покрытой unit-тестами — избыточно
287
+ - ❌ Зависимость тестов друг от друга — каждый тест изолирован
288
+ - ❌ Hard-coded данные в спеках — выносить в `fixtures/test-data.js`
289
+ - ❌ Игнорировать flaky — стабилизировать или удалить
290
+ - ❌ Скриншот всей страницы — скриншотить **конкретный компонент**
291
+
292
+ ---
293
+
294
+ ## Definition of Done
295
+
296
+ - [ ] Critical flows из Test Plan покрыты E2E
297
+ - [ ] Каждый тест: happy path + ≥1 error path
298
+ - [ ] Page Objects для ключевых страниц
299
+ - [ ] `data-testid` добавлены (DEV)
300
+ - [ ] Baseline-скриншоты согласованы
301
+ - [ ] Нет flaky (3 прогона стабильно)
302
+ - [ ] CI pipeline настроен
303
+ - [ ] Команда запуска в README
304
+
305
+ ---
306
+
307
+ ## Deliverables
308
+
309
+ - Spec-файлы: `apps/dashboard/e2e/specs/`
310
+ - Page Objects: `apps/dashboard/e2e/pages/`
311
+ - `playwright.config.js`
312
+ - CI/CD pipeline config
313
+ - Список `data-testid` (запрос к DEV)