code-ai-installer 1.3.0 β 1.4.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.
- package/.agents/skills/adr_log/SKILL.md +369 -0
- package/.agents/skills/api_contracts/SKILL.md +328 -0
- package/.agents/skills/architecture_compliance_review/SKILL.md +213 -0
- package/.agents/skills/architecture_doc/SKILL.md +380 -0
- package/.agents/skills/board/SKILL.md +232 -0
- package/.agents/skills/current_state_analysis/SKILL.md +225 -0
- package/.agents/skills/data_model/SKILL.md +284 -0
- package/.agents/skills/deployment_ci_plan/SKILL.md +409 -0
- package/.agents/skills/design_intake/SKILL.md +223 -0
- package/.agents/skills/golden_canon_grid/SKILL.md +440 -0
- package/.agents/skills/golden_canon_grid/agents/claude.json +18 -0
- package/.agents/skills/golden_canon_grid/agents/copilot.json +18 -0
- package/.agents/skills/golden_canon_grid/agents/gemini.json +18 -0
- package/.agents/skills/golden_canon_grid/agents/openai.yaml +8 -0
- package/.agents/skills/golden_canon_grid/agents/qwen.json +18 -0
- package/.agents/skills/golden_canon_grid/agents/skill.yaml +21 -0
- package/.agents/skills/google_stitch_skill/SKILL.md +533 -0
- package/.agents/skills/google_stitch_skill/agents/claude.json +19 -0
- package/.agents/skills/google_stitch_skill/agents/copilot.json +19 -0
- package/.agents/skills/google_stitch_skill/agents/gemini.json +19 -0
- package/.agents/skills/google_stitch_skill/agents/openai.yaml +8 -0
- package/.agents/skills/google_stitch_skill/agents/qwen.json +19 -0
- package/.agents/skills/google_stitch_skill/agents/skill.yaml +23 -0
- package/.agents/skills/google_stitch_skill/examples/scr_prompts.md +119 -0
- package/.agents/skills/handoff/SKILL.md +212 -0
- package/.agents/skills/mongodb_mongoose_best_practices/SKILL.md +721 -0
- package/.agents/skills/observability_plan/SKILL.md +276 -0
- package/.agents/skills/pm_backlog/SKILL.md +249 -0
- package/.agents/skills/pm_interview/SKILL.md +170 -0
- package/.agents/skills/qa_test_plan/SKILL.md +203 -0
- package/.agents/skills/release_gate/SKILL.md +213 -0
- package/.agents/skills/release_gate_checklist_template/SKILL.md +182 -0
- package/.agents/skills/state_rtk_beast_practices/SKILL.md +735 -0
- package/.agents/skills/state_zustand_beast_practices/SKILL.md +808 -0
- package/.agents/skills/styling_css_stack/SKILL.md +559 -0
- package/.agents/skills/system_design_checklist/SKILL.md +207 -0
- package/.agents/skills/testing_strategy_js/SKILL.md +636 -0
- package/.agents/skills/tests_quality_review/SKILL.md +279 -0
- package/.agents/skills/threat_model_baseline/SKILL.md +210 -0
- package/.agents/skills/ui_a11y_smoke_review/SKILL.md +195 -0
- package/.agents/skills/ui_inventory/SKILL.md +277 -0
- package/.agents/skills/ux_discovery/SKILL.md +213 -0
- package/.agents/skills/ux_spec/SKILL.md +280 -0
- package/.agents/skills/wix_iframe_sdk/SKILL.md +280 -0
- package/.agents/skills/wix_self_hosted_embedded_script/SKILL.md +611 -0
- package/.agents/workflows/auto-restart-containers.md +56 -51
- package/AGENTS.yaml +1 -0
- package/LICENSE +21 -0
- package/README.md +4 -3
- package/agents/orchestrator.claude.json +1 -0
- package/agents/orchestrator.copilot.json +1 -0
- package/agents/orchestrator.gemini.json +1 -0
- package/agents/orchestrator.openai.yaml +1 -0
- package/agents/orchestrator.qwen.json +1 -0
- package/agents/ux_ui_designer.md +1 -0
- package/dist/catalog.d.ts +1 -1
- package/dist/catalog.js +35 -13
- package/dist/index.js +6 -3
- package/dist/installer.js +1 -2
- package/dist/metadataAudit.js +25 -90
- package/dist/platforms/adapters.d.ts +1 -1
- package/dist/platforms/adapters.js +30 -4
- package/dist/sourceResolver.js +17 -2
- package/dist/types.d.ts +1 -0
- package/locales/en/.agents/skills/a11y_baseline/SKILL.md +260 -0
- package/locales/en/.agents/skills/adr_log/SKILL.md +369 -0
- package/locales/en/.agents/skills/adr_log/agents/claude.json +17 -0
- package/locales/en/.agents/skills/adr_log/agents/copilot.json +17 -0
- package/locales/en/.agents/skills/adr_log/agents/gemini.json +17 -0
- package/locales/en/.agents/skills/adr_log/agents/openai.yaml +8 -0
- package/locales/en/.agents/skills/adr_log/agents/qwen.json +17 -0
- package/locales/en/.agents/skills/adr_log/agents/skill.yaml +21 -0
- package/locales/en/.agents/skills/api_contract_compliance_review/SKILL.md +224 -0
- package/locales/en/.agents/skills/api_contracts/SKILL.md +328 -0
- package/locales/en/.agents/skills/api_contracts/agents/claude.json +17 -0
- package/locales/en/.agents/skills/api_contracts/agents/copilot.json +17 -0
- package/locales/en/.agents/skills/api_contracts/agents/gemini.json +17 -0
- package/locales/en/.agents/skills/api_contracts/agents/openai.yaml +8 -0
- package/locales/en/.agents/skills/api_contracts/agents/qwen.json +17 -0
- package/locales/en/.agents/skills/api_contracts/agents/skill.yaml +21 -0
- package/locales/en/.agents/skills/architecture_compliance_review/SKILL.md +213 -0
- package/locales/en/.agents/skills/architecture_compliance_review/agents/claude.json +18 -0
- package/locales/en/.agents/skills/architecture_compliance_review/agents/copilot.json +18 -0
- package/locales/en/.agents/skills/architecture_compliance_review/agents/gemini.json +18 -0
- package/locales/en/.agents/skills/architecture_compliance_review/agents/openai.yaml +8 -0
- package/locales/en/.agents/skills/architecture_compliance_review/agents/qwen.json +18 -0
- package/locales/en/.agents/skills/architecture_compliance_review/agents/skill.yaml +22 -0
- package/locales/en/.agents/skills/architecture_doc/SKILL.md +204 -0
- package/locales/en/.agents/skills/architecture_doc/agents/claude.json +18 -0
- package/locales/en/.agents/skills/architecture_doc/agents/copilot.json +18 -0
- package/locales/en/.agents/skills/architecture_doc/agents/gemini.json +18 -0
- package/locales/en/.agents/skills/architecture_doc/agents/openai.yaml +8 -0
- package/locales/en/.agents/skills/architecture_doc/agents/qwen.json +18 -0
- package/locales/en/.agents/skills/architecture_doc/agents/skill.yaml +22 -0
- package/locales/en/.agents/skills/board/SKILL.md +129 -0
- package/locales/en/.agents/skills/board/agents/claude.json +16 -0
- package/locales/en/.agents/skills/board/agents/copilot.json +16 -0
- package/locales/en/.agents/skills/board/agents/gemini.json +16 -0
- package/locales/en/.agents/skills/board/agents/openai.yaml +8 -0
- package/locales/en/.agents/skills/board/agents/qwen.json +16 -0
- package/locales/en/.agents/skills/board/agents/skill.yaml +20 -0
- package/locales/en/.agents/skills/cloud_infrastructure_security/SKILL.md +185 -0
- package/locales/en/.agents/skills/code_review_checklist/SKILL.md +133 -0
- package/locales/en/.agents/skills/current_state_analysis/SKILL.md +141 -0
- package/locales/en/.agents/skills/current_state_analysis/agents/claude.json +18 -0
- package/locales/en/.agents/skills/current_state_analysis/agents/copilot.json +18 -0
- package/locales/en/.agents/skills/current_state_analysis/agents/gemini.json +18 -0
- package/locales/en/.agents/skills/current_state_analysis/agents/openai.yaml +8 -0
- package/locales/en/.agents/skills/current_state_analysis/agents/qwen.json +18 -0
- package/locales/en/.agents/skills/current_state_analysis/agents/skill.yaml +22 -0
- package/locales/en/.agents/skills/data_model/SKILL.md +284 -0
- package/locales/en/.agents/skills/data_model/agents/claude.json +17 -0
- package/locales/en/.agents/skills/data_model/agents/copilot.json +17 -0
- package/locales/en/.agents/skills/data_model/agents/gemini.json +17 -0
- package/locales/en/.agents/skills/data_model/agents/openai.yaml +8 -0
- package/locales/en/.agents/skills/data_model/agents/qwen.json +17 -0
- package/locales/en/.agents/skills/data_model/agents/skill.yaml +21 -0
- package/locales/en/.agents/skills/dependency_supply_chain_review/SKILL.md +300 -0
- package/locales/en/.agents/skills/deployment_ci_plan/SKILL.md +409 -0
- package/locales/en/.agents/skills/deployment_ci_plan/agents/claude.json +19 -0
- package/locales/en/.agents/skills/deployment_ci_plan/agents/copilot.json +19 -0
- package/locales/en/.agents/skills/deployment_ci_plan/agents/gemini.json +19 -0
- package/locales/en/.agents/skills/deployment_ci_plan/agents/openai.yaml +8 -0
- package/locales/en/.agents/skills/deployment_ci_plan/agents/qwen.json +19 -0
- package/locales/en/.agents/skills/deployment_ci_plan/agents/skill.yaml +23 -0
- package/locales/en/.agents/skills/design_intake/SKILL.md +223 -0
- package/locales/en/.agents/skills/design_intake/agents/claude.json +17 -0
- package/locales/en/.agents/skills/design_intake/agents/copilot.json +17 -0
- package/locales/en/.agents/skills/design_intake/agents/gemini.json +17 -0
- package/locales/en/.agents/skills/design_intake/agents/openai.yaml +8 -0
- package/locales/en/.agents/skills/design_intake/agents/qwen.json +17 -0
- package/locales/en/.agents/skills/design_intake/agents/skill.yaml +21 -0
- package/locales/en/.agents/skills/design_parity_review/SKILL.md +216 -0
- package/locales/en/.agents/skills/design_systems/SKILL.md +432 -0
- package/locales/en/.agents/skills/dev_reference_snippets/SKILL.md +585 -0
- package/locales/en/.agents/skills/docker_kubernetes_architecture/SKILL.md +480 -0
- package/locales/en/.agents/skills/es2025_beast_practices/SKILL.md +440 -0
- package/locales/en/.agents/skills/gates/SKILL.md +134 -0
- package/locales/en/.agents/skills/go_beast_practices/SKILL.md +557 -0
- package/locales/en/.agents/skills/golden_canon_grid/SKILL.md +441 -0
- package/locales/en/.agents/skills/google_stitch_skill/SKILL.md +533 -0
- package/locales/en/.agents/skills/google_stitch_skill/agents/claude.json +19 -0
- package/locales/en/.agents/skills/google_stitch_skill/agents/copilot.json +19 -0
- package/locales/en/.agents/skills/google_stitch_skill/agents/gemini.json +19 -0
- package/locales/en/.agents/skills/google_stitch_skill/agents/openai.yaml +8 -0
- package/locales/en/.agents/skills/google_stitch_skill/agents/qwen.json +19 -0
- package/locales/en/.agents/skills/google_stitch_skill/agents/skill.yaml +23 -0
- package/locales/en/.agents/skills/handoff/SKILL.md +212 -0
- package/locales/en/.agents/skills/handoff/agents/claude.json +16 -0
- package/locales/en/.agents/skills/handoff/agents/copilot.json +16 -0
- package/locales/en/.agents/skills/handoff/agents/gemini.json +16 -0
- package/locales/en/.agents/skills/handoff/agents/openai.yaml +8 -0
- package/locales/en/.agents/skills/handoff/agents/qwen.json +16 -0
- package/locales/en/.agents/skills/handoff/agents/skill.yaml +20 -0
- package/locales/en/.agents/skills/k8s_manifests_conventions/SKILL.md +548 -0
- package/locales/en/.agents/skills/memory/SKILL.md +219 -0
- package/locales/en/.agents/skills/mongodb_mongoose_best_practices/SKILL.md +721 -0
- package/locales/en/.agents/skills/mongodb_mongoose_best_practices/agents/claude.json +20 -0
- package/locales/en/.agents/skills/mongodb_mongoose_best_practices/agents/copilot.json +20 -0
- package/locales/en/.agents/skills/mongodb_mongoose_best_practices/agents/gemini.json +20 -0
- package/locales/en/.agents/skills/mongodb_mongoose_best_practices/agents/openai.yaml +8 -0
- package/locales/en/.agents/skills/mongodb_mongoose_best_practices/agents/qwen.json +20 -0
- package/locales/en/.agents/skills/mongodb_mongoose_best_practices/agents/skill.yaml +24 -0
- package/locales/en/.agents/skills/n8n_pinecone_qdrant_supabase/SKILL.md +671 -0
- package/locales/en/.agents/skills/node_express_beast_practices/SKILL.md +729 -0
- package/locales/en/.agents/skills/observability_logging/SKILL.md +499 -0
- package/locales/en/.agents/skills/observability_plan/SKILL.md +276 -0
- package/locales/en/.agents/skills/observability_plan/agents/claude.json +17 -0
- package/locales/en/.agents/skills/observability_plan/agents/copilot.json +17 -0
- package/locales/en/.agents/skills/observability_plan/agents/gemini.json +17 -0
- package/locales/en/.agents/skills/observability_plan/agents/openai.yaml +8 -0
- package/locales/en/.agents/skills/observability_plan/agents/qwen.json +17 -0
- package/locales/en/.agents/skills/observability_plan/agents/skill.yaml +21 -0
- package/locales/en/.agents/skills/performance_review_baseline/SKILL.md +239 -0
- package/locales/en/.agents/skills/pm_backlog/SKILL.md +249 -0
- package/locales/en/.agents/skills/pm_backlog/agents/claude.json +17 -0
- package/locales/en/.agents/skills/pm_backlog/agents/copilot.json +17 -0
- package/locales/en/.agents/skills/pm_backlog/agents/gemini.json +17 -0
- package/locales/en/.agents/skills/pm_backlog/agents/openai.yaml +8 -0
- package/locales/en/.agents/skills/pm_backlog/agents/qwen.json +17 -0
- package/locales/en/.agents/skills/pm_backlog/agents/skill.yaml +21 -0
- package/locales/en/.agents/skills/pm_interview/SKILL.md +170 -0
- package/locales/en/.agents/skills/pm_interview/agents/claude.json +18 -0
- package/locales/en/.agents/skills/pm_interview/agents/copilot.json +18 -0
- package/locales/en/.agents/skills/pm_interview/agents/gemini.json +18 -0
- package/locales/en/.agents/skills/pm_interview/agents/openai.yaml +8 -0
- package/locales/en/.agents/skills/pm_interview/agents/qwen.json +18 -0
- package/locales/en/.agents/skills/pm_interview/agents/skill.yaml +22 -0
- package/locales/en/.agents/skills/pm_prd/SKILL.md +215 -0
- package/locales/en/.agents/skills/qa_api_contract_tests/SKILL.md +207 -0
- package/locales/en/.agents/skills/qa_browser_testing/SKILL.md +255 -0
- package/locales/en/.agents/skills/qa_e2e_playwright/SKILL.md +313 -0
- package/locales/en/.agents/skills/qa_manual_run/SKILL.md +209 -0
- package/locales/en/.agents/skills/qa_regression_baseline/SKILL.md +217 -0
- package/locales/en/.agents/skills/qa_security_smoke_tests/SKILL.md +188 -0
- package/locales/en/.agents/skills/qa_test_plan/SKILL.md +203 -0
- package/locales/en/.agents/skills/qa_test_plan/agents/claude.json +18 -0
- package/locales/en/.agents/skills/qa_test_plan/agents/copilot.json +18 -0
- package/locales/en/.agents/skills/qa_test_plan/agents/gemini.json +18 -0
- package/locales/en/.agents/skills/qa_test_plan/agents/openai.yaml +8 -0
- package/locales/en/.agents/skills/qa_test_plan/agents/qwen.json +18 -0
- package/locales/en/.agents/skills/qa_test_plan/agents/skill.yaml +22 -0
- package/locales/en/.agents/skills/qa_ui_a11y_smoke/SKILL.md +230 -0
- package/locales/en/.agents/skills/react_15_3_wix_iframe/SKILL.md +419 -0
- package/locales/en/.agents/skills/react_beast_practices/SKILL.md +296 -0
- package/locales/en/.agents/skills/release_gate/SKILL.md +213 -0
- package/locales/en/.agents/skills/release_gate/agents/claude.json +17 -0
- package/locales/en/.agents/skills/release_gate/agents/copilot.json +17 -0
- package/locales/en/.agents/skills/release_gate/agents/gemini.json +17 -0
- package/locales/en/.agents/skills/release_gate/agents/openai.yaml +8 -0
- package/locales/en/.agents/skills/release_gate/agents/qwen.json +17 -0
- package/locales/en/.agents/skills/release_gate/agents/skill.yaml +21 -0
- package/locales/en/.agents/skills/release_gate_checklist_template/SKILL.md +182 -0
- package/locales/en/.agents/skills/release_gate_checklist_template/agents/claude.json +19 -0
- package/locales/en/.agents/skills/release_gate_checklist_template/agents/copilot.json +19 -0
- package/locales/en/.agents/skills/release_gate_checklist_template/agents/gemini.json +19 -0
- package/locales/en/.agents/skills/release_gate_checklist_template/agents/openai.yaml +8 -0
- package/locales/en/.agents/skills/release_gate_checklist_template/agents/qwen.json +19 -0
- package/locales/en/.agents/skills/release_gate_checklist_template/agents/skill.yaml +23 -0
- package/locales/en/.agents/skills/review_reference_snippets/SKILL.md +553 -0
- package/locales/en/.agents/skills/security_baseline_dev/SKILL.md +499 -0
- package/locales/en/.agents/skills/security_review/SKILL.md +277 -0
- package/locales/en/.agents/skills/security_review_baseline/SKILL.md +119 -0
- package/locales/en/.agents/skills/state_rtk_beast_practices/SKILL.md +735 -0
- package/locales/en/.agents/skills/state_rtk_beast_practices/agents/claude.json +20 -0
- package/locales/en/.agents/skills/state_rtk_beast_practices/agents/copilot.json +20 -0
- package/locales/en/.agents/skills/state_rtk_beast_practices/agents/gemini.json +20 -0
- package/locales/en/.agents/skills/state_rtk_beast_practices/agents/openai.yaml +8 -0
- package/locales/en/.agents/skills/state_rtk_beast_practices/agents/qwen.json +20 -0
- package/locales/en/.agents/skills/state_rtk_beast_practices/agents/skill.yaml +24 -0
- package/locales/en/.agents/skills/state_zustand_beast_practices/SKILL.md +808 -0
- package/locales/en/.agents/skills/state_zustand_beast_practices/agents/claude.json +20 -0
- package/locales/en/.agents/skills/state_zustand_beast_practices/agents/copilot.json +20 -0
- package/locales/en/.agents/skills/state_zustand_beast_practices/agents/gemini.json +20 -0
- package/locales/en/.agents/skills/state_zustand_beast_practices/agents/openai.yaml +8 -0
- package/locales/en/.agents/skills/state_zustand_beast_practices/agents/qwen.json +20 -0
- package/locales/en/.agents/skills/state_zustand_beast_practices/agents/skill.yaml +24 -0
- package/locales/en/.agents/skills/styling_css_stack/SKILL.md +558 -0
- package/locales/en/.agents/skills/styling_css_stack/agents/claude.json +19 -0
- package/locales/en/.agents/skills/styling_css_stack/agents/copilot.json +19 -0
- package/locales/en/.agents/skills/styling_css_stack/agents/gemini.json +19 -0
- package/locales/en/.agents/skills/styling_css_stack/agents/openai.yaml +8 -0
- package/locales/en/.agents/skills/styling_css_stack/agents/qwen.json +19 -0
- package/locales/en/.agents/skills/styling_css_stack/agents/skill.yaml +23 -0
- package/locales/en/.agents/skills/system_design_checklist/SKILL.md +207 -0
- package/locales/en/.agents/skills/system_design_checklist/agents/claude.json +18 -0
- package/locales/en/.agents/skills/system_design_checklist/agents/copilot.json +18 -0
- package/locales/en/.agents/skills/system_design_checklist/agents/gemini.json +18 -0
- package/locales/en/.agents/skills/system_design_checklist/agents/openai.yaml +8 -0
- package/locales/en/.agents/skills/system_design_checklist/agents/qwen.json +18 -0
- package/locales/en/.agents/skills/system_design_checklist/agents/skill.yaml +22 -0
- package/locales/en/.agents/skills/tailwind_beast_practices/SKILL.md +512 -0
- package/locales/en/.agents/skills/tanstack_beast_practices/SKILL.md +473 -0
- package/locales/en/.agents/skills/tdd_workflow/SKILL.md +453 -0
- package/locales/en/.agents/skills/testing_strategy_js/SKILL.md +636 -0
- package/locales/en/.agents/skills/testing_strategy_js/agents/claude.json +19 -0
- package/locales/en/.agents/skills/testing_strategy_js/agents/copilot.json +19 -0
- package/locales/en/.agents/skills/testing_strategy_js/agents/gemini.json +19 -0
- package/locales/en/.agents/skills/testing_strategy_js/agents/openai.yaml +8 -0
- package/locales/en/.agents/skills/testing_strategy_js/agents/qwen.json +19 -0
- package/locales/en/.agents/skills/testing_strategy_js/agents/skill.yaml +23 -0
- package/locales/en/.agents/skills/tests_quality_review/SKILL.md +279 -0
- package/locales/en/.agents/skills/tests_quality_review/agents/claude.json +18 -0
- package/locales/en/.agents/skills/tests_quality_review/agents/copilot.json +18 -0
- package/locales/en/.agents/skills/tests_quality_review/agents/gemini.json +18 -0
- package/locales/en/.agents/skills/tests_quality_review/agents/openai.yaml +8 -0
- package/locales/en/.agents/skills/tests_quality_review/agents/qwen.json +18 -0
- package/locales/en/.agents/skills/tests_quality_review/agents/skill.yaml +22 -0
- package/locales/en/.agents/skills/threat_model_baseline/SKILL.md +210 -0
- package/locales/en/.agents/skills/threat_model_baseline/agents/claude.json +18 -0
- package/locales/en/.agents/skills/threat_model_baseline/agents/copilot.json +18 -0
- package/locales/en/.agents/skills/threat_model_baseline/agents/gemini.json +18 -0
- package/locales/en/.agents/skills/threat_model_baseline/agents/openai.yaml +8 -0
- package/locales/en/.agents/skills/threat_model_baseline/agents/qwen.json +18 -0
- package/locales/en/.agents/skills/threat_model_baseline/agents/skill.yaml +22 -0
- package/locales/en/.agents/skills/tooling_bun_biome/SKILL.md +539 -0
- package/locales/en/.agents/skills/typescript_beast_practices/SKILL.md +435 -0
- package/locales/en/.agents/skills/ui_a11y_smoke_review/SKILL.md +195 -0
- package/locales/en/.agents/skills/ui_a11y_smoke_review/agents/claude.json +20 -0
- package/locales/en/.agents/skills/ui_a11y_smoke_review/agents/copilot.json +20 -0
- package/locales/en/.agents/skills/ui_a11y_smoke_review/agents/gemini.json +20 -0
- package/locales/en/.agents/skills/ui_a11y_smoke_review/agents/openai.yaml +8 -0
- package/locales/en/.agents/skills/ui_a11y_smoke_review/agents/qwen.json +20 -0
- package/locales/en/.agents/skills/ui_a11y_smoke_review/agents/skill.yaml +24 -0
- package/locales/en/.agents/skills/ui_inventory/SKILL.md +277 -0
- package/locales/en/.agents/skills/ui_inventory/agents/claude.json +17 -0
- package/locales/en/.agents/skills/ui_inventory/agents/copilot.json +17 -0
- package/locales/en/.agents/skills/ui_inventory/agents/gemini.json +17 -0
- package/locales/en/.agents/skills/ui_inventory/agents/openai.yaml +8 -0
- package/locales/en/.agents/skills/ui_inventory/agents/qwen.json +17 -0
- package/locales/en/.agents/skills/ui_inventory/agents/skill.yaml +21 -0
- package/locales/en/.agents/skills/ux_discovery/SKILL.md +213 -0
- package/locales/en/.agents/skills/ux_discovery/agents/claude.json +17 -0
- package/locales/en/.agents/skills/ux_discovery/agents/copilot.json +17 -0
- package/locales/en/.agents/skills/ux_discovery/agents/gemini.json +17 -0
- package/locales/en/.agents/skills/ux_discovery/agents/openai.yaml +8 -0
- package/locales/en/.agents/skills/ux_discovery/agents/qwen.json +17 -0
- package/locales/en/.agents/skills/ux_discovery/agents/skill.yaml +21 -0
- package/locales/en/.agents/skills/ux_spec/SKILL.md +280 -0
- package/locales/en/.agents/skills/ux_spec/agents/claude.json +17 -0
- package/locales/en/.agents/skills/ux_spec/agents/copilot.json +17 -0
- package/locales/en/.agents/skills/ux_spec/agents/gemini.json +17 -0
- package/locales/en/.agents/skills/ux_spec/agents/openai.yaml +8 -0
- package/locales/en/.agents/skills/ux_spec/agents/qwen.json +17 -0
- package/locales/en/.agents/skills/ux_spec/agents/skill.yaml +21 -0
- package/locales/en/.agents/skills/wix_iframe_sdk/SKILL.md +280 -0
- package/locales/en/.agents/skills/wix_iframe_sdk/agents/claude.json +18 -0
- package/locales/en/.agents/skills/wix_iframe_sdk/agents/copilot.json +18 -0
- package/locales/en/.agents/skills/wix_iframe_sdk/agents/gemini.json +18 -0
- package/locales/en/.agents/skills/wix_iframe_sdk/agents/openai.yaml +8 -0
- package/locales/en/.agents/skills/wix_iframe_sdk/agents/qwen.json +18 -0
- package/locales/en/.agents/skills/wix_iframe_sdk/agents/skill.yaml +22 -0
- package/locales/en/.agents/skills/wix_iframe_sdk/references/wix-sdk-iframe.md +9311 -0
- package/locales/en/.agents/skills/wix_self_hosted_embedded_script/SKILL.md +611 -0
- package/locales/en/.agents/skills/wix_self_hosted_embedded_script/agents/claude.json +21 -0
- package/locales/en/.agents/skills/wix_self_hosted_embedded_script/agents/copilot.json +21 -0
- package/locales/en/.agents/skills/wix_self_hosted_embedded_script/agents/gemini.json +21 -0
- package/locales/en/.agents/skills/wix_self_hosted_embedded_script/agents/openai.yaml +8 -0
- package/locales/en/.agents/skills/wix_self_hosted_embedded_script/agents/qwen.json +21 -0
- package/locales/en/.agents/skills/wix_self_hosted_embedded_script/agents/skill.yaml +25 -0
- package/package.json +13 -1
- package/.agents/adr_log/SKILL.md +0 -369
- package/.agents/api_contracts/SKILL.md +0 -329
- package/.agents/architecture_compliance_review/SKILL.md +0 -213
- package/.agents/architecture_doc/SKILL.md +0 -384
- package/.agents/board/SKILL.md +0 -232
- package/.agents/current_state_analysis/SKILL.md +0 -225
- package/.agents/data_model/SKILL.md +0 -285
- package/.agents/deployment_ci_plan/SKILL.md +0 -410
- package/.agents/design_intake/SKILL.md +0 -225
- package/.agents/google_stitch_skill/SKILL.md +0 -553
- package/.agents/google_stitch_skill/agents/claude.json +0 -18
- package/.agents/google_stitch_skill/agents/copilot.json +0 -18
- package/.agents/google_stitch_skill/agents/gemini.json +0 -18
- package/.agents/google_stitch_skill/agents/openai.yaml +0 -8
- package/.agents/google_stitch_skill/agents/qwen.json +0 -18
- package/.agents/google_stitch_skill/agents/skill.yaml +0 -22
- package/.agents/google_stitch_skill/examples/scr_prompts.md +0 -125
- package/.agents/handoff/SKILL.md +0 -212
- package/.agents/mongodb_mongoose_best_practices/SKILL.md +0 -724
- package/.agents/observability_plan/SKILL.md +0 -279
- package/.agents/pm_backlog/SKILL.md +0 -250
- package/.agents/pm_interview/SKILL.md +0 -197
- package/.agents/qa_test_plan/SKILL.md +0 -203
- package/.agents/release_gate/SKILL.md +0 -213
- package/.agents/release_gate_checklist_template/SKILL.md +0 -182
- package/.agents/state_rtk_beast_practices/SKILL.md +0 -735
- package/.agents/state_zustand_beast_practices/SKILL.md +0 -808
- package/.agents/styling_css_stack/SKILL.md +0 -558
- package/.agents/system_design_checklist/SKILL.md +0 -207
- package/.agents/testing_strategy_js/SKILL.md +0 -636
- package/.agents/tests_quality_review/SKILL.md +0 -279
- package/.agents/threat_model_baseline/SKILL.md +0 -210
- package/.agents/ui_a11y_smoke_review/SKILL.md +0 -195
- package/.agents/ui_inventory/SKILL.md +0 -277
- package/.agents/ux_discovery/SKILL.md +0 -214
- package/.agents/ux_spec/SKILL.md +0 -282
- package/.agents/wix_iframe_sdk/SKILL.md +0 -280
- package/.agents/wix_self_hosted_embedded_script/SKILL.md +0 -611
- package/locales/en/.agents/a11y_baseline/SKILL.md +0 -260
- package/locales/en/.agents/adr_log/SKILL.md +0 -369
- package/locales/en/.agents/adr_log/agents/claude.json +0 -18
- package/locales/en/.agents/adr_log/agents/copilot.json +0 -18
- package/locales/en/.agents/adr_log/agents/gemini.json +0 -18
- package/locales/en/.agents/adr_log/agents/openai.yaml +0 -8
- package/locales/en/.agents/adr_log/agents/qwen.json +0 -18
- package/locales/en/.agents/adr_log/agents/skill.yaml +0 -22
- package/locales/en/.agents/api_contract_compliance_review/SKILL.md +0 -224
- package/locales/en/.agents/api_contracts/SKILL.md +0 -329
- package/locales/en/.agents/api_contracts/agents/claude.json +0 -17
- package/locales/en/.agents/api_contracts/agents/copilot.json +0 -17
- package/locales/en/.agents/api_contracts/agents/gemini.json +0 -17
- package/locales/en/.agents/api_contracts/agents/openai.yaml +0 -8
- package/locales/en/.agents/api_contracts/agents/qwen.json +0 -17
- package/locales/en/.agents/api_contracts/agents/skill.yaml +0 -21
- package/locales/en/.agents/architecture_compliance_review/SKILL.md +0 -213
- package/locales/en/.agents/architecture_compliance_review/agents/claude.json +0 -19
- package/locales/en/.agents/architecture_compliance_review/agents/copilot.json +0 -19
- package/locales/en/.agents/architecture_compliance_review/agents/gemini.json +0 -19
- package/locales/en/.agents/architecture_compliance_review/agents/openai.yaml +0 -8
- package/locales/en/.agents/architecture_compliance_review/agents/qwen.json +0 -19
- package/locales/en/.agents/architecture_compliance_review/agents/skill.yaml +0 -23
- package/locales/en/.agents/architecture_doc/SKILL.md +0 -384
- package/locales/en/.agents/architecture_doc/agents/claude.json +0 -18
- package/locales/en/.agents/architecture_doc/agents/copilot.json +0 -18
- package/locales/en/.agents/architecture_doc/agents/gemini.json +0 -18
- package/locales/en/.agents/architecture_doc/agents/openai.yaml +0 -8
- package/locales/en/.agents/architecture_doc/agents/qwen.json +0 -18
- package/locales/en/.agents/architecture_doc/agents/skill.yaml +0 -22
- package/locales/en/.agents/board/SKILL.md +0 -232
- package/locales/en/.agents/board/agents/claude.json +0 -16
- package/locales/en/.agents/board/agents/copilot.json +0 -16
- package/locales/en/.agents/board/agents/gemini.json +0 -16
- package/locales/en/.agents/board/agents/openai.yaml +0 -8
- package/locales/en/.agents/board/agents/qwen.json +0 -16
- package/locales/en/.agents/board/agents/skill.yaml +0 -20
- package/locales/en/.agents/cloud_infrastructure_security/SKILL.md +0 -277
- package/locales/en/.agents/code_review_checklist/SKILL.md +0 -200
- package/locales/en/.agents/current_state_analysis/SKILL.md +0 -225
- package/locales/en/.agents/current_state_analysis/agents/claude.json +0 -19
- package/locales/en/.agents/current_state_analysis/agents/copilot.json +0 -19
- package/locales/en/.agents/current_state_analysis/agents/gemini.json +0 -19
- package/locales/en/.agents/current_state_analysis/agents/openai.yaml +0 -8
- package/locales/en/.agents/current_state_analysis/agents/qwen.json +0 -19
- package/locales/en/.agents/current_state_analysis/agents/skill.yaml +0 -23
- package/locales/en/.agents/data_model/SKILL.md +0 -285
- package/locales/en/.agents/data_model/agents/claude.json +0 -17
- package/locales/en/.agents/data_model/agents/copilot.json +0 -17
- package/locales/en/.agents/data_model/agents/gemini.json +0 -17
- package/locales/en/.agents/data_model/agents/openai.yaml +0 -8
- package/locales/en/.agents/data_model/agents/qwen.json +0 -17
- package/locales/en/.agents/data_model/agents/skill.yaml +0 -21
- package/locales/en/.agents/dependency_supply_chain_review/SKILL.md +0 -300
- package/locales/en/.agents/deployment_ci_plan/SKILL.md +0 -410
- package/locales/en/.agents/deployment_ci_plan/agents/claude.json +0 -19
- package/locales/en/.agents/deployment_ci_plan/agents/copilot.json +0 -19
- package/locales/en/.agents/deployment_ci_plan/agents/gemini.json +0 -19
- package/locales/en/.agents/deployment_ci_plan/agents/openai.yaml +0 -8
- package/locales/en/.agents/deployment_ci_plan/agents/qwen.json +0 -19
- package/locales/en/.agents/deployment_ci_plan/agents/skill.yaml +0 -23
- package/locales/en/.agents/design_intake/SKILL.md +0 -225
- package/locales/en/.agents/design_intake/agents/claude.json +0 -17
- package/locales/en/.agents/design_intake/agents/copilot.json +0 -17
- package/locales/en/.agents/design_intake/agents/gemini.json +0 -17
- package/locales/en/.agents/design_intake/agents/openai.yaml +0 -8
- package/locales/en/.agents/design_intake/agents/qwen.json +0 -17
- package/locales/en/.agents/design_intake/agents/skill.yaml +0 -21
- package/locales/en/.agents/design_parity_review/SKILL.md +0 -216
- package/locales/en/.agents/design_systems/SKILL.md +0 -432
- package/locales/en/.agents/dev_reference_snippets/SKILL.md +0 -585
- package/locales/en/.agents/docker_kubernetes_architecture/SKILL.md +0 -480
- package/locales/en/.agents/es2025_beast_practices/SKILL.md +0 -440
- package/locales/en/.agents/gates/SKILL.md +0 -134
- package/locales/en/.agents/go_beast_practices/SKILL.md +0 -557
- package/locales/en/.agents/google_stitch_skill/SKILL.md +0 -553
- package/locales/en/.agents/google_stitch_skill/agents/claude.json +0 -18
- package/locales/en/.agents/google_stitch_skill/agents/copilot.json +0 -18
- package/locales/en/.agents/google_stitch_skill/agents/gemini.json +0 -18
- package/locales/en/.agents/google_stitch_skill/agents/openai.yaml +0 -8
- package/locales/en/.agents/google_stitch_skill/agents/qwen.json +0 -18
- package/locales/en/.agents/google_stitch_skill/agents/skill.yaml +0 -22
- package/locales/en/.agents/handoff/SKILL.md +0 -212
- package/locales/en/.agents/handoff/agents/claude.json +0 -16
- package/locales/en/.agents/handoff/agents/copilot.json +0 -16
- package/locales/en/.agents/handoff/agents/gemini.json +0 -16
- package/locales/en/.agents/handoff/agents/openai.yaml +0 -8
- package/locales/en/.agents/handoff/agents/qwen.json +0 -16
- package/locales/en/.agents/handoff/agents/skill.yaml +0 -20
- package/locales/en/.agents/k8s_manifests_conventions/SKILL.md +0 -548
- package/locales/en/.agents/memory/SKILL.md +0 -219
- package/locales/en/.agents/mongodb_mongoose_best_practices/SKILL.md +0 -724
- package/locales/en/.agents/mongodb_mongoose_best_practices/agents/claude.json +0 -19
- package/locales/en/.agents/mongodb_mongoose_best_practices/agents/copilot.json +0 -19
- package/locales/en/.agents/mongodb_mongoose_best_practices/agents/gemini.json +0 -19
- package/locales/en/.agents/mongodb_mongoose_best_practices/agents/openai.yaml +0 -8
- package/locales/en/.agents/mongodb_mongoose_best_practices/agents/qwen.json +0 -19
- package/locales/en/.agents/mongodb_mongoose_best_practices/agents/skill.yaml +0 -23
- package/locales/en/.agents/n8n_pinecone_qdrant_supabase/SKILL.md +0 -671
- package/locales/en/.agents/node_express_beast_practices/SKILL.md +0 -729
- package/locales/en/.agents/observability_logging/SKILL.md +0 -499
- package/locales/en/.agents/observability_plan/SKILL.md +0 -279
- package/locales/en/.agents/observability_plan/agents/claude.json +0 -18
- package/locales/en/.agents/observability_plan/agents/copilot.json +0 -18
- package/locales/en/.agents/observability_plan/agents/gemini.json +0 -18
- package/locales/en/.agents/observability_plan/agents/openai.yaml +0 -8
- package/locales/en/.agents/observability_plan/agents/qwen.json +0 -18
- package/locales/en/.agents/observability_plan/agents/skill.yaml +0 -22
- package/locales/en/.agents/performance_review_baseline/SKILL.md +0 -239
- package/locales/en/.agents/pm_backlog/SKILL.md +0 -250
- package/locales/en/.agents/pm_backlog/agents/claude.json +0 -18
- package/locales/en/.agents/pm_backlog/agents/copilot.json +0 -18
- package/locales/en/.agents/pm_backlog/agents/gemini.json +0 -18
- package/locales/en/.agents/pm_backlog/agents/openai.yaml +0 -8
- package/locales/en/.agents/pm_backlog/agents/qwen.json +0 -18
- package/locales/en/.agents/pm_backlog/agents/skill.yaml +0 -22
- package/locales/en/.agents/pm_interview/SKILL.md +0 -197
- package/locales/en/.agents/pm_interview/agents/claude.json +0 -18
- package/locales/en/.agents/pm_interview/agents/copilot.json +0 -18
- package/locales/en/.agents/pm_interview/agents/gemini.json +0 -18
- package/locales/en/.agents/pm_interview/agents/openai.yaml +0 -8
- package/locales/en/.agents/pm_interview/agents/qwen.json +0 -18
- package/locales/en/.agents/pm_interview/agents/skill.yaml +0 -22
- package/locales/en/.agents/pm_prd/SKILL.md +0 -215
- package/locales/en/.agents/qa_api_contract_tests/SKILL.md +0 -207
- package/locales/en/.agents/qa_browser_testing/SKILL.md +0 -255
- package/locales/en/.agents/qa_e2e_playwright/SKILL.md +0 -313
- package/locales/en/.agents/qa_manual_run/SKILL.md +0 -209
- package/locales/en/.agents/qa_regression_baseline/SKILL.md +0 -217
- package/locales/en/.agents/qa_security_smoke_tests/SKILL.md +0 -188
- package/locales/en/.agents/qa_test_plan/SKILL.md +0 -203
- package/locales/en/.agents/qa_test_plan/agents/claude.json +0 -18
- package/locales/en/.agents/qa_test_plan/agents/copilot.json +0 -18
- package/locales/en/.agents/qa_test_plan/agents/gemini.json +0 -18
- package/locales/en/.agents/qa_test_plan/agents/openai.yaml +0 -8
- package/locales/en/.agents/qa_test_plan/agents/qwen.json +0 -18
- package/locales/en/.agents/qa_test_plan/agents/skill.yaml +0 -22
- package/locales/en/.agents/qa_ui_a11y_smoke/SKILL.md +0 -230
- package/locales/en/.agents/react_15_3_wix_iframe/SKILL.md +0 -419
- package/locales/en/.agents/react_beast_practices/SKILL.md +0 -296
- package/locales/en/.agents/release_gate/SKILL.md +0 -213
- package/locales/en/.agents/release_gate/agents/claude.json +0 -18
- package/locales/en/.agents/release_gate/agents/copilot.json +0 -18
- package/locales/en/.agents/release_gate/agents/gemini.json +0 -18
- package/locales/en/.agents/release_gate/agents/openai.yaml +0 -8
- package/locales/en/.agents/release_gate/agents/qwen.json +0 -18
- package/locales/en/.agents/release_gate/agents/skill.yaml +0 -22
- package/locales/en/.agents/release_gate_checklist_template/SKILL.md +0 -182
- package/locales/en/.agents/release_gate_checklist_template/agents/claude.json +0 -20
- package/locales/en/.agents/release_gate_checklist_template/agents/copilot.json +0 -20
- package/locales/en/.agents/release_gate_checklist_template/agents/gemini.json +0 -20
- package/locales/en/.agents/release_gate_checklist_template/agents/openai.yaml +0 -8
- package/locales/en/.agents/release_gate_checklist_template/agents/qwen.json +0 -20
- package/locales/en/.agents/release_gate_checklist_template/agents/skill.yaml +0 -24
- package/locales/en/.agents/review_reference_snippets/SKILL.md +0 -553
- package/locales/en/.agents/security_baseline_dev/SKILL.md +0 -496
- package/locales/en/.agents/security_review/SKILL.md +0 -277
- package/locales/en/.agents/security_review_baseline/SKILL.md +0 -119
- package/locales/en/.agents/state_rtk_beast_practices/SKILL.md +0 -735
- package/locales/en/.agents/state_rtk_beast_practices/agents/claude.json +0 -20
- package/locales/en/.agents/state_rtk_beast_practices/agents/copilot.json +0 -20
- package/locales/en/.agents/state_rtk_beast_practices/agents/gemini.json +0 -20
- package/locales/en/.agents/state_rtk_beast_practices/agents/openai.yaml +0 -8
- package/locales/en/.agents/state_rtk_beast_practices/agents/qwen.json +0 -20
- package/locales/en/.agents/state_rtk_beast_practices/agents/skill.yaml +0 -24
- package/locales/en/.agents/state_zustand_beast_practices/SKILL.md +0 -808
- package/locales/en/.agents/state_zustand_beast_practices/agents/claude.json +0 -20
- package/locales/en/.agents/state_zustand_beast_practices/agents/copilot.json +0 -20
- package/locales/en/.agents/state_zustand_beast_practices/agents/gemini.json +0 -20
- package/locales/en/.agents/state_zustand_beast_practices/agents/openai.yaml +0 -8
- package/locales/en/.agents/state_zustand_beast_practices/agents/qwen.json +0 -20
- package/locales/en/.agents/state_zustand_beast_practices/agents/skill.yaml +0 -24
- package/locales/en/.agents/styling_css_stack/SKILL.md +0 -558
- package/locales/en/.agents/styling_css_stack/agents/claude.json +0 -19
- package/locales/en/.agents/styling_css_stack/agents/copilot.json +0 -19
- package/locales/en/.agents/styling_css_stack/agents/gemini.json +0 -19
- package/locales/en/.agents/styling_css_stack/agents/openai.yaml +0 -8
- package/locales/en/.agents/styling_css_stack/agents/qwen.json +0 -19
- package/locales/en/.agents/styling_css_stack/agents/skill.yaml +0 -23
- package/locales/en/.agents/system_design_checklist/SKILL.md +0 -207
- package/locales/en/.agents/system_design_checklist/agents/claude.json +0 -18
- package/locales/en/.agents/system_design_checklist/agents/copilot.json +0 -18
- package/locales/en/.agents/system_design_checklist/agents/gemini.json +0 -18
- package/locales/en/.agents/system_design_checklist/agents/openai.yaml +0 -8
- package/locales/en/.agents/system_design_checklist/agents/qwen.json +0 -18
- package/locales/en/.agents/system_design_checklist/agents/skill.yaml +0 -22
- package/locales/en/.agents/tailwind_beast_practices/SKILL.md +0 -512
- package/locales/en/.agents/tanstack_beast_practices/SKILL.md +0 -473
- package/locales/en/.agents/tdd_workflow/SKILL.md +0 -453
- package/locales/en/.agents/testing_strategy_js/SKILL.md +0 -636
- package/locales/en/.agents/testing_strategy_js/agents/claude.json +0 -19
- package/locales/en/.agents/testing_strategy_js/agents/copilot.json +0 -19
- package/locales/en/.agents/testing_strategy_js/agents/gemini.json +0 -19
- package/locales/en/.agents/testing_strategy_js/agents/openai.yaml +0 -8
- package/locales/en/.agents/testing_strategy_js/agents/qwen.json +0 -19
- package/locales/en/.agents/testing_strategy_js/agents/skill.yaml +0 -23
- package/locales/en/.agents/tests_quality_review/SKILL.md +0 -279
- package/locales/en/.agents/tests_quality_review/agents/claude.json +0 -18
- package/locales/en/.agents/tests_quality_review/agents/copilot.json +0 -18
- package/locales/en/.agents/tests_quality_review/agents/gemini.json +0 -18
- package/locales/en/.agents/tests_quality_review/agents/openai.yaml +0 -8
- package/locales/en/.agents/tests_quality_review/agents/qwen.json +0 -18
- package/locales/en/.agents/tests_quality_review/agents/skill.yaml +0 -22
- package/locales/en/.agents/threat_model_baseline/SKILL.md +0 -210
- package/locales/en/.agents/threat_model_baseline/agents/claude.json +0 -18
- package/locales/en/.agents/threat_model_baseline/agents/copilot.json +0 -18
- package/locales/en/.agents/threat_model_baseline/agents/gemini.json +0 -18
- package/locales/en/.agents/threat_model_baseline/agents/openai.yaml +0 -8
- package/locales/en/.agents/threat_model_baseline/agents/qwen.json +0 -18
- package/locales/en/.agents/threat_model_baseline/agents/skill.yaml +0 -22
- package/locales/en/.agents/tooling_bun_biome/SKILL.md +0 -539
- package/locales/en/.agents/typescript_beast_practices/SKILL.md +0 -434
- package/locales/en/.agents/ui_a11y_smoke_review/SKILL.md +0 -195
- package/locales/en/.agents/ui_a11y_smoke_review/agents/claude.json +0 -20
- package/locales/en/.agents/ui_a11y_smoke_review/agents/copilot.json +0 -20
- package/locales/en/.agents/ui_a11y_smoke_review/agents/gemini.json +0 -20
- package/locales/en/.agents/ui_a11y_smoke_review/agents/openai.yaml +0 -8
- package/locales/en/.agents/ui_a11y_smoke_review/agents/qwen.json +0 -20
- package/locales/en/.agents/ui_a11y_smoke_review/agents/skill.yaml +0 -24
- package/locales/en/.agents/ui_inventory/SKILL.md +0 -277
- package/locales/en/.agents/ui_inventory/agents/claude.json +0 -18
- package/locales/en/.agents/ui_inventory/agents/copilot.json +0 -18
- package/locales/en/.agents/ui_inventory/agents/gemini.json +0 -18
- package/locales/en/.agents/ui_inventory/agents/openai.yaml +0 -8
- package/locales/en/.agents/ui_inventory/agents/qwen.json +0 -18
- package/locales/en/.agents/ui_inventory/agents/skill.yaml +0 -22
- package/locales/en/.agents/ux_discovery/SKILL.md +0 -214
- package/locales/en/.agents/ux_discovery/agents/claude.json +0 -17
- package/locales/en/.agents/ux_discovery/agents/copilot.json +0 -17
- package/locales/en/.agents/ux_discovery/agents/gemini.json +0 -17
- package/locales/en/.agents/ux_discovery/agents/openai.yaml +0 -8
- package/locales/en/.agents/ux_discovery/agents/qwen.json +0 -17
- package/locales/en/.agents/ux_discovery/agents/skill.yaml +0 -21
- package/locales/en/.agents/ux_spec/SKILL.md +0 -282
- package/locales/en/.agents/ux_spec/agents/claude.json +0 -18
- package/locales/en/.agents/ux_spec/agents/copilot.json +0 -18
- package/locales/en/.agents/ux_spec/agents/gemini.json +0 -18
- package/locales/en/.agents/ux_spec/agents/openai.yaml +0 -8
- package/locales/en/.agents/ux_spec/agents/qwen.json +0 -18
- package/locales/en/.agents/ux_spec/agents/skill.yaml +0 -22
- package/locales/en/.agents/wix_iframe_sdk/SKILL.md +0 -280
- package/locales/en/.agents/wix_iframe_sdk/agents/claude.json +0 -18
- package/locales/en/.agents/wix_iframe_sdk/agents/copilot.json +0 -18
- package/locales/en/.agents/wix_iframe_sdk/agents/gemini.json +0 -18
- package/locales/en/.agents/wix_iframe_sdk/agents/openai.yaml +0 -8
- package/locales/en/.agents/wix_iframe_sdk/agents/qwen.json +0 -18
- package/locales/en/.agents/wix_iframe_sdk/agents/skill.yaml +0 -22
- package/locales/en/.agents/wix_iframe_sdk/references/wix-sdk-iframe.md +0 -9311
- package/locales/en/.agents/wix_self_hosted_embedded_script/SKILL.md +0 -611
- package/locales/en/.agents/wix_self_hosted_embedded_script/agents/claude.json +0 -21
- package/locales/en/.agents/wix_self_hosted_embedded_script/agents/copilot.json +0 -21
- package/locales/en/.agents/wix_self_hosted_embedded_script/agents/gemini.json +0 -21
- package/locales/en/.agents/wix_self_hosted_embedded_script/agents/openai.yaml +0 -8
- package/locales/en/.agents/wix_self_hosted_embedded_script/agents/qwen.json +0 -21
- package/locales/en/.agents/wix_self_hosted_embedded_script/agents/skill.yaml +0 -25
- /package/.agents/{a11y_baseline β skills/a11y_baseline}/SKILL.md +0 -0
- /package/.agents/{a11y_baseline β skills/a11y_baseline}/agents/claude.json +0 -0
- /package/.agents/{a11y_baseline β skills/a11y_baseline}/agents/copilot.json +0 -0
- /package/.agents/{a11y_baseline β skills/a11y_baseline}/agents/gemini.json +0 -0
- /package/.agents/{a11y_baseline β skills/a11y_baseline}/agents/openai.yaml +0 -0
- /package/.agents/{a11y_baseline β skills/a11y_baseline}/agents/qwen.json +0 -0
- /package/.agents/{a11y_baseline β skills/a11y_baseline}/agents/skill.yaml +0 -0
- /package/.agents/{adr_log β skills/adr_log}/agents/claude.json +0 -0
- /package/.agents/{adr_log β skills/adr_log}/agents/copilot.json +0 -0
- /package/.agents/{adr_log β skills/adr_log}/agents/gemini.json +0 -0
- /package/.agents/{adr_log β skills/adr_log}/agents/openai.yaml +0 -0
- /package/.agents/{adr_log β skills/adr_log}/agents/qwen.json +0 -0
- /package/.agents/{adr_log β skills/adr_log}/agents/skill.yaml +0 -0
- /package/.agents/{api_contract_compliance_review β skills/api_contract_compliance_review}/SKILL.md +0 -0
- /package/.agents/{api_contract_compliance_review β skills/api_contract_compliance_review}/agents/claude.json +0 -0
- /package/.agents/{api_contract_compliance_review β skills/api_contract_compliance_review}/agents/copilot.json +0 -0
- /package/.agents/{api_contract_compliance_review β skills/api_contract_compliance_review}/agents/gemini.json +0 -0
- /package/.agents/{api_contract_compliance_review β skills/api_contract_compliance_review}/agents/openai.yaml +0 -0
- /package/.agents/{api_contract_compliance_review β skills/api_contract_compliance_review}/agents/qwen.json +0 -0
- /package/.agents/{api_contract_compliance_review β skills/api_contract_compliance_review}/agents/skill.yaml +0 -0
- /package/.agents/{api_contracts β skills/api_contracts}/agents/claude.json +0 -0
- /package/.agents/{api_contracts β skills/api_contracts}/agents/copilot.json +0 -0
- /package/.agents/{api_contracts β skills/api_contracts}/agents/gemini.json +0 -0
- /package/.agents/{api_contracts β skills/api_contracts}/agents/openai.yaml +0 -0
- /package/.agents/{api_contracts β skills/api_contracts}/agents/qwen.json +0 -0
- /package/.agents/{api_contracts β skills/api_contracts}/agents/skill.yaml +0 -0
- /package/.agents/{architecture_compliance_review β skills/architecture_compliance_review}/agents/claude.json +0 -0
- /package/.agents/{architecture_compliance_review β skills/architecture_compliance_review}/agents/copilot.json +0 -0
- /package/.agents/{architecture_compliance_review β skills/architecture_compliance_review}/agents/gemini.json +0 -0
- /package/.agents/{architecture_compliance_review β skills/architecture_compliance_review}/agents/openai.yaml +0 -0
- /package/.agents/{architecture_compliance_review β skills/architecture_compliance_review}/agents/qwen.json +0 -0
- /package/.agents/{architecture_compliance_review β skills/architecture_compliance_review}/agents/skill.yaml +0 -0
- /package/.agents/{architecture_doc β skills/architecture_doc}/agents/claude.json +0 -0
- /package/.agents/{architecture_doc β skills/architecture_doc}/agents/copilot.json +0 -0
- /package/.agents/{architecture_doc β skills/architecture_doc}/agents/gemini.json +0 -0
- /package/.agents/{architecture_doc β skills/architecture_doc}/agents/openai.yaml +0 -0
- /package/.agents/{architecture_doc β skills/architecture_doc}/agents/qwen.json +0 -0
- /package/.agents/{architecture_doc β skills/architecture_doc}/agents/skill.yaml +0 -0
- /package/.agents/{board β skills/board}/agents/claude.json +0 -0
- /package/.agents/{board β skills/board}/agents/copilot.json +0 -0
- /package/.agents/{board β skills/board}/agents/gemini.json +0 -0
- /package/.agents/{board β skills/board}/agents/openai.yaml +0 -0
- /package/.agents/{board β skills/board}/agents/qwen.json +0 -0
- /package/.agents/{board β skills/board}/agents/skill.yaml +0 -0
- /package/.agents/{cloud_infrastructure_security β skills/cloud_infrastructure_security}/SKILL.md +0 -0
- /package/.agents/{cloud_infrastructure_security β skills/cloud_infrastructure_security}/agents/claude.json +0 -0
- /package/.agents/{cloud_infrastructure_security β skills/cloud_infrastructure_security}/agents/copilot.json +0 -0
- /package/.agents/{cloud_infrastructure_security β skills/cloud_infrastructure_security}/agents/gemini.json +0 -0
- /package/.agents/{cloud_infrastructure_security β skills/cloud_infrastructure_security}/agents/openai.yaml +0 -0
- /package/.agents/{cloud_infrastructure_security β skills/cloud_infrastructure_security}/agents/qwen.json +0 -0
- /package/.agents/{cloud_infrastructure_security β skills/cloud_infrastructure_security}/agents/skill.yaml +0 -0
- /package/.agents/{code_review_checklist β skills/code_review_checklist}/SKILL.md +0 -0
- /package/.agents/{code_review_checklist β skills/code_review_checklist}/agents/claude.json +0 -0
- /package/.agents/{code_review_checklist β skills/code_review_checklist}/agents/copilot.json +0 -0
- /package/.agents/{code_review_checklist β skills/code_review_checklist}/agents/gemini.json +0 -0
- /package/.agents/{code_review_checklist β skills/code_review_checklist}/agents/openai.yaml +0 -0
- /package/.agents/{code_review_checklist β skills/code_review_checklist}/agents/qwen.json +0 -0
- /package/.agents/{code_review_checklist β skills/code_review_checklist}/agents/skill.yaml +0 -0
- /package/.agents/{current_state_analysis β skills/current_state_analysis}/agents/claude.json +0 -0
- /package/.agents/{current_state_analysis β skills/current_state_analysis}/agents/copilot.json +0 -0
- /package/.agents/{current_state_analysis β skills/current_state_analysis}/agents/gemini.json +0 -0
- /package/.agents/{current_state_analysis β skills/current_state_analysis}/agents/openai.yaml +0 -0
- /package/.agents/{current_state_analysis β skills/current_state_analysis}/agents/qwen.json +0 -0
- /package/.agents/{current_state_analysis β skills/current_state_analysis}/agents/skill.yaml +0 -0
- /package/.agents/{data_model β skills/data_model}/agents/claude.json +0 -0
- /package/.agents/{data_model β skills/data_model}/agents/copilot.json +0 -0
- /package/.agents/{data_model β skills/data_model}/agents/gemini.json +0 -0
- /package/.agents/{data_model β skills/data_model}/agents/openai.yaml +0 -0
- /package/.agents/{data_model β skills/data_model}/agents/qwen.json +0 -0
- /package/.agents/{data_model β skills/data_model}/agents/skill.yaml +0 -0
- /package/.agents/{dependency_supply_chain_review β skills/dependency_supply_chain_review}/SKILL.md +0 -0
- /package/.agents/{dependency_supply_chain_review β skills/dependency_supply_chain_review}/agents/claude.json +0 -0
- /package/.agents/{dependency_supply_chain_review β skills/dependency_supply_chain_review}/agents/copilot.json +0 -0
- /package/.agents/{dependency_supply_chain_review β skills/dependency_supply_chain_review}/agents/gemini.json +0 -0
- /package/.agents/{dependency_supply_chain_review β skills/dependency_supply_chain_review}/agents/openai.yaml +0 -0
- /package/.agents/{dependency_supply_chain_review β skills/dependency_supply_chain_review}/agents/qwen.json +0 -0
- /package/.agents/{dependency_supply_chain_review β skills/dependency_supply_chain_review}/agents/skill.yaml +0 -0
- /package/.agents/{deployment_ci_plan β skills/deployment_ci_plan}/agents/claude.json +0 -0
- /package/.agents/{deployment_ci_plan β skills/deployment_ci_plan}/agents/copilot.json +0 -0
- /package/.agents/{deployment_ci_plan β skills/deployment_ci_plan}/agents/gemini.json +0 -0
- /package/.agents/{deployment_ci_plan β skills/deployment_ci_plan}/agents/openai.yaml +0 -0
- /package/.agents/{deployment_ci_plan β skills/deployment_ci_plan}/agents/qwen.json +0 -0
- /package/.agents/{deployment_ci_plan β skills/deployment_ci_plan}/agents/skill.yaml +0 -0
- /package/.agents/{design_intake β skills/design_intake}/agents/claude.json +0 -0
- /package/.agents/{design_intake β skills/design_intake}/agents/copilot.json +0 -0
- /package/.agents/{design_intake β skills/design_intake}/agents/gemini.json +0 -0
- /package/.agents/{design_intake β skills/design_intake}/agents/openai.yaml +0 -0
- /package/.agents/{design_intake β skills/design_intake}/agents/qwen.json +0 -0
- /package/.agents/{design_intake β skills/design_intake}/agents/skill.yaml +0 -0
- /package/.agents/{design_parity_review β skills/design_parity_review}/SKILL.md +0 -0
- /package/.agents/{design_parity_review β skills/design_parity_review}/agents/claude.json +0 -0
- /package/.agents/{design_parity_review β skills/design_parity_review}/agents/copilot.json +0 -0
- /package/.agents/{design_parity_review β skills/design_parity_review}/agents/gemini.json +0 -0
- /package/.agents/{design_parity_review β skills/design_parity_review}/agents/openai.yaml +0 -0
- /package/.agents/{design_parity_review β skills/design_parity_review}/agents/qwen.json +0 -0
- /package/.agents/{design_parity_review β skills/design_parity_review}/agents/skill.yaml +0 -0
- /package/.agents/{design_systems β skills/design_systems}/SKILL.md +0 -0
- /package/.agents/{design_systems β skills/design_systems}/agents/claude.json +0 -0
- /package/.agents/{design_systems β skills/design_systems}/agents/copilot.json +0 -0
- /package/.agents/{design_systems β skills/design_systems}/agents/gemini.json +0 -0
- /package/.agents/{design_systems β skills/design_systems}/agents/openai.yaml +0 -0
- /package/.agents/{design_systems β skills/design_systems}/agents/qwen.json +0 -0
- /package/.agents/{design_systems β skills/design_systems}/agents/skill.yaml +0 -0
- /package/.agents/{dev_reference_snippets β skills/dev_reference_snippets}/SKILL.md +0 -0
- /package/.agents/{dev_reference_snippets β skills/dev_reference_snippets}/agents/claude.json +0 -0
- /package/.agents/{dev_reference_snippets β skills/dev_reference_snippets}/agents/copilot.json +0 -0
- /package/.agents/{dev_reference_snippets β skills/dev_reference_snippets}/agents/gemini.json +0 -0
- /package/.agents/{dev_reference_snippets β skills/dev_reference_snippets}/agents/openai.yaml +0 -0
- /package/.agents/{dev_reference_snippets β skills/dev_reference_snippets}/agents/qwen.json +0 -0
- /package/.agents/{dev_reference_snippets β skills/dev_reference_snippets}/agents/skill.yaml +0 -0
- /package/.agents/{docker_kubernetes_architecture β skills/docker_kubernetes_architecture}/SKILL.md +0 -0
- /package/.agents/{docker_kubernetes_architecture β skills/docker_kubernetes_architecture}/agents/claude.json +0 -0
- /package/.agents/{docker_kubernetes_architecture β skills/docker_kubernetes_architecture}/agents/copilot.json +0 -0
- /package/.agents/{docker_kubernetes_architecture β skills/docker_kubernetes_architecture}/agents/gemini.json +0 -0
- /package/.agents/{docker_kubernetes_architecture β skills/docker_kubernetes_architecture}/agents/openai.yaml +0 -0
- /package/.agents/{docker_kubernetes_architecture β skills/docker_kubernetes_architecture}/agents/qwen.json +0 -0
- /package/.agents/{docker_kubernetes_architecture β skills/docker_kubernetes_architecture}/agents/skill.yaml +0 -0
- /package/.agents/{es2025_beast_practices β skills/es2025_beast_practices}/SKILL.md +0 -0
- /package/.agents/{es2025_beast_practices β skills/es2025_beast_practices}/agents/claude.json +0 -0
- /package/.agents/{es2025_beast_practices β skills/es2025_beast_practices}/agents/copilot.json +0 -0
- /package/.agents/{es2025_beast_practices β skills/es2025_beast_practices}/agents/gemini.json +0 -0
- /package/.agents/{es2025_beast_practices β skills/es2025_beast_practices}/agents/openai.yaml +0 -0
- /package/.agents/{es2025_beast_practices β skills/es2025_beast_practices}/agents/qwen.json +0 -0
- /package/.agents/{es2025_beast_practices β skills/es2025_beast_practices}/agents/skill.yaml +0 -0
- /package/.agents/{gates β skills/gates}/SKILL.md +0 -0
- /package/.agents/{gates β skills/gates}/agents/claude.json +0 -0
- /package/.agents/{gates β skills/gates}/agents/copilot.json +0 -0
- /package/.agents/{gates β skills/gates}/agents/gemini.json +0 -0
- /package/.agents/{gates β skills/gates}/agents/openai.yaml +0 -0
- /package/.agents/{gates β skills/gates}/agents/qwen.json +0 -0
- /package/.agents/{gates β skills/gates}/agents/skill.yaml +0 -0
- /package/.agents/{go_beast_practices β skills/go_beast_practices}/SKILL.md +0 -0
- /package/.agents/{go_beast_practices β skills/go_beast_practices}/agents/claude.json +0 -0
- /package/.agents/{go_beast_practices β skills/go_beast_practices}/agents/copilot.json +0 -0
- /package/.agents/{go_beast_practices β skills/go_beast_practices}/agents/gemini.json +0 -0
- /package/.agents/{go_beast_practices β skills/go_beast_practices}/agents/openai.yaml +0 -0
- /package/.agents/{go_beast_practices β skills/go_beast_practices}/agents/qwen.json +0 -0
- /package/.agents/{go_beast_practices β skills/go_beast_practices}/agents/skill.yaml +0 -0
- /package/.agents/{google_stitch_skill β skills/google_stitch_skill}/resources/budget_planner.md +0 -0
- /package/.agents/{handoff β skills/handoff}/agents/claude.json +0 -0
- /package/.agents/{handoff β skills/handoff}/agents/copilot.json +0 -0
- /package/.agents/{handoff β skills/handoff}/agents/gemini.json +0 -0
- /package/.agents/{handoff β skills/handoff}/agents/openai.yaml +0 -0
- /package/.agents/{handoff β skills/handoff}/agents/qwen.json +0 -0
- /package/.agents/{handoff β skills/handoff}/agents/skill.yaml +0 -0
- /package/.agents/{k8s_manifests_conventions β skills/k8s_manifests_conventions}/SKILL.md +0 -0
- /package/.agents/{k8s_manifests_conventions β skills/k8s_manifests_conventions}/agents/claude.json +0 -0
- /package/.agents/{k8s_manifests_conventions β skills/k8s_manifests_conventions}/agents/copilot.json +0 -0
- /package/.agents/{k8s_manifests_conventions β skills/k8s_manifests_conventions}/agents/gemini.json +0 -0
- /package/.agents/{k8s_manifests_conventions β skills/k8s_manifests_conventions}/agents/openai.yaml +0 -0
- /package/.agents/{k8s_manifests_conventions β skills/k8s_manifests_conventions}/agents/qwen.json +0 -0
- /package/.agents/{k8s_manifests_conventions β skills/k8s_manifests_conventions}/agents/skill.yaml +0 -0
- /package/.agents/{memory β skills/memory}/SKILL.md +0 -0
- /package/.agents/{memory β skills/memory}/agents/claude.json +0 -0
- /package/.agents/{memory β skills/memory}/agents/copilot.json +0 -0
- /package/.agents/{memory β skills/memory}/agents/gemini.json +0 -0
- /package/.agents/{memory β skills/memory}/agents/openai.yaml +0 -0
- /package/.agents/{memory β skills/memory}/agents/qwen.json +0 -0
- /package/.agents/{memory β skills/memory}/agents/skill.yaml +0 -0
- /package/.agents/{mongodb_mongoose_best_practices β skills/mongodb_mongoose_best_practices}/agents/claude.json +0 -0
- /package/.agents/{mongodb_mongoose_best_practices β skills/mongodb_mongoose_best_practices}/agents/copilot.json +0 -0
- /package/.agents/{mongodb_mongoose_best_practices β skills/mongodb_mongoose_best_practices}/agents/gemini.json +0 -0
- /package/.agents/{mongodb_mongoose_best_practices β skills/mongodb_mongoose_best_practices}/agents/openai.yaml +0 -0
- /package/.agents/{mongodb_mongoose_best_practices β skills/mongodb_mongoose_best_practices}/agents/qwen.json +0 -0
- /package/.agents/{mongodb_mongoose_best_practices β skills/mongodb_mongoose_best_practices}/agents/skill.yaml +0 -0
- /package/.agents/{n8n_pinecone_qdrant_supabase β skills/n8n_pinecone_qdrant_supabase}/SKILL.md +0 -0
- /package/.agents/{n8n_pinecone_qdrant_supabase β skills/n8n_pinecone_qdrant_supabase}/agents/claude.json +0 -0
- /package/.agents/{n8n_pinecone_qdrant_supabase β skills/n8n_pinecone_qdrant_supabase}/agents/copilot.json +0 -0
- /package/.agents/{n8n_pinecone_qdrant_supabase β skills/n8n_pinecone_qdrant_supabase}/agents/gemini.json +0 -0
- /package/.agents/{n8n_pinecone_qdrant_supabase β skills/n8n_pinecone_qdrant_supabase}/agents/openai.yaml +0 -0
- /package/.agents/{n8n_pinecone_qdrant_supabase β skills/n8n_pinecone_qdrant_supabase}/agents/qwen.json +0 -0
- /package/.agents/{n8n_pinecone_qdrant_supabase β skills/n8n_pinecone_qdrant_supabase}/agents/skill.yaml +0 -0
- /package/.agents/{node_express_beast_practices β skills/node_express_beast_practices}/SKILL.md +0 -0
- /package/.agents/{node_express_beast_practices β skills/node_express_beast_practices}/agents/claude.json +0 -0
- /package/.agents/{node_express_beast_practices β skills/node_express_beast_practices}/agents/copilot.json +0 -0
- /package/.agents/{node_express_beast_practices β skills/node_express_beast_practices}/agents/gemini.json +0 -0
- /package/.agents/{node_express_beast_practices β skills/node_express_beast_practices}/agents/openai.yaml +0 -0
- /package/.agents/{node_express_beast_practices β skills/node_express_beast_practices}/agents/qwen.json +0 -0
- /package/.agents/{node_express_beast_practices β skills/node_express_beast_practices}/agents/skill.yaml +0 -0
- /package/.agents/{observability_logging β skills/observability_logging}/SKILL.md +0 -0
- /package/.agents/{observability_logging β skills/observability_logging}/agents/claude.json +0 -0
- /package/.agents/{observability_logging β skills/observability_logging}/agents/copilot.json +0 -0
- /package/.agents/{observability_logging β skills/observability_logging}/agents/gemini.json +0 -0
- /package/.agents/{observability_logging β skills/observability_logging}/agents/openai.yaml +0 -0
- /package/.agents/{observability_logging β skills/observability_logging}/agents/qwen.json +0 -0
- /package/.agents/{observability_logging β skills/observability_logging}/agents/skill.yaml +0 -0
- /package/.agents/{observability_plan β skills/observability_plan}/agents/claude.json +0 -0
- /package/.agents/{observability_plan β skills/observability_plan}/agents/copilot.json +0 -0
- /package/.agents/{observability_plan β skills/observability_plan}/agents/gemini.json +0 -0
- /package/.agents/{observability_plan β skills/observability_plan}/agents/openai.yaml +0 -0
- /package/.agents/{observability_plan β skills/observability_plan}/agents/qwen.json +0 -0
- /package/.agents/{observability_plan β skills/observability_plan}/agents/skill.yaml +0 -0
- /package/.agents/{observability_review β skills/observability_review}/SKILL.md +0 -0
- /package/.agents/{observability_review β skills/observability_review}/agents/claude.json +0 -0
- /package/.agents/{observability_review β skills/observability_review}/agents/copilot.json +0 -0
- /package/.agents/{observability_review β skills/observability_review}/agents/gemini.json +0 -0
- /package/.agents/{observability_review β skills/observability_review}/agents/openai.yaml +0 -0
- /package/.agents/{observability_review β skills/observability_review}/agents/qwen.json +0 -0
- /package/.agents/{observability_review β skills/observability_review}/agents/skill.yaml +0 -0
- /package/.agents/{performance_review_baseline β skills/performance_review_baseline}/SKILL.md +0 -0
- /package/.agents/{performance_review_baseline β skills/performance_review_baseline}/agents/claude.json +0 -0
- /package/.agents/{performance_review_baseline β skills/performance_review_baseline}/agents/copilot.json +0 -0
- /package/.agents/{performance_review_baseline β skills/performance_review_baseline}/agents/gemini.json +0 -0
- /package/.agents/{performance_review_baseline β skills/performance_review_baseline}/agents/openai.yaml +0 -0
- /package/.agents/{performance_review_baseline β skills/performance_review_baseline}/agents/qwen.json +0 -0
- /package/.agents/{performance_review_baseline β skills/performance_review_baseline}/agents/skill.yaml +0 -0
- /package/.agents/{pm_backlog β skills/pm_backlog}/agents/claude.json +0 -0
- /package/.agents/{pm_backlog β skills/pm_backlog}/agents/copilot.json +0 -0
- /package/.agents/{pm_backlog β skills/pm_backlog}/agents/gemini.json +0 -0
- /package/.agents/{pm_backlog β skills/pm_backlog}/agents/openai.yaml +0 -0
- /package/.agents/{pm_backlog β skills/pm_backlog}/agents/qwen.json +0 -0
- /package/.agents/{pm_backlog β skills/pm_backlog}/agents/skill.yaml +0 -0
- /package/.agents/{pm_interview β skills/pm_interview}/agents/claude.json +0 -0
- /package/.agents/{pm_interview β skills/pm_interview}/agents/copilot.json +0 -0
- /package/.agents/{pm_interview β skills/pm_interview}/agents/gemini.json +0 -0
- /package/.agents/{pm_interview β skills/pm_interview}/agents/openai.yaml +0 -0
- /package/.agents/{pm_interview β skills/pm_interview}/agents/qwen.json +0 -0
- /package/.agents/{pm_interview β skills/pm_interview}/agents/skill.yaml +0 -0
- /package/.agents/{pm_prd β skills/pm_prd}/SKILL.md +0 -0
- /package/.agents/{pm_prd β skills/pm_prd}/agents/claude.json +0 -0
- /package/.agents/{pm_prd β skills/pm_prd}/agents/copilot.json +0 -0
- /package/.agents/{pm_prd β skills/pm_prd}/agents/gemini.json +0 -0
- /package/.agents/{pm_prd β skills/pm_prd}/agents/openai.yaml +0 -0
- /package/.agents/{pm_prd β skills/pm_prd}/agents/qwen.json +0 -0
- /package/.agents/{pm_prd β skills/pm_prd}/agents/skill.yaml +0 -0
- /package/.agents/{qa_api_contract_tests β skills/qa_api_contract_tests}/SKILL.md +0 -0
- /package/.agents/{qa_api_contract_tests β skills/qa_api_contract_tests}/agents/claude.json +0 -0
- /package/.agents/{qa_api_contract_tests β skills/qa_api_contract_tests}/agents/copilot.json +0 -0
- /package/.agents/{qa_api_contract_tests β skills/qa_api_contract_tests}/agents/gemini.json +0 -0
- /package/.agents/{qa_api_contract_tests β skills/qa_api_contract_tests}/agents/openai.yaml +0 -0
- /package/.agents/{qa_api_contract_tests β skills/qa_api_contract_tests}/agents/qwen.json +0 -0
- /package/.agents/{qa_api_contract_tests β skills/qa_api_contract_tests}/agents/skill.yaml +0 -0
- /package/.agents/{qa_browser_testing β skills/qa_browser_testing}/SKILL.md +0 -0
- /package/.agents/{qa_browser_testing β skills/qa_browser_testing}/agents/claude.json +0 -0
- /package/.agents/{qa_browser_testing β skills/qa_browser_testing}/agents/copilot.json +0 -0
- /package/.agents/{qa_browser_testing β skills/qa_browser_testing}/agents/gemini.json +0 -0
- /package/.agents/{qa_browser_testing β skills/qa_browser_testing}/agents/openai.yaml +0 -0
- /package/.agents/{qa_browser_testing β skills/qa_browser_testing}/agents/qwen.json +0 -0
- /package/.agents/{qa_browser_testing β skills/qa_browser_testing}/agents/skill.yaml +0 -0
- /package/.agents/{qa_e2e_playwright β skills/qa_e2e_playwright}/SKILL.md +0 -0
- /package/.agents/{qa_e2e_playwright β skills/qa_e2e_playwright}/agents/claude.json +0 -0
- /package/.agents/{qa_e2e_playwright β skills/qa_e2e_playwright}/agents/copilot.json +0 -0
- /package/.agents/{qa_e2e_playwright β skills/qa_e2e_playwright}/agents/gemini.json +0 -0
- /package/.agents/{qa_e2e_playwright β skills/qa_e2e_playwright}/agents/openai.yaml +0 -0
- /package/.agents/{qa_e2e_playwright β skills/qa_e2e_playwright}/agents/qwen.json +0 -0
- /package/.agents/{qa_e2e_playwright β skills/qa_e2e_playwright}/agents/skill.yaml +0 -0
- /package/.agents/{qa_manual_run β skills/qa_manual_run}/SKILL.md +0 -0
- /package/.agents/{qa_manual_run β skills/qa_manual_run}/agents/claude.json +0 -0
- /package/.agents/{qa_manual_run β skills/qa_manual_run}/agents/copilot.json +0 -0
- /package/.agents/{qa_manual_run β skills/qa_manual_run}/agents/gemini.json +0 -0
- /package/.agents/{qa_manual_run β skills/qa_manual_run}/agents/openai.yaml +0 -0
- /package/.agents/{qa_manual_run β skills/qa_manual_run}/agents/qwen.json +0 -0
- /package/.agents/{qa_manual_run β skills/qa_manual_run}/agents/skill.yaml +0 -0
- /package/.agents/{qa_regression_baseline β skills/qa_regression_baseline}/SKILL.md +0 -0
- /package/.agents/{qa_regression_baseline β skills/qa_regression_baseline}/agents/claude.json +0 -0
- /package/.agents/{qa_regression_baseline β skills/qa_regression_baseline}/agents/copilot.json +0 -0
- /package/.agents/{qa_regression_baseline β skills/qa_regression_baseline}/agents/gemini.json +0 -0
- /package/.agents/{qa_regression_baseline β skills/qa_regression_baseline}/agents/openai.yaml +0 -0
- /package/.agents/{qa_regression_baseline β skills/qa_regression_baseline}/agents/qwen.json +0 -0
- /package/.agents/{qa_regression_baseline β skills/qa_regression_baseline}/agents/skill.yaml +0 -0
- /package/.agents/{qa_security_smoke_tests β skills/qa_security_smoke_tests}/SKILL.md +0 -0
- /package/.agents/{qa_security_smoke_tests β skills/qa_security_smoke_tests}/agents/claude.json +0 -0
- /package/.agents/{qa_security_smoke_tests β skills/qa_security_smoke_tests}/agents/copilot.json +0 -0
- /package/.agents/{qa_security_smoke_tests β skills/qa_security_smoke_tests}/agents/gemini.json +0 -0
- /package/.agents/{qa_security_smoke_tests β skills/qa_security_smoke_tests}/agents/openai.yaml +0 -0
- /package/.agents/{qa_security_smoke_tests β skills/qa_security_smoke_tests}/agents/qwen.json +0 -0
- /package/.agents/{qa_security_smoke_tests β skills/qa_security_smoke_tests}/agents/skill.yaml +0 -0
- /package/.agents/{qa_test_plan β skills/qa_test_plan}/agents/claude.json +0 -0
- /package/.agents/{qa_test_plan β skills/qa_test_plan}/agents/copilot.json +0 -0
- /package/.agents/{qa_test_plan β skills/qa_test_plan}/agents/gemini.json +0 -0
- /package/.agents/{qa_test_plan β skills/qa_test_plan}/agents/openai.yaml +0 -0
- /package/.agents/{qa_test_plan β skills/qa_test_plan}/agents/qwen.json +0 -0
- /package/.agents/{qa_test_plan β skills/qa_test_plan}/agents/skill.yaml +0 -0
- /package/.agents/{qa_ui_a11y_smoke β skills/qa_ui_a11y_smoke}/SKILL.md +0 -0
- /package/.agents/{qa_ui_a11y_smoke β skills/qa_ui_a11y_smoke}/agents/claude.json +0 -0
- /package/.agents/{qa_ui_a11y_smoke β skills/qa_ui_a11y_smoke}/agents/copilot.json +0 -0
- /package/.agents/{qa_ui_a11y_smoke β skills/qa_ui_a11y_smoke}/agents/gemini.json +0 -0
- /package/.agents/{qa_ui_a11y_smoke β skills/qa_ui_a11y_smoke}/agents/openai.yaml +0 -0
- /package/.agents/{qa_ui_a11y_smoke β skills/qa_ui_a11y_smoke}/agents/qwen.json +0 -0
- /package/.agents/{qa_ui_a11y_smoke β skills/qa_ui_a11y_smoke}/agents/skill.yaml +0 -0
- /package/.agents/{react_15_3_wix_iframe β skills/react_15_3_wix_iframe}/SKILL.md +0 -0
- /package/.agents/{react_15_3_wix_iframe β skills/react_15_3_wix_iframe}/agents/claude.json +0 -0
- /package/.agents/{react_15_3_wix_iframe β skills/react_15_3_wix_iframe}/agents/copilot.json +0 -0
- /package/.agents/{react_15_3_wix_iframe β skills/react_15_3_wix_iframe}/agents/gemini.json +0 -0
- /package/.agents/{react_15_3_wix_iframe β skills/react_15_3_wix_iframe}/agents/openai.yaml +0 -0
- /package/.agents/{react_15_3_wix_iframe β skills/react_15_3_wix_iframe}/agents/qwen.json +0 -0
- /package/.agents/{react_15_3_wix_iframe β skills/react_15_3_wix_iframe}/agents/skill.yaml +0 -0
- /package/.agents/{react_beast_practices β skills/react_beast_practices}/SKILL.md +0 -0
- /package/.agents/{react_beast_practices β skills/react_beast_practices}/agents/claude.json +0 -0
- /package/.agents/{react_beast_practices β skills/react_beast_practices}/agents/copilot.json +0 -0
- /package/.agents/{react_beast_practices β skills/react_beast_practices}/agents/gemini.json +0 -0
- /package/.agents/{react_beast_practices β skills/react_beast_practices}/agents/openai.yaml +0 -0
- /package/.agents/{react_beast_practices β skills/react_beast_practices}/agents/qwen.json +0 -0
- /package/.agents/{react_beast_practices β skills/react_beast_practices}/agents/skill.yaml +0 -0
- /package/.agents/{release_gate β skills/release_gate}/agents/claude.json +0 -0
- /package/.agents/{release_gate β skills/release_gate}/agents/copilot.json +0 -0
- /package/.agents/{release_gate β skills/release_gate}/agents/gemini.json +0 -0
- /package/.agents/{release_gate β skills/release_gate}/agents/openai.yaml +0 -0
- /package/.agents/{release_gate β skills/release_gate}/agents/qwen.json +0 -0
- /package/.agents/{release_gate β skills/release_gate}/agents/skill.yaml +0 -0
- /package/.agents/{release_gate_checklist_template β skills/release_gate_checklist_template}/agents/claude.json +0 -0
- /package/.agents/{release_gate_checklist_template β skills/release_gate_checklist_template}/agents/copilot.json +0 -0
- /package/.agents/{release_gate_checklist_template β skills/release_gate_checklist_template}/agents/gemini.json +0 -0
- /package/.agents/{release_gate_checklist_template β skills/release_gate_checklist_template}/agents/openai.yaml +0 -0
- /package/.agents/{release_gate_checklist_template β skills/release_gate_checklist_template}/agents/qwen.json +0 -0
- /package/.agents/{release_gate_checklist_template β skills/release_gate_checklist_template}/agents/skill.yaml +0 -0
- /package/.agents/{review_reference_snippets β skills/review_reference_snippets}/SKILL.md +0 -0
- /package/.agents/{review_reference_snippets β skills/review_reference_snippets}/agents/claude.json +0 -0
- /package/.agents/{review_reference_snippets β skills/review_reference_snippets}/agents/copilot.json +0 -0
- /package/.agents/{review_reference_snippets β skills/review_reference_snippets}/agents/gemini.json +0 -0
- /package/.agents/{review_reference_snippets β skills/review_reference_snippets}/agents/openai.yaml +0 -0
- /package/.agents/{review_reference_snippets β skills/review_reference_snippets}/agents/qwen.json +0 -0
- /package/.agents/{review_reference_snippets β skills/review_reference_snippets}/agents/skill.yaml +0 -0
- /package/.agents/{security_baseline_dev β skills/security_baseline_dev}/SKILL.md +0 -0
- /package/.agents/{security_baseline_dev β skills/security_baseline_dev}/agents/claude.json +0 -0
- /package/.agents/{security_baseline_dev β skills/security_baseline_dev}/agents/copilot.json +0 -0
- /package/.agents/{security_baseline_dev β skills/security_baseline_dev}/agents/gemini.json +0 -0
- /package/.agents/{security_baseline_dev β skills/security_baseline_dev}/agents/openai.yaml +0 -0
- /package/.agents/{security_baseline_dev β skills/security_baseline_dev}/agents/qwen.json +0 -0
- /package/.agents/{security_baseline_dev β skills/security_baseline_dev}/agents/skill.yaml +0 -0
- /package/.agents/{security_review β skills/security_review}/SKILL.md +0 -0
- /package/.agents/{security_review β skills/security_review}/agents/claude.json +0 -0
- /package/.agents/{security_review β skills/security_review}/agents/copilot.json +0 -0
- /package/.agents/{security_review β skills/security_review}/agents/gemini.json +0 -0
- /package/.agents/{security_review β skills/security_review}/agents/openai.yaml +0 -0
- /package/.agents/{security_review β skills/security_review}/agents/qwen.json +0 -0
- /package/.agents/{security_review β skills/security_review}/agents/skill.yaml +0 -0
- /package/.agents/{security_review_baseline β skills/security_review_baseline}/SKILL.md +0 -0
- /package/.agents/{security_review_baseline β skills/security_review_baseline}/agents/claude.json +0 -0
- /package/.agents/{security_review_baseline β skills/security_review_baseline}/agents/copilot.json +0 -0
- /package/.agents/{security_review_baseline β skills/security_review_baseline}/agents/gemini.json +0 -0
- /package/.agents/{security_review_baseline β skills/security_review_baseline}/agents/openai.yaml +0 -0
- /package/.agents/{security_review_baseline β skills/security_review_baseline}/agents/qwen.json +0 -0
- /package/.agents/{security_review_baseline β skills/security_review_baseline}/agents/skill.yaml +0 -0
- /package/.agents/{state_rtk_beast_practices β skills/state_rtk_beast_practices}/agents/claude.json +0 -0
- /package/.agents/{state_rtk_beast_practices β skills/state_rtk_beast_practices}/agents/copilot.json +0 -0
- /package/.agents/{state_rtk_beast_practices β skills/state_rtk_beast_practices}/agents/gemini.json +0 -0
- /package/.agents/{state_rtk_beast_practices β skills/state_rtk_beast_practices}/agents/openai.yaml +0 -0
- /package/.agents/{state_rtk_beast_practices β skills/state_rtk_beast_practices}/agents/qwen.json +0 -0
- /package/.agents/{state_rtk_beast_practices β skills/state_rtk_beast_practices}/agents/skill.yaml +0 -0
- /package/.agents/{state_zustand_beast_practices β skills/state_zustand_beast_practices}/agents/claude.json +0 -0
- /package/.agents/{state_zustand_beast_practices β skills/state_zustand_beast_practices}/agents/copilot.json +0 -0
- /package/.agents/{state_zustand_beast_practices β skills/state_zustand_beast_practices}/agents/gemini.json +0 -0
- /package/.agents/{state_zustand_beast_practices β skills/state_zustand_beast_practices}/agents/openai.yaml +0 -0
- /package/.agents/{state_zustand_beast_practices β skills/state_zustand_beast_practices}/agents/qwen.json +0 -0
- /package/.agents/{state_zustand_beast_practices β skills/state_zustand_beast_practices}/agents/skill.yaml +0 -0
- /package/.agents/{styling_css_stack β skills/styling_css_stack}/agents/claude.json +0 -0
- /package/.agents/{styling_css_stack β skills/styling_css_stack}/agents/copilot.json +0 -0
- /package/.agents/{styling_css_stack β skills/styling_css_stack}/agents/gemini.json +0 -0
- /package/.agents/{styling_css_stack β skills/styling_css_stack}/agents/openai.yaml +0 -0
- /package/.agents/{styling_css_stack β skills/styling_css_stack}/agents/qwen.json +0 -0
- /package/.agents/{styling_css_stack β skills/styling_css_stack}/agents/skill.yaml +0 -0
- /package/.agents/{system_design_checklist β skills/system_design_checklist}/agents/claude.json +0 -0
- /package/.agents/{system_design_checklist β skills/system_design_checklist}/agents/copilot.json +0 -0
- /package/.agents/{system_design_checklist β skills/system_design_checklist}/agents/gemini.json +0 -0
- /package/.agents/{system_design_checklist β skills/system_design_checklist}/agents/openai.yaml +0 -0
- /package/.agents/{system_design_checklist β skills/system_design_checklist}/agents/qwen.json +0 -0
- /package/.agents/{system_design_checklist β skills/system_design_checklist}/agents/skill.yaml +0 -0
- /package/.agents/{tailwind_beast_practices β skills/tailwind_beast_practices}/SKILL.md +0 -0
- /package/.agents/{tailwind_beast_practices β skills/tailwind_beast_practices}/agents/claude.json +0 -0
- /package/.agents/{tailwind_beast_practices β skills/tailwind_beast_practices}/agents/copilot.json +0 -0
- /package/.agents/{tailwind_beast_practices β skills/tailwind_beast_practices}/agents/gemini.json +0 -0
- /package/.agents/{tailwind_beast_practices β skills/tailwind_beast_practices}/agents/openai.yaml +0 -0
- /package/.agents/{tailwind_beast_practices β skills/tailwind_beast_practices}/agents/qwen.json +0 -0
- /package/.agents/{tailwind_beast_practices β skills/tailwind_beast_practices}/agents/skill.yaml +0 -0
- /package/.agents/{tanstack_beast_practices β skills/tanstack_beast_practices}/SKILL.md +0 -0
- /package/.agents/{tanstack_beast_practices β skills/tanstack_beast_practices}/agents/claude.json +0 -0
- /package/.agents/{tanstack_beast_practices β skills/tanstack_beast_practices}/agents/copilot.json +0 -0
- /package/.agents/{tanstack_beast_practices β skills/tanstack_beast_practices}/agents/gemini.json +0 -0
- /package/.agents/{tanstack_beast_practices β skills/tanstack_beast_practices}/agents/openai.yaml +0 -0
- /package/.agents/{tanstack_beast_practices β skills/tanstack_beast_practices}/agents/qwen.json +0 -0
- /package/.agents/{tanstack_beast_practices β skills/tanstack_beast_practices}/agents/skill.yaml +0 -0
- /package/.agents/{tdd_workflow β skills/tdd_workflow}/SKILL.md +0 -0
- /package/.agents/{tdd_workflow β skills/tdd_workflow}/agents/claude.json +0 -0
- /package/.agents/{tdd_workflow β skills/tdd_workflow}/agents/copilot.json +0 -0
- /package/.agents/{tdd_workflow β skills/tdd_workflow}/agents/gemini.json +0 -0
- /package/.agents/{tdd_workflow β skills/tdd_workflow}/agents/openai.yaml +0 -0
- /package/.agents/{tdd_workflow β skills/tdd_workflow}/agents/qwen.json +0 -0
- /package/.agents/{tdd_workflow β skills/tdd_workflow}/agents/skill.yaml +0 -0
- /package/.agents/{testing_strategy_js β skills/testing_strategy_js}/agents/claude.json +0 -0
- /package/.agents/{testing_strategy_js β skills/testing_strategy_js}/agents/copilot.json +0 -0
- /package/.agents/{testing_strategy_js β skills/testing_strategy_js}/agents/gemini.json +0 -0
- /package/.agents/{testing_strategy_js β skills/testing_strategy_js}/agents/openai.yaml +0 -0
- /package/.agents/{testing_strategy_js β skills/testing_strategy_js}/agents/qwen.json +0 -0
- /package/.agents/{testing_strategy_js β skills/testing_strategy_js}/agents/skill.yaml +0 -0
- /package/.agents/{tests_quality_review β skills/tests_quality_review}/agents/claude.json +0 -0
- /package/.agents/{tests_quality_review β skills/tests_quality_review}/agents/copilot.json +0 -0
- /package/.agents/{tests_quality_review β skills/tests_quality_review}/agents/gemini.json +0 -0
- /package/.agents/{tests_quality_review β skills/tests_quality_review}/agents/openai.yaml +0 -0
- /package/.agents/{tests_quality_review β skills/tests_quality_review}/agents/qwen.json +0 -0
- /package/.agents/{tests_quality_review β skills/tests_quality_review}/agents/skill.yaml +0 -0
- /package/.agents/{threat_model_baseline β skills/threat_model_baseline}/agents/claude.json +0 -0
- /package/.agents/{threat_model_baseline β skills/threat_model_baseline}/agents/copilot.json +0 -0
- /package/.agents/{threat_model_baseline β skills/threat_model_baseline}/agents/gemini.json +0 -0
- /package/.agents/{threat_model_baseline β skills/threat_model_baseline}/agents/openai.yaml +0 -0
- /package/.agents/{threat_model_baseline β skills/threat_model_baseline}/agents/qwen.json +0 -0
- /package/.agents/{threat_model_baseline β skills/threat_model_baseline}/agents/skill.yaml +0 -0
- /package/.agents/{tooling_bun_biome β skills/tooling_bun_biome}/SKILL.md +0 -0
- /package/.agents/{tooling_bun_biome β skills/tooling_bun_biome}/agents/claude.json +0 -0
- /package/.agents/{tooling_bun_biome β skills/tooling_bun_biome}/agents/copilot.json +0 -0
- /package/.agents/{tooling_bun_biome β skills/tooling_bun_biome}/agents/gemini.json +0 -0
- /package/.agents/{tooling_bun_biome β skills/tooling_bun_biome}/agents/openai.yaml +0 -0
- /package/.agents/{tooling_bun_biome β skills/tooling_bun_biome}/agents/qwen.json +0 -0
- /package/.agents/{tooling_bun_biome β skills/tooling_bun_biome}/agents/skill.yaml +0 -0
- /package/.agents/{typescript_beast_practices β skills/typescript_beast_practices}/SKILL.md +0 -0
- /package/.agents/{typescript_beast_practices β skills/typescript_beast_practices}/agents/claude.json +0 -0
- /package/.agents/{typescript_beast_practices β skills/typescript_beast_practices}/agents/copilot.json +0 -0
- /package/.agents/{typescript_beast_practices β skills/typescript_beast_practices}/agents/gemini.json +0 -0
- /package/.agents/{typescript_beast_practices β skills/typescript_beast_practices}/agents/openai.yaml +0 -0
- /package/.agents/{typescript_beast_practices β skills/typescript_beast_practices}/agents/qwen.json +0 -0
- /package/.agents/{typescript_beast_practices β skills/typescript_beast_practices}/agents/skill.yaml +0 -0
- /package/.agents/{ui_a11y_smoke_review β skills/ui_a11y_smoke_review}/agents/claude.json +0 -0
- /package/.agents/{ui_a11y_smoke_review β skills/ui_a11y_smoke_review}/agents/copilot.json +0 -0
- /package/.agents/{ui_a11y_smoke_review β skills/ui_a11y_smoke_review}/agents/gemini.json +0 -0
- /package/.agents/{ui_a11y_smoke_review β skills/ui_a11y_smoke_review}/agents/openai.yaml +0 -0
- /package/.agents/{ui_a11y_smoke_review β skills/ui_a11y_smoke_review}/agents/qwen.json +0 -0
- /package/.agents/{ui_a11y_smoke_review β skills/ui_a11y_smoke_review}/agents/skill.yaml +0 -0
- /package/.agents/{ui_inventory β skills/ui_inventory}/agents/claude.json +0 -0
- /package/.agents/{ui_inventory β skills/ui_inventory}/agents/copilot.json +0 -0
- /package/.agents/{ui_inventory β skills/ui_inventory}/agents/gemini.json +0 -0
- /package/.agents/{ui_inventory β skills/ui_inventory}/agents/openai.yaml +0 -0
- /package/.agents/{ui_inventory β skills/ui_inventory}/agents/qwen.json +0 -0
- /package/.agents/{ui_inventory β skills/ui_inventory}/agents/skill.yaml +0 -0
- /package/.agents/{ux_discovery β skills/ux_discovery}/agents/claude.json +0 -0
- /package/.agents/{ux_discovery β skills/ux_discovery}/agents/copilot.json +0 -0
- /package/.agents/{ux_discovery β skills/ux_discovery}/agents/gemini.json +0 -0
- /package/.agents/{ux_discovery β skills/ux_discovery}/agents/openai.yaml +0 -0
- /package/.agents/{ux_discovery β skills/ux_discovery}/agents/qwen.json +0 -0
- /package/.agents/{ux_discovery β skills/ux_discovery}/agents/skill.yaml +0 -0
- /package/.agents/{ux_spec β skills/ux_spec}/agents/claude.json +0 -0
- /package/.agents/{ux_spec β skills/ux_spec}/agents/copilot.json +0 -0
- /package/.agents/{ux_spec β skills/ux_spec}/agents/gemini.json +0 -0
- /package/.agents/{ux_spec β skills/ux_spec}/agents/openai.yaml +0 -0
- /package/.agents/{ux_spec β skills/ux_spec}/agents/qwen.json +0 -0
- /package/.agents/{ux_spec β skills/ux_spec}/agents/skill.yaml +0 -0
- /package/.agents/{wix_iframe_sdk β skills/wix_iframe_sdk}/agents/claude.json +0 -0
- /package/.agents/{wix_iframe_sdk β skills/wix_iframe_sdk}/agents/copilot.json +0 -0
- /package/.agents/{wix_iframe_sdk β skills/wix_iframe_sdk}/agents/gemini.json +0 -0
- /package/.agents/{wix_iframe_sdk β skills/wix_iframe_sdk}/agents/openai.yaml +0 -0
- /package/.agents/{wix_iframe_sdk β skills/wix_iframe_sdk}/agents/qwen.json +0 -0
- /package/.agents/{wix_iframe_sdk β skills/wix_iframe_sdk}/agents/skill.yaml +0 -0
- /package/.agents/{wix_iframe_sdk β skills/wix_iframe_sdk}/references/wix-sdk-iframe.md +0 -0
- /package/.agents/{wix_self_hosted_embedded_script β skills/wix_self_hosted_embedded_script}/agents/claude.json +0 -0
- /package/.agents/{wix_self_hosted_embedded_script β skills/wix_self_hosted_embedded_script}/agents/copilot.json +0 -0
- /package/.agents/{wix_self_hosted_embedded_script β skills/wix_self_hosted_embedded_script}/agents/gemini.json +0 -0
- /package/.agents/{wix_self_hosted_embedded_script β skills/wix_self_hosted_embedded_script}/agents/openai.yaml +0 -0
- /package/.agents/{wix_self_hosted_embedded_script β skills/wix_self_hosted_embedded_script}/agents/qwen.json +0 -0
- /package/.agents/{wix_self_hosted_embedded_script β skills/wix_self_hosted_embedded_script}/agents/skill.yaml +0 -0
- /package/locales/en/.agents/{a11y_baseline β skills/a11y_baseline}/agents/claude.json +0 -0
- /package/locales/en/.agents/{a11y_baseline β skills/a11y_baseline}/agents/copilot.json +0 -0
- /package/locales/en/.agents/{a11y_baseline β skills/a11y_baseline}/agents/gemini.json +0 -0
- /package/locales/en/.agents/{a11y_baseline β skills/a11y_baseline}/agents/openai.yaml +0 -0
- /package/locales/en/.agents/{a11y_baseline β skills/a11y_baseline}/agents/qwen.json +0 -0
- /package/locales/en/.agents/{a11y_baseline β skills/a11y_baseline}/agents/skill.yaml +0 -0
- /package/locales/en/.agents/{api_contract_compliance_review β skills/api_contract_compliance_review}/agents/claude.json +0 -0
- /package/locales/en/.agents/{api_contract_compliance_review β skills/api_contract_compliance_review}/agents/copilot.json +0 -0
- /package/locales/en/.agents/{api_contract_compliance_review β skills/api_contract_compliance_review}/agents/gemini.json +0 -0
- /package/locales/en/.agents/{api_contract_compliance_review β skills/api_contract_compliance_review}/agents/openai.yaml +0 -0
- /package/locales/en/.agents/{api_contract_compliance_review β skills/api_contract_compliance_review}/agents/qwen.json +0 -0
- /package/locales/en/.agents/{api_contract_compliance_review β skills/api_contract_compliance_review}/agents/skill.yaml +0 -0
- /package/locales/en/.agents/{cloud_infrastructure_security β skills/cloud_infrastructure_security}/agents/claude.json +0 -0
- /package/locales/en/.agents/{cloud_infrastructure_security β skills/cloud_infrastructure_security}/agents/copilot.json +0 -0
- /package/locales/en/.agents/{cloud_infrastructure_security β skills/cloud_infrastructure_security}/agents/gemini.json +0 -0
- /package/locales/en/.agents/{cloud_infrastructure_security β skills/cloud_infrastructure_security}/agents/openai.yaml +0 -0
- /package/locales/en/.agents/{cloud_infrastructure_security β skills/cloud_infrastructure_security}/agents/qwen.json +0 -0
- /package/locales/en/.agents/{cloud_infrastructure_security β skills/cloud_infrastructure_security}/agents/skill.yaml +0 -0
- /package/locales/en/.agents/{code_review_checklist β skills/code_review_checklist}/agents/claude.json +0 -0
- /package/locales/en/.agents/{code_review_checklist β skills/code_review_checklist}/agents/copilot.json +0 -0
- /package/locales/en/.agents/{code_review_checklist β skills/code_review_checklist}/agents/gemini.json +0 -0
- /package/locales/en/.agents/{code_review_checklist β skills/code_review_checklist}/agents/openai.yaml +0 -0
- /package/locales/en/.agents/{code_review_checklist β skills/code_review_checklist}/agents/qwen.json +0 -0
- /package/locales/en/.agents/{code_review_checklist β skills/code_review_checklist}/agents/skill.yaml +0 -0
- /package/locales/en/.agents/{dependency_supply_chain_review β skills/dependency_supply_chain_review}/agents/claude.json +0 -0
- /package/locales/en/.agents/{dependency_supply_chain_review β skills/dependency_supply_chain_review}/agents/copilot.json +0 -0
- /package/locales/en/.agents/{dependency_supply_chain_review β skills/dependency_supply_chain_review}/agents/gemini.json +0 -0
- /package/locales/en/.agents/{dependency_supply_chain_review β skills/dependency_supply_chain_review}/agents/openai.yaml +0 -0
- /package/locales/en/.agents/{dependency_supply_chain_review β skills/dependency_supply_chain_review}/agents/qwen.json +0 -0
- /package/locales/en/.agents/{dependency_supply_chain_review β skills/dependency_supply_chain_review}/agents/skill.yaml +0 -0
- /package/locales/en/.agents/{design_parity_review β skills/design_parity_review}/agents/claude.json +0 -0
- /package/locales/en/.agents/{design_parity_review β skills/design_parity_review}/agents/copilot.json +0 -0
- /package/locales/en/.agents/{design_parity_review β skills/design_parity_review}/agents/gemini.json +0 -0
- /package/locales/en/.agents/{design_parity_review β skills/design_parity_review}/agents/openai.yaml +0 -0
- /package/locales/en/.agents/{design_parity_review β skills/design_parity_review}/agents/qwen.json +0 -0
- /package/locales/en/.agents/{design_parity_review β skills/design_parity_review}/agents/skill.yaml +0 -0
- /package/locales/en/.agents/{design_systems β skills/design_systems}/agents/claude.json +0 -0
- /package/locales/en/.agents/{design_systems β skills/design_systems}/agents/copilot.json +0 -0
- /package/locales/en/.agents/{design_systems β skills/design_systems}/agents/gemini.json +0 -0
- /package/locales/en/.agents/{design_systems β skills/design_systems}/agents/openai.yaml +0 -0
- /package/locales/en/.agents/{design_systems β skills/design_systems}/agents/qwen.json +0 -0
- /package/locales/en/.agents/{design_systems β skills/design_systems}/agents/skill.yaml +0 -0
- /package/locales/en/.agents/{dev_reference_snippets β skills/dev_reference_snippets}/agents/claude.json +0 -0
- /package/locales/en/.agents/{dev_reference_snippets β skills/dev_reference_snippets}/agents/copilot.json +0 -0
- /package/locales/en/.agents/{dev_reference_snippets β skills/dev_reference_snippets}/agents/gemini.json +0 -0
- /package/locales/en/.agents/{dev_reference_snippets β skills/dev_reference_snippets}/agents/openai.yaml +0 -0
- /package/locales/en/.agents/{dev_reference_snippets β skills/dev_reference_snippets}/agents/qwen.json +0 -0
- /package/locales/en/.agents/{dev_reference_snippets β skills/dev_reference_snippets}/agents/skill.yaml +0 -0
- /package/locales/en/.agents/{docker_kubernetes_architecture β skills/docker_kubernetes_architecture}/agents/claude.json +0 -0
- /package/locales/en/.agents/{docker_kubernetes_architecture β skills/docker_kubernetes_architecture}/agents/copilot.json +0 -0
- /package/locales/en/.agents/{docker_kubernetes_architecture β skills/docker_kubernetes_architecture}/agents/gemini.json +0 -0
- /package/locales/en/.agents/{docker_kubernetes_architecture β skills/docker_kubernetes_architecture}/agents/openai.yaml +0 -0
- /package/locales/en/.agents/{docker_kubernetes_architecture β skills/docker_kubernetes_architecture}/agents/qwen.json +0 -0
- /package/locales/en/.agents/{docker_kubernetes_architecture β skills/docker_kubernetes_architecture}/agents/skill.yaml +0 -0
- /package/locales/en/.agents/{es2025_beast_practices β skills/es2025_beast_practices}/agents/claude.json +0 -0
- /package/locales/en/.agents/{es2025_beast_practices β skills/es2025_beast_practices}/agents/copilot.json +0 -0
- /package/locales/en/.agents/{es2025_beast_practices β skills/es2025_beast_practices}/agents/gemini.json +0 -0
- /package/locales/en/.agents/{es2025_beast_practices β skills/es2025_beast_practices}/agents/openai.yaml +0 -0
- /package/locales/en/.agents/{es2025_beast_practices β skills/es2025_beast_practices}/agents/qwen.json +0 -0
- /package/locales/en/.agents/{es2025_beast_practices β skills/es2025_beast_practices}/agents/skill.yaml +0 -0
- /package/locales/en/.agents/{gates β skills/gates}/agents/claude.json +0 -0
- /package/locales/en/.agents/{gates β skills/gates}/agents/copilot.json +0 -0
- /package/locales/en/.agents/{gates β skills/gates}/agents/gemini.json +0 -0
- /package/locales/en/.agents/{gates β skills/gates}/agents/openai.yaml +0 -0
- /package/locales/en/.agents/{gates β skills/gates}/agents/qwen.json +0 -0
- /package/locales/en/.agents/{gates β skills/gates}/agents/skill.yaml +0 -0
- /package/locales/en/.agents/{go_beast_practices β skills/go_beast_practices}/agents/claude.json +0 -0
- /package/locales/en/.agents/{go_beast_practices β skills/go_beast_practices}/agents/copilot.json +0 -0
- /package/locales/en/.agents/{go_beast_practices β skills/go_beast_practices}/agents/gemini.json +0 -0
- /package/locales/en/.agents/{go_beast_practices β skills/go_beast_practices}/agents/openai.yaml +0 -0
- /package/locales/en/.agents/{go_beast_practices β skills/go_beast_practices}/agents/qwen.json +0 -0
- /package/locales/en/.agents/{go_beast_practices β skills/go_beast_practices}/agents/skill.yaml +0 -0
- /package/locales/en/.agents/{google_stitch_skill β skills/google_stitch_skill}/examples/scr_prompts.md +0 -0
- /package/locales/en/.agents/{google_stitch_skill β skills/google_stitch_skill}/resources/budget_planner.md +0 -0
- /package/locales/en/.agents/{k8s_manifests_conventions β skills/k8s_manifests_conventions}/agents/claude.json +0 -0
- /package/locales/en/.agents/{k8s_manifests_conventions β skills/k8s_manifests_conventions}/agents/copilot.json +0 -0
- /package/locales/en/.agents/{k8s_manifests_conventions β skills/k8s_manifests_conventions}/agents/gemini.json +0 -0
- /package/locales/en/.agents/{k8s_manifests_conventions β skills/k8s_manifests_conventions}/agents/openai.yaml +0 -0
- /package/locales/en/.agents/{k8s_manifests_conventions β skills/k8s_manifests_conventions}/agents/qwen.json +0 -0
- /package/locales/en/.agents/{k8s_manifests_conventions β skills/k8s_manifests_conventions}/agents/skill.yaml +0 -0
- /package/locales/en/.agents/{memory β skills/memory}/agents/claude.json +0 -0
- /package/locales/en/.agents/{memory β skills/memory}/agents/copilot.json +0 -0
- /package/locales/en/.agents/{memory β skills/memory}/agents/gemini.json +0 -0
- /package/locales/en/.agents/{memory β skills/memory}/agents/openai.yaml +0 -0
- /package/locales/en/.agents/{memory β skills/memory}/agents/qwen.json +0 -0
- /package/locales/en/.agents/{memory β skills/memory}/agents/skill.yaml +0 -0
- /package/locales/en/.agents/{n8n_pinecone_qdrant_supabase β skills/n8n_pinecone_qdrant_supabase}/agents/claude.json +0 -0
- /package/locales/en/.agents/{n8n_pinecone_qdrant_supabase β skills/n8n_pinecone_qdrant_supabase}/agents/copilot.json +0 -0
- /package/locales/en/.agents/{n8n_pinecone_qdrant_supabase β skills/n8n_pinecone_qdrant_supabase}/agents/gemini.json +0 -0
- /package/locales/en/.agents/{n8n_pinecone_qdrant_supabase β skills/n8n_pinecone_qdrant_supabase}/agents/openai.yaml +0 -0
- /package/locales/en/.agents/{n8n_pinecone_qdrant_supabase β skills/n8n_pinecone_qdrant_supabase}/agents/qwen.json +0 -0
- /package/locales/en/.agents/{n8n_pinecone_qdrant_supabase β skills/n8n_pinecone_qdrant_supabase}/agents/skill.yaml +0 -0
- /package/locales/en/.agents/{node_express_beast_practices β skills/node_express_beast_practices}/agents/claude.json +0 -0
- /package/locales/en/.agents/{node_express_beast_practices β skills/node_express_beast_practices}/agents/copilot.json +0 -0
- /package/locales/en/.agents/{node_express_beast_practices β skills/node_express_beast_practices}/agents/gemini.json +0 -0
- /package/locales/en/.agents/{node_express_beast_practices β skills/node_express_beast_practices}/agents/openai.yaml +0 -0
- /package/locales/en/.agents/{node_express_beast_practices β skills/node_express_beast_practices}/agents/qwen.json +0 -0
- /package/locales/en/.agents/{node_express_beast_practices β skills/node_express_beast_practices}/agents/skill.yaml +0 -0
- /package/locales/en/.agents/{observability_logging β skills/observability_logging}/agents/claude.json +0 -0
- /package/locales/en/.agents/{observability_logging β skills/observability_logging}/agents/copilot.json +0 -0
- /package/locales/en/.agents/{observability_logging β skills/observability_logging}/agents/gemini.json +0 -0
- /package/locales/en/.agents/{observability_logging β skills/observability_logging}/agents/openai.yaml +0 -0
- /package/locales/en/.agents/{observability_logging β skills/observability_logging}/agents/qwen.json +0 -0
- /package/locales/en/.agents/{observability_logging β skills/observability_logging}/agents/skill.yaml +0 -0
- /package/locales/en/.agents/{observability_review β skills/observability_review}/SKILL.md +0 -0
- /package/locales/en/.agents/{observability_review β skills/observability_review}/agents/claude.json +0 -0
- /package/locales/en/.agents/{observability_review β skills/observability_review}/agents/copilot.json +0 -0
- /package/locales/en/.agents/{observability_review β skills/observability_review}/agents/gemini.json +0 -0
- /package/locales/en/.agents/{observability_review β skills/observability_review}/agents/openai.yaml +0 -0
- /package/locales/en/.agents/{observability_review β skills/observability_review}/agents/qwen.json +0 -0
- /package/locales/en/.agents/{observability_review β skills/observability_review}/agents/skill.yaml +0 -0
- /package/locales/en/.agents/{performance_review_baseline β skills/performance_review_baseline}/agents/claude.json +0 -0
- /package/locales/en/.agents/{performance_review_baseline β skills/performance_review_baseline}/agents/copilot.json +0 -0
- /package/locales/en/.agents/{performance_review_baseline β skills/performance_review_baseline}/agents/gemini.json +0 -0
- /package/locales/en/.agents/{performance_review_baseline β skills/performance_review_baseline}/agents/openai.yaml +0 -0
- /package/locales/en/.agents/{performance_review_baseline β skills/performance_review_baseline}/agents/qwen.json +0 -0
- /package/locales/en/.agents/{performance_review_baseline β skills/performance_review_baseline}/agents/skill.yaml +0 -0
- /package/locales/en/.agents/{pm_prd β skills/pm_prd}/agents/claude.json +0 -0
- /package/locales/en/.agents/{pm_prd β skills/pm_prd}/agents/copilot.json +0 -0
- /package/locales/en/.agents/{pm_prd β skills/pm_prd}/agents/gemini.json +0 -0
- /package/locales/en/.agents/{pm_prd β skills/pm_prd}/agents/openai.yaml +0 -0
- /package/locales/en/.agents/{pm_prd β skills/pm_prd}/agents/qwen.json +0 -0
- /package/locales/en/.agents/{pm_prd β skills/pm_prd}/agents/skill.yaml +0 -0
- /package/locales/en/.agents/{qa_api_contract_tests β skills/qa_api_contract_tests}/agents/claude.json +0 -0
- /package/locales/en/.agents/{qa_api_contract_tests β skills/qa_api_contract_tests}/agents/copilot.json +0 -0
- /package/locales/en/.agents/{qa_api_contract_tests β skills/qa_api_contract_tests}/agents/gemini.json +0 -0
- /package/locales/en/.agents/{qa_api_contract_tests β skills/qa_api_contract_tests}/agents/openai.yaml +0 -0
- /package/locales/en/.agents/{qa_api_contract_tests β skills/qa_api_contract_tests}/agents/qwen.json +0 -0
- /package/locales/en/.agents/{qa_api_contract_tests β skills/qa_api_contract_tests}/agents/skill.yaml +0 -0
- /package/locales/en/.agents/{qa_browser_testing β skills/qa_browser_testing}/agents/claude.json +0 -0
- /package/locales/en/.agents/{qa_browser_testing β skills/qa_browser_testing}/agents/copilot.json +0 -0
- /package/locales/en/.agents/{qa_browser_testing β skills/qa_browser_testing}/agents/gemini.json +0 -0
- /package/locales/en/.agents/{qa_browser_testing β skills/qa_browser_testing}/agents/openai.yaml +0 -0
- /package/locales/en/.agents/{qa_browser_testing β skills/qa_browser_testing}/agents/qwen.json +0 -0
- /package/locales/en/.agents/{qa_browser_testing β skills/qa_browser_testing}/agents/skill.yaml +0 -0
- /package/locales/en/.agents/{qa_e2e_playwright β skills/qa_e2e_playwright}/agents/claude.json +0 -0
- /package/locales/en/.agents/{qa_e2e_playwright β skills/qa_e2e_playwright}/agents/copilot.json +0 -0
- /package/locales/en/.agents/{qa_e2e_playwright β skills/qa_e2e_playwright}/agents/gemini.json +0 -0
- /package/locales/en/.agents/{qa_e2e_playwright β skills/qa_e2e_playwright}/agents/openai.yaml +0 -0
- /package/locales/en/.agents/{qa_e2e_playwright β skills/qa_e2e_playwright}/agents/qwen.json +0 -0
- /package/locales/en/.agents/{qa_e2e_playwright β skills/qa_e2e_playwright}/agents/skill.yaml +0 -0
- /package/locales/en/.agents/{qa_manual_run β skills/qa_manual_run}/agents/claude.json +0 -0
- /package/locales/en/.agents/{qa_manual_run β skills/qa_manual_run}/agents/copilot.json +0 -0
- /package/locales/en/.agents/{qa_manual_run β skills/qa_manual_run}/agents/gemini.json +0 -0
- /package/locales/en/.agents/{qa_manual_run β skills/qa_manual_run}/agents/openai.yaml +0 -0
- /package/locales/en/.agents/{qa_manual_run β skills/qa_manual_run}/agents/qwen.json +0 -0
- /package/locales/en/.agents/{qa_manual_run β skills/qa_manual_run}/agents/skill.yaml +0 -0
- /package/locales/en/.agents/{qa_regression_baseline β skills/qa_regression_baseline}/agents/claude.json +0 -0
- /package/locales/en/.agents/{qa_regression_baseline β skills/qa_regression_baseline}/agents/copilot.json +0 -0
- /package/locales/en/.agents/{qa_regression_baseline β skills/qa_regression_baseline}/agents/gemini.json +0 -0
- /package/locales/en/.agents/{qa_regression_baseline β skills/qa_regression_baseline}/agents/openai.yaml +0 -0
- /package/locales/en/.agents/{qa_regression_baseline β skills/qa_regression_baseline}/agents/qwen.json +0 -0
- /package/locales/en/.agents/{qa_regression_baseline β skills/qa_regression_baseline}/agents/skill.yaml +0 -0
- /package/locales/en/.agents/{qa_security_smoke_tests β skills/qa_security_smoke_tests}/agents/claude.json +0 -0
- /package/locales/en/.agents/{qa_security_smoke_tests β skills/qa_security_smoke_tests}/agents/copilot.json +0 -0
- /package/locales/en/.agents/{qa_security_smoke_tests β skills/qa_security_smoke_tests}/agents/gemini.json +0 -0
- /package/locales/en/.agents/{qa_security_smoke_tests β skills/qa_security_smoke_tests}/agents/openai.yaml +0 -0
- /package/locales/en/.agents/{qa_security_smoke_tests β skills/qa_security_smoke_tests}/agents/qwen.json +0 -0
- /package/locales/en/.agents/{qa_security_smoke_tests β skills/qa_security_smoke_tests}/agents/skill.yaml +0 -0
- /package/locales/en/.agents/{qa_ui_a11y_smoke β skills/qa_ui_a11y_smoke}/agents/claude.json +0 -0
- /package/locales/en/.agents/{qa_ui_a11y_smoke β skills/qa_ui_a11y_smoke}/agents/copilot.json +0 -0
- /package/locales/en/.agents/{qa_ui_a11y_smoke β skills/qa_ui_a11y_smoke}/agents/gemini.json +0 -0
- /package/locales/en/.agents/{qa_ui_a11y_smoke β skills/qa_ui_a11y_smoke}/agents/openai.yaml +0 -0
- /package/locales/en/.agents/{qa_ui_a11y_smoke β skills/qa_ui_a11y_smoke}/agents/qwen.json +0 -0
- /package/locales/en/.agents/{qa_ui_a11y_smoke β skills/qa_ui_a11y_smoke}/agents/skill.yaml +0 -0
- /package/locales/en/.agents/{react_15_3_wix_iframe β skills/react_15_3_wix_iframe}/agents/claude.json +0 -0
- /package/locales/en/.agents/{react_15_3_wix_iframe β skills/react_15_3_wix_iframe}/agents/copilot.json +0 -0
- /package/locales/en/.agents/{react_15_3_wix_iframe β skills/react_15_3_wix_iframe}/agents/gemini.json +0 -0
- /package/locales/en/.agents/{react_15_3_wix_iframe β skills/react_15_3_wix_iframe}/agents/openai.yaml +0 -0
- /package/locales/en/.agents/{react_15_3_wix_iframe β skills/react_15_3_wix_iframe}/agents/qwen.json +0 -0
- /package/locales/en/.agents/{react_15_3_wix_iframe β skills/react_15_3_wix_iframe}/agents/skill.yaml +0 -0
- /package/locales/en/.agents/{react_beast_practices β skills/react_beast_practices}/agents/claude.json +0 -0
- /package/locales/en/.agents/{react_beast_practices β skills/react_beast_practices}/agents/copilot.json +0 -0
- /package/locales/en/.agents/{react_beast_practices β skills/react_beast_practices}/agents/gemini.json +0 -0
- /package/locales/en/.agents/{react_beast_practices β skills/react_beast_practices}/agents/openai.yaml +0 -0
- /package/locales/en/.agents/{react_beast_practices β skills/react_beast_practices}/agents/qwen.json +0 -0
- /package/locales/en/.agents/{react_beast_practices β skills/react_beast_practices}/agents/skill.yaml +0 -0
- /package/locales/en/.agents/{review_reference_snippets β skills/review_reference_snippets}/agents/claude.json +0 -0
- /package/locales/en/.agents/{review_reference_snippets β skills/review_reference_snippets}/agents/copilot.json +0 -0
- /package/locales/en/.agents/{review_reference_snippets β skills/review_reference_snippets}/agents/gemini.json +0 -0
- /package/locales/en/.agents/{review_reference_snippets β skills/review_reference_snippets}/agents/openai.yaml +0 -0
- /package/locales/en/.agents/{review_reference_snippets β skills/review_reference_snippets}/agents/qwen.json +0 -0
- /package/locales/en/.agents/{review_reference_snippets β skills/review_reference_snippets}/agents/skill.yaml +0 -0
- /package/locales/en/.agents/{security_baseline_dev β skills/security_baseline_dev}/agents/claude.json +0 -0
- /package/locales/en/.agents/{security_baseline_dev β skills/security_baseline_dev}/agents/copilot.json +0 -0
- /package/locales/en/.agents/{security_baseline_dev β skills/security_baseline_dev}/agents/gemini.json +0 -0
- /package/locales/en/.agents/{security_baseline_dev β skills/security_baseline_dev}/agents/openai.yaml +0 -0
- /package/locales/en/.agents/{security_baseline_dev β skills/security_baseline_dev}/agents/qwen.json +0 -0
- /package/locales/en/.agents/{security_baseline_dev β skills/security_baseline_dev}/agents/skill.yaml +0 -0
- /package/locales/en/.agents/{security_review β skills/security_review}/agents/claude.json +0 -0
- /package/locales/en/.agents/{security_review β skills/security_review}/agents/copilot.json +0 -0
- /package/locales/en/.agents/{security_review β skills/security_review}/agents/gemini.json +0 -0
- /package/locales/en/.agents/{security_review β skills/security_review}/agents/openai.yaml +0 -0
- /package/locales/en/.agents/{security_review β skills/security_review}/agents/qwen.json +0 -0
- /package/locales/en/.agents/{security_review β skills/security_review}/agents/skill.yaml +0 -0
- /package/locales/en/.agents/{security_review_baseline β skills/security_review_baseline}/agents/claude.json +0 -0
- /package/locales/en/.agents/{security_review_baseline β skills/security_review_baseline}/agents/copilot.json +0 -0
- /package/locales/en/.agents/{security_review_baseline β skills/security_review_baseline}/agents/gemini.json +0 -0
- /package/locales/en/.agents/{security_review_baseline β skills/security_review_baseline}/agents/openai.yaml +0 -0
- /package/locales/en/.agents/{security_review_baseline β skills/security_review_baseline}/agents/qwen.json +0 -0
- /package/locales/en/.agents/{security_review_baseline β skills/security_review_baseline}/agents/skill.yaml +0 -0
- /package/locales/en/.agents/{tailwind_beast_practices β skills/tailwind_beast_practices}/agents/claude.json +0 -0
- /package/locales/en/.agents/{tailwind_beast_practices β skills/tailwind_beast_practices}/agents/copilot.json +0 -0
- /package/locales/en/.agents/{tailwind_beast_practices β skills/tailwind_beast_practices}/agents/gemini.json +0 -0
- /package/locales/en/.agents/{tailwind_beast_practices β skills/tailwind_beast_practices}/agents/openai.yaml +0 -0
- /package/locales/en/.agents/{tailwind_beast_practices β skills/tailwind_beast_practices}/agents/qwen.json +0 -0
- /package/locales/en/.agents/{tailwind_beast_practices β skills/tailwind_beast_practices}/agents/skill.yaml +0 -0
- /package/locales/en/.agents/{tanstack_beast_practices β skills/tanstack_beast_practices}/agents/claude.json +0 -0
- /package/locales/en/.agents/{tanstack_beast_practices β skills/tanstack_beast_practices}/agents/copilot.json +0 -0
- /package/locales/en/.agents/{tanstack_beast_practices β skills/tanstack_beast_practices}/agents/gemini.json +0 -0
- /package/locales/en/.agents/{tanstack_beast_practices β skills/tanstack_beast_practices}/agents/openai.yaml +0 -0
- /package/locales/en/.agents/{tanstack_beast_practices β skills/tanstack_beast_practices}/agents/qwen.json +0 -0
- /package/locales/en/.agents/{tanstack_beast_practices β skills/tanstack_beast_practices}/agents/skill.yaml +0 -0
- /package/locales/en/.agents/{tdd_workflow β skills/tdd_workflow}/agents/claude.json +0 -0
- /package/locales/en/.agents/{tdd_workflow β skills/tdd_workflow}/agents/copilot.json +0 -0
- /package/locales/en/.agents/{tdd_workflow β skills/tdd_workflow}/agents/gemini.json +0 -0
- /package/locales/en/.agents/{tdd_workflow β skills/tdd_workflow}/agents/openai.yaml +0 -0
- /package/locales/en/.agents/{tdd_workflow β skills/tdd_workflow}/agents/qwen.json +0 -0
- /package/locales/en/.agents/{tdd_workflow β skills/tdd_workflow}/agents/skill.yaml +0 -0
- /package/locales/en/.agents/{tooling_bun_biome β skills/tooling_bun_biome}/agents/claude.json +0 -0
- /package/locales/en/.agents/{tooling_bun_biome β skills/tooling_bun_biome}/agents/copilot.json +0 -0
- /package/locales/en/.agents/{tooling_bun_biome β skills/tooling_bun_biome}/agents/gemini.json +0 -0
- /package/locales/en/.agents/{tooling_bun_biome β skills/tooling_bun_biome}/agents/openai.yaml +0 -0
- /package/locales/en/.agents/{tooling_bun_biome β skills/tooling_bun_biome}/agents/qwen.json +0 -0
- /package/locales/en/.agents/{tooling_bun_biome β skills/tooling_bun_biome}/agents/skill.yaml +0 -0
- /package/locales/en/.agents/{typescript_beast_practices β skills/typescript_beast_practices}/agents/claude.json +0 -0
- /package/locales/en/.agents/{typescript_beast_practices β skills/typescript_beast_practices}/agents/copilot.json +0 -0
- /package/locales/en/.agents/{typescript_beast_practices β skills/typescript_beast_practices}/agents/gemini.json +0 -0
- /package/locales/en/.agents/{typescript_beast_practices β skills/typescript_beast_practices}/agents/openai.yaml +0 -0
- /package/locales/en/.agents/{typescript_beast_practices β skills/typescript_beast_practices}/agents/qwen.json +0 -0
- /package/locales/en/.agents/{typescript_beast_practices β skills/typescript_beast_practices}/agents/skill.yaml +0 -0
|
@@ -0,0 +1,279 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: tests_quality_review
|
|
3
|
+
description: Π Π΅Π²ΡΡ ΠΊΠ°ΡΠ΅ΡΡΠ²Π° unit/integration ΡΠ΅ΡΡΠΎΠ² β ΠΏΠΎΠΊΡΡΡΠΈΠ΅ ΡΡΠ΅Π½Π°ΡΠΈΠ΅Π², Π³ΡΠ°Π½ΠΈΡΡ, ΡΡΡΠΎΠΉΡΠΈΠ²ΠΎΡΡΡ, ΠΎΡΡΡΡΡΡΠ²ΠΈΠ΅ ΡΠ»Π΅ΠΉΠΊΠΎΠ² ΠΈ ΡΠ΅ΡΡΠΎΠ²ΠΎΠΉ "ΠΌΠ°Π³ΠΈΠΈ". Π§Π΅ΠΊΠ»ΠΈΡΡ Ρ ΠΏΡΠΈΠΎΡΠΈΡΠ΅ΡΠ°ΠΌΠΈ, ΠΏΡΠΈΠΌΠ΅ΡΡ Ρ
ΠΎΡΠΎΡΠ΅Π³ΠΎ/ΠΏΠ»ΠΎΡ
ΠΎΠ³ΠΎ ΡΠ΅ΡΡΠ°, ΡΠ°Π±Π»ΠΎΠ½ Π²ΡΡ
ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΎΡΡΡΡΠ°. ΠΠΊΡΠΈΠ²ΠΈΡΡΠΉ ΠΏΡΠΈ ΡΠ΅Π²ΡΡ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΡ
ΡΠ΅ΡΡΠΎΠ², ΠΏΡΠΈ ΡΡΠ°Π±ΠΈΠ»ΠΈΠ·Π°ΡΠΈΠΈ flaky ΡΠ΅ΡΡΠΎΠ², ΠΈΠ»ΠΈ ΠΏΡΠΈ Π°ΡΠ΄ΠΈΡΠ΅ test suite quality.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Skill: Tests Quality Review
|
|
7
|
+
|
|
8
|
+
Π‘ΡΡΡΠΊΡΡΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ΅ ΡΠ΅Π²ΡΡ ΠΊΠ°ΡΠ΅ΡΡΠ²Π° ΡΠ΅ΡΡΠΎΠ²: ΡΠ΅ΠΊΠ»ΠΈΡΡ, ΠΏΡΠΈΠΎΡΠΈΡΠ΅ΡΡ, ΠΏΡΠΈΠΌΠ΅ΡΡ ΠΏΠ»ΠΎΡ
ΠΎΠ³ΠΎ β Ρ
ΠΎΡΠΎΡΠ΅Π³ΠΎ, ΡΠ°Π±Π»ΠΎΠ½ ΠΎΡΡΡΡΠ°.
|
|
9
|
+
|
|
10
|
+
**Π Π°Π·Π΄Π΅Π»Ρ:**
|
|
11
|
+
1. [ΠΠΎΠ³Π΄Π° Π°ΠΊΡΠΈΠ²ΠΈΡΠΎΠ²Π°ΡΡ](#1-ΠΊΠΎΠ³Π΄Π°-Π°ΠΊΡΠΈΠ²ΠΈΡΠΎΠ²Π°ΡΡ)
|
|
12
|
+
2. [Π§Π΅ΠΊΠ»ΠΈΡΡ ΡΠ΅Π²ΡΡ](#2-ΡΠ΅ΠΊΠ»ΠΈΡΡ-ΡΠ΅Π²ΡΡ)
|
|
13
|
+
3. [ΠΡΠΈΠΌΠ΅ΡΡ: ΠΏΠ»ΠΎΡ
ΠΎ β Ρ
ΠΎΡΠΎΡΠΎ](#3-ΠΏΡΠΈΠΌΠ΅ΡΡ-ΠΏΠ»ΠΎΡ
ΠΎ--Ρ
ΠΎΡΠΎΡΠΎ)
|
|
14
|
+
4. [Flaky-ΡΠ΅ΡΡΡ: Π΄ΠΈΠ°Π³Π½ΠΎΡΡΠΈΠΊΠ°](#4-flaky-ΡΠ΅ΡΡΡ-Π΄ΠΈΠ°Π³Π½ΠΎΡΡΠΈΠΊΠ°)
|
|
15
|
+
5. [Π¨Π°Π±Π»ΠΎΠ½ Π²ΡΡ
ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΎΡΡΡΡΠ°](#5-ΡΠ°Π±Π»ΠΎΠ½-Π²ΡΡ
ΠΎΠ΄Π½ΠΎΠ³ΠΎ-ΠΎΡΡΡΡΠ°)
|
|
16
|
+
|
|
17
|
+
---
|
|
18
|
+
|
|
19
|
+
## 1. ΠΠΎΠ³Π΄Π° Π°ΠΊΡΠΈΠ²ΠΈΡΠΎΠ²Π°ΡΡ
|
|
20
|
+
|
|
21
|
+
- REV gate β ΡΠ΅Π²ΡΡ ΡΠ΅ΡΡΠΎΠ² ΠΊΠ°ΠΊ ΡΠ°ΡΡΡ code review
|
|
22
|
+
- ΠΠΎΡΠ»Π΅ TDD-ΠΈΡΠ΅ΡΠ°ΡΠΈΠΈ β ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ ΠΊΠ°ΡΠ΅ΡΡΠ²ΠΎ Π½Π°ΠΏΠΈΡΠ°Π½Π½ΡΡ
ΡΠ΅ΡΡΠΎΠ²
|
|
23
|
+
- ΠΡΠΈ ΡΡΠ°Π±ΠΈΠ»ΠΈΠ·Π°ΡΠΈΠΈ flaky-CI β Π½Π°ΠΉΡΠΈ ΠΈ ΠΏΠΎΡΠΈΠ½ΠΈΡΡ Ρ
ΡΡΠΏΠΊΠΈΠ΅ ΡΠ΅ΡΡΡ
|
|
24
|
+
- ΠΡΠΈ Π°ΡΠ΄ΠΈΡΠ΅ coverage β Π½Π΅ Π³Π½Π°ΡΡΡΡ Π·Π° %, Π° ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ *ΡΡΠΎ* ΠΏΠΎΠΊΡΡΡΠΎ
|
|
25
|
+
|
|
26
|
+
---
|
|
27
|
+
|
|
28
|
+
## 2. Π§Π΅ΠΊΠ»ΠΈΡΡ ΡΠ΅Π²ΡΡ
|
|
29
|
+
|
|
30
|
+
### A. ΠΠΎΠΊΡΡΡΠΈΠ΅ ΡΡΠ΅Π½Π°ΡΠΈΠ΅Π² (P0)
|
|
31
|
+
|
|
32
|
+
| # | ΠΡΠΎΠ²Π΅ΡΠΊΠ° | ΠΠ΅ΡΠ΄ΠΈΠΊΡ |
|
|
33
|
+
|---|---------|---------|
|
|
34
|
+
| A1 | Π’Π΅ΡΡΡ ΠΏΡΠΎΠ²Π΅ΡΡΡΡ **ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅**, Π½Π΅ Π΄Π΅ΡΠ°Π»ΠΈ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ | β
/β |
|
|
35
|
+
| A2 | ΠΡΡΡ **happy path** Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΏΡΠ±Π»ΠΈΡΠ½ΠΎΠ³ΠΎ ΠΌΠ΅ΡΠΎΠ΄Π°/ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ° | β
/β |
|
|
36
|
+
| A3 | ΠΡΡΡ **error paths** (Π½Π΅Π²Π°Π»ΠΈΠ΄Π½ΡΠΉ Π²Π²ΠΎΠ΄, ΡΠ΅ΡΠ΅Π²Π°Ρ ΠΎΡΠΈΠ±ΠΊΠ°, ΠΏΡΡΡΡΠ΅ Π΄Π°Π½Π½ΡΠ΅) | β
/β |
|
|
37
|
+
| A4 | ΠΡΡΡ **edge cases** / boundaries (0, null, undefined, ΠΏΡΡΡΠ°Ρ ΡΡΡΠΎΠΊΠ°, max) | β
/β |
|
|
38
|
+
| A5 | Async-Π»ΠΎΠ³ΠΈΠΊΠ° ΠΏΡΠΎΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½Π° (ΡΠ°ΠΉΠΌΠ°ΡΡΡ, reject, race conditions) | β
/β |
|
|
39
|
+
|
|
40
|
+
### B. Π£ΡΡΠΎΠΉΡΠΈΠ²ΠΎΡΡΡ (P0)
|
|
41
|
+
|
|
42
|
+
| # | ΠΡΠΎΠ²Π΅ΡΠΊΠ° | ΠΠ΅ΡΠ΄ΠΈΠΊΡ |
|
|
43
|
+
|---|---------|---------|
|
|
44
|
+
| B1 | Π’Π΅ΡΡΡ **Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΡ** (Π½Π΅Ρ ΡΠΊΡΡΡΠΎΠ³ΠΎ ΠΏΠΎΡΡΠ΄ΠΊΠ° Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ) | β
/β |
|
|
45
|
+
| B2 | ΠΠ΅Ρ **shared mutable state** ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ΅ΡΡΠ°ΠΌΠΈ | β
/β |
|
|
46
|
+
| B3 | ΠΠ°ΠΆΠ΄ΡΠΉ `beforeEach` / `afterEach` ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ ΡΠΈΡΡΠΈΡ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ | β
/β |
|
|
47
|
+
| B4 | ΠΠ΅Ρ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ **ΡΠ΅Π°Π»ΡΠ½ΠΎΠ³ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ** (Date.now, setTimeout) | β
/β |
|
|
48
|
+
| B5 | ΠΠ΅Ρ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ **ΡΠ΅ΡΠΈ / ΡΠ°ΠΉΠ»ΠΎΠ²ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ** (Π²ΡΡ Π·Π°ΠΌΠΎΠΊΠ°Π½ΠΎ) | β
/β |
|
|
49
|
+
|
|
50
|
+
### C. ΠΠ°ΡΠ΅ΡΡΠ²ΠΎ ΠΊΠΎΠ΄Π° ΡΠ΅ΡΡΠΎΠ² (P1)
|
|
51
|
+
|
|
52
|
+
| # | ΠΡΠΎΠ²Π΅ΡΠΊΠ° | ΠΠ΅ΡΠ΄ΠΈΠΊΡ |
|
|
53
|
+
|---|---------|---------|
|
|
54
|
+
| C1 | ΠΠ°Π·Π²Π°Π½ΠΈΡ ΡΠ΅ΡΡΠΎΠ² ΡΠΈΡΠ°Π΅ΠΌΡΠ΅: `should [verb] when [condition]` | β
/β |
|
|
55
|
+
| C2 | AAA-ΠΏΠ°ΡΡΠ΅ΡΠ½ (Arrange β Act β Assert) ΡΠ²Π½ΠΎ ΠΏΡΠΎΡΠ»Π΅ΠΆΠΈΠ²Π°Π΅ΡΡΡ | β
/β |
|
|
56
|
+
| C3 | ΠΠ΅Ρ **magic numbers/strings** Π±Π΅Π· ΠΏΠΎΡΡΠ½Π΅Π½ΠΈΠΉ | β
/β |
|
|
57
|
+
| C4 | ΠΠ΅Ρ **Π΄ΡΠ±Π»ΠΈΡΠΎΠ²Π°Π½ΠΈΡ** (ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ ΡΠ°Π±ΡΠΈΠΊΠΈ, Ρ
Π΅Π»ΠΏΠ΅ΡΡ, shared fixtures) | β
/β |
|
|
58
|
+
| C5 | Assertions **ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΠ΅** (Π½Π΅ `toBeTruthy()`, Π° `toBe(true)` / `toEqual(...)`) | β
/β |
|
|
59
|
+
|
|
60
|
+
### D. ΠΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΠΎΠ½Π½ΡΠ΅ ΡΠ΅ΡΡΡ (P1)
|
|
61
|
+
|
|
62
|
+
| # | ΠΡΠΎΠ²Π΅ΡΠΊΠ° | ΠΠ΅ΡΠ΄ΠΈΠΊΡ |
|
|
63
|
+
|---|---------|---------|
|
|
64
|
+
| D1 | **Π Π΅Π°Π»ΡΠ½ΠΎ** ΠΏΡΠΎΠ²Π΅ΡΡΡΡ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΡ (API/DB/ΠΊΠΎΠ½ΡΡΠ°ΠΊΡΡ) | β
/β |
|
|
65
|
+
| D2 | ΠΠ΅ Β«ΠΏΠ΅ΡΠ΅-ΠΌΠΎΠΊΠ°Π½ΡΒ» (ΠΌΠΎΠΊΠΈ ΡΠΎΠ»ΡΠΊΠΎ Π½Π° Π²Π½Π΅ΡΠ½ΠΈΡ
Π³ΡΠ°Π½ΠΈΡΠ°Ρ
) | β
/β |
|
|
66
|
+
| D3 | ΠΠΎΠ½ΡΡΠ°ΠΊΡΠ½ΡΠ΅ ΡΠ΅ΡΡΡ ΠΏΡΠΎΠ²Π΅ΡΡΡΡ **ΡΠΎΡΠΌΡ ΠΎΡΠ²Π΅ΡΠ°**, Π½Π΅ Π±ΠΈΠ·Π½Π΅Ρ-Π»ΠΎΠ³ΠΈΠΊΡ | β
/β |
|
|
67
|
+
| D4 | ΠΠ°Π½Π½ΡΠ΅ ΡΠ΅ΡΡΠΎΠ² **ΠΈΠ·ΠΎΠ»ΠΈΡΠΎΠ²Π°Π½Ρ** (Π½Π΅Ρ ΠΌΡΡΠΎΡΠ° ΠΎΡ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠΈΡ
ΠΏΡΠΎΠ³ΠΎΠ½ΠΎΠ²) | β
/β |
|
|
68
|
+
|
|
69
|
+
### E. Snapshot-ΡΠ΅ΡΡΡ (P2)
|
|
70
|
+
|
|
71
|
+
| # | ΠΡΠΎΠ²Π΅ΡΠΊΠ° | ΠΠ΅ΡΠ΄ΠΈΠΊΡ |
|
|
72
|
+
|---|---------|---------|
|
|
73
|
+
| E1 | Snapshot ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ **ΠΎΡΠΎΠ·Π½Π°Π½Π½ΠΎ** (Π΄Π»Ρ ΡΡΠ°Π±ΠΈΠ»ΡΠ½ΠΎΠ³ΠΎ output) | β
/β |
|
|
74
|
+
| E2 | Snapshot **ΠΊΠΎΠΌΠΏΠ°ΠΊΡΠ½ΡΠΉ** (Π½Π΅ 500 ΡΡΡΠΎΠΊ) β inline preferred | β
/β |
|
|
75
|
+
| E3 | ΠΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ snapshot Π½Π΅ Β«Π°Π²ΡΠΎ-acceptΒ» (diff ΡΠ΅Π²ΡΡΠΈΡΡΡ) | β
/β |
|
|
76
|
+
|
|
77
|
+
---
|
|
78
|
+
|
|
79
|
+
## 3. ΠΡΠΈΠΌΠ΅ΡΡ: ΠΏΠ»ΠΎΡ
ΠΎ β Ρ
ΠΎΡΠΎΡΠΎ
|
|
80
|
+
|
|
81
|
+
### A1. ΠΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ vs ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ
|
|
82
|
+
|
|
83
|
+
```js
|
|
84
|
+
// β Π’Π΅ΡΡΠΈΡΡΠ΅Ρ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ: ΠΏΡΠΎΠ²Π΅ΡΡΠ΅Ρ ΡΡΠΎ Π²ΡΠ·Π²Π°Π½ Π²Π½ΡΡΡΠ΅Π½Π½ΠΈΠΉ ΠΌΠ΅ΡΠΎΠ΄
|
|
85
|
+
it('should call _processInternal', () => {
|
|
86
|
+
const spy = vi.spyOn(service, '_processInternal');
|
|
87
|
+
service.process(data);
|
|
88
|
+
expect(spy).toHaveBeenCalled();
|
|
89
|
+
});
|
|
90
|
+
|
|
91
|
+
// β
Π’Π΅ΡΡΠΈΡΡΠ΅Ρ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅: ΠΏΡΠΎΠ²Π΅ΡΡΠ΅Ρ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ
|
|
92
|
+
it('should return processed data with status "done"', () => {
|
|
93
|
+
const result = service.process({ items: [1, 2, 3] });
|
|
94
|
+
expect(result.status).toBe('done');
|
|
95
|
+
expect(result.processedCount).toBe(3);
|
|
96
|
+
});
|
|
97
|
+
```
|
|
98
|
+
|
|
99
|
+
### B1. ΠΠ΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΡ ΡΠ΅ΡΡΠΎΠ²
|
|
100
|
+
|
|
101
|
+
```js
|
|
102
|
+
// β Π’Π΅ΡΡ Π·Π°Π²ΠΈΡΠΈΡ ΠΎΡ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅Π³ΠΎ β Π΅ΡΠ»ΠΈ ΠΏΠ΅ΡΠ²ΡΠΉ ΡΠΏΠ°Π΄ΡΡ, Π²ΡΠΎΡΠΎΠΉ ΡΠΎΠΆΠ΅
|
|
103
|
+
let createdId;
|
|
104
|
+
it('should create', () => { createdId = create(); });
|
|
105
|
+
it('should read', () => { read(createdId); }); // Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΡ!
|
|
106
|
+
|
|
107
|
+
// β
ΠΠ°ΠΆΠ΄ΡΠΉ ΡΠ΅ΡΡ ΡΠ°ΠΌΠΎΠ΄ΠΎΡΡΠ°ΡΠΎΡΠ΅Π½
|
|
108
|
+
it('should read created item', () => {
|
|
109
|
+
const id = create({ name: 'test' });
|
|
110
|
+
const item = read(id);
|
|
111
|
+
expect(item.name).toBe('test');
|
|
112
|
+
});
|
|
113
|
+
```
|
|
114
|
+
|
|
115
|
+
### B4. ΠΠ°Π²ΠΈΡΠΈΠΌΠΎΡΡΡ ΠΎΡ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ
|
|
116
|
+
|
|
117
|
+
```js
|
|
118
|
+
// β Flaky β Π·Π°Π²ΠΈΡΠΈΡ ΠΎΡ ΡΠΊΠΎΡΠΎΡΡΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ
|
|
119
|
+
it('should be within 1 second', () => {
|
|
120
|
+
const start = Date.now();
|
|
121
|
+
doWork();
|
|
122
|
+
expect(Date.now() - start).toBeLessThan(1000);
|
|
123
|
+
});
|
|
124
|
+
|
|
125
|
+
// β
ΠΠΎΠΊΠ°Π΅ΠΌ Π²ΡΠ΅ΠΌΡ
|
|
126
|
+
it('should expire after timeout', () => {
|
|
127
|
+
vi.useFakeTimers();
|
|
128
|
+
const onExpire = vi.fn();
|
|
129
|
+
|
|
130
|
+
startTimer(onExpire, 5000);
|
|
131
|
+
vi.advanceTimersByTime(5000);
|
|
132
|
+
|
|
133
|
+
expect(onExpire).toHaveBeenCalledOnce();
|
|
134
|
+
vi.useRealTimers();
|
|
135
|
+
});
|
|
136
|
+
```
|
|
137
|
+
|
|
138
|
+
### C3. ΠΠ°Π³ΠΈΡΠ΅ΡΠΊΠΈΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ
|
|
139
|
+
|
|
140
|
+
```js
|
|
141
|
+
// β Π§ΡΠΎ Π·Π° 42?
|
|
142
|
+
expect(calc(x)).toBe(42);
|
|
143
|
+
|
|
144
|
+
// β
ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΎΠ±ΡΡΡΠ½Π΅Π½ΠΎ
|
|
145
|
+
const BASE = 100;
|
|
146
|
+
const TAX_RATE = 0.12;
|
|
147
|
+
const DISCOUNT = 50;
|
|
148
|
+
const EXPECTED = (BASE - DISCOUNT) * (1 + TAX_RATE); // 56
|
|
149
|
+
expect(calcTotal(BASE, TAX_RATE, DISCOUNT)).toBe(EXPECTED);
|
|
150
|
+
```
|
|
151
|
+
|
|
152
|
+
### C5. ΠΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΠ΅ assertions
|
|
153
|
+
|
|
154
|
+
```js
|
|
155
|
+
// β toBeTruthy β undefined, 0, "" ΡΠΎΠΆΠ΅ falsy β Π»ΠΎΠΆΠ½ΠΎ-ΠΏΠΎΠ·ΠΈΡΠΈΠ²Π½ΡΠΉ ΡΠ΅ΡΡ
|
|
156
|
+
expect(result).toBeTruthy();
|
|
157
|
+
expect(array.length).toBeTruthy(); // 0 β falsy, ΡΠ΅ΡΡ ΡΠΏΠ°Π΄ΡΡ
|
|
158
|
+
|
|
159
|
+
// β
ΠΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΠΉ assertion
|
|
160
|
+
expect(result).toBe(true);
|
|
161
|
+
expect(array).toHaveLength(3);
|
|
162
|
+
expect(obj).toMatchObject({ name: 'test', active: true });
|
|
163
|
+
```
|
|
164
|
+
|
|
165
|
+
### D2. ΠΠ΅ΡΠ΅-ΠΌΠΎΠΊΠ°Π½ΡΠ΅ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΠΎΠ½Π½ΡΠ΅ ΡΠ΅ΡΡΡ
|
|
166
|
+
|
|
167
|
+
```js
|
|
168
|
+
// β ΠΠ°ΠΌΠΎΠΊΠ°Π½ΠΎ Π²ΡΡ β ΡΡΠΎ ΡΠΆΠ΅ Π½Π΅ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΠΎΠ½Π½ΡΠΉ ΡΠ΅ΡΡ
|
|
169
|
+
vi.mock('../db.js');
|
|
170
|
+
vi.mock('../validator.js');
|
|
171
|
+
vi.mock('../queue.js');
|
|
172
|
+
|
|
173
|
+
it('should process order', async () => {
|
|
174
|
+
db.save.mockResolvedValue({ id: 1 });
|
|
175
|
+
validator.check.mockReturnValue(true);
|
|
176
|
+
queue.push.mockResolvedValue(undefined);
|
|
177
|
+
|
|
178
|
+
await processOrder({ item: 'X' });
|
|
179
|
+
expect(db.save).toHaveBeenCalled(); // ΠΏΡΠΎΠ²Π΅ΡΡΠ΅ΠΌ ΠΌΠΎΠΊ, Π½Π΅ Π»ΠΎΠ³ΠΈΠΊΡ
|
|
180
|
+
});
|
|
181
|
+
|
|
182
|
+
// β
ΠΠΎΠΊΠ°Π΅ΠΌ ΡΠΎΠ»ΡΠΊΠΎ Π²Π½Π΅ΡΠ½ΡΡ Π³ΡΠ°Π½ΠΈΡΡ (HTTP), ΠΎΡΡΠ°Π»ΡΠ½ΠΎΠ΅ β ΡΠ΅Π°Π»ΡΠ½ΠΎΠ΅
|
|
183
|
+
vi.mock('../services/payment-gateway.js'); // Π΅Π΄ΠΈΠ½ΡΡΠ²Π΅Π½Π½ΡΠΉ ΠΌΠΎΠΊ
|
|
184
|
+
|
|
185
|
+
it('should process order and save to DB', async () => {
|
|
186
|
+
paymentGateway.charge.mockResolvedValue({ txnId: 'TX123' });
|
|
187
|
+
|
|
188
|
+
const result = await processOrder({ item: 'X', amount: 100 });
|
|
189
|
+
|
|
190
|
+
expect(result.status).toBe('completed');
|
|
191
|
+
const stored = await db.orders.findById(result.id);
|
|
192
|
+
expect(stored.paymentTxnId).toBe('TX123');
|
|
193
|
+
});
|
|
194
|
+
```
|
|
195
|
+
|
|
196
|
+
---
|
|
197
|
+
|
|
198
|
+
## 4. Flaky-ΡΠ΅ΡΡΡ: Π΄ΠΈΠ°Π³Π½ΠΎΡΡΠΈΠΊΠ°
|
|
199
|
+
|
|
200
|
+
### Π§Π°ΡΡΡΠ΅ ΠΏΡΠΈΡΠΈΠ½Ρ
|
|
201
|
+
|
|
202
|
+
| ΠΡΠΈΡΠΈΠ½Π° | Π‘ΠΈΠΌΠΏΡΠΎΠΌ | ΠΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ |
|
|
203
|
+
|---------|--------|-------------|
|
|
204
|
+
| **ΠΠ°Π²ΠΈΡΠΈΠΌΠΎΡΡΡ ΠΎΡ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ** | ΠΡΠΎΡ
ΠΎΠ΄ΠΈΡ/ΠΏΠ°Π΄Π°Π΅Ρ ΡΠ°Π½Π΄ΠΎΠΌΠ½ΠΎ | `vi.useFakeTimers()` |
|
|
205
|
+
| **Shared state** | ΠΠ°Π΄Π°Π΅Ρ ΠΏΡΠΈ `--shuffle` ΠΈΠ»ΠΈ ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΡΠ½ΠΎΠΌ Π·Π°ΠΏΡΡΠΊΠ΅ | ΠΠ·ΠΎΠ»ΠΈΡΠΎΠ²Π°ΡΡ state Π² `beforeEach` |
|
|
206
|
+
| **ΠΠ½Π΅ΡΠ½ΠΈΠ΅ ΡΠ΅ΡΠ²ΠΈΡΡ** | ΠΠ°Π΄Π°Π΅Ρ ΠΏΡΠΈ ΠΌΠ΅Π΄Π»Π΅Π½Π½ΠΎΠΉ ΡΠ΅ΡΠΈ / Π·Π°ΠΏΡΡΠΊΠ΅ offline | ΠΠΎΠΊΠ°ΡΡ Π²ΡΠ΅ HTTP |
|
|
207
|
+
| **Race conditions** | ΠΠ΅ΡΠΈΠΎΠ΄ΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΡΠ°ΠΉΠΌΠ°ΡΡΡ | `await` / `waitFor` Π²ΠΌΠ΅ΡΡΠΎ `sleep` |
|
|
208
|
+
| **Π Π°Π½Π΄ΠΎΠΌΠ½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅** | `Math.random()` Π² ΡΠ΅ΡΡΠ°Ρ
Π΄Π°ΡΡ ΡΠ°Π·Π½ΡΠ΅ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ | Seed ΠΈΠ»ΠΈ ΠΌΠΎΠΊΠ°ΡΡ random |
|
|
209
|
+
| **ΠΠ°Π²ΠΈΡΠΈΠΌΠΎΡΡΡ ΠΎΡ ΠΏΠΎΡΡΠ΄ΠΊΠ°** | ΠΡΠΎΡ
ΠΎΠ΄ΠΈΡ solo, ΠΏΠ°Π΄Π°Π΅Ρ Π² suite | Π£Π±ΡΠ°ΡΡ shared state |
|
|
210
|
+
| **Π£ΡΠ΅ΡΠΊΠΈ ΡΠ°ΠΉΠΌΠ΅ΡΠΎΠ²** | `setTimeout` Π½Π΅ ΠΎΡΠΈΡΠ΅Π½, Π²Π»ΠΈΡΠ΅Ρ Π½Π° ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΡΠ΅ΡΡ | `afterEach(() => vi.clearAllTimers())` |
|
|
211
|
+
|
|
212
|
+
### ΠΡΠΎΠ²Π΅ΡΠΊΠ° Π½Π° flaky
|
|
213
|
+
|
|
214
|
+
```bash
|
|
215
|
+
# ΠΠ°ΠΏΡΡΡΠΈΡΡ ΡΠ΅ΡΡ 10 ΡΠ°Π· β Π΅ΡΠ»ΠΈ Ρ
ΠΎΡΡ Π±Ρ 1 ΠΏΠ°Π΄Π΅Π½ΠΈΠ΅ β flaky
|
|
216
|
+
for i in $(seq 1 10); do npx vitest run --reporter=dot; done
|
|
217
|
+
|
|
218
|
+
# ΠΠ»ΠΈ ΡΠ΅ΡΠ΅Π· Vitest repeat
|
|
219
|
+
npx vitest run --repeat=10
|
|
220
|
+
```
|
|
221
|
+
|
|
222
|
+
---
|
|
223
|
+
|
|
224
|
+
## 5. Π¨Π°Π±Π»ΠΎΠ½ Π²ΡΡ
ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΎΡΡΡΡΠ°
|
|
225
|
+
|
|
226
|
+
```markdown
|
|
227
|
+
# Tests Quality Review Report
|
|
228
|
+
|
|
229
|
+
## Summary
|
|
230
|
+
- **Module/Feature:** [Π½Π°Π·Π²Π°Π½ΠΈΠ΅]
|
|
231
|
+
- **Total tests:** [N]
|
|
232
|
+
- **Coverage:** [X]% statements, [Y]% branches
|
|
233
|
+
- **Verdict:** PASS β
/ PASS with findings β οΈ / FAIL β
|
|
234
|
+
|
|
235
|
+
## Findings
|
|
236
|
+
|
|
237
|
+
### P0 β ΠΠ»ΠΎΠΊΠ΅ΡΡ
|
|
238
|
+
| # | ΠΡΠ½ΠΊΡ ΡΠ΅ΠΊΠ»ΠΈΡΡΠ° | ΠΡΠΎΠ±Π»Π΅ΠΌΠ° | Π Π΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°ΡΠΈΡ |
|
|
239
|
+
|---|----------------|---------|-------------|
|
|
240
|
+
| 1 | A3 (error paths) | ΠΠ΅Ρ ΡΠ΅ΡΡΠΎΠ² Π½Π° ΡΠ΅ΡΠ΅Π²ΡΠ΅ ΠΎΡΠΈΠ±ΠΊΠΈ Π² fetchItems | ΠΠΎΠ±Π°Π²ΠΈΡΡ ΡΠ΅ΡΡ Ρ reject mock |
|
|
241
|
+
|
|
242
|
+
### P1 β ΠΠ°ΠΆΠ½ΡΠ΅
|
|
243
|
+
| # | ΠΡΠ½ΠΊΡ ΡΠ΅ΠΊΠ»ΠΈΡΡΠ° | ΠΡΠΎΠ±Π»Π΅ΠΌΠ° | Π Π΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°ΡΠΈΡ |
|
|
244
|
+
|---|----------------|---------|-------------|
|
|
245
|
+
| 1 | C3 (magic) | `expect(result).toBe(42)` Π±Π΅Π· ΠΏΠΎΡΡΠ½Π΅Π½ΠΈΠΉ | ΠΡΠ½Π΅ΡΡΠΈ Π² const Ρ ΠΈΠΌΠ΅Π½Π΅ΠΌ |
|
|
246
|
+
|
|
247
|
+
### P2 β Π£Π»ΡΡΡΠ΅Π½ΠΈΡ
|
|
248
|
+
| # | ΠΡΠ½ΠΊΡ ΡΠ΅ΠΊΠ»ΠΈΡΡΠ° | ΠΡΠΎΠ±Π»Π΅ΠΌΠ° | Π Π΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°ΡΠΈΡ |
|
|
249
|
+
|---|----------------|---------|-------------|
|
|
250
|
+
| 1 | E2 (snapshot size) | Snapshot Π½Π° 200 ΡΡΡΠΎΠΊ Π² ProductForm.test | ΠΠ΅ΡΠ΅ΠΉΡΠΈ Π½Π° inline snapshot ΠΈΠ»ΠΈ RTL assertion |
|
|
251
|
+
|
|
252
|
+
## Missing Test Cases
|
|
253
|
+
- [ ] `fetchItems` β error path (network failure)
|
|
254
|
+
- [ ] `updateRecord` β edge case (empty name)
|
|
255
|
+
- [ ] `CountdownTimer` β boundary (0 seconds remaining)
|
|
256
|
+
|
|
257
|
+
## Fragile Tests
|
|
258
|
+
| Π’Π΅ΡΡ | ΠΡΠΈΡΠΈΠ½Π° Ρ
ΡΡΠΏΠΊΠΎΡΡΠΈ | Π Π΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°ΡΠΈΡ |
|
|
259
|
+
|------|-------------------|-------------|
|
|
260
|
+
| `pricing.test.js:42` | ΠΠ°Π²ΠΈΡΠΈΠΌΠΎΡΡΡ ΠΎΡ Date.now | vi.useFakeTimers |
|
|
261
|
+
```
|
|
262
|
+
|
|
263
|
+
---
|
|
264
|
+
|
|
265
|
+
## ΠΡΠΈΡΠ΅ΡΠΈΠΈ Π²Π΅ΡΠ΄ΠΈΠΊΡΠ°
|
|
266
|
+
|
|
267
|
+
| ΠΠ΅ΡΠ΄ΠΈΠΊΡ | Π£ΡΠ»ΠΎΠ²ΠΈΡ |
|
|
268
|
+
|---------|---------|
|
|
269
|
+
| **PASS β
** | ΠΡΠ΅ P0 β
, P1 β€ 2 findings, Π½Π΅Ρ flaky |
|
|
270
|
+
| **PASS with findings β οΈ** | ΠΡΠ΅ P0 β
, Π½ΠΎ Π΅ΡΡΡ P1 findings ΠΈΠ»ΠΈ missing cases |
|
|
271
|
+
| **FAIL β** | ΠΡΠ±ΠΎΠΉ P0 β (Π½Π΅Ρ error paths, ΡΠ΅ΡΡΡ Π·Π°Π²ΠΈΡΠΈΠΌΡ, flaky) |
|
|
272
|
+
|
|
273
|
+
---
|
|
274
|
+
|
|
275
|
+
## Π‘ΠΌ. ΡΠ°ΠΊΠΆΠ΅
|
|
276
|
+
- `$testing_strategy_js` β ΡΡΡΠ°ΡΠ΅Π³ΠΈΡ ΠΈ ΠΏΠ°ΡΡΠ΅ΡΠ½Ρ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΡ ΡΠ΅ΡΡΠΎΠ²
|
|
277
|
+
- `$code_review_checklist` β ΠΎΠ±ΡΠΈΠΉ ΡΠ΅ΠΊΠ»ΠΈΡΡ code review
|
|
278
|
+
- `$qa_e2e_playwright` β E2E ΡΠ΅ΡΠ΅Π· Playwright
|
|
279
|
+
- `$dev_reference_snippets` β ΠΏΡΠΈΠΌΠ΅ΡΡ ΠΊΠΎΠ΄Π°
|
|
@@ -0,0 +1,210 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: threat_model_baseline
|
|
3
|
+
description: ΠΠ°Π·ΠΎΠ²Π°Ρ ΠΌΠΎΠ΄Π΅Π»Ρ ΡΠ³ΡΠΎΠ· (threat baseline) Π΄Π»Ρ MVP β Π°ΠΊΡΠΈΠ²Ρ, Π²Π΅ΠΊΡΠΎΡΡ Π°ΡΠ°ΠΊ, ΠΌΠ΅ΡΡ. Π£ΡΠΈΡΡΠ²Π°Π΅Ρ OWASP-ΡΠΈΡΠΊΠΈ ΠΈ ΡΠΎΠ»ΠΈ/ΠΏΡΠ°Π²Π°.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Skill: Threat Model Baseline
|
|
7
|
+
|
|
8
|
+
ΠΡΡΡΠΎΠΈΡΡ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΡ Π² Π΄ΠΈΠ·Π°ΠΉΠ½ Π΄ΠΎ ΠΊΠΎΠ΄Π°.
|
|
9
|
+
|
|
10
|
+
**Π Π°Π·Π΄Π΅Π»Ρ:**
|
|
11
|
+
1. [ΠΡΠΈΠ½ΡΠΈΠΏΡ](#1-ΠΏΡΠΈΠ½ΡΠΈΠΏΡ)
|
|
12
|
+
2. [Assets](#2-assets)
|
|
13
|
+
3. [Attack Surfaces](#3-attack-surfaces)
|
|
14
|
+
4. [Threat Table](#4-threat-table)
|
|
15
|
+
5. [Risk Matrix](#5-risk-matrix)
|
|
16
|
+
6. [OWASP Top 10 Checklist](#6-owasp)
|
|
17
|
+
7. [Security Requirements](#7-requirements)
|
|
18
|
+
8. [ΠΡΠΈΠΌΠ΅Ρ](#8-ΠΏΡΠΈΠΌΠ΅Ρ)
|
|
19
|
+
9. [Output Template](#9-output)
|
|
20
|
+
|
|
21
|
+
---
|
|
22
|
+
|
|
23
|
+
## 1. ΠΡΠΈΠ½ΡΠΈΠΏΡ
|
|
24
|
+
|
|
25
|
+
| ΠΡΠΈΠ½ΡΠΈΠΏ | ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ | ΠΡΠΈΠΌΠ΅Ρ |
|
|
26
|
+
|---------|---------|--------|
|
|
27
|
+
| **Defense in depth** | ΠΠ΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ»ΠΎΡΠ² Π·Π°ΡΠΈΡΡ | Validation + auth + sanitization |
|
|
28
|
+
| **Least privilege** | ΠΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΡΠ΅ ΠΏΡΠ°Π²Π° | DB user: readWrite only, no admin |
|
|
29
|
+
| **Input validation at boundaries** | ΠΠ΅ Π΄ΠΎΠ²Π΅ΡΡΠΉ Π½ΠΈΠΊΠ°ΠΊΠΎΠΌΡ input | Zod schema Π½Π° ΠΊΠ°ΠΆΠ΄ΡΠΉ endpoint |
|
|
30
|
+
| **Secure by default** | ΠΠ΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎ "ΠΈΠ· ΠΊΠΎΡΠΎΠ±ΠΊΠΈ" | CORS whitelist, Helmet on, strict CSP |
|
|
31
|
+
| **Fail securely** | ΠΡΠΈΠ±ΠΊΠ° β Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΠ΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ | Don't expose stack/DB errors |
|
|
32
|
+
| **Audit trail** | ΠΠΎΠ³ΠΈΡΡΠΉ ΠΊΡΠΈΡΠΈΡΠ½ΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ | Install, settings change, content create |
|
|
33
|
+
|
|
34
|
+
---
|
|
35
|
+
|
|
36
|
+
## 2. Assets
|
|
37
|
+
|
|
38
|
+
Π§ΡΠΎ ΠΌΡ Π·Π°ΡΠΈΡΠ°Π΅ΠΌ:
|
|
39
|
+
|
|
40
|
+
| Asset | Sensitivity | Impact if compromised |
|
|
41
|
+
|-------|-----------|----------------------|
|
|
42
|
+
| **App settings** | Medium | Widget shows incorrect data |
|
|
43
|
+
| **Sensitive content** | Medium | Unauthorized access to business data |
|
|
44
|
+
| **appInstanceId/tokens** | High | Unauthorized access to any installation |
|
|
45
|
+
| **Wix OAuth tokens** | High | Full API access to user's Wix site |
|
|
46
|
+
| **DB credentials** | Critical | Full data access + modification |
|
|
47
|
+
| **Webhook secrets** | High | Spoofed install/uninstall events |
|
|
48
|
+
| **User PII (email)** | High (GDPR) | Compliance violation, reputation damage |
|
|
49
|
+
| **Admin access** | Critical | Full system control |
|
|
50
|
+
|
|
51
|
+
---
|
|
52
|
+
|
|
53
|
+
## 3. Attack Surfaces
|
|
54
|
+
|
|
55
|
+
| Surface | Endpoints/Components | Risk Level |
|
|
56
|
+
|---------|---------------------|-----------|
|
|
57
|
+
| **Public API** | Widget endpoint (no auth) | Medium |
|
|
58
|
+
| **Dashboard API** | Settings/Content CRUD | High |
|
|
59
|
+
| **Webhooks** | Install/Uninstall | High |
|
|
60
|
+
| **Embedded Script** | JS on Wix sites | Medium |
|
|
61
|
+
| **Dashboard UI** | Wix iframe | Medium |
|
|
62
|
+
| **Database** | MongoDB connection | High |
|
|
63
|
+
| **Docker/Infra** | Ports, volumes, certs | Medium |
|
|
64
|
+
|
|
65
|
+
---
|
|
66
|
+
|
|
67
|
+
## 4. Threat Table
|
|
68
|
+
|
|
69
|
+
ΠΠ»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΡΠ³ΡΠΎΠ·Ρ: ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅, impact, likelihood, severity, mitigation.
|
|
70
|
+
|
|
71
|
+
| # | Threat | Surface | Impact | Likelihood | Severity | Mitigation | Status |
|
|
72
|
+
|---|--------|---------|--------|-----------|----------|-----------|--------|
|
|
73
|
+
| T-01 | **NoSQL Injection** | Dashboard API | High | Medium | π΄ P0 | Safe filter builder, Zod validation, `strictQuery: true` | β |
|
|
74
|
+
| T-02 | **XSS via settings** | Embedded Script | High | Medium | π΄ P0 | Sanitize all user input before rendering, CSP headers | β |
|
|
75
|
+
| T-03 | **Webhook spoofing** | Webhook endpoint | High | Low | π P1 | Verify JWT signature, validate payload structure | β |
|
|
76
|
+
| T-04 | **IDOR (Insecure Direct Object Reference)** | Dashboard API | High | Medium | π΄ P0 | Verify appInstanceId belongs to authenticated user | β |
|
|
77
|
+
| T-05 | **Secrets in code/logs** | All | Critical | Medium | π΄ P0 | Env vars only, pino redact, .gitignore | β |
|
|
78
|
+
| T-06 | **Brute force enumeration** | Widget endpoint | Medium | Low | π‘ P2 | Rate limiting on widget endpoint | β |
|
|
79
|
+
| T-07 | **CSRF** | Dashboard API | Medium | Low | π P1 | SameSite cookies, origin check | β |
|
|
80
|
+
| T-08 | **Dependency supply chain** | npm packages | High | Low | π P1 | `npm audit`, lockfile, minimal deps | β |
|
|
81
|
+
| T-09 | **Man-in-the-middle** | All HTTP | High | Low | π P1 | HTTPS everywhere (Caddy), HSTS | β |
|
|
82
|
+
| T-10 | **Embed script injection** | Wix site | High | Low | π P1 | Script src from trusted origin only, no eval() | β |
|
|
83
|
+
|
|
84
|
+
---
|
|
85
|
+
|
|
86
|
+
## 5. Risk Matrix
|
|
87
|
+
|
|
88
|
+
### Impact Γ Likelihood
|
|
89
|
+
|
|
90
|
+
```
|
|
91
|
+
β Low Likelihood β Medium β High
|
|
92
|
+
βββββββββββββββΌβββββββββββββββββΌβββββββββΌββββββ
|
|
93
|
+
High Impact β π P1 β π΄ P0 β π΄ P0
|
|
94
|
+
Medium Impact β π‘ P2 β π P1 β π΄ P0
|
|
95
|
+
Low Impact β π‘ P2 β π‘ P2 β π P1
|
|
96
|
+
```
|
|
97
|
+
|
|
98
|
+
### Severity actions
|
|
99
|
+
|
|
100
|
+
| Severity | Action | Timeline |
|
|
101
|
+
|----------|--------|----------|
|
|
102
|
+
| π΄ **P0** | Must fix before release | This sprint |
|
|
103
|
+
| π **P1** | Fix in current iteration | Next 2 sprints |
|
|
104
|
+
| π‘ **P2** | Track in backlog | When resources allow |
|
|
105
|
+
|
|
106
|
+
---
|
|
107
|
+
|
|
108
|
+
## 6. OWASP Top 10 Checklist
|
|
109
|
+
|
|
110
|
+
| # | OWASP Category | Relevant? | Mitigation | Status |
|
|
111
|
+
|---|---------------|:---------:|-----------|--------|
|
|
112
|
+
| A01 | **Broken Access Control** | β
| Auth middleware, IDOR check, role validation | β |
|
|
113
|
+
| A02 | **Cryptographic Failures** | β
| HTTPS, bcrypt for passwords, no secrets in logs | β |
|
|
114
|
+
| A03 | **Injection** | β
| Zod validation, safe filter builder, no eval() | β |
|
|
115
|
+
| A04 | **Insecure Design** | β
| Threat model (this doc), defense in depth | β |
|
|
116
|
+
| A05 | **Security Misconfiguration** | β
| Helmet, CORS whitelist, strict CSP, no debug in prod | β |
|
|
117
|
+
| A06 | **Vulnerable Components** | β
| npm audit, lockfile, minimal dependencies | β |
|
|
118
|
+
| A07 | **Auth Failures** | β¬ | Wix handles auth (OAuth flow) | N/A |
|
|
119
|
+
| A08 | **Data Integrity Failures** | β
| Webhook signature verification, input validation | β |
|
|
120
|
+
| A09 | **Logging Failures** | β
| Structured logs, request correlation, no PII in logs | β |
|
|
121
|
+
| A10 | **SSRF** | β¬ | No user-controlled URL fetching | N/A |
|
|
122
|
+
|
|
123
|
+
---
|
|
124
|
+
|
|
125
|
+
## 7. Security Requirements
|
|
126
|
+
|
|
127
|
+
### For implementation (DEV gate)
|
|
128
|
+
|
|
129
|
+
| Requirement | Where | How to verify |
|
|
130
|
+
|------------|-------|--------------|
|
|
131
|
+
| Input validation on every endpoint | API middleware | Unit test: invalid input β 400 |
|
|
132
|
+
| Auth check on protected endpoints | Auth middleware | Test: no token β 401 |
|
|
133
|
+
| IDOR prevention | Controllers | Test: wrong appInstanceId β 403 |
|
|
134
|
+
| Secure error responses | Error handler | Test: 500 β no stack in response |
|
|
135
|
+
| Secrets via env only | Config module | grep: no hardcoded secrets |
|
|
136
|
+
| Helmet + CORS | Express setup | Integration test: check headers |
|
|
137
|
+
| PII redaction in logs | Pino config | Log output: no passwords/tokens |
|
|
138
|
+
|
|
139
|
+
### For review (REV gate)
|
|
140
|
+
|
|
141
|
+
| Requirement | How to verify |
|
|
142
|
+
|------------|--------------|
|
|
143
|
+
| No `eval()`, `Function()`, `dangerouslySetInnerHTML` without sanitize | grep |
|
|
144
|
+
| No `eslint-disable-next-line` for security rules | grep |
|
|
145
|
+
| `npm audit` clean (no high/critical) | `npm audit --audit-level=high` |
|
|
146
|
+
| No TODO/FIXME related to security | grep `TODO.*secur\|FIXME.*auth` |
|
|
147
|
+
|
|
148
|
+
---
|
|
149
|
+
|
|
150
|
+
## 8. ΠΡΠΈΠΌΠ΅Ρ
|
|
151
|
+
|
|
152
|
+
```markdown
|
|
153
|
+
# Threat Model: SaaS Admin Panel
|
|
154
|
+
|
|
155
|
+
## Key Assets
|
|
156
|
+
- Admin credentials (sessions, API tokens)
|
|
157
|
+
- Product/content data, user settings
|
|
158
|
+
- DB credentials, external API keys
|
|
159
|
+
|
|
160
|
+
## Top Threats (prioritized)
|
|
161
|
+
1. π΄ T-01: NoSQL injection via admin API β Zod + safe filter
|
|
162
|
+
2. π΄ T-04: IDOR on resources β verify ownership middleware
|
|
163
|
+
3. π΄ T-05: Secrets in code/logs β env vars + pino redact
|
|
164
|
+
4. π T-03: CSRF on state-changing endpoints β SameSite + tokens
|
|
165
|
+
5. π T-10: XSS in public content β sanitize user input
|
|
166
|
+
|
|
167
|
+
## OWASP Coverage: 8/10 categories addressed (A07, A10 N/A)
|
|
168
|
+
```
|
|
169
|
+
|
|
170
|
+
---
|
|
171
|
+
|
|
172
|
+
## 9. Output Template
|
|
173
|
+
|
|
174
|
+
```markdown
|
|
175
|
+
# Threat Model Baseline: <project-name>
|
|
176
|
+
|
|
177
|
+
**Date:** YYYY-MM-DD
|
|
178
|
+
**Scope:** <what's covered>
|
|
179
|
+
|
|
180
|
+
## Assets
|
|
181
|
+
<section 2 table>
|
|
182
|
+
|
|
183
|
+
## Attack Surfaces
|
|
184
|
+
<section 3 table>
|
|
185
|
+
|
|
186
|
+
## Threats
|
|
187
|
+
<section 4 table β prioritized by severity>
|
|
188
|
+
|
|
189
|
+
## Risk Matrix
|
|
190
|
+
<section 5>
|
|
191
|
+
|
|
192
|
+
## OWASP Top 10
|
|
193
|
+
<section 6 checklist>
|
|
194
|
+
|
|
195
|
+
## Security Requirements
|
|
196
|
+
<section 7 tables>
|
|
197
|
+
|
|
198
|
+
## Summary
|
|
199
|
+
- P0 threats: X (must fix before release)
|
|
200
|
+
- P1 threats: Y (fix in current iteration)
|
|
201
|
+
- P2 threats: Z (backlog)
|
|
202
|
+
```
|
|
203
|
+
|
|
204
|
+
---
|
|
205
|
+
|
|
206
|
+
## Π‘ΠΌ. ΡΠ°ΠΊΠΆΠ΅
|
|
207
|
+
- `$security_baseline_dev` β implementation patterns (Zod, Helmet, bcrypt)
|
|
208
|
+
- `$security_review` β AppSec review checklist
|
|
209
|
+
- `$api_contracts` β auth/error conventions
|
|
210
|
+
- `$observability_logging` β PII redaction, audit logging
|
|
@@ -0,0 +1,195 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: ui_a11y_smoke_review
|
|
3
|
+
description: ΠΡΡΡΡΡΠΉ UI/a11y smoke review Π΄ΠΈΠ·Π°ΠΉΠ½Π΅ΡΠ° β ΡΠΎΡΡΠΎΡΠ½ΠΈΡ loading/empty/error, ΡΠΎΠΊΡΡ, ΠΊΠ»Π°Π²ΠΈΠ°ΡΡΡΠ°, aria/labels, ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠ΅ UX Spec. ΠΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΠΠ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠΈ Π² QA.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Skill: UI & A11y Smoke Review (Designer-Level)
|
|
7
|
+
|
|
8
|
+
ΠΡΡΡΡΠ°Ρ designer-level ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° UI Π½Π° ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠ΅ UX Spec + a11y baseline **Π΄ΠΎ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠΈ Π² QA**.
|
|
9
|
+
|
|
10
|
+
> **ΠΡΠ»ΠΈΡΠΈΠ΅ ΠΎΡ `$qa_ui_a11y_smoke`:** ΠΡΠΎΡ ΡΠΊΠΈΠ»Π» β Π΄ΠΈΠ·Π°ΠΉΠ½Π΅ΡΡΠΊΠΈΠΉ quick check (5-10 ΠΌΠΈΠ½, ΠΏΠΎ UX Spec).
|
|
11
|
+
> `$qa_ui_a11y_smoke` β ΡΠΎΡΠΌΠ°Π»ΡΠ½ΡΠΉ QA ΡΠ΅ΡΡ (25 WCAG checks, tools, report).
|
|
12
|
+
|
|
13
|
+
**Π Π°Π·Π΄Π΅Π»Ρ:**
|
|
14
|
+
1. [Workflow](#1-workflow)
|
|
15
|
+
2. [Checklist](#2-checklist)
|
|
16
|
+
3. [UX Spec Compliance](#3-ux-compliance)
|
|
17
|
+
4. [Quick A11y Scan](#4-a11y-scan)
|
|
18
|
+
5. [Output Template](#5-output)
|
|
19
|
+
|
|
20
|
+
---
|
|
21
|
+
|
|
22
|
+
## 1. Workflow
|
|
23
|
+
|
|
24
|
+
```
|
|
25
|
+
1. Input:
|
|
26
|
+
βββ Implemented UI (browser / screenshots)
|
|
27
|
+
βββ UX Spec (ΠΈΠ· $ux_spec) β source of truth
|
|
28
|
+
βββ A11y Baseline (ΠΈΠ· $a11y_baseline) β requirements
|
|
29
|
+
|
|
30
|
+
2. Visual walkthrough per screen:
|
|
31
|
+
a. Does layout match UX Spec?
|
|
32
|
+
b. Are all components/sections present?
|
|
33
|
+
c. Are all 4 states implemented (loading/empty/error/success)?
|
|
34
|
+
d. Quick keyboard pass (Tab through interactive elements)
|
|
35
|
+
|
|
36
|
+
3. Classify issues:
|
|
37
|
+
βββ P0: Missing critical states, broken flow, inaccessible
|
|
38
|
+
βββ P1: Wrong component, missing state, inconsistency
|
|
39
|
+
βββ P2: Polish, spacing, cosmetic
|
|
40
|
+
|
|
41
|
+
4. Report β DEV fixes before formal QA
|
|
42
|
+
|
|
43
|
+
Note: This is a QUICK check. For formal testing β $qa_ui_a11y_smoke
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
---
|
|
47
|
+
|
|
48
|
+
## 2. Checklist
|
|
49
|
+
|
|
50
|
+
### 2.1 Visual & Layout
|
|
51
|
+
|
|
52
|
+
| # | Check | UX Spec ref | Severity | Status |
|
|
53
|
+
|---|-------|------------|----------|--------|
|
|
54
|
+
| UI-01 | Layout matches UX Spec (columns, sections, order) | Screen Spec β Layout | π P1 | β |
|
|
55
|
+
| UI-02 | All sections present (no missing panels/cards) | Screen Spec β Sections | π P1 | β |
|
|
56
|
+
| UI-03 | Primary CTA visible and correctly styled | Screen Spec β Actions | π΄ P0 | β |
|
|
57
|
+
| UI-04 | Typography hierarchy matches (h1 > h2 > body) | UI Inventory β Tokens | π‘ P2 | β |
|
|
58
|
+
| UI-05 | Colors match design tokens | Design Rules β DR-xx | π P1 | β |
|
|
59
|
+
|
|
60
|
+
### 2.2 UI States
|
|
61
|
+
|
|
62
|
+
| # | Check | Against | Severity | Status |
|
|
63
|
+
|---|-------|---------|----------|--------|
|
|
64
|
+
| UI-06 | **Loading** state present (skeleton or spinner per UX Spec) | Screen Spec β States | π P1 | β |
|
|
65
|
+
| UI-07 | **Empty** state present (illustration + text + CTA) | Screen Spec β States | π P1 | β |
|
|
66
|
+
| UI-08 | **Error** state present (message + retry/action) | Screen Spec β States | π΄ P0 | β |
|
|
67
|
+
| UI-09 | **Success** feedback (toast/message after action) | Screen Spec β Notifications | π P1 | β |
|
|
68
|
+
| UI-10 | **Disabled** state clear (visual + non-clickable) | Screen Spec β States | π‘ P2 | β |
|
|
69
|
+
| UI-11 | **Saving/In-flight** state (button spinner, disabled) | Screen Spec β Actions | π P1 | β |
|
|
70
|
+
|
|
71
|
+
### 2.3 Forms
|
|
72
|
+
|
|
73
|
+
| # | Check | Against | Severity | Status |
|
|
74
|
+
|---|-------|---------|----------|--------|
|
|
75
|
+
| UI-12 | All form fields have visible labels | A11y Baseline A-10 | π΄ P0 | β |
|
|
76
|
+
| UI-13 | Required fields marked (asterisk or text) | A11y Baseline A-11 | π P1 | β |
|
|
77
|
+
| UI-14 | Error messages visible and descriptive | Screen Spec β Validation | π P1 | β |
|
|
78
|
+
| UI-15 | Submit button feedback (loading/disabled during save) | Screen Spec β Actions | π P1 | β |
|
|
79
|
+
|
|
80
|
+
### 2.4 Quick A11y
|
|
81
|
+
|
|
82
|
+
| # | Check | Against | Severity | Status |
|
|
83
|
+
|---|-------|---------|----------|--------|
|
|
84
|
+
| UI-16 | Can Tab to all interactive elements | A11y Baseline A-01 | π΄ P0 | β |
|
|
85
|
+
| UI-17 | Focus ring visible on focused elements | A11y Baseline A-05 | π΄ P0 | β |
|
|
86
|
+
| UI-18 | Modal traps focus + Escape closes | A11y Baseline A-07 | π P1 | β |
|
|
87
|
+
| UI-19 | No obvious contrast issues (text readable) | A11y Baseline A-19 | π P1 | β |
|
|
88
|
+
| UI-20 | Content/buttons not cut off or overlapping | β | π P1 | β |
|
|
89
|
+
|
|
90
|
+
---
|
|
91
|
+
|
|
92
|
+
## 3. UX Spec Compliance
|
|
93
|
+
|
|
94
|
+
### Per-screen verification
|
|
95
|
+
|
|
96
|
+
For each screen in UX Spec, verify implementation matches:
|
|
97
|
+
|
|
98
|
+
```markdown
|
|
99
|
+
### Screen: <Name>
|
|
100
|
+
|
|
101
|
+
| UX Spec Element | Expected | Implemented? | Notes |
|
|
102
|
+
|----------------|----------|:------------:|-------|
|
|
103
|
+
| Layout: 2-column 60/40 | Config + Preview | β
| β |
|
|
104
|
+
| Tab: General | Title, Subtitle, CTA fields | β
| β |
|
|
105
|
+
| Tab: Design | ColorPicker Γ 4, FontSelect | β οΈ | Missing overlay picker |
|
|
106
|
+
| Tab: Timer | Switch + NumberInputs | β
| β |
|
|
107
|
+
| State: Loading | Skeleton | β | Shows blank page |
|
|
108
|
+
| State: Error (save) | Toast + inline errors | β οΈ | Toast only, no inline |
|
|
109
|
+
| Notification: Save success | Toast, 3s auto-dismiss | β
| β |
|
|
110
|
+
```
|
|
111
|
+
|
|
112
|
+
---
|
|
113
|
+
|
|
114
|
+
## 4. Quick A11y Scan
|
|
115
|
+
|
|
116
|
+
### 60-second keyboard test
|
|
117
|
+
|
|
118
|
+
| Step | Action | Expected | Status |
|
|
119
|
+
|------|--------|----------|:------:|
|
|
120
|
+
| 1 | Press Tab from page top | Focus on first interactive element | β |
|
|
121
|
+
| 2 | Tab through all controls | Each gets visible focus ring | β |
|
|
122
|
+
| 3 | Enter on buttons | Action fires | β |
|
|
123
|
+
| 4 | Open modal/dropdown | Focus moves inside | β |
|
|
124
|
+
| 5 | Escape on modal | Modal closes, focus returns | β |
|
|
125
|
+
|
|
126
|
+
### Quick visual checks
|
|
127
|
+
|
|
128
|
+
| Check | How | Expected |
|
|
129
|
+
|-------|-----|---------|
|
|
130
|
+
| Contrast | Squint test β can you read all text? | All text readable |
|
|
131
|
+
| Hierarchy | Scan page β is structure clear? | Clear h1 > h2 > body |
|
|
132
|
+
| CTA | Is the primary action obvious? | One clear primary button |
|
|
133
|
+
| Errors | Trigger an error β is it clear? | Visible, descriptive, near the field |
|
|
134
|
+
|
|
135
|
+
---
|
|
136
|
+
|
|
137
|
+
## 5. Output Template
|
|
138
|
+
|
|
139
|
+
```markdown
|
|
140
|
+
# UI & A11y Smoke Review
|
|
141
|
+
|
|
142
|
+
**Date:** YYYY-MM-DD
|
|
143
|
+
**Reviewer:** UX/UI Designer Agent
|
|
144
|
+
**Screen(s):** <list>
|
|
145
|
+
**UX Spec:** <reference>
|
|
146
|
+
|
|
147
|
+
## Checklist Results
|
|
148
|
+
| Section | Pass | Fail | Total |
|
|
149
|
+
|---------|:----:|:----:|:-----:|
|
|
150
|
+
| Visual & Layout (UI-01..05) | 4 | 1 | 5 |
|
|
151
|
+
| UI States (UI-06..11) | 4 | 2 | 6 |
|
|
152
|
+
| Forms (UI-12..15) | 3 | 1 | 4 |
|
|
153
|
+
| Quick A11y (UI-16..20) | 4 | 1 | 5 |
|
|
154
|
+
| **Total** | **15** | **5** | **20** |
|
|
155
|
+
|
|
156
|
+
## UX Spec Compliance
|
|
157
|
+
| Screen | Elements checked | Match | Mismatch |
|
|
158
|
+
|--------|:---------------:|:-----:|:--------:|
|
|
159
|
+
| Settings | 7 | 5 | 2 |
|
|
160
|
+
| Items | 5 | 5 | 0 |
|
|
161
|
+
|
|
162
|
+
## Findings
|
|
163
|
+
| # | Severity | Check | Screen | Finding | Fix |
|
|
164
|
+
|---|----------|-------|--------|---------|-----|
|
|
165
|
+
| 1 | π΄ P0 | UI-08 | Settings | No error state for failed save | Add error toast + inline errors |
|
|
166
|
+
| 2 | π P1 | UI-06 | Settings | Blank page instead of skeleton | Add skeleton loader |
|
|
167
|
+
| 3 | π P1 | UI-05 | Design tab | Missing overlay color picker | Add 4th ColorPicker |
|
|
168
|
+
| 4 | π‘ P2 | UI-04 | Settings | Section titles not bold enough | Increase font-weight |
|
|
169
|
+
|
|
170
|
+
## Keyboard Test
|
|
171
|
+
| Step | Status |
|
|
172
|
+
|------|:------:|
|
|
173
|
+
| Tab navigation | β
|
|
|
174
|
+
| Focus visible | β
|
|
|
175
|
+
| Enter activates | β
|
|
|
176
|
+
| Modal focus trap | β οΈ Focus escapes |
|
|
177
|
+
| Escape closes | β
|
|
|
178
|
+
|
|
179
|
+
## Verdict
|
|
180
|
+
- β
**READY FOR QA** β no P0, minor issues tracked
|
|
181
|
+
- β οΈ **FIX FIRST** β P0/P1 issues must be fixed before QA
|
|
182
|
+
- β **NOT READY** β critical UX/a11y issues block QA
|
|
183
|
+
|
|
184
|
+
## Next
|
|
185
|
+
- If READY β pass to $qa_ui_a11y_smoke for formal testing
|
|
186
|
+
- If FIX FIRST β create DEV-xx tasks, re-review after fix
|
|
187
|
+
```
|
|
188
|
+
|
|
189
|
+
---
|
|
190
|
+
|
|
191
|
+
## Π‘ΠΌ. ΡΠ°ΠΊΠΆΠ΅
|
|
192
|
+
- `$qa_ui_a11y_smoke` β formal QA a11y testing (25 WCAG checks)
|
|
193
|
+
- `$ux_spec` β UX Spec (source of truth)
|
|
194
|
+
- `$a11y_baseline` β a11y requirements
|
|
195
|
+
- `$design_parity_review` β full design comparison
|