activo 0.2.1 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (73) hide show
  1. package/README.md +79 -3
  2. package/dist/core/commands.d.ts +11 -0
  3. package/dist/core/commands.d.ts.map +1 -0
  4. package/dist/core/commands.js +90 -0
  5. package/dist/core/commands.js.map +1 -0
  6. package/dist/core/llm/ollama.d.ts +2 -0
  7. package/dist/core/llm/ollama.d.ts.map +1 -1
  8. package/dist/core/llm/ollama.js +26 -0
  9. package/dist/core/llm/ollama.js.map +1 -1
  10. package/dist/core/tools/ast.d.ts +81 -0
  11. package/dist/core/tools/ast.d.ts.map +1 -0
  12. package/dist/core/tools/ast.js +700 -0
  13. package/dist/core/tools/ast.js.map +1 -0
  14. package/dist/core/tools/cache.d.ts +19 -0
  15. package/dist/core/tools/cache.d.ts.map +1 -0
  16. package/dist/core/tools/cache.js +497 -0
  17. package/dist/core/tools/cache.js.map +1 -0
  18. package/dist/core/tools/cssAnalysis.d.ts +3 -0
  19. package/dist/core/tools/cssAnalysis.d.ts.map +1 -0
  20. package/dist/core/tools/cssAnalysis.js +270 -0
  21. package/dist/core/tools/cssAnalysis.js.map +1 -0
  22. package/dist/core/tools/embeddings.d.ts +8 -0
  23. package/dist/core/tools/embeddings.d.ts.map +1 -0
  24. package/dist/core/tools/embeddings.js +631 -0
  25. package/dist/core/tools/embeddings.js.map +1 -0
  26. package/dist/core/tools/frontendAst.d.ts +6 -0
  27. package/dist/core/tools/frontendAst.d.ts.map +1 -0
  28. package/dist/core/tools/frontendAst.js +680 -0
  29. package/dist/core/tools/frontendAst.js.map +1 -0
  30. package/dist/core/tools/htmlAnalysis.d.ts +3 -0
  31. package/dist/core/tools/htmlAnalysis.d.ts.map +1 -0
  32. package/dist/core/tools/htmlAnalysis.js +398 -0
  33. package/dist/core/tools/htmlAnalysis.js.map +1 -0
  34. package/dist/core/tools/index.d.ts +10 -0
  35. package/dist/core/tools/index.d.ts.map +1 -1
  36. package/dist/core/tools/index.js +21 -1
  37. package/dist/core/tools/index.js.map +1 -1
  38. package/dist/core/tools/javaAst.d.ts +6 -0
  39. package/dist/core/tools/javaAst.d.ts.map +1 -0
  40. package/dist/core/tools/javaAst.js +678 -0
  41. package/dist/core/tools/javaAst.js.map +1 -0
  42. package/dist/core/tools/memory.d.ts +11 -0
  43. package/dist/core/tools/memory.d.ts.map +1 -0
  44. package/dist/core/tools/memory.js +551 -0
  45. package/dist/core/tools/memory.js.map +1 -0
  46. package/dist/core/tools/mybatisAnalysis.d.ts +3 -0
  47. package/dist/core/tools/mybatisAnalysis.d.ts.map +1 -0
  48. package/dist/core/tools/mybatisAnalysis.js +251 -0
  49. package/dist/core/tools/mybatisAnalysis.js.map +1 -0
  50. package/dist/core/tools/sqlAnalysis.d.ts +3 -0
  51. package/dist/core/tools/sqlAnalysis.d.ts.map +1 -0
  52. package/dist/core/tools/sqlAnalysis.js +250 -0
  53. package/dist/core/tools/sqlAnalysis.js.map +1 -0
  54. package/dist/ui/App.d.ts.map +1 -1
  55. package/dist/ui/App.js +31 -2
  56. package/dist/ui/App.js.map +1 -1
  57. package/package.json +2 -1
  58. package/src/core/commands.ts +118 -0
  59. package/src/core/llm/ollama.ts +30 -0
  60. package/src/core/tools/ast.ts +826 -0
  61. package/src/core/tools/cache.ts +570 -0
  62. package/src/core/tools/cssAnalysis.ts +324 -0
  63. package/src/core/tools/embeddings.ts +746 -0
  64. package/src/core/tools/frontendAst.ts +802 -0
  65. package/src/core/tools/htmlAnalysis.ts +466 -0
  66. package/src/core/tools/index.ts +21 -1
  67. package/src/core/tools/javaAst.ts +812 -0
  68. package/src/core/tools/memory.ts +655 -0
  69. package/src/core/tools/mybatisAnalysis.ts +322 -0
  70. package/src/core/tools/sqlAnalysis.ts +298 -0
  71. package/src/ui/App.tsx +38 -2
  72. package/FINAL_SIMPLIFIED_SPEC.md +0 -456
  73. package/TODO.md +0 -193
