@futdevpro/ccap 1.1.1

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 (400) hide show
  1. package/bin/ccap.js +8 -0
  2. package/cli/build/_collections/auto-start.util.d.ts +15 -0
  3. package/cli/build/_collections/auto-start.util.d.ts.map +1 -0
  4. package/cli/build/_collections/auto-start.util.js +75 -0
  5. package/cli/build/_collections/auto-start.util.js.map +1 -0
  6. package/cli/build/_collections/config.util.d.ts +13 -0
  7. package/cli/build/_collections/config.util.d.ts.map +1 -0
  8. package/cli/build/_collections/config.util.js +71 -0
  9. package/cli/build/_collections/config.util.js.map +1 -0
  10. package/cli/build/_collections/config.util.spec.d.ts +2 -0
  11. package/cli/build/_collections/config.util.spec.d.ts.map +1 -0
  12. package/cli/build/_collections/config.util.spec.js +45 -0
  13. package/cli/build/_collections/config.util.spec.js.map +1 -0
  14. package/cli/build/_collections/ensure-setup.util.d.ts +14 -0
  15. package/cli/build/_collections/ensure-setup.util.d.ts.map +1 -0
  16. package/cli/build/_collections/ensure-setup.util.js +36 -0
  17. package/cli/build/_collections/ensure-setup.util.js.map +1 -0
  18. package/cli/build/_collections/setup-wizard.util.d.ts +22 -0
  19. package/cli/build/_collections/setup-wizard.util.d.ts.map +1 -0
  20. package/cli/build/_collections/setup-wizard.util.js +275 -0
  21. package/cli/build/_collections/setup-wizard.util.js.map +1 -0
  22. package/cli/build/_collections/setup.util.d.ts +79 -0
  23. package/cli/build/_collections/setup.util.d.ts.map +1 -0
  24. package/cli/build/_collections/setup.util.js +191 -0
  25. package/cli/build/_collections/setup.util.js.map +1 -0
  26. package/cli/build/_commands/chat.d.ts +7 -0
  27. package/cli/build/_commands/chat.d.ts.map +1 -0
  28. package/cli/build/_commands/chat.js +173 -0
  29. package/cli/build/_commands/chat.js.map +1 -0
  30. package/cli/build/_commands/config.d.ts +6 -0
  31. package/cli/build/_commands/config.d.ts.map +1 -0
  32. package/cli/build/_commands/config.js +70 -0
  33. package/cli/build/_commands/config.js.map +1 -0
  34. package/cli/build/_commands/init.d.ts +8 -0
  35. package/cli/build/_commands/init.d.ts.map +1 -0
  36. package/cli/build/_commands/init.js +25 -0
  37. package/cli/build/_commands/init.js.map +1 -0
  38. package/cli/build/_commands/restart.d.ts +5 -0
  39. package/cli/build/_commands/restart.d.ts.map +1 -0
  40. package/cli/build/_commands/restart.js +21 -0
  41. package/cli/build/_commands/restart.js.map +1 -0
  42. package/cli/build/_commands/sessions.d.ts +5 -0
  43. package/cli/build/_commands/sessions.d.ts.map +1 -0
  44. package/cli/build/_commands/sessions.js +54 -0
  45. package/cli/build/_commands/sessions.js.map +1 -0
  46. package/cli/build/_commands/start.d.ts +12 -0
  47. package/cli/build/_commands/start.d.ts.map +1 -0
  48. package/cli/build/_commands/start.js +75 -0
  49. package/cli/build/_commands/start.js.map +1 -0
  50. package/cli/build/_commands/status.d.ts +6 -0
  51. package/cli/build/_commands/status.d.ts.map +1 -0
  52. package/cli/build/_commands/status.js +71 -0
  53. package/cli/build/_commands/status.js.map +1 -0
  54. package/cli/build/_commands/stop.d.ts +6 -0
  55. package/cli/build/_commands/stop.d.ts.map +1 -0
  56. package/cli/build/_commands/stop.js +41 -0
  57. package/cli/build/_commands/stop.js.map +1 -0
  58. package/cli/build/_commands/vault-key.d.ts +7 -0
  59. package/cli/build/_commands/vault-key.d.ts.map +1 -0
  60. package/cli/build/_commands/vault-key.js +36 -0
  61. package/cli/build/_commands/vault-key.js.map +1 -0
  62. package/cli/build/_commands/version.d.ts +5 -0
  63. package/cli/build/_commands/version.d.ts.map +1 -0
  64. package/cli/build/_commands/version.js +13 -0
  65. package/cli/build/_commands/version.js.map +1 -0
  66. package/cli/build/program.d.ts +3 -0
  67. package/cli/build/program.d.ts.map +1 -0
  68. package/cli/build/program.js +97 -0
  69. package/cli/build/program.js.map +1 -0
  70. package/client-dist/3rdpartylicenses.txt +569 -0
  71. package/client-dist/browser/chunk-KJ7FQNUG.js +1 -0
  72. package/client-dist/browser/chunk-UTNU5A7U.js +218 -0
  73. package/client-dist/browser/index.html +13 -0
  74. package/client-dist/browser/main-RHNH7LDD.js +2 -0
  75. package/client-dist/browser/polyfills-HGDOEU5L.js +2 -0
  76. package/client-dist/browser/styles-VWWGDWT7.css +1 -0
  77. package/package.json +54 -0
  78. package/server/build/package.json +60 -0
  79. package/server/build/src/_collections/consts/agent.const.js +26 -0
  80. package/server/build/src/_collections/consts/agent.const.js.map +1 -0
  81. package/server/build/src/_collections/consts/compacting.const.js +14 -0
  82. package/server/build/src/_collections/consts/compacting.const.js.map +1 -0
  83. package/server/build/src/_collections/consts/run-status-transitions.const.js +26 -0
  84. package/server/build/src/_collections/consts/run-status-transitions.const.js.map +1 -0
  85. package/server/build/src/_collections/consts/run-status-transitions.const.spec.js +41 -0
  86. package/server/build/src/_collections/consts/run-status-transitions.const.spec.js.map +1 -0
  87. package/server/build/src/_collections/contract-templates/context.contract-template.js +19 -0
  88. package/server/build/src/_collections/contract-templates/context.contract-template.js.map +1 -0
  89. package/server/build/src/_collections/contract-templates/execution-summary.contract-template.js +20 -0
  90. package/server/build/src/_collections/contract-templates/execution-summary.contract-template.js.map +1 -0
  91. package/server/build/src/_collections/contract-templates/history-summary.contract-template.js +19 -0
  92. package/server/build/src/_collections/contract-templates/history-summary.contract-template.js.map +1 -0
  93. package/server/build/src/_collections/contract-templates/run.contract-template.js +14 -0
  94. package/server/build/src/_collections/contract-templates/run.contract-template.js.map +1 -0
  95. package/server/build/src/_collections/contract-templates/session.contract-template.js +15 -0
  96. package/server/build/src/_collections/contract-templates/session.contract-template.js.map +1 -0
  97. package/server/build/src/_enums/ccap-context-key-source.type-enum.js +15 -0
  98. package/server/build/src/_enums/ccap-context-key-source.type-enum.js.map +1 -0
  99. package/server/build/src/_enums/ccap-context-key-status.type-enum.js +14 -0
  100. package/server/build/src/_enums/ccap-context-key-status.type-enum.js.map +1 -0
  101. package/server/build/src/_enums/ccap-contract.type-enum.js +16 -0
  102. package/server/build/src/_enums/ccap-contract.type-enum.js.map +1 -0
  103. package/server/build/src/_enums/ccap-conversation-type.type-enum.js +15 -0
  104. package/server/build/src/_enums/ccap-conversation-type.type-enum.js.map +1 -0
  105. package/server/build/src/_enums/ccap-llm-call-type.type-enum.js +21 -0
  106. package/server/build/src/_enums/ccap-llm-call-type.type-enum.js.map +1 -0
  107. package/server/build/src/_enums/ccap-llm-provider-name.type-enum.js +18 -0
  108. package/server/build/src/_enums/ccap-llm-provider-name.type-enum.js.map +1 -0
  109. package/server/build/src/_enums/ccap-message-role.type-enum.js +15 -0
  110. package/server/build/src/_enums/ccap-message-role.type-enum.js.map +1 -0
  111. package/server/build/src/_enums/ccap-messaging-provider-name.type-enum.js +20 -0
  112. package/server/build/src/_enums/ccap-messaging-provider-name.type-enum.js.map +1 -0
  113. package/server/build/src/_enums/ccap-monitoring-event.type-enum.js +18 -0
  114. package/server/build/src/_enums/ccap-monitoring-event.type-enum.js.map +1 -0
  115. package/server/build/src/_enums/ccap-run-action.type-enum.js +15 -0
  116. package/server/build/src/_enums/ccap-run-action.type-enum.js.map +1 -0
  117. package/server/build/src/_enums/ccap-run-status.type-enum.js +18 -0
  118. package/server/build/src/_enums/ccap-run-status.type-enum.js.map +1 -0
  119. package/server/build/src/_enums/ccap-session-status.type-enum.js +14 -0
  120. package/server/build/src/_enums/ccap-session-status.type-enum.js.map +1 -0
  121. package/server/build/src/_enums/ccap-system-prompt-part.type-enum.js +16 -0
  122. package/server/build/src/_enums/ccap-system-prompt-part.type-enum.js.map +1 -0
  123. package/server/build/src/_enums/ccap-tool-category.type-enum.js +17 -0
  124. package/server/build/src/_enums/ccap-tool-category.type-enum.js.map +1 -0
  125. package/server/build/src/_enums/ccap-tool-entry-type.type-enum.js +13 -0
  126. package/server/build/src/_enums/ccap-tool-entry-type.type-enum.js.map +1 -0
  127. package/server/build/src/_models/data-models/ccap-conversation-active.data-model.js +34 -0
  128. package/server/build/src/_models/data-models/ccap-conversation-active.data-model.js.map +1 -0
  129. package/server/build/src/_models/data-models/ccap-conversation-full-active.data-model.js +40 -0
  130. package/server/build/src/_models/data-models/ccap-conversation-full-active.data-model.js.map +1 -0
  131. package/server/build/src/_models/data-models/ccap-conversation-full.data-model.js +30 -0
  132. package/server/build/src/_models/data-models/ccap-conversation-full.data-model.js.map +1 -0
  133. package/server/build/src/_models/data-models/ccap-conversation.data-model.js +30 -0
  134. package/server/build/src/_models/data-models/ccap-conversation.data-model.js.map +1 -0
  135. package/server/build/src/_models/data-models/ccap-error.data-model.js +40 -0
  136. package/server/build/src/_models/data-models/ccap-error.data-model.js.map +1 -0
  137. package/server/build/src/_models/data-models/ccap-run.data-model.js +56 -0
  138. package/server/build/src/_models/data-models/ccap-run.data-model.js.map +1 -0
  139. package/server/build/src/_models/data-models/ccap-secret.data-model.js +39 -0
  140. package/server/build/src/_models/data-models/ccap-secret.data-model.js.map +1 -0
  141. package/server/build/src/_models/data-models/ccap-session.data-model.js +69 -0
  142. package/server/build/src/_models/data-models/ccap-session.data-model.js.map +1 -0
  143. package/server/build/src/_models/interfaces/ccap-agentic-decision.interface.js +3 -0
  144. package/server/build/src/_models/interfaces/ccap-agentic-decision.interface.js.map +1 -0
  145. package/server/build/src/_models/interfaces/ccap-assistant-message.interface.js +3 -0
  146. package/server/build/src/_models/interfaces/ccap-assistant-message.interface.js.map +1 -0
  147. package/server/build/src/_models/interfaces/ccap-channel-identifier.interface.js +23 -0
  148. package/server/build/src/_models/interfaces/ccap-channel-identifier.interface.js.map +1 -0
  149. package/server/build/src/_models/interfaces/ccap-common-context.interface.js +3 -0
  150. package/server/build/src/_models/interfaces/ccap-common-context.interface.js.map +1 -0
  151. package/server/build/src/_models/interfaces/ccap-compacted-soul.interface.js +3 -0
  152. package/server/build/src/_models/interfaces/ccap-compacted-soul.interface.js.map +1 -0
  153. package/server/build/src/_models/interfaces/ccap-context-contract.interface.js +3 -0
  154. package/server/build/src/_models/interfaces/ccap-context-contract.interface.js.map +1 -0
  155. package/server/build/src/_models/interfaces/ccap-context-key.interface.js +3 -0
  156. package/server/build/src/_models/interfaces/ccap-context-key.interface.js.map +1 -0
  157. package/server/build/src/_models/interfaces/ccap-context-state.interface.js +3 -0
  158. package/server/build/src/_models/interfaces/ccap-context-state.interface.js.map +1 -0
  159. package/server/build/src/_models/interfaces/ccap-context.interface.js +3 -0
  160. package/server/build/src/_models/interfaces/ccap-context.interface.js.map +1 -0
  161. package/server/build/src/_models/interfaces/ccap-execution-summary-contract.interface.js +3 -0
  162. package/server/build/src/_models/interfaces/ccap-execution-summary-contract.interface.js.map +1 -0
  163. package/server/build/src/_models/interfaces/ccap-history-summary-contract.interface.js +3 -0
  164. package/server/build/src/_models/interfaces/ccap-history-summary-contract.interface.js.map +1 -0
  165. package/server/build/src/_models/interfaces/ccap-llm-call-options.interface.js +3 -0
  166. package/server/build/src/_models/interfaces/ccap-llm-call-options.interface.js.map +1 -0
  167. package/server/build/src/_models/interfaces/ccap-llm-provider.interface.js +3 -0
  168. package/server/build/src/_models/interfaces/ccap-llm-provider.interface.js.map +1 -0
  169. package/server/build/src/_models/interfaces/ccap-llm-response.interface.js +3 -0
  170. package/server/build/src/_models/interfaces/ccap-llm-response.interface.js.map +1 -0
  171. package/server/build/src/_models/interfaces/ccap-message.interface.js +3 -0
  172. package/server/build/src/_models/interfaces/ccap-message.interface.js.map +1 -0
  173. package/server/build/src/_models/interfaces/ccap-messaging-provider.interface.js +3 -0
  174. package/server/build/src/_models/interfaces/ccap-messaging-provider.interface.js.map +1 -0
  175. package/server/build/src/_models/interfaces/ccap-monitoring-event.interface.js +3 -0
  176. package/server/build/src/_models/interfaces/ccap-monitoring-event.interface.js.map +1 -0
  177. package/server/build/src/_models/interfaces/ccap-run-finalization-result.interface.js +3 -0
  178. package/server/build/src/_models/interfaces/ccap-run-finalization-result.interface.js.map +1 -0
  179. package/server/build/src/_models/interfaces/ccap-session-info.interface.js +3 -0
  180. package/server/build/src/_models/interfaces/ccap-session-info.interface.js.map +1 -0
  181. package/server/build/src/_models/interfaces/ccap-setup-config.interface.js +3 -0
  182. package/server/build/src/_models/interfaces/ccap-setup-config.interface.js.map +1 -0
  183. package/server/build/src/_models/interfaces/ccap-soul.interface.js +3 -0
  184. package/server/build/src/_models/interfaces/ccap-soul.interface.js.map +1 -0
  185. package/server/build/src/_models/interfaces/ccap-system-message.interface.js +3 -0
  186. package/server/build/src/_models/interfaces/ccap-system-message.interface.js.map +1 -0
  187. package/server/build/src/_models/interfaces/ccap-tool-call-message.interface.js +3 -0
  188. package/server/build/src/_models/interfaces/ccap-tool-call-message.interface.js.map +1 -0
  189. package/server/build/src/_models/interfaces/ccap-tool-call-result.interface.js +3 -0
  190. package/server/build/src/_models/interfaces/ccap-tool-call-result.interface.js.map +1 -0
  191. package/server/build/src/_models/interfaces/ccap-tool-group.interface.js +3 -0
  192. package/server/build/src/_models/interfaces/ccap-tool-group.interface.js.map +1 -0
  193. package/server/build/src/_models/interfaces/ccap-tool-in-context.interface.js +3 -0
  194. package/server/build/src/_models/interfaces/ccap-tool-in-context.interface.js.map +1 -0
  195. package/server/build/src/_models/interfaces/ccap-tool-result-message.interface.js +3 -0
  196. package/server/build/src/_models/interfaces/ccap-tool-result-message.interface.js.map +1 -0
  197. package/server/build/src/_models/interfaces/ccap-tool.interface.js +3 -0
  198. package/server/build/src/_models/interfaces/ccap-tool.interface.js.map +1 -0
  199. package/server/build/src/_models/interfaces/ccap-user-message.interface.js +3 -0
  200. package/server/build/src/_models/interfaces/ccap-user-message.interface.js.map +1 -0
  201. package/server/build/src/_modules/agent/agentic-loop.control-service.js +231 -0
  202. package/server/build/src/_modules/agent/agentic-loop.control-service.js.map +1 -0
  203. package/server/build/src/_modules/agent/analyze.control-service.js +189 -0
  204. package/server/build/src/_modules/agent/analyze.control-service.js.map +1 -0
  205. package/server/build/src/_modules/agent/assemble-conversation.control-service.js +204 -0
  206. package/server/build/src/_modules/agent/assemble-conversation.control-service.js.map +1 -0
  207. package/server/build/src/_modules/agent/compacting/_collections/compacting.const.js +26 -0
  208. package/server/build/src/_modules/agent/compacting/_collections/compacting.const.js.map +1 -0
  209. package/server/build/src/_modules/agent/compacting/chat-history-compacting.control-service.js +67 -0
  210. package/server/build/src/_modules/agent/compacting/chat-history-compacting.control-service.js.map +1 -0
  211. package/server/build/src/_modules/agent/compacting/context-compacting.control-service.js +41 -0
  212. package/server/build/src/_modules/agent/compacting/context-compacting.control-service.js.map +1 -0
  213. package/server/build/src/_modules/agent/compacting/conversation-full-active-compacting.control-service.js +245 -0
  214. package/server/build/src/_modules/agent/compacting/conversation-full-active-compacting.control-service.js.map +1 -0
  215. package/server/build/src/_modules/agent/compacting/execution-history-compacting.control-service.js +105 -0
  216. package/server/build/src/_modules/agent/compacting/execution-history-compacting.control-service.js.map +1 -0
  217. package/server/build/src/_modules/agent/compacting/soul-compacting.control-service.js +84 -0
  218. package/server/build/src/_modules/agent/compacting/soul-compacting.control-service.js.map +1 -0
  219. package/server/build/src/_modules/agent/compacting/tool-result-compacting.control-service.js +109 -0
  220. package/server/build/src/_modules/agent/compacting/tool-result-compacting.control-service.js.map +1 -0
  221. package/server/build/src/_modules/agent/execution.control-service.js +84 -0
  222. package/server/build/src/_modules/agent/execution.control-service.js.map +1 -0
  223. package/server/build/src/_modules/agent/history/chat-history.control-service.js +106 -0
  224. package/server/build/src/_modules/agent/history/chat-history.control-service.js.map +1 -0
  225. package/server/build/src/_modules/agent/history/execution-history.control-service.js +128 -0
  226. package/server/build/src/_modules/agent/history/execution-history.control-service.js.map +1 -0
  227. package/server/build/src/_modules/agent/history/execution-history.control-service.spec.js +154 -0
  228. package/server/build/src/_modules/agent/history/execution-history.control-service.spec.js.map +1 -0
  229. package/server/build/src/_modules/agent/new-user-message-handling.control-service.js +125 -0
  230. package/server/build/src/_modules/agent/new-user-message-handling.control-service.js.map +1 -0
  231. package/server/build/src/_modules/agent/new-user-message-handling.control-service.spec.js +105 -0
  232. package/server/build/src/_modules/agent/new-user-message-handling.control-service.spec.js.map +1 -0
  233. package/server/build/src/_modules/agent/run-finalization.control-service.js +210 -0
  234. package/server/build/src/_modules/agent/run-finalization.control-service.js.map +1 -0
  235. package/server/build/src/_modules/agent/run-flow-e2e.spec.js +226 -0
  236. package/server/build/src/_modules/agent/run-flow-e2e.spec.js.map +1 -0
  237. package/server/build/src/_modules/agent/run-flow.control-service.js +346 -0
  238. package/server/build/src/_modules/agent/run-flow.control-service.js.map +1 -0
  239. package/server/build/src/_modules/agent/run-initialization.control-service.js +47 -0
  240. package/server/build/src/_modules/agent/run-initialization.control-service.js.map +1 -0
  241. package/server/build/src/_modules/agent/run.data-service.js +149 -0
  242. package/server/build/src/_modules/agent/run.data-service.js.map +1 -0
  243. package/server/build/src/_modules/agent/session-mutex.control-service.js +96 -0
  244. package/server/build/src/_modules/agent/session-mutex.control-service.js.map +1 -0
  245. package/server/build/src/_modules/agent/session-mutex.control-service.spec.js +48 -0
  246. package/server/build/src/_modules/agent/session-mutex.control-service.spec.js.map +1 -0
  247. package/server/build/src/_modules/agent/tool-calling.control-service.js +186 -0
  248. package/server/build/src/_modules/agent/tool-calling.control-service.js.map +1 -0
  249. package/server/build/src/_modules/context/_collections/context.const.js +34 -0
  250. package/server/build/src/_modules/context/_collections/context.const.js.map +1 -0
  251. package/server/build/src/_modules/context/_collections/context.const.spec.js +20 -0
  252. package/server/build/src/_modules/context/_collections/context.const.spec.js.map +1 -0
  253. package/server/build/src/_modules/context/common-context.data-service.js +78 -0
  254. package/server/build/src/_modules/context/common-context.data-service.js.map +1 -0
  255. package/server/build/src/_modules/context/context-builder.util-service.js +139 -0
  256. package/server/build/src/_modules/context/context-builder.util-service.js.map +1 -0
  257. package/server/build/src/_modules/context/context-builder.util-service.spec.js +157 -0
  258. package/server/build/src/_modules/context/context-builder.util-service.spec.js.map +1 -0
  259. package/server/build/src/_modules/context/context-management.control-service.js +365 -0
  260. package/server/build/src/_modules/context/context-management.control-service.js.map +1 -0
  261. package/server/build/src/_modules/context/context-management.control-service.spec.js +305 -0
  262. package/server/build/src/_modules/context/context-management.control-service.spec.js.map +1 -0
  263. package/server/build/src/_modules/context/knowledge.data-service.js +70 -0
  264. package/server/build/src/_modules/context/knowledge.data-service.js.map +1 -0
  265. package/server/build/src/_modules/context/session-info-context.data-service.js +45 -0
  266. package/server/build/src/_modules/context/session-info-context.data-service.js.map +1 -0
  267. package/server/build/src/_modules/database/database.data-service.js +35 -0
  268. package/server/build/src/_modules/database/database.data-service.js.map +1 -0
  269. package/server/build/src/_modules/default-path/default-path.util-service.js +49 -0
  270. package/server/build/src/_modules/default-path/default-path.util-service.js.map +1 -0
  271. package/server/build/src/_modules/default-path/default-path.util-service.spec.js +61 -0
  272. package/server/build/src/_modules/default-path/default-path.util-service.spec.js.map +1 -0
  273. package/server/build/src/_modules/default-path/soul-file.util-service.js +111 -0
  274. package/server/build/src/_modules/default-path/soul-file.util-service.js.map +1 -0
  275. package/server/build/src/_modules/default-path/soul-file.util-service.spec.js +36 -0
  276. package/server/build/src/_modules/default-path/soul-file.util-service.spec.js.map +1 -0
  277. package/server/build/src/_modules/error-handling/ccap-analyze-cancelled.error.js +18 -0
  278. package/server/build/src/_modules/error-handling/ccap-analyze-cancelled.error.js.map +1 -0
  279. package/server/build/src/_modules/error-handling/error-collector.util-service.js +78 -0
  280. package/server/build/src/_modules/error-handling/error-collector.util-service.js.map +1 -0
  281. package/server/build/src/_modules/error-handling/error-collector.util-service.spec.js +38 -0
  282. package/server/build/src/_modules/error-handling/error-collector.util-service.spec.js.map +1 -0
  283. package/server/build/src/_modules/error-handling/error-table.data-service.js +59 -0
  284. package/server/build/src/_modules/error-handling/error-table.data-service.js.map +1 -0
  285. package/server/build/src/_modules/llm/_collections/llm.const.js +28 -0
  286. package/server/build/src/_modules/llm/_collections/llm.const.js.map +1 -0
  287. package/server/build/src/_modules/llm/_collections/llm.const.spec.js +24 -0
  288. package/server/build/src/_modules/llm/_collections/llm.const.spec.js.map +1 -0
  289. package/server/build/src/_modules/llm/_collections/prompt-templates/agentic-loop.prompt-template.js +48 -0
  290. package/server/build/src/_modules/llm/_collections/prompt-templates/agentic-loop.prompt-template.js.map +1 -0
  291. package/server/build/src/_modules/llm/_collections/prompt-templates/analyze.prompt-template.js +52 -0
  292. package/server/build/src/_modules/llm/_collections/prompt-templates/analyze.prompt-template.js.map +1 -0
  293. package/server/build/src/_modules/llm/_collections/prompt-templates/chat-history-compacting.prompt-template.js +28 -0
  294. package/server/build/src/_modules/llm/_collections/prompt-templates/chat-history-compacting.prompt-template.js.map +1 -0
  295. package/server/build/src/_modules/llm/_collections/prompt-templates/context-compacting.prompt-template.js +27 -0
  296. package/server/build/src/_modules/llm/_collections/prompt-templates/context-compacting.prompt-template.js.map +1 -0
  297. package/server/build/src/_modules/llm/_collections/prompt-templates/execution-history-compacting.prompt-template.js +45 -0
  298. package/server/build/src/_modules/llm/_collections/prompt-templates/execution-history-compacting.prompt-template.js.map +1 -0
  299. package/server/build/src/_modules/llm/_collections/prompt-templates/run-finalization.prompt-template.js +30 -0
  300. package/server/build/src/_modules/llm/_collections/prompt-templates/run-finalization.prompt-template.js.map +1 -0
  301. package/server/build/src/_modules/llm/_collections/prompt-templates/soul-compacting.prompt-template.js +26 -0
  302. package/server/build/src/_modules/llm/_collections/prompt-templates/soul-compacting.prompt-template.js.map +1 -0
  303. package/server/build/src/_modules/llm/_collections/prompt-templates/tool-description.prompt-template.js +25 -0
  304. package/server/build/src/_modules/llm/_collections/prompt-templates/tool-description.prompt-template.js.map +1 -0
  305. package/server/build/src/_modules/llm/_collections/prompt-templates/tool-result-chunking.prompt-template.js +54 -0
  306. package/server/build/src/_modules/llm/_collections/prompt-templates/tool-result-chunking.prompt-template.js.map +1 -0
  307. package/server/build/src/_modules/llm/llm.control-service.js +137 -0
  308. package/server/build/src/_modules/llm/llm.control-service.js.map +1 -0
  309. package/server/build/src/_modules/llm/providers/custom-local-ai-llm.control-service.js +128 -0
  310. package/server/build/src/_modules/llm/providers/custom-local-ai-llm.control-service.js.map +1 -0
  311. package/server/build/src/_modules/llm/providers/openai-llm.control-service.js +120 -0
  312. package/server/build/src/_modules/llm/providers/openai-llm.control-service.js.map +1 -0
  313. package/server/build/src/_modules/llm/system-prompt.data-service.js +124 -0
  314. package/server/build/src/_modules/llm/system-prompt.data-service.js.map +1 -0
  315. package/server/build/src/_modules/llm/system-prompt.data-service.spec.js +138 -0
  316. package/server/build/src/_modules/llm/system-prompt.data-service.spec.js.map +1 -0
  317. package/server/build/src/_modules/messaging/_collections/messaging.const.js +30 -0
  318. package/server/build/src/_modules/messaging/_collections/messaging.const.js.map +1 -0
  319. package/server/build/src/_modules/messaging/_collections/messaging.const.spec.js +18 -0
  320. package/server/build/src/_modules/messaging/_collections/messaging.const.spec.js.map +1 -0
  321. package/server/build/src/_modules/messaging/messaging-router.control-service.js +224 -0
  322. package/server/build/src/_modules/messaging/messaging-router.control-service.js.map +1 -0
  323. package/server/build/src/_modules/messaging/messaging-router.control-service.spec.js +141 -0
  324. package/server/build/src/_modules/messaging/messaging-router.control-service.spec.js.map +1 -0
  325. package/server/build/src/_modules/messaging/providers/ccap-client-messaging.control-service.js +256 -0
  326. package/server/build/src/_modules/messaging/providers/ccap-client-messaging.control-service.js.map +1 -0
  327. package/server/build/src/_modules/messaging/providers/ccap-client-socket-server.service.js +51 -0
  328. package/server/build/src/_modules/messaging/providers/ccap-client-socket-server.service.js.map +1 -0
  329. package/server/build/src/_modules/messaging/providers/cli-messaging.control-service.js +89 -0
  330. package/server/build/src/_modules/messaging/providers/cli-messaging.control-service.js.map +1 -0
  331. package/server/build/src/_modules/messaging/providers/discord-messaging.control-service.js +121 -0
  332. package/server/build/src/_modules/messaging/providers/discord-messaging.control-service.js.map +1 -0
  333. package/server/build/src/_modules/monitoring/monitoring.data-service.js +99 -0
  334. package/server/build/src/_modules/monitoring/monitoring.data-service.js.map +1 -0
  335. package/server/build/src/_modules/monitoring/monitoring.data-service.spec.js +50 -0
  336. package/server/build/src/_modules/monitoring/monitoring.data-service.spec.js.map +1 -0
  337. package/server/build/src/_modules/path-protection/path-protection.util-service.js +84 -0
  338. package/server/build/src/_modules/path-protection/path-protection.util-service.js.map +1 -0
  339. package/server/build/src/_modules/path-protection/path-protection.util-service.spec.js +55 -0
  340. package/server/build/src/_modules/path-protection/path-protection.util-service.spec.js.map +1 -0
  341. package/server/build/src/_modules/secrets-vault/secrets-vault.data-service.js +186 -0
  342. package/server/build/src/_modules/secrets-vault/secrets-vault.data-service.js.map +1 -0
  343. package/server/build/src/_modules/session/conversation.data-service.js +241 -0
  344. package/server/build/src/_modules/session/conversation.data-service.js.map +1 -0
  345. package/server/build/src/_modules/session/session.data-service.js +265 -0
  346. package/server/build/src/_modules/session/session.data-service.js.map +1 -0
  347. package/server/build/src/_modules/setup-config/setup-config.data-service.js +95 -0
  348. package/server/build/src/_modules/setup-config/setup-config.data-service.js.map +1 -0
  349. package/server/build/src/_modules/tools/_collections/tools.const.js +20 -0
  350. package/server/build/src/_modules/tools/_collections/tools.const.js.map +1 -0
  351. package/server/build/src/_modules/tools/fixed-tools/control/context-handling.tool.js +135 -0
  352. package/server/build/src/_modules/tools/fixed-tools/control/context-handling.tool.js.map +1 -0
  353. package/server/build/src/_modules/tools/fixed-tools/control/session-handling.tool.js +46 -0
  354. package/server/build/src/_modules/tools/fixed-tools/control/session-handling.tool.js.map +1 -0
  355. package/server/build/src/_modules/tools/fixed-tools/exec/exec.tool.js +119 -0
  356. package/server/build/src/_modules/tools/fixed-tools/exec/exec.tool.js.map +1 -0
  357. package/server/build/src/_modules/tools/fixed-tools/file-handling/file-handling.tool.js +179 -0
  358. package/server/build/src/_modules/tools/fixed-tools/file-handling/file-handling.tool.js.map +1 -0
  359. package/server/build/src/_modules/tools/fixed-tools/net/net.tool.js +97 -0
  360. package/server/build/src/_modules/tools/fixed-tools/net/net.tool.js.map +1 -0
  361. package/server/build/src/_modules/tools/fixed-tools/tool-handling/tool-handling.tool.js +100 -0
  362. package/server/build/src/_modules/tools/fixed-tools/tool-handling/tool-handling.tool.js.map +1 -0
  363. package/server/build/src/_modules/tools/tool-execution.control-service.js +110 -0
  364. package/server/build/src/_modules/tools/tool-execution.control-service.js.map +1 -0
  365. package/server/build/src/_modules/tools/tool-registry.control-service.js +124 -0
  366. package/server/build/src/_modules/tools/tool-registry.control-service.js.map +1 -0
  367. package/server/build/src/_modules/tools/tools-in-context.util-service.js +90 -0
  368. package/server/build/src/_modules/tools/tools-in-context.util-service.js.map +1 -0
  369. package/server/build/src/_modules/tools/tools-in-context.util-service.spec.js +66 -0
  370. package/server/build/src/_modules/tools/tools-in-context.util-service.spec.js.map +1 -0
  371. package/server/build/src/_routes/client-static/client-static.controller.js +54 -0
  372. package/server/build/src/_routes/client-static/client-static.controller.js.map +1 -0
  373. package/server/build/src/_routes/messaging/messaging-message-body.interface.js +3 -0
  374. package/server/build/src/_routes/messaging/messaging-message-body.interface.js.map +1 -0
  375. package/server/build/src/_routes/messaging/messaging.controller.js +77 -0
  376. package/server/build/src/_routes/messaging/messaging.controller.js.map +1 -0
  377. package/server/build/src/_routes/server/server-status/server-status.controller.js +40 -0
  378. package/server/build/src/_routes/server/server-status/server-status.controller.js.map +1 -0
  379. package/server/build/src/_routes/server/server-status/server-status.controller.spec.js +19 -0
  380. package/server/build/src/_routes/server/server-status/server-status.controller.spec.js.map +1 -0
  381. package/server/build/src/_routes/server/server-status/server-status.data-service.js +11 -0
  382. package/server/build/src/_routes/server/server-status/server-status.data-service.js.map +1 -0
  383. package/server/build/src/_routes/session/context-api.data-service.js +69 -0
  384. package/server/build/src/_routes/session/context-api.data-service.js.map +1 -0
  385. package/server/build/src/_routes/session/conversation-api.data-service.js +69 -0
  386. package/server/build/src/_routes/session/conversation-api.data-service.js.map +1 -0
  387. package/server/build/src/_routes/session/monitoring-api.data-service.js +45 -0
  388. package/server/build/src/_routes/session/monitoring-api.data-service.js.map +1 -0
  389. package/server/build/src/_routes/session/session-api.data-service.js +70 -0
  390. package/server/build/src/_routes/session/session-api.data-service.js.map +1 -0
  391. package/server/build/src/_routes/session/session.controller.js +251 -0
  392. package/server/build/src/_routes/session/session.controller.js.map +1 -0
  393. package/server/build/src/_routes/setup/setup.controller.js +255 -0
  394. package/server/build/src/_routes/setup/setup.controller.js.map +1 -0
  395. package/server/build/src/app.server.js +232 -0
  396. package/server/build/src/app.server.js.map +1 -0
  397. package/server/build/src/app.server.spec.js +24 -0
  398. package/server/build/src/app.server.spec.js.map +1 -0
  399. package/server/build/src/index.js +9 -0
  400. package/server/build/src/index.js.map +1 -0
