forgecraft-mcp 1.2.0 → 1.3.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (136) hide show
  1. package/README.md +525 -525
  2. package/dist/cli/help.js +44 -44
  3. package/dist/registry/renderer-skeletons.js +92 -92
  4. package/dist/shared/gs-score-logger.js +6 -6
  5. package/dist/tools/add-module.js +123 -123
  6. package/dist/tools/advice-registry.js +18 -18
  7. package/dist/tools/check-cascade-report.js +64 -64
  8. package/dist/tools/configure-mcp.d.ts +3 -0
  9. package/dist/tools/configure-mcp.d.ts.map +1 -1
  10. package/dist/tools/configure-mcp.js +10 -0
  11. package/dist/tools/configure-mcp.js.map +1 -1
  12. package/dist/tools/forgecraft-dispatch.d.ts.map +1 -1
  13. package/dist/tools/forgecraft-dispatch.js +3 -0
  14. package/dist/tools/forgecraft-dispatch.js.map +1 -1
  15. package/dist/tools/forgecraft-schema-params.d.ts +9 -0
  16. package/dist/tools/forgecraft-schema-params.d.ts.map +1 -1
  17. package/dist/tools/forgecraft-schema-params.js +21 -0
  18. package/dist/tools/forgecraft-schema-params.js.map +1 -1
  19. package/dist/tools/forgecraft-schema.d.ts +9 -0
  20. package/dist/tools/forgecraft-schema.d.ts.map +1 -1
  21. package/dist/tools/refresh-output.js +14 -14
  22. package/dist/tools/scaffold-spec-stubs.js +115 -115
  23. package/dist/tools/scaffold-templates.js +62 -62
  24. package/dist/tools/setup-artifact-writers.d.ts +30 -0
  25. package/dist/tools/setup-artifact-writers.d.ts.map +1 -1
  26. package/dist/tools/setup-artifact-writers.js +120 -8
  27. package/dist/tools/setup-artifact-writers.js.map +1 -1
  28. package/dist/tools/setup-phase1.d.ts +3 -0
  29. package/dist/tools/setup-phase1.d.ts.map +1 -1
  30. package/dist/tools/setup-phase1.js +79 -35
  31. package/dist/tools/setup-phase1.js.map +1 -1
  32. package/dist/tools/setup-phase2.d.ts +2 -0
  33. package/dist/tools/setup-phase2.d.ts.map +1 -1
  34. package/dist/tools/setup-phase2.js +10 -1
  35. package/dist/tools/setup-phase2.js.map +1 -1
  36. package/dist/tools/setup-project.d.ts +18 -0
  37. package/dist/tools/setup-project.d.ts.map +1 -1
  38. package/dist/tools/setup-project.js +77 -1
  39. package/dist/tools/setup-project.js.map +1 -1
  40. package/dist/tools/spec-parser-tags.d.ts +9 -0
  41. package/dist/tools/spec-parser-tags.d.ts.map +1 -1
  42. package/dist/tools/spec-parser-tags.js +92 -0
  43. package/dist/tools/spec-parser-tags.js.map +1 -1
  44. package/package.json +89 -86
  45. package/templates/analytics/instructions.yaml +37 -37
  46. package/templates/analytics/mcp-servers.yaml +11 -11
  47. package/templates/analytics/structure.yaml +25 -25
  48. package/templates/api/instructions.yaml +231 -231
  49. package/templates/api/mcp-servers.yaml +22 -13
  50. package/templates/api/nfr.yaml +23 -23
  51. package/templates/api/review.yaml +103 -103
  52. package/templates/api/structure.yaml +34 -34
  53. package/templates/api/verification.yaml +132 -132
  54. package/templates/cli/instructions.yaml +31 -31
  55. package/templates/cli/mcp-servers.yaml +11 -11
  56. package/templates/cli/review.yaml +53 -53
  57. package/templates/cli/structure.yaml +16 -16
  58. package/templates/data-lineage/instructions.yaml +28 -28
  59. package/templates/data-lineage/mcp-servers.yaml +22 -22
  60. package/templates/data-pipeline/instructions.yaml +84 -84
  61. package/templates/data-pipeline/mcp-servers.yaml +13 -13
  62. package/templates/data-pipeline/nfr.yaml +39 -39
  63. package/templates/data-pipeline/structure.yaml +23 -23
  64. package/templates/fintech/hooks.yaml +55 -55
  65. package/templates/fintech/instructions.yaml +112 -112
  66. package/templates/fintech/mcp-servers.yaml +13 -13
  67. package/templates/fintech/nfr.yaml +46 -46
  68. package/templates/fintech/playbook.yaml +210 -210
  69. package/templates/fintech/verification.yaml +239 -239
  70. package/templates/game/instructions.yaml +289 -289
  71. package/templates/game/mcp-servers.yaml +38 -38
  72. package/templates/game/nfr.yaml +64 -64
  73. package/templates/game/playbook.yaml +214 -214
  74. package/templates/game/review.yaml +97 -97
  75. package/templates/game/structure.yaml +67 -67
  76. package/templates/game/verification.yaml +174 -174
  77. package/templates/healthcare/instructions.yaml +42 -42
  78. package/templates/healthcare/mcp-servers.yaml +13 -13
  79. package/templates/healthcare/nfr.yaml +47 -47
  80. package/templates/hipaa/instructions.yaml +41 -41
  81. package/templates/hipaa/mcp-servers.yaml +13 -13
  82. package/templates/infra/instructions.yaml +104 -104
  83. package/templates/infra/mcp-servers.yaml +20 -20
  84. package/templates/infra/nfr.yaml +46 -46
  85. package/templates/infra/review.yaml +65 -65
  86. package/templates/infra/structure.yaml +25 -25
  87. package/templates/library/instructions.yaml +36 -36
  88. package/templates/library/mcp-servers.yaml +20 -20
  89. package/templates/library/review.yaml +56 -56
  90. package/templates/library/structure.yaml +19 -19
  91. package/templates/medallion-architecture/instructions.yaml +41 -41
  92. package/templates/medallion-architecture/mcp-servers.yaml +22 -22
  93. package/templates/ml/instructions.yaml +85 -85
  94. package/templates/ml/mcp-servers.yaml +11 -11
  95. package/templates/ml/nfr.yaml +39 -39
  96. package/templates/ml/structure.yaml +25 -25
  97. package/templates/ml/verification.yaml +156 -156
  98. package/templates/mobile/instructions.yaml +44 -44
  99. package/templates/mobile/mcp-servers.yaml +11 -11
  100. package/templates/mobile/nfr.yaml +49 -49
  101. package/templates/mobile/structure.yaml +27 -27
  102. package/templates/mobile/verification.yaml +121 -121
  103. package/templates/observability-xray/instructions.yaml +40 -40
  104. package/templates/observability-xray/mcp-servers.yaml +15 -15
  105. package/templates/realtime/instructions.yaml +42 -42
  106. package/templates/realtime/mcp-servers.yaml +13 -13
  107. package/templates/soc2/instructions.yaml +41 -41
  108. package/templates/soc2/mcp-servers.yaml +24 -24
  109. package/templates/social/instructions.yaml +43 -43
  110. package/templates/social/mcp-servers.yaml +24 -24
  111. package/templates/state-machine/instructions.yaml +42 -42
  112. package/templates/state-machine/mcp-servers.yaml +11 -11
  113. package/templates/tools-registry.yaml +164 -164
  114. package/templates/universal/hooks.yaml +531 -531
  115. package/templates/universal/instructions.yaml +1692 -1692
  116. package/templates/universal/mcp-servers.yaml +50 -50
  117. package/templates/universal/nfr.yaml +197 -197
  118. package/templates/universal/reference.yaml +326 -326
  119. package/templates/universal/review.yaml +204 -204
  120. package/templates/universal/skills.yaml +262 -262
  121. package/templates/universal/structure.yaml +67 -67
  122. package/templates/universal/verification.yaml +416 -416
  123. package/templates/web-react/hooks.yaml +44 -44
  124. package/templates/web-react/instructions.yaml +207 -207
  125. package/templates/web-react/mcp-servers.yaml +20 -20
  126. package/templates/web-react/nfr.yaml +27 -27
  127. package/templates/web-react/review.yaml +94 -94
  128. package/templates/web-react/structure.yaml +46 -46
  129. package/templates/web-react/verification.yaml +126 -126
  130. package/templates/web-static/instructions.yaml +115 -115
  131. package/templates/web-static/mcp-servers.yaml +20 -20
  132. package/templates/web3/instructions.yaml +44 -44
  133. package/templates/web3/mcp-servers.yaml +11 -11
  134. package/templates/web3/verification.yaml +159 -159
  135. package/templates/zero-trust/instructions.yaml +41 -41
  136. package/templates/zero-trust/mcp-servers.yaml +15 -15