@@ -0,0 +1 @@
1
+ {"version":3,"file":"frontendAst.js","sourceRoot":"","sources":["../../../src/core/tools/frontendAst.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { Tool } from "./types.js";
2
+ export declare const htmlTools: Tool[];
3
+ //# sourceMappingURL=htmlAnalysis.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"htmlAnalysis.d.ts","sourceRoot":"","sources":["../../../src/core/tools/htmlAnalysis.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAc,MAAM,YAAY,CAAC;AAyW9C,eAAO,MAAM,SAAS,EAAE,IAAI,EAwG3B,CAAC"}
@@ -0,0 +1,398 @@
1
+ import * as fs from "fs";
2
+ import * as path from "path";
3
+ // HTML/JSP/Vue 분석
4
+ function analyzeHtmlFile(filePath) {
5
+ const content = fs.readFileSync(filePath, "utf-8");
6
+ const lines = content.split("\n");
7
+ const ext = path.extname(filePath).toLowerCase();
8
+ let type;
9
+ if (ext === ".jsp")
10
+ type = "jsp";
11
+ else if (ext === ".vue")
12
+ type = "vue";
13
+ else if (ext === ".ejs" || ext === ".hbs" || ext === ".pug")
14
+ type = "template";
15
+ else
16
+ type = "html";
17
+ const elements = [];
18
+ const issues = [];
19
+ // Meta 태그 검사
20
+ const meta = {
21
+ title: /<title[^>]*>[^<]+<\/title>/i.test(content),
22
+ description: /<meta[^>]*name=["']description["'][^>]*>/i.test(content),
23
+ viewport: /<meta[^>]*name=["']viewport["'][^>]*>/i.test(content),
24
+ charset: /<meta[^>]*charset=/i.test(content) || /charset=/i.test(content),
25
+ lang: /<html[^>]*lang=/i.test(content),
26
+ };
27
+ // 접근성 검사
28
+ const accessibility = {
29
+ missingAlt: 0,
30
+ missingLabel: 0,
31
+ missingAriaLabel: 0,
32
+ emptyLinks: 0,
33
+ emptyButtons: 0,
34
+ };
35
+ // 시맨틱 태그 검사
36
+ const semantic = {
37
+ hasHeader: /<header[\s>]/i.test(content),
38
+ hasNav: /<nav[\s>]/i.test(content),
39
+ hasMain: /<main[\s>]/i.test(content),
40
+ hasFooter: /<footer[\s>]/i.test(content),
41
+ hasArticle: /<article[\s>]/i.test(content),
42
+ divCount: (content.match(/<div[\s>]/gi) || []).length,
43
+ };
44
+ // Deprecated 태그 목록
45
+ const deprecatedTags = [
46
+ "font", "center", "marquee", "blink", "strike", "big", "tt",
47
+ "frame", "frameset", "noframes", "applet", "basefont", "dir", "isindex",
48
+ ];
49
+ // 인라인 스타일/이벤트 핸들러
50
+ const inlineStyles = (content.match(/style=["'][^"']+["']/gi) || []).length;
51
+ const inlineEvents = (content.match(/on\w+=["'][^"']+["']/gi) || []).length;
52
+ // 라인 번호 찾기 함수
53
+ const findLineNumber = (index) => {
54
+ let lineNum = 1;
55
+ for (let i = 0; i < index && i < content.length; i++) {
56
+ if (content[i] === "\n")
57
+ lineNum++;
58
+ }
59
+ return lineNum;
60
+ };
61
+ // img 태그 검사
62
+ const imgRegex = /<img([^>]*)>/gi;
63
+ let match;
64
+ while ((match = imgRegex.exec(content)) !== null) {
65
+ const attrs = match[1];
66
+ const elementIssues = [];
67
+ if (!/alt=/i.test(attrs)) {
68
+ elementIssues.push("alt 속성 누락");
69
+ accessibility.missingAlt++;
70
+ }
71
+ else if (/alt=["']\s*["']/i.test(attrs)) {
72
+ elementIssues.push("alt 속성 비어있음");
73
+ }
74
+ if (!/loading=/i.test(attrs)) {
75
+ elementIssues.push("loading 속성 권장 (lazy)");
76
+ }
77
+ if (elementIssues.length > 0) {
78
+ elements.push({
79
+ tag: "img",
80
+ line: findLineNumber(match.index),
81
+ issues: elementIssues,
82
+ });
83
+ }
84
+ }
85
+ // a 태그 검사
86
+ const aRegex = /<a([^>]*)>([^<]*)<\/a>/gi;
87
+ while ((match = aRegex.exec(content)) !== null) {
88
+ const attrs = match[1];
89
+ const text = match[2].trim();
90
+ const elementIssues = [];
91
+ if (!text && !/aria-label=/i.test(attrs)) {
92
+ elementIssues.push("빈 링크 텍스트");
93
+ accessibility.emptyLinks++;
94
+ }
95
+ if (/target=["']_blank["']/i.test(attrs) && !/rel=["'][^"']*noopener/i.test(attrs)) {
96
+ elementIssues.push("target=_blank에 rel=noopener 권장");
97
+ }
98
+ if (/href=["']#["']/i.test(attrs)) {
99
+ elementIssues.push("href='#' - 실제 링크 또는 button 사용 권장");
100
+ }
101
+ if (elementIssues.length > 0) {
102
+ elements.push({
103
+ tag: "a",
104
+ line: findLineNumber(match.index),
105
+ issues: elementIssues,
106
+ });
107
+ }
108
+ }
109
+ // button 태그 검사
110
+ const buttonRegex = /<button([^>]*)>([^<]*)<\/button>/gi;
111
+ while ((match = buttonRegex.exec(content)) !== null) {
112
+ const attrs = match[1];
113
+ const text = match[2].trim();
114
+ const elementIssues = [];
115
+ if (!text && !/aria-label=/i.test(attrs)) {
116
+ elementIssues.push("빈 버튼 텍스트");
117
+ accessibility.emptyButtons++;
118
+ }
119
+ if (!/type=/i.test(attrs)) {
120
+ elementIssues.push("type 속성 권장 (button/submit)");
121
+ }
122
+ if (elementIssues.length > 0) {
123
+ elements.push({
124
+ tag: "button",
125
+ line: findLineNumber(match.index),
126
+ issues: elementIssues,
127
+ });
128
+ }
129
+ }
130
+ // input 태그 검사
131
+ const inputRegex = /<input([^>]*)>/gi;
132
+ while ((match = inputRegex.exec(content)) !== null) {
133
+ const attrs = match[1];
134
+ const elementIssues = [];
135
+ // label 연결 검사 (id가 있어야 label for 가능)
136
+ const idMatch = attrs.match(/id=["']([^"']+)["']/i);
137
+ if (idMatch) {
138
+ const inputId = idMatch[1];
139
+ if (!new RegExp(`<label[^>]*for=["']${inputId}["']`, "i").test(content)) {
140
+ if (!/aria-label=/i.test(attrs) && !/placeholder=/i.test(attrs)) {
141
+ elementIssues.push("label 또는 aria-label 권장");
142
+ accessibility.missingLabel++;
143
+ }
144
+ }
145
+ }
146
+ else if (!/aria-label=/i.test(attrs)) {
147
+ // id 없으면 aria-label 필요
148
+ if (!/type=["'](?:hidden|submit|button|reset)["']/i.test(attrs)) {
149
+ elementIssues.push("id 또는 aria-label 권장");
150
+ accessibility.missingLabel++;
151
+ }
152
+ }
153
+ // autocomplete 검사
154
+ if (/type=["'](?:password|email|tel|text)["']/i.test(attrs) && !/autocomplete=/i.test(attrs)) {
155
+ elementIssues.push("autocomplete 속성 권장");
156
+ }
157
+ if (elementIssues.length > 0) {
158
+ elements.push({
159
+ tag: "input",
160
+ line: findLineNumber(match.index),
161
+ issues: elementIssues,
162
+ });
163
+ }
164
+ }
165
+ // form 태그 검사
166
+ const formRegex = /<form([^>]*)>/gi;
167
+ while ((match = formRegex.exec(content)) !== null) {
168
+ const attrs = match[1];
169
+ const elementIssues = [];
170
+ if (!/action=/i.test(attrs)) {
171
+ elementIssues.push("action 속성 누락");
172
+ }
173
+ if (!/method=/i.test(attrs)) {
174
+ elementIssues.push("method 속성 권장");
175
+ }
176
+ if (elementIssues.length > 0) {
177
+ elements.push({
178
+ tag: "form",
179
+ line: findLineNumber(match.index),
180
+ issues: elementIssues,
181
+ });
182
+ }
183
+ }
184
+ // table 태그 검사
185
+ const tableRegex = /<table([^>]*)>/gi;
186
+ while ((match = tableRegex.exec(content)) !== null) {
187
+ const tableStart = match.index;
188
+ const tableEnd = content.indexOf("</table>", tableStart);
189
+ const tableContent = content.substring(tableStart, tableEnd);
190
+ const elementIssues = [];
191
+ if (!/<caption/i.test(tableContent)) {
192
+ elementIssues.push("caption 권장 (테이블 설명)");
193
+ }
194
+ if (!/<th[\s>]/i.test(tableContent)) {
195
+ elementIssues.push("th 요소 권장 (헤더 셀)");
196
+ }
197
+ if (elementIssues.length > 0) {
198
+ elements.push({
199
+ tag: "table",
200
+ line: findLineNumber(match.index),
201
+ issues: elementIssues,
202
+ });
203
+ }
204
+ }
205
+ // deprecated 태그 검사
206
+ deprecatedTags.forEach((tag) => {
207
+ const tagRegex = new RegExp(`<${tag}[\\s>]`, "gi");
208
+ let tagMatch;
209
+ while ((tagMatch = tagRegex.exec(content)) !== null) {
210
+ elements.push({
211
+ tag,
212
+ line: findLineNumber(tagMatch.index),
213
+ issues: [`deprecated 태그 - 사용 금지`],
214
+ });
215
+ }
216
+ });
217
+ // iframe 검사
218
+ const iframeRegex = /<iframe([^>]*)>/gi;
219
+ while ((match = iframeRegex.exec(content)) !== null) {
220
+ const attrs = match[1];
221
+ const elementIssues = [];
222
+ if (!/title=/i.test(attrs)) {
223
+ elementIssues.push("title 속성 권장 (접근성)");
224
+ }
225
+ if (!/sandbox=/i.test(attrs)) {
226
+ elementIssues.push("sandbox 속성 권장 (보안)");
227
+ }
228
+ if (elementIssues.length > 0) {
229
+ elements.push({
230
+ tag: "iframe",
231
+ line: findLineNumber(match.index),
232
+ issues: elementIssues,
233
+ });
234
+ }
235
+ }
236
+ // 전체 이슈 수집
237
+ if (!meta.title)
238
+ issues.push("title 태그 누락 (SEO)");
239
+ if (!meta.description)
240
+ issues.push("meta description 누락 (SEO)");
241
+ if (!meta.viewport)
242
+ issues.push("viewport 설정 누락 (반응형)");
243
+ if (!meta.charset)
244
+ issues.push("charset 설정 누락");
245
+ if (!meta.lang)
246
+ issues.push("html lang 속성 누락 (접근성)");
247
+ if (!semantic.hasMain)
248
+ issues.push("main 요소 없음 (시맨틱)");
249
+ if (semantic.divCount > 30)
250
+ issues.push(`div 요소 ${semantic.divCount}개 - 시맨틱 태그 권장`);
251
+ if (inlineStyles > 5)
252
+ issues.push(`인라인 스타일 ${inlineStyles}개 - CSS 클래스 권장`);
253
+ if (inlineEvents > 3)
254
+ issues.push(`인라인 이벤트 ${inlineEvents}개 - JS 분리 권장`);
255
+ // 점수 계산
256
+ const a11yMaxPoints = 5;
257
+ let a11yPoints = a11yMaxPoints;
258
+ if (accessibility.missingAlt > 0)
259
+ a11yPoints -= 1;
260
+ if (accessibility.missingLabel > 0)
261
+ a11yPoints -= 1;
262
+ if (accessibility.emptyLinks > 0)
263
+ a11yPoints -= 1;
264
+ if (accessibility.emptyButtons > 0)
265
+ a11yPoints -= 1;
266
+ if (!meta.lang)
267
+ a11yPoints -= 1;
268
+ const a11yScore = Math.max(0, Math.round((a11yPoints / a11yMaxPoints) * 100));
269
+ const seoMaxPoints = 5;
270
+ let seoPoints = seoMaxPoints;
271
+ if (!meta.title)
272
+ seoPoints -= 1;
273
+ if (!meta.description)
274
+ seoPoints -= 1;
275
+ if (!meta.viewport)
276
+ seoPoints -= 1;
277
+ if (!semantic.hasMain)
278
+ seoPoints -= 1;
279
+ if (!semantic.hasHeader && !semantic.hasNav)
280
+ seoPoints -= 1;
281
+ const seoScore = Math.max(0, Math.round((seoPoints / seoMaxPoints) * 100));
282
+ return {
283
+ file: filePath,
284
+ type,
285
+ elements,
286
+ meta,
287
+ accessibility,
288
+ semantic,
289
+ issues,
290
+ summary: {
291
+ totalElements: elements.length,
292
+ elementsWithIssues: elements.filter((e) => e.issues.length > 0).length,
293
+ a11yScore,
294
+ seoScore,
295
+ },
296
+ };
297
+ }
298
+ // 도구 정의
299
+ export const htmlTools = [
300
+ {
301
+ name: "html_check",
302
+ description: "HTML/JSP/Vue 파일을 분석합니다. 접근성(a11y), SEO 메타태그, 시맨틱 태그, deprecated 태그, 폼 요소 등을 검사합니다.",
303
+ parameters: {
304
+ type: "object",
305
+ properties: {
306
+ path: {
307
+ type: "string",
308
+ description: "분석할 HTML/JSP/Vue 파일 또는 디렉토리 경로",
309
+ },
310
+ recursive: {
311
+ type: "boolean",
312
+ description: "디렉토리인 경우 하위 폴더 포함 여부 (기본: true)",
313
+ },
314
+ },
315
+ required: ["path"],
316
+ },
317
+ handler: async (args) => {
318
+ const targetPath = args.path;
319
+ const recursive = args.recursive !== false;
320
+ if (!fs.existsSync(targetPath)) {
321
+ return {
322
+ success: false,
323
+ content: "",
324
+ error: `경로를 찾을 수 없습니다: ${targetPath}`,
325
+ };
326
+ }
327
+ const results = [];
328
+ const stats = fs.statSync(targetPath);
329
+ const htmlExtensions = [".html", ".htm", ".jsp", ".vue", ".ejs", ".hbs"];
330
+ if (stats.isFile()) {
331
+ const ext = path.extname(targetPath).toLowerCase();
332
+ if (htmlExtensions.includes(ext)) {
333
+ results.push(analyzeHtmlFile(targetPath));
334
+ }
335
+ }
336
+ else if (stats.isDirectory()) {
337
+ const walkDir = (dir) => {
338
+ const files = fs.readdirSync(dir);
339
+ for (const file of files) {
340
+ const filePath = path.join(dir, file);
341
+ const fileStat = fs.statSync(filePath);
342
+ if (fileStat.isDirectory() && recursive) {
343
+ if (!file.startsWith(".") && file !== "node_modules" && file !== "target" && file !== "build") {
344
+ walkDir(filePath);
345
+ }
346
+ }
347
+ else {
348
+ const ext = path.extname(file).toLowerCase();
349
+ if (htmlExtensions.includes(ext)) {
350
+ results.push(analyzeHtmlFile(filePath));
351
+ }
352
+ }
353
+ }
354
+ };
355
+ walkDir(targetPath);
356
+ }
357
+ // 전체 통계
358
+ const avgA11y = results.length > 0
359
+ ? Math.round(results.reduce((sum, r) => sum + r.summary.a11yScore, 0) / results.length)
360
+ : 0;
361
+ const avgSeo = results.length > 0
362
+ ? Math.round(results.reduce((sum, r) => sum + r.summary.seoScore, 0) / results.length)
363
+ : 0;
364
+ const totalA11y = {
365
+ missingAlt: results.reduce((sum, r) => sum + r.accessibility.missingAlt, 0),
366
+ missingLabel: results.reduce((sum, r) => sum + r.accessibility.missingLabel, 0),
367
+ emptyLinks: results.reduce((sum, r) => sum + r.accessibility.emptyLinks, 0),
368
+ emptyButtons: results.reduce((sum, r) => sum + r.accessibility.emptyButtons, 0),
369
+ };
370
+ const output = {
371
+ analyzedFiles: results.length,
372
+ averageA11yScore: avgA11y,
373
+ averageSeoScore: avgSeo,
374
+ totalAccessibilityIssues: totalA11y,
375
+ files: results.map((r) => ({
376
+ file: r.file,
377
+ type: r.type,
378
+ a11yScore: r.summary.a11yScore,
379
+ seoScore: r.summary.seoScore,
380
+ meta: r.meta,
381
+ semantic: r.semantic,
382
+ accessibility: r.accessibility,
383
+ pageIssues: r.issues,
384
+ elementIssues: r.elements.map((e) => ({
385
+ tag: e.tag,
386
+ line: e.line,
387
+ issues: e.issues,
388
+ })),
389
+ })),
390
+ };
391
+ return {
392
+ success: true,
393
+ content: JSON.stringify(output, null, 2),
394
+ };
395
+ },
396
+ },
397
+ ];
398
+ //# sourceMappingURL=htmlAnalysis.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"htmlAnalysis.js","sourceRoot":"","sources":["../../../src/core/tools/htmlAnalysis.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,16 @@ import { Tool, ToolCall, ToolResult } from "./types.js";
2
2
  export * from "./types.js";
3
3
  export * from "./builtIn.js";
4
4
  export * from "./standards.js";
5
+ export * from "./cache.js";
6
+ export * from "./ast.js";
7
+ export * from "./embeddings.js";
8
+ export * from "./memory.js";
9
+ export * from "./javaAst.js";
10
+ export * from "./frontendAst.js";
11
+ export * from "./sqlAnalysis.js";
12
+ export * from "./mybatisAnalysis.js";
13
+ export * from "./cssAnalysis.js";
14
+ export * from "./htmlAnalysis.js";
5
15
  export declare function getAllTools(): Tool[];
6
16
  export declare function getTool(name: string): Tool | undefined;
7
17
  export declare function executeTool(toolCall: ToolCall): Promise<ToolResult>;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/core/tools/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAIxD,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,gBAAgB,CAAC;AAG/B,wBAAgB,WAAW,IAAI,IAAI,EAAE,CAEpC;AAGD,wBAAgB,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAEtD;AAGD,wBAAsB,WAAW,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,UAAU,CAAC,CAoBzE;AAGD,wBAAgB,kBAAkB,IAAI,KAAK,CAAC;IAC1C,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;CAChC,CAAC,CAMD"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/core/tools/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAcxD,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,iBAAiB,CAAC;AAChC,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,sBAAsB,CAAC;AACrC,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAGlC,wBAAgB,WAAW,IAAI,IAAI,EAAE,CAEpC;AAGD,wBAAgB,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAEtD;AAGD,wBAAsB,WAAW,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,UAAU,CAAC,CAoBzE;AAGD,wBAAgB,kBAAkB,IAAI,KAAK,CAAC;IAC1C,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;CAChC,CAAC,CAMD"}
@@ -1,11 +1,31 @@
1
1
  import { builtInTools } from "./builtIn.js";
2
2
  import { standardsTools } from "./standards.js";
3
+ import { cacheTools } from "./cache.js";
4
+ import { astTools } from "./ast.js";
5
+ import { embeddingTools } from "./embeddings.js";
6
+ import { memoryTools } from "./memory.js";
7
+ import { javaTools } from "./javaAst.js";
8
+ import { frontendTools } from "./frontendAst.js";
9
+ import { sqlTools } from "./sqlAnalysis.js";
10
+ import { mybatisTools } from "./mybatisAnalysis.js";
11
+ import { cssTools } from "./cssAnalysis.js";
12
+ import { htmlTools } from "./htmlAnalysis.js";
3
13
  export * from "./types.js";
4
14
  export * from "./builtIn.js";
5
15
  export * from "./standards.js";
16
+ export * from "./cache.js";
17
+ export * from "./ast.js";
18
+ export * from "./embeddings.js";
19
+ export * from "./memory.js";
20
+ export * from "./javaAst.js";
21
+ export * from "./frontendAst.js";
22
+ export * from "./sqlAnalysis.js";
23
+ export * from "./mybatisAnalysis.js";
24
+ export * from "./cssAnalysis.js";
25
+ export * from "./htmlAnalysis.js";
6
26
  // All available tools
7
27
  export function getAllTools() {
8
- return [...builtInTools, ...standardsTools];
28
+ return [...builtInTools, ...standardsTools, ...cacheTools, ...astTools, ...embeddingTools, ...memoryTools, ...javaTools, ...frontendTools, ...sqlTools, ...mybatisTools, ...cssTools, ...htmlTools];
9
29
  }
10
30
  // Get tool by name
11
31
  export function getTool(name) {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core/tools/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAEhD,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,gBAAgB,CAAC;AAE/B,sBAAsB;AACtB,MAAM,UAAU,WAAW;IACzB,OAAO,CAAC,GAAG,YAAY,EAAE,GAAG,cAAc,CAAC,CAAC;AAC9C,CAAC;AAED,mBAAmB;AACnB,MAAM,UAAU,OAAO,CAAC,IAAY;IAClC,OAAO,WAAW,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;AACpD,CAAC;AAED,sBAAsB;AACtB,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,QAAkB;IAClD,MAAM,IAAI,GAAG,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAEpC,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,OAAO;YACL,OAAO,EAAE,KAAK;YACd,OAAO,EAAE,EAAE;YACX,KAAK,EAAE,iBAAiB,QAAQ,CAAC,IAAI,EAAE;SACxC,CAAC;IACJ,CAAC;IAED,IAAI,CAAC;QACH,OAAO,MAAM,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;IAChD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO;YACL,OAAO,EAAE,KAAK;YACd,OAAO,EAAE,EAAE;YACX,KAAK,EAAE,yBAAyB,KAAK,EAAE;SACxC,CAAC;IACJ,CAAC;AACH,CAAC;AAED,+BAA+B;AAC/B,MAAM,UAAU,kBAAkB;IAKhC,OAAO,WAAW,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAC/B,IAAI,EAAE,CAAC,CAAC,IAAI;QACZ,WAAW,EAAE,CAAC,CAAC,WAAW;QAC1B,UAAU,EAAE,CAAC,CAAC,UAAU;KACzB,CAAC,CAAC,CAAC;AACN,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core/tools/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AACpC,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAE9C,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,iBAAiB,CAAC;AAChC,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,sBAAsB,CAAC;AACrC,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAElC,sBAAsB;AACtB,MAAM,UAAU,WAAW;IACzB,OAAO,CAAC,GAAG,YAAY,EAAE,GAAG,cAAc,EAAE,GAAG,UAAU,EAAE,GAAG,QAAQ,EAAE,GAAG,cAAc,EAAE,GAAG,WAAW,EAAE,GAAG,SAAS,EAAE,GAAG,aAAa,EAAE,GAAG,QAAQ,EAAE,GAAG,YAAY,EAAE,GAAG,QAAQ,EAAE,GAAG,SAAS,CAAC,CAAC;AACtM,CAAC;AAED,mBAAmB;AACnB,MAAM,UAAU,OAAO,CAAC,IAAY;IAClC,OAAO,WAAW,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;AACpD,CAAC;AAED,sBAAsB;AACtB,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,QAAkB;IAClD,MAAM,IAAI,GAAG,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAEpC,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,OAAO;YACL,OAAO,EAAE,KAAK;YACd,OAAO,EAAE,EAAE;YACX,KAAK,EAAE,iBAAiB,QAAQ,CAAC,IAAI,EAAE;SACxC,CAAC;IACJ,CAAC;IAED,IAAI,CAAC;QACH,OAAO,MAAM,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;IAChD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO;YACL,OAAO,EAAE,KAAK;YACd,OAAO,EAAE,EAAE;YACX,KAAK,EAAE,yBAAyB,KAAK,EAAE;SACxC,CAAC;IACJ,CAAC;AACH,CAAC;AAED,+BAA+B;AAC/B,MAAM,UAAU,kBAAkB;IAKhC,OAAO,WAAW,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAC/B,IAAI,EAAE,CAAC,CAAC,IAAI;QACZ,WAAW,EAAE,CAAC,CAAC,WAAW;QAC1B,UAAU,EAAE,CAAC,CAAC,UAAU;KACzB,CAAC,CAAC,CAAC;AACN,CAAC"}
@@ -0,0 +1,6 @@
1
+ import { Tool } from "./types.js";
2
+ export declare const javaAnalyzeTool: Tool;
3
+ export declare const javaComplexityTool: Tool;
4
+ export declare const springCheckTool: Tool;
5
+ export declare const javaTools: Tool[];
6
+ //# sourceMappingURL=javaAst.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"javaAst.d.ts","sourceRoot":"","sources":["../../../src/core/tools/javaAst.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,IAAI,EAAc,MAAM,YAAY,CAAC;AA4f9C,eAAO,MAAM,eAAe,EAAE,IA2C7B,CAAC;AAGF,eAAO,MAAM,kBAAkB,EAAE,IA4FhC,CAAC;AAGF,eAAO,MAAM,eAAe,EAAE,IAwJ7B,CAAC;AAGF,eAAO,MAAM,SAAS,EAAE,IAAI,EAI3B,CAAC"}