forgecraft-mcp 0.3.0 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -9,45 +9,19 @@ import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
9
9
  import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
10
10
  import { createLogger } from "./shared/logger/index.js";
11
11
  // ── Tool imports ─────────────────────────────────────────────────────
12
- import { listTagsSchema, listTagsHandler, listHooksSchema, listHooksHandler, listSkillsSchema, listSkillsHandler, } from "./tools/list.js";
13
- import { classifyProjectSchema, classifyProjectHandler, } from "./tools/classify.js";
14
- import { scaffoldProjectSchema, scaffoldProjectHandler, } from "./tools/scaffold.js";
15
- import { generateInstructionsSchema, generateInstructionsHandler, } from "./tools/generate-claude-md.js";
16
- import { auditProjectSchema, auditProjectHandler, } from "./tools/audit.js";
17
- import { addHookSchema, addHookHandler, } from "./tools/add-hook.js";
18
- import { addModuleSchema, addModuleHandler, } from "./tools/add-module.js";
19
- import { configureMcpSchema, configureMcpHandler, } from "./tools/configure-mcp.js";
20
- import { getNfrTemplateSchema, getNfrTemplateHandler, } from "./tools/get-nfr.js";
21
- import { getDesignReferenceSchema, getDesignReferenceHandler, } from "./tools/get-reference.js";
22
- import { convertExistingSchema, convertExistingHandler, } from "./tools/convert.js";
23
- import { reviewProjectSchema, reviewProjectHandler, } from "./tools/review.js";
24
12
  import { setupProjectSchema, setupProjectHandler, } from "./tools/setup-project.js";
25
- import { refreshProjectSchema, refreshProjectHandler, } from "./tools/refresh-project.js";
13
+ import { forgecraftSchema, forgecraftHandler, } from "./tools/forgecraft-router.js";
26
14
  // ── Server Setup ─────────────────────────────────────────────────────
27
15
  const logger = createLogger("server");
