@chozzz/vargos 2.0.6 → 2.0.8

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 (283) hide show
  1. package/dist/cli.js +14 -5
  2. package/dist/cli.js.map +1 -1
  3. package/dist/edge/mcp/index.d.ts +33 -0
  4. package/dist/edge/mcp/index.d.ts.map +1 -0
  5. package/dist/edge/mcp/index.js +217 -0
  6. package/dist/edge/mcp/index.js.map +1 -0
  7. package/dist/edge/webhooks/index.d.ts +33 -0
  8. package/dist/edge/webhooks/index.d.ts.map +1 -0
  9. package/dist/edge/webhooks/index.js +231 -0
  10. package/dist/edge/webhooks/index.js.map +1 -0
  11. package/dist/edge/webhooks/transform.d.ts +8 -0
  12. package/dist/edge/webhooks/transform.d.ts.map +1 -0
  13. package/dist/edge/webhooks/transform.js +29 -0
  14. package/dist/edge/webhooks/transform.js.map +1 -0
  15. package/dist/gateway/bus.d.ts +48 -0
  16. package/dist/gateway/bus.d.ts.map +1 -0
  17. package/dist/gateway/bus.js +2 -0
  18. package/dist/gateway/bus.js.map +1 -0
  19. package/dist/gateway/decorators.d.ts +40 -0
  20. package/dist/gateway/decorators.d.ts.map +1 -0
  21. package/dist/gateway/decorators.js +43 -0
  22. package/dist/gateway/decorators.js.map +1 -0
  23. package/dist/gateway/emitter.d.ts +42 -0
  24. package/dist/gateway/emitter.d.ts.map +1 -0
  25. package/dist/gateway/emitter.js +259 -0
  26. package/dist/gateway/emitter.js.map +1 -0
  27. package/dist/gateway/events.d.ts +343 -0
  28. package/dist/gateway/events.d.ts.map +1 -0
  29. package/dist/gateway/events.js +7 -0
  30. package/dist/gateway/events.js.map +1 -0
  31. package/dist/gateway/tcp-server.d.ts +7 -0
  32. package/dist/gateway/tcp-server.d.ts.map +1 -0
  33. package/dist/gateway/tcp-server.js +115 -0
  34. package/dist/gateway/tcp-server.js.map +1 -0
  35. package/dist/index.d.ts +2 -0
  36. package/dist/index.d.ts.map +1 -0
  37. package/dist/index.js +74 -0
  38. package/dist/index.js.map +1 -0
  39. package/dist/scripts/migrate-cron-sessions.d.ts +10 -0
  40. package/dist/scripts/migrate-cron-sessions.d.ts.map +1 -0
  41. package/dist/scripts/migrate-cron-sessions.js +139 -0
  42. package/dist/scripts/migrate-cron-sessions.js.map +1 -0
  43. package/dist/scripts/seed.d.ts +2 -0
  44. package/dist/scripts/seed.d.ts.map +1 -0
  45. package/dist/scripts/seed.js +4 -0
  46. package/dist/scripts/seed.js.map +1 -0
  47. package/dist/services/agent/directives.d.ts +14 -0
  48. package/dist/services/agent/directives.d.ts.map +1 -0
  49. package/dist/services/agent/directives.js +32 -0
  50. package/dist/services/agent/directives.js.map +1 -0
  51. package/dist/services/agent/index.d.ts +104 -0
  52. package/dist/services/agent/index.d.ts.map +1 -0
  53. package/dist/services/agent/index.js +534 -0
  54. package/dist/services/agent/index.js.map +1 -0
  55. package/dist/services/agent/persona.d.ts +15 -0
  56. package/dist/services/agent/persona.d.ts.map +1 -0
  57. package/dist/services/agent/persona.js +63 -0
  58. package/dist/services/agent/persona.js.map +1 -0
  59. package/dist/services/agent/prompt-interpolate.d.ts +41 -0
  60. package/dist/services/agent/prompt-interpolate.d.ts.map +1 -0
  61. package/dist/services/agent/prompt-interpolate.js +102 -0
  62. package/dist/services/agent/prompt-interpolate.js.map +1 -0
  63. package/dist/services/agent/schema.d.ts +10 -0
  64. package/dist/services/agent/schema.d.ts.map +1 -0
  65. package/dist/services/agent/schema.js +5 -0
  66. package/dist/services/agent/schema.js.map +1 -0
  67. package/dist/services/agent/tools.d.ts +26 -0
  68. package/dist/services/agent/tools.d.ts.map +1 -0
  69. package/dist/services/agent/tools.js +85 -0
  70. package/dist/services/agent/tools.js.map +1 -0
  71. package/dist/services/channels/base-adapter.d.ts +61 -0
  72. package/dist/services/channels/base-adapter.d.ts.map +1 -0
  73. package/dist/services/channels/base-adapter.js +181 -0
  74. package/dist/services/channels/base-adapter.js.map +1 -0
  75. package/dist/services/channels/contracts.d.ts +75 -0
  76. package/dist/services/channels/contracts.d.ts.map +1 -0
  77. package/dist/services/channels/contracts.js +6 -0
  78. package/dist/services/channels/contracts.js.map +1 -0
  79. package/dist/services/channels/debounce.d.ts +22 -0
  80. package/dist/services/channels/debounce.d.ts.map +1 -0
  81. package/dist/services/channels/debounce.js +53 -0
  82. package/dist/services/channels/debounce.js.map +1 -0
  83. package/dist/services/channels/dedupe.d.ts +19 -0
  84. package/dist/services/channels/dedupe.d.ts.map +1 -0
  85. package/dist/services/channels/dedupe.js +52 -0
  86. package/dist/services/channels/dedupe.js.map +1 -0
  87. package/dist/services/channels/delivery.d.ts +12 -0
  88. package/dist/services/channels/delivery.d.ts.map +1 -0
  89. package/dist/services/channels/delivery.js +53 -0
  90. package/dist/services/channels/delivery.js.map +1 -0
  91. package/dist/services/channels/index.d.ts +53 -0
  92. package/dist/services/channels/index.d.ts.map +1 -0
  93. package/dist/services/channels/index.js +405 -0
  94. package/dist/services/channels/index.js.map +1 -0
  95. package/dist/services/channels/link-expand.d.ts +8 -0
  96. package/dist/services/channels/link-expand.d.ts.map +1 -0
  97. package/dist/services/channels/link-expand.js +28 -0
  98. package/dist/services/channels/link-expand.js.map +1 -0
  99. package/dist/services/channels/media-extract.d.ts +7 -0
  100. package/dist/services/channels/media-extract.d.ts.map +1 -0
  101. package/dist/services/channels/media-extract.js +31 -0
  102. package/dist/services/channels/media-extract.js.map +1 -0
  103. package/dist/services/channels/pipeline.d.ts +29 -0
  104. package/dist/services/channels/pipeline.d.ts.map +1 -0
  105. package/dist/services/channels/pipeline.js +120 -0
  106. package/dist/services/channels/pipeline.js.map +1 -0
  107. package/dist/services/channels/provider-loader.d.ts +7 -0
  108. package/dist/services/channels/provider-loader.d.ts.map +1 -0
  109. package/dist/services/channels/provider-loader.js +13 -0
  110. package/dist/services/channels/provider-loader.js.map +1 -0
  111. package/dist/services/channels/providers/telegram/adapter.d.ts +34 -0
  112. package/dist/services/channels/providers/telegram/adapter.d.ts.map +1 -0
  113. package/dist/services/channels/providers/telegram/adapter.js +278 -0
  114. package/dist/services/channels/providers/telegram/adapter.js.map +1 -0
  115. package/dist/services/channels/providers/telegram/index.d.ts +11 -0
  116. package/dist/services/channels/providers/telegram/index.d.ts.map +1 -0
  117. package/dist/services/channels/providers/telegram/index.js +11 -0
  118. package/dist/services/channels/providers/telegram/index.js.map +1 -0
  119. package/dist/services/channels/providers/telegram/normalizer.d.ts +12 -0
  120. package/dist/services/channels/providers/telegram/normalizer.d.ts.map +1 -0
  121. package/dist/services/channels/providers/telegram/normalizer.js +50 -0
  122. package/dist/services/channels/providers/telegram/normalizer.js.map +1 -0
  123. package/dist/services/channels/providers/telegram/types.d.ts +72 -0
  124. package/dist/services/channels/providers/telegram/types.d.ts.map +1 -0
  125. package/dist/services/channels/providers/telegram/types.js +3 -0
  126. package/dist/services/channels/providers/telegram/types.js.map +1 -0
  127. package/dist/services/channels/providers/whatsapp/adapter.d.ts +36 -0
  128. package/dist/services/channels/providers/whatsapp/adapter.d.ts.map +1 -0
  129. package/dist/services/channels/providers/whatsapp/adapter.js +261 -0
  130. package/dist/services/channels/providers/whatsapp/adapter.js.map +1 -0
  131. package/dist/services/channels/providers/whatsapp/index.d.ts +11 -0
  132. package/dist/services/channels/providers/whatsapp/index.d.ts.map +1 -0
  133. package/dist/services/channels/providers/whatsapp/index.js +11 -0
  134. package/dist/services/channels/providers/whatsapp/index.js.map +1 -0
  135. package/dist/services/channels/providers/whatsapp/normalizer.d.ts +11 -0
  136. package/dist/services/channels/providers/whatsapp/normalizer.d.ts.map +1 -0
  137. package/dist/services/channels/providers/whatsapp/normalizer.js +47 -0
  138. package/dist/services/channels/providers/whatsapp/normalizer.js.map +1 -0
  139. package/dist/services/channels/providers/whatsapp/session.d.ts +9 -0
  140. package/dist/services/channels/providers/whatsapp/session.d.ts.map +1 -0
  141. package/dist/services/channels/providers/whatsapp/session.js +118 -0
  142. package/dist/services/channels/providers/whatsapp/session.js.map +1 -0
  143. package/dist/services/channels/providers/whatsapp/types.d.ts +23 -0
  144. package/dist/services/channels/providers/whatsapp/types.d.ts.map +1 -0
  145. package/dist/services/channels/providers/whatsapp/types.js +3 -0
  146. package/dist/services/channels/providers/whatsapp/types.js.map +1 -0
  147. package/dist/services/channels/reconnect.d.ts +23 -0
  148. package/dist/services/channels/reconnect.d.ts.map +1 -0
  149. package/dist/services/channels/reconnect.js +32 -0
  150. package/dist/services/channels/reconnect.js.map +1 -0
  151. package/dist/services/channels/status-reactions.d.ts +27 -0
  152. package/dist/services/channels/status-reactions.d.ts.map +1 -0
  153. package/dist/services/channels/status-reactions.js +63 -0
  154. package/dist/services/channels/status-reactions.js.map +1 -0
  155. package/dist/services/channels/types.d.ts +16 -0
  156. package/dist/services/channels/types.d.ts.map +1 -0
  157. package/dist/services/channels/types.js +2 -0
  158. package/dist/services/channels/types.js.map +1 -0
  159. package/dist/services/channels/typing-state.d.ts +22 -0
  160. package/dist/services/channels/typing-state.d.ts.map +1 -0
  161. package/dist/services/channels/typing-state.js +88 -0
  162. package/dist/services/channels/typing-state.js.map +1 -0
  163. package/dist/services/config/index.d.ts +2426 -0
  164. package/dist/services/config/index.d.ts.map +1 -0
  165. package/dist/services/config/index.js +232 -0
  166. package/dist/services/config/index.js.map +1 -0
  167. package/dist/services/config/schemas/agent.d.ts +720 -0
  168. package/dist/services/config/schemas/agent.d.ts.map +1 -0
  169. package/dist/services/config/schemas/agent.js +86 -0
  170. package/dist/services/config/schemas/agent.js.map +1 -0
  171. package/dist/services/config/schemas/auth.d.ts +60 -0
  172. package/dist/services/config/schemas/auth.d.ts.map +1 -0
  173. package/dist/services/config/schemas/auth.js +18 -0
  174. package/dist/services/config/schemas/auth.js.map +1 -0
  175. package/dist/services/config/schemas/channels.d.ts +117 -0
  176. package/dist/services/config/schemas/channels.d.ts.map +1 -0
  177. package/dist/services/config/schemas/channels.js +22 -0
  178. package/dist/services/config/schemas/channels.js.map +1 -0
  179. package/dist/services/config/schemas/cron.d.ts +97 -0
  180. package/dist/services/config/schemas/cron.d.ts.map +1 -0
  181. package/dist/services/config/schemas/cron.js +18 -0
  182. package/dist/services/config/schemas/cron.js.map +1 -0
  183. package/dist/services/config/schemas/features.d.ts +43 -0
  184. package/dist/services/config/schemas/features.d.ts.map +1 -0
  185. package/dist/services/config/schemas/features.js +20 -0
  186. package/dist/services/config/schemas/features.js.map +1 -0
  187. package/dist/services/config/schemas/index.d.ts +24 -0
  188. package/dist/services/config/schemas/index.d.ts.map +1 -0
  189. package/dist/services/config/schemas/index.js +24 -0
  190. package/dist/services/config/schemas/index.js.map +1 -0
  191. package/dist/services/config/schemas/mcp.d.ts +31 -0
  192. package/dist/services/config/schemas/mcp.d.ts.map +1 -0
  193. package/dist/services/config/schemas/mcp.js +39 -0
  194. package/dist/services/config/schemas/mcp.js.map +1 -0
  195. package/dist/services/config/schemas/primitives.d.ts +13 -0
  196. package/dist/services/config/schemas/primitives.d.ts.map +1 -0
  197. package/dist/services/config/schemas/primitives.js +17 -0
  198. package/dist/services/config/schemas/primitives.js.map +1 -0
  199. package/dist/services/config/schemas/providers.d.ts +335 -0
  200. package/dist/services/config/schemas/providers.d.ts.map +1 -0
  201. package/dist/services/config/schemas/providers.js +27 -0
  202. package/dist/services/config/schemas/providers.js.map +1 -0
  203. package/dist/services/config/schemas/storage.d.ts +16 -0
  204. package/dist/services/config/schemas/storage.d.ts.map +1 -0
  205. package/dist/services/config/schemas/storage.js +9 -0
  206. package/dist/services/config/schemas/storage.js.map +1 -0
  207. package/dist/services/config/schemas/webhooks.d.ts +25 -0
  208. package/dist/services/config/schemas/webhooks.d.ts.map +1 -0
  209. package/dist/services/config/schemas/webhooks.js +12 -0
  210. package/dist/services/config/schemas/webhooks.js.map +1 -0
  211. package/dist/services/cron/index.d.ts +50 -0
  212. package/dist/services/cron/index.d.ts.map +1 -0
  213. package/dist/services/cron/index.js +460 -0
  214. package/dist/services/cron/index.js.map +1 -0
  215. package/dist/services/log/index.d.ts +14 -0
  216. package/dist/services/log/index.d.ts.map +1 -0
  217. package/dist/services/log/index.js +137 -0
  218. package/dist/services/log/index.js.map +1 -0
  219. package/dist/services/mcp-client/index.d.ts +37 -0
  220. package/dist/services/mcp-client/index.d.ts.map +1 -0
  221. package/dist/services/mcp-client/index.js +258 -0
  222. package/dist/services/mcp-client/index.js.map +1 -0
  223. package/dist/services/media/extract-document.d.ts +8 -0
  224. package/dist/services/media/extract-document.d.ts.map +1 -0
  225. package/dist/services/media/extract-document.js +85 -0
  226. package/dist/services/media/extract-document.js.map +1 -0
  227. package/dist/services/media/index.d.ts +21 -0
  228. package/dist/services/media/index.d.ts.map +1 -0
  229. package/dist/services/media/index.js +116 -0
  230. package/dist/services/media/index.js.map +1 -0
  231. package/dist/services/media/providers/anthropic.d.ts +6 -0
  232. package/dist/services/media/providers/anthropic.d.ts.map +1 -0
  233. package/dist/services/media/providers/anthropic.js +38 -0
  234. package/dist/services/media/providers/anthropic.js.map +1 -0
  235. package/dist/services/media/providers/index.d.ts +6 -0
  236. package/dist/services/media/providers/index.d.ts.map +1 -0
  237. package/dist/services/media/providers/index.js +15 -0
  238. package/dist/services/media/providers/index.js.map +1 -0
  239. package/dist/services/media/providers/openai.d.ts +6 -0
  240. package/dist/services/media/providers/openai.d.ts.map +1 -0
  241. package/dist/services/media/providers/openai.js +48 -0
  242. package/dist/services/media/providers/openai.js.map +1 -0
  243. package/dist/services/media/providers/provider.d.ts +5 -0
  244. package/dist/services/media/providers/provider.d.ts.map +1 -0
  245. package/dist/services/media/providers/provider.js +2 -0
  246. package/dist/services/media/providers/provider.js.map +1 -0
  247. package/dist/services/memory/chunker.d.ts +7 -0
  248. package/dist/services/memory/chunker.d.ts.map +1 -0
  249. package/dist/services/memory/chunker.js +46 -0
  250. package/dist/services/memory/chunker.js.map +1 -0
  251. package/dist/services/memory/context.d.ts +68 -0
  252. package/dist/services/memory/context.d.ts.map +1 -0
  253. package/dist/services/memory/context.js +223 -0
  254. package/dist/services/memory/context.js.map +1 -0
  255. package/dist/services/memory/embedding.d.ts +9 -0
  256. package/dist/services/memory/embedding.d.ts.map +1 -0
  257. package/dist/services/memory/embedding.js +49 -0
  258. package/dist/services/memory/embedding.js.map +1 -0
  259. package/dist/services/memory/index.d.ts +24 -0
  260. package/dist/services/memory/index.d.ts.map +1 -0
  261. package/dist/services/memory/index.js +140 -0
  262. package/dist/services/memory/index.js.map +1 -0
  263. package/dist/services/memory/session-indexer.d.ts +5 -0
  264. package/dist/services/memory/session-indexer.d.ts.map +1 -0
  265. package/dist/services/memory/session-indexer.js +62 -0
  266. package/dist/services/memory/session-indexer.js.map +1 -0
  267. package/dist/services/memory/sqlite-storage.d.ts +23 -0
  268. package/dist/services/memory/sqlite-storage.d.ts.map +1 -0
  269. package/dist/services/memory/sqlite-storage.js +75 -0
  270. package/dist/services/memory/sqlite-storage.js.map +1 -0
  271. package/dist/services/memory/types.d.ts +31 -0
  272. package/dist/services/memory/types.d.ts.map +1 -0
  273. package/dist/services/memory/types.js +2 -0
  274. package/dist/services/memory/types.js.map +1 -0
  275. package/dist/services/web/index.d.ts +9 -0
  276. package/dist/services/web/index.d.ts.map +1 -0
  277. package/dist/services/web/index.js +101 -0
  278. package/dist/services/web/index.js.map +1 -0
  279. package/dist/vitest.config.d.ts +3 -0
  280. package/dist/vitest.config.d.ts.map +1 -0
  281. package/dist/vitest.config.js +9 -0
  282. package/dist/vitest.config.js.map +1 -0
  283. package/package.json +2 -8
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../services/config/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAYL,KAAK,YAAY,EACjB,KAAK,eAAe,EACpB,KAAK,eAAe,EACpB,KAAK,QAAQ,EACb,KAAK,aAAa,EAClB,KAAK,gBAAgB,EACrB,KAAK,cAAc,EACnB,KAAK,SAAS,EACd,KAAK,eAAe,EACpB,KAAK,YAAY,EACjB,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACpB,KAAK,eAAe,EACpB,KAAK,aAAa,EAClB,KAAK,IAAI,EACT,KAAK,IAAI,EACV,MAAM,oBAAoB,CAAC;AAM5B,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QA0BtB,+DAA+D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAA/D,+DAA+D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAA/D,+DAA+D;;;;;;;;;;;gCAIrD,CAAC;AAEjB,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AACxD,YAAY,EACV,YAAY,EACZ,eAAe,EACf,eAAe,EACf,QAAQ,EACR,aAAa,EACb,gBAAgB,EAChB,cAAc,EACd,SAAS,EACT,IAAI,EACJ,eAAe,EACf,YAAY,EACZ,gBAAgB,EAChB,eAAe,EACf,eAAe,EACf,aAAa,EACb,IAAI,GACL,CAAC;AAIF,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,GAAG,IAAI,CAEhE;AAID,qBAAa,aAAa;IAStB,OAAO,CAAC,QAAQ,CAAC,GAAG;IARtB,OAAO,CAAC,QAAQ,CAAC,GAAG,CAA0B;IAC9C,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;IACpC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAS;IACzC,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAS;IAC3C,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAS;gBAGpB,GAAG,EAAE,GAAG;IAU3B,OAAO,CAAC,UAAU;IAiDZ,GAAG,CAAC,OAAO,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAC,QAAQ,CAAC,GAAG,OAAO,CAAC,SAAS,CAAC;IAQlE,GAAG,CAAC,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;CAmEjD;AAID,wBAAsB,IAAI,CAAC,GAAG,EAAE,GAAG,GAAG,OAAO,CAAC;IAAE,IAAI,CAAC,IAAI,IAAI,CAAA;CAAE,CAAC,CAI/D;AAID,cAAc,oBAAoB,CAAC"}
@@ -0,0 +1,232 @@
1
+ var __runInitializers = (this && this.__runInitializers) || function (thisArg, initializers, value) {
2
+ var useValue = arguments.length > 2;
3
+ for (var i = 0; i < initializers.length; i++) {
4
+ value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);
5
+ }
6
+ return useValue ? value : void 0;
7
+ };
8
+ var __esDecorate = (this && this.__esDecorate) || function (ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {
9
+ function accept(f) { if (f !== void 0 && typeof f !== "function") throw new TypeError("Function expected"); return f; }
10
+ var kind = contextIn.kind, key = kind === "getter" ? "get" : kind === "setter" ? "set" : "value";
11
+ var target = !descriptorIn && ctor ? contextIn["static"] ? ctor : ctor.prototype : null;
12
+ var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});
13
+ var _, done = false;
14
+ for (var i = decorators.length - 1; i >= 0; i--) {
15
+ var context = {};
16
+ for (var p in contextIn) context[p] = p === "access" ? {} : contextIn[p];
17
+ for (var p in contextIn.access) context.access[p] = contextIn.access[p];
18
+ context.addInitializer = function (f) { if (done) throw new TypeError("Cannot add initializers after decoration has completed"); extraInitializers.push(accept(f || null)); };
19
+ var result = (0, decorators[i])(kind === "accessor" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);
20
+ if (kind === "accessor") {
21
+ if (result === void 0) continue;
22
+ if (result === null || typeof result !== "object") throw new TypeError("Object expected");
23
+ if (_ = accept(result.get)) descriptor.get = _;
24
+ if (_ = accept(result.set)) descriptor.set = _;
25
+ if (_ = accept(result.init)) initializers.unshift(_);
26
+ }
27
+ else if (_ = accept(result)) {
28
+ if (kind === "field") initializers.unshift(_);
29
+ else descriptor[key] = _;
30
+ }
31
+ }
32
+ if (target) Object.defineProperty(target, contextIn.name, descriptor);
33
+ done = true;
34
+ };
35
+ import { z } from 'zod';
36
+ import { readFileSync, writeFileSync, mkdirSync, existsSync } from 'node:fs';
37
+ import path from 'node:path';
38
+ import { register } from '../../gateway/decorators.js';
39
+ import { AgentConfigSchema, AuthSchema, ChannelEntrySchema, CronTaskSchema, WebhookEntrySchema, HeartbeatConfigSchema, LinkExpandConfigSchema, ProvidersSchema, McpClientConfigSchema, McpServerConfigSchema, StorageConfigSchema, } from './schemas/index.js';
40
+ import { getDataPaths } from '../../lib/paths.js';
41
+ import { createLogger } from '../../lib/logger.js';
42
+ // ─── App config ───────────────────────────────────────────────────────────────
43
+ export const AppConfigSchema = z
44
+ .object({
45
+ providers: ProvidersSchema.optional(),
46
+ agent: AgentConfigSchema.optional(),
47
+ auth: AuthSchema,
48
+ channels: z.array(ChannelEntrySchema).default([]),
49
+ cron: z.object({
50
+ tasks: z.array(CronTaskSchema).optional(),
51
+ }).optional(),
52
+ webhooks: z.array(WebhookEntrySchema).default([]),
53
+ heartbeat: HeartbeatConfigSchema.optional(),
54
+ linkExpand: LinkExpandConfigSchema.default({}),
55
+ mcp: McpClientConfigSchema.default({}),
56
+ mcpServers: z.record(z.string(), McpServerConfigSchema).optional().describe('External MCP servers to load as bus callable events'),
57
+ storage: StorageConfigSchema.optional(),
58
+ media: z.object({
59
+ audio: z.string().optional(),
60
+ image: z.string().optional(),
61
+ }).optional(),
62
+ paths: z.object({
63
+ dataDir: z.string().optional(),
64
+ workspace: z.string().optional(),
65
+ }).default({}),
66
+ gateway: z.object({
67
+ host: z.string().optional().default('127.0.0.1'),
68
+ port: z.number().int().min(1).max(65535).default(9000),
69
+ /** Client socket idle timeout (ms) for JSON-RPC connections */
70
+ requestTimeout: z.number().int().positive().optional(),
71
+ }).default({})
72
+ })
73
+ .passthrough();
74
+ // ─── Load / save ──────────────────────────────────────────────────────────────
75
+ export function saveConfig(path, config) {
76
+ writeFileSync(path, JSON.stringify(config, null, 2), { mode: 0o600 });
77
+ }
78
+ // ─── ConfigService ───────────────────────────────────────────────────────────
79
+ let ConfigService = (() => {
80
+ let _instanceExtraInitializers = [];
81
+ let _get_decorators;
82
+ let _set_decorators;
83
+ return class ConfigService {
84
+ static {
85
+ const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(null) : void 0;
86
+ _get_decorators = [register('config.get', {
87
+ description: 'Get the current application configuration (merged from config.json, agent/models.json, agent/settings.json).',
88
+ schema: z.object({}),
89
+ })];
90
+ _set_decorators = [register('config.set', {
91
+ description: 'Update the application config. Intelligently routes to correct file (config.json, agent/models.json, or agent/settings.json).',
92
+ schema: z.object({}).passthrough(),
93
+ })];
94
+ __esDecorate(this, null, _get_decorators, { kind: "method", name: "get", static: false, private: false, access: { has: obj => "get" in obj, get: obj => obj.get }, metadata: _metadata }, null, _instanceExtraInitializers);
95
+ __esDecorate(this, null, _set_decorators, { kind: "method", name: "set", static: false, private: false, access: { has: obj => "set" in obj, get: obj => obj.set }, metadata: _metadata }, null, _instanceExtraInitializers);
96
+ if (_metadata) Object.defineProperty(this, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
97
+ }
98
+ bus = __runInitializers(this, _instanceExtraInitializers);
99
+ log = createLogger('config');
100
+ configFile;
101
+ agentDir;
102
+ agentModelsFile;
103
+ agentSettingsFile;
104
+ agentAuthFile;
105
+ constructor(bus) {
106
+ this.bus = bus;
107
+ const { configFile, dataDir } = getDataPaths();
108
+ this.configFile = configFile;
109
+ this.agentDir = path.join(dataDir, 'agent');
110
+ this.agentModelsFile = path.join(this.agentDir, 'models.json');
111
+ this.agentSettingsFile = path.join(this.agentDir, 'settings.json');
112
+ this.agentAuthFile = path.join(this.agentDir, 'auth.json');
113
+ }
114
+ loadConfig() {
115
+ const raw = JSON.parse(readFileSync(this.configFile, 'utf8'));
116
+ // Load agent/settings.json and merge with existing agent config (settings takes precedence)
117
+ try {
118
+ const settingsContent = readFileSync(this.agentSettingsFile, 'utf8');
119
+ const settings = JSON.parse(settingsContent);
120
+ if (settings && typeof settings === 'object') {
121
+ raw.agent = { ...raw.agent, ...settings };
122
+ }
123
+ }
124
+ catch {
125
+ // File may not exist yet — validation will catch if required
126
+ }
127
+ // Load agent/models.json and merge providers
128
+ try {
129
+ const modelsContent = readFileSync(this.agentModelsFile, 'utf8');
130
+ const models = JSON.parse(modelsContent);
131
+ if (models.providers) {
132
+ raw.providers = models.providers;
133
+ }
134
+ }
135
+ catch {
136
+ // File may not exist yet, that's okay
137
+ }
138
+ // Load auth.json
139
+ try {
140
+ const authContent = readFileSync(this.agentAuthFile, 'utf8');
141
+ const auth = JSON.parse(authContent ?? '{}');
142
+ raw.auth = auth;
143
+ }
144
+ catch {
145
+ // File may not exist yet, that's okay
146
+ }
147
+ // Validate merged config
148
+ const result = AppConfigSchema.safeParse(raw);
149
+ if (!result.success) {
150
+ const issues = result.error.issues
151
+ .map(i => ` ${i.path.join('.')}: ${i.message}`)
152
+ .join('\n');
153
+ throw new Error(`Invalid config at ${this.configFile}:\n${issues}`);
154
+ }
155
+ return result.data;
156
+ }
157
+ async get(_params) {
158
+ return this.loadConfig();
159
+ }
160
+ async set(params) {
161
+ const parsed = AppConfigSchema.parse(params);
162
+ // Split config into components by ownership
163
+ const configForFile = { ...parsed };
164
+ const agentModels = {};
165
+ let agentSettings = {};
166
+ let authData = {};
167
+ // Load existing agent/settings.json to preserve other fields
168
+ try {
169
+ agentSettings = JSON.parse(readFileSync(this.agentSettingsFile, 'utf8'));
170
+ }
171
+ catch {
172
+ // File doesn't exist yet
173
+ }
174
+ // Extract agent config to agent/settings.json
175
+ if (configForFile.agent) {
176
+ agentSettings = { ...agentSettings, ...configForFile.agent };
177
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
178
+ delete configForFile.agent;
179
+ }
180
+ // Load existing auth.json to preserve other credentials
181
+ try {
182
+ authData = JSON.parse(readFileSync(this.agentAuthFile, 'utf8'));
183
+ }
184
+ catch {
185
+ // File doesn't exist yet
186
+ }
187
+ // Extract auth credentials to agent/auth.json
188
+ if (configForFile.auth) {
189
+ authData = { ...authData, ...configForFile.auth };
190
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
191
+ delete configForFile.auth;
192
+ }
193
+ // Extract providers to agent/models.json
194
+ if (configForFile.providers) {
195
+ agentModels.providers = configForFile.providers;
196
+ delete configForFile.providers;
197
+ }
198
+ // Load existing agent/models.json to preserve other fields
199
+ try {
200
+ const existing = JSON.parse(readFileSync(this.agentModelsFile, 'utf8'));
201
+ Object.assign(agentModels, existing, agentModels); // Preserve existing, override with new
202
+ }
203
+ catch {
204
+ // File doesn't exist yet
205
+ }
206
+ // Persist to appropriate files
207
+ saveConfig(this.configFile, configForFile);
208
+ const writeAgentFile = (file, data) => {
209
+ if (Object.keys(data).length === 0)
210
+ return;
211
+ if (!existsSync(this.agentDir))
212
+ mkdirSync(this.agentDir, { recursive: true });
213
+ writeFileSync(file, JSON.stringify(data, null, 2), { mode: 0o600 });
214
+ };
215
+ writeAgentFile(this.agentModelsFile, agentModels);
216
+ writeAgentFile(this.agentSettingsFile, agentSettings);
217
+ writeAgentFile(this.agentAuthFile, authData);
218
+ this.log.info('config updated and persisted');
219
+ return this.loadConfig();
220
+ }
221
+ };
222
+ })();
223
+ export { ConfigService };
224
+ // ── Boot ─────────────────────────────────────────────────────────────────────
225
+ export async function boot(bus) {
226
+ const svc = new ConfigService(bus);
227
+ bus.bootstrap(svc);
228
+ return {};
229
+ }
230
+ // ── Re-exports ────────────────────────────────────────────────────────────────
231
+ export * from './schemas/index.js';
232
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../services/config/index.ts"],"names":[],"mappings":"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"}