skannr 0.2.0 → 0.2.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 (73) hide show
  1. package/dist/cli.js +86 -0
  2. package/dist/cli.js.map +1 -1
  3. package/dist/guard/call-context.d.ts +14 -0
  4. package/dist/guard/call-context.d.ts.map +1 -0
  5. package/dist/guard/call-context.js +120 -0
  6. package/dist/guard/call-context.js.map +1 -0
  7. package/dist/guard/fix-applier.d.ts +38 -0
  8. package/dist/guard/fix-applier.d.ts.map +1 -0
  9. package/dist/guard/fix-applier.js +181 -0
  10. package/dist/guard/fix-applier.js.map +1 -0
  11. package/dist/guard/hook-installer.d.ts +19 -0
  12. package/dist/guard/hook-installer.d.ts.map +1 -0
  13. package/dist/guard/hook-installer.js +119 -0
  14. package/dist/guard/hook-installer.js.map +1 -0
  15. package/dist/guard/index.d.ts +34 -0
  16. package/dist/guard/index.d.ts.map +1 -0
  17. package/dist/guard/index.js +152 -0
  18. package/dist/guard/index.js.map +1 -0
  19. package/dist/guard/provider.d.ts +12 -0
  20. package/dist/guard/provider.d.ts.map +1 -0
  21. package/dist/guard/provider.js +211 -0
  22. package/dist/guard/provider.js.map +1 -0
  23. package/dist/guard/review-runner.d.ts +21 -0
  24. package/dist/guard/review-runner.d.ts.map +1 -0
  25. package/dist/guard/review-runner.js +85 -0
  26. package/dist/guard/review-runner.js.map +1 -0
  27. package/dist/guard/rules-loader.d.ts +10 -0
  28. package/dist/guard/rules-loader.d.ts.map +1 -0
  29. package/dist/guard/rules-loader.js +156 -0
  30. package/dist/guard/rules-loader.js.map +1 -0
  31. package/dist/guard/schema.d.ts +182 -0
  32. package/dist/guard/schema.d.ts.map +1 -0
  33. package/dist/guard/schema.js +53 -0
  34. package/dist/guard/schema.js.map +1 -0
  35. package/dist/guard/symbol-diff.d.ts +18 -0
  36. package/dist/guard/symbol-diff.d.ts.map +1 -0
  37. package/dist/guard/symbol-diff.js +243 -0
  38. package/dist/guard/symbol-diff.js.map +1 -0
  39. package/dist/guard/types.d.ts +62 -0
  40. package/dist/guard/types.d.ts.map +1 -0
  41. package/dist/guard/types.js +6 -0
  42. package/dist/guard/types.js.map +1 -0
  43. package/dist/index.d.ts +1 -1
  44. package/dist/index.d.ts.map +1 -1
  45. package/dist/index.js +1 -2
  46. package/dist/index.js.map +1 -1
  47. package/dist/mcp-server.d.ts.map +1 -1
  48. package/dist/mcp-server.js +44 -0
  49. package/dist/mcp-server.js.map +1 -1
  50. package/dist/scanner.d.ts +0 -1
  51. package/dist/scanner.d.ts.map +1 -1
  52. package/dist/scanner.js +0 -7
  53. package/dist/scanner.js.map +1 -1
  54. package/package.json +3 -2
  55. package/src/cli.ts +101 -0
  56. package/src/guard/call-context.ts +101 -0
  57. package/src/guard/fix-applier.ts +172 -0
  58. package/src/guard/hook-installer.ts +96 -0
  59. package/src/guard/index.ts +134 -0
  60. package/src/guard/provider.ts +209 -0
  61. package/src/guard/review-runner.ts +110 -0
  62. package/src/guard/rules-loader.ts +131 -0
  63. package/src/guard/schema.ts +59 -0
  64. package/src/guard/symbol-diff.ts +227 -0
  65. package/src/guard/types.ts +68 -0
  66. package/src/index.ts +2 -2
  67. package/src/mcp-server.ts +49 -0
  68. package/src/scanner.ts +0 -7
  69. package/gemini-extension/GEMINI.md +0 -26
  70. package/gemini-extension/gemini-extension.json +0 -12
  71. package/gemini-extension/package.json +0 -14
  72. package/gemini-extension/src/server.ts +0 -69
  73. package/gemini-extension/tsconfig.json +0 -14
