@measureoneinc/savant 1.0.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 (398) hide show
  1. package/README-SDK.md +148 -0
  2. package/dist/ai/agents/domain-identifier.agent.d.ts +34 -0
  3. package/dist/ai/agents/domain-identifier.agent.d.ts.map +1 -0
  4. package/dist/ai/agents/domain-identifier.agent.js +176 -0
  5. package/dist/ai/agents/domain-identifier.agent.js.map +1 -0
  6. package/dist/ai/agents/dynamic-agent.d.ts +105 -0
  7. package/dist/ai/agents/dynamic-agent.d.ts.map +1 -0
  8. package/dist/ai/agents/dynamic-agent.js +505 -0
  9. package/dist/ai/agents/dynamic-agent.js.map +1 -0
  10. package/dist/ai/agents/executor.agent.d.ts +25 -0
  11. package/dist/ai/agents/executor.agent.d.ts.map +1 -0
  12. package/dist/ai/agents/executor.agent.js +44 -0
  13. package/dist/ai/agents/executor.agent.js.map +1 -0
  14. package/dist/ai/agents/index.d.ts +17 -0
  15. package/dist/ai/agents/index.d.ts.map +1 -0
  16. package/dist/ai/agents/index.js +29 -0
  17. package/dist/ai/agents/index.js.map +1 -0
  18. package/dist/ai/agents/knowledge.agent.d.ts +25 -0
  19. package/dist/ai/agents/knowledge.agent.d.ts.map +1 -0
  20. package/dist/ai/agents/knowledge.agent.js +42 -0
  21. package/dist/ai/agents/knowledge.agent.js.map +1 -0
  22. package/dist/ai/agents/learning.agent.d.ts +63 -0
  23. package/dist/ai/agents/learning.agent.d.ts.map +1 -0
  24. package/dist/ai/agents/learning.agent.js +288 -0
  25. package/dist/ai/agents/learning.agent.js.map +1 -0
  26. package/dist/ai/agents/orchestrator.agent.d.ts +26 -0
  27. package/dist/ai/agents/orchestrator.agent.d.ts.map +1 -0
  28. package/dist/ai/agents/orchestrator.agent.js +42 -0
  29. package/dist/ai/agents/orchestrator.agent.js.map +1 -0
  30. package/dist/ai/agents/planner.agent.d.ts +25 -0
  31. package/dist/ai/agents/planner.agent.d.ts.map +1 -0
  32. package/dist/ai/agents/planner.agent.js +36 -0
  33. package/dist/ai/agents/planner.agent.js.map +1 -0
  34. package/dist/ai/agents/response-parser.d.ts +23 -0
  35. package/dist/ai/agents/response-parser.d.ts.map +1 -0
  36. package/dist/ai/agents/response-parser.js +313 -0
  37. package/dist/ai/agents/response-parser.js.map +1 -0
  38. package/dist/ai/agents/summarizer.agent.d.ts +38 -0
  39. package/dist/ai/agents/summarizer.agent.d.ts.map +1 -0
  40. package/dist/ai/agents/summarizer.agent.js +245 -0
  41. package/dist/ai/agents/summarizer.agent.js.map +1 -0
  42. package/dist/ai/instructions/domain-identifier.instructions.d.ts +10 -0
  43. package/dist/ai/instructions/domain-identifier.instructions.d.ts.map +1 -0
  44. package/dist/ai/instructions/domain-identifier.instructions.js +63 -0
  45. package/dist/ai/instructions/domain-identifier.instructions.js.map +1 -0
  46. package/dist/ai/instructions/executor.instructions.d.ts +11 -0
  47. package/dist/ai/instructions/executor.instructions.d.ts.map +1 -0
  48. package/dist/ai/instructions/executor.instructions.js +218 -0
  49. package/dist/ai/instructions/executor.instructions.js.map +1 -0
  50. package/dist/ai/instructions/knowledge.instructions.d.ts +11 -0
  51. package/dist/ai/instructions/knowledge.instructions.d.ts.map +1 -0
  52. package/dist/ai/instructions/knowledge.instructions.js +145 -0
  53. package/dist/ai/instructions/knowledge.instructions.js.map +1 -0
  54. package/dist/ai/instructions/learning.instructions.d.ts +11 -0
  55. package/dist/ai/instructions/learning.instructions.d.ts.map +1 -0
  56. package/dist/ai/instructions/learning.instructions.js +226 -0
  57. package/dist/ai/instructions/learning.instructions.js.map +1 -0
  58. package/dist/ai/instructions/orchestrator.instructions.d.ts +11 -0
  59. package/dist/ai/instructions/orchestrator.instructions.d.ts.map +1 -0
  60. package/dist/ai/instructions/orchestrator.instructions.js +148 -0
  61. package/dist/ai/instructions/orchestrator.instructions.js.map +1 -0
  62. package/dist/ai/instructions/planner.instructions.d.ts +12 -0
  63. package/dist/ai/instructions/planner.instructions.d.ts.map +1 -0
  64. package/dist/ai/instructions/planner.instructions.js +129 -0
  65. package/dist/ai/instructions/planner.instructions.js.map +1 -0
  66. package/dist/ai/instructions/summarizer.instructions.d.ts +11 -0
  67. package/dist/ai/instructions/summarizer.instructions.d.ts.map +1 -0
  68. package/dist/ai/instructions/summarizer.instructions.js +84 -0
  69. package/dist/ai/instructions/summarizer.instructions.js.map +1 -0
  70. package/dist/ai/learning/execution-learner.d.ts +79 -0
  71. package/dist/ai/learning/execution-learner.d.ts.map +1 -0
  72. package/dist/ai/learning/execution-learner.js +536 -0
  73. package/dist/ai/learning/execution-learner.js.map +1 -0
  74. package/dist/ai/response_handlers/base-handler.d.ts +73 -0
  75. package/dist/ai/response_handlers/base-handler.d.ts.map +1 -0
  76. package/dist/ai/response_handlers/base-handler.js +153 -0
  77. package/dist/ai/response_handlers/base-handler.js.map +1 -0
  78. package/dist/ai/response_handlers/direct-response-handler.d.ts +18 -0
  79. package/dist/ai/response_handlers/direct-response-handler.d.ts.map +1 -0
  80. package/dist/ai/response_handlers/direct-response-handler.js +86 -0
  81. package/dist/ai/response_handlers/direct-response-handler.js.map +1 -0
  82. package/dist/ai/response_handlers/error-handler.d.ts +13 -0
  83. package/dist/ai/response_handlers/error-handler.d.ts.map +1 -0
  84. package/dist/ai/response_handlers/error-handler.js +72 -0
  85. package/dist/ai/response_handlers/error-handler.js.map +1 -0
  86. package/dist/ai/response_handlers/handler-registry.d.ts +51 -0
  87. package/dist/ai/response_handlers/handler-registry.d.ts.map +1 -0
  88. package/dist/ai/response_handlers/handler-registry.js +268 -0
  89. package/dist/ai/response_handlers/handler-registry.js.map +1 -0
  90. package/dist/ai/response_handlers/index.d.ts +16 -0
  91. package/dist/ai/response_handlers/index.d.ts.map +1 -0
  92. package/dist/ai/response_handlers/index.js +29 -0
  93. package/dist/ai/response_handlers/index.js.map +1 -0
  94. package/dist/ai/response_handlers/message-handler.d.ts +23 -0
  95. package/dist/ai/response_handlers/message-handler.d.ts.map +1 -0
  96. package/dist/ai/response_handlers/message-handler.js +193 -0
  97. package/dist/ai/response_handlers/message-handler.js.map +1 -0
  98. package/dist/ai/response_handlers/plan-ready-handler.d.ts +26 -0
  99. package/dist/ai/response_handlers/plan-ready-handler.d.ts.map +1 -0
  100. package/dist/ai/response_handlers/plan-ready-handler.js +394 -0
  101. package/dist/ai/response_handlers/plan-ready-handler.js.map +1 -0
  102. package/dist/ai/response_handlers/request-input-handler.d.ts +14 -0
  103. package/dist/ai/response_handlers/request-input-handler.d.ts.map +1 -0
  104. package/dist/ai/response_handlers/request-input-handler.js +87 -0
  105. package/dist/ai/response_handlers/request-input-handler.js.map +1 -0
  106. package/dist/ai/response_handlers/request-plan-handler.d.ts +18 -0
  107. package/dist/ai/response_handlers/request-plan-handler.d.ts.map +1 -0
  108. package/dist/ai/response_handlers/request-plan-handler.js +143 -0
  109. package/dist/ai/response_handlers/request-plan-handler.js.map +1 -0
  110. package/dist/ai/response_handlers/step-complete-handler.d.ts +22 -0
  111. package/dist/ai/response_handlers/step-complete-handler.d.ts.map +1 -0
  112. package/dist/ai/response_handlers/step-complete-handler.js +307 -0
  113. package/dist/ai/response_handlers/step-complete-handler.js.map +1 -0
  114. package/dist/ai/response_handlers/unknown-handler.d.ts +12 -0
  115. package/dist/ai/response_handlers/unknown-handler.d.ts.map +1 -0
  116. package/dist/ai/response_handlers/unknown-handler.js +27 -0
  117. package/dist/ai/response_handlers/unknown-handler.js.map +1 -0
  118. package/dist/ai/response_handlers/user-input-handler.d.ts +20 -0
  119. package/dist/ai/response_handlers/user-input-handler.d.ts.map +1 -0
  120. package/dist/ai/response_handlers/user-input-handler.js +69 -0
  121. package/dist/ai/response_handlers/user-input-handler.js.map +1 -0
  122. package/dist/ai/tools/log-step.d.ts +29 -0
  123. package/dist/ai/tools/log-step.d.ts.map +1 -0
  124. package/dist/ai/tools/log-step.js +47 -0
  125. package/dist/ai/tools/log-step.js.map +1 -0
  126. package/dist/app.d.ts +15 -0
  127. package/dist/app.d.ts.map +1 -0
  128. package/dist/app.js +223 -0
  129. package/dist/app.js.map +1 -0
  130. package/dist/config/environment/local.d.ts +12 -0
  131. package/dist/config/environment/local.d.ts.map +1 -0
  132. package/dist/config/environment/local.js +124 -0
  133. package/dist/config/environment/local.js.map +1 -0
  134. package/dist/config/environment/production.d.ts +7 -0
  135. package/dist/config/environment/production.d.ts.map +1 -0
  136. package/dist/config/environment/production.js +105 -0
  137. package/dist/config/environment/production.js.map +1 -0
  138. package/dist/config/environment/test.d.ts +7 -0
  139. package/dist/config/environment/test.d.ts.map +1 -0
  140. package/dist/config/environment/test.js +97 -0
  141. package/dist/config/environment/test.js.map +1 -0
  142. package/dist/config/index.d.ts +219 -0
  143. package/dist/config/index.d.ts.map +1 -0
  144. package/dist/config/index.js +360 -0
  145. package/dist/config/index.js.map +1 -0
  146. package/dist/controllers/agent_request.controller.d.ts +43 -0
  147. package/dist/controllers/agent_request.controller.d.ts.map +1 -0
  148. package/dist/controllers/agent_request.controller.js +141 -0
  149. package/dist/controllers/agent_request.controller.js.map +1 -0
  150. package/dist/controllers/base.controller.d.ts +208 -0
  151. package/dist/controllers/base.controller.d.ts.map +1 -0
  152. package/dist/controllers/base.controller.js +378 -0
  153. package/dist/controllers/base.controller.js.map +1 -0
  154. package/dist/controllers/conversations.controller.d.ts +31 -0
  155. package/dist/controllers/conversations.controller.d.ts.map +1 -0
  156. package/dist/controllers/conversations.controller.js +138 -0
  157. package/dist/controllers/conversations.controller.js.map +1 -0
  158. package/dist/controllers/knowledge.controller.d.ts +63 -0
  159. package/dist/controllers/knowledge.controller.d.ts.map +1 -0
  160. package/dist/controllers/knowledge.controller.js +311 -0
  161. package/dist/controllers/knowledge.controller.js.map +1 -0
  162. package/dist/controllers/mcp.controller.d.ts +25 -0
  163. package/dist/controllers/mcp.controller.d.ts.map +1 -0
  164. package/dist/controllers/mcp.controller.js +93 -0
  165. package/dist/controllers/mcp.controller.js.map +1 -0
  166. package/dist/index.d.ts +12 -0
  167. package/dist/index.d.ts.map +1 -0
  168. package/dist/index.js +25 -0
  169. package/dist/index.js.map +1 -0
  170. package/dist/lib/app-constants.d.ts +231 -0
  171. package/dist/lib/app-constants.d.ts.map +1 -0
  172. package/dist/lib/app-constants.js +240 -0
  173. package/dist/lib/app-constants.js.map +1 -0
  174. package/dist/lib/controller-utils.d.ts +48 -0
  175. package/dist/lib/controller-utils.d.ts.map +1 -0
  176. package/dist/lib/controller-utils.js +70 -0
  177. package/dist/lib/controller-utils.js.map +1 -0
  178. package/dist/lib/exceptions/app-exceptions.d.ts +158 -0
  179. package/dist/lib/exceptions/app-exceptions.d.ts.map +1 -0
  180. package/dist/lib/exceptions/app-exceptions.js +287 -0
  181. package/dist/lib/exceptions/app-exceptions.js.map +1 -0
  182. package/dist/lib/middleware/upload.middleware.d.ts +13 -0
  183. package/dist/lib/middleware/upload.middleware.d.ts.map +1 -0
  184. package/dist/lib/middleware/upload.middleware.js +35 -0
  185. package/dist/lib/middleware/upload.middleware.js.map +1 -0
  186. package/dist/lib/middleware/validation.middleware.d.ts +29 -0
  187. package/dist/lib/middleware/validation.middleware.d.ts.map +1 -0
  188. package/dist/lib/middleware/validation.middleware.js +219 -0
  189. package/dist/lib/middleware/validation.middleware.js.map +1 -0
  190. package/dist/lib/model/validation-schema/submit-message.schema.d.ts +3 -0
  191. package/dist/lib/model/validation-schema/submit-message.schema.d.ts.map +1 -0
  192. package/dist/lib/model/validation-schema/submit-message.schema.js +40 -0
  193. package/dist/lib/model/validation-schema/submit-message.schema.js.map +1 -0
  194. package/dist/lib/model/validation-schema/update-knowledge.schema.d.ts +3 -0
  195. package/dist/lib/model/validation-schema/update-knowledge.schema.d.ts.map +1 -0
  196. package/dist/lib/model/validation-schema/update-knowledge.schema.js +35 -0
  197. package/dist/lib/model/validation-schema/update-knowledge.schema.js.map +1 -0
  198. package/dist/lib/open-ai-event-processor.d.ts +101 -0
  199. package/dist/lib/open-ai-event-processor.d.ts.map +1 -0
  200. package/dist/lib/open-ai-event-processor.js +426 -0
  201. package/dist/lib/open-ai-event-processor.js.map +1 -0
  202. package/dist/lib/schemas/ai-responses.schema.d.ts +617 -0
  203. package/dist/lib/schemas/ai-responses.schema.d.ts.map +1 -0
  204. package/dist/lib/schemas/ai-responses.schema.js +377 -0
  205. package/dist/lib/schemas/ai-responses.schema.js.map +1 -0
  206. package/dist/lib/schemas/common.schemas.d.ts +84 -0
  207. package/dist/lib/schemas/common.schemas.d.ts.map +1 -0
  208. package/dist/lib/schemas/common.schemas.js +87 -0
  209. package/dist/lib/schemas/common.schemas.js.map +1 -0
  210. package/dist/lib/schemas/conversation.schema.d.ts +28 -0
  211. package/dist/lib/schemas/conversation.schema.d.ts.map +1 -0
  212. package/dist/lib/schemas/conversation.schema.js +31 -0
  213. package/dist/lib/schemas/conversation.schema.js.map +1 -0
  214. package/dist/lib/schemas/http-client.schema.d.ts +39 -0
  215. package/dist/lib/schemas/http-client.schema.d.ts.map +1 -0
  216. package/dist/lib/schemas/http-client.schema.js +36 -0
  217. package/dist/lib/schemas/http-client.schema.js.map +1 -0
  218. package/dist/lib/schemas/index.d.ts +95 -0
  219. package/dist/lib/schemas/index.d.ts.map +1 -0
  220. package/dist/lib/schemas/index.js +32 -0
  221. package/dist/lib/schemas/index.js.map +1 -0
  222. package/dist/lib/schemas/knowledge.schema.d.ts +145 -0
  223. package/dist/lib/schemas/knowledge.schema.d.ts.map +1 -0
  224. package/dist/lib/schemas/knowledge.schema.js +81 -0
  225. package/dist/lib/schemas/knowledge.schema.js.map +1 -0
  226. package/dist/lib/schemas/orchestration.schema.d.ts +168 -0
  227. package/dist/lib/schemas/orchestration.schema.d.ts.map +1 -0
  228. package/dist/lib/schemas/orchestration.schema.js +133 -0
  229. package/dist/lib/schemas/orchestration.schema.js.map +1 -0
  230. package/dist/lib/schemas/plan.schema.d.ts +103 -0
  231. package/dist/lib/schemas/plan.schema.d.ts.map +1 -0
  232. package/dist/lib/schemas/plan.schema.js +58 -0
  233. package/dist/lib/schemas/plan.schema.js.map +1 -0
  234. package/dist/lib/sequelize-service.d.ts +23 -0
  235. package/dist/lib/sequelize-service.d.ts.map +1 -0
  236. package/dist/lib/sequelize-service.js +446 -0
  237. package/dist/lib/sequelize-service.js.map +1 -0
  238. package/dist/lib/source-hash.d.ts +39 -0
  239. package/dist/lib/source-hash.d.ts.map +1 -0
  240. package/dist/lib/source-hash.js +56 -0
  241. package/dist/lib/source-hash.js.map +1 -0
  242. package/dist/lib/stable-stringify.d.ts +32 -0
  243. package/dist/lib/stable-stringify.d.ts.map +1 -0
  244. package/dist/lib/stable-stringify.js +72 -0
  245. package/dist/lib/stable-stringify.js.map +1 -0
  246. package/dist/lib/streaming-utils.d.ts +60 -0
  247. package/dist/lib/streaming-utils.d.ts.map +1 -0
  248. package/dist/lib/streaming-utils.js +190 -0
  249. package/dist/lib/streaming-utils.js.map +1 -0
  250. package/dist/lib/utils/conversation-builder.d.ts +36 -0
  251. package/dist/lib/utils/conversation-builder.d.ts.map +1 -0
  252. package/dist/lib/utils/conversation-builder.js +132 -0
  253. package/dist/lib/utils/conversation-builder.js.map +1 -0
  254. package/dist/lib/utils/domain-matcher.d.ts +25 -0
  255. package/dist/lib/utils/domain-matcher.d.ts.map +1 -0
  256. package/dist/lib/utils/domain-matcher.js +42 -0
  257. package/dist/lib/utils/domain-matcher.js.map +1 -0
  258. package/dist/lib/utils/file-util.d.ts +157 -0
  259. package/dist/lib/utils/file-util.d.ts.map +1 -0
  260. package/dist/lib/utils/file-util.js +373 -0
  261. package/dist/lib/utils/file-util.js.map +1 -0
  262. package/dist/lib/utils/html-summarizer.d.ts +27 -0
  263. package/dist/lib/utils/html-summarizer.d.ts.map +1 -0
  264. package/dist/lib/utils/html-summarizer.js +189 -0
  265. package/dist/lib/utils/html-summarizer.js.map +1 -0
  266. package/dist/lib/utils/http-client.d.ts +108 -0
  267. package/dist/lib/utils/http-client.d.ts.map +1 -0
  268. package/dist/lib/utils/http-client.js +298 -0
  269. package/dist/lib/utils/http-client.js.map +1 -0
  270. package/dist/lib/utils/index.d.ts +12 -0
  271. package/dist/lib/utils/index.d.ts.map +1 -0
  272. package/dist/lib/utils/index.js +28 -0
  273. package/dist/lib/utils/index.js.map +1 -0
  274. package/dist/lib/utils/logger.d.ts +30 -0
  275. package/dist/lib/utils/logger.d.ts.map +1 -0
  276. package/dist/lib/utils/logger.js +88 -0
  277. package/dist/lib/utils/logger.js.map +1 -0
  278. package/dist/lib/utils/mcp-utils.d.ts +208 -0
  279. package/dist/lib/utils/mcp-utils.d.ts.map +1 -0
  280. package/dist/lib/utils/mcp-utils.js +451 -0
  281. package/dist/lib/utils/mcp-utils.js.map +1 -0
  282. package/dist/lib/utils/sequelize-service.d.ts +153 -0
  283. package/dist/lib/utils/sequelize-service.d.ts.map +1 -0
  284. package/dist/lib/utils/sequelize-service.js +339 -0
  285. package/dist/lib/utils/sequelize-service.js.map +1 -0
  286. package/dist/lib/utils/tool-call-extractor.d.ts +36 -0
  287. package/dist/lib/utils/tool-call-extractor.d.ts.map +1 -0
  288. package/dist/lib/utils/tool-call-extractor.js +121 -0
  289. package/dist/lib/utils/tool-call-extractor.js.map +1 -0
  290. package/dist/lib/utils/zod-to-json-schema.d.ts +17 -0
  291. package/dist/lib/utils/zod-to-json-schema.d.ts.map +1 -0
  292. package/dist/lib/utils/zod-to-json-schema.js +53 -0
  293. package/dist/lib/utils/zod-to-json-schema.js.map +1 -0
  294. package/dist/models/AgentRequest.d.ts +33 -0
  295. package/dist/models/AgentRequest.d.ts.map +1 -0
  296. package/dist/models/AgentRequest.js +49 -0
  297. package/dist/models/AgentRequest.js.map +1 -0
  298. package/dist/models/AgentRun.d.ts +44 -0
  299. package/dist/models/AgentRun.d.ts.map +1 -0
  300. package/dist/models/AgentRun.js +53 -0
  301. package/dist/models/AgentRun.js.map +1 -0
  302. package/dist/models/AuditLog.d.ts +37 -0
  303. package/dist/models/AuditLog.d.ts.map +1 -0
  304. package/dist/models/AuditLog.js +46 -0
  305. package/dist/models/AuditLog.js.map +1 -0
  306. package/dist/models/Conversation.d.ts +39 -0
  307. package/dist/models/Conversation.d.ts.map +1 -0
  308. package/dist/models/Conversation.js +49 -0
  309. package/dist/models/Conversation.js.map +1 -0
  310. package/dist/models/Embedding.d.ts +56 -0
  311. package/dist/models/Embedding.d.ts.map +1 -0
  312. package/dist/models/Embedding.js +36 -0
  313. package/dist/models/Embedding.js.map +1 -0
  314. package/dist/models/ExecutionPattern.d.ts +57 -0
  315. package/dist/models/ExecutionPattern.d.ts.map +1 -0
  316. package/dist/models/ExecutionPattern.js +61 -0
  317. package/dist/models/ExecutionPattern.js.map +1 -0
  318. package/dist/models/Knowledge.d.ts +49 -0
  319. package/dist/models/Knowledge.d.ts.map +1 -0
  320. package/dist/models/Knowledge.js +67 -0
  321. package/dist/models/Knowledge.js.map +1 -0
  322. package/dist/models/KnowledgeRevision.d.ts +35 -0
  323. package/dist/models/KnowledgeRevision.d.ts.map +1 -0
  324. package/dist/models/KnowledgeRevision.js +51 -0
  325. package/dist/models/KnowledgeRevision.js.map +1 -0
  326. package/dist/models/Plan.d.ts +34 -0
  327. package/dist/models/Plan.d.ts.map +1 -0
  328. package/dist/models/Plan.js +43 -0
  329. package/dist/models/Plan.js.map +1 -0
  330. package/dist/models/PlanStep.d.ts +56 -0
  331. package/dist/models/PlanStep.d.ts.map +1 -0
  332. package/dist/models/PlanStep.js +65 -0
  333. package/dist/models/PlanStep.js.map +1 -0
  334. package/dist/models/SourceData.d.ts +39 -0
  335. package/dist/models/SourceData.d.ts.map +1 -0
  336. package/dist/models/SourceData.js +18 -0
  337. package/dist/models/SourceData.js.map +1 -0
  338. package/dist/models/index.d.ts +36 -0
  339. package/dist/models/index.d.ts.map +1 -0
  340. package/dist/models/index.js +179 -0
  341. package/dist/models/index.js.map +1 -0
  342. package/dist/routes/agent.routes.d.ts +13 -0
  343. package/dist/routes/agent.routes.d.ts.map +1 -0
  344. package/dist/routes/agent.routes.js +27 -0
  345. package/dist/routes/agent.routes.js.map +1 -0
  346. package/dist/routes/agent_request.routes.d.ts +13 -0
  347. package/dist/routes/agent_request.routes.d.ts.map +1 -0
  348. package/dist/routes/agent_request.routes.js +65 -0
  349. package/dist/routes/agent_request.routes.js.map +1 -0
  350. package/dist/routes/knowledge.routes.d.ts +13 -0
  351. package/dist/routes/knowledge.routes.d.ts.map +1 -0
  352. package/dist/routes/knowledge.routes.js +91 -0
  353. package/dist/routes/knowledge.routes.js.map +1 -0
  354. package/dist/routes/mcp.routes.d.ts +14 -0
  355. package/dist/routes/mcp.routes.d.ts.map +1 -0
  356. package/dist/routes/mcp.routes.js +27 -0
  357. package/dist/routes/mcp.routes.js.map +1 -0
  358. package/dist/sdk/index.d.ts +13 -0
  359. package/dist/sdk/index.d.ts.map +1 -0
  360. package/dist/sdk/index.js +35 -0
  361. package/dist/sdk/index.js.map +1 -0
  362. package/dist/sdk/savant.sdk.d.ts +53 -0
  363. package/dist/sdk/savant.sdk.d.ts.map +1 -0
  364. package/dist/sdk/savant.sdk.js +120 -0
  365. package/dist/sdk/savant.sdk.js.map +1 -0
  366. package/dist/services/agent-request-service.d.ts +104 -0
  367. package/dist/services/agent-request-service.d.ts.map +1 -0
  368. package/dist/services/agent-request-service.js +319 -0
  369. package/dist/services/agent-request-service.js.map +1 -0
  370. package/dist/services/audit_log.service.d.ts +104 -0
  371. package/dist/services/audit_log.service.d.ts.map +1 -0
  372. package/dist/services/audit_log.service.js +339 -0
  373. package/dist/services/audit_log.service.js.map +1 -0
  374. package/dist/services/conversation.service.d.ts +90 -0
  375. package/dist/services/conversation.service.d.ts.map +1 -0
  376. package/dist/services/conversation.service.js +552 -0
  377. package/dist/services/conversation.service.js.map +1 -0
  378. package/dist/services/domain.service.d.ts +58 -0
  379. package/dist/services/domain.service.d.ts.map +1 -0
  380. package/dist/services/domain.service.js +244 -0
  381. package/dist/services/domain.service.js.map +1 -0
  382. package/dist/services/embedding.service.d.ts +132 -0
  383. package/dist/services/embedding.service.d.ts.map +1 -0
  384. package/dist/services/embedding.service.js +587 -0
  385. package/dist/services/embedding.service.js.map +1 -0
  386. package/dist/services/file_upload.service.d.ts +50 -0
  387. package/dist/services/file_upload.service.d.ts.map +1 -0
  388. package/dist/services/file_upload.service.js +172 -0
  389. package/dist/services/file_upload.service.js.map +1 -0
  390. package/dist/services/knowledge.service.d.ts +200 -0
  391. package/dist/services/knowledge.service.d.ts.map +1 -0
  392. package/dist/services/knowledge.service.js +784 -0
  393. package/dist/services/knowledge.service.js.map +1 -0
  394. package/dist/types/responses-api.types.d.ts +181 -0
  395. package/dist/types/responses-api.types.d.ts.map +1 -0
  396. package/dist/types/responses-api.types.js +12 -0
  397. package/dist/types/responses-api.types.js.map +1 -0
  398. package/package.json +145 -0
