codingbuddy 2.0.0 → 2.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (183) hide show
  1. package/dist/src/agent/agent-prompt.builder.js +6 -0
  2. package/dist/src/agent/agent-prompt.builder.js.map +1 -1
  3. package/dist/src/app.module.js +4 -0
  4. package/dist/src/app.module.js.map +1 -1
  5. package/dist/src/checklist/checklist.module.d.ts +2 -0
  6. package/dist/src/checklist/checklist.module.js +29 -0
  7. package/dist/src/checklist/checklist.module.js.map +1 -0
  8. package/dist/src/checklist/checklist.schema.d.ts +14 -0
  9. package/dist/src/checklist/checklist.schema.js +189 -0
  10. package/dist/src/checklist/checklist.schema.js.map +1 -0
  11. package/dist/src/checklist/checklist.service.d.ts +21 -0
  12. package/dist/src/checklist/checklist.service.js +258 -0
  13. package/dist/src/checklist/checklist.service.js.map +1 -0
  14. package/dist/src/checklist/checklist.types.d.ts +56 -0
  15. package/dist/src/checklist/checklist.types.js +24 -0
  16. package/dist/src/checklist/checklist.types.js.map +1 -0
  17. package/dist/src/checklist/index.d.ts +3 -0
  18. package/dist/src/checklist/index.js +20 -0
  19. package/dist/src/checklist/index.js.map +1 -0
  20. package/dist/src/cli/cli.js +5 -0
  21. package/dist/src/cli/cli.js.map +1 -1
  22. package/dist/src/cli/cli.types.d.ts +1 -6
  23. package/dist/src/cli/index.d.ts +1 -1
  24. package/dist/src/cli/index.js.map +1 -1
  25. package/dist/src/cli/init/init.command.js +29 -43
  26. package/dist/src/cli/init/init.command.js.map +1 -1
  27. package/dist/src/cli/init/init.wizard.d.ts +22 -0
  28. package/dist/src/cli/init/init.wizard.js +277 -0
  29. package/dist/src/cli/init/init.wizard.js.map +1 -0
  30. package/dist/src/cli/init/prompts/agent-prompt.d.ts +9 -0
  31. package/dist/src/cli/init/prompts/agent-prompt.js +28 -0
  32. package/dist/src/cli/init/prompts/agent-prompt.js.map +1 -0
  33. package/dist/src/cli/init/prompts/architecture-prompt.d.ts +16 -0
  34. package/dist/src/cli/init/prompts/architecture-prompt.js +66 -0
  35. package/dist/src/cli/init/prompts/architecture-prompt.js.map +1 -0
  36. package/dist/src/cli/init/prompts/basic-prompt.d.ts +13 -0
  37. package/dist/src/cli/init/prompts/basic-prompt.js +53 -0
  38. package/dist/src/cli/init/prompts/basic-prompt.js.map +1 -0
  39. package/dist/src/cli/init/prompts/conventions-prompt.d.ts +19 -0
  40. package/dist/src/cli/init/prompts/conventions-prompt.js +74 -0
  41. package/dist/src/cli/init/prompts/conventions-prompt.js.map +1 -0
  42. package/dist/src/cli/init/prompts/index.d.ts +15 -0
  43. package/dist/src/cli/init/prompts/index.js +35 -1
  44. package/dist/src/cli/init/prompts/index.js.map +1 -1
  45. package/dist/src/cli/init/prompts/language-prompt.d.ts +8 -0
  46. package/dist/src/cli/init/prompts/language-prompt.js +30 -0
  47. package/dist/src/cli/init/prompts/language-prompt.js.map +1 -0
  48. package/dist/src/cli/init/prompts/model-prompt.js +2 -2
  49. package/dist/src/cli/init/prompts/model-prompt.js.map +1 -1
  50. package/dist/src/cli/init/prompts/tech-stack-prompt.d.ts +22 -0
  51. package/dist/src/cli/init/prompts/tech-stack-prompt.js +68 -0
  52. package/dist/src/cli/init/prompts/tech-stack-prompt.js.map +1 -0
  53. package/dist/src/cli/init/prompts/test-strategy-prompt.d.ts +19 -0
  54. package/dist/src/cli/init/prompts/test-strategy-prompt.js +75 -0
  55. package/dist/src/cli/init/prompts/test-strategy-prompt.js.map +1 -0
  56. package/dist/src/cli/init/summary/index.d.ts +2 -0
  57. package/dist/src/cli/init/summary/index.js +9 -0
  58. package/dist/src/cli/init/summary/index.js.map +1 -0
  59. package/dist/src/cli/init/summary/summary.prompt.d.ts +7 -0
  60. package/dist/src/cli/init/summary/summary.prompt.js +22 -0
  61. package/dist/src/cli/init/summary/summary.prompt.js.map +1 -0
  62. package/dist/src/cli/init/summary/summary.renderer.d.ts +32 -0
  63. package/dist/src/cli/init/summary/summary.renderer.js +41 -0
  64. package/dist/src/cli/init/summary/summary.renderer.js.map +1 -0
  65. package/dist/src/cli/init/templates/config-renderer.d.ts +42 -0
  66. package/dist/src/cli/init/templates/config-renderer.js +247 -0
  67. package/dist/src/cli/init/templates/config-renderer.js.map +1 -0
  68. package/dist/src/cli/init/templates/index.d.ts +1 -0
  69. package/dist/src/cli/init/templates/index.js +5 -1
  70. package/dist/src/cli/init/templates/index.js.map +1 -1
  71. package/dist/src/cli/init/templates/template.renderer.js +16 -6
  72. package/dist/src/cli/init/templates/template.renderer.js.map +1 -1
  73. package/dist/src/cli/init/templates/template.types.d.ts +1 -0
  74. package/dist/src/cli/utils/console.js +26 -7
  75. package/dist/src/cli/utils/console.js.map +1 -1
  76. package/dist/src/config/config.loader.d.ts +1 -0
  77. package/dist/src/config/config.loader.js +23 -0
  78. package/dist/src/config/config.loader.js.map +1 -1
  79. package/dist/src/config/config.schema.d.ts +7 -0
  80. package/dist/src/config/config.schema.js +5 -1
  81. package/dist/src/config/config.schema.js.map +1 -1
  82. package/dist/src/config/config.service.d.ts +1 -0
  83. package/dist/src/config/config.service.js +26 -1
  84. package/dist/src/config/config.service.js.map +1 -1
  85. package/dist/src/context/context.module.d.ts +2 -0
  86. package/dist/src/context/context.module.js +23 -0
  87. package/dist/src/context/context.module.js.map +1 -0
  88. package/dist/src/context/context.service.d.ts +21 -0
  89. package/dist/src/context/context.service.js +286 -0
  90. package/dist/src/context/context.service.js.map +1 -0
  91. package/dist/src/context/context.types.d.ts +50 -0
  92. package/dist/src/context/context.types.js +42 -0
  93. package/dist/src/context/context.types.js.map +1 -0
  94. package/dist/src/context/index.d.ts +3 -0
  95. package/dist/src/context/index.js +20 -0
  96. package/dist/src/context/index.js.map +1 -0
  97. package/dist/src/context/intent-patterns.d.ts +7 -0
  98. package/dist/src/context/intent-patterns.js +50 -0
  99. package/dist/src/context/intent-patterns.js.map +1 -0
  100. package/dist/src/keyword/auto-executor.d.ts +17 -0
  101. package/dist/src/keyword/auto-executor.js +95 -0
  102. package/dist/src/keyword/auto-executor.js.map +1 -0
  103. package/dist/src/keyword/auto-executor.types.d.ts +44 -0
  104. package/dist/src/keyword/auto-executor.types.js +7 -0
  105. package/dist/src/keyword/auto-executor.types.js.map +1 -0
  106. package/dist/src/keyword/auto-formatter.d.ts +8 -0
  107. package/dist/src/keyword/auto-formatter.js +79 -0
  108. package/dist/src/keyword/auto-formatter.js.map +1 -0
  109. package/dist/src/keyword/index.d.ts +9 -0
  110. package/dist/src/keyword/index.js +28 -0
  111. package/dist/src/keyword/index.js.map +1 -0
  112. package/dist/src/keyword/keyword.service.d.ts +6 -2
  113. package/dist/src/keyword/keyword.service.js +24 -6
  114. package/dist/src/keyword/keyword.service.js.map +1 -1
  115. package/dist/src/keyword/keyword.types.d.ts +24 -5
  116. package/dist/src/keyword/keyword.types.js +78 -3
  117. package/dist/src/keyword/keyword.types.js.map +1 -1
  118. package/dist/src/keyword/primary-agent-resolver.d.ts +6 -0
  119. package/dist/src/keyword/primary-agent-resolver.js +211 -0
  120. package/dist/src/keyword/primary-agent-resolver.js.map +1 -1
  121. package/dist/src/keyword/rule-filter.js +1 -0
  122. package/dist/src/keyword/rule-filter.js.map +1 -1
  123. package/dist/src/mcp/handlers/agent.handler.d.ts +11 -0
  124. package/dist/src/mcp/handlers/agent.handler.js +167 -0
  125. package/dist/src/mcp/handlers/agent.handler.js.map +1 -0
  126. package/dist/src/mcp/handlers/base.handler.d.ts +15 -0
  127. package/dist/src/mcp/handlers/base.handler.js +3 -0
  128. package/dist/src/mcp/handlers/base.handler.js.map +1 -0
  129. package/dist/src/mcp/handlers/checklist-context.handler.d.ts +13 -0
  130. package/dist/src/mcp/handlers/checklist-context.handler.js +141 -0
  131. package/dist/src/mcp/handlers/checklist-context.handler.js.map +1 -0
  132. package/dist/src/mcp/handlers/config.handler.d.ts +15 -0
  133. package/dist/src/mcp/handlers/config.handler.js +104 -0
  134. package/dist/src/mcp/handlers/config.handler.js.map +1 -0
  135. package/dist/src/mcp/handlers/index.d.ts +8 -0
  136. package/dist/src/mcp/handlers/index.js +17 -0
  137. package/dist/src/mcp/handlers/index.js.map +1 -0
  138. package/dist/src/mcp/handlers/mode.handler.d.ts +16 -0
  139. package/dist/src/mcp/handlers/mode.handler.js +100 -0
  140. package/dist/src/mcp/handlers/mode.handler.js.map +1 -0
  141. package/dist/src/mcp/handlers/rules.handler.d.ts +11 -0
  142. package/dist/src/mcp/handlers/rules.handler.js +99 -0
  143. package/dist/src/mcp/handlers/rules.handler.js.map +1 -0
  144. package/dist/src/mcp/handlers/skill.handler.d.ts +11 -0
  145. package/dist/src/mcp/handlers/skill.handler.js +111 -0
  146. package/dist/src/mcp/handlers/skill.handler.js.map +1 -0
  147. package/dist/src/mcp/mcp-serverless.js +5 -0
  148. package/dist/src/mcp/mcp-serverless.js.map +1 -1
  149. package/dist/src/mcp/mcp.module.js +26 -1
  150. package/dist/src/mcp/mcp.module.js.map +1 -1
  151. package/dist/src/mcp/mcp.service.d.ts +3 -25
  152. package/dist/src/mcp/mcp.service.js +13 -366
  153. package/dist/src/mcp/mcp.service.js.map +1 -1
  154. package/dist/src/model/index.d.ts +1 -0
  155. package/dist/src/model/index.js +3 -0
  156. package/dist/src/model/index.js.map +1 -1
  157. package/dist/src/model/model-resolver.service.d.ts +13 -0
  158. package/dist/src/model/model-resolver.service.js +63 -0
  159. package/dist/src/model/model-resolver.service.js.map +1 -0
  160. package/dist/src/model/model.constants.js.map +1 -1
  161. package/dist/src/model/model.resolver.js +10 -1
  162. package/dist/src/model/model.resolver.js.map +1 -1
  163. package/dist/src/shared/filesystem.interface.d.ts +15 -0
  164. package/dist/src/shared/filesystem.interface.js +14 -0
  165. package/dist/src/shared/filesystem.interface.js.map +1 -0
  166. package/dist/src/shared/node-filesystem.service.d.ts +5 -0
  167. package/dist/src/shared/node-filesystem.service.js +25 -0
  168. package/dist/src/shared/node-filesystem.service.js.map +1 -0
  169. package/dist/src/shared/path.utils.js.map +1 -1
  170. package/dist/src/shared/pattern-matcher.d.ts +11 -0
  171. package/dist/src/shared/pattern-matcher.js +39 -0
  172. package/dist/src/shared/pattern-matcher.js.map +1 -0
  173. package/dist/src/shared/security.utils.d.ts +17 -0
  174. package/dist/src/shared/security.utils.js +63 -0
  175. package/dist/src/shared/security.utils.js.map +1 -1
  176. package/dist/src/shared/validation.constants.d.ts +10 -0
  177. package/dist/src/shared/validation.constants.js +42 -1
  178. package/dist/src/shared/validation.constants.js.map +1 -1
  179. package/dist/tsconfig.build.tsbuildinfo +1 -1
  180. package/package.json +3 -2
  181. package/dist/src/config/config.types.d.ts +0 -2
  182. package/dist/src/config/config.types.js +0 -6
  183. package/dist/src/config/config.types.js.map +0 -1
