agentic-qe 3.8.1 → 3.8.3
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/.claude/agents/v3/qe-security-scanner.md +2 -2
- package/.claude/commands/claude-flow-help.md +1 -1
- package/.claude/helpers/github-setup.sh +4 -4
- package/.claude/helpers/post-commit +1 -1
- package/.claude/helpers/pre-commit +1 -1
- package/.claude/helpers/quick-start.sh +4 -4
- package/.claude/helpers/setup-mcp.sh +3 -3
- package/.claude/helpers/statusline-v3.cjs +1 -1
- package/.claude/helpers/validation-pipeline.cjs +625 -0
- package/.claude/skills/README.md +29 -7
- package/.claude/skills/TRUST-TIERS.md +26 -10
- package/.claude/skills/a11y-ally/SKILL.md +10 -2
- package/.claude/skills/accessibility-testing/SKILL.md +2 -1
- package/.claude/skills/agentic-quality-engineering/SKILL.md +1 -2
- package/.claude/skills/api-testing-patterns/SKILL.md +8 -0
- package/.claude/skills/api-testing-patterns/config.json +14 -0
- package/.claude/skills/api-testing-patterns/templates/api-test-scaffold.md +87 -0
- package/.claude/skills/brutal-honesty-review/SKILL.md +0 -1
- package/.claude/skills/bug-reporting-excellence/SKILL.md +14 -1
- package/.claude/skills/cicd-pipeline-qe-orchestrator/SKILL.md +0 -1
- package/.claude/skills/code-review-quality/SKILL.md +14 -1
- package/.claude/skills/compatibility-testing/SKILL.md +1 -54
- package/.claude/skills/compliance-testing/SKILL.md +8 -1
- package/.claude/skills/compliance-testing/config.json +13 -0
- package/.claude/skills/consultancy-practices/SKILL.md +1 -33
- package/.claude/skills/context-driven-testing/SKILL.md +0 -42
- package/.claude/skills/contract-testing/SKILL.md +12 -0
- package/.claude/skills/contract-testing/config.json +13 -0
- package/.claude/skills/contract-testing/references/agent-commands.md +103 -0
- package/.claude/skills/contract-testing/references/provider-states.md +45 -0
- package/.claude/skills/coverage-drop-investigator/SKILL.md +90 -0
- package/.claude/skills/coverage-guard/SKILL.md +82 -0
- package/.claude/skills/coverage-guard/scripts/check-coverage.sh +42 -0
- package/.claude/skills/database-testing/SKILL.md +0 -10
- package/.claude/skills/debug-loop/SKILL.md +1 -1
- package/.claude/skills/e2e-flow-verifier/SKILL.md +78 -0
- package/.claude/skills/enterprise-integration-testing/SKILL.md +1 -1
- package/.claude/skills/exploratory-testing-advanced/SKILL.md +8 -1
- package/.claude/skills/exploratory-testing-advanced/references/heuristic-cheatsheet.md +48 -0
- package/.claude/skills/freeze-tests/SKILL.md +67 -0
- package/.claude/skills/freeze-tests/scripts/block-test-edits.sh +27 -0
- package/.claude/skills/holistic-testing-pact/SKILL.md +0 -1
- package/.claude/skills/iterative-loop/SKILL.md +6 -6
- package/.claude/skills/localization-testing/SKILL.md +0 -18
- package/.claude/skills/mobile-testing/SKILL.md +2 -50
- package/.claude/skills/mutation-testing/SKILL.md +26 -1
- package/.claude/skills/mutation-testing/config.json +14 -0
- package/.claude/skills/mutation-testing/references/mutation-operators.md +38 -0
- package/.claude/skills/mutation-testing/run-history.json +6 -0
- package/.claude/skills/n8n-expression-testing/SKILL.md +0 -1
- package/.claude/skills/n8n-integration-testing-patterns/SKILL.md +0 -1
- package/.claude/skills/n8n-security-testing/SKILL.md +0 -1
- package/.claude/skills/n8n-trigger-testing-strategies/SKILL.md +0 -1
- package/.claude/skills/n8n-workflow-testing-fundamentals/SKILL.md +0 -1
- package/.claude/skills/no-skip/SKILL.md +74 -0
- package/.claude/skills/no-skip/scripts/check-skips.sh +28 -0
- package/.claude/skills/pair-programming/SKILL.md +1 -1
- package/.claude/skills/pentest-validation/SKILL.md +2 -3
- package/.claude/skills/performance-testing/SKILL.md +21 -0
- package/.claude/skills/performance-testing/config.json +18 -0
- package/.claude/skills/performance-testing/references/k6-patterns.md +72 -0
- package/.claude/skills/performance-testing/run-history.json +6 -0
- package/.claude/skills/pr-review/SKILL.md +3 -3
- package/.claude/skills/qcsd-cicd-swarm/SKILL.md +1 -2
- package/.claude/skills/qcsd-development-swarm/SKILL.md +1 -2
- package/.claude/skills/qcsd-ideation-swarm/SKILL.md +1 -2
- package/.claude/skills/qcsd-production-swarm/SKILL.md +1 -2
- package/.claude/skills/qcsd-production-swarm/steps/01-flag-detection.md +1 -1
- package/.claude/skills/qcsd-production-swarm/steps/07-learning-persistence.md +2 -2
- package/.claude/skills/qcsd-refinement-swarm/SKILL.md +1 -2
- package/.claude/skills/qcsd-refinement-swarm/steps/01-flag-detection.md +1 -1
- package/.claude/skills/qe-chaos-resilience/SKILL.md +2 -3
- package/.claude/skills/qe-code-intelligence/SKILL.md +9 -2
- package/.claude/skills/qe-coverage-analysis/SKILL.md +28 -2
- package/.claude/skills/qe-coverage-analysis/run-history.json +6 -0
- package/.claude/skills/qe-defect-intelligence/SKILL.md +1 -2
- package/.claude/skills/qe-iterative-loop/SKILL.md +0 -1
- package/.claude/skills/qe-learning-optimization/SKILL.md +1 -2
- package/.claude/skills/qe-quality-assessment/SKILL.md +29 -3
- package/.claude/skills/qe-quality-assessment/run-history.json +6 -0
- package/.claude/skills/qe-requirements-validation/SKILL.md +1 -2
- package/.claude/skills/qe-test-execution/SKILL.md +9 -2
- package/.claude/skills/qe-test-generation/SKILL.md +15 -2
- package/.claude/skills/qe-test-generation/config.json +14 -0
- package/.claude/skills/qe-test-generation/templates/test-scaffold-jest.md +72 -0
- package/.claude/skills/qe-visual-accessibility/SKILL.md +1 -2
- package/.claude/skills/quality-metrics/SKILL.md +3 -78
- package/.claude/skills/refactoring-patterns/SKILL.md +0 -1
- package/.claude/skills/regression-testing/SKILL.md +13 -49
- package/.claude/skills/risk-based-testing/SKILL.md +6 -52
- package/.claude/skills/security-testing/SKILL.md +30 -0
- package/.claude/skills/security-testing/config.json +13 -0
- package/.claude/skills/security-testing/references/compliance-agent-commands.md +131 -0
- package/.claude/skills/security-testing/references/owasp-top-10.md +66 -0
- package/.claude/skills/security-testing/run-history.json +6 -0
- package/.claude/skills/security-testing/templates/security-report.md +44 -0
- package/.claude/skills/security-visual-testing/SKILL.md +0 -1
- package/.claude/skills/security-watch/SKILL.md +93 -0
- package/.claude/skills/security-watch/scripts/scan-security.sh +46 -0
- package/.claude/skills/sherlock-review/SKILL.md +0 -1
- package/.claude/skills/shift-left-testing/SKILL.md +16 -88
- package/.claude/skills/shift-right-testing/SKILL.md +0 -1
- package/.claude/skills/six-thinking-hats/SKILL.md +0 -1
- package/.claude/skills/skill-stats/SKILL.md +79 -0
- package/.claude/skills/skills-manifest.json +1 -1
- package/.claude/skills/strict-tdd/SKILL.md +72 -0
- package/.claude/skills/strict-tdd/scripts/enforce-red-phase.sh +36 -0
- package/.claude/skills/tdd-london-chicago/SKILL.md +8 -1
- package/.claude/skills/technical-writing/SKILL.md +0 -1
- package/.claude/skills/test-automation-strategy/SKILL.md +13 -65
- package/.claude/skills/test-data-management/SKILL.md +1 -105
- package/.claude/skills/test-design-techniques/SKILL.md +2 -152
- package/.claude/skills/test-environment-management/SKILL.md +0 -48
- package/.claude/skills/test-failure-investigator/SKILL.md +99 -0
- package/.claude/skills/test-metrics-dashboard/SKILL.md +97 -0
- package/.claude/skills/test-reporting-analytics/SKILL.md +0 -1
- package/.claude/skills/trust-tier-manifest.json +135 -61
- package/.claude/skills/validation-pipeline/SKILL.md +5 -6
- package/.claude/skills/verification-quality/SKILL.md +15 -1
- package/.claude/skills/visual-testing-advanced/SKILL.md +0 -1
- package/.claude/skills/xp-practices/SKILL.md +2 -110
- package/.opencode/agents/collective-intelligence-coordinator.yaml +52 -0
- package/.opencode/agents/ddd-domain-expert.yaml +49 -0
- package/.opencode/agents/memory-specialist.yaml +49 -0
- package/.opencode/agents/performance-engineer.yaml +53 -0
- package/.opencode/agents/qe-accessibility-auditor.yaml +118 -0
- package/.opencode/agents/qe-api-contract-validator.yaml +85 -0
- package/.opencode/agents/qe-bdd-generator.yaml +83 -0
- package/.opencode/agents/qe-chaos-engineer.yaml +114 -0
- package/.opencode/agents/qe-code-complexity.yaml +82 -0
- package/.opencode/agents/qe-code-intelligence.yaml +80 -0
- package/.opencode/agents/qe-coverage-analyzer.yaml +75 -0
- package/.opencode/agents/qe-defect-predictor.yaml +81 -0
- package/.opencode/agents/qe-dependency-mapper.yaml +81 -0
- package/.opencode/agents/qe-deployment-advisor.yaml +82 -0
- package/.opencode/agents/qe-devils-advocate.yaml +63 -0
- package/.opencode/agents/qe-flaky-hunter.yaml +116 -0
- package/.opencode/agents/qe-fleet-commander.yaml +83 -0
- package/.opencode/agents/qe-gap-detector.yaml +81 -0
- package/.opencode/agents/qe-graphql-tester.yaml +84 -0
- package/.opencode/agents/qe-impact-analyzer.yaml +81 -0
- package/.opencode/agents/qe-integration-architect.yaml +46 -0
- package/.opencode/agents/qe-integration-tester.yaml +84 -0
- package/.opencode/agents/qe-kg-builder.yaml +75 -0
- package/.opencode/agents/qe-learning-coordinator.yaml +82 -0
- package/.opencode/agents/qe-load-tester.yaml +84 -0
- package/.opencode/agents/qe-message-broker-tester.yaml +94 -0
- package/.opencode/agents/qe-metrics-optimizer.yaml +81 -0
- package/.opencode/agents/qe-middleware-validator.yaml +92 -0
- package/.opencode/agents/qe-mutation-tester.yaml +84 -0
- package/.opencode/agents/qe-odata-contract-tester.yaml +98 -0
- package/.opencode/agents/qe-parallel-executor.yaml +79 -0
- package/.opencode/agents/qe-pattern-learner.yaml +80 -0
- package/.opencode/agents/qe-pentest-validator.yaml +137 -0
- package/.opencode/agents/qe-performance-tester.yaml +83 -0
- package/.opencode/agents/qe-product-factors-assessor.yaml +116 -0
- package/.opencode/agents/qe-property-tester.yaml +82 -0
- package/.opencode/agents/qe-quality-criteria-recommender.yaml +111 -0
- package/.opencode/agents/qe-quality-gate.yaml +80 -0
- package/.opencode/agents/qe-queen-coordinator.yaml +59 -0
- package/.opencode/agents/qe-qx-partner.yaml +75 -0
- package/.opencode/agents/qe-regression-analyzer.yaml +90 -0
- package/.opencode/agents/qe-requirements-validator.yaml +111 -0
- package/.opencode/agents/qe-responsive-tester.yaml +85 -0
- package/.opencode/agents/qe-retry-handler.yaml +82 -0
- package/.opencode/agents/qe-risk-assessor.yaml +81 -0
- package/.opencode/agents/qe-root-cause-analyzer.yaml +82 -0
- package/.opencode/agents/qe-sap-idoc-tester.yaml +104 -0
- package/.opencode/agents/qe-sap-rfc-tester.yaml +94 -0
- package/.opencode/agents/qe-security-auditor.yaml +90 -0
- package/.opencode/agents/qe-security-scanner.yaml +80 -0
- package/.opencode/agents/qe-soap-tester.yaml +93 -0
- package/.opencode/agents/qe-sod-analyzer.yaml +96 -0
- package/.opencode/agents/qe-tdd-specialist.yaml +84 -0
- package/.opencode/agents/qe-test-generator.yaml +78 -0
- package/.opencode/agents/qe-test-idea-rewriter.yaml +88 -0
- package/.opencode/agents/qe-transfer-specialist.yaml +81 -0
- package/.opencode/agents/qe-visual-tester.yaml +82 -0
- package/.opencode/agents/security-architect.yaml +51 -0
- package/.opencode/agents/security-auditor.yaml +50 -0
- package/.opencode/permissions.yaml +74 -0
- package/.opencode/skills/qcsd-cicd-swarm.yaml +45 -0
- package/.opencode/skills/qcsd-development-swarm.yaml +45 -0
- package/.opencode/skills/qcsd-ideation-swarm.yaml +45 -0
- package/.opencode/skills/qcsd-production-swarm.yaml +45 -0
- package/.opencode/skills/qcsd-refinement-swarm.yaml +45 -0
- package/.opencode/skills/qe-a11y-ally.yaml +45 -0
- package/.opencode/skills/qe-accessibility-testing.yaml +45 -0
- package/.opencode/skills/qe-agentic-jujutsu.yaml +45 -0
- package/.opencode/skills/qe-agentic-quality-engineering.yaml +45 -0
- package/.opencode/skills/qe-api-testing-patterns.yaml +45 -0
- package/.opencode/skills/qe-aqe-v2-v3-migration.yaml +45 -0
- package/.opencode/skills/qe-brutal-honesty-review.yaml +45 -0
- package/.opencode/skills/qe-bug-reporting-excellence.yaml +45 -0
- package/.opencode/skills/qe-chaos-engineering-resilience.yaml +30 -0
- package/.opencode/skills/qe-chaos-resilience.yaml +45 -0
- package/.opencode/skills/qe-cicd-pipeline-qe-orchestrator.yaml +45 -0
- package/.opencode/skills/qe-code-intelligence.yaml +45 -0
- package/.opencode/skills/qe-code-review-quality.yaml +45 -0
- package/.opencode/skills/qe-compatibility-testing.yaml +35 -0
- package/.opencode/skills/qe-compliance-testing.yaml +35 -0
- package/.opencode/skills/qe-consultancy-practices.yaml +45 -0
- package/.opencode/skills/qe-context-driven-testing.yaml +45 -0
- package/.opencode/skills/qe-coverage-analysis.yaml +45 -0
- package/.opencode/skills/qe-database-testing.yaml +40 -0
- package/.opencode/skills/qe-debug-loop.yaml +45 -0
- package/.opencode/skills/qe-defect-intelligence.yaml +45 -0
- package/.opencode/skills/qe-enterprise-integration-testing.yaml +45 -0
- package/.opencode/skills/qe-exploratory-testing-advanced.yaml +45 -0
- package/.opencode/skills/qe-github-code-review.yaml +45 -0
- package/.opencode/skills/qe-github-multi-repo.yaml +45 -0
- package/.opencode/skills/qe-github-project-management.yaml +45 -0
- package/.opencode/skills/qe-github-release-management.yaml +45 -0
- package/.opencode/skills/qe-github-workflow-automation.yaml +45 -0
- package/.opencode/skills/qe-holistic-testing-pact.yaml +45 -0
- package/.opencode/skills/qe-iterative-loop.yaml +45 -0
- package/.opencode/skills/qe-learning-optimization.yaml +45 -0
- package/.opencode/skills/qe-localization-testing.yaml +40 -0
- package/.opencode/skills/qe-middleware-testing-patterns.yaml +45 -0
- package/.opencode/skills/qe-mobile-testing.yaml +35 -0
- package/.opencode/skills/qe-mutation-testing.yaml +35 -0
- package/.opencode/skills/qe-n8n-expression-testing.yaml +45 -0
- package/.opencode/skills/qe-n8n-integration-testing-patterns.yaml +45 -0
- package/.opencode/skills/qe-n8n-security-testing.yaml +45 -0
- package/.opencode/skills/qe-n8n-trigger-testing-strategies.yaml +45 -0
- package/.opencode/skills/qe-n8n-workflow-testing-fundamentals.yaml +45 -0
- package/.opencode/skills/qe-observability-testing-patterns.yaml +45 -0
- package/.opencode/skills/qe-pair-programming.yaml +45 -0
- package/.opencode/skills/qe-pentest-validation.yaml +45 -0
- package/.opencode/skills/qe-performance-analysis.yaml +45 -0
- package/.opencode/skills/qe-performance-testing.yaml +45 -0
- package/.opencode/skills/qe-pr-review.yaml +45 -0
- package/.opencode/skills/qe-quality-assessment.yaml +45 -0
- package/.opencode/skills/qe-quality-metrics.yaml +45 -0
- package/.opencode/skills/qe-refactoring-patterns.yaml +40 -0
- package/.opencode/skills/qe-regression-testing.yaml +40 -0
- package/.opencode/skills/qe-release.yaml +45 -0
- package/.opencode/skills/qe-requirements-validation.yaml +45 -0
- package/.opencode/skills/qe-risk-based-testing.yaml +45 -0
- package/.opencode/skills/qe-security-testing.yaml +45 -0
- package/.opencode/skills/qe-security-visual-testing.yaml +45 -0
- package/.opencode/skills/qe-sfdipot-product-factors.yaml +45 -0
- package/.opencode/skills/qe-sherlock-review.yaml +45 -0
- package/.opencode/skills/qe-shift-left-testing.yaml +45 -0
- package/.opencode/skills/qe-shift-right-testing.yaml +45 -0
- package/.opencode/skills/qe-six-thinking-hats.yaml +45 -0
- package/.opencode/skills/qe-skill-builder.yaml +45 -0
- package/.opencode/skills/qe-sparc-methodology.yaml +45 -0
- package/.opencode/skills/qe-stream-chain.yaml +45 -0
- package/.opencode/skills/qe-tdd-london-chicago.yaml +45 -0
- package/.opencode/skills/qe-technical-writing.yaml +45 -0
- package/.opencode/skills/qe-test-automation-strategy.yaml +35 -0
- package/.opencode/skills/qe-test-data-management.yaml +45 -0
- package/.opencode/skills/qe-test-design-techniques.yaml +40 -0
- package/.opencode/skills/qe-test-environment-management.yaml +40 -0
- package/.opencode/skills/qe-test-execution.yaml +45 -0
- package/.opencode/skills/qe-test-generation.yaml +45 -0
- package/.opencode/skills/qe-test-idea-rewriting.yaml +45 -0
- package/.opencode/skills/qe-test-reporting-analytics.yaml +45 -0
- package/.opencode/skills/qe-testability-scoring.yaml +45 -0
- package/.opencode/skills/qe-verification-quality.yaml +45 -0
- package/.opencode/skills/qe-visual-accessibility.yaml +45 -0
- package/.opencode/skills/qe-visual-testing-advanced.yaml +40 -0
- package/.opencode/skills/qe-wms-testing-patterns.yaml +45 -0
- package/.opencode/skills/qe-xp-practices.yaml +45 -0
- package/.opencode/tools/qe-defect-scan.ts +79 -0
- package/.opencode/tools/qe-fleet-status.ts +59 -0
- package/.opencode/tools/qe-full-audit.ts +81 -0
- package/.opencode/tools/qe-learning-report.ts +74 -0
- package/.opencode/tools/qe-test-and-verify.ts +97 -0
- package/CHANGELOG.md +50 -0
- package/README.md +5 -1
- package/assets/agents/v3/qe-security-scanner.md +2 -2
- package/assets/helpers/statusline-v3.cjs +1 -1
- package/assets/helpers/validation-pipeline.cjs +625 -0
- package/assets/skills/README.md +173 -0
- package/assets/skills/TRUST-TIERS.md +174 -0
- package/assets/skills/a11y-ally/SKILL.md +10 -2
- package/assets/skills/accessibility-testing/SKILL.md +2 -1
- package/assets/skills/agentic-quality-engineering/SKILL.md +1 -2
- package/assets/skills/api-testing-patterns/SKILL.md +8 -0
- package/assets/skills/api-testing-patterns/config.json +14 -0
- package/assets/skills/api-testing-patterns/templates/api-test-scaffold.md +87 -0
- package/assets/skills/brutal-honesty-review/SKILL.md +0 -1
- package/assets/skills/bug-reporting-excellence/SKILL.md +14 -1
- package/assets/skills/cicd-pipeline-qe-orchestrator/SKILL.md +0 -1
- package/assets/skills/code-review-quality/SKILL.md +14 -1
- package/assets/skills/compatibility-testing/SKILL.md +1 -54
- package/assets/skills/compliance-testing/SKILL.md +8 -1
- package/assets/skills/compliance-testing/config.json +13 -0
- package/assets/skills/consultancy-practices/SKILL.md +1 -33
- package/assets/skills/context-driven-testing/SKILL.md +0 -42
- package/assets/skills/contract-testing/SKILL.md +12 -0
- package/assets/skills/contract-testing/config.json +13 -0
- package/assets/skills/contract-testing/references/agent-commands.md +103 -0
- package/assets/skills/contract-testing/references/provider-states.md +45 -0
- package/assets/skills/coverage-drop-investigator/SKILL.md +90 -0
- package/assets/skills/coverage-guard/SKILL.md +82 -0
- package/assets/skills/coverage-guard/scripts/check-coverage.sh +42 -0
- package/assets/skills/database-testing/SKILL.md +0 -10
- package/assets/skills/debug-loop/SKILL.md +1 -1
- package/assets/skills/e2e-flow-verifier/SKILL.md +78 -0
- package/assets/skills/enterprise-integration-testing/SKILL.md +1 -1
- package/assets/skills/exploratory-testing-advanced/SKILL.md +8 -1
- package/assets/skills/exploratory-testing-advanced/references/heuristic-cheatsheet.md +48 -0
- package/assets/skills/freeze-tests/SKILL.md +67 -0
- package/assets/skills/freeze-tests/scripts/block-test-edits.sh +27 -0
- package/assets/skills/holistic-testing-pact/SKILL.md +0 -1
- package/assets/skills/localization-testing/SKILL.md +0 -18
- package/assets/skills/mobile-testing/SKILL.md +2 -50
- package/assets/skills/mutation-testing/SKILL.md +26 -1
- package/assets/skills/mutation-testing/config.json +14 -0
- package/assets/skills/mutation-testing/references/mutation-operators.md +38 -0
- package/assets/skills/mutation-testing/run-history.json +6 -0
- package/assets/skills/n8n-expression-testing/SKILL.md +0 -1
- package/assets/skills/n8n-integration-testing-patterns/SKILL.md +0 -1
- package/assets/skills/n8n-security-testing/SKILL.md +0 -1
- package/assets/skills/n8n-trigger-testing-strategies/SKILL.md +0 -1
- package/assets/skills/n8n-workflow-testing-fundamentals/SKILL.md +0 -1
- package/assets/skills/no-skip/SKILL.md +74 -0
- package/assets/skills/no-skip/scripts/check-skips.sh +28 -0
- package/assets/skills/pair-programming/SKILL.md +1 -1
- package/assets/skills/pentest-validation/SKILL.md +2 -3
- package/assets/skills/performance-testing/SKILL.md +21 -0
- package/assets/skills/performance-testing/config.json +18 -0
- package/assets/skills/performance-testing/references/k6-patterns.md +72 -0
- package/assets/skills/performance-testing/run-history.json +6 -0
- package/assets/skills/pr-review/SKILL.md +3 -3
- package/assets/skills/qcsd-cicd-swarm/SKILL.md +1 -2
- package/assets/skills/qcsd-development-swarm/SKILL.md +1 -2
- package/assets/skills/qcsd-ideation-swarm/SKILL.md +1 -2
- package/assets/skills/qcsd-production-swarm/SKILL.md +1 -2
- package/assets/skills/qcsd-production-swarm/steps/01-flag-detection.md +1 -1
- package/assets/skills/qcsd-production-swarm/steps/07-learning-persistence.md +2 -2
- package/assets/skills/qcsd-refinement-swarm/SKILL.md +1 -2
- package/assets/skills/qcsd-refinement-swarm/steps/01-flag-detection.md +1 -1
- package/assets/skills/qe-chaos-resilience/SKILL.md +2 -3
- package/assets/skills/qe-code-intelligence/SKILL.md +9 -2
- package/assets/skills/qe-coverage-analysis/SKILL.md +28 -2
- package/assets/skills/qe-coverage-analysis/run-history.json +6 -0
- package/assets/skills/qe-defect-intelligence/SKILL.md +1 -2
- package/assets/skills/qe-iterative-loop/SKILL.md +0 -1
- package/assets/skills/qe-learning-optimization/SKILL.md +1 -2
- package/assets/skills/qe-quality-assessment/SKILL.md +29 -3
- package/assets/skills/qe-quality-assessment/run-history.json +6 -0
- package/assets/skills/qe-requirements-validation/SKILL.md +1 -2
- package/assets/skills/qe-test-execution/SKILL.md +9 -2
- package/assets/skills/qe-test-generation/SKILL.md +15 -2
- package/assets/skills/qe-test-generation/config.json +14 -0
- package/assets/skills/qe-test-generation/templates/test-scaffold-jest.md +72 -0
- package/assets/skills/qe-visual-accessibility/SKILL.md +1 -2
- package/assets/skills/quality-metrics/SKILL.md +3 -78
- package/assets/skills/refactoring-patterns/SKILL.md +0 -1
- package/assets/skills/regression-testing/SKILL.md +13 -49
- package/assets/skills/risk-based-testing/SKILL.md +6 -52
- package/assets/skills/security-testing/SKILL.md +30 -0
- package/assets/skills/security-testing/config.json +13 -0
- package/assets/skills/security-testing/references/compliance-agent-commands.md +131 -0
- package/assets/skills/security-testing/references/owasp-top-10.md +66 -0
- package/assets/skills/security-testing/run-history.json +6 -0
- package/assets/skills/security-testing/templates/security-report.md +44 -0
- package/assets/skills/security-visual-testing/SKILL.md +0 -1
- package/assets/skills/security-watch/SKILL.md +93 -0
- package/assets/skills/security-watch/scripts/scan-security.sh +46 -0
- package/assets/skills/sherlock-review/SKILL.md +0 -1
- package/assets/skills/shift-left-testing/SKILL.md +16 -88
- package/assets/skills/shift-right-testing/SKILL.md +0 -1
- package/assets/skills/six-thinking-hats/SKILL.md +0 -1
- package/assets/skills/skill-stats/SKILL.md +79 -0
- package/assets/skills/strict-tdd/SKILL.md +72 -0
- package/assets/skills/strict-tdd/scripts/enforce-red-phase.sh +36 -0
- package/assets/skills/tdd-london-chicago/SKILL.md +8 -1
- package/assets/skills/technical-writing/SKILL.md +0 -1
- package/assets/skills/test-automation-strategy/SKILL.md +13 -65
- package/assets/skills/test-data-management/SKILL.md +1 -105
- package/assets/skills/test-design-techniques/SKILL.md +2 -152
- package/assets/skills/test-environment-management/SKILL.md +0 -48
- package/assets/skills/test-failure-investigator/SKILL.md +99 -0
- package/assets/skills/test-metrics-dashboard/SKILL.md +97 -0
- package/assets/skills/test-reporting-analytics/SKILL.md +0 -1
- package/assets/skills/trust-tier-manifest.json +135 -61
- package/assets/skills/validation-pipeline/SKILL.md +5 -6
- package/assets/skills/verification-quality/SKILL.md +15 -1
- package/assets/skills/visual-testing-advanced/SKILL.md +0 -1
- package/assets/skills/xp-practices/SKILL.md +2 -110
- package/dist/adapters/claude-flow/detect.d.ts +5 -0
- package/dist/adapters/claude-flow/detect.js +38 -18
- package/dist/adapters/claude-flow/model-router-bridge.js +4 -3
- package/dist/adapters/claude-flow/pretrain-bridge.js +5 -4
- package/dist/adapters/claude-flow/trajectory-bridge.js +5 -4
- package/dist/cli/bundle.js +262 -79
- package/dist/cli/commands/claude-flow-setup.js +4 -4
- package/dist/domains/learning-optimization/coordinator.d.ts +6 -1
- package/dist/domains/learning-optimization/coordinator.js +26 -4
- package/dist/domains/learning-optimization/plugin.d.ts +2 -0
- package/dist/domains/learning-optimization/plugin.js +2 -0
- package/dist/governance/adversarial-defense-integration.js +1 -0
- package/dist/governance/continue-gate-integration.d.ts +1 -0
- package/dist/governance/continue-gate-integration.js +1 -0
- package/dist/governance/deterministic-gateway-integration.d.ts +1 -0
- package/dist/governance/deterministic-gateway-integration.js +1 -0
- package/dist/governance/evolution-pipeline-integration.d.ts +1 -0
- package/dist/governance/evolution-pipeline-integration.js +1 -0
- package/dist/governance/memory-write-gate-integration.d.ts +1 -0
- package/dist/governance/memory-write-gate-integration.js +1 -0
- package/dist/governance/proof-envelope-integration.d.ts +1 -0
- package/dist/governance/proof-envelope-integration.js +1 -0
- package/dist/governance/shard-retriever-integration.d.ts +1 -0
- package/dist/governance/shard-retriever-integration.js +1 -0
- package/dist/governance/trust-accumulator-integration.d.ts +1 -0
- package/dist/governance/trust-accumulator-integration.js +1 -0
- package/dist/init/agents-installer.js +28 -1
- package/dist/init/enhancements/claude-flow-adapter.js +15 -2
- package/dist/init/init-wizard-hooks.js +3 -3
- package/dist/init/kiro-installer.js +10 -4
- package/dist/init/opencode-installer.d.ts +13 -1
- package/dist/init/opencode-installer.js +52 -14
- package/dist/init/phases/07-hooks.js +21 -7
- package/dist/init/settings-merge.d.ts +1 -1
- package/dist/init/settings-merge.js +12 -13
- package/dist/init/skills-installer.d.ts +10 -0
- package/dist/init/skills-installer.js +68 -6
- package/dist/integrations/ruvector/sona-persistence.d.ts +6 -0
- package/dist/integrations/ruvector/sona-persistence.js +26 -1
- package/dist/mcp/bundle.js +98 -37
- package/dist/mcp/entry.js +6 -6
- package/dist/migration/agent-compat.js +2 -2
- package/package.json +9 -4
- package/.claude/skills/aqe-v2-v3-migration/schemas/output.json +0 -513
- package/.claude/skills/aqe-v2-v3-migration/skill.md +0 -326
- package/.claude/skills/qe-contract-testing/SKILL.md +0 -224
- package/.claude/skills/qe-contract-testing/evals/qe-contract-testing.yaml +0 -513
- package/.claude/skills/qe-contract-testing/schemas/output.json +0 -295
- package/.claude/skills/qe-contract-testing/scripts/validate-config.json +0 -42
- package/.claude/skills/qe-security-compliance/SKILL.md +0 -261
- package/.claude/skills/qe-security-compliance/evals/qe-security-compliance.yaml +0 -595
- package/.claude/skills/qe-security-compliance/schemas/output.json +0 -498
- package/.claude/skills/qe-security-compliance/scripts/validate-config.json +0 -41
- package/assets/skills/aqe-v2-v3-migration/schemas/output.json +0 -513
- package/assets/skills/aqe-v2-v3-migration/skill.md +0 -326
- package/assets/skills/qe-contract-testing/SKILL.md +0 -224
- package/assets/skills/qe-contract-testing/evals/qe-contract-testing.yaml +0 -513
- package/assets/skills/qe-contract-testing/schemas/output.json +0 -295
- package/assets/skills/qe-contract-testing/scripts/validate-config.json +0 -42
- package/assets/skills/qe-security-compliance/SKILL.md +0 -261
- package/assets/skills/qe-security-compliance/evals/qe-security-compliance.yaml +0 -595
- package/assets/skills/qe-security-compliance/schemas/output.json +0 -498
- package/assets/skills/qe-security-compliance/scripts/validate-config.json +0 -41
|
@@ -16,28 +16,16 @@ validation:
|
|
|
16
16
|
schema_path: schemas/output.json
|
|
17
17
|
validator_path: scripts/validate-config.json
|
|
18
18
|
eval_path: evals/risk-based-testing.yaml
|
|
19
|
-
|
|
20
19
|
---
|
|
21
20
|
|
|
22
21
|
# Risk-Based Testing
|
|
23
22
|
|
|
24
23
|
<default_to_action>
|
|
25
24
|
When planning tests or allocating testing resources:
|
|
26
|
-
1. IDENTIFY risks
|
|
27
|
-
2.
|
|
28
|
-
3.
|
|
29
|
-
4.
|
|
30
|
-
5. REASSESS continuously: New info, changes, production incidents
|
|
31
|
-
|
|
32
|
-
**Quick Risk Assessment:**
|
|
33
|
-
- Probability factors: Complexity, change frequency, developer experience, technical debt
|
|
34
|
-
- Impact factors: User count, revenue, safety, reputation, regulatory
|
|
35
|
-
- Dynamic adjustment: Production bugs increase risk; stable code decreases
|
|
36
|
-
|
|
37
|
-
**Critical Success Factors:**
|
|
38
|
-
- Test where bugs hurt most, not everywhere equally
|
|
39
|
-
- Risk is dynamic - reassess with new information
|
|
40
|
-
- Production data informs risk (shift-right feeds shift-left)
|
|
25
|
+
1. IDENTIFY risks per component (use 1-5 scale for probability and impact)
|
|
26
|
+
2. PRIORITIZE: Critical (20+) → High (12-19) → Medium (6-11) → Low (1-5)
|
|
27
|
+
3. ALLOCATE effort: 60% critical, 25% high, 10% medium, 5% low
|
|
28
|
+
4. REASSESS continuously: Production incidents raise risk; stable code lowers it
|
|
41
29
|
</default_to_action>
|
|
42
30
|
|
|
43
31
|
## Quick Reference Card
|
|
@@ -48,11 +36,7 @@ When planning tests or allocating testing resources:
|
|
|
48
36
|
- Allocating limited testing time
|
|
49
37
|
- Justifying test coverage decisions
|
|
50
38
|
|
|
51
|
-
### Risk
|
|
52
|
-
```
|
|
53
|
-
Risk Score = Probability (1-5) × Impact (1-5)
|
|
54
|
-
```
|
|
55
|
-
|
|
39
|
+
### Effort Allocation by Risk Score
|
|
56
40
|
| Score | Priority | Effort | Action |
|
|
57
41
|
|-------|----------|--------|--------|
|
|
58
42
|
| 20-25 | Critical | 60% | Comprehensive testing, multiple techniques |
|
|
@@ -60,37 +44,9 @@ Risk Score = Probability (1-5) × Impact (1-5)
|
|
|
60
44
|
| 6-11 | Medium | 10% | Standard testing, basic automation |
|
|
61
45
|
| 1-5 | Low | 5% | Smoke test, exploratory only |
|
|
62
46
|
|
|
63
|
-
### Probability Factors
|
|
64
|
-
| Factor | Low (1) | Medium (3) | High (5) |
|
|
65
|
-
|--------|---------|------------|----------|
|
|
66
|
-
| Complexity | Simple CRUD | Business logic | Algorithms, integrations |
|
|
67
|
-
| Change Rate | Stable 6+ months | Monthly changes | Weekly/daily changes |
|
|
68
|
-
| Developer Experience | Senior, domain expert | Mid-level | Junior, new to codebase |
|
|
69
|
-
| Technical Debt | Clean code | Some debt | Legacy, no tests |
|
|
70
|
-
|
|
71
|
-
### Impact Factors
|
|
72
|
-
| Factor | Low (1) | Medium (3) | High (5) |
|
|
73
|
-
|--------|---------|------------|----------|
|
|
74
|
-
| Users Affected | Admin only | Department | All users |
|
|
75
|
-
| Revenue | None | Indirect | Direct (checkout) |
|
|
76
|
-
| Safety | Convenience | Data loss | Physical harm |
|
|
77
|
-
| Reputation | Internal | Industry | Public scandal |
|
|
78
|
-
|
|
79
47
|
---
|
|
80
48
|
|
|
81
|
-
##
|
|
82
|
-
|
|
83
|
-
### Step 1: List Features/Components
|
|
84
|
-
```
|
|
85
|
-
Feature | Probability | Impact | Risk | Priority
|
|
86
|
-
--------|-------------|--------|------|----------
|
|
87
|
-
Checkout | 4 | 5 | 20 | Critical
|
|
88
|
-
User Auth | 3 | 5 | 15 | High
|
|
89
|
-
Admin Panel | 2 | 2 | 4 | Low
|
|
90
|
-
Search | 3 | 3 | 9 | Medium
|
|
91
|
-
```
|
|
92
|
-
|
|
93
|
-
### Step 2: Apply Test Depth
|
|
49
|
+
## Apply Test Depth by Risk
|
|
94
50
|
```typescript
|
|
95
51
|
await Task("Risk-Based Test Generation", {
|
|
96
52
|
critical: {
|
|
@@ -207,6 +163,4 @@ const riskFleet = await FleetManager.coordinate({
|
|
|
207
163
|
|
|
208
164
|
## Remember
|
|
209
165
|
|
|
210
|
-
**Risk = Probability × Impact.** Test where bugs hurt most. Critical gets 60%, low gets 5%. Risk is dynamic - reassess with new info. Production incidents raise risk scores.
|
|
211
|
-
|
|
212
166
|
**With Agents:** Agents calculate risk using ML on historical data, select risk-appropriate tests, and adjust scores from production feedback. Use agents to maintain dynamic risk profiles at scale.
|
|
@@ -295,6 +295,10 @@ API keys in code → **Environment variables, secret management**
|
|
|
295
295
|
|
|
296
296
|
---
|
|
297
297
|
|
|
298
|
+
## Compliance & Agent CLI
|
|
299
|
+
|
|
300
|
+
For v3 agent-specific commands (`aqe security ...`), SAST/DAST scanning code, compliance audits (SOC2/GDPR/HIPAA), secret detection, and security gates, see [references/compliance-agent-commands.md](references/compliance-agent-commands.md).
|
|
301
|
+
|
|
298
302
|
## Related Skills
|
|
299
303
|
- [agentic-quality-engineering](../agentic-quality-engineering/) - Security with agents
|
|
300
304
|
- [api-testing-patterns](../api-testing-patterns/) - API security testing
|
|
@@ -309,3 +313,29 @@ API keys in code → **Environment variables, secret management**
|
|
|
309
313
|
**Test continuously:** Security testing is ongoing, not one-time.
|
|
310
314
|
|
|
311
315
|
**With Agents:** Agents automate vulnerability scanning, track remediation, and validate fixes. Use agents to maintain security posture at scale.
|
|
316
|
+
|
|
317
|
+
## Run History
|
|
318
|
+
|
|
319
|
+
After each security scan, append results to `run-history.json` in this skill directory:
|
|
320
|
+
```bash
|
|
321
|
+
node -e "
|
|
322
|
+
const fs = require('fs');
|
|
323
|
+
const h = JSON.parse(fs.readFileSync('.claude/skills/security-testing/run-history.json'));
|
|
324
|
+
h.runs.push({date: new Date().toISOString().split('T')[0], scan_types: ['sast','deps'], findings: {critical: 0, high: 0, medium: 0, low: 0}});
|
|
325
|
+
fs.writeFileSync('.claude/skills/security-testing/run-history.json', JSON.stringify(h, null, 2));
|
|
326
|
+
"
|
|
327
|
+
```
|
|
328
|
+
Read `run-history.json` before each scan — track finding count by severity over time. Alert if critical findings increase.
|
|
329
|
+
|
|
330
|
+
## Skill Composition
|
|
331
|
+
|
|
332
|
+
- **During code review** → Use with `/code-review-quality` for combined quality + security review
|
|
333
|
+
- **Validate findings** → Use `/pentest-validation` to prove exploitability
|
|
334
|
+
- **Compliance** → Use `/compliance-testing` for regulatory requirements
|
|
335
|
+
|
|
336
|
+
## Gotchas
|
|
337
|
+
|
|
338
|
+
- `npm audit` may report false positives for dev dependencies — filter with `--omit=dev` for production-relevant results
|
|
339
|
+
- Agent may skip DAST in favor of faster SAST-only scans — explicitly request both if needed
|
|
340
|
+
- security-compliance domain has 100% success rate — use as model for other skill reliability
|
|
341
|
+
- When scanning dependencies, check both direct and transitive — `npm audit --all` catches nested vulnerabilities
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "./config-schema.json",
|
|
3
|
+
"_description": "Security Testing configuration. Auto-created on first run. Edit to customize.",
|
|
4
|
+
"severity_threshold": "high",
|
|
5
|
+
"scan_types": ["sast", "deps"],
|
|
6
|
+
"owasp_version": "2021",
|
|
7
|
+
"options": {
|
|
8
|
+
"includeDevDependencies": false,
|
|
9
|
+
"autoFix": false,
|
|
10
|
+
"reportFormat": "json"
|
|
11
|
+
},
|
|
12
|
+
"_setupPrompt": "If severity_threshold is default, ask: 'What minimum severity should block deployment? (critical/high/medium/low)'. If scan_types only has defaults, ask: 'Which scan types to run? (sast/dast/deps/secrets — comma-separated)'."
|
|
13
|
+
}
|
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
# Security Testing — Compliance & Agent CLI Commands
|
|
2
|
+
|
|
3
|
+
Merged from `qe-security-compliance`. Use these for v3 agent-specific security/compliance capabilities.
|
|
4
|
+
|
|
5
|
+
## AQE CLI Commands
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
# Full security scan
|
|
9
|
+
aqe security scan --scope src/ --checks all
|
|
10
|
+
|
|
11
|
+
# Vulnerability check
|
|
12
|
+
aqe security vulns --dependencies --severity critical,high
|
|
13
|
+
|
|
14
|
+
# Compliance audit
|
|
15
|
+
aqe security compliance --standard soc2 --output report.html
|
|
16
|
+
|
|
17
|
+
# OWASP check
|
|
18
|
+
aqe security owasp --top-10 --scope src/
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
## Agent Workflow
|
|
22
|
+
|
|
23
|
+
```typescript
|
|
24
|
+
// Security audit
|
|
25
|
+
Task("Security audit", `
|
|
26
|
+
Perform comprehensive security audit:
|
|
27
|
+
- SAST scan for code vulnerabilities
|
|
28
|
+
- Dependency vulnerability check
|
|
29
|
+
- Secret detection in code and configs
|
|
30
|
+
- OWASP Top 10 validation
|
|
31
|
+
Generate security report with remediation steps.
|
|
32
|
+
`, "qe-security-auditor")
|
|
33
|
+
|
|
34
|
+
// Compliance validation
|
|
35
|
+
Task("SOC2 compliance check", `
|
|
36
|
+
Validate SOC2 compliance requirements:
|
|
37
|
+
- Access control verification
|
|
38
|
+
- Encryption validation
|
|
39
|
+
- Audit logging check
|
|
40
|
+
- Data retention compliance
|
|
41
|
+
Generate compliance evidence report.
|
|
42
|
+
`, "qe-compliance-checker")
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
## SAST Scanning
|
|
46
|
+
|
|
47
|
+
```typescript
|
|
48
|
+
await securityScanner.staticAnalysis({
|
|
49
|
+
scope: 'src/**/*.ts',
|
|
50
|
+
checks: ['sql-injection', 'xss', 'command-injection', 'path-traversal', 'insecure-crypto', 'hardcoded-secrets'],
|
|
51
|
+
rules: 'owasp-top-10',
|
|
52
|
+
severity: ['critical', 'high', 'medium']
|
|
53
|
+
});
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
## Dependency Scanning
|
|
57
|
+
|
|
58
|
+
```typescript
|
|
59
|
+
await securityScanner.dependencyCheck({
|
|
60
|
+
sources: ['package.json', 'package-lock.json'],
|
|
61
|
+
checks: { knownVulnerabilities: true, outdatedPackages: true, licenseCompliance: true, supplyChainRisk: true },
|
|
62
|
+
severity: ['critical', 'high'],
|
|
63
|
+
autoFix: { enabled: true, dryRun: false }
|
|
64
|
+
});
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
## Compliance Audit
|
|
68
|
+
|
|
69
|
+
```typescript
|
|
70
|
+
await complianceChecker.audit({
|
|
71
|
+
standards: ['SOC2', 'GDPR', 'HIPAA'],
|
|
72
|
+
scope: { code: 'src/', configs: 'config/', infrastructure: 'terraform/' },
|
|
73
|
+
output: { gaps: true, evidence: true, recommendations: true }
|
|
74
|
+
});
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
## Secret Detection
|
|
78
|
+
|
|
79
|
+
```typescript
|
|
80
|
+
await securityScanner.detectSecrets({
|
|
81
|
+
scope: ['.', 'config/', '.env*'],
|
|
82
|
+
patterns: ['api-keys', 'passwords', 'tokens', 'private-keys', 'connection-strings'],
|
|
83
|
+
exclude: ['*.test.ts', 'mocks/'],
|
|
84
|
+
action: { onDetect: 'block', notify: ['security-team'] }
|
|
85
|
+
});
|
|
86
|
+
```
|
|
87
|
+
|
|
88
|
+
## Security Gates
|
|
89
|
+
|
|
90
|
+
```yaml
|
|
91
|
+
security_gates:
|
|
92
|
+
block_merge:
|
|
93
|
+
- critical_vulnerabilities > 0
|
|
94
|
+
- high_vulnerabilities > 2
|
|
95
|
+
- secrets_detected > 0
|
|
96
|
+
- compliance_failures > 0
|
|
97
|
+
warn:
|
|
98
|
+
- medium_vulnerabilities > 5
|
|
99
|
+
- outdated_dependencies > 10
|
|
100
|
+
enforce:
|
|
101
|
+
- signed_commits: required
|
|
102
|
+
- code_review: required
|
|
103
|
+
- security_scan: required
|
|
104
|
+
```
|
|
105
|
+
|
|
106
|
+
## Compliance Standards Coverage
|
|
107
|
+
|
|
108
|
+
| Standard | Scope | Auto-Check |
|
|
109
|
+
|----------|-------|------------|
|
|
110
|
+
| SOC2 | Security controls | Partial |
|
|
111
|
+
| GDPR | Data privacy | Partial |
|
|
112
|
+
| HIPAA | Health data | Partial |
|
|
113
|
+
| PCI-DSS | Payment data | Yes |
|
|
114
|
+
| ISO 27001 | InfoSec | Partial |
|
|
115
|
+
|
|
116
|
+
## Security Report Interface
|
|
117
|
+
|
|
118
|
+
```typescript
|
|
119
|
+
interface SecurityReport {
|
|
120
|
+
summary: { score: number; critical: number; high: number; medium: number; low: number };
|
|
121
|
+
vulnerabilities: { id: string; type: string; severity: string; location: string; description: string; remediation: string; cwe: string; owasp: string }[];
|
|
122
|
+
dependencies: { vulnerable: number; outdated: number; details: DependencyVuln[] };
|
|
123
|
+
compliance: { standard: string; status: 'compliant' | 'non-compliant' | 'partial'; gaps: ComplianceGap[]; evidence: Evidence[] }[];
|
|
124
|
+
secrets: { detected: number; locations: SecretLocation[] };
|
|
125
|
+
}
|
|
126
|
+
```
|
|
127
|
+
|
|
128
|
+
## Coordination
|
|
129
|
+
|
|
130
|
+
**Primary Agents**: qe-security-auditor, qe-security-scanner, qe-compliance-checker
|
|
131
|
+
**Coordinator**: qe-security-coordinator
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
# OWASP Top 10 (2021) Quick Reference
|
|
2
|
+
|
|
3
|
+
## A01: Broken Access Control
|
|
4
|
+
- Test: Horizontal privilege escalation (user A accessing user B's data)
|
|
5
|
+
- Test: Vertical privilege escalation (user accessing admin endpoints)
|
|
6
|
+
- Test: IDOR on every object reference (change IDs in URLs/params)
|
|
7
|
+
- Test: Missing function-level access control on API endpoints
|
|
8
|
+
- Common miss: Admin APIs accessible without auth check
|
|
9
|
+
|
|
10
|
+
## A02: Cryptographic Failures
|
|
11
|
+
- Test: TLS version (require 1.2+, reject 1.0/1.1)
|
|
12
|
+
- Test: Password hashing (bcrypt/argon2, never MD5/SHA1)
|
|
13
|
+
- Test: Sensitive data in URLs/logs/error messages
|
|
14
|
+
- Test: Cookie flags (Secure, HttpOnly, SameSite)
|
|
15
|
+
- Common miss: API keys in client-side JavaScript
|
|
16
|
+
|
|
17
|
+
## A03: Injection
|
|
18
|
+
- Test: SQL injection on all input fields (parameterized queries?)
|
|
19
|
+
- Test: XSS (reflected, stored, DOM-based) — try `<script>alert(1)</script>` and encoded variants
|
|
20
|
+
- Test: Command injection on any server-side exec
|
|
21
|
+
- Test: NoSQL injection on MongoDB queries
|
|
22
|
+
- Common miss: Second-order SQL injection via stored data
|
|
23
|
+
|
|
24
|
+
## A04: Insecure Design
|
|
25
|
+
- Test: Business logic flaws (negative quantities, race conditions)
|
|
26
|
+
- Test: Missing rate limiting on sensitive endpoints
|
|
27
|
+
- Test: Lack of resource quotas
|
|
28
|
+
- Common miss: Discount codes applied multiple times
|
|
29
|
+
|
|
30
|
+
## A05: Security Misconfiguration
|
|
31
|
+
- Test: Default credentials on all services
|
|
32
|
+
- Test: Unnecessary HTTP methods (OPTIONS, TRACE)
|
|
33
|
+
- Test: Directory listing enabled
|
|
34
|
+
- Test: Stack traces in error responses
|
|
35
|
+
- Common miss: S3 bucket with public ACL
|
|
36
|
+
|
|
37
|
+
## A06: Vulnerable Components
|
|
38
|
+
- Test: `npm audit` / `snyk test` for known CVEs
|
|
39
|
+
- Test: Outdated framework versions
|
|
40
|
+
- Test: Abandoned dependencies (no updates in 2+ years)
|
|
41
|
+
- Common miss: Transitive dependencies with critical CVEs
|
|
42
|
+
|
|
43
|
+
## A07: Auth Failures
|
|
44
|
+
- Test: Credential stuffing protection (rate limiting, captcha)
|
|
45
|
+
- Test: Session fixation (new session ID after login)
|
|
46
|
+
- Test: JWT validation (algorithm confusion, expiry, signature)
|
|
47
|
+
- Test: MFA bypass attempts
|
|
48
|
+
- Common miss: Password reset token doesn't expire
|
|
49
|
+
|
|
50
|
+
## A08: Software/Data Integrity
|
|
51
|
+
- Test: CI/CD pipeline integrity (signed commits, reviewed PRs)
|
|
52
|
+
- Test: Dependency integrity (lock files, SRI hashes)
|
|
53
|
+
- Test: Deserialization attacks
|
|
54
|
+
- Common miss: Auto-update mechanism without signature verification
|
|
55
|
+
|
|
56
|
+
## A09: Logging/Monitoring Failures
|
|
57
|
+
- Test: Failed login attempts logged with IP
|
|
58
|
+
- Test: Sensitive data NOT in logs (passwords, tokens)
|
|
59
|
+
- Test: Log injection prevention
|
|
60
|
+
- Common miss: No alerting on repeated auth failures
|
|
61
|
+
|
|
62
|
+
## A10: SSRF
|
|
63
|
+
- Test: URL parameters that fetch external resources
|
|
64
|
+
- Test: Internal network access via URL manipulation
|
|
65
|
+
- Test: Cloud metadata endpoint access (169.254.169.254)
|
|
66
|
+
- Common miss: Redirect chains bypassing allowlists
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"_description": "Security testing run history. Append after each scan. Claude reads this to track finding severity trends.",
|
|
3
|
+
"_format": "Each entry: {date, scope, scan_types, findings: {critical, high, medium, low, info}, new_since_last, fixed_since_last}",
|
|
4
|
+
"_instructions": "After running security scan, append results here. Track finding count by severity over time. Alert if critical findings increase.",
|
|
5
|
+
"runs": []
|
|
6
|
+
}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
# Security Assessment Report
|
|
2
|
+
|
|
3
|
+
**Project**: {{project_name}}
|
|
4
|
+
**Date**: {{date}}
|
|
5
|
+
**Assessed by**: {{assessor}}
|
|
6
|
+
**Scope**: {{scope_description}}
|
|
7
|
+
|
|
8
|
+
## Executive Summary
|
|
9
|
+
|
|
10
|
+
| Severity | Count | Fixed | Remaining |
|
|
11
|
+
|----------|-------|-------|-----------|
|
|
12
|
+
| Critical | | | |
|
|
13
|
+
| High | | | |
|
|
14
|
+
| Medium | | | |
|
|
15
|
+
| Low | | | |
|
|
16
|
+
| Info | | | |
|
|
17
|
+
|
|
18
|
+
**Overall Risk Level**: {{risk_level}}
|
|
19
|
+
**Recommendation**: {{ship/hold/remediate}}
|
|
20
|
+
|
|
21
|
+
## Findings
|
|
22
|
+
|
|
23
|
+
### Finding 1: {{title}}
|
|
24
|
+
- **Severity**: {{critical/high/medium/low}}
|
|
25
|
+
- **OWASP Category**: {{A01-A10}}
|
|
26
|
+
- **Location**: {{file:line or endpoint}}
|
|
27
|
+
- **Description**: {{what was found}}
|
|
28
|
+
- **Impact**: {{what an attacker could do}}
|
|
29
|
+
- **Reproduction**:
|
|
30
|
+
1. {{step 1}}
|
|
31
|
+
2. {{step 2}}
|
|
32
|
+
- **Remediation**: {{how to fix}}
|
|
33
|
+
- **Status**: {{open/fixed/accepted}}
|
|
34
|
+
|
|
35
|
+
## Tools Used
|
|
36
|
+
- [ ] npm audit
|
|
37
|
+
- [ ] Semgrep SAST
|
|
38
|
+
- [ ] OWASP ZAP DAST
|
|
39
|
+
- [ ] Manual review
|
|
40
|
+
- [ ] Secrets scanning
|
|
41
|
+
|
|
42
|
+
## Sign-off
|
|
43
|
+
- [ ] All critical/high findings addressed or accepted with risk justification
|
|
44
|
+
- [ ] Remediation verified with re-test
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: security-watch
|
|
3
|
+
description: "Use when working on security-sensitive code to catch secrets, eval(), innerHTML, and other dangerous patterns before they're written. Activate with /security-watch for real-time security scanning."
|
|
4
|
+
user-invocable: true
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Security Watch Mode
|
|
8
|
+
|
|
9
|
+
When activated, scans every file write for common security anti-patterns and blocks dangerous code from being committed.
|
|
10
|
+
|
|
11
|
+
## What It Does
|
|
12
|
+
|
|
13
|
+
Flags or blocks writes containing:
|
|
14
|
+
- **Secrets**: API keys, passwords, tokens, private keys in source code
|
|
15
|
+
- **Dangerous functions**: `eval()`, `Function()`, `innerHTML`, `dangerouslySetInnerHTML`
|
|
16
|
+
- **Injection vectors**: Unsanitized template literals in SQL/shell commands
|
|
17
|
+
- **Insecure config**: `http://` URLs, disabled TLS verification, `*` CORS origins
|
|
18
|
+
|
|
19
|
+
## Activation
|
|
20
|
+
|
|
21
|
+
```
|
|
22
|
+
/security-watch
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
## Hook Configuration
|
|
26
|
+
|
|
27
|
+
```json
|
|
28
|
+
{
|
|
29
|
+
"hooks": {
|
|
30
|
+
"PreToolUse": [
|
|
31
|
+
{
|
|
32
|
+
"matcher": "Write|Edit",
|
|
33
|
+
"hook": ".claude/skills/security-watch/scripts/scan-security.sh"
|
|
34
|
+
}
|
|
35
|
+
]
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
## Detection Patterns
|
|
41
|
+
|
|
42
|
+
```bash
|
|
43
|
+
#!/bin/bash
|
|
44
|
+
# scan-security.sh
|
|
45
|
+
CONTENT="$1"
|
|
46
|
+
ISSUES=0
|
|
47
|
+
|
|
48
|
+
# Secrets detection
|
|
49
|
+
SECRET_PATTERNS=(
|
|
50
|
+
'AKIA[0-9A-Z]{16}' # AWS Access Key
|
|
51
|
+
'sk-[a-zA-Z0-9]{48}' # OpenAI API Key
|
|
52
|
+
'ghp_[a-zA-Z0-9]{36}' # GitHub Personal Token
|
|
53
|
+
'password\s*[:=]\s*["\x27][^"\x27]+' # Hardcoded passwords
|
|
54
|
+
'BEGIN (RSA |EC )?PRIVATE KEY' # Private keys
|
|
55
|
+
'sk_live_[a-zA-Z0-9]+' # Stripe secret key
|
|
56
|
+
)
|
|
57
|
+
|
|
58
|
+
for pattern in "${SECRET_PATTERNS[@]}"; do
|
|
59
|
+
if echo "$CONTENT" | grep -qP "$pattern"; then
|
|
60
|
+
echo "BLOCKED: Potential secret detected matching pattern: $pattern"
|
|
61
|
+
ISSUES=$((ISSUES + 1))
|
|
62
|
+
fi
|
|
63
|
+
done
|
|
64
|
+
|
|
65
|
+
# Dangerous functions
|
|
66
|
+
DANGER_PATTERNS=(
|
|
67
|
+
'\beval\s*\('
|
|
68
|
+
'\bFunction\s*\('
|
|
69
|
+
'\.innerHTML\s*='
|
|
70
|
+
'dangerouslySetInnerHTML'
|
|
71
|
+
'child_process.*exec\('
|
|
72
|
+
'\$\{.*\}.*(?:SELECT|INSERT|UPDATE|DELETE)'
|
|
73
|
+
)
|
|
74
|
+
|
|
75
|
+
for pattern in "${DANGER_PATTERNS[@]}"; do
|
|
76
|
+
if echo "$CONTENT" | grep -qP "$pattern"; then
|
|
77
|
+
echo "WARNING: Dangerous pattern detected: $pattern"
|
|
78
|
+
ISSUES=$((ISSUES + 1))
|
|
79
|
+
fi
|
|
80
|
+
done
|
|
81
|
+
|
|
82
|
+
if [ $ISSUES -gt 0 ]; then
|
|
83
|
+
echo "Found $ISSUES security issues. Review before proceeding."
|
|
84
|
+
exit 1
|
|
85
|
+
fi
|
|
86
|
+
```
|
|
87
|
+
|
|
88
|
+
## Gotchas
|
|
89
|
+
|
|
90
|
+
- False positives on test fixtures that intentionally contain patterns like `eval()` — use `// security-watch:ignore` comment
|
|
91
|
+
- Base64-encoded secrets won't be caught — this scans for plaintext patterns only
|
|
92
|
+
- Template literal injection detection has false positives on safe string interpolation — review warnings carefully
|
|
93
|
+
- This is a first line of defense, not a replacement for proper security review
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
#!/bin/bash
|
|
2
|
+
# scan-security.sh — Security Watch hook
|
|
3
|
+
# Scans file content for security anti-patterns before writes.
|
|
4
|
+
# Called by PreToolUse hook on Write/Edit.
|
|
5
|
+
|
|
6
|
+
CONTENT="$1"
|
|
7
|
+
ISSUES=0
|
|
8
|
+
|
|
9
|
+
if [ -z "$CONTENT" ]; then
|
|
10
|
+
CONTENT=$(cat)
|
|
11
|
+
fi
|
|
12
|
+
|
|
13
|
+
# Secret patterns
|
|
14
|
+
for pattern in 'AKIA[0-9A-Z]{16}' 'sk-[a-zA-Z0-9]{48}' 'ghp_[a-zA-Z0-9]{36}' 'BEGIN (RSA |EC )?PRIVATE KEY' 'sk_live_[a-zA-Z0-9]+'; do
|
|
15
|
+
if echo "$CONTENT" | grep -qP "$pattern" 2>/dev/null; then
|
|
16
|
+
echo "BLOCKED: Potential secret detected (pattern: $pattern)"
|
|
17
|
+
ISSUES=$((ISSUES + 1))
|
|
18
|
+
fi
|
|
19
|
+
done
|
|
20
|
+
|
|
21
|
+
# Hardcoded password patterns
|
|
22
|
+
if echo "$CONTENT" | grep -qP 'password\s*[:=]\s*["\x27][^"\x27]{3,}' 2>/dev/null; then
|
|
23
|
+
echo "BLOCKED: Possible hardcoded password detected"
|
|
24
|
+
ISSUES=$((ISSUES + 1))
|
|
25
|
+
fi
|
|
26
|
+
|
|
27
|
+
# Dangerous function patterns
|
|
28
|
+
for pattern in '\beval\s*\(' '\bFunction\s*\(' '\.innerHTML\s*=' 'dangerouslySetInnerHTML'; do
|
|
29
|
+
if echo "$CONTENT" | grep -qP "$pattern" 2>/dev/null; then
|
|
30
|
+
echo "WARNING: Dangerous pattern: $pattern"
|
|
31
|
+
ISSUES=$((ISSUES + 1))
|
|
32
|
+
fi
|
|
33
|
+
done
|
|
34
|
+
|
|
35
|
+
# SQL injection risk
|
|
36
|
+
if echo "$CONTENT" | grep -qP '\$\{.*\}.*(SELECT|INSERT|UPDATE|DELETE|DROP)' 2>/dev/null; then
|
|
37
|
+
echo "WARNING: Possible SQL injection — template literal in SQL query"
|
|
38
|
+
ISSUES=$((ISSUES + 1))
|
|
39
|
+
fi
|
|
40
|
+
|
|
41
|
+
if [ $ISSUES -gt 0 ]; then
|
|
42
|
+
echo "Found $ISSUES security issue(s). Review before proceeding."
|
|
43
|
+
exit 1
|
|
44
|
+
fi
|
|
45
|
+
|
|
46
|
+
exit 0
|