@@ -0,0 +1,251 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CCAP_Session_Controller = void 0;
4
+ const fsm_dynamo_1 = require("@futdevpro/fsm-dynamo");
5
+ const nts_dynamo_1 = require("@futdevpro/nts-dynamo");
6
+ const messaging_router_control_service_1 = require("../../_modules/messaging/messaging-router.control-service");
7
+ const context_api_data_service_1 = require("./context-api.data-service");
8
+ const conversation_api_data_service_1 = require("./conversation-api.data-service");
9
+ const monitoring_api_data_service_1 = require("./monitoring-api.data-service");
10
+ const session_api_data_service_1 = require("./session-api.data-service");
11
+ /**
12
+ * Session controller.
13
+ * Session CRUD + context + conversation + monitoring API endpoint-ok.
14
+ */
15
+ class CCAP_Session_Controller extends nts_dynamo_1.DyNTS_Controller {
16
+ static getInstance() {
17
+ return CCAP_Session_Controller.getSingletonInstance();
18
+ }
19
+ /** Session API data-service. */
20
+ sessionApiDS = new session_api_data_service_1.CCAP_SessionApi_DataService();
21
+ /** Context API data-service. */
22
+ contextApiDS = new context_api_data_service_1.CCAP_ContextApi_DataService();
23
+ /** Conversation API data-service. */
24
+ conversationApiDS = new conversation_api_data_service_1.CCAP_ConversationApi_DataService();
25
+ /** Monitoring API data-service. */
26
+ monitoringApiDS = new monitoring_api_data_service_1.CCAP_MonitoringApi_DataService();
27
+ setupEndpoints() {
28
+ this.endpoints = [
29
+ // GET /session – session lista
30
+ new nts_dynamo_1.DyNTS_Endpoint_Params({
31
+ name: 'listSessions',
32
+ type: fsm_dynamo_1.DyFM_HttpCallType.get,
33
+ endpoint: '/',
34
+ tasks: [
35
+ async (_req, res, issuer) => {
36
+ try {
37
+ const sessions = await this.sessionApiDS.listSessions(issuer);
38
+ res.send({ sessions: sessions });
39
+ }
40
+ catch (error) {
41
+ res.status(500).send({
42
+ error: 'Failed to list sessions',
43
+ });
44
+ }
45
+ },
46
+ ],
47
+ }),
48
+ // GET /session/:id – session detail
49
+ new nts_dynamo_1.DyNTS_Endpoint_Params({
50
+ name: 'getSession',
51
+ type: fsm_dynamo_1.DyFM_HttpCallType.get,
52
+ endpoint: '/:id',
53
+ tasks: [
54
+ async (req, res, issuer) => {
55
+ try {
56
+ const sessionId = req.params.id;
57
+ const session = await this.sessionApiDS.getSessionById({
58
+ sessionId: sessionId,
59
+ issuer: issuer,
60
+ });
61
+ res.send({ session: session });
62
+ }
63
+ catch (error) {
64
+ res.status(500).send({
65
+ error: 'Failed to get session',
66
+ });
67
+ }
68
+ },
69
+ ],
70
+ }),
71
+ // PATCH /session/:id – session frissítés (név, státusz)
72
+ new nts_dynamo_1.DyNTS_Endpoint_Params({
73
+ name: 'updateSession',
74
+ type: fsm_dynamo_1.DyFM_HttpCallType.patch,
75
+ endpoint: '/:id',
76
+ tasks: [
77
+ async (req, res, issuer) => {
78
+ try {
79
+ const sessionId = req.params.id;
80
+ const updates = req.body;
81
+ const session = await this.sessionApiDS.updateSession({
82
+ sessionId: sessionId,
83
+ updates: updates,
84
+ issuer: issuer,
85
+ });
86
+ res.send({ session: session });
87
+ }
88
+ catch (error) {
89
+ res.status(500).send({
90
+ error: 'Failed to update session',
91
+ });
92
+ }
93
+ },
94
+ ],
95
+ }),
96
+ // GET /session/:id/context – context állapot
97
+ new nts_dynamo_1.DyNTS_Endpoint_Params({
98
+ name: 'getContext',
99
+ type: fsm_dynamo_1.DyFM_HttpCallType.get,
100
+ endpoint: '/:id/context',
101
+ tasks: [
102
+ async (req, res) => {
103
+ try {
104
+ const sessionId = req.params.id;
105
+ const context = this.contextApiDS.getContext({
106
+ sessionId: sessionId,
107
+ });
108
+ res.send({ context: context });
109
+ }
110
+ catch (error) {
111
+ res.status(500).send({
112
+ error: 'Failed to get context',
113
+ });
114
+ }
115
+ },
116
+ ],
117
+ }),
118
+ // PATCH /session/:id/context/keys/:key – context key művelet
119
+ new nts_dynamo_1.DyNTS_Endpoint_Params({
120
+ name: 'updateContextKey',
121
+ type: fsm_dynamo_1.DyFM_HttpCallType.patch,
122
+ endpoint: '/:id/context/keys/:key',
123
+ tasks: [
124
+ async (req, res) => {
125
+ try {
126
+ const sessionId = req.params.id;
127
+ const key = req.params.key;
128
+ const action = req.body?.action ?? '';
129
+ const result = this.contextApiDS.updateContextKey({
130
+ sessionId: sessionId,
131
+ key: key,
132
+ action: action,
133
+ });
134
+ res.send({ success: true, result: result });
135
+ }
136
+ catch (error) {
137
+ res.status(500).send({
138
+ error: 'Failed to update context key',
139
+ });
140
+ }
141
+ },
142
+ ],
143
+ }),
144
+ // GET /session/:id/messages – üzenetek lekérdezése
145
+ new nts_dynamo_1.DyNTS_Endpoint_Params({
146
+ name: 'getMessages',
147
+ type: fsm_dynamo_1.DyFM_HttpCallType.get,
148
+ endpoint: '/:id/messages',
149
+ tasks: [
150
+ async (req, res, issuer) => {
151
+ try {
152
+ const sessionId = req.params.id;
153
+ const viewMode = (req.query.viewMode ?? 'conversation') + '';
154
+ const messages = await this.conversationApiDS.getMessages({
155
+ sessionId: sessionId,
156
+ viewMode: viewMode,
157
+ issuer: issuer,
158
+ });
159
+ res.send({ messages: messages });
160
+ }
161
+ catch (error) {
162
+ res.status(500).send({
163
+ error: 'Failed to get messages',
164
+ });
165
+ }
166
+ },
167
+ ],
168
+ }),
169
+ // POST /session/:id/messages – új üzenet küldés
170
+ new nts_dynamo_1.DyNTS_Endpoint_Params({
171
+ name: 'sendMessage',
172
+ type: fsm_dynamo_1.DyFM_HttpCallType.post,
173
+ endpoint: '/:id/messages',
174
+ tasks: [
175
+ async (req, res, issuer) => {
176
+ try {
177
+ const sessionId = req.params.id;
178
+ const content = req.body?.content ?? '';
179
+ const message = await this.conversationApiDS.sendMessage({
180
+ sessionId: sessionId,
181
+ content: content,
182
+ issuer: issuer,
183
+ });
184
+ // Run flow trigger fire-and-forget (válasz azonnal, run háttérben)
185
+ messaging_router_control_service_1.CCAP_MessagingRouter_ControlService.getInstance()
186
+ .handleNewUserMessageForSession({
187
+ sessionId: sessionId,
188
+ message: content,
189
+ })
190
+ .catch(() => { });
191
+ res.send({ message: message });
192
+ }
193
+ catch (error) {
194
+ res.status(500).send({
195
+ error: 'Failed to send message',
196
+ });
197
+ }
198
+ },
199
+ ],
200
+ }),
201
+ // GET /session/:id/events – monitoring event-ek
202
+ new nts_dynamo_1.DyNTS_Endpoint_Params({
203
+ name: 'getMonitoringEvents',
204
+ type: fsm_dynamo_1.DyFM_HttpCallType.get,
205
+ endpoint: '/:id/events',
206
+ tasks: [
207
+ async (req, res) => {
208
+ try {
209
+ const sessionId = req.params.id;
210
+ const events = this.monitoringApiDS.getEventsBySession({
211
+ sessionId: sessionId,
212
+ });
213
+ res.send({ events: events });
214
+ }
215
+ catch (error) {
216
+ res.status(500).send({
217
+ error: 'Failed to get monitoring events',
218
+ });
219
+ }
220
+ },
221
+ ],
222
+ }),
223
+ // GET /session/:id/runs/:runId/trace – run trace
224
+ new nts_dynamo_1.DyNTS_Endpoint_Params({
225
+ name: 'getRunTrace',
226
+ type: fsm_dynamo_1.DyFM_HttpCallType.get,
227
+ endpoint: '/:id/runs/:runId/trace',
228
+ tasks: [
229
+ async (req, res) => {
230
+ try {
231
+ const sessionId = req.params.id;
232
+ const runId = req.params.runId;
233
+ const trace = this.monitoringApiDS.getRunTrace({
234
+ sessionId: sessionId,
235
+ runId: runId,
236
+ });
237
+ res.send({ trace: trace });
238
+ }
239
+ catch (error) {
240
+ res.status(500).send({
241
+ error: 'Failed to get run trace',
242
+ });
243
+ }
244
+ },
245
+ ],
246
+ }),
247
+ ];
248
+ }
249
+ }
250
+ exports.CCAP_Session_Controller = CCAP_Session_Controller;
251
+ //# sourceMappingURL=session.controller.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"session.controller.js","sourceRoot":"","sources":["../../../../src/_routes/session/session.controller.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,255 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Setup_Controller = void 0;
4
+ const fsm_dynamo_1 = require("@futdevpro/fsm-dynamo");
5
+ const nts_dynamo_1 = require("@futdevpro/nts-dynamo");
6
+ const ccap_llm_call_type_type_enum_1 = require("../../_enums/ccap-llm-call-type.type-enum");
7
+ const default_path_util_service_1 = require("../../_modules/default-path/default-path.util-service");
8
+ const soul_file_util_service_1 = require("../../_modules/default-path/soul-file.util-service");
9
+ const llm_control_service_1 = require("../../_modules/llm/llm.control-service");
10
+ const openai_llm_control_service_1 = require("../../_modules/llm/providers/openai-llm.control-service");
11
+ const setup_config_data_service_1 = require("../../_modules/setup-config/setup-config.data-service");
12
+ const secrets_vault_data_service_1 = require("../../_modules/secrets-vault/secrets-vault.data-service");
13
+ /** Vault kulcs a setup completed flag-hez. */
14
+ const SETUP_COMPLETED_KEY = 'CCAP_SETUP_COMPLETED';
15
+ /** Vault kulcsok AI providerekhez (provider id -> vault key). */
16
+ const AI_PROVIDER_VAULT_KEYS = {
17
+ 'open-ai': 'CCAP_OPENAI_API_KEY',
18
+ 'custom-local-ai': 'CCAP_LOCAL_AI_BASE_URL',
19
+ };
20
+ /**
21
+ * Setup flow API controller.
22
+ * GET /setup/status – setup completed flag (vault-ból).
23
+ * POST /setup – titkok írása a vault-ba, setup completed beállítása.
24
+ */
25
+ class Setup_Controller extends nts_dynamo_1.DyNTS_Controller {
26
+ static getInstance() {
27
+ return Setup_Controller.getSingletonInstance();
28
+ }
29
+ setupEndpoints() {
30
+ this.endpoints = [
31
+ new nts_dynamo_1.DyNTS_Endpoint_Params({
32
+ name: 'getSetupStatus',
33
+ type: fsm_dynamo_1.DyFM_HttpCallType.get,
34
+ endpoint: '/status',
35
+ tasks: [
36
+ async (_req, res, _issuer) => {
37
+ try {
38
+ const vault = new secrets_vault_data_service_1.CCAP_SecretsVault_DataService({ issuer: 'setup-api' });
39
+ const value = await vault.getSecret(SETUP_COMPLETED_KEY);
40
+ const setupCompleted = value === 'true';
41
+ res.send({ setupCompleted });
42
+ }
43
+ catch {
44
+ res.send({ setupCompleted: false });
45
+ }
46
+ },
47
+ ],
48
+ }),
49
+ new nts_dynamo_1.DyNTS_Endpoint_Params({
50
+ name: 'getSetupConfig',
51
+ type: fsm_dynamo_1.DyFM_HttpCallType.get,
52
+ endpoint: '/config',
53
+ tasks: [
54
+ async (_req, res, _issuer) => {
55
+ try {
56
+ const setupConfig = setup_config_data_service_1.CCAP_SetupConfig_DataService.getInstance();
57
+ let config = setupConfig.getConfigSync();
58
+ if (!config) {
59
+ await setupConfig.loadFromVault();
60
+ config = setupConfig.getConfigSync();
61
+ }
62
+ if (!config) {
63
+ res.status(200).send({ config: null });
64
+ return;
65
+ }
66
+ res.status(200).send({ config: config });
67
+ }
68
+ catch {
69
+ res.status(200).send({ config: null });
70
+ }
71
+ },
72
+ ],
73
+ }),
74
+ new nts_dynamo_1.DyNTS_Endpoint_Params({
75
+ name: 'getSoulStatus',
76
+ type: fsm_dynamo_1.DyFM_HttpCallType.get,
77
+ endpoint: '/soul-status',
78
+ tasks: [
79
+ async (_req, res, _issuer) => {
80
+ try {
81
+ const basePath = default_path_util_service_1.CCAP_DefaultPath_UtilService.getDefaultPath();
82
+ const loadResult = soul_file_util_service_1.CCAP_SoulFile_UtilService.loadSoulContent(basePath);
83
+ const hasSoul = loadResult.content.trim().length > 0;
84
+ res.status(200).send({ hasSoul: hasSoul });
85
+ }
86
+ catch {
87
+ res.status(200).send({ hasSoul: false });
88
+ }
89
+ },
90
+ ],
91
+ }),
92
+ new nts_dynamo_1.DyNTS_Endpoint_Params({
93
+ name: 'generateSoul',
94
+ type: fsm_dynamo_1.DyFM_HttpCallType.post,
95
+ endpoint: '/generate-soul',
96
+ tasks: [
97
+ async (req, res, _issuer) => {
98
+ try {
99
+ const body = (req.body ?? {});
100
+ const llm = llm_control_service_1.CCAP_Llm_ControlService.getInstance();
101
+ const systemPrompt = 'You are a helper. Output only the requested text, no explanation or markdown.';
102
+ const userPrompt = 'Generate a concise system prompt (soul) for an AI coding assistant named CCAP. '
103
+ + 'Describe that it follows project rules and specifications, helps with code and setup. '
104
+ + 'Keep it under 300 words. Output only the soul text.';
105
+ let content;
106
+ if (typeof body.openaiApiKey === 'string' && body.openaiApiKey.trim().length > 0) {
107
+ const tempProvider = new openai_llm_control_service_1.CCAP_OpenAiLlm_ControlService({ apiKey: body.openaiApiKey.trim() });
108
+ const response = await tempProvider.call({
109
+ systemPrompt: systemPrompt,
110
+ messages: [{ role: 'user', content: userPrompt }],
111
+ });
112
+ content = (response.content?.trim() ?? '') || 'You are CCAP, an AI coding assistant.';
113
+ }
114
+ else {
115
+ const response = await llm.callLlm({
116
+ sessionId: 'setup',
117
+ callType: ccap_llm_call_type_type_enum_1.CCAP_LlmCallType_Type.soulCompacting,
118
+ systemPrompt: systemPrompt,
119
+ messages: [{ role: 'user', content: userPrompt }],
120
+ });
121
+ content = (response.content?.trim() ?? '') || 'You are CCAP, an AI coding assistant.';
122
+ }
123
+ const basePath = default_path_util_service_1.CCAP_DefaultPath_UtilService.getDefaultPath();
124
+ soul_file_util_service_1.CCAP_SoulFile_UtilService.writeSoulContent(basePath, content);
125
+ res.status(200).send({ success: true, content: content });
126
+ }
127
+ catch (error) {
128
+ const message = error instanceof Error ? error.message : String(error);
129
+ res.status(500).send({ error: message });
130
+ }
131
+ },
132
+ ],
133
+ }),
134
+ new nts_dynamo_1.DyNTS_Endpoint_Params({
135
+ name: 'runSetup',
136
+ type: fsm_dynamo_1.DyFM_HttpCallType.post,
137
+ endpoint: '/',
138
+ tasks: [
139
+ async (req, res, _issuer) => {
140
+ try {
141
+ const body = (req.body ?? {});
142
+ const vault = new secrets_vault_data_service_1.CCAP_SecretsVault_DataService({ issuer: 'setup-api' });
143
+ if (!vault.isVaultAvailable()) {
144
+ res.status(503).send({
145
+ error: 'Vault not available (set CCAP_VAULT_MASTER_KEY)',
146
+ });
147
+ return;
148
+ }
149
+ // Régi mezők (backward compat)
150
+ if (typeof body.openaiApiKey === 'string' && body.openaiApiKey.length > 0) {
151
+ await vault.setSecret({
152
+ key: 'CCAP_OPENAI_API_KEY',
153
+ value: body.openaiApiKey,
154
+ metadata: { source: 'setup' },
155
+ });
156
+ }
157
+ if (typeof body.discordBotToken === 'string'
158
+ && body.discordBotToken.length > 0) {
159
+ await vault.setSecret({
160
+ key: 'CCAP_DISCORD_BOT_TOKEN',
161
+ value: body.discordBotToken,
162
+ metadata: { source: 'setup' },
163
+ });
164
+ }
165
+ if (typeof body.localAiBaseUrl === 'string'
166
+ && body.localAiBaseUrl.length > 0) {
167
+ await vault.setSecret({
168
+ key: 'CCAP_LOCAL_AI_BASE_URL',
169
+ value: body.localAiBaseUrl,
170
+ metadata: { source: 'setup' },
171
+ });
172
+ }
173
+ // aiProviderConfig -> vault kulcsok (titkok)
174
+ const aiConfig = body.aiProviderConfig ?? {};
175
+ for (const [providerId, vaultKey] of Object.entries(AI_PROVIDER_VAULT_KEYS)) {
176
+ const cfg = aiConfig[providerId];
177
+ if (!cfg) {
178
+ continue;
179
+ }
180
+ if (providerId === 'open-ai' && typeof cfg.apiKey === 'string' && cfg.apiKey.length > 0) {
181
+ await vault.setSecret({
182
+ key: vaultKey,
183
+ value: cfg.apiKey,
184
+ metadata: { source: 'setup' },
185
+ });
186
+ }
187
+ if (providerId === 'custom-local-ai'
188
+ && typeof cfg.baseUrl === 'string'
189
+ && cfg.baseUrl.length > 0) {
190
+ await vault.setSecret({
191
+ key: vaultKey,
192
+ value: cfg.baseUrl,
193
+ metadata: { source: 'setup' },
194
+ });
195
+ }
196
+ }
197
+ // messageProviderConfig -> vault (Discord token)
198
+ const msgConfig = body.messageProviderConfig ?? {};
199
+ const discordCfg = msgConfig['discord'];
200
+ if (typeof discordCfg?.botToken === 'string'
201
+ && discordCfg.botToken.length > 0) {
202
+ await vault.setSecret({
203
+ key: 'CCAP_DISCORD_BOT_TOKEN',
204
+ value: discordCfg.botToken,
205
+ metadata: { source: 'setup' },
206
+ });
207
+ }
208
+ // Config objektum (titkok nélkül) mentése
209
+ const enabledAi = body.enabledAiProviders ?? [];
210
+ const enabledMsg = body.enabledMessageProviders ?? [];
211
+ const aiProviderConfigSanitized = {};
212
+ for (const [k, v] of Object.entries(aiConfig)) {
213
+ aiProviderConfigSanitized[k] = {
214
+ model: v.model,
215
+ baseUrl: v.baseUrl,
216
+ };
217
+ }
218
+ const configToSave = {
219
+ mongodbUri: body.mongodbUri,
220
+ useOpenClawPath: body.useOpenClawPath === true,
221
+ defaultPathOverride: body.defaultPathOverride,
222
+ enabledAiProviders: enabledAi,
223
+ enabledMessageProviders: enabledMsg,
224
+ aiProviderConfig: aiProviderConfigSanitized,
225
+ messageProviderConfig: Object.keys(msgConfig).reduce((acc, key) => {
226
+ acc[key] = {};
227
+ return acc;
228
+ }, {}),
229
+ autoStartWithSystem: body.autoStartWithSystem === true,
230
+ };
231
+ const setupConfigService = setup_config_data_service_1.CCAP_SetupConfig_DataService.getInstance();
232
+ await setupConfigService.saveConfigToVault(configToSave);
233
+ if (typeof body.soulContent === 'string' && body.soulContent.trim().length > 0) {
234
+ const basePath = default_path_util_service_1.CCAP_DefaultPath_UtilService.getDefaultPath();
235
+ soul_file_util_service_1.CCAP_SoulFile_UtilService.writeSoulContent(basePath, body.soulContent.trim());
236
+ }
237
+ await vault.setSecret({
238
+ key: SETUP_COMPLETED_KEY,
239
+ value: 'true',
240
+ metadata: { source: 'setup' },
241
+ });
242
+ res.status(200).send({ success: true });
243
+ }
244
+ catch (error) {
245
+ const message = error instanceof Error ? error.message : String(error);
246
+ res.status(500).send({ error: message });
247
+ }
248
+ },
249
+ ],
250
+ }),
251
+ ];
252
+ }
253
+ }
254
+ exports.Setup_Controller = Setup_Controller;
255
+ //# sourceMappingURL=setup.controller.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setup.controller.js","sourceRoot":"","sources":["../../../../src/_routes/setup/setup.controller.ts"],"names":[],"mappings":"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"}