@@ -0,0 +1,243 @@
1
+ "use strict";
2
+ /**
3
+ * Build symbol-level diff units from staged git changes.
4
+ * Uses Skannr's existing parser to identify which symbols changed,
5
+ * instead of working with raw file diffs.
6
+ */
7
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
8
+ if (k2 === undefined) k2 = k;
9
+ var desc = Object.getOwnPropertyDescriptor(m, k);
10
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
11
+ desc = { enumerable: true, get: function() { return m[k]; } };
12
+ }
13
+ Object.defineProperty(o, k2, desc);
14
+ }) : (function(o, m, k, k2) {
15
+ if (k2 === undefined) k2 = k;
16
+ o[k2] = m[k];
17
+ }));
18
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
19
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
20
+ }) : function(o, v) {
21
+ o["default"] = v;
22
+ });
23
+ var __importStar = (this && this.__importStar) || (function () {
24
+ var ownKeys = function(o) {
25
+ ownKeys = Object.getOwnPropertyNames || function (o) {
26
+ var ar = [];
27
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
28
+ return ar;
29
+ };
30
+ return ownKeys(o);
31
+ };
32
+ return function (mod) {
33
+ if (mod && mod.__esModule) return mod;
34
+ var result = {};
35
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
36
+ __setModuleDefault(result, mod);
37
+ return result;
38
+ };
39
+ })();
40
+ Object.defineProperty(exports, "__esModule", { value: true });
41
+ exports.getStagedFiles = getStagedFiles;
42
+ exports.buildSymbolDiffs = buildSymbolDiffs;
43
+ exports.buildSymbolDiffsFromDiff = buildSymbolDiffsFromDiff;
44
+ const path = __importStar(require("path"));
45
+ const fs = __importStar(require("fs"));
46
+ const child_process_1 = require("child_process");
47
+ const registry_1 = require("../languages/registry");
48
+ const scanner_1 = require("../scanner");
49
+ /** Get the list of staged files (paths relative to root). */
50
+ function getStagedFiles(root) {
51
+ try {
52
+ const output = (0, child_process_1.execSync)('git diff --cached --name-only --diff-filter=ACMR', {
53
+ cwd: root,
54
+ encoding: 'utf-8',
55
+ });
56
+ return output.trim().split('\n').filter(Boolean);
57
+ }
58
+ catch {
59
+ return [];
60
+ }
61
+ }
62
+ /** Get the diff text for a specific staged file. */
63
+ function getStagedDiff(root, file) {
64
+ try {
65
+ return (0, child_process_1.execSync)(`git diff --cached -- "${file}"`, {
66
+ cwd: root,
67
+ encoding: 'utf-8',
68
+ maxBuffer: 5 * 1024 * 1024,
69
+ });
70
+ }
71
+ catch {
72
+ return '';
73
+ }
74
+ }
75
+ /** Get the old (HEAD) version of a file, or null if newly added. */
76
+ function getHeadContent(root, file) {
77
+ try {
78
+ return (0, child_process_1.execSync)(`git show HEAD:"${file}"`, {
79
+ cwd: root,
80
+ encoding: 'utf-8',
81
+ maxBuffer: 5 * 1024 * 1024,
82
+ });
83
+ }
84
+ catch {
85
+ return null;
86
+ }
87
+ }
88
+ /** Extract changed line numbers from a unified diff. */
89
+ function extractChangedLines(diff) {
90
+ const lines = new Set();
91
+ let currentLine = 0;
92
+ for (const line of diff.split('\n')) {
93
+ const hunkMatch = line.match(/^@@ -\d+(?:,\d+)? \+(\d+)/);
94
+ if (hunkMatch) {
95
+ currentLine = parseInt(hunkMatch[1], 10);
96
+ continue;
97
+ }
98
+ if (line.startsWith('+') && !line.startsWith('+++')) {
99
+ lines.add(currentLine);
100
+ currentLine++;
101
+ }
102
+ else if (line.startsWith('-') && !line.startsWith('---')) {
103
+ // Deleted lines don't advance the new-file line counter
104
+ }
105
+ else {
106
+ currentLine++;
107
+ }
108
+ }
109
+ return lines;
110
+ }
111
+ /**
112
+ * Determine which symbols in a file were affected by the staged changes.
113
+ * Matches symbols whose line range overlaps any changed line.
114
+ */
115
+ function findAffectedSymbols(symbols, changedLines, allSymbols) {
116
+ if (changedLines.size === 0)
117
+ return [];
118
+ // Build approximate end lines: each symbol extends until the next symbol starts
119
+ const sorted = [...allSymbols].sort((a, b) => a.line - b.line);
120
+ const affected = [];
121
+ for (let i = 0; i < sorted.length; i++) {
122
+ const sym = sorted[i];
123
+ const startLine = sym.line;
124
+ const endLine = i + 1 < sorted.length ? sorted[i + 1].line - 1 : startLine + 50;
125
+ for (let line = startLine; line <= endLine; line++) {
126
+ if (changedLines.has(line)) {
127
+ affected.push(sym);
128
+ break;
129
+ }
130
+ }
131
+ }
132
+ return affected;
133
+ }
134
+ /**
135
+ * Build symbol-level diff units for all staged files in the project.
136
+ * This is the primary input to the review runner.
137
+ */
138
+ function buildSymbolDiffs(root) {
139
+ const stagedFiles = getStagedFiles(root);
140
+ const units = [];
141
+ for (const relFile of stagedFiles) {
142
+ const absPath = path.join(root, relFile);
143
+ if (!fs.existsSync(absPath))
144
+ continue;
145
+ const adapter = (0, registry_1.getAdapter)(absPath);
146
+ const newContent = (0, scanner_1.readFileContent)(absPath);
147
+ if (!newContent)
148
+ continue;
149
+ const newSymbols = adapter.extractSymbols(newContent);
150
+ const oldContent = getHeadContent(root, relFile);
151
+ const oldSymbols = oldContent ? adapter.extractSymbols(oldContent) : [];
152
+ const diff = getStagedDiff(root, relFile);
153
+ const changedLines = extractChangedLines(diff);
154
+ // Find symbols that overlap changed lines in the new version
155
+ const affected = findAffectedSymbols(newSymbols, changedLines, newSymbols);
156
+ // Determine change type for each affected symbol
157
+ const oldSymbolNames = new Set(oldSymbols.map((s) => s.name));
158
+ for (const sym of affected) {
159
+ if (sym.kind === 'export')
160
+ continue; // skip synthetic export markers
161
+ const changeType = oldSymbolNames.has(sym.name) ? 'modified' : 'added';
162
+ const oldSym = oldSymbols.find((s) => s.name === sym.name);
163
+ units.push({
164
+ file: relFile,
165
+ symbol: sym.name,
166
+ changeType,
167
+ oldSignature: oldSym ? `${oldSym.kind} ${oldSym.name}` : undefined,
168
+ newSignature: `${sym.kind} ${sym.name}`,
169
+ callers: [], // populated by call-context module
170
+ callees: [], // populated by call-context module
171
+ diffText: diff,
172
+ });
173
+ }
174
+ // Handle deleted symbols (in old but not in new)
175
+ if (oldContent) {
176
+ const newSymbolNames = new Set(newSymbols.map((s) => s.name));
177
+ for (const oldSym of oldSymbols) {
178
+ if (oldSym.kind === 'export')
179
+ continue;
180
+ if (!newSymbolNames.has(oldSym.name)) {
181
+ units.push({
182
+ file: relFile,
183
+ symbol: oldSym.name,
184
+ changeType: 'deleted',
185
+ oldSignature: `${oldSym.kind} ${oldSym.name}`,
186
+ callers: [],
187
+ callees: [],
188
+ diffText: diff,
189
+ });
190
+ }
191
+ }
192
+ }
193
+ }
194
+ return units;
195
+ }
196
+ /**
197
+ * Build symbol diffs from a PR diff string (for --pr-mode).
198
+ */
199
+ function buildSymbolDiffsFromDiff(root, diffContent) {
200
+ const parseDiff = require('parse-diff');
201
+ const parsedFiles = parseDiff(diffContent);
202
+ const units = [];
203
+ for (const file of parsedFiles) {
204
+ const raw = file.to ?? file.from;
205
+ if (!raw || raw === '/dev/null')
206
+ continue;
207
+ const relFile = raw.replace(/^[ab]\//, '');
208
+ const absPath = path.join(root, relFile);
209
+ if (!fs.existsSync(absPath))
210
+ continue;
211
+ const adapter = (0, registry_1.getAdapter)(absPath);
212
+ const content = (0, scanner_1.readFileContent)(absPath);
213
+ if (!content)
214
+ continue;
215
+ const symbols = adapter.extractSymbols(content);
216
+ const changedLines = new Set();
217
+ for (const chunk of file.chunks) {
218
+ for (const change of chunk.changes) {
219
+ if (change.type === 'add' || change.type === 'del') {
220
+ const ln = change.ln;
221
+ if (typeof ln === 'number')
222
+ changedLines.add(ln);
223
+ }
224
+ }
225
+ }
226
+ const affected = findAffectedSymbols(symbols, changedLines, symbols);
227
+ for (const sym of affected) {
228
+ if (sym.kind === 'export')
229
+ continue;
230
+ units.push({
231
+ file: relFile,
232
+ symbol: sym.name,
233
+ changeType: 'modified',
234
+ newSignature: `${sym.kind} ${sym.name}`,
235
+ callers: [],
236
+ callees: [],
237
+ diffText: file.chunks.map((c) => c.content).join('\n'),
238
+ });
239
+ }
240
+ }
241
+ return units;
242
+ }
243
+ //# sourceMappingURL=symbol-diff.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"symbol-diff.js","sourceRoot":"","sources":["../../src/guard/symbol-diff.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,62 @@
1
+ /**
2
+ * Shared type definitions for the guard module.
3
+ */
4
+ /** Severity levels for rules and violations. */
5
+ export type Severity = 'low' | 'medium' | 'high' | 'critical';
6
+ /** A team-defined review rule. */
7
+ export interface GuardRule {
8
+ id: string;
9
+ description: string;
10
+ severity: Severity;
11
+ fixable: boolean;
12
+ category: string;
13
+ }
14
+ /** A single symbol-level diff unit sent to the LLM for review. */
15
+ export interface SymbolDiffUnit {
16
+ file: string;
17
+ symbol: string;
18
+ changeType: 'added' | 'modified' | 'deleted';
19
+ oldSignature?: string;
20
+ newSignature?: string;
21
+ callers: string[];
22
+ callees: string[];
23
+ diffText: string;
24
+ }
25
+ /** A violation found by the review. */
26
+ export interface Violation {
27
+ rule_id: string;
28
+ file: string;
29
+ symbol: string;
30
+ line_start: number;
31
+ line_end: number;
32
+ severity: Severity;
33
+ confidence: number;
34
+ fixable: boolean;
35
+ message: string;
36
+ suggested_fix?: string;
37
+ }
38
+ /** The structured response contract from the LLM. */
39
+ export interface ReviewResponse {
40
+ violations: Violation[];
41
+ status: 'pass' | 'fail';
42
+ summary: string;
43
+ }
44
+ /** Result of a full guard run. */
45
+ export interface GuardResult {
46
+ response: ReviewResponse;
47
+ rulesUsed: GuardRule[];
48
+ symbolsReviewed: number;
49
+ durationMs: number;
50
+ }
51
+ /** Guard configuration (provider, model, etc.). */
52
+ export interface GuardConfig {
53
+ /** LLM provider: 'gemini' | 'openai' */
54
+ provider: 'gemini' | 'openai';
55
+ /** Model name (e.g. 'gemini-2.0-flash-exp', 'gpt-4o'). */
56
+ model: string;
57
+ /** API key (resolved from env if not set). */
58
+ apiKey?: string;
59
+ /** OpenAI-compatible base URL (for openai provider). */
60
+ baseUrl?: string;
61
+ }
62
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/guard/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,gDAAgD;AAChD,MAAM,MAAM,QAAQ,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,UAAU,CAAC;AAE9D,kCAAkC;AAClC,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,QAAQ,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,kEAAkE;AAClE,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,OAAO,GAAG,UAAU,GAAG,SAAS,CAAC;IAC7C,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,uCAAuC;AACvC,MAAM,WAAW,SAAS;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,QAAQ,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,qDAAqD;AACrD,MAAM,WAAW,cAAc;IAC7B,UAAU,EAAE,SAAS,EAAE,CAAC;IACxB,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,kCAAkC;AAClC,MAAM,WAAW,WAAW;IAC1B,QAAQ,EAAE,cAAc,CAAC;IACzB,SAAS,EAAE,SAAS,EAAE,CAAC;IACvB,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,mDAAmD;AACnD,MAAM,WAAW,WAAW;IAC1B,wCAAwC;IACxC,QAAQ,EAAE,QAAQ,GAAG,QAAQ,CAAC;IAC9B,0DAA0D;IAC1D,KAAK,EAAE,MAAM,CAAC;IACd,8CAA8C;IAC9C,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,wDAAwD;IACxD,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB"}
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ /**
3
+ * Shared type definitions for the guard module.
4
+ */
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/guard/types.ts"],"names":[],"mappings":";AAAA;;GAEG"}
package/dist/index.d.ts CHANGED
@@ -10,7 +10,7 @@ export declare function analyzeProject(options?: AnalyzeOptions & {
10
10
  export { rankFiles } from './ranker';
11
11
  export { rankFilesEnhanced } from './ranker-enhanced';
12
12
  export { buildSkeletonForFile } from './skeletonizer';
13
- export { scanTypeScriptFiles, scanRocketChatFiles, scanFiles, discoverModules } from './scanner';
13
+ export { scanTypeScriptFiles, scanFiles, discoverModules } from './scanner';
14
14
  export { countTokens } from './tokenizer';
15
15
  export { buildSkeletonWithMapping, getSymbolDetails, saveMappingToFile, loadMappingFromFile, type SymbolMapping, type SymbolLocation, } from './mapper';
16
16
  export type { AnalyzeOptions, AnalysisResult, FileAnalysis, RankedFile, SymbolLineRange, } from './types';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAaH,OAAO,EACL,cAAc,EACd,cAAc,EAGf,MAAM,SAAS,CAAC;AACjB,OAAO,EAAmB,KAAK,WAAW,EAAE,MAAM,SAAS,CAAC;AAG5D,wBAAsB,cAAc,CAClC,OAAO,CAAC,EAAE,cAAc,GAAG;IACzB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,WAAW,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;CACpC,GACA,OAAO,CAAC,cAAc,CAAC,CAyIzB;AA2BD,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AACrC,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AACtD,OAAO,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AACjG,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EACL,wBAAwB,EACxB,gBAAgB,EAChB,iBAAiB,EACjB,mBAAmB,EACnB,KAAK,aAAa,EAClB,KAAK,cAAc,GACpB,MAAM,UAAU,CAAC;AAElB,YAAY,EACV,cAAc,EACd,cAAc,EACd,YAAY,EACZ,UAAU,EACV,eAAe,GAChB,MAAM,SAAS,CAAC;AAEjB,OAAO,EACL,YAAY,EACZ,eAAe,EACf,sBAAsB,EACtB,oBAAoB,EACpB,KAAK,WAAW,EAChB,KAAK,UAAU,GAChB,MAAM,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAaH,OAAO,EACL,cAAc,EACd,cAAc,EAGf,MAAM,SAAS,CAAC;AACjB,OAAO,EAAmB,KAAK,WAAW,EAAE,MAAM,SAAS,CAAC;AAG5D,wBAAsB,cAAc,CAClC,OAAO,CAAC,EAAE,cAAc,GAAG;IACzB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,WAAW,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;CACpC,GACA,OAAO,CAAC,cAAc,CAAC,CAyIzB;AA2BD,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AACrC,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AACtD,OAAO,EAAE,mBAAmB,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAC5E,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EACL,wBAAwB,EACxB,gBAAgB,EAChB,iBAAiB,EACjB,mBAAmB,EACnB,KAAK,aAAa,EAClB,KAAK,cAAc,GACpB,MAAM,UAAU,CAAC;AAElB,YAAY,EACV,cAAc,EACd,cAAc,EACd,YAAY,EACZ,UAAU,EACV,eAAe,GAChB,MAAM,SAAS,CAAC;AAEjB,OAAO,EACL,YAAY,EACZ,eAAe,EACf,sBAAsB,EACtB,oBAAoB,EACpB,KAAK,WAAW,EAChB,KAAK,UAAU,GAChB,MAAM,SAAS,CAAC"}
package/dist/index.js CHANGED
@@ -36,7 +36,7 @@ var __importStar = (this && this.__importStar) || (function () {
36
36
  };
37
37
  })();
38
38
  Object.defineProperty(exports, "__esModule", { value: true });
39
- exports.DEFAULT_CACHE_CONFIG = exports.initializeCacheManager = exports.getCacheManager = exports.CacheManager = exports.loadMappingFromFile = exports.saveMappingToFile = exports.getSymbolDetails = exports.buildSkeletonWithMapping = exports.countTokens = exports.discoverModules = exports.scanFiles = exports.scanRocketChatFiles = exports.scanTypeScriptFiles = exports.buildSkeletonForFile = exports.rankFilesEnhanced = exports.rankFiles = void 0;
39
+ exports.DEFAULT_CACHE_CONFIG = exports.initializeCacheManager = exports.getCacheManager = exports.CacheManager = exports.loadMappingFromFile = exports.saveMappingToFile = exports.getSymbolDetails = exports.buildSkeletonWithMapping = exports.countTokens = exports.discoverModules = exports.scanFiles = exports.scanTypeScriptFiles = exports.buildSkeletonForFile = exports.rankFilesEnhanced = exports.rankFiles = void 0;
40
40
  exports.analyzeProject = analyzeProject;
41
41
  const path = __importStar(require("path"));
42
42
  const scanner_1 = require("./scanner");
@@ -164,7 +164,6 @@ var skeletonizer_2 = require("./skeletonizer");
164
164
  Object.defineProperty(exports, "buildSkeletonForFile", { enumerable: true, get: function () { return skeletonizer_2.buildSkeletonForFile; } });
165
165
  var scanner_2 = require("./scanner");
166
166
  Object.defineProperty(exports, "scanTypeScriptFiles", { enumerable: true, get: function () { return scanner_2.scanTypeScriptFiles; } });
167
- Object.defineProperty(exports, "scanRocketChatFiles", { enumerable: true, get: function () { return scanner_2.scanRocketChatFiles; } });
168
167
  Object.defineProperty(exports, "scanFiles", { enumerable: true, get: function () { return scanner_2.scanFiles; } });
169
168
  Object.defineProperty(exports, "discoverModules", { enumerable: true, get: function () { return scanner_2.discoverModules; } });
170
169
  var tokenizer_2 = require("./tokenizer");
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":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-server.d.ts","sourceRoot":"","sources":["../src/mcp-server.ts"],"names":[],"mappings":"AAAA;;GAEG;AAsBH,wBAAsB,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC,CA8HpD"}
1
+ {"version":3,"file":"mcp-server.d.ts","sourceRoot":"","sources":["../src/mcp-server.ts"],"names":[],"mappings":"AAAA;;GAEG;AAsBH,wBAAsB,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC,CA+KpD"}
@@ -110,6 +110,32 @@ async function startMcpServer() {
110
110
  required: ['root'],
111
111
  },
112
112
  },
