forgecraft-mcp 0.2.0 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (110) hide show
  1. package/README.md +25 -5
  2. package/dist/analyzers/language-detector.d.ts +17 -0
  3. package/dist/analyzers/language-detector.d.ts.map +1 -0
  4. package/dist/analyzers/language-detector.js +89 -0
  5. package/dist/analyzers/language-detector.js.map +1 -0
  6. package/dist/analyzers/package-json.d.ts.map +1 -1
  7. package/dist/analyzers/package-json.js +5 -5
  8. package/dist/analyzers/package-json.js.map +1 -1
  9. package/dist/analyzers/project-context.d.ts +23 -0
  10. package/dist/analyzers/project-context.d.ts.map +1 -0
  11. package/dist/analyzers/project-context.js +181 -0
  12. package/dist/analyzers/project-context.js.map +1 -0
  13. package/dist/index.js +6 -3
  14. package/dist/index.js.map +1 -1
  15. package/dist/registry/composer.d.ts +3 -1
  16. package/dist/registry/composer.d.ts.map +1 -1
  17. package/dist/registry/composer.js +28 -0
  18. package/dist/registry/composer.js.map +1 -1
  19. package/dist/registry/loader.d.ts.map +1 -1
  20. package/dist/registry/loader.js +65 -1
  21. package/dist/registry/loader.js.map +1 -1
  22. package/dist/registry/mcp-discovery.d.ts +82 -0
  23. package/dist/registry/mcp-discovery.d.ts.map +1 -0
  24. package/dist/registry/mcp-discovery.js +203 -0
  25. package/dist/registry/mcp-discovery.js.map +1 -0
  26. package/dist/registry/renderer.d.ts +19 -2
  27. package/dist/registry/renderer.d.ts.map +1 -1
  28. package/dist/registry/renderer.js +64 -2
  29. package/dist/registry/renderer.js.map +1 -1
  30. package/dist/shared/errors/index.d.ts +4 -0
  31. package/dist/shared/errors/index.d.ts.map +1 -1
  32. package/dist/shared/errors/index.js +6 -0
  33. package/dist/shared/errors/index.js.map +1 -1
  34. package/dist/shared/filesystem.d.ts +45 -0
  35. package/dist/shared/filesystem.d.ts.map +1 -0
  36. package/dist/shared/filesystem.js +122 -0
  37. package/dist/shared/filesystem.js.map +1 -0
  38. package/dist/shared/types.d.ts +92 -1
  39. package/dist/shared/types.d.ts.map +1 -1
  40. package/dist/shared/types.js +6 -0
  41. package/dist/shared/types.js.map +1 -1
  42. package/dist/tools/configure-mcp.d.ts +24 -0
  43. package/dist/tools/configure-mcp.d.ts.map +1 -1
  44. package/dist/tools/configure-mcp.js +123 -24
  45. package/dist/tools/configure-mcp.js.map +1 -1
  46. package/dist/tools/generate-claude-md.d.ts +1 -0
  47. package/dist/tools/generate-claude-md.d.ts.map +1 -1
  48. package/dist/tools/generate-claude-md.js +23 -57
  49. package/dist/tools/generate-claude-md.js.map +1 -1
  50. package/dist/tools/get-reference.d.ts +28 -0
  51. package/dist/tools/get-reference.d.ts.map +1 -0
  52. package/dist/tools/get-reference.js +63 -0
  53. package/dist/tools/get-reference.js.map +1 -0
  54. package/dist/tools/list.d.ts +18 -2
  55. package/dist/tools/list.d.ts.map +1 -1
  56. package/dist/tools/list.js +74 -2
  57. package/dist/tools/list.js.map +1 -1
  58. package/dist/tools/refresh-project.d.ts.map +1 -1
  59. package/dist/tools/refresh-project.js +8 -10
  60. package/dist/tools/refresh-project.js.map +1 -1
  61. package/dist/tools/scaffold.d.ts +4 -0
  62. package/dist/tools/scaffold.d.ts.map +1 -1
  63. package/dist/tools/scaffold.js +58 -31
  64. package/dist/tools/scaffold.js.map +1 -1
  65. package/dist/tools/setup-project.d.ts.map +1 -1
  66. package/dist/tools/setup-project.js +5 -1
  67. package/dist/tools/setup-project.js.map +1 -1
  68. package/package.json +7 -3
  69. package/templates/analytics/mcp-servers.yaml +11 -0
  70. package/templates/api/mcp-servers.yaml +13 -0
  71. package/templates/api/skills.yaml +54 -0
  72. package/templates/cli/mcp-servers.yaml +11 -0
  73. package/templates/data-lineage/instructions.yaml +28 -0
  74. package/templates/data-lineage/mcp-servers.yaml +22 -0
  75. package/templates/data-pipeline/mcp-servers.yaml +13 -0
  76. package/templates/data-pipeline/skills.yaml +56 -0
  77. package/templates/fintech/mcp-servers.yaml +13 -0
  78. package/templates/fintech/skills.yaml +35 -0
  79. package/templates/game/mcp-servers.yaml +11 -0
  80. package/templates/healthcare/mcp-servers.yaml +13 -0
  81. package/templates/healthcare/skills.yaml +35 -0
  82. package/templates/hipaa/instructions.yaml +41 -0
  83. package/templates/hipaa/mcp-servers.yaml +13 -0
  84. package/templates/hipaa/skills.yaml +39 -0
  85. package/templates/infra/mcp-servers.yaml +20 -0
  86. package/templates/library/mcp-servers.yaml +20 -0
  87. package/templates/medallion-architecture/instructions.yaml +41 -0
  88. package/templates/medallion-architecture/mcp-servers.yaml +22 -0
  89. package/templates/ml/mcp-servers.yaml +11 -0
  90. package/templates/mobile/mcp-servers.yaml +11 -0
  91. package/templates/observability-xray/instructions.yaml +40 -0
  92. package/templates/observability-xray/mcp-servers.yaml +15 -0
  93. package/templates/realtime/mcp-servers.yaml +13 -0
  94. package/templates/soc2/instructions.yaml +41 -0
  95. package/templates/soc2/mcp-servers.yaml +24 -0
  96. package/templates/social/mcp-servers.yaml +24 -0
  97. package/templates/state-machine/mcp-servers.yaml +11 -0
  98. package/templates/universal/hooks.yaml +63 -0
  99. package/templates/universal/instructions.yaml +41 -118
  100. package/templates/universal/mcp-servers.yaml +38 -0
  101. package/templates/universal/nfr.yaml +1 -1
  102. package/templates/universal/reference.yaml +111 -0
  103. package/templates/universal/review.yaml +2 -2
  104. package/templates/universal/skills.yaml +106 -0
  105. package/templates/web-react/mcp-servers.yaml +20 -0
  106. package/templates/web-react/skills.yaml +56 -0
  107. package/templates/web-static/mcp-servers.yaml +20 -0
  108. package/templates/web3/mcp-servers.yaml +11 -0
  109. package/templates/zero-trust/instructions.yaml +41 -0
  110. package/templates/zero-trust/mcp-servers.yaml +15 -0
