@codebolt/agent 1.2.1 → 2.2.3

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 (285) hide show
  1. package/README.md +157 -66
  2. package/dist/{agent.js → builderpattern/agent.js} +2 -2
  3. package/dist/{followupquestionbuilder.d.ts → builderpattern/followupquestionbuilder.d.ts} +1 -1
  4. package/dist/{followupquestionbuilder.js → builderpattern/followupquestionbuilder.js} +1 -1
  5. package/dist/{index.d.ts → builderpattern/index.d.ts} +3 -3
  6. package/dist/{llmoutputhandler.d.ts → builderpattern/llmoutputhandler.d.ts} +1 -1
  7. package/dist/{llmoutputhandler.js → builderpattern/llmoutputhandler.js} +7 -7
  8. package/dist/{promptbuilder.d.ts → builderpattern/promptbuilder.d.ts} +3 -3
  9. package/dist/{taskInstruction.d.ts → builderpattern/taskInstruction.d.ts} +2 -2
  10. package/dist/{usermessage.d.ts → builderpattern/usermessage.d.ts} +9 -4
  11. package/dist/composablepattern/agent.d.ts +169 -0
  12. package/dist/composablepattern/agent.js +598 -0
  13. package/dist/composablepattern/codebolt-storage.d.ts +67 -0
  14. package/dist/composablepattern/codebolt-storage.js +320 -0
  15. package/dist/composablepattern/document.d.ts +149 -0
  16. package/dist/composablepattern/document.js +372 -0
  17. package/dist/composablepattern/examples/codebolt-integration-example.d.ts +12 -0
  18. package/dist/composablepattern/examples/codebolt-integration-example.js +218 -0
  19. package/dist/composablepattern/examples/codebolt-storage-example.d.ts +40 -0
  20. package/dist/composablepattern/examples/codebolt-storage-example.js +223 -0
  21. package/dist/composablepattern/examples/custom-steps-example.d.ts +20 -0
  22. package/dist/composablepattern/examples/custom-steps-example.js +455 -0
  23. package/dist/composablepattern/examples/document-agent.d.ts +17 -0
  24. package/dist/composablepattern/examples/document-agent.js +107 -0
  25. package/dist/composablepattern/examples/simple-codebolt-integration.d.ts +8 -0
  26. package/dist/composablepattern/examples/simple-codebolt-integration.js +164 -0
  27. package/dist/composablepattern/examples/weather-agent.d.ts +18 -0
  28. package/dist/composablepattern/examples/weather-agent.js +86 -0
  29. package/dist/composablepattern/examples/workflow-example.d.ts +12 -0
  30. package/dist/composablepattern/examples/workflow-example.js +463 -0
  31. package/dist/composablepattern/index.d.ts +63 -0
  32. package/dist/composablepattern/index.js +115 -0
  33. package/dist/composablepattern/memory.d.ts +89 -0
  34. package/dist/composablepattern/memory.js +141 -0
  35. package/dist/composablepattern/tool.d.ts +84 -0
  36. package/dist/composablepattern/tool.js +260 -0
  37. package/dist/composablepattern/types.d.ts +194 -0
  38. package/dist/composablepattern/types.js +6 -0
  39. package/dist/composablepattern/user-context.d.ts +214 -0
  40. package/dist/composablepattern/user-context.js +275 -0
  41. package/dist/composablepattern/workflow.d.ts +388 -0
  42. package/dist/composablepattern/workflow.js +562 -0
  43. package/dist/local-tools/fileTools.d.ts +26 -0
  44. package/dist/local-tools/fileTools.js +162 -0
  45. package/dist/processor/agent/agentStep.d.ts +49 -0
  46. package/dist/processor/agent/agentStep.js +241 -0
  47. package/dist/processor/agent/toolExecutor.d.ts +19 -0
  48. package/dist/processor/agent/toolExecutor.js +90 -0
  49. package/dist/processor/index.d.ts +7 -0
  50. package/dist/processor/index.js +36 -0
  51. package/dist/processor/messageModifiers/baseMessageModifier.d.ts +20 -0
  52. package/dist/processor/messageModifiers/baseMessageModifier.js +55 -0
  53. package/dist/processor/processors/baseProcessor.d.ts +14 -0
  54. package/dist/processor/processors/baseProcessor.js +29 -0
  55. package/dist/processor/tools/baseTool.d.ts +10 -0
  56. package/dist/processor/tools/baseTool.js +20 -0
  57. package/dist/processor/tools/toolList.d.ts +9 -0
  58. package/dist/processor/tools/toolList.js +22 -0
  59. package/dist/processor/types/interfaces.d.ts +117 -0
  60. package/dist/processor/types/interfaces.js +2 -0
  61. package/dist/processor-pieces/additionalModifiers/argumentProcessorModifier.d.ts +13 -0
  62. package/dist/processor-pieces/additionalModifiers/argumentProcessorModifier.js +68 -0
  63. package/dist/processor-pieces/additionalModifiers/atFileProcessorModifier.d.ts +15 -0
  64. package/dist/processor-pieces/additionalModifiers/atFileProcessorModifier.js +212 -0
  65. package/dist/processor-pieces/additionalModifiers/chatCompressionModifier.d.ts +19 -0
  66. package/dist/processor-pieces/additionalModifiers/chatCompressionModifier.js +110 -0
  67. package/dist/processor-pieces/additionalModifiers/chatRecordingModifier.d.ts +23 -0
  68. package/dist/processor-pieces/additionalModifiers/chatRecordingModifier.js +173 -0
  69. package/dist/processor-pieces/additionalModifiers/coreSystemPromptModifier.d.ts +14 -0
  70. package/dist/processor-pieces/additionalModifiers/coreSystemPromptModifier.js +93 -0
  71. package/dist/processor-pieces/additionalModifiers/directoryContextModifier.d.ts +30 -0
  72. package/dist/processor-pieces/additionalModifiers/directoryContextModifier.js +330 -0
  73. package/dist/processor-pieces/additionalModifiers/environmentContextModifier.d.ts +26 -0
  74. package/dist/processor-pieces/additionalModifiers/environmentContextModifier.js +269 -0
  75. package/dist/processor-pieces/additionalModifiers/fallbackHandlerModifier.d.ts +38 -0
  76. package/dist/processor-pieces/additionalModifiers/fallbackHandlerModifier.js +217 -0
  77. package/dist/processor-pieces/additionalModifiers/ideContextModifier.d.ts +34 -0
  78. package/dist/processor-pieces/additionalModifiers/ideContextModifier.js +147 -0
  79. package/dist/processor-pieces/additionalModifiers/index.d.ts +12 -0
  80. package/dist/processor-pieces/additionalModifiers/index.js +28 -0
  81. package/dist/processor-pieces/additionalModifiers/loopDetectionModifier.d.ts +29 -0
  82. package/dist/processor-pieces/additionalModifiers/loopDetectionModifier.js +155 -0
  83. package/dist/processor-pieces/additionalModifiers/memoryImportModifier.d.ts +15 -0
  84. package/dist/processor-pieces/additionalModifiers/memoryImportModifier.js +129 -0
  85. package/dist/processor-pieces/additionalModifiers/shellProcessorModifier.d.ts +25 -0
  86. package/dist/processor-pieces/additionalModifiers/shellProcessorModifier.js +169 -0
  87. package/dist/processor-pieces/additionalModifiers/toolInjectionModifier.d.ts +20 -0
  88. package/dist/processor-pieces/additionalModifiers/toolInjectionModifier.js +152 -0
  89. package/dist/processor-pieces/base/baseMessageModifier.d.ts +12 -0
  90. package/dist/processor-pieces/base/baseMessageModifier.js +15 -0
  91. package/dist/processor-pieces/base/basePostInferenceProcessor.d.ts +13 -0
  92. package/dist/processor-pieces/base/basePostInferenceProcessor.js +18 -0
  93. package/dist/processor-pieces/base/basePostToolCallProcessor.d.ts +15 -0
  94. package/dist/processor-pieces/base/basePostToolCallProcessor.js +25 -0
  95. package/dist/processor-pieces/base/basePreInferenceProcessor.d.ts +12 -0
  96. package/dist/processor-pieces/base/basePreInferenceProcessor.js +17 -0
  97. package/dist/processor-pieces/base/basePreToolCallProcessor.d.ts +18 -0
  98. package/dist/processor-pieces/base/basePreToolCallProcessor.js +66 -0
  99. package/dist/processor-pieces/base/index.d.ts +9 -0
  100. package/dist/processor-pieces/base/index.js +18 -0
  101. package/dist/processor-pieces/index.d.ts +1 -0
  102. package/dist/processor-pieces/index.js +59 -0
  103. package/dist/processor-pieces/messageModifiers/addCurrentDirectoryRootFilesModifier.d.ts +7 -0
  104. package/dist/processor-pieces/messageModifiers/addCurrentDirectoryRootFilesModifier.js +93 -0
  105. package/dist/processor-pieces/messageModifiers/addToolsListMessageModifier.d.ts +31 -0
  106. package/dist/processor-pieces/messageModifiers/addToolsListMessageModifier.js +145 -0
  107. package/dist/processor-pieces/messageModifiers/advancedSystemInstructionMessageModifier.d.ts +9 -0
  108. package/dist/processor-pieces/messageModifiers/advancedSystemInstructionMessageModifier.js +77 -0
  109. package/dist/processor-pieces/messageModifiers/argumentProcessorModifier.d.ts +13 -0
  110. package/dist/processor-pieces/messageModifiers/argumentProcessorModifier.js +68 -0
  111. package/dist/processor-pieces/messageModifiers/atFileProcessorModifier.d.ts +25 -0
  112. package/dist/processor-pieces/messageModifiers/atFileProcessorModifier.js +453 -0
  113. package/dist/processor-pieces/messageModifiers/baseContextMessageModifier.d.ts +7 -0
  114. package/dist/processor-pieces/messageModifiers/baseContextMessageModifier.js +67 -0
  115. package/dist/processor-pieces/messageModifiers/baseSystemInstructionMessageModifier.d.ts +9 -0
  116. package/dist/processor-pieces/messageModifiers/baseSystemInstructionMessageModifier.js +90 -0
  117. package/dist/processor-pieces/messageModifiers/chatCompressionModifier.d.ts +19 -0
  118. package/dist/processor-pieces/messageModifiers/chatCompressionModifier.js +110 -0
  119. package/dist/processor-pieces/messageModifiers/chatHistoryMessageModifier.d.ts +18 -0
  120. package/dist/processor-pieces/messageModifiers/chatHistoryMessageModifier.example.d.ts +20 -0
  121. package/dist/processor-pieces/messageModifiers/chatHistoryMessageModifier.example.js +124 -0
  122. package/dist/processor-pieces/messageModifiers/chatHistoryMessageModifier.js +104 -0
  123. package/dist/processor-pieces/messageModifiers/chatRecordingModifier.d.ts +23 -0
  124. package/dist/processor-pieces/messageModifiers/chatRecordingModifier.js +173 -0
  125. package/dist/processor-pieces/messageModifiers/coreSystemPromptModifier.d.ts +14 -0
  126. package/dist/processor-pieces/messageModifiers/coreSystemPromptModifier.js +130 -0
  127. package/dist/processor-pieces/messageModifiers/directoryContextModifier.d.ts +36 -0
  128. package/dist/processor-pieces/messageModifiers/directoryContextModifier.js +418 -0
  129. package/dist/processor-pieces/messageModifiers/environmentContext.d.ts +41 -0
  130. package/dist/processor-pieces/messageModifiers/environmentContext.js +355 -0
  131. package/dist/processor-pieces/messageModifiers/environmentContextModifier.d.ts +26 -0
  132. package/dist/processor-pieces/messageModifiers/environmentContextModifier.js +260 -0
  133. package/dist/processor-pieces/messageModifiers/handleUrlMessageModifier.d.ts +13 -0
  134. package/dist/processor-pieces/messageModifiers/handleUrlMessageModifier.js +59 -0
  135. package/dist/processor-pieces/messageModifiers/ideContextModifier.d.ts +34 -0
  136. package/dist/processor-pieces/messageModifiers/ideContextModifier.js +157 -0
  137. package/dist/processor-pieces/messageModifiers/imageAttachmentMessageModifier.d.ts +19 -0
  138. package/dist/processor-pieces/messageModifiers/imageAttachmentMessageModifier.js +221 -0
  139. package/dist/processor-pieces/messageModifiers/index.d.ts +11 -0
  140. package/dist/processor-pieces/messageModifiers/index.js +26 -0
  141. package/dist/processor-pieces/messageModifiers/memoryImportModifier.d.ts +15 -0
  142. package/dist/processor-pieces/messageModifiers/memoryImportModifier.js +129 -0
  143. package/dist/processor-pieces/messageModifiers/mentionedFilesModifier.d.ts +23 -0
  144. package/dist/processor-pieces/messageModifiers/mentionedFilesModifier.js +207 -0
  145. package/dist/processor-pieces/messageModifiers/simpleMessageModifier.d.ts +7 -0
  146. package/dist/processor-pieces/messageModifiers/simpleMessageModifier.js +26 -0
  147. package/dist/processor-pieces/messageModifiers/toolInjectionModifier.d.ts +20 -0
  148. package/dist/processor-pieces/messageModifiers/toolInjectionModifier.js +152 -0
  149. package/dist/processor-pieces/messageModifiers/workingDirectoryMessageModifier.d.ts +38 -0
  150. package/dist/processor-pieces/messageModifiers/workingDirectoryMessageModifier.js +392 -0
  151. package/dist/processor-pieces/postInference/llmOutputValidityProcessor.d.ts +1 -0
  152. package/dist/processor-pieces/postInference/llmOutputValidityProcessor.js +2 -0
  153. package/dist/processor-pieces/postInferenceProcessors/checkForNoToolCall.d.ts +7 -0
  154. package/dist/processor-pieces/postInferenceProcessors/checkForNoToolCall.js +24 -0
  155. package/dist/processor-pieces/postInferenceProcessors/loopDetectionModifier.d.ts +29 -0
  156. package/dist/processor-pieces/postInferenceProcessors/loopDetectionModifier.js +174 -0
  157. package/dist/processor-pieces/postToolCall/advancedLoopDetectionProcessor.d.ts +41 -0
  158. package/dist/processor-pieces/postToolCall/advancedLoopDetectionProcessor.js +197 -0
  159. package/dist/processor-pieces/postToolCall/chatCompressionProcessor.d.ts +26 -0
  160. package/dist/processor-pieces/postToolCall/chatCompressionProcessor.js +90 -0
  161. package/dist/processor-pieces/postToolCall/chatRecordingProcessor.d.ts +81 -0
  162. package/dist/processor-pieces/postToolCall/chatRecordingProcessor.js +329 -0
  163. package/dist/processor-pieces/postToolCall/contextManagementProcessor.d.ts +40 -0
  164. package/dist/processor-pieces/postToolCall/contextManagementProcessor.js +272 -0
  165. package/dist/processor-pieces/postToolCall/conversationCompactorProcessor.d.ts +49 -0
  166. package/dist/processor-pieces/postToolCall/conversationCompactorProcessor.js +291 -0
  167. package/dist/processor-pieces/postToolCall/conversationContinuityProcessor.d.ts +49 -0
  168. package/dist/processor-pieces/postToolCall/conversationContinuityProcessor.js +293 -0
  169. package/dist/processor-pieces/postToolCall/followUpConversationProcessor.d.ts +47 -0
  170. package/dist/processor-pieces/postToolCall/followUpConversationProcessor.js +249 -0
  171. package/dist/processor-pieces/postToolCall/loopDetectionProcessor.d.ts +30 -0
  172. package/dist/processor-pieces/postToolCall/loopDetectionProcessor.js +137 -0
  173. package/dist/processor-pieces/postToolCall/responseValidationProcessor.d.ts +30 -0
  174. package/dist/processor-pieces/postToolCall/responseValidationProcessor.js +228 -0
  175. package/dist/processor-pieces/postToolCall/telemetryProcessor.d.ts +99 -0
  176. package/dist/processor-pieces/postToolCall/telemetryProcessor.js +278 -0
  177. package/dist/processor-pieces/postToolCall/tokenManagementProcessor.d.ts +37 -0
  178. package/dist/processor-pieces/postToolCall/tokenManagementProcessor.js +178 -0
  179. package/dist/processor-pieces/postToolCall/toolExecutionProcessor.d.ts +43 -0
  180. package/dist/processor-pieces/postToolCall/toolExecutionProcessor.js +207 -0
  181. package/dist/processor-pieces/postToolCallProcessors/index.d.ts +1 -0
  182. package/dist/processor-pieces/postToolCallProcessors/index.js +2 -0
  183. package/dist/processor-pieces/postToolCallProcessors/shellProcessorModifier.d.ts +25 -0
  184. package/dist/processor-pieces/postToolCallProcessors/shellProcessorModifier.js +225 -0
  185. package/dist/processor-pieces/preInference/conversationCompactorProcessor.d.ts +52 -0
  186. package/dist/processor-pieces/preInference/conversationCompactorProcessor.js +264 -0
  187. package/dist/processor-pieces/preInference/conversationContinuityProcessor.d.ts +49 -0
  188. package/dist/processor-pieces/preInference/conversationContinuityProcessor.js +293 -0
  189. package/dist/processor-pieces/preInferenceProcessors/chatCompressionModifier.d.ts +35 -0
  190. package/dist/processor-pieces/preInferenceProcessors/chatCompressionModifier.js +255 -0
  191. package/dist/processor-pieces/preInferenceProcessors/conversationCompaction.d.ts +7 -0
  192. package/dist/processor-pieces/preInferenceProcessors/conversationCompaction.js +31 -0
  193. package/dist/processor-pieces/preInferenceProcessors/index.d.ts +1 -0
  194. package/dist/processor-pieces/preInferenceProcessors/index.js +2 -0
  195. package/dist/processor-pieces/preToolCall/index.d.ts +9 -0
  196. package/dist/processor-pieces/preToolCall/index.js +18 -0
  197. package/dist/processor-pieces/preToolCall/localToolInterceptorProcessor.d.ts +58 -0
  198. package/dist/processor-pieces/preToolCall/localToolInterceptorProcessor.js +444 -0
  199. package/dist/processor-pieces/preToolCall/toolParameterModifierProcessor.d.ts +44 -0
  200. package/dist/processor-pieces/preToolCall/toolParameterModifierProcessor.js +367 -0
  201. package/dist/processor-pieces/preToolCall/toolValidationProcessor.d.ts +58 -0
  202. package/dist/processor-pieces/preToolCall/toolValidationProcessor.js +391 -0
  203. package/dist/processor-pieces/pretoolCallProcessors/index.d.ts +1 -0
  204. package/dist/processor-pieces/pretoolCallProcessors/index.js +2 -0
  205. package/dist/processor-pieces/processors/advancedLoopDetectionProcessor.d.ts +41 -0
  206. package/dist/processor-pieces/processors/advancedLoopDetectionProcessor.js +197 -0
  207. package/dist/processor-pieces/processors/chatCompressionProcessor.d.ts +26 -0
  208. package/dist/processor-pieces/processors/chatCompressionProcessor.js +90 -0
  209. package/dist/processor-pieces/processors/chatRecordingProcessor.d.ts +81 -0
  210. package/dist/processor-pieces/processors/chatRecordingProcessor.js +329 -0
  211. package/dist/processor-pieces/processors/contextManagementProcessor.d.ts +40 -0
  212. package/dist/processor-pieces/processors/contextManagementProcessor.js +305 -0
  213. package/dist/processor-pieces/processors/loopDetectionProcessor.d.ts +30 -0
  214. package/dist/processor-pieces/processors/loopDetectionProcessor.js +137 -0
  215. package/dist/processor-pieces/processors/responseValidationProcessor.d.ts +30 -0
  216. package/dist/processor-pieces/processors/responseValidationProcessor.js +228 -0
  217. package/dist/processor-pieces/processors/telemetryProcessor.d.ts +99 -0
  218. package/dist/processor-pieces/processors/telemetryProcessor.js +311 -0
  219. package/dist/processor-pieces/processors/tokenManagementProcessor.d.ts +37 -0
  220. package/dist/processor-pieces/processors/tokenManagementProcessor.js +178 -0
  221. package/dist/processor-pieces/processors/toolExecutionProcessor.d.ts +43 -0
  222. package/dist/processor-pieces/processors/toolExecutionProcessor.js +207 -0
  223. package/dist/processor-pieces/tools/fileTools.d.ts +26 -0
  224. package/dist/processor-pieces/tools/fileTools.js +162 -0
  225. package/dist/processor-pieces/utils/messageModifierHelper.d.ts +4 -0
  226. package/dist/processor-pieces/utils/messageModifierHelper.js +58 -0
  227. package/dist/types/commonTypes.d.ts +4 -0
  228. package/dist/types/processorTypes.d.ts +67 -0
  229. package/dist/types/processorTypes.js +58 -0
  230. package/dist/unified/agent/agent.d.ts +17 -0
  231. package/dist/unified/agent/agent.js +79 -0
  232. package/dist/unified/agent/team.d.ts +2 -0
  233. package/dist/unified/agent/team.js +6 -0
  234. package/dist/unified/agent/tool.d.ts +99 -0
  235. package/dist/unified/agent/tool.js +440 -0
  236. package/dist/unified/agent/tools.d.ts +44 -0
  237. package/dist/unified/agent/tools.js +487 -0
  238. package/dist/unified/agent/workflow.d.ts +24 -0
  239. package/dist/unified/agent/workflow.js +275 -0
  240. package/dist/unified/agent/workflowControls.d.ts +11 -0
  241. package/dist/unified/agent/workflowControls.js +20 -0
  242. package/dist/unified/agent/workflowSteps.d.ts +63 -0
  243. package/dist/unified/agent/workflowSteps.js +284 -0
  244. package/dist/unified/base/agentStep.d.ts +32 -0
  245. package/dist/unified/base/agentStep.js +96 -0
  246. package/dist/unified/base/create/createInitialPromptGenerators.d.ts +5 -0
  247. package/dist/unified/base/create/createInitialPromptGenerators.js +17 -0
  248. package/dist/unified/base/index.d.ts +5 -0
  249. package/dist/unified/base/index.js +13 -0
  250. package/dist/unified/base/initialPromptGenerator.d.ts +48 -0
  251. package/dist/unified/base/initialPromptGenerator.js +118 -0
  252. package/dist/unified/base/responseExecutor.d.ts +36 -0
  253. package/dist/unified/base/responseExecutor.js +283 -0
  254. package/dist/unified/examples/agentExample.d.ts +46 -0
  255. package/dist/unified/examples/agentExample.js +464 -0
  256. package/dist/unified/examples/documentationPatternExample.d.ts +10 -0
  257. package/dist/unified/examples/documentationPatternExample.js +385 -0
  258. package/dist/unified/examples/followUpProcessorsExample.d.ts +45 -0
  259. package/dist/unified/examples/followUpProcessorsExample.js +311 -0
  260. package/dist/unified/examples/orchestratorExample.d.ts +16 -0
  261. package/dist/unified/examples/orchestratorExample.js +415 -0
  262. package/dist/unified/examples/preToolCallProcessorsExample.d.ts +36 -0
  263. package/dist/unified/examples/preToolCallProcessorsExample.js +458 -0
  264. package/dist/unified/examples/workflowExample.d.ts +12 -0
  265. package/dist/unified/examples/workflowExample.js +497 -0
  266. package/dist/unified/index.d.ts +18 -0
  267. package/dist/unified/index.js +42 -0
  268. package/dist/unified/orchestrator/orchestrator.d.ts +260 -0
  269. package/dist/unified/orchestrator/orchestrator.js +519 -0
  270. package/dist/unified/team/team.d.ts +1 -0
  271. package/dist/unified/team/team.js +2 -0
  272. package/dist/unified/types/libTypes.d.ts +378 -0
  273. package/dist/unified/types/libTypes.js +6 -0
  274. package/dist/unified/types/types.d.ts +212 -0
  275. package/dist/unified/types/types.js +43 -0
  276. package/dist/unified/utils/utils.d.ts +40 -0
  277. package/dist/unified/utils/utils.js +219 -0
  278. package/package.json +35 -13
  279. /package/dist/{agent.d.ts → builderpattern/agent.d.ts} +0 -0
  280. /package/dist/{index.js → builderpattern/index.js} +0 -0
  281. /package/dist/{promptbuilder.js → builderpattern/promptbuilder.js} +0 -0
  282. /package/dist/{systemprompt.d.ts → builderpattern/systemprompt.d.ts} +0 -0
  283. /package/dist/{systemprompt.js → builderpattern/systemprompt.js} +0 -0
  284. /package/dist/{taskInstruction.js → builderpattern/taskInstruction.js} +0 -0
  285. /package/dist/{usermessage.js → builderpattern/usermessage.js} +0 -0