@@ -0,0 +1,42 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CATEGORY_SPECIALISTS = exports.CATEGORY_RISK_LEVELS = exports.FILE_CATEGORY_PATTERNS = void 0;
4
+ exports.FILE_CATEGORY_PATTERNS = {
5
+ authentication: [
6
+ '**/auth/**',
7
+ '**/login/**',
8
+ '**/session/**',
9
+ '**/password/**',
10
+ ],
11
+ payment: [
12
+ '**/payment/**',
13
+ '**/checkout/**',
14
+ '**/billing/**',
15
+ '**/subscription/**',
16
+ ],
17
+ api: ['**/api/**', '**/handler/**', '**/route/**', '**/endpoint/**'],
18
+ ui: ['**/components/**', '**/features/**', '**/widgets/**', '**/page/**'],
19
+ data: ['**/model/**', '**/entity/**', '**/schema/**', '**/database/**'],
20
+ testing: ['**/*.spec.*', '**/*.test.*', '**/test/**', '**/__tests__/**'],
21
+ };
22
+ exports.CATEGORY_RISK_LEVELS = {
23
+ authentication: 'critical',
24
+ payment: 'critical',
25
+ api: 'high',
26
+ data: 'high',
27
+ ui: 'medium',
28
+ testing: 'low',
29
+ };
30
+ exports.CATEGORY_SPECIALISTS = {
31
+ authentication: ['security-specialist', 'test-strategy-specialist'],
32
+ payment: ['security-specialist', 'test-strategy-specialist'],
33
+ api: [
34
+ 'security-specialist',
35
+ 'performance-specialist',
36
+ 'test-strategy-specialist',
37
+ ],
38
+ ui: ['accessibility-specialist', 'ui-ux-designer', 'performance-specialist'],
39
+ data: ['architecture-specialist', 'security-specialist'],
40
+ testing: ['test-strategy-specialist', 'code-quality-specialist'],
41
+ };
42
+ //# sourceMappingURL=context.types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context.types.js","sourceRoot":"","sources":["../../../src/context/context.types.ts"],"names":[],"mappings":";;;AAuHa,QAAA,sBAAsB,GAA6B;IAC9D,cAAc,EAAE;QACd,YAAY;QACZ,aAAa;QACb,eAAe;QACf,gBAAgB;KACjB;IACD,OAAO,EAAE;QACP,eAAe;QACf,gBAAgB;QAChB,eAAe;QACf,oBAAoB;KACrB;IACD,GAAG,EAAE,CAAC,WAAW,EAAE,eAAe,EAAE,aAAa,EAAE,gBAAgB,CAAC;IACpE,EAAE,EAAE,CAAC,kBAAkB,EAAE,gBAAgB,EAAE,eAAe,EAAE,YAAY,CAAC;IACzE,IAAI,EAAE,CAAC,aAAa,EAAE,cAAc,EAAE,cAAc,EAAE,gBAAgB,CAAC;IACvE,OAAO,EAAE,CAAC,aAAa,EAAE,aAAa,EAAE,YAAY,EAAE,iBAAiB,CAAC;CACzE,CAAC;AAKW,QAAA,oBAAoB,GAA8B;IAC7D,cAAc,EAAE,UAAU;IAC1B,OAAO,EAAE,UAAU;IACnB,GAAG,EAAE,MAAM;IACX,IAAI,EAAE,MAAM;IACZ,EAAE,EAAE,QAAQ;IACZ,OAAO,EAAE,KAAK;CACf,CAAC;AAKW,QAAA,oBAAoB,GAA6B;IAC5D,cAAc,EAAE,CAAC,qBAAqB,EAAE,0BAA0B,CAAC;IACnE,OAAO,EAAE,CAAC,qBAAqB,EAAE,0BAA0B,CAAC;IAC5D,GAAG,EAAE;QACH,qBAAqB;QACrB,wBAAwB;QACxB,0BAA0B;KAC3B;IACD,EAAE,EAAE,CAAC,0BAA0B,EAAE,gBAAgB,EAAE,wBAAwB,CAAC;IAC5E,IAAI,EAAE,CAAC,yBAAyB,EAAE,qBAAqB,CAAC;IACxD,OAAO,EAAE,CAAC,0BAA0B,EAAE,yBAAyB,CAAC;CACjE,CAAC"}
@@ -0,0 +1,3 @@
1
+ export * from './context.module';
2
+ export * from './context.service';
3
+ export * from './context.types';
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./context.module"), exports);
18
+ __exportStar(require("./context.service"), exports);
19
+ __exportStar(require("./context.types"), exports);
20
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/context/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,mDAAiC;AACjC,oDAAkC;AAClC,kDAAgC"}
@@ -0,0 +1,7 @@
1
+ import type { TaskIntent } from './context.types';
2
+ export interface IntentPattern {
3
+ intent: TaskIntent;
4
+ keywords: readonly string[];
5
+ }
6
+ export declare const INTENT_PATTERNS: readonly IntentPattern[];
7
+ export declare function detectIntentFromPatterns(prompt: string): TaskIntent;
@@ -0,0 +1,50 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.INTENT_PATTERNS = void 0;
4
+ exports.detectIntentFromPatterns = detectIntentFromPatterns;
5
+ exports.INTENT_PATTERNS = [
6
+ {
7
+ intent: 'bug_fix',
8
+ keywords: ['fix', 'bug', 'error', 'issue', 'broken'],
9
+ },
10
+ {
11
+ intent: 'refactoring',
12
+ keywords: ['refactor', 'clean', 'improve', 'restructure'],
13
+ },
14
+ {
15
+ intent: 'code_review',
16
+ keywords: ['review', 'check', 'audit', 'inspect'],
17
+ },
18
+ {
19
+ intent: 'testing',
20
+ keywords: ['test', 'spec', 'coverage', 'unit test'],
21
+ },
22
+ {
23
+ intent: 'documentation',
24
+ keywords: ['doc', 'readme', 'comment', 'jsdoc'],
25
+ },
26
+ {
27
+ intent: 'performance_optimization',
28
+ keywords: ['performance', 'optimize', 'speed', 'fast', 'slow', 'latency'],
29
+ },
30
+ {
31
+ intent: 'security_hardening',
32
+ keywords: ['security', 'vulnerability', 'auth', 'secure', 'xss', 'csrf'],
33
+ },
34
+ {
35
+ intent: 'feature_development',
36
+ keywords: ['add', 'create', 'implement', 'build', 'new', 'feature'],
37
+ },
38
+ ];
39
+ function detectIntentFromPatterns(prompt) {
40
+ const promptLower = prompt.toLowerCase();
41
+ for (const pattern of exports.INTENT_PATTERNS) {
42
+ for (const keyword of pattern.keywords) {
43
+ if (promptLower.includes(keyword)) {
44
+ return pattern.intent;
45
+ }
46
+ }
47
+ }
48
+ return 'unknown';
49
+ }
50
+ //# sourceMappingURL=intent-patterns.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"intent-patterns.js","sourceRoot":"","sources":["../../../src/context/intent-patterns.ts"],"names":[],"mappings":";;;AAwDA,4DAYC;AApDY,QAAA,eAAe,GAA6B;IACvD;QACE,MAAM,EAAE,SAAS;QACjB,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,CAAC;KACrD;IACD;QACE,MAAM,EAAE,aAAa;QACrB,QAAQ,EAAE,CAAC,UAAU,EAAE,OAAO,EAAE,SAAS,EAAE,aAAa,CAAC;KAC1D;IACD;QACE,MAAM,EAAE,aAAa;QACrB,QAAQ,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,SAAS,CAAC;KAClD;IACD;QACE,MAAM,EAAE,SAAS;QACjB,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,WAAW,CAAC;KACpD;IACD;QACE,MAAM,EAAE,eAAe;QACvB,QAAQ,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,CAAC;KAChD;IACD;QACE,MAAM,EAAE,0BAA0B;QAClC,QAAQ,EAAE,CAAC,aAAa,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,CAAC;KAC1E;IACD;QACE,MAAM,EAAE,oBAAoB;QAC5B,QAAQ,EAAE,CAAC,UAAU,EAAE,eAAe,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,CAAC;KACzE;IACD;QACE,MAAM,EAAE,qBAAqB;QAC7B,QAAQ,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,CAAC;KACpE;CACO,CAAC;AAOX,SAAgB,wBAAwB,CAAC,MAAc;IACrD,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW,EAAE,CAAC;IAEzC,KAAK,MAAM,OAAO,IAAI,uBAAe,EAAE,CAAC;QACtC,KAAK,MAAM,OAAO,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;YACvC,IAAI,WAAW,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;gBAClC,OAAO,OAAO,CAAC,MAAM,CAAC;YACxB,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC"}
@@ -0,0 +1,17 @@
1
+ import type { AutoExecutorOptions, AutoResult, EvalSummary, AutoProgressCallback } from './auto-executor.types';
2
+ import type { ParseModeResult } from './keyword.types';
3
+ export interface AutoExecutorDependencies {
4
+ parsePlan: (prompt: string) => Promise<ParseModeResult>;
5
+ parseAct: (prompt: string) => Promise<ParseModeResult>;
6
+ parseEval: (prompt: string) => Promise<ParseModeResult>;
7
+ extractEvalSummary: (evalResult: ParseModeResult) => EvalSummary;
8
+ }
9
+ export declare class AutoExecutor {
10
+ private readonly deps;
11
+ private readonly progressCallback?;
12
+ constructor(deps: AutoExecutorDependencies, progressCallback?: AutoProgressCallback | undefined);
13
+ execute(options: AutoExecutorOptions): Promise<AutoResult>;
14
+ isQualityAchieved(summary: EvalSummary): boolean;
15
+ private buildPrompt;
16
+ private buildFallbackPrompt;
17
+ }
@@ -0,0 +1,95 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.AutoExecutor = void 0;
4
+ class AutoExecutor {
5
+ constructor(deps, progressCallback) {
6
+ this.deps = deps;
7
+ this.progressCallback = progressCallback;
8
+ }
9
+ async execute(options) {
10
+ const iterationHistory = [];
11
+ const modifiedFiles = [];
12
+ for (let i = 1; i <= options.maxIterations; i++) {
13
+ this.progressCallback?.onPhaseStart('plan', i, options.maxIterations);
14
+ const planResult = await this.deps.parsePlan(this.buildPrompt(options.prompt, i, iterationHistory));
15
+ this.progressCallback?.onPhaseComplete('plan', planResult);
16
+ this.progressCallback?.onPhaseStart('act', i, options.maxIterations);
17
+ const actResult = await this.deps.parseAct(options.prompt);
18
+ this.progressCallback?.onPhaseComplete('act', actResult);
19
+ this.progressCallback?.onPhaseStart('eval', i, options.maxIterations);
20
+ const evalResult = await this.deps.parseEval(options.prompt);
21
+ this.progressCallback?.onPhaseComplete('eval', evalResult);
22
+ const evalSummary = this.deps.extractEvalSummary(evalResult);
23
+ const iterationResult = {
24
+ iteration: i,
25
+ planResult,
26
+ actResult,
27
+ evalResult,
28
+ evalSummary,
29
+ approach: `Iteration ${i} approach`,
30
+ };
31
+ iterationHistory.push(iterationResult);
32
+ this.progressCallback?.onIterationComplete(iterationResult);
33
+ if (this.isQualityAchieved(evalSummary)) {
34
+ const result = {
35
+ success: true,
36
+ iterations: i,
37
+ maxIterations: options.maxIterations,
38
+ finalEvalSummary: evalSummary,
39
+ iterationHistory,
40
+ modifiedFiles,
41
+ fallbackToPlan: false,
42
+ };
43
+ this.progressCallback?.onComplete(result);
44
+ return result;
45
+ }
46
+ }
47
+ const fallbackPlanResult = await this.deps.parsePlan(this.buildFallbackPrompt(options.prompt, iterationHistory));
48
+ const result = {
49
+ success: false,
50
+ iterations: options.maxIterations,
51
+ maxIterations: options.maxIterations,
52
+ finalEvalSummary: iterationHistory[iterationHistory.length - 1]?.evalSummary,
53
+ iterationHistory,
54
+ modifiedFiles,
55
+ fallbackToPlan: true,
56
+ fallbackPlanResult,
57
+ };
58
+ this.progressCallback?.onComplete(result);
59
+ return result;
60
+ }
61
+ isQualityAchieved(summary) {
62
+ return summary.criticalCount === 0 && summary.highCount === 0;
63
+ }
64
+ buildPrompt(originalPrompt, iteration, history) {
65
+ if (iteration === 1) {
66
+ return originalPrompt;
67
+ }
68
+ const lastIteration = history[history.length - 1];
69
+ const issues = lastIteration?.evalSummary.issues
70
+ .filter(i => i.severity === 'critical' || i.severity === 'high')
71
+ .map(i => `- ${i.description}`)
72
+ .join('\n');
73
+ return `${originalPrompt}\n\nPrevious issues to address:\n${issues}`;
74
+ }
75
+ buildFallbackPrompt(originalPrompt, history) {
76
+ const attempts = history
77
+ .map(h => `- Iteration ${h.iteration}: ${h.approach}`)
78
+ .join('\n');
79
+ const remainingIssues = history[history.length - 1]?.evalSummary.issues
80
+ .filter(i => i.severity === 'critical' || i.severity === 'high')
81
+ .map(i => `- [${i.severity.toUpperCase()}] ${i.description}`)
82
+ .join('\n');
83
+ return `${originalPrompt}
84
+
85
+ Previous attempts:
86
+ ${attempts}
87
+
88
+ Remaining issues:
89
+ ${remainingIssues}
90
+
91
+ Please propose a new approach.`;
92
+ }
93
+ }
94
+ exports.AutoExecutor = AutoExecutor;
95
+ //# sourceMappingURL=auto-executor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auto-executor.js","sourceRoot":"","sources":["../../../src/keyword/auto-executor.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,44 @@
1
+ import type { ParseModeResult, AutoConfig } from './keyword.types';
2
+ export type { AutoConfig };
3
+ export interface AutoExecutorOptions {
4
+ maxIterations: number;
5
+ prompt: string;
6
+ }
7
+ export type IssueSeverity = 'critical' | 'high' | 'medium' | 'low';
8
+ export interface EvalIssue {
9
+ severity: IssueSeverity;
10
+ description: string;
11
+ }
12
+ export interface EvalSummary {
13
+ criticalCount: number;
14
+ highCount: number;
15
+ mediumCount: number;
16
+ lowCount: number;
17
+ issues: EvalIssue[];
18
+ }
19
+ export interface IterationResult {
20
+ iteration: number;
21
+ planResult: ParseModeResult;
22
+ actResult: ParseModeResult;
23
+ evalResult: ParseModeResult;
24
+ evalSummary: EvalSummary;
25
+ approach: string;
26
+ }
27
+ export interface AutoResult {
28
+ success: boolean;
29
+ iterations: number;
30
+ maxIterations: number;
31
+ finalEvalSummary?: EvalSummary;
32
+ iterationHistory: IterationResult[];
33
+ modifiedFiles: string[];
34
+ fallbackToPlan: boolean;
35
+ fallbackPlanResult?: ParseModeResult;
36
+ }
37
+ export type AutoPhase = 'starting' | 'plan' | 'act' | 'eval' | 'completed' | 'failed';
38
+ export interface AutoProgressCallback {
39
+ onPhaseStart: (phase: AutoPhase, iteration: number, maxIterations: number) => void;
40
+ onPhaseComplete: (phase: AutoPhase, result: ParseModeResult) => void;
41
+ onIterationComplete: (result: IterationResult) => void;
42
+ onComplete: (result: AutoResult) => void;
43
+ }
44
+ export declare const DEFAULT_AUTO_CONFIG: AutoConfig;
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DEFAULT_AUTO_CONFIG = void 0;
4
+ exports.DEFAULT_AUTO_CONFIG = {
5
+ maxIterations: 3,
6
+ };
7
+ //# sourceMappingURL=auto-executor.types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auto-executor.types.js","sourceRoot":"","sources":["../../../src/keyword/auto-executor.types.ts"],"names":[],"mappings":";;;AA2Ea,QAAA,mBAAmB,GAAe;IAC7C,aAAa,EAAE,CAAC;CACjB,CAAC"}
@@ -0,0 +1,8 @@
1
+ import type { AutoResult, AutoPhase, EvalSummary } from './auto-executor.types';
2
+ export declare class AutoFormatter {
3
+ static formatStart(task: string, maxIterations: number): string;
4
+ static formatIterationPhase(phase: AutoPhase, iteration: number, maxIterations: number): string;
5
+ static formatEvalSummary(summary: EvalSummary): string;
6
+ static formatSuccess(result: AutoResult): string;
7
+ static formatFailure(result: AutoResult): string;
8
+ }
@@ -0,0 +1,79 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.AutoFormatter = void 0;
4
+ class AutoFormatter {
5
+ static formatStart(task, maxIterations) {
6
+ return `# Mode: AUTO
7
+ ## Autonomous Execution Started
8
+
9
+ Task: ${task}
10
+ Max Iterations: ${maxIterations}
11
+
12
+ ---`;
13
+ }
14
+ static formatIterationPhase(phase, iteration, maxIterations) {
15
+ const phaseNames = {
16
+ starting: 'Starting',
17
+ plan: 'PLAN Phase',
18
+ act: 'ACT Phase',
19
+ eval: 'EVAL Phase',
20
+ completed: 'Completed',
21
+ failed: 'Failed',
22
+ };
23
+ return `
24
+ ## Iteration ${iteration}/${maxIterations} - ${phaseNames[phase]}`;
25
+ }
26
+ static formatEvalSummary(summary) {
27
+ const needsIteration = summary.criticalCount > 0 || summary.highCount > 0;
28
+ return `
29
+ Issues Found:
30
+ - Critical: ${summary.criticalCount}
31
+ - High: ${summary.highCount}${needsIteration ? ' <- iteration needed' : ''}
32
+ - Medium: ${summary.mediumCount}
33
+ - Low: ${summary.lowCount}`;
34
+ }
35
+ static formatSuccess(result) {
36
+ const summary = result.finalEvalSummary;
37
+ const files = result.modifiedFiles.length > 0
38
+ ? result.modifiedFiles.map(f => `- ${f}`).join('\n')
39
+ : '(none)';
40
+ return `
41
+ ---
42
+ # Mode: AUTO - COMPLETED
43
+
44
+ Task completed successfully!
45
+ Final Stats:
46
+ - Iterations: ${result.iterations}/${result.maxIterations}
47
+ - Critical: ${summary?.criticalCount ?? 0}, High: ${summary?.highCount ?? 0}
48
+ - Medium: ${summary?.mediumCount ?? 0}, Low: ${summary?.lowCount ?? 0}
49
+
50
+ Modified Files:
51
+ ${files}`;
52
+ }
53
+ static formatFailure(result) {
54
+ const summary = result.finalEvalSummary;
55
+ const remainingIssues = summary?.issues
56
+ .filter(i => i.severity === 'critical' || i.severity === 'high')
57
+ .map(i => `- [${i.severity.toUpperCase()}] ${i.description}`)
58
+ .join('\n') || '(none)';
59
+ const attempts = result.iterationHistory
60
+ .map(h => `- Iteration ${h.iteration}: ${h.approach}`)
61
+ .join('\n') || '(none)';
62
+ return `
63
+ ---
64
+ # Mode: AUTO - MAX ITERATIONS REACHED
65
+
66
+ Tried ${result.maxIterations} iterations but some issues remain.
67
+
68
+ Remaining Issues:
69
+ ${remainingIssues}
70
+
71
+ Attempted approaches:
72
+ ${attempts}
73
+
74
+ ---
75
+ # Mode: PLAN`;
76
+ }
77
+ }
78
+ exports.AutoFormatter = AutoFormatter;
79
+ //# sourceMappingURL=auto-formatter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auto-formatter.js","sourceRoot":"","sources":["../../../src/keyword/auto-formatter.ts"],"names":[],"mappings":";;;AAEA,MAAa,aAAa;IACxB,MAAM,CAAC,WAAW,CAAC,IAAY,EAAE,aAAqB;QACpD,OAAO;;;QAGH,IAAI;kBACM,aAAa;;IAE3B,CAAC;IACH,CAAC;IAED,MAAM,CAAC,oBAAoB,CACzB,KAAgB,EAChB,SAAiB,EACjB,aAAqB;QAErB,MAAM,UAAU,GAA8B;YAC5C,QAAQ,EAAE,UAAU;YACpB,IAAI,EAAE,YAAY;YAClB,GAAG,EAAE,WAAW;YAChB,IAAI,EAAE,YAAY;YAClB,SAAS,EAAE,WAAW;YACtB,MAAM,EAAE,QAAQ;SACjB,CAAC;QAEF,OAAO;eACI,SAAS,IAAI,aAAa,MAAM,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;IACjE,CAAC;IAED,MAAM,CAAC,iBAAiB,CAAC,OAAoB;QAC3C,MAAM,cAAc,GAAG,OAAO,CAAC,aAAa,GAAG,CAAC,IAAI,OAAO,CAAC,SAAS,GAAG,CAAC,CAAC;QAC1E,OAAO;;cAEG,OAAO,CAAC,aAAa;UACzB,OAAO,CAAC,SAAS,GAAG,cAAc,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,EAAE;YAC9D,OAAO,CAAC,WAAW;SACtB,OAAO,CAAC,QAAQ,EAAE,CAAC;IAC1B,CAAC;IAED,MAAM,CAAC,aAAa,CAAC,MAAkB;QACrC,MAAM,OAAO,GAAG,MAAM,CAAC,gBAAgB,CAAC;QACxC,MAAM,KAAK,GACT,MAAM,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC;YAC7B,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;YACpD,CAAC,CAAC,QAAQ,CAAC;QAEf,OAAO;;;;;;gBAMK,MAAM,CAAC,UAAU,IAAI,MAAM,CAAC,aAAa;cAC3C,OAAO,EAAE,aAAa,IAAI,CAAC,WAAW,OAAO,EAAE,SAAS,IAAI,CAAC;YAC/D,OAAO,EAAE,WAAW,IAAI,CAAC,UAAU,OAAO,EAAE,QAAQ,IAAI,CAAC;;;EAGnE,KAAK,EAAE,CAAC;IACR,CAAC;IAED,MAAM,CAAC,aAAa,CAAC,MAAkB;QACrC,MAAM,OAAO,GAAG,MAAM,CAAC,gBAAgB,CAAC;QACxC,MAAM,eAAe,GACnB,OAAO,EAAE,MAAM;aACZ,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,UAAU,IAAI,CAAC,CAAC,QAAQ,KAAK,MAAM,CAAC;aAC/D,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC;aAC5D,IAAI,CAAC,IAAI,CAAC,IAAI,QAAQ,CAAC;QAE5B,MAAM,QAAQ,GACZ,MAAM,CAAC,gBAAgB;aACpB,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,eAAe,CAAC,CAAC,SAAS,KAAK,CAAC,CAAC,QAAQ,EAAE,CAAC;aACrD,IAAI,CAAC,IAAI,CAAC,IAAI,QAAQ,CAAC;QAE5B,OAAO;;;;QAIH,MAAM,CAAC,aAAa;;;EAG1B,eAAe;;;EAGf,QAAQ;;;aAGG,CAAC;IACZ,CAAC;CACF;AAxFD,sCAwFC"}
@@ -0,0 +1,9 @@
1
+ export * from './keyword.module';
2
+ export * from './keyword.service';
3
+ export * from './keyword.types';
4
+ export * from './activation-message.builder';
5
+ export * from './primary-agent-resolver';
6
+ export * from './rule-filter';
7
+ export { DEFAULT_AUTO_CONFIG, type AutoExecutorOptions, type IssueSeverity, type EvalIssue, type EvalSummary, type IterationResult, type AutoResult, type AutoPhase, type AutoProgressCallback, } from './auto-executor.types';
8
+ export * from './auto-executor';
9
+ export * from './auto-formatter';
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ exports.DEFAULT_AUTO_CONFIG = void 0;
18
+ __exportStar(require("./keyword.module"), exports);
19
+ __exportStar(require("./keyword.service"), exports);
20
+ __exportStar(require("./keyword.types"), exports);
21
+ __exportStar(require("./activation-message.builder"), exports);
22
+ __exportStar(require("./primary-agent-resolver"), exports);
23
+ __exportStar(require("./rule-filter"), exports);
24
+ var auto_executor_types_1 = require("./auto-executor.types");
25
+ Object.defineProperty(exports, "DEFAULT_AUTO_CONFIG", { enumerable: true, get: function () { return auto_executor_types_1.DEFAULT_AUTO_CONFIG; } });
26
+ __exportStar(require("./auto-executor"), exports);
27
+ __exportStar(require("./auto-formatter"), exports);
28
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/keyword/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,mDAAiC;AACjC,oDAAkC;AAClC,kDAAgC;AAChC,+DAA6C;AAC7C,2DAAyC;AACzC,gDAA8B;AAG9B,6DAU+B;AAT7B,0HAAA,mBAAmB,OAAA;AAUrB,kDAAgC;AAChC,mDAAiC"}
@@ -1,4 +1,8 @@
1
- import { type Mode, type RuleContent, type ParseModeResult, type KeywordModesConfig } from './keyword.types';
1
+ import { type Mode, type RuleContent, type ParseModeResult, type KeywordModesConfig, type ResolutionContext } from './keyword.types';
2
+ export interface ParseModeOptions {
3
+ recommendedActAgent?: string;
4
+ context?: ResolutionContext;
5
+ }
2
6
  import { PrimaryAgentResolver } from './primary-agent-resolver';