113
+ {
114
+ name: 'guard_review',
115
+ description: 'Review staged or diff changes against team-defined rules. Returns structured violations with severity, confidence, and fixability.',
116
+ inputSchema: {
117
+ type: 'object',
118
+ properties: {
119
+ root: {
120
+ type: 'string',
121
+ description: 'Absolute path to the repo root',
122
+ },
123
+ diff: {
124
+ type: 'string',
125
+ description: 'Unified diff content (if omitted, reviews staged files)',
126
+ },
127
+ diff_only: {
128
+ type: 'boolean',
129
+ description: 'Skip cross-file context for faster review (default: false)',
130
+ },
131
+ fix: {
132
+ type: 'boolean',
133
+ description: 'Apply auto-fixes for fixable violations (default: false)',
134
+ },
135
+ },
136
+ required: ['root'],
137
+ },
138
+ },
113
139
  ],
114
140
  }));
115
141
  server.setRequestHandler(types_js_1.CallToolRequestSchema, async (request) => {
@@ -156,6 +182,24 @@ async function startMcpServer() {
156
182
  content: [{ type: 'text', text: JSON.stringify(result, null, 2) }],
157
183
  };
158
184
  }
185
+ if (toolName === 'guard_review') {
186
+ const { runGuard, formatGuardJson } = await Promise.resolve().then(() => __importStar(require('./guard/index')));
187
+ const root = String(args.root ?? '');
188
+ const diffContent = typeof args.diff === 'string' && args.diff.length > 0
189
+ ? args.diff
190
+ : undefined;
191
+ const diffOnly = args.diff_only === true;
192
+ const fix = args.fix === true;
193
+ const { result } = await runGuard({
194
+ root,
195
+ diffOnly,
196
+ fix,
197
+ ...(diffContent ? { prMode: false } : {}),
198
+ });
199
+ return {
200
+ content: [{ type: 'text', text: formatGuardJson(result) }],
201
+ };
202
+ }
159
203
  throw new Error(`Unknown tool: ${toolName}`);
160
204
  });