@@ -1 +1 @@
1
- {"version":3,"file":"list.js","sourceRoot":"","sources":["../../src/tools/list.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"list.js","sourceRoot":"","sources":["../../src/tools/list.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"refresh-project.d.ts","sourceRoot":"","sources":["../../src/tools/refresh-project.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAoBxB,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;EAwB/B,CAAC;AAgBH,wBAAsB,qBAAqB,CACzC,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,GACzC,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CAAE,CAAC,CA+E7D"}
1
+ {"version":3,"file":"refresh-project.d.ts","sourceRoot":"","sources":["../../src/tools/refresh-project.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAuBxB,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;EAwB/B,CAAC;AAgBH,wBAAsB,qBAAqB,CACzC,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,GACzC,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CAAE,CAAC,CA+E7D"}
@@ -6,8 +6,8 @@
6
6
  * Can optionally apply updates to config and CLAUDE.md.
7
7
  */
8
8
  import { z } from "zod";
9
- import { writeFileSync, mkdirSync } from "node:fs";
10
- import { join, dirname } from "node:path";
9
+ import { writeFileSync } from "node:fs";
10
+ import { join } from "node:path";
11
11
  import yaml from "js-yaml";
12
12
  import { ALL_TAGS, CONTENT_TIERS, ALL_OUTPUT_TARGETS, OUTPUT_TARGET_CONFIGS, DEFAULT_OUTPUT_TARGET } from "../shared/types.js";
13
13
  import { analyzeProject } from "../analyzers/package-json.js";
@@ -15,6 +15,9 @@ import { checkCompleteness } from "../analyzers/completeness.js";
15
15
  import { loadAllTemplatesWithExtras, loadUserOverrides } from "../registry/loader.js";
16
16
  import { composeTemplates } from "../registry/composer.js";
17
17
  import { renderInstructionFile } from "../registry/renderer.js";
18
+ import { writeInstructionFileWithMerge } from "../shared/filesystem.js";
19
+ import { detectLanguage } from "../analyzers/language-detector.js";
20
+ import { detectProjectContext } from "../analyzers/project-context.js";
18
21
  import { createLogger } from "../shared/logger/index.js";
19
22
  const logger = createLogger("tools/refresh-project");
20
23
  /** Minimum confidence to suggest a new tag. */
@@ -86,19 +89,14 @@ export async function refreshProjectHandler(args) {
86
89
  writeFileSync(join(projectDir, "forgecraft.yaml"), configYaml, "utf-8");
87
90
  // Regenerate instruction files for all targets
88
91
  const outputTargets = (args.output_targets ?? updatedConfig.outputTargets ?? [DEFAULT_OUTPUT_TARGET]);
89
- const context = {
90
- projectName: updatedConfig.projectName ?? inferProjectName(projectDir),
91
- language: "typescript",
92
- tags: updatedTags,
93
- };
92
+ const context = detectProjectContext(projectDir, updatedConfig.projectName ?? inferProjectName(projectDir), detectLanguage(projectDir), updatedTags);
94
93
  for (const target of outputTargets) {
95
94
  const targetConfig = OUTPUT_TARGET_CONFIGS[target];
96
95
  const content = renderInstructionFile(composed.instructionBlocks, context, target);
97
96
  const outputPath = targetConfig.directory
98
97
  ? join(projectDir, targetConfig.directory, targetConfig.filename)
99
98
  : join(projectDir, targetConfig.filename);
100
- mkdirSync(dirname(outputPath), { recursive: true });
101
- writeFileSync(outputPath, content, "utf-8");
99
+ writeInstructionFileWithMerge(outputPath, content);
102
100
  }
103
101
  return {
104
102
  content: [{
@@ -232,7 +230,7 @@ function buildPreviewOutput(drift, updatedTags, _config, composed, tier) {
232
230
  // Block delta
233
231
  text += `## Content Impact\n`;
234
232
  text += `- Instruction blocks: ${drift.blockCountDelta.before} → ${drift.blockCountDelta.after}\n`;
235
- text += `- Total available: ${composed.instructionBlocks.length} blocks, ${composed.nfrBlocks.length} NFRs, ${composed.hooks.length} hooks\n\n`;
233
+ text += `- Total available: ${composed.instructionBlocks.length} blocks, ${composed.nfrBlocks.length} NFRs, ${composed.hooks.length} hooks, ${composed.skills.length} skills\n\n`;
236
234
  // Gaps
237
235
  if (drift.completenessGaps.length > 0) {
238
236
  text += `## Remaining Gaps\n`;
@@ -1 +1 @@
1
- {"version":3,"file":"refresh-project.js","sourceRoot":"","sources":["../../src/tools/refresh-project.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"refresh-project.js","sourceRoot":"","sources":["../../src/tools/refresh-project.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,7 @@
2
2
  * scaffold_project tool handler.
3
3
  *
4
4
  * Generates full project structure from classified tags.
5
+ * Skips existing files by default to avoid overwriting user content.
5
6
  */
6
7
  import { z } from "zod";
7
8
  export declare const scaffoldProjectSchema: z.ZodObject<{
@@ -10,6 +11,7 @@ export declare const scaffoldProjectSchema: z.ZodObject<{
10
11
  project_name: z.ZodString;
11
12
  language: z.ZodDefault<z.ZodEnum<["typescript", "python"]>>;
12
13
  dry_run: z.ZodDefault<z.ZodBoolean>;
14
+ force: z.ZodDefault<z.ZodBoolean>;
13
15
  output_targets: z.ZodDefault<z.ZodArray<z.ZodEnum<[string, ...string[]]>, "many">>;
14
16
  }, "strip", z.ZodTypeAny, {
15
17
  tags: string[];
@@ -17,6 +19,7 @@ export declare const scaffoldProjectSchema: z.ZodObject<{
17
19
  language: "typescript" | "python";
18
20
  project_name: string;
19
21
  dry_run: boolean;
22
+ force: boolean;
20
23
  output_targets: string[];
21
24
  }, {
22
25
  tags: string[];
@@ -24,6 +27,7 @@ export declare const scaffoldProjectSchema: z.ZodObject<{
24
27
  project_name: string;
25
28
  language?: "typescript" | "python" | undefined;
26
29
  dry_run?: boolean | undefined;
30
+ force?: boolean | undefined;
27
31
  output_targets?: string[] | undefined;
28
32
  }>;
29
33
  export declare function scaffoldProjectHandler(args: z.infer<typeof scaffoldProjectSchema>): Promise<{
@@ -1 +1 @@
1
- {"version":3,"file":"scaffold.d.ts","sourceRoot":"","sources":["../../src/tools/scaffold.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAmBxB,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;EAuBhC,CAAC;AAIH,wBAAsB,sBAAsB,CAC1C,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,GAC1C,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CAAE,CAAC,CA6H7D"}
1
+ {"version":3,"file":"scaffold.d.ts","sourceRoot":"","sources":["../../src/tools/scaffold.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAsBxB,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;EA2BhC,CAAC;AAIH,wBAAsB,sBAAsB,CAC1C,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,GAC1C,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CAAE,CAAC,CA2J7D"}
@@ -2,14 +2,17 @@
2
2
  * scaffold_project tool handler.
3
3
  *
4
4
  * Generates full project structure from classified tags.
5
+ * Skips existing files by default to avoid overwriting user content.
5
6
  */
6
7
  import { z } from "zod";
7
- import { mkdirSync, writeFileSync, chmodSync } from "node:fs";
8
+ import { mkdirSync, chmodSync } from "node:fs";
8
9
  import { join, dirname } from "node:path";
9
10
  import { ALL_TAGS, ALL_OUTPUT_TARGETS, OUTPUT_TARGET_CONFIGS, DEFAULT_OUTPUT_TARGET } from "../shared/types.js";
10
11
  import { loadAllTemplatesWithExtras, loadUserOverrides } from "../registry/loader.js";
11
12
  import { composeTemplates } from "../registry/composer.js";
12
- import { renderInstructionFile, renderStatusMd, renderPrdSkeleton, renderTechSpecSkeleton, } from "../registry/renderer.js";
13
+ import { renderInstructionFile, renderSkill, renderStatusMd, renderPrdSkeleton, renderTechSpecSkeleton, } from "../registry/renderer.js";
14
+ import { writeFileIfMissing, checkGitSafety } from "../shared/filesystem.js";
15
+ import { detectProjectContext } from "../analyzers/project-context.js";
13
16
  import { createLogger } from "../shared/logger/index.js";
14
17
  const logger = createLogger("tools/scaffold");
15
18
  // ── Schema ───────────────────────────────────────────────────────────
@@ -32,6 +35,10 @@ export const scaffoldProjectSchema = z.object({
32
35
  .boolean()
33
36
  .default(false)
34
37
  .describe("If true, return the plan without writing files."),
38
+ force: z
39
+ .boolean()
40
+ .default(false)
41
+ .describe("If true, overwrite existing files. Default: skip files that already exist."),
35
42
  output_targets: z
36
43
  .array(z.enum(ALL_OUTPUT_TARGETS))
37
44
  .default(["claude"])
@@ -46,6 +53,7 @@ export async function scaffoldProjectHandler(args) {
46
53
  tags,
47
54
  projectDir: args.project_dir,
48
55
  dryRun: args.dry_run,
56
+ force: args.force,
49
57
  });
50
58
  // Load and compose templates (respects forgecraft.yaml config if present)
51
59
  const userConfig = loadUserOverrides(args.project_dir);
@@ -53,12 +61,7 @@ export async function scaffoldProjectHandler(args) {
53
61
  const composed = composeTemplates(tags, templateSets, {
54
62
  config: userConfig ?? undefined,
55
63
  });
56
- const context = {
57
- projectName: args.project_name,
58
- language: args.language,
59
- tags,
60
- };
61
- const filesCreated = [];
64
+ const context = detectProjectContext(args.project_dir, args.project_name, args.language, tags);
62
65
  // Render content
63
66
  const outputTargets = (args.output_targets ?? [DEFAULT_OUTPUT_TARGET]);
64
67
  const statusMdContent = renderStatusMd(context);
@@ -68,6 +71,20 @@ export async function scaffoldProjectHandler(args) {
68
71
  const plan = buildDryRunPlan(composed, tags);
69
72
  return { content: [{ type: "text", text: plan }] };
70
73
  }
74
+ // Check git safety
75
+ const gitWarning = checkGitSafety(args.project_dir);
76
+ const filesCreated = [];
77
+ const filesSkipped = [];
78
+ /** Track a safe write result. */
79
+ function trackWrite(relativePath, filePath, content) {
80
+ const result = writeFileIfMissing(filePath, content, args.force);
81
+ if (result === "skipped") {
82
+ filesSkipped.push(relativePath);
83
+ }
84
+ else {
85
+ filesCreated.push(relativePath);
86
+ }
87
+ }
71
88
  // Create directories from structure entries
72
89
  for (const entry of composed.structureEntries) {
73
90
  const fullPath = join(args.project_dir, entry.path);
@@ -84,39 +101,42 @@ export async function scaffoldProjectHandler(args) {
84
101
  ? join(args.project_dir, targetConfig.directory, targetConfig.filename)
85
102
  : join(args.project_dir, targetConfig.filename);
86
103
  mkdirSync(dirname(outputPath), { recursive: true });
87
- writeFileSafe(outputPath, content);
88
- filesCreated.push(targetConfig.directory ? `${targetConfig.directory}/${targetConfig.filename}` : targetConfig.filename);
104
+ const relativePath = targetConfig.directory ? `${targetConfig.directory}/${targetConfig.filename}` : targetConfig.filename;
105
+ trackWrite(relativePath, outputPath, content);
89
106
  }
90
107
  // Write Status.md
91
- writeFileSafe(join(args.project_dir, "Status.md"), statusMdContent);
92
- filesCreated.push("Status.md");
108
+ trackWrite("Status.md", join(args.project_dir, "Status.md"), statusMdContent);
93
109
  // Write docs
94
110
  mkdirSync(join(args.project_dir, "docs"), { recursive: true });
95
- writeFileSafe(join(args.project_dir, "docs", "PRD.md"), prdContent);
96
- filesCreated.push("docs/PRD.md");
97
- writeFileSafe(join(args.project_dir, "docs", "TechSpec.md"), techSpecContent);
98
- filesCreated.push("docs/TechSpec.md");
111
+ trackWrite("docs/PRD.md", join(args.project_dir, "docs", "PRD.md"), prdContent);
112
+ trackWrite("docs/TechSpec.md", join(args.project_dir, "docs", "TechSpec.md"), techSpecContent);
99
113
  // Write .env.example
100
- writeFileSafe(join(args.project_dir, ".env.example"), "NODE_ENV=development\nLOG_LEVEL=info\n");
101
- filesCreated.push(".env.example");
114
+ trackWrite(".env.example", join(args.project_dir, ".env.example"), "NODE_ENV=development\nLOG_LEVEL=info\n");
102
115
  // Write hooks
103
116
  const hooksDir = join(args.project_dir, ".claude", "hooks");
104
117
  mkdirSync(hooksDir, { recursive: true });
105
118
  for (const hook of composed.hooks) {
106
119
  const hookPath = join(hooksDir, hook.filename);
107
- writeFileSafe(hookPath, hook.script);
120
+ trackWrite(`.claude/hooks/${hook.filename}`, hookPath, hook.script);
108
121
  try {
109
122
  chmodSync(hookPath, 0o755);
110
123
  }
111
124
  catch {
112
125
  // chmod may fail on Windows, that's OK
113
126
  }
114
- filesCreated.push(`.claude/hooks/${hook.filename}`);
115
127
  }
116
- // Write .gitignore if not present
117
- const gitignorePath = join(args.project_dir, ".gitignore");
118
- writeFileSafe(gitignorePath, "node_modules/\ndist/\n.env\ncoverage/\n*.log\n");
119
- filesCreated.push(".gitignore");
128
+ // Write skills (Claude Code custom commands)
129
+ if (composed.skills.length > 0) {
130
+ const commandsDir = join(args.project_dir, ".claude", "commands");
131
+ mkdirSync(commandsDir, { recursive: true });
132
+ for (const skill of composed.skills) {
133
+ const skillContent = renderSkill(skill.content, context);
134
+ const skillPath = join(commandsDir, skill.filename);
135
+ trackWrite(`.claude/commands/${skill.filename}`, skillPath, skillContent);
136
+ }
137
+ }
138
+ // Write .gitignore
139
+ trackWrite(".gitignore", join(args.project_dir, ".gitignore"), "node_modules/\ndist/\n.env\ncoverage/\n*.log\n");
120
140
  const result = {
121
141
  filesCreated,
122
142
  mcpServersConfigured: [],
@@ -132,20 +152,21 @@ export async function scaffoldProjectHandler(args) {
132
152
  let text = `# Project Scaffolded Successfully\n\n`;
133
153
  text += `**Tags:** ${tags.map((t) => `[${t}]`).join(" ")}\n`;
134
154
  text += `**Files Created:** ${filesCreated.length}\n\n`;
155
+ if (gitWarning) {
156
+ text += `\n> ⚠️ **Git Warning:** ${gitWarning}\n\n`;
157
+ }
135
158
  text += `## Created Files\n`;
136
159
  text += filesCreated.map((f) => `- \`${f}\``).join("\n");
160
+ if (filesSkipped.length > 0) {
161
+ text += `\n\n## Skipped (already exist)\n`;
162
+ text += filesSkipped.map((f) => `- \`${f}\``).join("\n");
163
+ text += `\n\n_Use \`force=true\` to overwrite existing files._`;
164
+ }
137
165
  text += `\n\n## Next Steps\n`;
138
166
  text += result.nextSteps.map((s, i) => `${i + 1}. ${s}`).join("\n");
139
167
  text += `\n\n⚠️ **Restart may be required** to pick up instruction files and hooks.`;
140
168
  return { content: [{ type: "text", text }] };
141
169
  }
142
- /**
143
- * Write a file, creating parent directories as needed.
144
- */
145
- function writeFileSafe(filePath, content) {
146
- mkdirSync(dirname(filePath), { recursive: true });
147
- writeFileSync(filePath, content, "utf-8");
148
- }
149
170
  /**
150
171
  * Build a dry-run plan without writing files.
151
172
  */
@@ -166,6 +187,12 @@ function buildDryRunPlan(composed, tags) {
166
187
  text += composed.hooks
167
188
  .map((h) => `- \`${h.filename}\` (${h.trigger}) — ${h.description}`)
168
189
  .join("\n");
190
+ if (composed.skills.length > 0) {
191
+ text += `\n\n## Skills to Install (${composed.skills.length})\n`;
192
+ text += composed.skills
193
+ .map((s) => `- \`/project:${s.filename.replace(".md", "")}\` — ${s.description}`)
194
+ .join("\n");
195
+ }
169
196
  text += `\n\n_Run again with dry_run=false to write files._`;
170
197
  return text;
171
198
  }
@@ -1 +1 @@
1
- {"version":3,"file":"scaffold.js","sourceRoot":"","sources":["../../src/tools/scaffold.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"scaffold.js","sourceRoot":"","sources":["../../src/tools/scaffold.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"setup-project.d.ts","sourceRoot":"","sources":["../../src/tools/setup-project.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAoBxB,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;EA8B7B,CAAC;AAiBH,wBAAsB,mBAAmB,CACvC,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,GACvC,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CAAE,CAAC,CA4D7D"}
1
+ {"version":3,"file":"setup-project.d.ts","sourceRoot":"","sources":["../../src/tools/setup-project.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAsBxB,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;EA8B7B,CAAC;AAiBH,wBAAsB,mBAAmB,CACvC,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,GACvC,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CAAE,CAAC,CA4D7D"}
@@ -15,6 +15,8 @@ import { checkCompleteness } from "../analyzers/completeness.js";
15
15
  import { loadAllTemplatesWithExtras, loadUserOverrides } from "../registry/loader.js";
16
16
  import { composeTemplates } from "../registry/composer.js";
17
17
  import { renderInstructionFile } from "../registry/renderer.js";
18
+ import { detectLanguage } from "../analyzers/language-detector.js";
19
+ import { detectProjectContext } from "../analyzers/project-context.js";
18
20
  import { createLogger } from "../shared/logger/index.js";
19
21
  const logger = createLogger("tools/setup-project");
20
22
  /** Minimum confidence to auto-suggest a tag from code analysis. */
@@ -75,7 +77,7 @@ export async function setupProjectHandler(args) {
75
77
  const configPath = join(projectDir, "forgecraft.yaml");
76
78
  writeFileSync(configPath, configYaml, "utf-8");
77
79
  // ── Step 8: Generate instruction files for all targets ─────────
78
- const context = { projectName, language: "typescript", tags: finalTags };
80
+ const context = detectProjectContext(projectDir, projectName, detectLanguage(projectDir), finalTags, args.description);
79
81
  const filesWritten = [];
80
82
  for (const target of outputTargets) {
81
83
  const targetConfig = OUTPUT_TARGET_CONFIGS[target];
@@ -227,6 +229,7 @@ function buildDryRunOutput(analysis, tags, composed, configYaml, tier, outputTar
227
229
  text += `- Structure entries: ${composed.structureEntries.length}\n`;
228
230
  text += `- NFR sections: ${composed.nfrBlocks.length}\n`;
229
231
  text += `- Hooks: ${composed.hooks.length}\n`;
232
+ text += `- Skills: ${composed.skills.length}\n`;
230
233
  text += `- Review checklist blocks: ${composed.reviewBlocks.length}\n`;
231
234
  text += `- Output targets: ${outputTargets.map((t) => OUTPUT_TARGET_CONFIGS[t].displayName).join(", ")}\n\n`;
232
235
  // Tier breakdown
@@ -272,6 +275,7 @@ function buildSetupOutput(analysis, tags, composed, configYaml, tier, filesWritt
272
275
  text += `- ${composed.instructionBlocks.length} instruction blocks applied\n`;
273
276
  text += `- ${composed.nfrBlocks.length} NFR sections available\n`;
274
277
  text += `- ${composed.hooks.length} hooks available\n`;
278
+ text += `- ${composed.skills.length} skills available\n`;
275
279
  text += `- ${composed.reviewBlocks.length} review checklist blocks available\n\n`;
276
280
  text += `## Config (forgecraft.yaml)\n`;
277
281
  text += `\`\`\`yaml\n${configYaml}\`\`\`\n\n`;
@@ -1 +1 @@
1
- {"version":3,"file":"setup-project.js","sourceRoot":"","sources":["../../src/tools/setup-project.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"setup-project.js","sourceRoot":"","sources":["../../src/tools/setup-project.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "forgecraft-mcp",
3
- "version": "0.2.0",
3
+ "version": "0.3.0",
4
4
  "mcpName": "io.github.jghiringhelli/forgecraft",
5
5
  "description": "MCP server that gives Claude Code production-grade engineering standards — SOLID, testing, architecture, CI/CD — automatically tailored to your stack",
6
6
  "type": "module",
@@ -25,6 +25,11 @@
25
25
  "model-context-protocol",
26
26
  "claude",
27
27
  "claude-code",
28
+ "github-copilot",
29
+ "copilot",
30
+ "cursor",
31
+ "windsurf",
32
+ "ai-coding",
28
33
  "scaffolding",
29
34
  "project-setup",
30
35
  "developer-tools",
@@ -33,8 +38,7 @@
33
38
  "solid-principles",
34
39
  "testing",
35
40
  "architecture",
36
- "claude-md",
37
- "ai-coding"
41
+ "claude-md"
38
42
  ],
39
43
  "author": "JC",
40
44
  "license": "MIT",
@@ -0,0 +1,11 @@
1
+ tag: ANALYTICS
2
+ section: mcp-servers
3
+ servers:
4
+ - name: chrome-devtools
5
+ description: "Chrome DevTools integration for debugging, profiling, and network inspection"
6
+ command: npx
7
+ args: ["-y", "@anthropic/chrome-devtools-mcp@latest"]
8
+ tags: [WEB-REACT, WEB-STATIC, ANALYTICS]
9
+ category: devtools
10
+ tier: recommended
11
+ url: "https://github.com/anthropics/anthropic-quickstarts/tree/main/chrome-devtools-mcp"
@@ -0,0 +1,13 @@
1
+ tag: API
2
+ section: mcp-servers
3
+ servers:
4
+ - name: postman
5
+ description: "API testing and collection management via Postman workspace"
6
+ command: npx
7
+ args: ["-y", "@anthropic/mcp-server-postman"]
8
+ tags: [API]
9
+ category: testing
10
+ tier: recommended
11
+ url: "https://github.com/anthropics/anthropic-quickstarts/tree/main/mcp-server-postman"
12
+ env:
13
+ POSTMAN_API_KEY: ""
@@ -0,0 +1,54 @@
1
+ tag: API
2
+ section: skills
3
+ skills:
4
+ - id: api-test-endpoint
5
+ name: Test API Endpoint
6
+ filename: api-test-endpoint.md
7
+ description: "Test an API endpoint with various scenarios"
8
+ tier: core
9
+ content: |
10
+ Test the API endpoint specified in $ARGUMENTS.
11
+
12
+ Steps:
13
+ 1. Find the route handler and read the implementation
14
+ 2. Identify the request schema (params, query, body)
15
+ 3. Run these test scenarios:
16
+ - **Happy path**: valid request with expected response
17
+ - **Validation**: missing required fields, wrong types, boundary values
18
+ - **Auth**: unauthenticated, wrong role, expired token (if applicable)
19
+ - **Edge cases**: empty body, large payload, special characters
20
+ 4. For each scenario, report:
21
+ - Request: method, path, headers, body
22
+ - Expected: status code, response shape
23
+ - Actual: what happened
24
+ - Verdict: PASS / FAIL
25
+
26
+ Use `curl` or the project's test framework. If tests don't exist for this endpoint, offer to create them.
27
+
28
+ - id: api-add-endpoint
29
+ name: Add API Endpoint
30
+ filename: api-add-endpoint.md
31
+ description: "Scaffold a new API endpoint following project patterns"
32
+ tier: recommended
33
+ content: |
34
+ Create a new API endpoint. $ARGUMENTS should describe the endpoint (e.g., "POST /api/users - create a user").
35
+
36
+ Steps:
37
+ 1. Identify existing endpoint patterns in the project:
38
+ - Router file structure
39
+ - Validation approach (Zod, Joi, class-validator, etc.)
40
+ - Response format conventions
41
+ - Error handling patterns
42
+ - Middleware chain
43
+ 2. Create the endpoint following discovered patterns:
44
+ - Route handler (thin — delegates to service layer)
45
+ - Input validation schema
46
+ - Service method with business logic
47
+ - Error handling with appropriate HTTP status codes
48
+ 3. Add tests:
49
+ - Happy path test
50
+ - Validation error test
51
+ - At least one edge case
52
+ 4. Update any route index/registry if the project uses one
53
+
54
+ Follow existing patterns exactly. Do not introduce new patterns or libraries.
@@ -0,0 +1,11 @@
1
+ tag: CLI
2
+ section: mcp-servers
3
+ servers:
4
+ - name: filesystem
5
+ description: "Secure file operations — read, write, search, and directory management with configurable access controls"
6
+ command: npx
7
+ args: ["-y", "@modelcontextprotocol/server-filesystem", "/"]
8
+ tags: [CLI, LIBRARY]
9
+ category: general
10
+ tier: recommended
11
+ url: "https://github.com/modelcontextprotocol/servers/tree/main/src/filesystem"