@@ -0,0 +1,97 @@
1
+ "use strict";
2
+ /**
3
+ * @fileoverview Savant Orchestration Service - Test Environment Configuration
4
+ */
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const test_config = {
7
+ PORT: 0,
8
+ HOST: '127.0.0.1',
9
+ DATABASE: {
10
+ url: 'file:./test.db',
11
+ provider: 'sqlite',
12
+ log_queries: false,
13
+ connection_timeout: 10000,
14
+ query_timeout: 5000
15
+ },
16
+ API: {
17
+ version: 'v1',
18
+ prefix: '/v3',
19
+ rate_limit: {
20
+ window_ms: 1000,
21
+ max_requests: 1000,
22
+ message: 'Rate limit exceeded in test'
23
+ },
24
+ cors: {
25
+ origin: true,
26
+ credentials: true,
27
+ methods: ['GET', 'POST', 'PUT', 'DELETE', 'PATCH', 'OPTIONS'],
28
+ allowed_headers: ['Content-Type', 'Authorization', 'X-Requested-With']
29
+ }
30
+ },
31
+ LOGGING: {
32
+ level: 'error',
33
+ console_level: 'error',
34
+ file_logging: false,
35
+ max_file_size: '1m',
36
+ max_files: 1
37
+ },
38
+ SAVANT_ORCHESTRATION_SERVICE: {
39
+ request_processing: {
40
+ max_concurrent_requests: 2,
41
+ request_timeout_ms: 10000,
42
+ retry_attempts: 1,
43
+ retry_delay_ms: 1000,
44
+ cleanup_completed_requests_hours: 1,
45
+ cleanup_failed_requests_hours: 1
46
+ },
47
+ agent_orchestration: {
48
+ max_active_agents: 5,
49
+ agent_timeout_ms: 30000,
50
+ message_queue_size: 100,
51
+ auto_cleanup_inactive_agents: true,
52
+ agent_health_check_interval_ms: 1000
53
+ },
54
+ knowledge_management: {
55
+ cache_enabled: false,
56
+ cache_ttl_ms: 60000, // 1 minute for tests
57
+ max_cache_size_mb: 10
58
+ },
59
+ monitoring: {
60
+ metrics_enabled: false,
61
+ health_check_interval_ms: 1000,
62
+ performance_logging: false
63
+ }
64
+ },
65
+ KNOWLEDGE_ACQUISITION_SERVICE_URL: 'http://localhost:18002',
66
+ CHAT_SERVICE_URL: 'http://localhost:18000',
67
+ ENABLE_DEBUG_LOGGING: false,
68
+ ENABLE_PERFORMANCE_MONITORING: false,
69
+ ENABLE_DETAILED_ERRORS: true,
70
+ HEALTH_CHECK: {
71
+ enabled: false,
72
+ interval_ms: 1000,
73
+ timeout_ms: 1000,
74
+ include_external_services: false
75
+ },
76
+ MCP_SERVERS: [
77
+ {
78
+ name: "puppeteer-mcp",
79
+ transport_mode: "stdio",
80
+ command: "node",
81
+ args: ["m1://m1-puppeteer-mcp/bin/mc-server.js", "--stdio"],
82
+ cwd: process.cwd()
83
+ },
84
+ {
85
+ name: "embeddings-mcp",
86
+ transport_mode: "stdio",
87
+ command: "node",
88
+ args: ["m1://m1-embeddings-mcp/bin/mc-server.js", "--stdio"],
89
+ cwd: process.cwd(),
90
+ env: {
91
+ SAVANT_ORCHESTRATION_URL: "http://localhost:8001"
92
+ }
93
+ }
94
+ ]
95
+ };
96
+ exports.default = test_config;
97
+ //# sourceMappingURL=test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"test.js","sourceRoot":"","sources":["../../../src/config/environment/test.ts"],"names":[],"mappings":";AAAA;;GAEG;;AAIH,MAAM,WAAW,GAAsB;IACnC,IAAI,EAAE,CAAC;IACP,IAAI,EAAE,WAAW;IAEjB,QAAQ,EAAE;QACN,GAAG,EAAE,gBAAgB;QACrB,QAAQ,EAAE,QAAQ;QAClB,WAAW,EAAE,KAAK;QAClB,kBAAkB,EAAE,KAAK;QACzB,aAAa,EAAE,IAAI;KACtB;IAED,GAAG,EAAE;QACD,OAAO,EAAE,IAAI;QACb,MAAM,EAAE,KAAK;QACb,UAAU,EAAE;YACR,SAAS,EAAE,IAAI;YACf,YAAY,EAAE,IAAI;YAClB,OAAO,EAAE,6BAA6B;SACzC;QACD,IAAI,EAAE;YACF,MAAM,EAAE,IAAI;YACZ,WAAW,EAAE,IAAI;YACjB,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,CAAC;YAC7D,eAAe,EAAE,CAAC,cAAc,EAAE,eAAe,EAAE,kBAAkB,CAAC;SACzE;KACJ;IAED,OAAO,EAAE;QACL,KAAK,EAAE,OAAO;QACd,aAAa,EAAE,OAAO;QACtB,YAAY,EAAE,KAAK;QACnB,aAAa,EAAE,IAAI;QACnB,SAAS,EAAE,CAAC;KACf;IAED,4BAA4B,EAAE;QAC1B,kBAAkB,EAAE;YAChB,uBAAuB,EAAE,CAAC;YAC1B,kBAAkB,EAAE,KAAK;YACzB,cAAc,EAAE,CAAC;YACjB,cAAc,EAAE,IAAI;YACpB,gCAAgC,EAAE,CAAC;YACnC,6BAA6B,EAAE,CAAC;SACnC;QACD,mBAAmB,EAAE;YACjB,iBAAiB,EAAE,CAAC;YACpB,gBAAgB,EAAE,KAAK;YACvB,kBAAkB,EAAE,GAAG;YACvB,4BAA4B,EAAE,IAAI;YAClC,8BAA8B,EAAE,IAAI;SACvC;QACD,oBAAoB,EAAE;YAClB,aAAa,EAAE,KAAK;YACpB,YAAY,EAAE,KAAK,EAAE,qBAAqB;YAC1C,iBAAiB,EAAE,EAAE;SACxB;QACD,UAAU,EAAE;YACR,eAAe,EAAE,KAAK;YACtB,wBAAwB,EAAE,IAAI;YAC9B,mBAAmB,EAAE,KAAK;SAC7B;KACJ;IAED,iCAAiC,EAAE,wBAAwB;IAC3D,gBAAgB,EAAE,wBAAwB;IAE1C,oBAAoB,EAAE,KAAK;IAC3B,6BAA6B,EAAE,KAAK;IACpC,sBAAsB,EAAE,IAAI;IAE5B,YAAY,EAAE;QACV,OAAO,EAAE,KAAK;QACd,WAAW,EAAE,IAAI;QACjB,UAAU,EAAE,IAAI;QAChB,yBAAyB,EAAE,KAAK;KACnC;IAED,WAAW,EAAE;QACT;YACI,IAAI,EAAE,eAAe;YACrB,cAAc,EAAE,OAAO;YACvB,OAAO,EAAE,MAAM;YACf,IAAI,EAAE,CAAC,wCAAwC,EAAE,SAAS,CAAC;YAC3D,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE;SACrB;QACD;YACI,IAAI,EAAE,gBAAgB;YACtB,cAAc,EAAE,OAAO;YACvB,OAAO,EAAE,MAAM;YACf,IAAI,EAAE,CAAC,yCAAyC,EAAE,SAAS,CAAC;YAC5D,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE;YAClB,GAAG,EAAE;gBACD,wBAAwB,EAAE,uBAAuB;aACpD;SACJ;KACJ;CACJ,CAAC;AAEF,kBAAe,WAAW,CAAC"}
@@ -0,0 +1,219 @@
1
+ /**
2
+ * @fileoverview Savant Orchestration Service Configuration Management
3
+ *
4
+ * Centralized configuration management for the Savant Orchestration Service
5
+ * that loads environment-specific configurations and provides a unified interface.
6
+ */
7
+ import { MCPServerConfig } from "../lib/schemas";
8
+ /**
9
+ * Database configuration interface
10
+ */
11
+ export interface DatabaseConfig {
12
+ url: string;
13
+ provider: "sqlite" | "postgresql" | "mysql";
14
+ log_queries: boolean;
15
+ connection_timeout: number;
16
+ query_timeout: number;
17
+ }
18
+ /**
19
+ * Request processing configuration interface
20
+ */
21
+ export interface RequestProcessingConfig {
22
+ max_concurrent_requests: number;
23
+ request_timeout_ms: number;
24
+ retry_attempts: number;
25
+ retry_delay_ms: number;
26
+ cleanup_completed_requests_hours: number;
27
+ cleanup_failed_requests_hours: number;
28
+ }
29
+ /**
30
+ * Agent orchestration configuration interface
31
+ */
32
+ export interface AgentOrchestrationConfig {
33
+ max_active_agents: number;
34
+ agent_timeout_ms: number;
35
+ message_queue_size: number;
36
+ auto_cleanup_inactive_agents: boolean;
37
+ agent_health_check_interval_ms: number;
38
+ }
39
+ /**
40
+ * API configuration interface
41
+ */
42
+ export interface ApiConfig {
43
+ version: string;
44
+ prefix: string;
45
+ rate_limit: {
46
+ window_ms: number;
47
+ max_requests: number;
48
+ message: string;
49
+ };
50
+ cors: {
51
+ origin: string[] | boolean;
52
+ credentials: boolean;
53
+ methods: string[];
54
+ allowed_headers: string[];
55
+ };
56
+ }
57
+ /**
58
+ * Logging configuration interface
59
+ */
60
+ export interface LoggingConfig {
61
+ level: "debug" | "info" | "warn" | "error";
62
+ console_level: "debug" | "info" | "warn" | "error";
63
+ file_logging: boolean;
64
+ log_file_path?: string;
65
+ max_file_size: string;
66
+ max_files: number;
67
+ }
68
+ /**
69
+ * Savant Orchestration Service specific configuration interface
70
+ */
71
+ export interface SavantOrchestrationServiceConfig {
72
+ request_processing: RequestProcessingConfig;
73
+ agent_orchestration: AgentOrchestrationConfig;
74
+ knowledge_management: {
75
+ cache_enabled: boolean;
76
+ cache_ttl_ms: number;
77
+ max_cache_size_mb: number;
78
+ };
79
+ monitoring: {
80
+ metrics_enabled: boolean;
81
+ health_check_interval_ms: number;
82
+ performance_logging: boolean;
83
+ };
84
+ MCP_SERVERS?: {
85
+ name: string;
86
+ command: string;
87
+ args: string[];
88
+ cwd: string;
89
+ }[];
90
+ }
91
+ /**
92
+ * Interface for environment configuration
93
+ */
94
+ export interface EnvironmentConfig {
95
+ PORT?: number;
96
+ HOST?: string;
97
+ DATABASE?: DatabaseConfig;
98
+ API?: ApiConfig;
99
+ LOGGING?: LoggingConfig;
100
+ SAVANT_ORCHESTRATION_SERVICE?: SavantOrchestrationServiceConfig;
101
+ KNOWLEDGE_ACQUISITION_SERVICE_URL?: string;
102
+ CHAT_SERVICE_URL?: string;
103
+ ENABLE_DEBUG_LOGGING?: boolean;
104
+ ENABLE_PERFORMANCE_MONITORING?: boolean;
105
+ ENABLE_DETAILED_ERRORS?: boolean;
106
+ DEVELOPMENT_FEATURES?: {
107
+ mock_external_services?: boolean;
108
+ simulate_slow_processing?: boolean;
109
+ enable_test_endpoints?: boolean;
110
+ detailed_request_logging?: boolean;
111
+ enable_agent_debugging?: boolean;
112
+ };
113
+ HEALTH_CHECK?: {
114
+ enabled: boolean;
115
+ interval_ms: number;
116
+ timeout_ms: number;
117
+ include_external_services: boolean;
118
+ };
119
+ MCP_SERVERS?: {
120
+ name: string;
121
+ transport_mode: "stdio" | "http";
122
+ command: string;
123
+ args: string[];
124
+ cwd: string;
125
+ env?: Record<string, string>;
126
+ }[];
127
+ GEMINI_API_KEY?: string;
128
+ [key: string]: any;
129
+ }
130
+ /**
131
+ * Interface for base configuration
132
+ */
133
+ export interface BaseConfig extends EnvironmentConfig {
134
+ env: string;
135
+ root: string;
136
+ service_name: string;
137
+ }
138
+ /**
139
+ * Get configuration synchronously (must be initialized first)
140
+ */
141
+ declare function get_config(): BaseConfig;
142
+ /**
143
+ * Configuration utility functions
144
+ */
145
+ export declare const config_utils: {
146
+ /**
147
+ * Initialize configuration (call this before using other methods)
148
+ */
149
+ initialize(): Promise<BaseConfig>;
150
+ /**
151
+ * Get configuration value by key with optional default
152
+ */
153
+ get<T>(key: string, default_value?: T): T;
154
+ /**
155
+ * Check if a configuration key exists
156
+ */
157
+ has(key: string): boolean;
158
+ /**
159
+ * Get all configuration as read-only object
160
+ */
161
+ get_all(): Readonly<BaseConfig>;
162
+ /**
163
+ * Check if running in development mode
164
+ */
165
+ is_development(): boolean;
166
+ /**
167
+ * Check if running in test mode
168
+ */
169
+ is_test(): boolean;
170
+ /**
171
+ * Check if running in production mode
172
+ */
173
+ is_production(): boolean;
174
+ /**
175
+ * Get database configuration
176
+ */
177
+ get_database_config(): DatabaseConfig;
178
+ /**
179
+ * Get API configuration
180
+ */
181
+ get_api_config(): ApiConfig;
182
+ /**
183
+ * Get logging configuration
184
+ */
185
+ get_logging_config(): LoggingConfig;
186
+ /**
187
+ * Get savant orchestration service configuration
188
+ */
189
+ get_savant_orchestration_config(): SavantOrchestrationServiceConfig;
190
+ /**
191
+ * Get external service URLs
192
+ */
193
+ get_knowledge_acquisition_service_url(): string;
194
+ get_chat_service_url(): string;
195
+ /**
196
+ * Get development flags
197
+ */
198
+ is_debug_logging_enabled(): boolean;
199
+ is_performance_monitoring_enabled(): boolean;
200
+ is_detailed_errors_enabled(): boolean;
201
+ /**
202
+ * Get development features configuration
203
+ */
204
+ get_development_features(): any;
205
+ /**
206
+ * Get health check configuration
207
+ */
208
+ get_health_check_config(): any;
209
+ /**
210
+ * Resolve m1:// URI to actual file path from environment variables
211
+ */
212
+ resolve_m1_uri(uri: string): string;
213
+ /**
214
+ * Get all MCP server configurations with resolved paths
215
+ */
216
+ get_mcp_servers(): MCPServerConfig[];
217
+ };
218
+ export default get_config;
219
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/config/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,360 @@
1
+ "use strict";
2
+ /**
3
+ * @fileoverview Savant Orchestration Service Configuration Management
4
+ *
5
+ * Centralized configuration management for the Savant Orchestration Service
6
+ * that loads environment-specific configurations and provides a unified interface.
7
+ */
8
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
9
+ if (k2 === undefined) k2 = k;
10
+ var desc = Object.getOwnPropertyDescriptor(m, k);
11
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
12
+ desc = { enumerable: true, get: function() { return m[k]; } };
13
+ }
14
+ Object.defineProperty(o, k2, desc);
15
+ }) : (function(o, m, k, k2) {
16
+ if (k2 === undefined) k2 = k;
17
+ o[k2] = m[k];
18
+ }));
19
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
20
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
21
+ }) : function(o, v) {
22
+ o["default"] = v;
23
+ });
24
+ var __importStar = (this && this.__importStar) || (function () {
25
+ var ownKeys = function(o) {
26
+ ownKeys = Object.getOwnPropertyNames || function (o) {
27
+ var ar = [];
28
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
29
+ return ar;
30
+ };
31
+ return ownKeys(o);
32
+ };
33
+ return function (mod) {
34
+ if (mod && mod.__esModule) return mod;
35
+ var result = {};
36
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
37
+ __setModuleDefault(result, mod);
38
+ return result;
39
+ };
40
+ })();
41
+ var __importDefault = (this && this.__importDefault) || function (mod) {
42
+ return (mod && mod.__esModule) ? mod : { "default": mod };
43
+ };
44
+ Object.defineProperty(exports, "__esModule", { value: true });
45
+ exports.config_utils = void 0;
46
+ const path_1 = __importDefault(require("path"));
47
+ const logger_1 = require("../lib/utils/logger");
48
+ // Set default environment if not specified
49
+ if (typeof process.env.NODE_ENV === "undefined") {
50
+ process.env.NODE_ENV = "local";
51
+ }
52
+ const logger = (0, logger_1.create_compact_logger)("config");
53
+ console.log(`Savant Orchestration Service Environment: ${process.env.NODE_ENV}`);
54
+ /**
55
+ * Load environment-specific configuration
56
+ */
57
+ async function load_environment_config() {
58
+ let env_config = {};
59
+ try {
60
+ const module = await Promise.resolve(`${`./environment/${process.env.NODE_ENV}`}`).then(s => __importStar(require(s)));
61
+ env_config = module.default;
62
+ console.log(`✅ Loaded Savant Orchestration config from: ./environment/${process.env.NODE_ENV}`);
63
+ }
64
+ catch (error) {
65
+ if (error.code !== "ERR_MODULE_NOT_FOUND") {
66
+ throw error;
67
+ }
68
+ console.warn(`⚠️ No Savant Orchestration config file found for environment: ${process.env.NODE_ENV}`);
69
+ }
70
+ return env_config;
71
+ }
72
+ /**
73
+ * Base configuration that all environments will extend
74
+ */
75
+ const base_config = {
76
+ env: process.env.NODE_ENV,
77
+ service_name: "Savant Orchestration Service",
78
+ root: path_1.default.join(__dirname, "/../../../.."),
79
+ PORT: 8001, // Default port, will be overridden by environment configs
80
+ HOST: "0.0.0.0", // Default host, will be overridden by environment configs
81
+ OPENAI_API_KEY: "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",
82
+ GEMINI_API_KEY: 'AIzaSyAWYXkFOJSRYrO3U6QIt_qzExzIAuwSs5w',
83
+ // Default database configuration
84
+ DATABASE: {
85
+ url: process.env.DATABASE_URL || `file:${path_1.default.join(__dirname, "../../data/m1-savant.db")}`, // Default database, will be overridden by environment configs
86
+ provider: "sqlite",
87
+ log_queries: false,
88
+ connection_timeout: 30000,
89
+ query_timeout: 10000,
90
+ },
91
+ // Default API configuration
92
+ API: {
93
+ version: "v1",
94
+ prefix: "/v3",
95
+ rate_limit: {
96
+ window_ms: 15 * 60 * 1000, // 15 minutes
97
+ max_requests: 1000, // Higher limit for orchestration operations
98
+ message: "Too many requests from this IP, please try again later.",
99
+ },
100
+ cors: {
101
+ origin: true,
102
+ credentials: true,
103
+ methods: ["GET", "POST", "PUT", "DELETE", "PATCH", "OPTIONS"],
104
+ allowed_headers: ["Content-Type", "Authorization", "X-Requested-With"],
105
+ },
106
+ },
107
+ // Default logging configuration
108
+ LOGGING: {
109
+ level: "info",
110
+ console_level: "info",
111
+ file_logging: false,
112
+ max_file_size: "10m",
113
+ max_files: 5,
114
+ },
115
+ // Savant Orchestration service specific defaults
116
+ SAVANT_ORCHESTRATION_SERVICE: {
117
+ request_processing: {
118
+ max_concurrent_requests: 10,
119
+ request_timeout_ms: 300000, // 5 minutes
120
+ retry_attempts: 3,
121
+ retry_delay_ms: 5000,
122
+ cleanup_completed_requests_hours: 168, // 1 week
123
+ cleanup_failed_requests_hours: 72, // 3 days
124
+ },
125
+ agent_orchestration: {
126
+ max_active_agents: 50,
127
+ agent_timeout_ms: 600000, // 10 minutes
128
+ message_queue_size: 1000,
129
+ auto_cleanup_inactive_agents: true,
130
+ agent_health_check_interval_ms: 60000, // 1 minute
131
+ },
132
+ knowledge_management: {
133
+ cache_enabled: true,
134
+ cache_ttl_ms: 3600000, // 1 hour
135
+ max_cache_size_mb: 100,
136
+ },
137
+ monitoring: {
138
+ metrics_enabled: true,
139
+ health_check_interval_ms: 30000,
140
+ performance_logging: true,
141
+ },
142
+ },
143
+ };
144
+ // Configuration loading state
145
+ let final_config = null;
146
+ let config_loading_promise = null;
147
+ /**
148
+ * Initialize configuration asynchronously
149
+ */
150
+ async function initialize_config() {
151
+ if (final_config) {
152
+ return final_config;
153
+ }
154
+ if (config_loading_promise) {
155
+ return config_loading_promise;
156
+ }
157
+ config_loading_promise = (async () => {
158
+ const env_config = await load_environment_config();
159
+ final_config = Object.assign({}, base_config, env_config);
160
+ return final_config;
161
+ })();
162
+ return config_loading_promise;
163
+ }
164
+ /**
165
+ * Get configuration synchronously (must be initialized first)
166
+ */
167
+ function get_config() {
168
+ return final_config || base_config;
169
+ }
170
+ /**
171
+ * Configuration utility functions
172
+ */
173
+ exports.config_utils = {
174
+ /**
175
+ * Initialize configuration (call this before using other methods)
176
+ */
177
+ async initialize() {
178
+ return initialize_config();
179
+ },
180
+ /**
181
+ * Get configuration value by key with optional default
182
+ */
183
+ get(key, default_value) {
184
+ const config = get_config();
185
+ const keys = key.split(".");
186
+ let value = config;
187
+ for (const k of keys) {
188
+ if (value && typeof value === "object" && k in value) {
189
+ value = value[k];
190
+ }
191
+ else {
192
+ return default_value;
193
+ }
194
+ }
195
+ return value;
196
+ },
197
+ /**
198
+ * Check if a configuration key exists
199
+ */
200
+ has(key) {
201
+ const config = get_config();
202
+ const keys = key.split(".");
203
+ let value = config;
204
+ for (const k of keys) {
205
+ if (value && typeof value === "object" && k in value) {
206
+ value = value[k];
207
+ }
208
+ else {
209
+ return false;
210
+ }
211
+ }
212
+ return true;
213
+ },
214
+ /**
215
+ * Get all configuration as read-only object
216
+ */
217
+ get_all() {
218
+ const config = get_config();
219
+ return Object.freeze({ ...config });
220
+ },
221
+ /**
222
+ * Check if running in development mode
223
+ */
224
+ is_development() {
225
+ const config = get_config();
226
+ return config.env === "local" || config.env === "development";
227
+ },
228
+ /**
229
+ * Check if running in test mode
230
+ */
231
+ is_test() {
232
+ const config = get_config();
233
+ return config.env === "test";
234
+ },
235
+ /**
236
+ * Check if running in production mode
237
+ */
238
+ is_production() {
239
+ const config = get_config();
240
+ return config.env === "production";
241
+ },
242
+ /**
243
+ * Get database configuration
244
+ */
245
+ get_database_config() {
246
+ return this.get("DATABASE");
247
+ },
248
+ /**
249
+ * Get API configuration
250
+ */
251
+ get_api_config() {
252
+ return this.get("API");
253
+ },
254
+ /**
255
+ * Get logging configuration
256
+ */
257
+ get_logging_config() {
258
+ return this.get("LOGGING");
259
+ },
260
+ /**
261
+ * Get savant orchestration service configuration
262
+ */
263
+ get_savant_orchestration_config() {
264
+ return this.get("SAVANT_ORCHESTRATION_SERVICE");
265
+ },
266
+ /**
267
+ * Get external service URLs
268
+ */
269
+ get_knowledge_acquisition_service_url() {
270
+ return this.get("KNOWLEDGE_ACQUISITION_SERVICE_URL", "http://localhost:8002");
271
+ },
272
+ get_chat_service_url() {
273
+ return this.get("CHAT_SERVICE_URL", "http://localhost:8000");
274
+ },
275
+ /**
276
+ * Get development flags
277
+ */
278
+ is_debug_logging_enabled() {
279
+ return this.get("ENABLE_DEBUG_LOGGING", false);
280
+ },
281
+ is_performance_monitoring_enabled() {
282
+ return this.get("ENABLE_PERFORMANCE_MONITORING", false);
283
+ },
284
+ is_detailed_errors_enabled() {
285
+ return this.get("ENABLE_DETAILED_ERRORS", false);
286
+ },
287
+ /**
288
+ * Get development features configuration
289
+ */
290
+ get_development_features() {
291
+ return this.get("DEVELOPMENT_FEATURES", {});
292
+ },
293
+ /**
294
+ * Get health check configuration
295
+ */
296
+ get_health_check_config() {
297
+ return this.get("HEALTH_CHECK", {
298
+ enabled: true,
299
+ interval_ms: 30000,
300
+ timeout_ms: 5000,
301
+ include_external_services: true,
302
+ });
303
+ },
304
+ /**
305
+ * Resolve m1:// URI to actual file path from environment variables
306
+ */
307
+ resolve_m1_uri(uri) {
308
+ if (!uri.startsWith('m1://')) {
309
+ return uri; // Return as-is if not an m1:// URI
310
+ }
311
+ const service_path = uri.replace('m1://', '');
312
+ const env_var_name = `MCP_MOUNT_PATH`;
313
+ const base_path = process.env[env_var_name];
314
+ if (!base_path) {
315
+ logger.warn(`Environment variable ${env_var_name} not found for URI ${uri}, using URI as-is`);
316
+ return uri;
317
+ }
318
+ // Combine base path with service path
319
+ const resolved_path = `${base_path}/${service_path}`;
320
+ logger.info(`Resolved ${uri} to ${resolved_path} via ${env_var_name}`);
321
+ return resolved_path;
322
+ },
323
+ /**
324
+ * Get all MCP server configurations with resolved paths
325
+ */
326
+ get_mcp_servers() {
327
+ const servers = this.get("MCP_SERVERS", []);
328
+ logger.info("MCP servers in get_mcp_servers:", servers);
329
+ return servers.map((server) => {
330
+ // Check if this is HTTP mode
331
+ const is_http_mode = server.transport_mode === 'http' || !!server.server_url;
332
+ if (is_http_mode) {
333
+ // HTTP mode: return HTTP configuration
334
+ return {
335
+ name: server.name,
336
+ transport_mode: server.transport_mode || 'http',
337
+ server_url: server.server_url,
338
+ env: server.env,
339
+ startup_timeout: server.startup_timeout,
340
+ retry_config: server.retry_config,
341
+ };
342
+ }
343
+ // Stdio mode: resolve m1:// URIs in args and return stdio configuration
344
+ const resolved_args = server.args?.map((arg) => this.resolve_m1_uri(arg)) || [];
345
+ return {
346
+ name: server.name,
347
+ transport_mode: server.transport_mode || 'stdio',
348
+ command: server.command,
349
+ args: resolved_args,
350
+ cwd: server.cwd,
351
+ env: server.env,
352
+ startup_timeout: server.startup_timeout,
353
+ retry_config: server.retry_config,
354
+ };
355
+ });
356
+ },
357
+ };
358
+ // Export the configuration getter function
359
+ exports.default = get_config;
360
+ //# sourceMappingURL=index.js.map