codingbuddy 2.2.0 → 2.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 (94) hide show
  1. package/README.md +73 -0
  2. package/dist/src/analyzer/analyzer.module.js +3 -2
  3. package/dist/src/analyzer/analyzer.module.js.map +1 -1
  4. package/dist/src/analyzer/config.analyzer.js +11 -3
  5. package/dist/src/analyzer/config.analyzer.js.map +1 -1
  6. package/dist/src/analyzer/conventions.analyzer.d.ts +20 -0
  7. package/dist/src/analyzer/conventions.analyzer.js +395 -0
  8. package/dist/src/analyzer/conventions.analyzer.js.map +1 -0
  9. package/dist/src/analyzer/conventions.schemas.d.ts +76 -0
  10. package/dist/src/analyzer/conventions.schemas.js +71 -0
  11. package/dist/src/analyzer/conventions.schemas.js.map +1 -0
  12. package/dist/src/analyzer/conventions.types.d.ts +81 -0
  13. package/dist/src/analyzer/conventions.types.js +33 -0
  14. package/dist/src/analyzer/conventions.types.js.map +1 -0
  15. package/dist/src/checklist/checklist.types.d.ts +1 -1
  16. package/dist/src/checklist/checklist.types.js +1 -0
  17. package/dist/src/checklist/checklist.types.js.map +1 -1
  18. package/dist/src/cli/cli.js +2 -2
  19. package/dist/src/cli/cli.js.map +1 -1
  20. package/dist/src/config/config.loader.d.ts +2 -0
  21. package/dist/src/config/config.loader.js +35 -4
  22. package/dist/src/config/config.loader.js.map +1 -1
  23. package/dist/src/keyword/auto-executor.d.ts +2 -2
  24. package/dist/src/keyword/auto-executor.js +15 -30
  25. package/dist/src/keyword/auto-executor.js.map +1 -1
  26. package/dist/src/keyword/auto-prompt-builder.d.ts +6 -0
  27. package/dist/src/keyword/auto-prompt-builder.js +47 -0
  28. package/dist/src/keyword/auto-prompt-builder.js.map +1 -0
  29. package/dist/src/keyword/keyword.module.js +11 -1
  30. package/dist/src/keyword/keyword.module.js.map +1 -1
  31. package/dist/src/keyword/keyword.service.d.ts +9 -2
  32. package/dist/src/keyword/keyword.service.js +98 -51
  33. package/dist/src/keyword/keyword.service.js.map +1 -1
  34. package/dist/src/keyword/keyword.types.d.ts +0 -3
  35. package/dist/src/keyword/keyword.types.js +1 -4
  36. package/dist/src/keyword/keyword.types.js.map +1 -1
  37. package/dist/src/keyword/primary-agent-resolver.js +4 -4
  38. package/dist/src/keyword/primary-agent-resolver.js.map +1 -1
  39. package/dist/src/main.js +12 -4
  40. package/dist/src/main.js.map +1 -1
  41. package/dist/src/mcp/handlers/abstract-handler.d.ts +8 -0
  42. package/dist/src/mcp/handlers/abstract-handler.js +19 -0
  43. package/dist/src/mcp/handlers/abstract-handler.js.map +1 -0
  44. package/dist/src/mcp/handlers/agent.handler.d.ts +6 -4
  45. package/dist/src/mcp/handlers/agent.handler.js +8 -15
  46. package/dist/src/mcp/handlers/agent.handler.js.map +1 -1
  47. package/dist/src/mcp/handlers/checklist-context.handler.d.ts +6 -4
  48. package/dist/src/mcp/handlers/checklist-context.handler.js +8 -12
  49. package/dist/src/mcp/handlers/checklist-context.handler.js.map +1 -1
  50. package/dist/src/mcp/handlers/config.handler.d.ts +6 -4
  51. package/dist/src/mcp/handlers/config.handler.js +12 -20
  52. package/dist/src/mcp/handlers/config.handler.js.map +1 -1
  53. package/dist/src/mcp/handlers/conventions.handler.d.ts +12 -0
  54. package/dist/src/mcp/handlers/conventions.handler.js +73 -0
  55. package/dist/src/mcp/handlers/conventions.handler.js.map +1 -0
  56. package/dist/src/mcp/handlers/index.d.ts +1 -0
  57. package/dist/src/mcp/handlers/index.js +3 -1
  58. package/dist/src/mcp/handlers/index.js.map +1 -1
  59. package/dist/src/mcp/handlers/mode.handler.d.ts +6 -5
  60. package/dist/src/mcp/handlers/mode.handler.js +6 -13
  61. package/dist/src/mcp/handlers/mode.handler.js.map +1 -1
  62. package/dist/src/mcp/handlers/rules.handler.d.ts +6 -4
  63. package/dist/src/mcp/handlers/rules.handler.js +8 -12
  64. package/dist/src/mcp/handlers/rules.handler.js.map +1 -1
  65. package/dist/src/mcp/handlers/skill.handler.d.ts +6 -4
  66. package/dist/src/mcp/handlers/skill.handler.js +8 -12
  67. package/dist/src/mcp/handlers/skill.handler.js.map +1 -1
  68. package/dist/src/mcp/mcp-serverless.js +2 -1
  69. package/dist/src/mcp/mcp-serverless.js.map +1 -1
  70. package/dist/src/mcp/mcp.module.js +1 -0
  71. package/dist/src/mcp/mcp.module.js.map +1 -1
  72. package/dist/src/mcp/mcp.service.d.ts +0 -1
  73. package/dist/src/mcp/mcp.service.js +4 -6
  74. package/dist/src/mcp/mcp.service.js.map +1 -1
  75. package/dist/src/shared/async.utils.d.ts +8 -0
  76. package/dist/src/shared/async.utils.js +18 -0
  77. package/dist/src/shared/async.utils.js.map +1 -0
  78. package/dist/src/shared/file.utils.d.ts +38 -2
  79. package/dist/src/shared/file.utils.js +104 -3
  80. package/dist/src/shared/file.utils.js.map +1 -1
  81. package/dist/src/shared/format.utils.d.ts +1 -0
  82. package/dist/src/shared/format.utils.js +19 -0
  83. package/dist/src/shared/format.utils.js.map +1 -0
  84. package/dist/src/shared/lru-cache.d.ts +21 -0
  85. package/dist/src/shared/lru-cache.js +70 -0
  86. package/dist/src/shared/lru-cache.js.map +1 -0
  87. package/dist/src/shared/validation.constants.d.ts +31 -0
  88. package/dist/src/shared/validation.constants.js +82 -8
  89. package/dist/src/shared/validation.constants.js.map +1 -1
  90. package/dist/src/shared/version.utils.d.ts +2 -0
  91. package/dist/src/shared/version.utils.js +22 -0
  92. package/dist/src/shared/version.utils.js.map +1 -0
  93. package/dist/tsconfig.build.tsbuildinfo +1 -1
  94. package/package.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"agent.handler.js","sourceRoot":"","sources":["../../../../src/mcp/handlers/agent.handler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent.handler.js","sourceRoot":"","sources":["../../../../src/mcp/handlers/agent.handler.ts"],"names":[],"mappings":"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"}