28
16
  async function main() {
29
17
  logger.info("Starting ForgeCraft MCP server");
30
18
  const server = new McpServer({
31
19
  name: "forgecraft",
32
- version: "0.3.0",
20
+ version: "0.4.0",
33
21
  });
34
- // ── Register Tools ───────────────────────────────────────────────
35
- server.tool("list_tags", "List all available project classification tags with descriptions.", listTagsSchema.shape, listTagsHandler);
36
- server.tool("list_hooks", "List available hooks, optionally filtered by tags.", listHooksSchema.shape, listHooksHandler);
37
- server.tool("list_skills", "List available skills (Claude Code custom commands), optionally filtered by tags. Skills are reusable workflow prompts installed to .claude/commands/ and invoked via /project:<name>.", listSkillsSchema.shape, listSkillsHandler);
38
- server.tool("classify_project", "Analyze a project directory and/or description to suggest classification tags.", classifyProjectSchema.shape, classifyProjectHandler);
39
- server.tool("scaffold_project", "Generate full project structure (instruction files, Status.md, hooks, skills, folders) from tags. Supports multiple AI assistant targets.", scaffoldProjectSchema.shape, scaffoldProjectHandler);
40
- server.tool("generate_instructions", "Generate AI assistant instruction files for given tags. Supports multiple targets: Claude (CLAUDE.md), Cursor (.cursor/rules/), GitHub Copilot (.github/copilot-instructions.md), Windsurf (.windsurfrules), Cline (.clinerules), Aider (CONVENTIONS.md). Adds SOLID principles, testing pyramid, architecture patterns, CI/CD, and domain-specific standards from 112 curated blocks. Can merge with existing files to preserve custom sections.", generateInstructionsSchema.shape, generateInstructionsHandler);
41
- server.tool("audit_project", "Audit project against template standards and report violations with a score.", auditProjectSchema.shape, auditProjectHandler);
42
- server.tool("add_hook", "Add a specific quality-gate hook script to the project.", addHookSchema.shape, addHookHandler);
43
- server.tool("add_module", "Scaffold a new feature module following established patterns.", addModuleSchema.shape, addModuleHandler);
44
- server.tool("configure_mcp", "Generate .claude/settings.json with recommended MCP servers for active tags.", configureMcpSchema.shape, configureMcpHandler);
45
- server.tool("get_nfr_template", "Get NFR (Non-Functional Requirement) sections for specific tags.", getNfrTemplateSchema.shape, getNfrTemplateHandler);
46
- server.tool("get_design_reference", "Get design reference patterns (DDD, CQRS, GoF) on demand. These are NOT included in instruction files to save tokens — request them when you need architectural guidance.", getDesignReferenceSchema.shape, getDesignReferenceHandler);
47
- server.tool("convert_existing", "Analyze an existing codebase and generate a phased migration plan.", convertExistingSchema.shape, convertExistingHandler);
48
- server.tool("review_project", "Generate a structured code review checklist for active tags. Covers architecture, code quality, tests, and performance with per-issue guidance format.", reviewProjectSchema.shape, reviewProjectHandler);
22
+ // ── Register Tools (2 only — minimizes per-request token overhead) ──
49
23
  server.tool("setup_project", "RECOMMENDED FIRST STEP — generates production-grade AI assistant instruction files from 112 curated template blocks. Supports Claude, Cursor, Copilot, Windsurf, Cline, and Aider. Analyzes project, auto-detects tags from code/dependencies, creates forgecraft.yaml config, and adds engineering standards (SOLID, testing pyramid, architecture patterns, CI/CD, domain rules). Works for new and existing projects. Supports tier-based content filtering (core/recommended/optional).", setupProjectSchema.shape, setupProjectHandler);
50
- server.tool("refresh_project", "Re-analyze a project that already has forgecraft.yaml. Detects tag drift (e.g. new framework added), proposes adding/removing tags, shows content impact. Updates instruction files for all configured AI assistant targets. Preview changes before applying.", refreshProjectSchema.shape, refreshProjectHandler);
24
+ server.tool("forgecraft", "Execute ForgeCraft operations. Actions: refresh (re-sync after changes), scaffold (generate project structure), generate (instruction files only), audit (check standards), review (code review checklist), list (discover tags/hooks/skills via resource param), classify (suggest tags), add_hook, add_module, configure_mcp (MCP server settings), get_reference (design patterns/NFR via resource param), convert (migration plan). Use setup_project for first-time setup instead.", forgecraftSchema.shape, forgecraftHandler);
51
25
  // ── Start Stdio Transport ────────────────────────────────────────
52
26
  const transport = new StdioServerTransport();
53
27
  await server.connect(transport);
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA;;;;;GAKG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAExD,wEAAwE;AACxE,OAAO,EACL,kBAAkB,EAClB,mBAAmB,GACpB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACL,gBAAgB,EAChB,iBAAiB,GAClB,MAAM,8BAA8B,CAAC;AAEtC,wEAAwE;AAExE,MAAM,MAAM,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC;AAEtC,KAAK,UAAU,IAAI;IACjB,MAAM,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC;IAE9C,MAAM,MAAM,GAAG,IAAI,SAAS,CAAC;QAC3B,IAAI,EAAE,YAAY;QAClB,OAAO,EAAE,OAAO;KACjB,CAAC,CAAC;IAEH,uEAAuE;IAEvE,MAAM,CAAC,IAAI,CACT,eAAe,EACf,6dAA6d,EAC7d,kBAAkB,CAAC,KAAK,EACxB,mBAAmB,CACpB,CAAC;IAEF,MAAM,CAAC,IAAI,CACT,YAAY,EACZ,ydAAyd,EACzd,gBAAgB,CAAC,KAAK,EACtB,iBAAiB,CAClB,CAAC;IAEF,oEAAoE;IAEpE,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;IAC7C,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IAEhC,MAAM,CAAC,IAAI,CAAC,wCAAwC,CAAC,CAAC;AACxD,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;IACrB,MAAM,CAAC,KAAK,CAAC,oBAAoB,EAAE;QACjC,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;KAC9D,CAAC,CAAC;IACH,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
@@ -11,8 +11,8 @@ export declare const addModuleSchema: z.ZodObject<{
11
11
  project_dir: z.ZodString;
12
12
  }, "strip", z.ZodTypeAny, {
13
13
  tags: string[];
14
- project_dir: string;
15
14
  language: "typescript" | "python";
15
+ project_dir: string;
16
16
  module_name: string;
17
17
  }, {
18
18
  project_dir: string;
@@ -89,13 +89,13 @@ function generateRecommendations(failing) {
89
89
  const recommendations = [];
90
90
  const failingChecks = new Set(failing.map((f) => f.check));
91
91
  if (failingChecks.has("instruction_file_exists")) {
92
- recommendations.push("Run `generate_instructions` to create instruction files for your AI assistant.");
92
+ recommendations.push("Run `forgecraft` with action='generate' to create instruction files for your AI assistant.");
93
93
  }
94
94
  if (failingChecks.has("status_md_exists") || failingChecks.has("status_md_current")) {
95
95
  recommendations.push("Create/update Status.md — update it at the end of each coding session.");
96
96
  }
97
97
  if (failingChecks.has("hooks_installed")) {
98
- recommendations.push("Run `scaffold_project` or `add_hook` to install quality gate hooks.");
98
+ recommendations.push("Run `forgecraft` with action='scaffold' or action='add_hook' to install quality gate hooks.");
99
99
  }
100
100
  if (failingChecks.has("hardcoded_url") || failingChecks.has("hardcoded_credential")) {
101
101
  recommendations.push("Move hardcoded values to config module or environment variables.");
@@ -1 +1 @@
1
- {"version":3,"file":"audit.js","sourceRoot":"","sources":["../../src/tools/audit.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"audit.js","sourceRoot":"","sources":["../../src/tools/audit.ts"],"names":[],"mappings":"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"}
@@ -68,7 +68,7 @@ export async function convertExistingHandler(args) {
68
68
  text += phase.steps.map((s, i) => `${i + 1}. ${s}`).join("\n");
69
69
  text += "\n\n";
70
70
  }
71
- text += `---\n_Run \`scaffold_project\` with dry_run=true to preview what would be generated._`;
71
+ text += `---\n_Run \`forgecraft\` with action='scaffold' and dry_run=true to preview what would be generated._`;
72
72
  return { content: [{ type: "text", text }] };
73
73
  }
74
74
  function buildMigrationPlan(completeness, antiPatterns, _tags) {
@@ -77,7 +77,7 @@ function buildMigrationPlan(completeness, antiPatterns, _tags) {
77
77
  // Phase 1: Foundation (always first)
78
78
  const foundationSteps = [];
79
79
  if (missingChecks.has("instruction_file_exists")) {
80
- foundationSteps.push("Generate instruction files with `generate_instructions`");
80
+ foundationSteps.push("Generate instruction files with `forgecraft` action='generate'");
81
81
  }
82
82
  if (missingChecks.has("status_md_exists")) {
83
83
  foundationSteps.push("Create Status.md for session continuity");
@@ -96,7 +96,7 @@ function buildMigrationPlan(completeness, antiPatterns, _tags) {
96
96
  // Phase 2: Quality Gates
97
97
  const qualitySteps = [];
98
98
  if (missingChecks.has("hooks_installed")) {
99
- qualitySteps.push("Install quality gate hooks with `scaffold_project` or `add_hook`");
99
+ qualitySteps.push("Install quality gate hooks with `forgecraft` action='scaffold' or action='add_hook'");
100
100
  }
101
101
  qualitySteps.push("Configure .gitignore for build artifacts and secrets");
102
102
  qualitySteps.push("Set up CI pipeline if not present");
@@ -136,7 +136,7 @@ function buildMigrationPlan(completeness, antiPatterns, _tags) {
136
136
  docSteps.push("Create docs/PRD.md documenting requirements");
137
137
  }
138
138
  if (missingChecks.has("tech_spec_exists")) {
139
- docSteps.push("Create docs/TechSpec.md with `get_nfr_template` for NFR sections");
139
+ docSteps.push("Create docs/TechSpec.md with `forgecraft` action='get_reference' resource='nfr' for NFR sections");
140
140
  }
141
141
  if (missingChecks.has("shared_modules")) {
142
142
  docSteps.push("Create shared modules (config, errors, logging) in src/shared/");
@@ -1 +1 @@
1
- {"version":3,"file":"convert.js","sourceRoot":"","sources":["../../src/tools/convert.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"convert.js","sourceRoot":"","sources":["../../src/tools/convert.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,127 @@
1
+ /**
2
+ * Unified forgecraft tool router.
3
+ *
4
+ * Consolidates 15 individual MCP tools into a single tool with an `action`
5
+ * discriminator. This dramatically reduces token overhead since MCP sends
6
+ * every tool schema with every request (~70% reduction from 16→2 tools).
7
+ *
8
+ * All business logic lives in the original handler files — this module
9
+ * is a thin dispatch layer that maps unified params to handler-specific args.
10
+ */
11
+ import { z } from "zod";
12
+ export declare const forgecraftSchema: z.ZodObject<{
13
+ action: z.ZodEnum<[string, ...string[]]>;
14
+ project_dir: z.ZodOptional<z.ZodString>;
15
+ tags: z.ZodOptional<z.ZodArray<z.ZodEnum<[string, ...string[]]>, "many">>;
16
+ project_name: z.ZodOptional<z.ZodString>;
17
+ output_targets: z.ZodOptional<z.ZodArray<z.ZodEnum<[string, ...string[]]>, "many">>;
18
+ tier: z.ZodOptional<z.ZodEnum<[string, ...string[]]>>;
19
+ resource: z.ZodOptional<z.ZodEnum<[string, ...string[]]>>;
20
+ name: z.ZodOptional<z.ZodString>;
21
+ language: z.ZodOptional<z.ZodEnum<["typescript", "python"]>>;
22
+ description: z.ZodOptional<z.ZodString>;
23
+ dry_run: z.ZodOptional<z.ZodBoolean>;
24
+ force: z.ZodOptional<z.ZodBoolean>;
25
+ apply: z.ZodOptional<z.ZodBoolean>;
26
+ merge: z.ZodOptional<z.ZodBoolean>;
27
+ scope: z.ZodOptional<z.ZodEnum<["comprehensive", "focused"]>>;
28
+ scan_depth: z.ZodOptional<z.ZodEnum<["quick", "full"]>>;
29
+ tag: z.ZodOptional<z.ZodEnum<[string, ...string[]]>>;
30
+ add_tags: z.ZodOptional<z.ZodArray<z.ZodEnum<[string, ...string[]]>, "many">>;
31
+ remove_tags: z.ZodOptional<z.ZodArray<z.ZodEnum<[string, ...string[]]>, "many">>;
32
+ include_anti_patterns: z.ZodOptional<z.ZodBoolean>;
33
+ custom_servers: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
34
+ command: z.ZodString;
35
+ args: z.ZodArray<z.ZodString, "many">;
36
+ env: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
37
+ }, "strip", z.ZodTypeAny, {
38
+ command: string;
39
+ args: string[];
40
+ env?: Record<string, string> | undefined;
41
+ }, {
42
+ command: string;
43
+ args: string[];
44
+ env?: Record<string, string> | undefined;
45
+ }>>>;
46
+ auto_approve_tools: z.ZodOptional<z.ZodBoolean>;
47
+ include_remote: z.ZodOptional<z.ZodBoolean>;
48
+ remote_registry_url: z.ZodOptional<z.ZodString>;
49
+ max_servers: z.ZodOptional<z.ZodNumber>;
50
+ }, "strip", z.ZodTypeAny, {
51
+ action: string;
52
+ tags?: string[] | undefined;
53
+ tag?: string | undefined;
54
+ tier?: string | undefined;
55
+ language?: "typescript" | "python" | undefined;
56
+ project_dir?: string | undefined;
57
+ project_name?: string | undefined;
58
+ description?: string | undefined;
59
+ dry_run?: boolean | undefined;
60
+ output_targets?: string[] | undefined;
61
+ force?: boolean | undefined;
62
+ include_anti_patterns?: boolean | undefined;
63
+ custom_servers?: Record<string, {
64
+ command: string;
65
+ args: string[];
66
+ env?: Record<string, string> | undefined;
67
+ }> | undefined;
68
+ auto_approve_tools?: boolean | undefined;
69
+ include_remote?: boolean | undefined;
70
+ remote_registry_url?: string | undefined;
71
+ max_servers?: number | undefined;
72
+ name?: string | undefined;
73
+ scan_depth?: "quick" | "full" | undefined;
74
+ scope?: "comprehensive" | "focused" | undefined;
75
+ apply?: boolean | undefined;
76
+ add_tags?: string[] | undefined;
77
+ remove_tags?: string[] | undefined;
78
+ resource?: string | undefined;
79
+ merge?: boolean | undefined;
80
+ }, {
81
+ action: string;
82
+ tags?: string[] | undefined;
83
+ tag?: string | undefined;
84
+ tier?: string | undefined;
85
+ language?: "typescript" | "python" | undefined;
86
+ project_dir?: string | undefined;
87
+ project_name?: string | undefined;
88
+ description?: string | undefined;
89
+ dry_run?: boolean | undefined;
90
+ output_targets?: string[] | undefined;
91
+ force?: boolean | undefined;
92
+ include_anti_patterns?: boolean | undefined;
93
+ custom_servers?: Record<string, {
94
+ command: string;
95
+ args: string[];
96
+ env?: Record<string, string> | undefined;
97
+ }> | undefined;
98
+ auto_approve_tools?: boolean | undefined;
99
+ include_remote?: boolean | undefined;
100
+ remote_registry_url?: string | undefined;
101
+ max_servers?: number | undefined;
102
+ name?: string | undefined;
103
+ scan_depth?: "quick" | "full" | undefined;
104
+ scope?: "comprehensive" | "focused" | undefined;
105
+ apply?: boolean | undefined;
106
+ add_tags?: string[] | undefined;
107
+ remove_tags?: string[] | undefined;
108
+ resource?: string | undefined;
109
+ merge?: boolean | undefined;
110
+ }>;
111
+ type ForgecraftArgs = z.infer<typeof forgecraftSchema>;
112
+ type ToolResult = {
113
+ content: Array<{
114
+ type: "text";
115
+ text: string;
116
+ }>;
117
+ };
118
+ /**
119
+ * Unified handler that dispatches to the appropriate tool handler
120
+ * based on the `action` parameter.
121
+ *
122
+ * @param args - Validated unified tool input
123
+ * @returns MCP tool response from the delegated handler
124
+ */
125
+ export declare function forgecraftHandler(args: ForgecraftArgs): Promise<ToolResult>;
126
+ export {};
127
+ //# sourceMappingURL=forgecraft-router.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"forgecraft-router.d.ts","sourceRoot":"","sources":["../../src/tools/forgecraft-router.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AA0CxB,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAiH3B,CAAC;AAEH,KAAK,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AACvD,KAAK,UAAU,GAAG;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CAAE,CAAC;AAIrE;;;;;;GAMG;AACH,wBAAsB,iBAAiB,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,UAAU,CAAC,CA+FjF"}
@@ -0,0 +1,305 @@
1
+ /**
2
+ * Unified forgecraft tool router.
3
+ *
4
+ * Consolidates 15 individual MCP tools into a single tool with an `action`
5
+ * discriminator. This dramatically reduces token overhead since MCP sends
6
+ * every tool schema with every request (~70% reduction from 16→2 tools).
7
+ *
8
+ * All business logic lives in the original handler files — this module
9
+ * is a thin dispatch layer that maps unified params to handler-specific args.
10
+ */
11
+ import { z } from "zod";
12
+ import { ALL_TAGS, CONTENT_TIERS, ALL_OUTPUT_TARGETS } from "../shared/types.js";
13
+ // ── Handler imports ─────────────────────────────────────────────────
14
+ import { listTagsHandler, listHooksHandler, listSkillsHandler } from "./list.js";
15
+ import { classifyProjectHandler } from "./classify.js";
16
+ import { scaffoldProjectHandler } from "./scaffold.js";
17
+ import { generateInstructionsHandler } from "./generate-claude-md.js";
18
+ import { auditProjectHandler } from "./audit.js";
19
+ import { addHookHandler } from "./add-hook.js";
20
+ import { addModuleHandler } from "./add-module.js";
21
+ import { configureMcpHandler } from "./configure-mcp.js";
22
+ import { getNfrTemplateHandler } from "./get-nfr.js";
23
+ import { getDesignReferenceHandler } from "./get-reference.js";
24
+ import { convertExistingHandler } from "./convert.js";
25
+ import { reviewProjectHandler } from "./review.js";
26
+ import { refreshProjectHandler } from "./refresh-project.js";
27
+ // ── Constants ───────────────────────────────────────────────────────
28
+ const ACTIONS = [
29
+ "refresh",
30
+ "scaffold",
31
+ "generate",
32
+ "audit",
33
+ "review",
34
+ "list",
35
+ "classify",
36
+ "add_hook",
37
+ "add_module",
38
+ "configure_mcp",
39
+ "get_reference",
40
+ "convert",
41
+ ];
42
+ const LIST_RESOURCES = ["tags", "hooks", "skills"];
43
+ const REFERENCE_RESOURCES = ["nfr", "design_patterns"];
44
+ // ── Schema ──────────────────────────────────────────────────────────
45
+ export const forgecraftSchema = z.object({
46
+ action: z
47
+ .enum(ACTIONS)
48
+ .describe("Operation to perform: refresh (re-sync project), scaffold (generate structure), " +
49
+ "generate (instruction files only), audit (check standards), review (code review checklist), " +
50
+ "list (discover tags/hooks/skills), classify (suggest tags), add_hook, add_module, " +
51
+ "configure_mcp, get_reference (design patterns/NFR), convert (migration plan)."),
52
+ project_dir: z
53
+ .string()
54
+ .optional()
55
+ .describe("Absolute path to the project root. Required for: refresh, scaffold, generate, audit, add_hook, add_module, configure_mcp, convert. Optional for: classify."),
56
+ tags: z
57
+ .array(z.enum(ALL_TAGS))
58
+ .optional()
59
+ .describe("Project classification tags. Used by: scaffold, generate, audit, review, add_module, configure_mcp, get_reference, convert, list (as filter)."),
60
+ project_name: z
61
+ .string()
62
+ .optional()
63
+ .describe("Human-readable project name. Used by: scaffold, generate."),
64
+ output_targets: z
65
+ .array(z.enum(ALL_OUTPUT_TARGETS))
66
+ .optional()
67
+ .describe("AI assistant targets (claude, cursor, copilot, windsurf, cline, aider). Used by: scaffold, generate, refresh."),
68
+ tier: z
69
+ .enum(CONTENT_TIERS)
70
+ .optional()
71
+ .describe("Content depth: core, recommended, optional. Used by: refresh."),
72
+ resource: z
73
+ .enum([...LIST_RESOURCES, ...REFERENCE_RESOURCES])
74
+ .optional()
75
+ .describe("Sub-resource for list (tags|hooks|skills) and get_reference (nfr|design_patterns)."),
76
+ name: z
77
+ .string()
78
+ .optional()
79
+ .describe("Item name. Used by: add_hook (hook name), add_module (module name)."),
80
+ language: z
81
+ .enum(["typescript", "python"])
82
+ .optional()
83
+ .describe("Programming language. Used by: scaffold, add_module. Default: typescript."),
84
+ description: z
85
+ .string()
86
+ .optional()
87
+ .describe("Natural language description. Used by: classify."),
88
+ dry_run: z
89
+ .boolean()
90
+ .optional()
91
+ .describe("Preview without writing files. Used by: scaffold."),
92
+ force: z
93
+ .boolean()
94
+ .optional()
95
+ .describe("Overwrite existing files. Used by: scaffold."),
96
+ apply: z
97
+ .boolean()
98
+ .optional()
99
+ .describe("Apply changes (vs preview). Used by: refresh. Default: false."),
100
+ merge: z
101
+ .boolean()
102
+ .optional()
103
+ .describe("Merge with existing instruction files. Used by: generate. Default: true."),
104
+ scope: z
105
+ .enum(["comprehensive", "focused"])
106
+ .optional()
107
+ .describe("Review scope. Used by: review. Default: comprehensive."),
108
+ scan_depth: z
109
+ .enum(["quick", "full"])
110
+ .optional()
111
+ .describe("Analysis depth. Used by: convert. Default: quick."),
112
+ tag: z
113
+ .enum(ALL_TAGS)
114
+ .optional()
115
+ .describe("Single tag filter. Used by: add_hook."),
116
+ add_tags: z
117
+ .array(z.enum(ALL_TAGS))
118
+ .optional()
119
+ .describe("Tags to add during refresh."),
120
+ remove_tags: z
121
+ .array(z.enum(ALL_TAGS))
122
+ .optional()
123
+ .describe("Tags to remove during refresh."),
124
+ include_anti_patterns: z
125
+ .boolean()
126
+ .optional()
127
+ .describe("Scan for anti-patterns. Used by: audit. Default: true."),
128
+ custom_servers: z
129
+ .record(z.object({
130
+ command: z.string(),
131
+ args: z.array(z.string()),
132
+ env: z.record(z.string()).optional(),
133
+ }))
134
+ .optional()
135
+ .describe("Custom MCP servers. Used by: configure_mcp."),
136
+ auto_approve_tools: z
137
+ .boolean()
138
+ .optional()
139
+ .describe("Auto-approve MCP tool calls. Used by: configure_mcp. Default: true."),
140
+ include_remote: z
141
+ .boolean()
142
+ .optional()
143
+ .describe("Query remote MCP registry. Used by: configure_mcp. Default: false."),
144
+ remote_registry_url: z
145
+ .string()
146
+ .optional()
147
+ .describe("Remote MCP registry URL override. Used by: configure_mcp."),
148
+ max_servers: z
149
+ .number()
150
+ .int()
151
+ .positive()
152
+ .optional()
153
+ .describe("Max MCP servers to configure. Used by: configure_mcp."),
154
+ });
155
+ // ── Handler ─────────────────────────────────────────────────────────
156
+ /**
157
+ * Unified handler that dispatches to the appropriate tool handler
158
+ * based on the `action` parameter.
159
+ *
160
+ * @param args - Validated unified tool input
161
+ * @returns MCP tool response from the delegated handler
162
+ */
163
+ export async function forgecraftHandler(args) {
164
+ const action = args.action;
165
+ switch (action) {
166
+ case "list":
167
+ return dispatchList(args);
168
+ case "get_reference":
169
+ return dispatchGetReference(args);
170
+ case "classify":
171
+ return classifyProjectHandler({
172
+ project_dir: args.project_dir,
173
+ description: args.description,
174
+ });
175
+ case "refresh":
176
+ return refreshProjectHandler({
177
+ project_dir: requireParam(args.project_dir, "project_dir", "refresh"),
178
+ apply: args.apply ?? false,
179
+ tier: args.tier,
180
+ add_tags: args.add_tags,
181
+ remove_tags: args.remove_tags,
182
+ output_targets: args.output_targets,
183
+ });
184
+ case "scaffold":
185
+ return scaffoldProjectHandler({
186
+ tags: requireParam(args.tags, "tags", "scaffold"),
187
+ project_dir: requireParam(args.project_dir, "project_dir", "scaffold"),
188
+ project_name: args.project_name ?? "My Project",
189
+ language: args.language ?? "typescript",
190
+ dry_run: args.dry_run ?? false,
191
+ force: args.force ?? false,
192
+ output_targets: args.output_targets ?? ["claude"],
193
+ });
194
+ case "generate":
195
+ return generateInstructionsHandler({
196
+ tags: requireParam(args.tags, "tags", "generate"),
197
+ project_dir: args.project_dir,
198
+ project_name: args.project_name ?? "My Project",
199
+ output_targets: args.output_targets ?? ["claude"],
200
+ merge_with_existing: args.merge ?? true,
201
+ });
202
+ case "audit":
203
+ return auditProjectHandler({
204
+ tags: requireParam(args.tags, "tags", "audit"),
205
+ project_dir: requireParam(args.project_dir, "project_dir", "audit"),
206
+ include_anti_patterns: args.include_anti_patterns ?? true,
207
+ });
208
+ case "review":
209
+ return reviewProjectHandler({
210
+ tags: requireParam(args.tags, "tags", "review"),
211
+ scope: args.scope ?? "comprehensive",
212
+ });
213
+ case "add_hook":
214
+ return addHookHandler({
215
+ hook: requireParam(args.name, "name", "add_hook"),
216
+ project_dir: requireParam(args.project_dir, "project_dir", "add_hook"),
217
+ tag: args.tag,
218
+ });
219
+ case "add_module":
220
+ return addModuleHandler({
221
+ module_name: requireParam(args.name, "name", "add_module"),
222
+ project_dir: requireParam(args.project_dir, "project_dir", "add_module"),
223
+ tags: args.tags ?? ["UNIVERSAL"],
224
+ language: args.language ?? "typescript",
225
+ });
226
+ case "configure_mcp":
227
+ return configureMcpHandler({
228
+ tags: requireParam(args.tags, "tags", "configure_mcp"),
229
+ project_dir: requireParam(args.project_dir, "project_dir", "configure_mcp"),
230
+ custom_servers: args.custom_servers,
231
+ auto_approve_tools: args.auto_approve_tools ?? true,
232
+ include_remote: args.include_remote ?? false,
233
+ remote_registry_url: args.remote_registry_url,
234
+ max_servers: args.max_servers,
235
+ });
236
+ case "convert":
237
+ return convertExistingHandler({
238
+ tags: requireParam(args.tags, "tags", "convert"),
239
+ project_dir: requireParam(args.project_dir, "project_dir", "convert"),
240
+ scan_depth: args.scan_depth ?? "quick",
241
+ });
242
+ default:
243
+ return errorResult(`Unknown action: ${String(action)}. Valid actions: ${ACTIONS.join(", ")}`);
244
+ }
245
+ }
246
+ // ── Dispatch Helpers ────────────────────────────────────────────────
247
+ /**
248
+ * Dispatch the `list` action based on the `resource` sub-parameter.
249
+ */
250
+ async function dispatchList(args) {
251
+ const resource = args.resource ?? "tags";
252
+ switch (resource) {
253
+ case "tags":
254
+ return listTagsHandler();
255
+ case "hooks":
256
+ return listHooksHandler({ tags: args.tags });
257
+ case "skills":
258
+ return listSkillsHandler({ tags: args.tags });
259
+ default:
260
+ return errorResult(`Invalid resource '${resource}' for list action. Use: tags, hooks, or skills.`);
261
+ }
262
+ }
263
+ /**
264
+ * Dispatch the `get_reference` action based on the `resource` sub-parameter.
265
+ */
266
+ async function dispatchGetReference(args) {
267
+ const resource = args.resource ?? "design_patterns";
268
+ const tags = requireParam(args.tags, "tags", "get_reference");
269
+ switch (resource) {
270
+ case "nfr":
271
+ return getNfrTemplateHandler({ tags });
272
+ case "design_patterns":
273
+ return getDesignReferenceHandler({ tags });
274
+ default:
275
+ return errorResult(`Invalid resource '${resource}' for get_reference action. Use: nfr or design_patterns.`);
276
+ }
277
+ }
278
+ // ── Utilities ───────────────────────────────────────────────────────
279
+ /**
280
+ * Require a parameter that is mandatory for a given action.
281
+ * Throws with a clear error if missing.
282
+ *
283
+ * @param value - The parameter value (may be undefined)
284
+ * @param paramName - Parameter name for the error message
285
+ * @param action - Action name for context
286
+ * @returns The non-undefined value
287
+ */
288
+ function requireParam(value, paramName, action) {
289
+ if (value === undefined || (Array.isArray(value) && value.length === 0)) {
290
+ throw new Error(`Missing required parameter '${paramName}' for action '${action}'.`);
291
+ }
292
+ return value;
293
+ }
294
+ /**
295
+ * Build an error result in MCP tool response format.
296
+ *
297
+ * @param message - Error description
298
+ * @returns MCP tool response with error text
299
+ */
300
+ function errorResult(message) {
301
+ return {
302
+ content: [{ type: "text", text: `Error: ${message}` }],
303
+ };
304
+ }
305
+ //# sourceMappingURL=forgecraft-router.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"forgecraft-router.js","sourceRoot":"","sources":["../../src/tools/forgecraft-router.ts"],"names":[],"mappings":"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"}
@@ -15,20 +15,20 @@ export declare const scaffoldProjectSchema: z.ZodObject<{
15
15
  output_targets: z.ZodDefault<z.ZodArray<z.ZodEnum<[string, ...string[]]>, "many">>;
16
16
  }, "strip", z.ZodTypeAny, {
17
17
  tags: string[];
18
- project_dir: string;
19
18
  language: "typescript" | "python";
19
+ project_dir: string;
20
20
  project_name: string;
21
21
  dry_run: boolean;
22
- force: boolean;
23
22
  output_targets: string[];
23
+ force: boolean;
24
24
  }, {
25
25
  tags: string[];
26
26
  project_dir: string;
27
27
  project_name: string;
28
28
  language?: "typescript" | "python" | undefined;
29
29
  dry_run?: boolean | undefined;
30
- force?: boolean | undefined;
31
30
  output_targets?: string[] | undefined;
31
+ force?: boolean | undefined;
32
32
  }>;
33
33
  export declare function scaffoldProjectHandler(args: z.infer<typeof scaffoldProjectSchema>): Promise<{
34
34
  content: Array<{
@@ -15,19 +15,19 @@ export declare const setupProjectSchema: z.ZodObject<{
15
15
  dry_run: z.ZodDefault<z.ZodBoolean>;
16
16
  output_targets: z.ZodDefault<z.ZodArray<z.ZodEnum<[string, ...string[]]>, "many">>;
17
17
  }, "strip", z.ZodTypeAny, {
18
- project_dir: string;
19
18
  tier: string;
19
+ project_dir: string;
20
20
  dry_run: boolean;
21
21
  output_targets: string[];
22
22
  tags?: string[] | undefined;
23
- description?: string | undefined;
24
23
  project_name?: string | undefined;
24
+ description?: string | undefined;
25
25
  }, {
26
26
  project_dir: string;
27
27
  tags?: string[] | undefined;
28
- description?: string | undefined;
29
28
  tier?: string | undefined;
30
29
  project_name?: string | undefined;
30
+ description?: string | undefined;
31
31
  dry_run?: boolean | undefined;
32
32
  output_targets?: string[] | undefined;
33
33
  }>;
@@ -268,7 +268,7 @@ function buildSetupOutput(analysis, tags, composed, configYaml, tier, filesWritt
268
268
  text += `- ${f} — created\n`;
269
269
  }
270
270
  if (filesWritten.length === 0) {
271
- text += `- (instruction files preserved — use generate_instructions with merge_with_existing to update)\n`;
271
+ text += `- (instruction files preserved — use forgecraft action='generate' with merge=true to update)\n`;
272
272
  }
273
273
  text += "\n";
274
274
  text += `## Template Summary\n`;
@@ -283,13 +283,13 @@ function buildSetupOutput(analysis, tags, composed, configYaml, tier, filesWritt
283
283
  text += `## Next Steps\n`;
284
284
  const steps = [];
285
285
  if (!analysis.hasHooks) {
286
- steps.push("Run `scaffold_project` to generate folder structure and hooks");
286
+ steps.push("Run `forgecraft` with action='scaffold' to generate folder structure and hooks");
287
287
  }
288
288
  if (analysis.completenessGaps.includes("prd_exists")) {
289
289
  steps.push("Create docs/PRD.md with your project requirements");
290
290
  }
291
291
  steps.push("Adjust forgecraft.yaml to add/exclude specific content blocks");
292
- steps.push("Use `refresh_project` later if project scope changes");
292
+ steps.push("Use `forgecraft` with action='refresh' later if project scope changes");
293
293
  steps.push("Add more output targets in forgecraft.yaml (cursor, copilot, windsurf, cline, aider)");
294
294
  if (tier === "core") {
295
295
  steps.push("Upgrade tier to 'recommended' when ready for more patterns: edit forgecraft.yaml");
@@ -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":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAC/D,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,IAAI,MAAM,SAAS,CAAC;AAC3B,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAE/H,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAClF,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,EAAE,0BAA0B,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AACtF,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AACnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,iCAAiC,CAAC;AACvE,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAEzD,MAAM,MAAM,GAAG,YAAY,CAAC,qBAAqB,CAAC,CAAC;AAEnD,mEAAmE;AACnE,MAAM,sBAAsB,GAAG,GAAG,CAAC;AAEnC,wEAAwE;AAExE,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC;IACzC,WAAW,EAAE,CAAC;SACX,MAAM,EAAE;SACR,QAAQ,CAAC,8CAA8C,CAAC;IAC3D,YAAY,EAAE,CAAC;SACZ,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,uEAAuE,CAAC;IACpF,WAAW,EAAE,CAAC;SACX,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,gEAAgE,CAAC;IAC7E,IAAI,EAAE,CAAC;SACJ,IAAI,CAAC,aAAiD,CAAC;SACvD,OAAO,CAAC,aAAa,CAAC;SACtB,QAAQ,CACP,gJAAgJ,CACjJ;IACH,IAAI,EAAE,CAAC;SACJ,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,QAA4C,CAAC,CAAC;SAC3D,QAAQ,EAAE;SACV,QAAQ,CAAC,mFAAmF,CAAC;IAChG,OAAO,EAAE,CAAC;SACP,OAAO,EAAE;SACT,OAAO,CAAC,KAAK,CAAC;SACd,QAAQ,CAAC,4EAA4E,CAAC;IACzF,cAAc,EAAE,CAAC;SACd,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,kBAAsD,CAAC,CAAC;SACrE,OAAO,CAAC,CAAC,QAAQ,CAAC,CAAC;SACnB,QAAQ,CAAC,2IAA2I,CAAC;CACzJ,CAAC,CAAC;AAeH,wEAAwE;AAExE,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,IAAwC;IAExC,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC;IACpC,MAAM,WAAW,GAAG,IAAI,CAAC,YAAY,IAAI,gBAAgB,CAAC,UAAU,CAAC,CAAC;IACtE,MAAM,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,aAAa,CAAgB,CAAC;IACzD,MAAM,aAAa,GAAG,CAAC,IAAI,CAAC,cAAc,IAAI,CAAC,qBAAqB,CAAC,CAAmB,CAAC;IAEzF,MAAM,CAAC,IAAI,CAAC,wBAAwB,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;IAElF,kEAAkE;IAClE,MAAM,QAAQ,GAAG,mBAAmB,CAAC,UAAU,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;IAEnE,kEAAkE;IAClE,MAAM,SAAS,GAAG,aAAa,CAAC,IAAI,CAAC,IAAyB,EAAE,QAAQ,CAAC,CAAC;IAE1E,kEAAkE;IAClE,MAAM,MAAM,GAAG,WAAW,CAAC,QAAQ,CAAC,cAAc,EAAE,SAAS,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC;IAElF,kEAAkE;IAClE,MAAM,YAAY,GAAG,MAAM,0BAA0B,CACnD,SAAS,EACT,MAAM,CAAC,YAAY,CACpB,CAAC;IAEF,kEAAkE;IAClE,MAAM,QAAQ,GAAG,gBAAgB,CAAC,SAAS,EAAE,YAAY,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;IAEvE,kEAAkE;IAClE,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;IAEvE,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;QACjB,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,iBAAiB,CAAC,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,UAAU,EAAE,IAAI,EAAE,aAAa,CAAC,EAAE,CAAC,EAAE,CAAC;IAClI,CAAC;IAED,kEAAkE;IAClE,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,EAAE,iBAAiB,CAAC,CAAC;IACvD,aAAa,CAAC,UAAU,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;IAE/C,kEAAkE;IAClE,MAAM,OAAO,GAAG,oBAAoB,CAAC,UAAU,EAAE,WAAW,EAAE,cAAc,CAAC,UAAU,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;IACvH,MAAM,YAAY,GAAa,EAAE,CAAC;IAElC,KAAK,MAAM,MAAM,IAAI,aAAa,EAAE,CAAC;QACnC,MAAM,YAAY,GAAG,qBAAqB,CAAC,MAAM,CAAC,CAAC;QACnD,MAAM,UAAU,GAAG,YAAY,CAAC,SAAS;YACvC,CAAC,CAAC,IAAI,CAAC,UAAU,EAAE,YAAY,CAAC,SAAS,EAAE,YAAY,CAAC,QAAQ,CAAC;YACjE,CAAC,CAAC,IAAI,CAAC,UAAU,EAAE,YAAY,CAAC,QAAQ,CAAC,CAAC;QAE5C,IAAI,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;YAC3B,sCAAsC;YACtC,SAAS;QACX,CAAC;QAED,MAAM,OAAO,GAAG,qBAAqB,CAAC,QAAQ,CAAC,iBAAiB,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;QACnF,SAAS,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACpD,aAAa,CAAC,UAAU,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;QAC5C,YAAY,CAAC,IAAI,CAAC,GAAG,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC,YAAY,CAAC,SAAS,GAAG,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,YAAY,CAAC,QAAQ,EAAE,CAAC,CAAC;IAC7G,CAAC;IAED,MAAM,MAAM,GAAG,gBAAgB,CAAC,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,UAAU,EAAE,IAAI,EAAE,YAAY,EAAE,aAAa,CAAC,CAAC;IAC9G,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;AACvD,CAAC;AAED,wEAAwE;AAExE;;GAEG;AACH,SAAS,mBAAmB,CAC1B,UAAkB,EAClB,WAAoB;IAEpB,MAAM,UAAU,GAAG,UAAU,CAAC,IAAI,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC,CAAC;IAChE,uCAAuC;IACvC,MAAM,kBAAkB,GACtB,UAAU,CAAC,IAAI,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;QACzC,UAAU,CAAC,IAAI,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC;QAC5C,UAAU,CAAC,IAAI,CAAC,UAAU,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;QAChD,UAAU,CAAC,IAAI,CAAC,UAAU,EAAE,SAAS,EAAE,yBAAyB,CAAC,CAAC;QAClE,UAAU,CAAC,IAAI,CAAC,UAAU,EAAE,gBAAgB,CAAC,CAAC;QAC9C,UAAU,CAAC,IAAI,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC;QAC3C,UAAU,CAAC,IAAI,CAAC,UAAU,EAAE,gBAAgB,CAAC,CAAC,CAAC;IACjD,MAAM,WAAW,GAAG,UAAU,CAAC,IAAI,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC,CAAC;IAC9D,MAAM,QAAQ,GAAG,UAAU,CAAC,IAAI,CAAC,UAAU,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC;IAClE,MAAM,SAAS,GAAG,UAAU,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC,CAAC;IACtD,MAAM,YAAY,GAAG,CAAC,UAAU,IAAI,CAAC,SAAS,CAAC;IAE/C,MAAM,YAAY,GAAU,CAAC,WAAW,CAAC,CAAC;IAC1C,MAAM,WAAW,GAA6B,EAAE,CAAC;IAEjD,gBAAgB;IAChB,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,MAAM,UAAU,GAAG,cAAc,CAAC,UAAU,CAAC,CAAC;QAC9C,KAAK,MAAM,CAAC,IAAI,UAAU,EAAE,CAAC;YAC3B,IAAI,CAAC,CAAC,UAAU,IAAI,sBAAsB,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC5E,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;YAC3B,CAAC;YACD,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC;QAClC,CAAC;IACH,CAAC;IAED,uBAAuB;IACvB,IAAI,WAAW,EAAE,CAAC;QAChB,MAAM,UAAU,GAAG,kBAAkB,CAAC,WAAW,CAAC,CAAC;QACnD,KAAK,MAAM,CAAC,IAAI,UAAU,EAAE,CAAC;YAC3B,IAAI,CAAC,CAAC,UAAU,IAAI,sBAAsB,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC5E,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;YAC3B,CAAC;YACD,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;gBACxB,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC;YAClC,CAAC;QACH,CAAC;IACH,CAAC;IAED,oBAAoB;IACpB,MAAM,gBAAgB,GAAa,EAAE,CAAC;IACtC,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,MAAM,YAAY,GAAG,iBAAiB,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;QACjE,KAAK,MAAM,IAAI,IAAI,YAAY,CAAC,OAAO,EAAE,CAAC;YACxC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACpC,CAAC;IACH,CAAC;IAED,kBAAkB;IAClB,MAAM,cAAc,GAAG,iBAAiB,CAAC,UAAU,CAAC,CAAC;IAErD,OAAO;QACL,YAAY;QACZ,YAAY;QACZ,WAAW;QACX,cAAc;QACd,gBAAgB;QAChB,kBAAkB;QAClB,WAAW;QACX,QAAQ;KACT,CAAC;AACJ,CAAC;AAED,wEAAwE;AAExE;;;GAGG;AACH,SAAS,aAAa,CACpB,YAA+B,EAC/B,QAAuB;IAEvB,IAAI,YAAY,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5C,MAAM,IAAI,GAAG,YAAY,CAAC,QAAQ,CAAC,WAAW,CAAC;YAC7C,CAAC,CAAC,YAAY;YACd,CAAC,CAAC,CAAC,WAAkB,EAAE,GAAG,YAAY,CAAC,CAAC;QAC1C,OAAO,IAAI,CAAC;IACd,CAAC;IAED,+CAA+C;IAC/C,MAAM,MAAM,GAAG,IAAI,GAAG,CAAM,QAAQ,CAAC,YAAY,CAAC,CAAC;IACnD,IAAI,QAAQ,CAAC,cAAc,EAAE,cAAc,EAAE,CAAC;QAC5C,KAAK,MAAM,CAAC,IAAI,QAAQ,CAAC,cAAc,CAAC,cAAc,EAAE,CAAC;YACvD,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QAChB,CAAC;IACH,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AAC5B,CAAC;AAED,wEAAwE;AAExE;;;GAGG;AACH,SAAS,WAAW,CAClB,QAAiC,EACjC,IAAW,EACX,IAAiB,EACjB,WAAmB;IAEnB,OAAO;QACL,WAAW,EAAE,QAAQ,EAAE,WAAW,IAAI,WAAW;QACjD,IAAI,EAAE,IAAI;QACV,IAAI;QACJ,YAAY,EAAE,QAAQ,EAAE,YAAY;QACpC,OAAO,EAAE,QAAQ,EAAE,OAAO;QAC1B,OAAO,EAAE,QAAQ,EAAE,OAAO;QAC1B,SAAS,EAAE,QAAQ,EAAE,SAAS,IAAI,EAAE;KACrC,CAAC;AACJ,CAAC;AAED,wEAAwE;AAExE;;GAEG;AACH,SAAS,gBAAgB,CAAC,UAAkB;IAC1C,MAAM,KAAK,GAAG,UAAU,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACxE,OAAO,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,YAAY,CAAC;AACjD,CAAC;AAED;;GAEG;AACH,SAAS,iBAAiB,CACxB,QAAuB,EACvB,IAAW,EACX,QAA6C,EAC7C,UAAkB,EAClB,IAAiB,EACjB,aAA6B;IAE7B,IAAI,IAAI,GAAG,4BAA4B,CAAC;IACxC,IAAI,IAAI,QAAQ,CAAC,YAAY;QAC3B,CAAC,CAAC,iCAAiC;QACnC,CAAC,CAAC,sCAAsC,CAAC;IAC3C,IAAI,IAAI,qBAAqB,IAAI,IAAI,CAAC;IACtC,IAAI,IAAI,aAAa,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC;IAC7D,IAAI,IAAI,uBAAuB,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;IAE/G,WAAW;IACX,IAAI,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACjD,IAAI,IAAI,6BAA6B,CAAC;QACtC,KAAK,MAAM,CAAC,GAAG,EAAE,QAAQ,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;YACnE,IAAI,IAAI,OAAO,GAAG,OAAO,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;QACnD,CAAC;QACD,IAAI,IAAI,IAAI,CAAC;IACf,CAAC;IAED,mBAAmB;IACnB,IAAI,IAAI,8BAA8B,CAAC;IACvC,IAAI,IAAI,yBAAyB,QAAQ,CAAC,iBAAiB,CAAC,MAAM,IAAI,CAAC;IACvE,IAAI,IAAI,wBAAwB,QAAQ,CAAC,gBAAgB,CAAC,MAAM,IAAI,CAAC;IACrE,IAAI,IAAI,mBAAmB,QAAQ,CAAC,SAAS,CAAC,MAAM,IAAI,CAAC;IACzD,IAAI,IAAI,YAAY,QAAQ,CAAC,KAAK,CAAC,MAAM,IAAI,CAAC;IAC9C,IAAI,IAAI,aAAa,QAAQ,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC;IAChD,IAAI,IAAI,8BAA8B,QAAQ,CAAC,YAAY,CAAC,MAAM,IAAI,CAAC;IACvE,IAAI,IAAI,qBAAqB,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;IAE7G,iBAAiB;IACjB,IAAI,IAAI,sBAAsB,CAAC;IAC/B,MAAM,MAAM,GAAG,QAAQ,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,MAAM,CAAC,KAAK,MAAM,CAAC,CAAC,MAAM,CAAC;IAC9F,MAAM,KAAK,GAAG,QAAQ,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,aAAa,CAAC,CAAC,MAAM,CAAC;IACxF,MAAM,KAAK,GAAG,QAAQ,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC,MAAM,CAAC;IACrF,IAAI,IAAI,yBAAyB,MAAM,UAAU,KAAK,iBAAiB,KAAK,aAAa,CAAC;IAE1F,MAAM,OAAO,GAAG,QAAQ,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,MAAM,CAAC,KAAK,MAAM,CAAC,CAAC,MAAM,CAAC;IACvF,MAAM,MAAM,GAAG,QAAQ,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,aAAa,CAAC,CAAC,MAAM,CAAC;IACjF,MAAM,MAAM,GAAG,QAAQ,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC,MAAM,CAAC;IAC9E,IAAI,IAAI,WAAW,OAAO,UAAU,MAAM,iBAAiB,MAAM,eAAe,CAAC;IAEjF,iBAAiB;IACjB,IAAI,IAAI,yCAAyC,CAAC;IAClD,IAAI,IAAI,eAAe,UAAU,YAAY,CAAC;IAE9C,OAAO;IACP,IAAI,QAAQ,CAAC,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACzC,IAAI,IAAI,mBAAmB,CAAC;QAC5B,IAAI,IAAI,QAAQ,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAClE,IAAI,IAAI,MAAM,CAAC;IACjB,CAAC;IAED,IAAI,IAAI,6EAA6E,CAAC;IACtF,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;GAEG;AACH,SAAS,gBAAgB,CACvB,QAAuB,EACvB,IAAW,EACX,QAA6C,EAC7C,UAAkB,EAClB,IAAiB,EACjB,YAAsB,EACtB,aAA6B;IAE7B,IAAI,IAAI,GAAG,8BAA8B,CAAC;IAC1C,IAAI,IAAI,aAAa,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC;IAC7D,IAAI,IAAI,qBAAqB,IAAI,IAAI,CAAC;IACtC,IAAI,IAAI,gBAAgB,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;IAExG,IAAI,IAAI,oBAAoB,CAAC;IAC7B,IAAI,IAAI,6CAA6C,CAAC;IACtD,KAAK,MAAM,CAAC,IAAI,YAAY,EAAE,CAAC;QAC7B,IAAI,IAAI,KAAK,CAAC,cAAc,CAAC;IAC/B,CAAC;IACD,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC9B,IAAI,IAAI,gGAAgG,CAAC;IAC3G,CAAC;IACD,IAAI,IAAI,IAAI,CAAC;IAEb,IAAI,IAAI,uBAAuB,CAAC;IAChC,IAAI,IAAI,KAAK,QAAQ,CAAC,iBAAiB,CAAC,MAAM,+BAA+B,CAAC;IAC9E,IAAI,IAAI,KAAK,QAAQ,CAAC,SAAS,CAAC,MAAM,2BAA2B,CAAC;IAClE,IAAI,IAAI,KAAK,QAAQ,CAAC,KAAK,CAAC,MAAM,oBAAoB,CAAC;IACvD,IAAI,IAAI,KAAK,QAAQ,CAAC,MAAM,CAAC,MAAM,qBAAqB,CAAC;IACzD,IAAI,IAAI,KAAK,QAAQ,CAAC,YAAY,CAAC,MAAM,wCAAwC,CAAC;IAElF,IAAI,IAAI,+BAA+B,CAAC;IACxC,IAAI,IAAI,eAAe,UAAU,YAAY,CAAC;IAE9C,0CAA0C;IAC1C,IAAI,IAAI,iBAAiB,CAAC;IAC1B,MAAM,KAAK,GAAa,EAAE,CAAC;IAE3B,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC;QACvB,KAAK,CAAC,IAAI,CAAC,gFAAgF,CAAC,CAAC;IAC/F,CAAC;IACD,IAAI,QAAQ,CAAC,gBAAgB,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;QACrD,KAAK,CAAC,IAAI,CAAC,mDAAmD,CAAC,CAAC;IAClE,CAAC;IACD,KAAK,CAAC,IAAI,CAAC,+DAA+D,CAAC,CAAC;IAC5E,KAAK,CAAC,IAAI,CAAC,uEAAuE,CAAC,CAAC;IACpF,KAAK,CAAC,IAAI,CAAC,sFAAsF,CAAC,CAAC;IAEnG,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;QACpB,KAAK,CAAC,IAAI,CAAC,kFAAkF,CAAC,CAAC;IACjG,CAAC;IAED,IAAI,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACzD,IAAI,IAAI,yEAAyE,CAAC;IAElF,OAAO,IAAI,CAAC;AACd,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "forgecraft-mcp",
3
- "version": "0.3.0",
3
+ "version": "0.4.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",