@@ -1,164 +1,164 @@
1
- # Tools Registry — Recommended tools by process + language/tag
2
- # Gates reference process IDs. This registry says what tool to use for each process
3
- # given the project's tech stack. Language-agnostic gates + stack-specific tool recommendations.
4
- # This is a RECOMMENDATION, not a requirement. Teams choose their own tools.
5
- version: "1"
6
-
7
- processes:
8
- - id: mutation-testing
9
- description: "Verify test quality by injecting synthetic bugs and checking that tests catch them"
10
- gsProperty: verifiable
11
- phase: pre-release
12
- recommended:
13
- - stack: ["TYPESCRIPT", "JAVASCRIPT"]
14
- tool: stryker
15
- package: "@stryker-mutator/core"
16
- config: stryker.config.json
17
- install: "npm install --save-dev @stryker-mutator/core @stryker-mutator/vitest-runner"
18
- run: "npx stryker run"
19
- threshold: "MSI ≥ 80% on changed files"
20
- - stack: ["PYTHON"]
21
- tool: mutmut
22
- package: mutmut
23
- config: "setup.cfg [mutmut] section"
24
- install: "pip install mutmut"
25
- run: "mutmut run && mutmut results"
26
- threshold: "MSI ≥ 80% on changed files"
27
- - stack: ["JAVA", "KOTLIN"]
28
- tool: pitest
29
- package: "org.pitest:pitest-maven"
30
- config: pom.xml
31
- install: "Add pitest-maven plugin"
32
- run: "mvn test-compile org.pitest:pitest-maven:mutationCoverage"
33
- threshold: "mutation coverage ≥ 80%"
34
- - stack: ["RUST"]
35
- tool: cargo-mutants
36
- package: cargo-mutants
37
- install: "cargo install cargo-mutants"
38
- run: "cargo mutants"
39
- threshold: "All mutants caught or documented as equivalent"
40
- - stack: ["GO"]
41
- tool: gremlins
42
- package: gremlins
43
- install: "go install github.com/go-gremlins/gremlins/cmd/gremlins@latest"
44
- run: "gremlins unleash"
45
- threshold: "MSI ≥ 80%"
46
-
47
- - id: dast-scanning
48
- description: "Dynamic application security testing against a running service"
49
- gsProperty: defended
50
- phase: pre-release
51
- owasp_asvs_level: 2
52
- recommended:
53
- - stack: ["API", "WEB-REACT", "UNIVERSAL"]
54
- tool: owasp-zap
55
- package: "owasp/zap2docker-stable (Docker)"
56
- install: "docker pull owasp/zap2docker-stable"
57
- run: "docker run -t owasp/zap2docker-stable zap-api-scan.py -t <openapi-url> -f openapi"
58
- threshold: "Zero HIGH findings; all MEDIUM triaged"
59
- - stack: ["API"]
60
- tool: nuclei
61
- package: nuclei
62
- install: "go install github.com/projectdiscovery/nuclei/v3/cmd/nuclei@latest"
63
- run: "nuclei -u <target-url> -severity high,critical"
64
- threshold: "Zero HIGH/CRITICAL findings"
65
-
66
- - id: static-analysis
67
- description: "OWASP ASVS Level 1 static security checks run at commit time"
68
- gsProperty: defended
69
- phase: development
70
- owasp_asvs_level: 1
71
- recommended:
72
- - stack: ["TYPESCRIPT", "JAVASCRIPT"]
73
- tool: semgrep
74
- install: "pip install semgrep"
75
- run: "semgrep --config=p/owasp-top-ten ."
76
- threshold: "Zero HIGH findings"
77
- - stack: ["PYTHON"]
78
- tool: bandit
79
- install: "pip install bandit"
80
- run: "bandit -r src/ -ll"
81
- threshold: "Zero HIGH/CRITICAL findings"
82
- - stack: ["JAVA"]
83
- tool: spotbugs
84
- install: "Add spotbugs-maven-plugin"
85
- run: "mvn spotbugs:check"
86
- threshold: "Zero HIGH findings"
87
- - stack: ["GO"]
88
- tool: gosec
89
- install: "go install github.com/securecodewarrior/gosec/v2/cmd/gosec@latest"
90
- run: "gosec ./..."
91
- threshold: "Zero HIGH findings"
92
-
93
- - id: load-testing
94
- description: "Verify system behavior under stated load parameters"
95
- gsProperty: verifiable
96
- phase: pre-release
97
- recommended:
98
- - stack: ["UNIVERSAL"]
99
- tool: k6
100
- install: "brew install k6 / choco install k6 / apt install k6"
101
- run: "k6 run load-test.js"
102
- threshold: "p95 ≤ SLA; error rate < 1%"
103
- - stack: ["PYTHON"]
104
- tool: locust
105
- install: "pip install locust"
106
- run: "locust -f locustfile.py --headless -u <users> -r <spawn-rate>"
107
- threshold: "p95 ≤ SLA; error rate < 1%"
108
- - stack: ["API"]
109
- tool: artillery
110
- install: "npm install -g artillery"
111
- run: "artillery run load-test.yml"
112
- threshold: "p95 ≤ SLA; error rate < 1%"
113
-
114
- - id: dependency-audit
115
- description: "Check direct and transitive dependencies for known CVEs"
116
- gsProperty: defended
117
- phase: development
118
- owasp_asvs_level: 1
119
- recommended:
120
- - stack: ["TYPESCRIPT", "JAVASCRIPT"]
121
- tool: npm-audit
122
- run: "npm audit --audit-level=high"
123
- threshold: "Zero HIGH/CRITICAL"
124
- - stack: ["PYTHON"]
125
- tool: pip-audit
126
- install: "pip install pip-audit"
127
- run: "pip-audit --fail-on-severity high"
128
- threshold: "Zero HIGH/CRITICAL"
129
- - stack: ["RUST"]
130
- tool: cargo-audit
131
- install: "cargo install cargo-audit"
132
- run: "cargo audit"
133
- threshold: "Zero HIGH/CRITICAL"
134
- - stack: ["GO"]
135
- tool: govulncheck
136
- install: "go install golang.org/x/vuln/cmd/govulncheck@latest"
137
- run: "govulncheck ./..."
138
- threshold: "Zero directly-imported vulnerabilities"
139
- - stack: ["JAVA"]
140
- tool: owasp-dependency-check
141
- install: "Add dependency-check-maven plugin"
142
- run: "mvn dependency-check:check -DfailBuildOnCVSS=7"
143
- threshold: "Zero CVSS ≥ 7"
144
-
145
- - id: smoke-testing
146
- description: "Fast verification that critical paths work in a live environment"
147
- gsProperty: executable
148
- phase: deployment
149
- recommended:
150
- - stack: ["API"]
151
- tool: hurl
152
- install: "curl -LO https://github.com/Orange-OpenSource/hurl/releases/latest"
153
- run: "hurl tests/smoke/*.hurl --test"
154
- threshold: "All requests return expected status codes in < 60s total"
155
- - stack: ["API"]
156
- tool: newman
157
- install: "npm install -g newman"
158
- run: "newman run tests/smoke/collection.json"
159
- threshold: "Zero failed requests in < 60s total"
160
- - stack: ["WEB-REACT", "WEB-STATIC"]
161
- tool: playwright
162
- install: "npm install -D @playwright/test && npx playwright install"
163
- run: "npx playwright test tests/smoke/"
164
- threshold: "All smoke scenarios pass in < 60s"
1
+ # Tools Registry — Recommended tools by process + language/tag
2
+ # Gates reference process IDs. This registry says what tool to use for each process
3
+ # given the project's tech stack. Language-agnostic gates + stack-specific tool recommendations.
4
+ # This is a RECOMMENDATION, not a requirement. Teams choose their own tools.
5
+ version: "1"
6
+
7
+ processes:
8
+ - id: mutation-testing
9
+ description: "Verify test quality by injecting synthetic bugs and checking that tests catch them"
10
+ gsProperty: verifiable
11
+ phase: pre-release
12
+ recommended:
13
+ - stack: ["TYPESCRIPT", "JAVASCRIPT"]
14
+ tool: stryker
15
+ package: "@stryker-mutator/core"
16
+ config: stryker.config.json
17
+ install: "npm install --save-dev @stryker-mutator/core @stryker-mutator/vitest-runner"
18
+ run: "npx stryker run"
19
+ threshold: "MSI ≥ 80% on changed files"
20
+ - stack: ["PYTHON"]
21
+ tool: mutmut
22
+ package: mutmut
23
+ config: "setup.cfg [mutmut] section"
24
+ install: "pip install mutmut"
25
+ run: "mutmut run && mutmut results"
26
+ threshold: "MSI ≥ 80% on changed files"
27
+ - stack: ["JAVA", "KOTLIN"]
28
+ tool: pitest
29
+ package: "org.pitest:pitest-maven"
30
+ config: pom.xml
31
+ install: "Add pitest-maven plugin"
32
+ run: "mvn test-compile org.pitest:pitest-maven:mutationCoverage"
33
+ threshold: "mutation coverage ≥ 80%"
34
+ - stack: ["RUST"]
35
+ tool: cargo-mutants
36
+ package: cargo-mutants
37
+ install: "cargo install cargo-mutants"
38
+ run: "cargo mutants"
39
+ threshold: "All mutants caught or documented as equivalent"
40
+ - stack: ["GO"]
41
+ tool: gremlins
42
+ package: gremlins
43
+ install: "go install github.com/go-gremlins/gremlins/cmd/gremlins@latest"
44
+ run: "gremlins unleash"
45
+ threshold: "MSI ≥ 80%"
46
+
47
+ - id: dast-scanning
48
+ description: "Dynamic application security testing against a running service"
49
+ gsProperty: defended
50
+ phase: pre-release
51
+ owasp_asvs_level: 2
52
+ recommended:
53
+ - stack: ["API", "WEB-REACT", "UNIVERSAL"]
54
+ tool: owasp-zap
55
+ package: "owasp/zap2docker-stable (Docker)"
56
+ install: "docker pull owasp/zap2docker-stable"
57
+ run: "docker run -t owasp/zap2docker-stable zap-api-scan.py -t <openapi-url> -f openapi"
58
+ threshold: "Zero HIGH findings; all MEDIUM triaged"
59
+ - stack: ["API"]
60
+ tool: nuclei
61
+ package: nuclei
62
+ install: "go install github.com/projectdiscovery/nuclei/v3/cmd/nuclei@latest"
63
+ run: "nuclei -u <target-url> -severity high,critical"
64
+ threshold: "Zero HIGH/CRITICAL findings"
65
+
66
+ - id: static-analysis
67
+ description: "OWASP ASVS Level 1 static security checks run at commit time"
68
+ gsProperty: defended
69
+ phase: development
70
+ owasp_asvs_level: 1
71
+ recommended:
72
+ - stack: ["TYPESCRIPT", "JAVASCRIPT"]
73
+ tool: semgrep
74
+ install: "pip install semgrep"
75
+ run: "semgrep --config=p/owasp-top-ten ."
76
+ threshold: "Zero HIGH findings"
77
+ - stack: ["PYTHON"]
78
+ tool: bandit
79
+ install: "pip install bandit"
80
+ run: "bandit -r src/ -ll"
81
+ threshold: "Zero HIGH/CRITICAL findings"
82
+ - stack: ["JAVA"]
83
+ tool: spotbugs
84
+ install: "Add spotbugs-maven-plugin"
85
+ run: "mvn spotbugs:check"
86
+ threshold: "Zero HIGH findings"
87
+ - stack: ["GO"]
88
+ tool: gosec
89
+ install: "go install github.com/securecodewarrior/gosec/v2/cmd/gosec@latest"
90
+ run: "gosec ./..."
91
+ threshold: "Zero HIGH findings"
92
+
93
+ - id: load-testing
94
+ description: "Verify system behavior under stated load parameters"
95
+ gsProperty: verifiable
96
+ phase: pre-release
97
+ recommended:
98
+ - stack: ["UNIVERSAL"]
99
+ tool: k6
100
+ install: "brew install k6 / choco install k6 / apt install k6"
101
+ run: "k6 run load-test.js"
102
+ threshold: "p95 ≤ SLA; error rate < 1%"
103
+ - stack: ["PYTHON"]
104
+ tool: locust
105
+ install: "pip install locust"
106
+ run: "locust -f locustfile.py --headless -u <users> -r <spawn-rate>"
107
+ threshold: "p95 ≤ SLA; error rate < 1%"
108
+ - stack: ["API"]
109
+ tool: artillery
110
+ install: "npm install -g artillery"
111
+ run: "artillery run load-test.yml"
112
+ threshold: "p95 ≤ SLA; error rate < 1%"
113
+
114
+ - id: dependency-audit
115
+ description: "Check direct and transitive dependencies for known CVEs"
116
+ gsProperty: defended
117
+ phase: development
118
+ owasp_asvs_level: 1
119
+ recommended:
120
+ - stack: ["TYPESCRIPT", "JAVASCRIPT"]
121
+ tool: npm-audit
122
+ run: "npm audit --audit-level=high"
123
+ threshold: "Zero HIGH/CRITICAL"
124
+ - stack: ["PYTHON"]
125
+ tool: pip-audit
126
+ install: "pip install pip-audit"
127
+ run: "pip-audit --fail-on-severity high"
128
+ threshold: "Zero HIGH/CRITICAL"
129
+ - stack: ["RUST"]
130
+ tool: cargo-audit
131
+ install: "cargo install cargo-audit"
132
+ run: "cargo audit"
133
+ threshold: "Zero HIGH/CRITICAL"
134
+ - stack: ["GO"]
135
+ tool: govulncheck
136
+ install: "go install golang.org/x/vuln/cmd/govulncheck@latest"
137
+ run: "govulncheck ./..."
138
+ threshold: "Zero directly-imported vulnerabilities"
139
+ - stack: ["JAVA"]
140
+ tool: owasp-dependency-check
141
+ install: "Add dependency-check-maven plugin"
142
+ run: "mvn dependency-check:check -DfailBuildOnCVSS=7"
143
+ threshold: "Zero CVSS ≥ 7"
144
+
145
+ - id: smoke-testing
146
+ description: "Fast verification that critical paths work in a live environment"
147
+ gsProperty: executable
148
+ phase: deployment
149
+ recommended:
150
+ - stack: ["API"]
151
+ tool: hurl
152
+ install: "curl -LO https://github.com/Orange-OpenSource/hurl/releases/latest"
153
+ run: "hurl tests/smoke/*.hurl --test"
154
+ threshold: "All requests return expected status codes in < 60s total"
155
+ - stack: ["API"]
156
+ tool: newman
157
+ install: "npm install -g newman"
158
+ run: "newman run tests/smoke/collection.json"
159
+ threshold: "Zero failed requests in < 60s total"
160
+ - stack: ["WEB-REACT", "WEB-STATIC"]
161
+ tool: playwright
162
+ install: "npm install -D @playwright/test && npx playwright install"
163
+ run: "npx playwright test tests/smoke/"
164
+ threshold: "All smoke scenarios pass in < 60s"