@@ -1,12 +1,14 @@
1
- import type { ToolHandler, ToolDefinition, ToolResult } from './base.handler';
1
+ import type { ToolDefinition } from './base.handler';
2
+ import type { ToolResponse } from '../response.utils';
3
+ import { AbstractHandler } from './abstract-handler';
2
4
  import { ChecklistService } from '../../checklist/checklist.service';
3
5
  import { ContextService } from '../../context/context.service';
4
- export declare class ChecklistContextHandler implements ToolHandler {
6
+ export declare class ChecklistContextHandler extends AbstractHandler {
5
7
  private readonly checklistService;
6
8
  private readonly contextService;
7
- private readonly handledTools;
8
9
  constructor(checklistService: ChecklistService, contextService: ContextService);
9
- handle(toolName: string, args: Record<string, unknown> | undefined): Promise<ToolResult | null>;
10
+ protected getHandledTools(): string[];
11
+ protected handleTool(toolName: string, args: Record<string, unknown> | undefined): Promise<ToolResponse>;
10
12
  getToolDefinitions(): ToolDefinition[];
11
13
  private handleGenerateChecklist;
12
14
  private handleAnalyzeTask;
@@ -11,32 +11,28 @@ var __metadata = (this && this.__metadata) || function (k, v) {
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.ChecklistContextHandler = void 0;
13
13
  const common_1 = require("@nestjs/common");
14
+ const abstract_handler_1 = require("./abstract-handler");
14
15
  const checklist_service_1 = require("../../checklist/checklist.service");
15
16
  const context_service_1 = require("../../context/context.service");
16
17
  const response_utils_1 = require("../response.utils");
17
- const security_utils_1 = require("../../shared/security.utils");
18
18
  const validation_constants_1 = require("../../shared/validation.constants");
19
- let ChecklistContextHandler = class ChecklistContextHandler {
19
+ let ChecklistContextHandler = class ChecklistContextHandler extends abstract_handler_1.AbstractHandler {
20
20
  constructor(checklistService, contextService) {
21
+ super();
21
22
  this.checklistService = checklistService;
22
23
  this.contextService = contextService;
23
- this.handledTools = ['generate_checklist', 'analyze_task'];
24
24
  }
25
- async handle(toolName, args) {
26
- if (!this.handledTools.includes(toolName)) {
27
- return null;
28
- }
29
- const validation = (0, security_utils_1.sanitizeHandlerArgs)(args);
30
- if (!validation.safe) {
31
- return (0, response_utils_1.createErrorResponse)(validation.error);
32
- }
25
+ getHandledTools() {
26
+ return ['generate_checklist', 'analyze_task'];
27
+ }
28
+ async handleTool(toolName, args) {
33
29
  switch (toolName) {
34
30
  case 'generate_checklist':
35
31
  return this.handleGenerateChecklist(args);
36
32
  case 'analyze_task':
37
33
  return this.handleAnalyzeTask(args);
38
34
  default:
39
- return null;
35
+ return (0, response_utils_1.createErrorResponse)(`Unknown tool: ${toolName}`);
40
36
  }
41
37
  }
42
38
  getToolDefinitions() {
@@ -1 +1 @@
1
- {"version":3,"file":"checklist-context.handler.js","sourceRoot":"","sources":["../../../../src/mcp/handlers/checklist-context.handler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"checklist-context.handler.js","sourceRoot":"","sources":["../../../../src/mcp/handlers/checklist-context.handler.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAA4C;AAG5C,yDAAqD;AACrD,yEAAqE;AACrE,mEAA+D;AAE/D,sDAA4E;AAC5E,4EAK2C;AAQpC,IAAM,uBAAuB,GAA7B,MAAM,uBAAwB,SAAQ,kCAAe;IAC1D,YACmB,gBAAkC,EAClC,cAA8B;QAE/C,KAAK,EAAE,CAAC;QAHS,qBAAgB,GAAhB,gBAAgB,CAAkB;QAClC,mBAAc,GAAd,cAAc,CAAgB;IAGjD,CAAC;IAES,eAAe;QACvB,OAAO,CAAC,oBAAoB,EAAE,cAAc,CAAC,CAAC;IAChD,CAAC;IAES,KAAK,CAAC,UAAU,CACxB,QAAgB,EAChB,IAAyC;QAEzC,QAAQ,QAAQ,EAAE,CAAC;YACjB,KAAK,oBAAoB;gBACvB,OAAO,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC;YAC5C,KAAK,cAAc;gBACjB,OAAO,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;YACtC;gBACE,OAAO,IAAA,oCAAmB,EAAC,iBAAiB,QAAQ,EAAE,CAAC,CAAC;QAC5D,CAAC;IACH,CAAC;IAED,kBAAkB;QAChB,OAAO;YACL;gBACE,IAAI,EAAE,oBAAoB;gBAC1B,WAAW,EACT,iPAAiP;gBACnP,WAAW,EAAE;oBACX,IAAI,EAAE,QAAQ;oBACd,UAAU,EAAE;wBACV,KAAK,EAAE;4BACL,IAAI,EAAE,OAAO;4BACb,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;4BACzB,WAAW,EACT,kGAAkG;yBACrG;wBACD,OAAO,EAAE;4BACP,IAAI,EAAE,OAAO;4BACb,KAAK,EAAE;gCACL,IAAI,EAAE,QAAQ;gCACd,IAAI,EAAE;oCACJ,UAAU;oCACV,eAAe;oCACf,aAAa;oCACb,SAAS;oCACT,cAAc;oCACd,KAAK;iCACN;6BACF;4BACD,WAAW,EACT,qGAAqG;yBACxG;qBACF;oBACD,QAAQ,EAAE,EAAE;iBACb;aACF;YACD;gBACE,IAAI,EAAE,cAAc;gBACpB,WAAW,EACT,mOAAmO;gBACrO,WAAW,EAAE;oBACX,IAAI,EAAE,QAAQ;oBACd,UAAU,EAAE;wBACV,MAAM,EAAE;4BACN,IAAI,EAAE,QAAQ;4BACd,WAAW,EAAE,yBAAyB;yBACvC;wBACD,KAAK,EAAE;4BACL,IAAI,EAAE,OAAO;4BACb,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;4BACzB,WAAW,EAAE,yCAAyC;yBACvD;wBACD,IAAI,EAAE;4BACJ,IAAI,EAAE,QAAQ;4BACd,IAAI,EAAE,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC;4BAC7B,WAAW,EAAE,uBAAuB;yBACrC;qBACF;oBACD,QAAQ,EAAE,CAAC,QAAQ,CAAC;iBACrB;aACF;SACF,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,uBAAuB,CACnC,IAAyC;QAGzC,MAAM,KAAK,GAAG,IAAA,yCAAkB,EAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAChD,MAAM,OAAO,GAAG,IAAA,yCAAkB,EAAC,IAAI,EAAE,SAAS,CAErC,CAAC;QAEd,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,iBAAiB,CAAC;gBAC3D,KAAK;gBACL,OAAO;aACR,CAAC,CAAC;YACH,OAAO,IAAA,mCAAkB,EAAC,MAAM,CAAC,CAAC;QACpC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,IAAA,oCAAmB,EACxB,iCAAiC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,EAAE,CAC5F,CAAC;QACJ,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,iBAAiB,CAC7B,IAAyC;QAEzC,MAAM,MAAM,GAAG,IAAA,4CAAqB,EAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QACrD,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;YACpB,OAAO,IAAA,oCAAmB,EAAC,oCAAoC,CAAC,CAAC;QACnE,CAAC;QAGD,MAAM,KAAK,GAAG,IAAA,yCAAkB,EAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAChD,MAAM,OAAO,GAAG,IAAI,EAAE,IAAI,CAAC;QAC3B,MAAM,IAAI,GAAG,IAAA,kCAAW,EAAC,OAAO,CAAC,CAAC,CAAC,CAAE,OAAqB,CAAC,CAAC,CAAC,SAAS,CAAC;QAEvE,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC;gBACnD,MAAM;gBACN,KAAK;gBACL,IAAI;aACL,CAAC,CAAC;YACH,OAAO,IAAA,mCAAkB,EAAC,MAAM,CAAC,CAAC;QACpC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,IAAA,oCAAmB,EACxB,2BAA2B,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,EAAE,CACtF,CAAC;QACJ,CAAC;IACH,CAAC;CACF,CAAA;AAzIY,0DAAuB;kCAAvB,uBAAuB;IADnC,IAAA,mBAAU,GAAE;qCAG0B,oCAAgB;QAClB,gCAAc;GAHtC,uBAAuB,CAyInC"}
@@ -1,14 +1,16 @@
1
- import type { ToolHandler, ToolDefinition, ToolResult } from './base.handler';
1
+ import type { ToolDefinition } from './base.handler';
2
+ import type { ToolResponse } from '../response.utils';
3
+ import { AbstractHandler } from './abstract-handler';
2
4
  import { ConfigService } from '../../config/config.service';
3
5
  import { ConfigDiffService } from '../../config/config-diff.service';
4
6
  import { AnalyzerService } from '../../analyzer/analyzer.service';
5
- export declare class ConfigHandler implements ToolHandler {
7
+ export declare class ConfigHandler extends AbstractHandler {
6
8
  private readonly configService;
7
9
  private readonly configDiffService;
8
10
  private readonly analyzerService;
9
- private readonly handledTools;
10
11
  constructor(configService: ConfigService, configDiffService: ConfigDiffService, analyzerService: AnalyzerService);
11
- handle(toolName: string, args: Record<string, unknown> | undefined): Promise<ToolResult | null>;
12
+ protected getHandledTools(): string[];
13
+ protected handleTool(toolName: string, args: Record<string, unknown> | undefined): Promise<ToolResponse>;
12
14
  getToolDefinitions(): ToolDefinition[];
13
15
  private handleGetProjectConfig;
14
16
  private handleSuggestConfigUpdates;
@@ -11,38 +11,30 @@ var __metadata = (this && this.__metadata) || function (k, v) {
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.ConfigHandler = void 0;
13
13
  const common_1 = require("@nestjs/common");
14
+ const abstract_handler_1 = require("./abstract-handler");
14
15
  const config_service_1 = require("../../config/config.service");
15
16
  const config_diff_service_1 = require("../../config/config-diff.service");
16
17
  const analyzer_service_1 = require("../../analyzer/analyzer.service");
17
18
  const response_utils_1 = require("../response.utils");
18
- const security_utils_1 = require("../../shared/security.utils");
19
19
  const validation_constants_1 = require("../../shared/validation.constants");
20
- let ConfigHandler = class ConfigHandler {
20
+ let ConfigHandler = class ConfigHandler extends abstract_handler_1.AbstractHandler {
21
21
  constructor(configService, configDiffService, analyzerService) {
22
+ super();
22
23
  this.configService = configService;
23
24
  this.configDiffService = configDiffService;
24
25
  this.analyzerService = analyzerService;
25
- this.handledTools = [
26
- 'get_project_config',
27
- 'suggest_config_updates',
28
- ];
29
26
  }
30
- async handle(toolName, args) {
31
- if (!this.handledTools.includes(toolName)) {
32
- return null;
33
- }
34
- const validation = (0, security_utils_1.sanitizeHandlerArgs)(args);
35
- if (!validation.safe) {
36
- return (0, response_utils_1.createErrorResponse)(validation.error);
27
+ getHandledTools() {
28
+ return ['get_project_config', 'suggest_config_updates'];
29
+ }
30
+ async handleTool(toolName, args) {
31
+ if (toolName === 'get_project_config') {
32
+ return this.handleGetProjectConfig();
37
33
  }
38
- switch (toolName) {
39
- case 'get_project_config':
40
- return this.handleGetProjectConfig();
41
- case 'suggest_config_updates':
42
- return this.handleSuggestConfigUpdates(args);
43
- default:
44
- return null;
34
+ if (toolName === 'suggest_config_updates') {
35
+ return this.handleSuggestConfigUpdates(args);
45
36
  }
37
+ return (0, response_utils_1.createErrorResponse)(`Unknown tool: ${toolName}`);
46
38
  }
47
39
  getToolDefinitions() {
48
40
  return [
@@ -1 +1 @@
1
- {"version":3,"file":"config.handler.js","sourceRoot":"","sources":["../../../../src/mcp/handlers/config.handler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.handler.js","sourceRoot":"","sources":["../../../../src/mcp/handlers/config.handler.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ import type { ToolDefinition } from './base.handler';
2
+ import type { ToolResponse } from '../response.utils';
3
+ import { AbstractHandler } from './abstract-handler';
4
+ import { ConventionsAnalyzer } from '../../analyzer/conventions.analyzer';
5
+ export declare class ConventionsHandler extends AbstractHandler {
6
+ private readonly conventionsAnalyzer;
7
+ constructor(conventionsAnalyzer: ConventionsAnalyzer);
8
+ protected getHandledTools(): string[];
9
+ protected handleTool(toolName: string, args: Record<string, unknown> | undefined): Promise<ToolResponse>;
10
+ getToolDefinitions(): ToolDefinition[];
11
+ private handleGetCodeConventions;
12
+ }
@@ -0,0 +1,73 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.ConventionsHandler = void 0;
13
+ const common_1 = require("@nestjs/common");
14
+ const abstract_handler_1 = require("./abstract-handler");
15
+ const conventions_analyzer_1 = require("../../analyzer/conventions.analyzer");
16
+ const response_utils_1 = require("../response.utils");
17
+ const validation_constants_1 = require("../../shared/validation.constants");
18
+ const security_utils_1 = require("../../shared/security.utils");
19
+ let ConventionsHandler = class ConventionsHandler extends abstract_handler_1.AbstractHandler {
20
+ constructor(conventionsAnalyzer) {
21
+ super();
22
+ this.conventionsAnalyzer = conventionsAnalyzer;
23
+ }
24
+ getHandledTools() {
25
+ return ['get_code_conventions'];
26
+ }
27
+ async handleTool(toolName, args) {
28
+ switch (toolName) {
29
+ case 'get_code_conventions':
30
+ return this.handleGetCodeConventions(args);
31
+ default:
32
+ return (0, response_utils_1.createErrorResponse)(`Unknown tool: ${toolName}`);
33
+ }
34
+ }
35
+ getToolDefinitions() {
36
+ return [
37
+ {
38
+ name: 'get_code_conventions',
39
+ description: 'Get project configuration including tech stack, architecture, conventions, and language settings',
40
+ inputSchema: {
41
+ type: 'object',
42
+ properties: {
43
+ projectRoot: {
44
+ type: 'string',
45
+ description: 'Project root directory (defaults to current working directory)',
46
+ },
47
+ },
48
+ required: [],
49
+ },
50
+ },
51
+ ];
52
+ }
53
+ async handleGetCodeConventions(args) {
54
+ try {
55
+ const projectRootInput = (0, validation_constants_1.extractOptionalString)(args, 'projectRoot') ?? process.cwd();
56
+ const projectRoot = (0, security_utils_1.assertPathSafe)(projectRootInput, {
57
+ basePath: process.cwd(),
58
+ allowAbsolute: true,
59
+ });
60
+ const conventions = await this.conventionsAnalyzer.analyzeProjectConventions(projectRoot);
61
+ return (0, response_utils_1.createJsonResponse)(conventions);
62
+ }
63
+ catch (error) {
64
+ return (0, response_utils_1.createErrorResponse)(`Failed to analyze code conventions: ${error instanceof Error ? error.message : String(error)}`);
65
+ }
66
+ }
67
+ };
68
+ exports.ConventionsHandler = ConventionsHandler;
69
+ exports.ConventionsHandler = ConventionsHandler = __decorate([
70
+ (0, common_1.Injectable)(),
71
+ __metadata("design:paramtypes", [conventions_analyzer_1.ConventionsAnalyzer])
72
+ ], ConventionsHandler);
73
+ //# sourceMappingURL=conventions.handler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"conventions.handler.js","sourceRoot":"","sources":["../../../../src/mcp/handlers/conventions.handler.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAA4C;AAG5C,yDAAqD;AACrD,8EAA0E;AAC1E,sDAA4E;AAC5E,4EAA0E;AAC1E,gEAA6D;AAOtD,IAAM,kBAAkB,GAAxB,MAAM,kBAAmB,SAAQ,kCAAe;IACrD,YAA6B,mBAAwC;QACnE,KAAK,EAAE,CAAC;QADmB,wBAAmB,GAAnB,mBAAmB,CAAqB;IAErE,CAAC;IAES,eAAe;QACvB,OAAO,CAAC,sBAAsB,CAAC,CAAC;IAClC,CAAC;IAES,KAAK,CAAC,UAAU,CACxB,QAAgB,EAChB,IAAyC;QAEzC,QAAQ,QAAQ,EAAE,CAAC;YACjB,KAAK,sBAAsB;gBACzB,OAAO,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,CAAC;YAC7C;gBACE,OAAO,IAAA,oCAAmB,EAAC,iBAAiB,QAAQ,EAAE,CAAC,CAAC;QAC5D,CAAC;IACH,CAAC;IAED,kBAAkB;QAChB,OAAO;YACL;gBACE,IAAI,EAAE,sBAAsB;gBAC5B,WAAW,EACT,kGAAkG;gBACpG,WAAW,EAAE;oBACX,IAAI,EAAE,QAAQ;oBACd,UAAU,EAAE;wBACV,WAAW,EAAE;4BACX,IAAI,EAAE,QAAQ;4BACd,WAAW,EACT,gEAAgE;yBACnE;qBACF;oBACD,QAAQ,EAAE,EAAE;iBACb;aACF;SACF,CAAC;IACJ,CAAC;IAKO,KAAK,CAAC,wBAAwB,CACpC,IAAyC;QAEzC,IAAI,CAAC;YACH,MAAM,gBAAgB,GACpB,IAAA,4CAAqB,EAAC,IAAI,EAAE,aAAa,CAAC,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;YAG9D,MAAM,WAAW,GAAG,IAAA,+BAAc,EAAC,gBAAgB,EAAE;gBACnD,QAAQ,EAAE,OAAO,CAAC,GAAG,EAAE;gBACvB,aAAa,EAAE,IAAI;aACpB,CAAC,CAAC;YAEH,MAAM,WAAW,GACf,MAAM,IAAI,CAAC,mBAAmB,CAAC,yBAAyB,CAAC,WAAW,CAAC,CAAC;YAExE,OAAO,IAAA,mCAAkB,EAAC,WAAW,CAAC,CAAC;QACzC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,IAAA,oCAAmB,EACxB,uCAAuC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAChG,CAAC;QACJ,CAAC;IACH,CAAC;CACF,CAAA;AApEY,gDAAkB;6BAAlB,kBAAkB;IAD9B,IAAA,mBAAU,GAAE;qCAEuC,0CAAmB;GAD1D,kBAAkB,CAoE9B"}
@@ -5,4 +5,5 @@ export { SkillHandler } from './skill.handler';
5
5
  export { AgentHandler } from './agent.handler';
6
6
  export { ModeHandler } from './mode.handler';
7
7
  export { ChecklistContextHandler } from './checklist-context.handler';
8
+ export { ConventionsHandler } from './conventions.handler';
8
9
  export declare const TOOL_HANDLERS = "TOOL_HANDLERS";
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.TOOL_HANDLERS = exports.ChecklistContextHandler = exports.ModeHandler = exports.AgentHandler = exports.SkillHandler = exports.ConfigHandler = exports.RulesHandler = void 0;
3
+ exports.TOOL_HANDLERS = exports.ConventionsHandler = exports.ChecklistContextHandler = exports.ModeHandler = exports.AgentHandler = exports.SkillHandler = exports.ConfigHandler = exports.RulesHandler = void 0;
4
4
  var rules_handler_1 = require("./rules.handler");
5
5
  Object.defineProperty(exports, "RulesHandler", { enumerable: true, get: function () { return rules_handler_1.RulesHandler; } });
6
6
  var config_handler_1 = require("./config.handler");
@@ -13,5 +13,7 @@ var mode_handler_1 = require("./mode.handler");
13
13
  Object.defineProperty(exports, "ModeHandler", { enumerable: true, get: function () { return mode_handler_1.ModeHandler; } });
14
14
  var checklist_context_handler_1 = require("./checklist-context.handler");
15
15
  Object.defineProperty(exports, "ChecklistContextHandler", { enumerable: true, get: function () { return checklist_context_handler_1.ChecklistContextHandler; } });
16
+ var conventions_handler_1 = require("./conventions.handler");
17
+ Object.defineProperty(exports, "ConventionsHandler", { enumerable: true, get: function () { return conventions_handler_1.ConventionsHandler; } });
16
18
  exports.TOOL_HANDLERS = 'TOOL_HANDLERS';
17
19
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/mcp/handlers/index.ts"],"names":[],"mappings":";;;AAyCA,iDAA+C;AAAtC,6GAAA,YAAY,OAAA;AAMrB,mDAAiD;AAAxC,+GAAA,aAAa,OAAA;AAMtB,iDAA+C;AAAtC,6GAAA,YAAY,OAAA;AAMrB,iDAA+C;AAAtC,6GAAA,YAAY,OAAA;AAMrB,+CAA6C;AAApC,2GAAA,WAAW,OAAA;AAMpB,yEAAsE;AAA7D,oIAAA,uBAAuB,OAAA;AA0BnB,QAAA,aAAa,GAAG,eAAe,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/mcp/handlers/index.ts"],"names":[],"mappings":";;;AAyCA,iDAA+C;AAAtC,6GAAA,YAAY,OAAA;AAMrB,mDAAiD;AAAxC,+GAAA,aAAa,OAAA;AAMtB,iDAA+C;AAAtC,6GAAA,YAAY,OAAA;AAMrB,iDAA+C;AAAtC,6GAAA,YAAY,OAAA;AAMrB,+CAA6C;AAApC,2GAAA,WAAW,OAAA;AAMpB,yEAAsE;AAA7D,oIAAA,uBAAuB,OAAA;AAMhC,6DAA2D;AAAlD,yHAAA,kBAAkB,OAAA;AA0Bd,QAAA,aAAa,GAAG,eAAe,CAAC"}
@@ -1,16 +1,17 @@
1
- import type { ToolHandler, ToolDefinition, ToolResult } from './base.handler';
1
+ import type { ToolDefinition } from './base.handler';
2
+ import type { ToolResponse } from '../response.utils';
3
+ import { AbstractHandler } from './abstract-handler';
2
4
  import { KeywordService } from '../../keyword/keyword.service';
3
5
  import { ConfigService } from '../../config/config.service';
4
6
  import { LanguageService } from '../../shared/language.service';
5
7
  import { ModelResolverService } from '../../model';
6
- export declare class ModeHandler implements ToolHandler {
8
+ export declare class ModeHandler extends AbstractHandler {
7
9
  private readonly keywordService;
8
10
  private readonly configService;
9
11
  private readonly languageService;
10
12
  private readonly modelResolverService;
11
- private readonly handledTools;
12
13
  constructor(keywordService: KeywordService, configService: ConfigService, languageService: LanguageService, modelResolverService: ModelResolverService);
13
- handle(toolName: string, args: Record<string, unknown> | undefined): Promise<ToolResult | null>;
14
+ protected getHandledTools(): string[];
14
15
  getToolDefinitions(): ToolDefinition[];
15
- private handleParseMode;
16
+ protected handleTool(toolName: string, args: Record<string, unknown> | undefined): Promise<ToolResponse>;
16
17
  }
@@ -14,31 +14,24 @@ var __param = (this && this.__param) || function (paramIndex, decorator) {
14
14
  Object.defineProperty(exports, "__esModule", { value: true });
15
15
  exports.ModeHandler = void 0;
16
16
  const common_1 = require("@nestjs/common");
17
+ const abstract_handler_1 = require("./abstract-handler");
17
18
  const keyword_service_1 = require("../../keyword/keyword.service");
18
19
  const keyword_module_1 = require("../../keyword/keyword.module");
19
20
  const config_service_1 = require("../../config/config.service");
20
21
  const language_service_1 = require("../../shared/language.service");
21
22
  const response_utils_1 = require("../response.utils");
22
23
  const model_1 = require("../../model");
23
- const security_utils_1 = require("../../shared/security.utils");
24
24
  const validation_constants_1 = require("../../shared/validation.constants");
25
- let ModeHandler = class ModeHandler {
25
+ let ModeHandler = class ModeHandler extends abstract_handler_1.AbstractHandler {
26
26
  constructor(keywordService, configService, languageService, modelResolverService) {
27
+ super();
27
28
  this.keywordService = keywordService;
28
29
  this.configService = configService;
29
30
  this.languageService = languageService;
30
31
  this.modelResolverService = modelResolverService;
31
- this.handledTools = ['parse_mode'];
32
32
  }
33
- async handle(toolName, args) {
34
- if (!this.handledTools.includes(toolName)) {
35
- return null;
36
- }
37
- const validation = (0, security_utils_1.sanitizeHandlerArgs)(args);
38
- if (!validation.safe) {
39
- return (0, response_utils_1.createErrorResponse)(validation.error);
40
- }
41
- return this.handleParseMode(args);
33
+ getHandledTools() {
34
+ return ['parse_mode'];
42
35
  }
43
36
  getToolDefinitions() {
44
37
  return [
@@ -62,7 +55,7 @@ let ModeHandler = class ModeHandler {
62
55
  },
63
56
  ];
64
57
  }
65
- async handleParseMode(args) {
58
+ async handleTool(toolName, args) {
66
59
  const prompt = (0, validation_constants_1.extractRequiredString)(args, 'prompt');
67
60
  if (prompt === null) {
68
61
  return (0, response_utils_1.createErrorResponse)('Missing required parameter: prompt');
@@ -1 +1 @@
1
- {"version":3,"file":"mode.handler.js","sourceRoot":"","sources":["../../../../src/mcp/handlers/mode.handler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mode.handler.js","sourceRoot":"","sources":["../../../../src/mcp/handlers/mode.handler.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAAoD;AAGpD,yDAAqD;AACrD,mEAA+D;AAC/D,iEAA+D;AAC/D,gEAA4D;AAC5D,oEAAgE;AAChE,sDAA4E;AAC5E,uCAAmD;AACnD,4EAA0E;AAOnE,IAAM,WAAW,GAAjB,MAAM,WAAY,SAAQ,kCAAe;IAC9C,YAC4C,cAA8B,EACvD,aAA4B,EAC5B,eAAgC,EAChC,oBAA0C;QAE3D,KAAK,EAAE,CAAC;QALkC,mBAAc,GAAd,cAAc,CAAgB;QACvD,kBAAa,GAAb,aAAa,CAAe;QAC5B,oBAAe,GAAf,eAAe,CAAiB;QAChC,yBAAoB,GAApB,oBAAoB,CAAsB;IAG7D,CAAC;IAES,eAAe;QACvB,OAAO,CAAC,YAAY,CAAC,CAAC;IACxB,CAAC;IAED,kBAAkB;QAChB,OAAO;YACL;gBACE,IAAI,EAAE,YAAY;gBAClB,WAAW,EACT,yZAAyZ;gBAC3Z,WAAW,EAAE;oBACX,IAAI,EAAE,QAAQ;oBACd,UAAU,EAAE;wBACV,MAAM,EAAE;4BACN,IAAI,EAAE,QAAQ;4BACd,WAAW,EACT,uDAAuD;yBAC1D;wBACD,iBAAiB,EAAE;4BACjB,IAAI,EAAE,QAAQ;4BACd,WAAW,EACT,qJAAqJ;yBACxJ;qBACF;oBACD,QAAQ,EAAE,CAAC,QAAQ,CAAC;iBACrB;aACF;SACF,CAAC;IACJ,CAAC;IAES,KAAK,CAAC,UAAU,CACxB,QAAgB,EAChB,IAAyC;QAEzC,MAAM,MAAM,GAAG,IAAA,4CAAqB,EAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QACrD,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;YACpB,OAAO,IAAA,oCAAmB,EAAC,oCAAoC,CAAC,CAAC;QACnE,CAAC;QAGD,MAAM,gBAAgB,GACpB,IAAA,4CAAqB,EAAC,IAAI,EAAE,mBAAmB,CAAC,IAAI,SAAS,CAAC;QAEhE,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,gBAAgB;gBAC9B,CAAC,CAAC,EAAE,mBAAmB,EAAE,gBAAgB,EAAE;gBAC3C,CAAC,CAAC,SAAS,CAAC;YACd,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YACpE,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,CAAC;YACxD,MAAM,yBAAyB,GAC7B,IAAI,CAAC,eAAe,CAAC,sBAAsB,CAAC,QAAQ,IAAI,IAAI,CAAC,CAAC;YAChE,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAAC,cAAc,CAClE,MAAM,CAAC,KAAK,CACb,CAAC;YAEF,OAAO,IAAA,mCAAkB,EAAC;gBACxB,GAAG,MAAM;gBACT,QAAQ;gBACR,mBAAmB,EAAE,yBAAyB,CAAC,WAAW;gBAC1D,aAAa;aACd,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,IAAA,oCAAmB,EACxB,yBAAyB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,EAAE,CACpF,CAAC;QACJ,CAAC;IACH,CAAC;CACF,CAAA;AA7EY,kCAAW;sBAAX,WAAW;IADvB,IAAA,mBAAU,GAAE;IAGR,WAAA,IAAA,eAAM,EAAC,gCAAe,CAAC,CAAA;qCAAkC,gCAAc;QACxC,8BAAa;QACX,kCAAe;QACV,4BAAoB;GALlD,WAAW,CA6EvB"}
@@ -1,10 +1,12 @@
1
- import type { ToolHandler, ToolDefinition, ToolResult } from './base.handler';
1
+ import type { ToolDefinition } from './base.handler';
2
+ import type { ToolResponse } from '../response.utils';
3
+ import { AbstractHandler } from './abstract-handler';
2
4
  import { RulesService } from '../../rules/rules.service';
3
- export declare class RulesHandler implements ToolHandler {
5
+ export declare class RulesHandler extends AbstractHandler {
4
6
  private readonly rulesService;
5
- private readonly handledTools;
6
7
  constructor(rulesService: RulesService);
7
- handle(toolName: string, args: Record<string, unknown> | undefined): Promise<ToolResult | null>;
8
+ protected getHandledTools(): string[];
9
+ protected handleTool(toolName: string, args: Record<string, unknown> | undefined): Promise<ToolResponse>;
8
10
  getToolDefinitions(): ToolDefinition[];
9
11
  private handleSearchRules;
10
12
  private handleGetAgentDetails;
@@ -11,31 +11,27 @@ var __metadata = (this && this.__metadata) || function (k, v) {
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.RulesHandler = void 0;
13
13
  const common_1 = require("@nestjs/common");
14
+ const abstract_handler_1 = require("./abstract-handler");
14
15
  const rules_service_1 = require("../../rules/rules.service");
15
16
  const response_utils_1 = require("../response.utils");
16
17
  const model_1 = require("../../model");
17
- const security_utils_1 = require("../../shared/security.utils");
18
18
  const validation_constants_1 = require("../../shared/validation.constants");
19
- let RulesHandler = class RulesHandler {
19
+ let RulesHandler = class RulesHandler extends abstract_handler_1.AbstractHandler {
20
20
  constructor(rulesService) {
21
+ super();
21
22
  this.rulesService = rulesService;
22
- this.handledTools = ['search_rules', 'get_agent_details'];
23
23
  }
24
- async handle(toolName, args) {
25
- if (!this.handledTools.includes(toolName)) {
26
- return null;
27
- }
28
- const validation = (0, security_utils_1.sanitizeHandlerArgs)(args);
29
- if (!validation.safe) {
30
- return (0, response_utils_1.createErrorResponse)(validation.error);
31
- }
24
+ getHandledTools() {
25
+ return ['search_rules', 'get_agent_details'];
26
+ }
27
+ async handleTool(toolName, args) {
32
28
  switch (toolName) {
33
29
  case 'search_rules':
34
30
  return this.handleSearchRules(args);
35
31
  case 'get_agent_details':
36
32
  return this.handleGetAgentDetails(args);
37
33
  default:
38
- return null;
34
+ return (0, response_utils_1.createErrorResponse)(`Unknown tool: ${toolName}`);
39
35
  }
40
36
  }
41
37
  getToolDefinitions() {
@@ -1 +1 @@
1
- {"version":3,"file":"rules.handler.js","sourceRoot":"","sources":["../../../../src/mcp/handlers/rules.handler.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAA4C;AAE5C,6DAAyD;AACzD,sDAA4E;AAC5E,uCAA2C;AAE3C,gEAAkE;AAClE,4EAA0E;AAQnE,IAAM,YAAY,GAAlB,MAAM,YAAY;IAGvB,YAA6B,YAA0B;QAA1B,iBAAY,GAAZ,YAAY,CAAc;QAFtC,iBAAY,GAAG,CAAC,cAAc,EAAE,mBAAmB,CAAC,CAAC;IAEZ,CAAC;IAE3D,KAAK,CAAC,MAAM,CACV,QAAgB,EAChB,IAAyC;QAEzC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC1C,OAAO,IAAI,CAAC;QACd,CAAC;QAGD,MAAM,UAAU,GAAG,IAAA,oCAAmB,EAAC,IAAI,CAAC,CAAC;QAC7C,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC;YACrB,OAAO,IAAA,oCAAmB,EAAC,UAAU,CAAC,KAAM,CAAC,CAAC;QAChD,CAAC;QAED,QAAQ,QAAQ,EAAE,CAAC;YACjB,KAAK,cAAc;gBACjB,OAAO,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;YACtC,KAAK,mBAAmB;gBACtB,OAAO,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC;YAC1C;gBACE,OAAO,IAAI,CAAC;QAChB,CAAC;IACH,CAAC;IAED,kBAAkB;QAChB,OAAO;YACL;gBACE,IAAI,EAAE,cAAc;gBACpB,WAAW,EAAE,iCAAiC;gBAC9C,WAAW,EAAE;oBACX,IAAI,EAAE,QAAQ;oBACd,UAAU,EAAE;wBACV,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,cAAc,EAAE;qBACvD;oBACD,QAAQ,EAAE,CAAC,OAAO,CAAC;iBACpB;aACF;YACD;gBACE,IAAI,EAAE,mBAAmB;gBACzB,WAAW,EAAE,6CAA6C;gBAC1D,WAAW,EAAE;oBACX,IAAI,EAAE,QAAQ;oBACd,UAAU,EAAE;wBACV,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,mBAAmB,EAAE;qBAChE;oBACD,QAAQ,EAAE,CAAC,WAAW,CAAC;iBACxB;aACF;SACF,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,iBAAiB,CAC7B,IAAyC;QAEzC,MAAM,KAAK,GAAG,IAAA,4CAAqB,EAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QACnD,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;YACnB,OAAO,IAAA,oCAAmB,EAAC,mCAAmC,CAAC,CAAC;QAClE,CAAC;QACD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QAC3D,OAAO,IAAA,mCAAkB,EAAC,OAAO,CAAC,CAAC;IACrC,CAAC;IAEO,KAAK,CAAC,qBAAqB,CACjC,IAAyC;QAEzC,MAAM,SAAS,GAAG,IAAA,4CAAqB,EAAC,IAAI,EAAE,WAAW,CAAC,CAAC;QAC3D,IAAI,SAAS,KAAK,IAAI,EAAE,CAAC;YACvB,OAAO,IAAA,oCAAmB,EAAC,uCAAuC,CAAC,CAAC;QACtE,CAAC;QACD,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;YAI1D,MAAM,UAAU,GAAG,KAAK,CAAC,KAAgC,CAAC;YAC1D,MAAM,aAAa,GAAG,IAAA,oBAAY,EAAC,EAAE,UAAU,EAAE,CAAC,CAAC;YAEnD,OAAO,IAAA,mCAAkB,EAAC;gBACxB,GAAG,KAAK;gBACR,aAAa;aACd,CAAC,CAAC;QACL,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAA,oCAAmB,EAAC,UAAU,SAAS,cAAc,CAAC,CAAC;QAChE,CAAC;IACH,CAAC;CACF,CAAA;AA1FY,oCAAY;uBAAZ,YAAY;IADxB,IAAA,mBAAU,GAAE;qCAIgC,4BAAY;GAH5C,YAAY,CA0FxB"}
1
+ {"version":3,"file":"rules.handler.js","sourceRoot":"","sources":["../../../../src/mcp/handlers/rules.handler.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAA4C;AAG5C,yDAAqD;AACrD,6DAAyD;AACzD,sDAA4E;AAC5E,uCAA2C;AAE3C,4EAA0E;AAQnE,IAAM,YAAY,GAAlB,MAAM,YAAa,SAAQ,kCAAe;IAC/C,YAA6B,YAA0B;QACrD,KAAK,EAAE,CAAC;QADmB,iBAAY,GAAZ,YAAY,CAAc;IAEvD,CAAC;IAES,eAAe;QACvB,OAAO,CAAC,cAAc,EAAE,mBAAmB,CAAC,CAAC;IAC/C,CAAC;IAES,KAAK,CAAC,UAAU,CACxB,QAAgB,EAChB,IAAyC;QAEzC,QAAQ,QAAQ,EAAE,CAAC;YACjB,KAAK,cAAc;gBACjB,OAAO,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;YACtC,KAAK,mBAAmB;gBACtB,OAAO,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC;YAC1C;gBACE,OAAO,IAAA,oCAAmB,EAAC,iBAAiB,QAAQ,EAAE,CAAC,CAAC;QAC5D,CAAC;IACH,CAAC;IAED,kBAAkB;QAChB,OAAO;YACL;gBACE,IAAI,EAAE,cAAc;gBACpB,WAAW,EAAE,iCAAiC;gBAC9C,WAAW,EAAE;oBACX,IAAI,EAAE,QAAQ;oBACd,UAAU,EAAE;wBACV,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,cAAc,EAAE;qBACvD;oBACD,QAAQ,EAAE,CAAC,OAAO,CAAC;iBACpB;aACF;YACD;gBACE,IAAI,EAAE,mBAAmB;gBACzB,WAAW,EAAE,6CAA6C;gBAC1D,WAAW,EAAE;oBACX,IAAI,EAAE,QAAQ;oBACd,UAAU,EAAE;wBACV,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,mBAAmB,EAAE;qBAChE;oBACD,QAAQ,EAAE,CAAC,WAAW,CAAC;iBACxB;aACF;SACF,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,iBAAiB,CAC7B,IAAyC;QAEzC,MAAM,KAAK,GAAG,IAAA,4CAAqB,EAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QACnD,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;YACnB,OAAO,IAAA,oCAAmB,EAAC,mCAAmC,CAAC,CAAC;QAClE,CAAC;QACD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QAC3D,OAAO,IAAA,mCAAkB,EAAC,OAAO,CAAC,CAAC;IACrC,CAAC;IAEO,KAAK,CAAC,qBAAqB,CACjC,IAAyC;QAEzC,MAAM,SAAS,GAAG,IAAA,4CAAqB,EAAC,IAAI,EAAE,WAAW,CAAC,CAAC;QAC3D,IAAI,SAAS,KAAK,IAAI,EAAE,CAAC;YACvB,OAAO,IAAA,oCAAmB,EAAC,uCAAuC,CAAC,CAAC;QACtE,CAAC;QACD,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;YAI1D,MAAM,UAAU,GAAG,KAAK,CAAC,KAAgC,CAAC;YAC1D,MAAM,aAAa,GAAG,IAAA,oBAAY,EAAC,EAAE,UAAU,EAAE,CAAC,CAAC;YAEnD,OAAO,IAAA,mCAAkB,EAAC;gBACxB,GAAG,KAAK;gBACR,aAAa;aACd,CAAC,CAAC;QACL,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAA,oCAAmB,EAAC,UAAU,SAAS,cAAc,CAAC,CAAC;QAChE,CAAC;IACH,CAAC;CACF,CAAA;AApFY,oCAAY;uBAAZ,YAAY;IADxB,IAAA,mBAAU,GAAE;qCAEgC,4BAAY;GAD5C,YAAY,CAoFxB"}
@@ -1,10 +1,12 @@
1
- import type { ToolHandler, ToolDefinition, ToolResult } from './base.handler';
1
+ import type { ToolDefinition } from './base.handler';
2
+ import type { ToolResponse } from '../response.utils';
3
+ import { AbstractHandler } from './abstract-handler';
2
4
  import { SkillRecommendationService } from '../../skill/skill-recommendation.service';
3
- export declare class SkillHandler implements ToolHandler {
5
+ export declare class SkillHandler extends AbstractHandler {
4
6
  private readonly skillRecommendationService;
5
- private readonly handledTools;
6
7
  constructor(skillRecommendationService: SkillRecommendationService);
7
- handle(toolName: string, args: Record<string, unknown> | undefined): Promise<ToolResult | null>;
8
+ protected getHandledTools(): string[];
9
+ protected handleTool(toolName: string, args: Record<string, unknown> | undefined): Promise<ToolResponse>;
8
10
  getToolDefinitions(): ToolDefinition[];
9
11
  private handleRecommendSkills;
10
12
  private handleListSkills;
@@ -11,30 +11,26 @@ var __metadata = (this && this.__metadata) || function (k, v) {
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.SkillHandler = void 0;
13
13
  const common_1 = require("@nestjs/common");
14
+ const abstract_handler_1 = require("./abstract-handler");
14
15
  const skill_recommendation_service_1 = require("../../skill/skill-recommendation.service");
15
16
  const response_utils_1 = require("../response.utils");
16
- const security_utils_1 = require("../../shared/security.utils");
17
17
  const validation_constants_1 = require("../../shared/validation.constants");
18
- let SkillHandler = class SkillHandler {
18
+ let SkillHandler = class SkillHandler extends abstract_handler_1.AbstractHandler {
19
19
  constructor(skillRecommendationService) {
20
+ super();
20
21
  this.skillRecommendationService = skillRecommendationService;
21
- this.handledTools = ['recommend_skills', 'list_skills'];
22
22
  }
23
- async handle(toolName, args) {
24
- if (!this.handledTools.includes(toolName)) {
25
- return null;
26
- }
27
- const validation = (0, security_utils_1.sanitizeHandlerArgs)(args);
28
- if (!validation.safe) {
29
- return (0, response_utils_1.createErrorResponse)(validation.error);
30
- }
23
+ getHandledTools() {
24
+ return ['recommend_skills', 'list_skills'];
25
+ }
26
+ async handleTool(toolName, args) {
31
27
  switch (toolName) {
32
28
  case 'recommend_skills':
33
29
  return this.handleRecommendSkills(args);
34
30
  case 'list_skills':
35
31
  return this.handleListSkills(args);
36
32
  default:
37
- return null;
33
+ return (0, response_utils_1.createErrorResponse)(`Unknown tool: ${toolName}`);
38
34
  }
39
35
  }
40
36
  getToolDefinitions() {
@@ -1 +1 @@
1
- {"version":3,"file":"skill.handler.js","sourceRoot":"","sources":["../../../../src/mcp/handlers/skill.handler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"skill.handler.js","sourceRoot":"","sources":["../../../../src/mcp/handlers/skill.handler.ts"],"names":[],"mappings":"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"}
@@ -9,6 +9,7 @@ const path = require("path");
9
9
  const keyword_types_1 = require("../keyword/keyword.types");
10
10
  const config_loader_1 = require("../config/config.loader");
11
11
  const security_utils_1 = require("../shared/security.utils");
12
+ const version_utils_1 = require("../shared/version.utils");
12
13
  const agent_schema_1 = require("../rules/agent.schema");
13
14
  const skill_schema_1 = require("../rules/skill.schema");
14
15
  const validation_constants_1 = require("../shared/validation.constants");
@@ -45,7 +46,7 @@ class McpServerlessService {
45
46
  this.projectRoot = projectRoot ?? process.cwd();
46
47
  this.server = new mcp_js_1.McpServer({
47
48
  name: 'codingbuddy',
48
- version: '1.0.0',
49
+ version: (0, version_utils_1.getPackageVersion)(),
49
50
  });
50
51
  this.registerTools();
51
52
  this.registerResources();