3
7
  export declare class KeywordService {
4
8
  private readonly loadConfigFn;
@@ -8,7 +12,7 @@ export declare class KeywordService {
8
12
  private configCache;
9
13
  private readonly primaryAgentResolver?;
10
14
  constructor(loadConfigFn: () => Promise<KeywordModesConfig>, loadRuleFn: (path: string) => Promise<string>, loadAgentInfoFn?: ((agentName: string) => Promise<unknown>) | undefined, primaryAgentResolver?: PrimaryAgentResolver);
11
- parseMode(prompt: string): Promise<ParseModeResult>;
15
+ parseMode(prompt: string, options?: ParseModeOptions): Promise<ParseModeResult>;
12
16
  private extractModeFromPrompt;
13
17
  private checkForMultipleKeywords;
14
18
  private checkForEmptyContent;
@@ -40,6 +40,18 @@ const DEFAULT_CONFIG = {
40
40
  'code-quality-specialist',
41
41
  ],
42
42
  },
43
+ AUTO: {
44
+ description: 'Autonomous execution mode - PLAN → ACT → EVAL cycle until quality achieved',
45
+ instructions: 'Execute PLAN → ACT → EVAL cycle automatically. Repeat until Critical/High issues = 0 or max iterations reached.',
46
+ rules: ['rules/core.md', 'rules/project.md', 'rules/augmented-coding.md'],
47
+ agent: keyword_types_1.MODE_AGENTS[3],
48
+ defaultSpecialists: [
49
+ 'architecture-specialist',
50
+ 'test-strategy-specialist',
51
+ 'security-specialist',
52
+ 'code-quality-specialist',
53
+ ],
54
+ },
43
55
  },