@@ -0,0 +1,59 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.HandleUrlMessageModifier = void 0;
4
+ const processor_1 = require("../../processor");
5
+ class HandleUrlMessageModifier extends processor_1.BaseMessageModifier {
6
+ constructor(options = {}) {
7
+ super({ context: options });
8
+ this.googleSearchEnabled = options.googleSearchEnabled || false;
9
+ this.fetchUrlContent = options.fetchUrlContent || false;
10
+ }
11
+ async modify(originalRequest, createdMessage) {
12
+ try {
13
+ // Check if the request contains URLs
14
+ const urls = this.extractUrls(originalRequest);
15
+ if (urls.length > 0) {
16
+ let contextContent = `URLs detected: ${urls.join(', ')}. ${this.googleSearchEnabled ? 'Google search is enabled.' : 'Google search is disabled.'}`;
17
+ // Fetch URL content if enabled
18
+ if (this.fetchUrlContent) {
19
+ contextContent += '\n\nURL Content Fetching: Enabled (content would be fetched in a real implementation)';
20
+ // In a real implementation, you would fetch the content here
21
+ // const urlContents = await Promise.all(urls.map(url => this.fetchContent(url)));
22
+ }
23
+ // Add URL context to the message
24
+ const urlContextMessage = {
25
+ role: 'system',
26
+ content: contextContent,
27
+ name: 'url-detector'
28
+ };
29
+ return {
30
+ messages: [...createdMessage.messages, urlContextMessage],
31
+ metadata: {
32
+ ...createdMessage.metadata,
33
+ urlsDetected: urls,
34
+ googleSearchEnabled: this.googleSearchEnabled,
35
+ fetchUrlContent: this.fetchUrlContent
36
+ }
37
+ };
38
+ }
39
+ return createdMessage;
40
+ }
41
+ catch (error) {
42
+ console.error('Error in HandleUrlMessageModifier:', error);
43
+ throw error;
44
+ }
45
+ }
46
+ extractUrls(request) {
47
+ if (typeof request === 'string') {
48
+ const urlRegex = /https?:\/\/[^\s]+/g;
49
+ return request.match(urlRegex) || [];
50
+ }
51
+ if (typeof request === 'object' && request !== null) {
52
+ const requestString = JSON.stringify(request);
53
+ const urlRegex = /https?:\/\/[^\s]+/g;
54
+ return requestString.match(urlRegex) || [];
55
+ }
56
+ return [];
57
+ }
58
+ }
59
+ exports.HandleUrlMessageModifier = HandleUrlMessageModifier;
@@ -0,0 +1,34 @@
1
+ import { ProcessedMessage } from "@codebolt/types/agent";
2
+ import { BaseMessageModifier } from "../base";
3
+ import { FlatUserMessage } from "@codebolt/types/sdk";
4
+ export interface IdeContextOptions {
5
+ includeOpenFiles?: boolean;
6
+ includeActiveFile?: boolean;
7
+ includeCursorPosition?: boolean;
8
+ includeSelectedText?: boolean;
9
+ maxOpenFiles?: number;
10
+ }
11
+ export interface FileInfo {
12
+ path: string;
13
+ isActive?: boolean;
14
+ cursor?: {
15
+ line: number;
16
+ character: number;
17
+ };
18
+ selectedText?: string;
19
+ }
20
+ export interface IdeContext {
21
+ workspaceState?: {
22
+ openFiles: FileInfo[];
23
+ };
24
+ }
25
+ export declare class IdeContextModifier extends BaseMessageModifier {
26
+ private readonly options;
27
+ private lastSentIdeContext?;
28
+ private forceFullContext;
29
+ constructor(options?: IdeContextOptions);
30
+ modify(originalRequest: FlatUserMessage, createdMessage: ProcessedMessage): Promise<ProcessedMessage>;
31
+ private getIdeContext;
32
+ private getIdeContextParts;
33
+ setForceFullContext(force: boolean): void;
34
+ }
@@ -0,0 +1,157 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.IdeContextModifier = void 0;
4
+ const base_1 = require("../base");
5
+ class IdeContextModifier extends base_1.BaseMessageModifier {
6
+ constructor(options = {}) {
7
+ super();
8
+ this.forceFullContext = true;
9
+ this.options = {
10
+ includeOpenFiles: options.includeOpenFiles !== false,
11
+ includeActiveFile: options.includeActiveFile !== false,
12
+ includeCursorPosition: options.includeCursorPosition !== false,
13
+ includeSelectedText: options.includeSelectedText !== false,
14
+ maxOpenFiles: options.maxOpenFiles || 10
15
+ };
16
+ }
17
+ modify(originalRequest, createdMessage) {
18
+ try {
19
+ // Get IDE context from the original request (activeFile, openedFiles)
20
+ const ideContext = this.getIdeContext(originalRequest, createdMessage.metadata);
21
+ if (!ideContext) {
22
+ return Promise.resolve(createdMessage);
23
+ }
24
+ const { contextParts, newIdeContext } = this.getIdeContextParts(this.forceFullContext, ideContext);
25
+ if (contextParts.length === 0) {
26
+ return Promise.resolve(createdMessage);
27
+ }
28
+ const ideContextMessage = {
29
+ role: 'system',
30
+ content: contextParts.join('\n')
31
+ };
32
+ // Find existing system message or add new one
33
+ const messages = [...createdMessage.message.messages];
34
+ const systemMessageIndex = messages.findIndex(msg => msg.role === 'system');
35
+ if (systemMessageIndex !== -1) {
36
+ // Append to existing system message
37
+ messages[systemMessageIndex] = {
38
+ ...messages[systemMessageIndex],
39
+ content: `${messages[systemMessageIndex].content}\n\n${ideContextMessage.content}`
40
+ };
41
+ }
42
+ else {
43
+ // Add new system message
44
+ messages.unshift(ideContextMessage);
45
+ }
46
+ this.lastSentIdeContext = newIdeContext;
47
+ this.forceFullContext = false;
48
+ return Promise.resolve({
49
+ message: {
50
+ ...createdMessage.message,
51
+ messages
52
+ },
53
+ metadata: {
54
+ ...createdMessage.metadata,
55
+ ideContextAdded: true,
56
+ ideContextType: this.forceFullContext ? 'full' : 'incremental'
57
+ }
58
+ });
59
+ }
60
+ catch (error) {
61
+ console.error('Error in IdeContextModifier:', error);
62
+ return Promise.resolve(createdMessage);
63
+ }
64
+ }
65
+ getIdeContext(originalRequest, metadata) {
66
+ // Try to get IDE context from the metadata parameter first
67
+ if (metadata === null || metadata === void 0 ? void 0 : metadata.ideContext) {
68
+ return metadata.ideContext;
69
+ }
70
+ // Extract IDE context from the original message
71
+ const activeFile = originalRequest.activeFile;
72
+ const openedFiles = originalRequest.openedFiles;
73
+ if (!activeFile && (!openedFiles || openedFiles.length === 0)) {
74
+ return undefined;
75
+ }
76
+ const openFiles = [];
77
+ // Add active file if present (activeFile is just a path string)
78
+ if (activeFile) {
79
+ const activeFileInfo = {
80
+ path: activeFile,
81
+ isActive: true
82
+ };
83
+ openFiles.push(activeFileInfo);
84
+ }
85
+ // Add other opened files (openedFiles is array of path strings)
86
+ if (openedFiles && Array.isArray(openedFiles)) {
87
+ const otherFiles = openedFiles
88
+ .filter(filePath => filePath !== activeFile) // Exclude active file from others
89
+ .map(filePath => ({
90
+ path: filePath,
91
+ isActive: false
92
+ }));
93
+ openFiles.push(...otherFiles);
94
+ }
95
+ if (openFiles.length === 0) {
96
+ return undefined;
97
+ }
98
+ return {
99
+ workspaceState: {
100
+ openFiles
101
+ }
102
+ };
103
+ }
104
+ getIdeContextParts(forceFullContext, currentIdeContext) {
105
+ var _a;
106
+ if (!((_a = currentIdeContext === null || currentIdeContext === void 0 ? void 0 : currentIdeContext.workspaceState) === null || _a === void 0 ? void 0 : _a.openFiles)) {
107
+ return { contextParts: [], newIdeContext: undefined };
108
+ }
109
+ if (forceFullContext || !this.lastSentIdeContext) {
110
+ // Send full context as JSON
111
+ const openFiles = currentIdeContext.workspaceState.openFiles;
112
+ const activeFile = openFiles.find((f) => f.isActive);
113
+ const otherOpenFiles = openFiles
114
+ .filter((f) => !f.isActive)
115
+ .map((f) => f.path)
116
+ .slice(0, this.options.maxOpenFiles - 1); // Reserve space for active file
117
+ const contextData = {};
118
+ if (activeFile && this.options.includeActiveFile) {
119
+ const activeFileData = {
120
+ path: activeFile.path
121
+ };
122
+ if (this.options.includeCursorPosition && activeFile.cursor) {
123
+ activeFileData.cursor = {
124
+ line: activeFile.cursor.line,
125
+ character: activeFile.cursor.character,
126
+ };
127
+ }
128
+ if (this.options.includeSelectedText && activeFile.selectedText) {
129
+ activeFileData.selectedText = activeFile.selectedText;
130
+ }
131
+ contextData['activeFile'] = activeFileData;
132
+ }
133
+ if (this.options.includeOpenFiles && otherOpenFiles.length > 0) {
134
+ contextData['otherOpenFiles'] = otherOpenFiles;
135
+ }
136
+ if (Object.keys(contextData).length === 0) {
137
+ return { contextParts: [], newIdeContext: currentIdeContext };
138
+ }
139
+ const jsonString = JSON.stringify(contextData, null, 2);
140
+ const contextParts = [
141
+ "Here is the user's editor context as a JSON object. This is for your information only.",
142
+ '```json',
143
+ jsonString,
144
+ '```',
145
+ "Don't acknowledge this context in your response unless specifically asked about it."
146
+ ];
147
+ return { contextParts, newIdeContext: currentIdeContext };
148
+ }
149
+ // For incremental updates, we would compare with lastSentIdeContext
150
+ // and only send changes. For now, we'll skip incremental updates.
151
+ return { contextParts: [], newIdeContext: currentIdeContext };
152
+ }
153
+ setForceFullContext(force) {
154
+ this.forceFullContext = force;
155
+ }
156
+ }
157
+ exports.IdeContextModifier = IdeContextModifier;
@@ -0,0 +1,19 @@
1
+ import { FlatUserMessage } from '@codebolt/types/sdk';
2
+ import { BaseMessageModifier, ProcessedMessage } from '../../processor';
3
+ export interface ImageAttachmentMessageModifierOptions {
4
+ passImageAs?: 'URL' | 'Base64' | 'Path';
5
+ supportedFormats?: string[];
6
+ maxImageSize?: number;
7
+ }
8
+ export declare class ImageAttachmentMessageModifier extends BaseMessageModifier {
9
+ private readonly passImageAs;
10
+ private readonly supportedFormats;
11
+ private readonly maxImageSize;
12
+ constructor(options?: ImageAttachmentMessageModifierOptions);
13
+ modify(originalRequest: FlatUserMessage, createdMessage: ProcessedMessage): Promise<ProcessedMessage>;
14
+ private extractImageReferences;
15
+ private isImagePath;
16
+ private processImage;
17
+ private processUrlImage;
18
+ private processLocalImage;
19
+ }
@@ -0,0 +1,221 @@
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 __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.ImageAttachmentMessageModifier = void 0;
37
+ const processor_1 = require("../../processor");
38
+ const fs = __importStar(require("fs/promises"));
39
+ const path = __importStar(require("path"));
40
+ class ImageAttachmentMessageModifier extends processor_1.BaseMessageModifier {
41
+ constructor(options = {}) {
42
+ super({ context: options });
43
+ this.passImageAs = options.passImageAs || 'URL';
44
+ this.supportedFormats = options.supportedFormats || ['.png', '.jpg', '.jpeg', '.gif', '.webp', '.bmp'];
45
+ this.maxImageSize = options.maxImageSize || 10 * 1024 * 1024; // 10MB default
46
+ }
47
+ async modify(originalRequest, createdMessage) {
48
+ try {
49
+ // Extract image references from the request
50
+ const imageReferences = this.extractImageReferences(originalRequest);
51
+ if (imageReferences.length === 0) {
52
+ return createdMessage;
53
+ }
54
+ const processedImages = [];
55
+ for (const imageRef of imageReferences) {
56
+ try {
57
+ const processedImage = await this.processImage(imageRef);
58
+ if (processedImage) {
59
+ processedImages.push(processedImage);
60
+ }
61
+ }
62
+ catch (error) {
63
+ console.error(`Error processing image ${imageRef}:`, error);
64
+ }
65
+ }
66
+ if (processedImages.length === 0) {
67
+ return createdMessage;
68
+ }
69
+ // Add image context message
70
+ const imageContextMessage = {
71
+ role: 'system',
72
+ content: `Images attached to this conversation (${this.passImageAs} format):\n${processedImages.map((img, idx) => `${idx + 1}. ${img.description || img.reference}`).join('\n')}`,
73
+ name: 'image-attachments'
74
+ };
75
+ // Modify user messages to include image references
76
+ const modifiedMessages = createdMessage.messages.map(message => {
77
+ if (message.role === 'user') {
78
+ return {
79
+ ...message,
80
+ attachments: processedImages
81
+ };
82
+ }
83
+ return message;
84
+ });
85
+ return {
86
+ messages: [imageContextMessage, ...modifiedMessages],
87
+ metadata: {
88
+ ...createdMessage.metadata,
89
+ imagesAttached: processedImages.length,
90
+ imageFormat: this.passImageAs,
91
+ processedImages
92
+ }
93
+ };
94
+ }
95
+ catch (error) {
96
+ console.error('Error in ImageAttachmentMessageModifier:', error);
97
+ throw error;
98
+ }
99
+ }
100
+ extractImageReferences(request) {
101
+ const imageRefs = [];
102
+ if (typeof request === 'string') {
103
+ // Look for image file paths or URLs
104
+ const imageRegex = /(?:\.png|\.jpg|\.jpeg|\.gif|\.webp|\.bmp|https?:\/\/[^\s]+\.(?:png|jpg|jpeg|gif|webp|bmp))/gi;
105
+ const matches = request.match(imageRegex);
106
+ if (matches) {
107
+ imageRefs.push(...matches);
108
+ }
109
+ }
110
+ if (typeof request === 'object' && request !== null) {
111
+ // Look for image properties in the request object
112
+ const searchForImages = (obj) => {
113
+ if (Array.isArray(obj)) {
114
+ obj.forEach(searchForImages);
115
+ }
116
+ else if (typeof obj === 'object' && obj !== null) {
117
+ Object.values(obj).forEach(value => {
118
+ if (typeof value === 'string' && this.isImagePath(value)) {
119
+ imageRefs.push(value);
120
+ }
121
+ else if (typeof value === 'object') {
122
+ searchForImages(value);
123
+ }
124
+ });
125
+ }
126
+ };
127
+ searchForImages(request);
128
+ }
129
+ return [...new Set(imageRefs)]; // Remove duplicates
130
+ }
131
+ isImagePath(str) {
132
+ const ext = path.extname(str).toLowerCase();
133
+ return this.supportedFormats.includes(ext) || /^https?:\/\/[^\s]+\.(?:png|jpg|jpeg|gif|webp|bmp)/i.test(str);
134
+ }
135
+ async processImage(imageRef) {
136
+ try {
137
+ if (imageRef.startsWith('http')) {
138
+ // URL image
139
+ return this.processUrlImage(imageRef);
140
+ }
141
+ else {
142
+ // Local file path
143
+ return this.processLocalImage(imageRef);
144
+ }
145
+ }
146
+ catch (error) {
147
+ console.error(`Error processing image ${imageRef}:`, error);
148
+ return null;
149
+ }
150
+ }
151
+ async processUrlImage(url) {
152
+ switch (this.passImageAs) {
153
+ case 'URL':
154
+ return {
155
+ type: 'url',
156
+ reference: url,
157
+ description: `Image from URL: ${url}`
158
+ };
159
+ case 'Base64':
160
+ // In a real implementation, you would fetch and convert to base64
161
+ return {
162
+ type: 'base64',
163
+ reference: url,
164
+ description: `Image from URL (would be converted to base64): ${url}`,
165
+ note: 'Base64 conversion not implemented for URLs in this demo'
166
+ };
167
+ case 'Path':
168
+ return {
169
+ type: 'path',
170
+ reference: url,
171
+ description: `Image URL: ${url}`
172
+ };
173
+ default:
174
+ return null;
175
+ }
176
+ }
177
+ async processLocalImage(filePath) {
178
+ try {
179
+ // Check if file exists and get stats
180
+ const stats = await fs.stat(filePath);
181
+ if (stats.size > this.maxImageSize) {
182
+ console.warn(`Image ${filePath} is too large (${stats.size} bytes)`);
183
+ return null;
184
+ }
185
+ switch (this.passImageAs) {
186
+ case 'Path':
187
+ return {
188
+ type: 'path',
189
+ reference: filePath,
190
+ description: `Local image: ${path.basename(filePath)}`,
191
+ size: stats.size
192
+ };
193
+ case 'Base64':
194
+ const imageBuffer = await fs.readFile(filePath);
195
+ const base64 = imageBuffer.toString('base64');
196
+ const ext = path.extname(filePath).substring(1);
197
+ return {
198
+ type: 'base64',
199
+ reference: `data:image/${ext};base64,${base64}`,
200
+ description: `Local image (base64): ${path.basename(filePath)}`,
201
+ size: stats.size
202
+ };
203
+ case 'URL':
204
+ // Convert local path to file:// URL
205
+ return {
206
+ type: 'url',
207
+ reference: `file://${path.resolve(filePath)}`,
208
+ description: `Local image (file URL): ${path.basename(filePath)}`,
209
+ size: stats.size
210
+ };
211
+ default:
212
+ return null;
213
+ }
214
+ }
215
+ catch (error) {
216
+ console.error(`Error processing local image ${filePath}:`, error);
217
+ return null;
218
+ }
219
+ }
220
+ }
221
+ exports.ImageAttachmentMessageModifier = ImageAttachmentMessageModifier;
@@ -0,0 +1,11 @@
1
+ export { EnvironmentContextModifier, type EnvironmentContextOptions } from './environmentContextModifier';
2
+ export { CoreSystemPromptModifier, type CoreSystemPromptOptions } from './coreSystemPromptModifier';
3
+ export { DirectoryContextModifier, type DirectoryContextOptions } from './directoryContextModifier';
4
+ export { IdeContextModifier, type IdeContextOptions, type FileInfo, type IdeContext } from './ideContextModifier';
5
+ export { AtFileProcessorModifier, type AtFileProcessorOptions } from './atFileProcessorModifier';
6
+ export { ArgumentProcessorModifier, type ArgumentProcessorOptions } from './argumentProcessorModifier';
7
+ export { MemoryImportModifier, type MemoryImportOptions } from './memoryImportModifier';
8
+ export { LoopDetectionModifier, type LoopDetectionOptions } from '../postInferenceProcessors/loopDetectionModifier';
9
+ export { ToolInjectionModifier, type ToolInjectionOptions } from './toolInjectionModifier';
10
+ export { ChatRecordingModifier, type ChatRecordingOptions } from './chatRecordingModifier';
11
+ export { ChatHistoryMessageModifier, type ChatHistoryMessageModifierOptions } from './chatHistoryMessageModifier';
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ChatHistoryMessageModifier = exports.ChatRecordingModifier = exports.ToolInjectionModifier = exports.LoopDetectionModifier = exports.MemoryImportModifier = exports.ArgumentProcessorModifier = exports.AtFileProcessorModifier = exports.IdeContextModifier = exports.DirectoryContextModifier = exports.CoreSystemPromptModifier = exports.EnvironmentContextModifier = void 0;
4
+ // Gemini-CLI equivalent modifiers
5
+ var environmentContextModifier_1 = require("./environmentContextModifier");
6
+ Object.defineProperty(exports, "EnvironmentContextModifier", { enumerable: true, get: function () { return environmentContextModifier_1.EnvironmentContextModifier; } });
7
+ var coreSystemPromptModifier_1 = require("./coreSystemPromptModifier");
8
+ Object.defineProperty(exports, "CoreSystemPromptModifier", { enumerable: true, get: function () { return coreSystemPromptModifier_1.CoreSystemPromptModifier; } });
9
+ var directoryContextModifier_1 = require("./directoryContextModifier");
10
+ Object.defineProperty(exports, "DirectoryContextModifier", { enumerable: true, get: function () { return directoryContextModifier_1.DirectoryContextModifier; } });
11
+ var ideContextModifier_1 = require("./ideContextModifier");
12
+ Object.defineProperty(exports, "IdeContextModifier", { enumerable: true, get: function () { return ideContextModifier_1.IdeContextModifier; } });
13
+ var atFileProcessorModifier_1 = require("./atFileProcessorModifier");
14
+ Object.defineProperty(exports, "AtFileProcessorModifier", { enumerable: true, get: function () { return atFileProcessorModifier_1.AtFileProcessorModifier; } });
15
+ var argumentProcessorModifier_1 = require("./argumentProcessorModifier");
16
+ Object.defineProperty(exports, "ArgumentProcessorModifier", { enumerable: true, get: function () { return argumentProcessorModifier_1.ArgumentProcessorModifier; } });
17
+ var memoryImportModifier_1 = require("./memoryImportModifier");
18
+ Object.defineProperty(exports, "MemoryImportModifier", { enumerable: true, get: function () { return memoryImportModifier_1.MemoryImportModifier; } });
19
+ var loopDetectionModifier_1 = require("../postInferenceProcessors/loopDetectionModifier");
20
+ Object.defineProperty(exports, "LoopDetectionModifier", { enumerable: true, get: function () { return loopDetectionModifier_1.LoopDetectionModifier; } });
21
+ var toolInjectionModifier_1 = require("./toolInjectionModifier");
22
+ Object.defineProperty(exports, "ToolInjectionModifier", { enumerable: true, get: function () { return toolInjectionModifier_1.ToolInjectionModifier; } });
23
+ var chatRecordingModifier_1 = require("./chatRecordingModifier");
24
+ Object.defineProperty(exports, "ChatRecordingModifier", { enumerable: true, get: function () { return chatRecordingModifier_1.ChatRecordingModifier; } });
25
+ var chatHistoryMessageModifier_1 = require("./chatHistoryMessageModifier");
26
+ Object.defineProperty(exports, "ChatHistoryMessageModifier", { enumerable: true, get: function () { return chatHistoryMessageModifier_1.ChatHistoryMessageModifier; } });
@@ -0,0 +1,15 @@
1
+ import { ProcessedMessage } from "@codebolt/types/agent";
2
+ import { BaseMessageModifier } from "../base";
3
+ import { FlatUserMessage } from "@codebolt/types/sdk";
4
+ export interface MemoryImportOptions {
5
+ enableMemoryImport?: boolean;
6
+ maxFileSize?: number;
7
+ allowedExtensions?: string[];
8
+ basePath?: string;
9
+ maxImports?: number;
10
+ }
11
+ export declare class MemoryImportModifier extends BaseMessageModifier {
12
+ private readonly options;
13
+ constructor(options?: MemoryImportOptions);
14
+ modify(originalRequest: FlatUserMessage, createdMessage: ProcessedMessage): Promise<ProcessedMessage>;
15
+ }