161
205
  const transport = new stdio_js_1.StdioServerTransport();
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-server.js","sourceRoot":"","sources":["../src/mcp-server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mcp-server.js","sourceRoot":"","sources":["../src/mcp-server.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAsBH,wCA+KC;AAnMD,wEAAmE;AACnE,wEAAiF;AACjF,iEAAmG;AACnG,mCAAyC;AAEzC,MAAM,WAAW,GAAG,OAAO,CAAC;AAE5B,SAAS,mBAAmB,CAAC,OAAgB;IAC3C,IAAI,OAAO,IAAI,IAAI,IAAI,OAAO,KAAK,EAAE,EAAE,CAAC;QACtC,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QAC3B,OAAO,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAClE,CAAC;IACD,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;QAChC,OAAO,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACjE,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAEM,KAAK,UAAU,cAAc;IAClC,MAAM,MAAM,GAAG,IAAI,iBAAM,CACvB,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,WAAW,EAAE,EACxC,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,CAChC,CAAC;IAEF,MAAM,CAAC,iBAAiB,CAAC,iCAAsB,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC;QAC5D,KAAK,EAAE;YACL;gBACE,IAAI,EAAE,eAAe;gBACrB,WAAW,EACT,uIAAuI;gBACzI,WAAW,EAAE;oBACX,IAAI,EAAE,QAAQ;oBACd,UAAU,EAAE;wBACV,QAAQ,EAAE;4BACR,IAAI,EAAE,QAAQ;4BACd,WAAW,EAAE,gDAAgD;yBAC9D;wBACD,IAAI,EAAE;4BACJ,IAAI,EAAE,QAAQ;4BACd,WAAW,EAAE,gCAAgC;yBAC9C;wBACD,KAAK,EAAE;4BACL,IAAI,EAAE,QAAQ;4BACd,WAAW,EAAE,kCAAkC;yBAChD;wBACD,OAAO,EAAE;4BACP,IAAI,EAAE,QAAQ;4BACd,WAAW,EAAE,0CAA0C;yBACxD;wBACD,IAAI,EAAE;4BACJ,IAAI,EAAE,QAAQ;4BACd,WAAW,EAAE,gDAAgD;yBAC9D;qBACF;oBACD,QAAQ,EAAE,CAAC,UAAU,EAAE,MAAM,CAAC;iBAC/B;aACF;YACD;gBACE,IAAI,EAAE,cAAc;gBACpB,WAAW,EACT,+GAA+G;gBACjH,WAAW,EAAE;oBACX,IAAI,EAAE,QAAQ;oBACd,UAAU,EAAE;wBACV,IAAI,EAAE;4BACJ,IAAI,EAAE,QAAQ;4BACd,WAAW,EAAE,gCAAgC;yBAC9C;wBACD,IAAI,EAAE;4BACJ,IAAI,EAAE,QAAQ;4BACd,WAAW,EAAE,8DAA8D;yBAC5E;wBACD,IAAI,EAAE;4BACJ,IAAI,EAAE,QAAQ;4BACd,WAAW,EAAE,uDAAuD;yBACrE;qBACF;oBACD,QAAQ,EAAE,CAAC,MAAM,CAAC;iBACnB;aACF;YACD;gBACE,IAAI,EAAE,cAAc;gBACpB,WAAW,EACT,oIAAoI;gBACtI,WAAW,EAAE;oBACX,IAAI,EAAE,QAAQ;oBACd,UAAU,EAAE;wBACV,IAAI,EAAE;4BACJ,IAAI,EAAE,QAAQ;4BACd,WAAW,EAAE,gCAAgC;yBAC9C;wBACD,IAAI,EAAE;4BACJ,IAAI,EAAE,QAAQ;4BACd,WAAW,EAAE,yDAAyD;yBACvE;wBACD,SAAS,EAAE;4BACT,IAAI,EAAE,SAAS;4BACf,WAAW,EAAE,4DAA4D;yBAC1E;wBACD,GAAG,EAAE;4BACH,IAAI,EAAE,SAAS;4BACf,WAAW,EAAE,0DAA0D;yBACxE;qBACF;oBACD,QAAQ,EAAE,CAAC,MAAM,CAAC;iBACnB;aACF;SACF;KACF,CAAC,CAAC,CAAC;IAEJ,MAAM,CAAC,iBAAiB,CAAC,gCAAqB,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;QAChE,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC;QACrC,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,SAAoC,CAAC;QAEjE,IAAI,QAAQ,KAAK,eAAe,EAAE,CAAC;YACjC,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC;YAC7C,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;YACrC,MAAM,KAAK,GACT,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,KAAK,GAAG,CAAC;gBAC3E,CAAC,CAAC,IAAI,CAAC,KAAK;gBACZ,CAAC,CAAC,CAAC,CAAC;YACR,MAAM,UAAU,GAAG,mBAAmB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACrD,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC;YAC7E,MAAM,IAAI,GAAI,CAAC,YAAY,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,CAAW,CAAC,QAAQ,CAC7E,OAA0D,CAC3D;gBACC,CAAC,CAAE,OAA2D;gBAC9D,CAAC,CAAC,MAAM,CAAC;YAEX,MAAM,MAAM,GAAG,MAAM,IAAA,sBAAc,EAAC;gBAClC,QAAQ;gBACR,IAAI;gBACJ,KAAK;gBACL,UAAU;gBACV,IAAI;gBACJ,eAAe,EAAE,IAAI;aACtB,CAAC,CAAC;YAEH,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;aACnE,CAAC;QACJ,CAAC;QAED,IAAI,QAAQ,KAAK,cAAc,EAAE,CAAC;YAChC,MAAM,EAAE,kBAAkB,EAAE,GAAG,wDAAa,gBAAgB,GAAC,CAAC;YAC9D,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;YACrC,MAAM,IAAI,GACR,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,GAAG,CAAC;gBACxE,CAAC,CAAC,IAAI,CAAC,IAAI;gBACX,CAAC,CAAC,CAAC,CAAC;YACR,MAAM,WAAW,GACf,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC;gBACnD,CAAC,CAAC,IAAI,CAAC,IAAI;gBACX,CAAC,CAAC,SAAS,CAAC;YAEhB,MAAM,MAAM,GAAG,kBAAkB,CAAC;gBAChC,IAAI;gBACJ,WAAW;gBACX,IAAI;aACL,CAAC,CAAC;YAEH,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;aACnE,CAAC;QACJ,CAAC;QAED,IAAI,QAAQ,KAAK,cAAc,EAAE,CAAC;YAChC,MAAM,EAAE,QAAQ,EAAE,eAAe,EAAE,GAAG,wDAAa,eAAe,GAAC,CAAC;YACpE,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;YACrC,MAAM,WAAW,GACf,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC;gBACnD,CAAC,CAAC,IAAI,CAAC,IAAI;gBACX,CAAC,CAAC,SAAS,CAAC;YAChB,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,KAAK,IAAI,CAAC;YACzC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,KAAK,IAAI,CAAC;YAE9B,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,QAAQ,CAAC;gBAChC,IAAI;gBACJ,QAAQ;gBACR,GAAG;gBACH,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAC1C,CAAC,CAAC;YAEH,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,eAAe,CAAC,MAAM,CAAC,EAAE,CAAC;aAC3D,CAAC;QACJ,CAAC;QAED,MAAM,IAAI,KAAK,CAAC,iBAAiB,QAAQ,EAAE,CAAC,CAAC;IAC/C,CAAC,CAAC,CAAC;IAEH,MAAM,SAAS,GAAG,IAAI,+BAAoB,EAAE,CAAC;IAC7C,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;AAClC,CAAC"}
package/dist/scanner.d.ts CHANGED
@@ -11,6 +11,5 @@ export interface ScanOptions {
11
11
  export declare function discoverModules(root: string): string[];
12
12
  export declare function scanFiles(rootDir: string, options?: ScanOptions): string[];
13
13
  export declare function scanTypeScriptFiles(rootDir: string): string[];
14
- export declare function scanRocketChatFiles(rootDir: string, moduleKeys?: string[]): string[];
15
14
  export declare function readFileContent(filePath: string): string | null;
16
15
  //# sourceMappingURL=scanner.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"scanner.d.ts","sourceRoot":"","sources":["../src/scanner.ts"],"names":[],"mappings":"AAAA;;GAEG;AAMH,eAAO,MAAM,gBAAgB,UAe5B,CAAC;AAwCF,MAAM,WAAW,WAAW;IAC1B,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;CAC9C;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAqBtD;AAED,wBAAgB,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,GAAE,WAAgB,GAAG,MAAM,EAAE,CAgD9E;AAED,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,CAE7D;AAED,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CAKpF;AAED,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAM/D"}
1
+ {"version":3,"file":"scanner.d.ts","sourceRoot":"","sources":["../src/scanner.ts"],"names":[],"mappings":"AAAA;;GAEG;AAMH,eAAO,MAAM,gBAAgB,UAe5B,CAAC;AAwCF,MAAM,WAAW,WAAW;IAC1B,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;CAC9C;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAqBtD;AAED,wBAAgB,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,GAAE,WAAgB,GAAG,MAAM,EAAE,CAgD9E;AAED,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,CAE7D;AAED,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAM/D"}
package/dist/scanner.js CHANGED
@@ -43,7 +43,6 @@ exports.DEFAULT_EXCLUDES = void 0;
43
43
  exports.discoverModules = discoverModules;
44
44
  exports.scanFiles = scanFiles;
45
45
  exports.scanTypeScriptFiles = scanTypeScriptFiles;
46
- exports.scanRocketChatFiles = scanRocketChatFiles;
47
46
  exports.readFileContent = readFileContent;
48
47
  const ignore_1 = __importDefault(require("ignore"));
49
48
  const fs = __importStar(require("fs"));
@@ -165,12 +164,6 @@ function scanFiles(rootDir, options = {}) {
165
164
  function scanTypeScriptFiles(rootDir) {
166
165
  return scanFiles(rootDir, { extensions: ['.ts', '.tsx'] });
167
166
  }
168
- function scanRocketChatFiles(rootDir, moduleKeys) {
169
- return scanFiles(rootDir, {
170
- extensions: ['.ts', '.tsx'],
171
- moduleKeys,
172
- });
173
- }
174
167
  function readFileContent(filePath) {
175
168
  try {
176
169
  return fs.readFileSync(filePath, 'utf-8');
@@ -1 +1 @@
1
- {"version":3,"file":"scanner.js","sourceRoot":"","sources":["../src/scanner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"scanner.js","sourceRoot":"","sources":["../src/scanner.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAoEH,0CAqBC;AAED,8BAgDC;AAED,kDAEC;AAED,0CAMC;AArJD,oDAA4B;AAC5B,uCAAyB;AACzB,2CAA6B;AAEhB,QAAA,gBAAgB,GAAG;IAC9B,oBAAoB;IACpB,YAAY;IACZ,YAAY;IACZ,aAAa;IACb,gBAAgB;IAChB,mBAAmB;IACnB,aAAa;IACb,gBAAgB;IAChB,cAAc;IACd,aAAa;IACb,aAAa;IACb,cAAc;IACd,UAAU;IACV,cAAc;CACf,CAAC;AAEF,MAAM,cAAc,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC;AAErE,SAAS,aAAa,CAAC,IAAY;IACjC,MAAM,EAAE,GAAG,IAAA,gBAAM,GAAE,CAAC;IAEpB,mDAAmD;IACnD,EAAE,CAAC,GAAG,CAAC;QACL,cAAc;QACd,MAAM;QACN,OAAO;QACP,UAAU;QACV,OAAO;QACP,OAAO;QACP,QAAQ;QACR,aAAa;QACb,QAAQ;QACR,QAAQ;QACR,UAAU;QACV,aAAa;QACb,OAAO;QACP,OAAO;QACP,MAAM;KACP,CAAC,CAAC;IAEH,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;IACpD,IAAI,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,CAAC;QACjC,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;QACxD,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAClB,CAAC;IAED,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,SAAS,gBAAgB,CAAC,OAAe,EAAE,YAAoB;IAC7D,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC3E,OAAO,GAAG,KAAK,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;AAChC,CAAC;AASD,SAAgB,eAAe,CAAC,IAAY;IAC1C,MAAM,aAAa,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC;IAEpE,KAAK,MAAM,SAAS,IAAI,aAAa,EAAE,CAAC;QACtC,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;QACjD,IAAI,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC;YAC7E,MAAM,OAAO,GAAG,EAAE,CAAC,WAAW,CAAC,aAAa,CAAC;iBAC1C,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE;gBACf,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;gBAChD,OAAO,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;YACtE,CAAC,CAAC,CAAC;YACL,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC;gBAAE,OAAO,OAAO,CAAC;QACzC,CAAC;IACH,CAAC;IAED,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,CAAC,cAAc,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,aAAa,EAAE,QAAQ,CAAC,CAAC,CAAC;IAClH,OAAO,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC;SACxB,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE;QACf,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACvC,OAAO,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAC5F,CAAC,CAAC,CAAC;AACP,CAAC;AAED,SAAgB,SAAS,CAAC,OAAe,EAAE,UAAuB,EAAE;IAClE,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,MAAM,QAAQ,GAAG,OAAO,CAAC,OAAO,IAAI,wBAAgB,CAAC;IACrD,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC;IACvE,MAAM,SAAS,GAAG,gBAAgB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACrD,MAAM,EAAE,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC;IAElC,MAAM,IAAI,GAAG,CAAC,GAAW,EAAQ,EAAE;QACjC,IAAI,OAAoB,CAAC;QACzB,IAAI,CAAC;YACH,OAAO,GAAG,EAAE,CAAC,WAAW,CAAC,GAAG,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;QACzD,CAAC;QAAC,MAAM,CAAC;YACP,OAAO;QACT,CAAC;QAED,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;YAC5B,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;YAC5C,MAAM,OAAO,GAAG,gBAAgB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;YACpD,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;gBACrD,SAAS;YACX,CAAC;YAED,IAAI,aAAa,CAAC,QAAQ,EAAE,OAAO,EAAE,QAAQ,CAAC,EAAE,CAAC;gBAC/C,SAAS;YACX,CAAC;YAED,IAAI,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC;gBACxB,IAAI,CAAC,QAAQ,CAAC,CAAC;YACjB,CAAC;iBAAM,IAAI,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC;gBAC1B,IAAI,CAAC,UAAU,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBAC3C,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;oBACvB,SAAS;gBACX,CAAC;gBACD,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC;gBACnD,IAAI,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;oBAC7B,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBACzB,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC,CAAC;IAEF,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;QACjC,IAAI,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC;YACnE,IAAI,CAAC,QAAQ,CAAC,CAAC;QACjB,CAAC;IACH,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC;AACtC,CAAC;AAED,SAAgB,mBAAmB,CAAC,OAAe;IACjD,OAAO,SAAS,CAAC,OAAO,EAAE,EAAE,UAAU,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;AAC7D,CAAC;AAED,SAAgB,eAAe,CAAC,QAAgB;IAC9C,IAAI,CAAC;QACH,OAAO,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IAC5C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,SAAS,gBAAgB,CAAC,OAAe,EAAE,OAAoB;IAC7D,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;IACtC,MAAM,iBAAiB,GAAG,OAAO,CAAC,iBAAiB,CAAC;IACpD,IAAI,CAAC,UAAU,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC3C,OAAO,CAAC,OAAO,CAAC,CAAC;IACnB,CAAC;IAED,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,KAAK,MAAM,GAAG,IAAI,UAAU,EAAE,CAAC;QAC7B,IAAI,iBAAiB,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC;YAC7B,KAAK,MAAM,GAAG,IAAI,iBAAiB,CAAC,GAAG,CAAC,EAAE,CAAC;gBACzC,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;gBACxC,IAAI,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC;oBAC3D,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACtB,CAAC;YACH,CAAC;YACD,SAAS;QACX,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;QACvC,IAAI,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC;YAC/D,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACtB,SAAS;QACX,CAAC;QAED,KAAK,MAAM,IAAI,IAAI,cAAc,EAAE,CAAC;YAClC,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;YAChD,IAAI,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC;gBACrE,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAC3B,CAAC;QACH,CAAC;IACH,CAAC;IAED,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACnD,MAAM,IAAI,KAAK,CAAC,uCAAuC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAClF,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,SAAS,aAAa,CAAC,QAAgB,EAAE,OAAe,EAAE,QAAkB;IAC1E,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACvE,MAAM,UAAU,GAAG,CAAC,OAAe,EAAW,EAAE,CAC9C,GAAG,KAAK,OAAO,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,OAAO,GAAG,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,IAAI,OAAO,GAAG,CAAC,CAAC;IAEnF,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,IAAI,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,UAAU,CAAC,cAAc,CAAC;YAAE,OAAO,IAAI,CAAC;QAChF,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,UAAU,CAAC,MAAM,CAAC;YAAE,OAAO,IAAI,CAAC;QAChE,IAAI,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,UAAU,CAAC,MAAM,CAAC;YAAE,OAAO,IAAI,CAAC;QAClE,IAAI,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,UAAU,CAAC,OAAO,CAAC;YAAE,OAAO,IAAI,CAAC;QACpE,IAAI,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,UAAU,CAAC,UAAU,CAAC;YAAE,OAAO,IAAI,CAAC;QAC1E,IAAI,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,UAAU,CAAC,aAAa,CAAC;YAAE,OAAO,IAAI,CAAC;QAC9E,IAAI,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,UAAU,CAAC,QAAQ,CAAC;YAAE,OAAO,IAAI,CAAC;QACtE,IAAI,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,UAAU,CAAC,OAAO,CAAC;YAAE,OAAO,IAAI,CAAC;QACpE,IAAI,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,UAAU,CAAC,OAAO,CAAC;YAAE,OAAO,IAAI,CAAC;QACpE,IAAI,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,UAAU,CAAC,QAAQ,CAAC;YAAE,OAAO,IAAI,CAAC;QACtE,IAAI,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,UAAU,CAAC,QAAQ,CAAC;YAAE,OAAO,IAAI,CAAC;QACtE,IAAI,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC;YAAE,OAAO,IAAI,CAAC;QACzE,IAAI,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,YAAY,CAAC;YAAE,OAAO,IAAI,CAAC;QAC/E,IAAI,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC;YAAE,OAAO,IAAI,CAAC;IACrE,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "skannr",
3
- "version": "0.2.0",
3
+ "version": "0.2.2",
4
4
  "description": "A universal tool to analyze any codebase and generate semantic skeletons for AI agents",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -35,7 +35,8 @@
35
35
  "ignore": "^7.0.5",
36
36
  "parse-diff": "0.12.0",
37
37
  "ts-morph": "^21.0.1",
38
- "web-tree-sitter": "0.26.10"
38
+ "web-tree-sitter": "0.26.10",
39
+ "zod": "3.23.8"
39
40
  },
40
41
  "devDependencies": {
41
42
  "@types/jest": "^29.5.11",