44
56
  defaultMode: 'PLAN',
45
57
  };
@@ -52,12 +64,13 @@ class KeywordService {
52
64
  this.configCache = null;
53
65
  this.primaryAgentResolver = primaryAgentResolver;
54
66
  }
55
- async parseMode(prompt) {
67
+ async parseMode(prompt, options) {
56
68
  const config = await this.loadModeConfig();
57
69
  const { mode, originalPrompt, warnings } = this.extractModeFromPrompt(prompt, config.defaultMode);
58
70
  const modeConfig = config.modes[mode];
59
71
  const rules = await this.getRulesForMode(mode);
60
- return this.buildParseModeResult(mode, originalPrompt, warnings, modeConfig, rules, config);
72
+ const effectiveRecommendedAgent = mode === 'ACT' ? options?.recommendedActAgent : undefined;
73
+ return this.buildParseModeResult(mode, originalPrompt, warnings, modeConfig, rules, config, options?.context, effectiveRecommendedAgent);
61
74
  }
62
75
  extractModeFromPrompt(prompt, defaultMode) {
63
76
  const warnings = [];
@@ -100,7 +113,7 @@ class KeywordService {
100
113
  warnings.push('No prompt content after keyword');
101
114
  }
102
115
  }
103
- async buildParseModeResult(mode, originalPrompt, warnings, modeConfig, rules, config) {
116
+ async buildParseModeResult(mode, originalPrompt, warnings, modeConfig, rules, config, context, recommendedActAgent) {
104
117
  const filteredRules = (0, rule_filter_1.filterRulesByMode)(rules, mode);
105
118
  const result = {
106
119
  mode,
@@ -112,7 +125,7 @@ class KeywordService {
112
125
  if (modeConfig.agent) {
113
126
  result.agent = modeConfig.agent;
114
127
  }
115
- const resolvedAgent = await this.resolvePrimaryAgent(mode, originalPrompt, modeConfig.delegates_to);
128
+ const resolvedAgent = await this.resolvePrimaryAgent(mode, originalPrompt, modeConfig.delegates_to, context, recommendedActAgent);
116
129
  if (resolvedAgent) {
117
130
  result.delegates_to = resolvedAgent.agentName;
118
131
  result.primary_agent_source = resolvedAgent.source;
@@ -142,6 +155,11 @@ class KeywordService {
142
155
  result.activation_message = activationMessage;
143
156
  }
144
157
  }
158
+ if (mode === 'AUTO') {
159
+ result.autoConfig = {
160
+ maxIterations: 3,
161
+ };
162
+ }
145
163
  return result;
146
164
  }
147
165
  getPrimaryAgentTier(agentName) {
@@ -228,9 +246,9 @@ class KeywordService {
228
246
  return undefined;
229
247
  }
230
248
  }
231
- async resolvePrimaryAgent(mode, prompt, staticDelegatesTo, context) {
249
+ async resolvePrimaryAgent(mode, prompt, staticDelegatesTo, context, recommendedActAgent) {
232
250
  if (this.primaryAgentResolver) {
233
- const result = await this.primaryAgentResolver.resolve(mode, prompt, context);
251
+ const result = await this.primaryAgentResolver.resolve(mode, prompt, context, recommendedActAgent);
234
252
  return { agentName: result.agentName, source: result.source };
235
253
  }
236
254
  if (staticDelegatesTo) {
@@ -1 +1 @@
1
- {"version":3,"file":"keyword.service.js","sourceRoot":"","sources":["../../../src/keyword/keyword.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"keyword.service.js","sourceRoot":"","sources":["../../../src/keyword/keyword.service.ts"],"names":[],"mappings":"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"}