leadcode 0.1.2 → 0.2.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.
@@ -5,6 +5,7 @@ import { analyzeDependencies } from "../analyzers/dependencies.js";
5
5
  import { analyzeStructure } from "../analyzers/structure.js";
6
6
  import { detectFramework, detectStack } from "../analyzers/detection.js";
7
7
  import { getConventions, getActiveCrossRefs, detectGaps, } from "../rules/index.js";
8
+ import { getMessages, interpolate } from "../i18n/index.js";
8
9
  export function registerValidateClaudeMd(server) {
9
10
  server.registerTool("validate-claude-md", {
10
11
  title: "Validate CLAUDE.md",
@@ -13,9 +14,15 @@ export function registerValidateClaudeMd(server) {
13
14
  projectPath: z
14
15
  .string()
15
16
  .describe("Absolute path to the project root directory"),
17
+ language: z
18
+ .enum(["en", "fr"])
19
+ .optional()
20
+ .describe("Output language for validation messages (default: en)"),
16
21
  },
17
- }, async ({ projectPath }) => {
22
+ }, async ({ projectPath, language }) => {
18
23
  try {
24
+ const locale = language ?? "en";
25
+ const msg = getMessages(locale);
19
26
  const claudeMdPath = join(projectPath, "CLAUDE.md");
20
27
  try {
21
28
  await stat(claudeMdPath);
@@ -23,7 +30,7 @@ export function registerValidateClaudeMd(server) {
23
30
  catch {
24
31
  return {
25
32
  isError: true,
26
- content: [{ type: "text", text: `No CLAUDE.md found at ${claudeMdPath}. Use generate-claude-md first.` }],
33
+ content: [{ type: "text", text: interpolate(msg.validation.noClaudeMd, { path: claudeMdPath }) }],
27
34
  };
28
35
  }
29
36
  const claudeMd = await readFile(claudeMdPath, "utf-8");
@@ -51,28 +58,28 @@ export function registerValidateClaudeMd(server) {
51
58
  drifts.push({
52
59
  type: "outdated",
53
60
  section: "Stack",
54
- message: `Framework version ${framework.version} not found in CLAUDE.md. Version may have been updated.`,
61
+ message: interpolate(msg.validation.frameworkVersionOutdated, { version: framework.version }),
55
62
  });
56
63
  }
57
64
  }
58
65
  // Check for new techs not mentioned
59
66
  const techFields = [
60
- ["ORM", detected.orm],
61
- ["Auth", detected.auth],
62
- ["Validation", detected.validation],
63
- ["CSS", detected.css],
64
- ["Testing", detected.testing],
65
- ["i18n", detected.i18n],
66
- ["Payments", detected.payments],
67
- ["State Management", detected.stateManagement],
68
- ["UI Components", detected.uiComponents],
67
+ [msg.templates.stackLabels.orm, detected.orm],
68
+ [msg.templates.stackLabels.auth, detected.auth],
69
+ [msg.templates.stackLabels.validation, detected.validation],
70
+ [msg.templates.stackLabels.css, detected.css],
71
+ [msg.templates.stackLabels.testing, detected.testing],
72
+ [msg.templates.stackLabels.i18n, detected.i18n],
73
+ [msg.templates.stackLabels.payments, detected.payments],
74
+ [msg.templates.stackLabels.stateManagement, detected.stateManagement],
75
+ [msg.templates.stackLabels.uiComponents, detected.uiComponents],
69
76
  ];
70
77
  for (const [label, value] of techFields) {
71
78
  if (value && !claudeMd.toLowerCase().includes(value.toLowerCase())) {
72
79
  drifts.push({
73
80
  type: "missing",
74
81
  section: "Stack",
75
- message: `${label}: ${value} is in the project but not mentioned in CLAUDE.md.`,
82
+ message: interpolate(msg.validation.techMissing, { label, value }),
76
83
  });
77
84
  }
78
85
  }
@@ -83,7 +90,7 @@ export function registerValidateClaudeMd(server) {
83
90
  drifts.push({
84
91
  type: "missing",
85
92
  section: "Conventions",
86
- message: `Convention "${conv.description}" is applicable but not in CLAUDE.md.`,
93
+ message: interpolate(msg.validation.conventionMissing, { description: conv.description }),
87
94
  });
88
95
  }
89
96
  }
@@ -95,7 +102,7 @@ export function registerValidateClaudeMd(server) {
95
102
  drifts.push({
96
103
  type: "missing",
97
104
  section: "Cross-Stack Rules",
98
- message: `Cross-stack rule for ${combo} is applicable but not in CLAUDE.md.`,
105
+ message: interpolate(msg.validation.crossStackMissing, { combo }),
99
106
  });
100
107
  }
101
108
  }
@@ -106,7 +113,7 @@ export function registerValidateClaudeMd(server) {
106
113
  drifts.push({
107
114
  type: "missing",
108
115
  section: "Gaps",
109
- message: `High-severity gap still exists: ${gap.message}`,
116
+ message: interpolate(msg.validation.gapStillExists, { message: gap.message }),
110
117
  });
111
118
  }
112
119
  return {
@@ -118,8 +125,8 @@ export function registerValidateClaudeMd(server) {
118
125
  drifts,
119
126
  total: drifts.length,
120
127
  summary: drifts.length === 0
121
- ? "CLAUDE.md is in sync with the project."
122
- : `Found ${drifts.length} drift(s). Consider running generate-claude-md to update.`,
128
+ ? msg.validation.inSync
129
+ : interpolate(msg.validation.driftsFound, { count: drifts.length }),
123
130
  }, null, 2),
124
131
  },
125
132
  ],
@@ -1 +1 @@
1
- {"version":3,"file":"validate-claude-md.js","sourceRoot":"","sources":["../../src/tools/validate-claude-md.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validate-claude-md.js","sourceRoot":"","sources":["../../src/tools/validate-claude-md.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "leadcode",
3
- "version": "0.1.2",
3
+ "version": "0.2.0",
4
4
  "description": "Virtual Lead Tech MCP server for Claude Code – analyzes repos, detects gaps, and generates structured CLAUDE.md files",
5
5
  "type": "module",
6
6
  "bin": {