@elizaos/plugin-elizacloud 2.0.0-alpha.8 → 2.0.0-beta.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 (378) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +220 -0
  3. package/auto-enable.ts +17 -0
  4. package/dist/browser/index.browser.js +2 -21
  5. package/dist/browser/index.browser.js.map +5 -38
  6. package/dist/cjs/index.d.ts +2 -2
  7. package/dist/cjs/index.node.cjs +12165 -2277
  8. package/dist/cjs/index.node.js.map +135 -28
  9. package/dist/cloud/auth.d.ts +19 -0
  10. package/dist/cloud/auth.d.ts.map +1 -0
  11. package/dist/cloud/auth.js +330 -0
  12. package/dist/cloud/auth.js.map +12 -0
  13. package/dist/cloud/backup.d.ts +18 -0
  14. package/dist/cloud/backup.d.ts.map +1 -0
  15. package/dist/cloud/backup.js +63 -0
  16. package/dist/cloud/backup.js.map +10 -0
  17. package/dist/cloud/base-url.d.ts +3 -0
  18. package/dist/cloud/base-url.d.ts.map +1 -0
  19. package/dist/cloud/base-url.js +77 -0
  20. package/dist/cloud/base-url.js.map +10 -0
  21. package/dist/cloud/bridge-client.d.ts +126 -0
  22. package/dist/cloud/bridge-client.d.ts.map +1 -0
  23. package/dist/cloud/bridge-client.js +432 -0
  24. package/dist/cloud/bridge-client.js.map +11 -0
  25. package/dist/cloud/cloud-api-key.d.ts +26 -0
  26. package/dist/cloud/cloud-api-key.d.ts.map +1 -0
  27. package/dist/cloud/cloud-api-key.js +60 -0
  28. package/dist/cloud/cloud-api-key.js.map +10 -0
  29. package/dist/cloud/cloud-manager.d.ts +33 -0
  30. package/dist/cloud/cloud-manager.d.ts.map +1 -0
  31. package/dist/cloud/cloud-manager.js +853 -0
  32. package/dist/cloud/cloud-manager.js.map +16 -0
  33. package/dist/cloud/cloud-proxy.d.ts +20 -0
  34. package/dist/cloud/cloud-proxy.d.ts.map +1 -0
  35. package/dist/cloud/cloud-proxy.js +54 -0
  36. package/dist/cloud/cloud-proxy.js.map +10 -0
  37. package/dist/cloud/cloud-wallet.d.ts +94 -0
  38. package/dist/cloud/cloud-wallet.d.ts.map +1 -0
  39. package/dist/cloud/cloud-wallet.js +5195 -0
  40. package/dist/cloud/cloud-wallet.js.map +92 -0
  41. package/dist/cloud/index.d.ts +9 -0
  42. package/dist/cloud/index.d.ts.map +1 -0
  43. package/dist/cloud/index.js +30 -0
  44. package/dist/cloud/index.js.map +9 -0
  45. package/dist/cloud/reconnect.d.ts +26 -0
  46. package/dist/cloud/reconnect.d.ts.map +1 -0
  47. package/dist/cloud/reconnect.js +104 -0
  48. package/dist/cloud/reconnect.js.map +10 -0
  49. package/dist/cloud/validate-url.d.ts +2 -0
  50. package/dist/cloud/validate-url.d.ts.map +1 -0
  51. package/dist/cloud/validate-url.js +174 -0
  52. package/dist/cloud/validate-url.js.map +10 -0
  53. package/dist/cloud-providers/cloud-status.d.ts.map +1 -1
  54. package/dist/cloud-providers/cloud-status.js +78 -0
  55. package/dist/cloud-providers/cloud-status.js.map +10 -0
  56. package/dist/cloud-providers/container-health.d.ts.map +1 -1
  57. package/dist/cloud-providers/container-health.js +74 -0
  58. package/dist/cloud-providers/container-health.js.map +10 -0
  59. package/dist/cloud-providers/credit-balance.d.ts.map +1 -1
  60. package/dist/cloud-providers/credit-balance.js +85 -0
  61. package/dist/cloud-providers/credit-balance.js.map +10 -0
  62. package/dist/cloud-providers/index.d.ts.map +1 -1
  63. package/dist/cloud-providers/index.js +24 -0
  64. package/dist/cloud-providers/index.js.map +9 -0
  65. package/dist/cloud-providers/model-registry.d.ts.map +1 -1
  66. package/dist/cloud-providers/model-registry.js +71 -0
  67. package/dist/cloud-providers/model-registry.js.map +10 -0
  68. package/dist/index.browser.d.ts +4 -3
  69. package/dist/index.browser.d.ts.map +1 -1
  70. package/dist/index.d.ts +18 -0
  71. package/dist/index.d.ts.map +1 -1
  72. package/dist/index.js +12851 -0
  73. package/dist/index.js.map +145 -0
  74. package/dist/index.node.d.ts +14 -2
  75. package/dist/index.node.d.ts.map +1 -1
  76. package/dist/init.d.ts.map +1 -1
  77. package/dist/init.js +169 -0
  78. package/dist/init.js.map +12 -0
  79. package/dist/lib/cloud-connection.d.ts +78 -0
  80. package/dist/lib/cloud-connection.d.ts.map +1 -0
  81. package/dist/lib/cloud-connection.js +731 -0
  82. package/dist/lib/cloud-connection.js.map +14 -0
  83. package/dist/lib/cloud-secrets.d.ts +23 -0
  84. package/dist/lib/cloud-secrets.d.ts.map +1 -0
  85. package/dist/lib/cloud-secrets.js +64 -0
  86. package/dist/lib/cloud-secrets.js.map +10 -0
  87. package/dist/lib/config-env.d.ts +5 -0
  88. package/dist/lib/config-env.d.ts.map +1 -0
  89. package/dist/lib/config-env.js +191 -0
  90. package/dist/lib/config-env.js.map +11 -0
  91. package/dist/lib/config-like.d.ts +40 -0
  92. package/dist/lib/config-like.d.ts.map +1 -0
  93. package/dist/lib/config-like.js +103 -0
  94. package/dist/lib/config-like.js.map +10 -0
  95. package/dist/lib/credential-type-map.d.ts +53 -0
  96. package/dist/lib/credential-type-map.d.ts.map +1 -0
  97. package/dist/lib/credential-type-map.js +88 -0
  98. package/dist/lib/credential-type-map.js.map +10 -0
  99. package/dist/lib/feature-flags.d.ts +2 -0
  100. package/dist/lib/feature-flags.d.ts.map +1 -0
  101. package/dist/lib/feature-flags.js +40 -0
  102. package/dist/lib/feature-flags.js.map +10 -0
  103. package/dist/lib/http.d.ts +22 -0
  104. package/dist/lib/http.d.ts.map +1 -0
  105. package/dist/lib/http.js +107 -0
  106. package/dist/lib/http.js.map +10 -0
  107. package/dist/lib/server-cloud-tts.d.ts +34 -0
  108. package/dist/lib/server-cloud-tts.d.ts.map +1 -0
  109. package/dist/lib/server-cloud-tts.js +549 -0
  110. package/dist/lib/server-cloud-tts.js.map +13 -0
  111. package/dist/lib/state-paths.d.ts +4 -0
  112. package/dist/lib/state-paths.d.ts.map +1 -0
  113. package/dist/lib/state-paths.js +52 -0
  114. package/dist/lib/state-paths.js.map +10 -0
  115. package/dist/lib/tts-debug.d.ts +4 -0
  116. package/dist/lib/tts-debug.d.ts.map +1 -0
  117. package/dist/lib/tts-debug.js +57 -0
  118. package/dist/lib/tts-debug.js.map +10 -0
  119. package/dist/models/embeddings.d.ts.map +1 -1
  120. package/dist/models/embeddings.js +319 -0
  121. package/dist/models/embeddings.js.map +13 -0
  122. package/dist/models/image.d.ts.map +1 -1
  123. package/dist/models/image.js +374 -0
  124. package/dist/models/image.js.map +14 -0
  125. package/dist/models/index.d.ts +1 -2
  126. package/dist/models/index.d.ts.map +1 -1
  127. package/dist/models/index.js +1386 -0
  128. package/dist/models/index.js.map +20 -0
  129. package/dist/models/research.d.ts.map +1 -1
  130. package/dist/models/research.js +324 -0
  131. package/dist/models/research.js.map +13 -0
  132. package/dist/models/speech.d.ts.map +1 -1
  133. package/dist/models/speech.js +273 -0
  134. package/dist/models/speech.js.map +13 -0
  135. package/dist/models/text.d.ts +5 -2
  136. package/dist/models/text.d.ts.map +1 -1
  137. package/dist/models/text.js +803 -0
  138. package/dist/models/text.js.map +15 -0
  139. package/dist/models/tokenization.d.ts.map +1 -1
  140. package/dist/models/tokenization.js +65 -0
  141. package/dist/models/tokenization.js.map +10 -0
  142. package/dist/models/transcription.d.ts.map +1 -1
  143. package/dist/models/transcription.js +283 -0
  144. package/dist/models/transcription.js.map +13 -0
  145. package/dist/node/index.d.ts +2 -2
  146. package/dist/node/index.node.js +12170 -2266
  147. package/dist/node/index.node.js.map +135 -28
  148. package/dist/onboarding.d.ts +35 -0
  149. package/dist/onboarding.d.ts.map +1 -0
  150. package/dist/onboarding.js +883 -0
  151. package/dist/onboarding.js.map +14 -0
  152. package/dist/plugin.d.ts +20 -0
  153. package/dist/plugin.d.ts.map +1 -0
  154. package/dist/plugin.js +7611 -0
  155. package/dist/plugin.js.map +104 -0
  156. package/dist/providers/openai.d.ts.map +1 -1
  157. package/dist/providers/openai.js +127 -0
  158. package/dist/providers/openai.js.map +11 -0
  159. package/dist/register-routes.d.ts +2 -0
  160. package/dist/register-routes.d.ts.map +1 -0
  161. package/dist/register-routes.js +7612 -0
  162. package/dist/register-routes.js.map +105 -0
  163. package/dist/routes/cloud-billing-routes.d.ts +9 -0
  164. package/dist/routes/cloud-billing-routes.d.ts.map +1 -0
  165. package/dist/routes/cloud-billing-routes.js +807 -0
  166. package/dist/routes/cloud-billing-routes.js.map +14 -0
  167. package/dist/routes/cloud-compat-routes.d.ts +10 -0
  168. package/dist/routes/cloud-compat-routes.d.ts.map +1 -0
  169. package/dist/routes/cloud-compat-routes.js +538 -0
  170. package/dist/routes/cloud-compat-routes.js.map +14 -0
  171. package/dist/routes/cloud-features-routes.d.ts +9 -0
  172. package/dist/routes/cloud-features-routes.d.ts.map +1 -0
  173. package/dist/routes/cloud-features-routes.js +124 -0
  174. package/dist/routes/cloud-features-routes.js.map +11 -0
  175. package/dist/routes/cloud-provisioning.d.ts +14 -0
  176. package/dist/routes/cloud-provisioning.d.ts.map +1 -0
  177. package/dist/routes/cloud-provisioning.js +37 -0
  178. package/dist/routes/cloud-provisioning.js.map +10 -0
  179. package/dist/routes/cloud-relay-routes.d.ts +22 -0
  180. package/dist/routes/cloud-relay-routes.d.ts.map +1 -0
  181. package/dist/routes/cloud-relay-routes.js +60 -0
  182. package/dist/routes/cloud-relay-routes.js.map +10 -0
  183. package/dist/routes/cloud-routes-autonomous.d.ts +83 -0
  184. package/dist/routes/cloud-routes-autonomous.d.ts.map +1 -0
  185. package/dist/routes/cloud-routes-autonomous.js +6134 -0
  186. package/dist/routes/cloud-routes-autonomous.js.map +97 -0
  187. package/dist/routes/cloud-routes.d.ts +35 -0
  188. package/dist/routes/cloud-routes.d.ts.map +1 -0
  189. package/dist/routes/cloud-routes.js +6888 -0
  190. package/dist/routes/cloud-routes.js.map +100 -0
  191. package/dist/routes/cloud-status-routes-autonomous.d.ts +15 -0
  192. package/dist/routes/cloud-status-routes-autonomous.d.ts.map +1 -0
  193. package/dist/routes/cloud-status-routes-autonomous.js +396 -0
  194. package/dist/routes/cloud-status-routes-autonomous.js.map +13 -0
  195. package/dist/routes/cloud-status-routes.d.ts +4 -0
  196. package/dist/routes/cloud-status-routes.d.ts.map +1 -0
  197. package/dist/routes/cloud-status-routes.js +771 -0
  198. package/dist/routes/cloud-status-routes.js.map +15 -0
  199. package/dist/services/cloud-auth.d.ts +140 -5
  200. package/dist/services/cloud-auth.d.ts.map +1 -1
  201. package/dist/services/cloud-auth.js +363 -0
  202. package/dist/services/cloud-auth.js.map +12 -0
  203. package/dist/services/cloud-backup.d.ts.map +1 -1
  204. package/dist/services/cloud-backup.js +176 -0
  205. package/dist/services/cloud-backup.js.map +11 -0
  206. package/dist/services/cloud-bootstrap.d.ts +38 -0
  207. package/dist/services/cloud-bootstrap.d.ts.map +1 -0
  208. package/dist/services/cloud-bootstrap.js +84 -0
  209. package/dist/services/cloud-bootstrap.js.map +10 -0
  210. package/dist/services/cloud-bridge.d.ts +1 -1
  211. package/dist/services/cloud-bridge.d.ts.map +1 -1
  212. package/dist/services/cloud-bridge.js +308 -0
  213. package/dist/services/cloud-bridge.js.map +11 -0
  214. package/dist/services/cloud-container.d.ts.map +1 -1
  215. package/dist/services/cloud-container.js +241 -0
  216. package/dist/services/cloud-container.js.map +11 -0
  217. package/dist/services/cloud-credential-provider.d.ts +55 -0
  218. package/dist/services/cloud-credential-provider.d.ts.map +1 -0
  219. package/dist/services/cloud-credential-provider.js +190 -0
  220. package/dist/services/cloud-credential-provider.js.map +11 -0
  221. package/dist/services/cloud-managed-gateway-relay.d.ts +38 -0
  222. package/dist/services/cloud-managed-gateway-relay.d.ts.map +1 -0
  223. package/dist/services/cloud-managed-gateway-relay.js +479 -0
  224. package/dist/services/cloud-managed-gateway-relay.js.map +10 -0
  225. package/dist/services/cloud-model-registry.d.ts.map +1 -1
  226. package/dist/services/cloud-model-registry.js +175 -0
  227. package/dist/services/cloud-model-registry.js.map +10 -0
  228. package/dist/services/index.d.ts +3 -1
  229. package/dist/services/index.d.ts.map +1 -1
  230. package/dist/services/index.js +29 -0
  231. package/dist/services/index.js.map +9 -0
  232. package/dist/types/cloud.d.ts +41 -19
  233. package/dist/types/cloud.d.ts.map +1 -1
  234. package/dist/types/cloud.js +52 -0
  235. package/dist/types/cloud.js.map +10 -0
  236. package/dist/types/index.d.ts +1 -1
  237. package/dist/types/index.d.ts.map +1 -1
  238. package/dist/types/index.js +24 -0
  239. package/dist/types/index.js.map +9 -0
  240. package/dist/utils/cloud-api.d.ts +2 -27
  241. package/dist/utils/cloud-api.d.ts.map +1 -1
  242. package/dist/utils/cloud-api.js +33 -0
  243. package/dist/utils/cloud-api.js.map +10 -0
  244. package/dist/utils/cloud-sdk/client.d.ts +133 -0
  245. package/dist/utils/cloud-sdk/client.d.ts.map +1 -0
  246. package/dist/utils/cloud-sdk/client.js +3561 -0
  247. package/dist/utils/cloud-sdk/client.js.map +13 -0
  248. package/dist/utils/cloud-sdk/http.d.ts +37 -0
  249. package/dist/utils/cloud-sdk/http.d.ts.map +1 -0
  250. package/dist/utils/cloud-sdk/http.js +237 -0
  251. package/dist/utils/cloud-sdk/http.js.map +11 -0
  252. package/dist/utils/cloud-sdk/index.d.ts +6 -0
  253. package/dist/utils/cloud-sdk/index.d.ts.map +1 -0
  254. package/dist/utils/cloud-sdk/index.js +29 -0
  255. package/dist/utils/cloud-sdk/index.js.map +9 -0
  256. package/dist/utils/cloud-sdk/public-routes.d.ts +5377 -0
  257. package/dist/utils/cloud-sdk/public-routes.d.ts.map +1 -0
  258. package/dist/utils/cloud-sdk/public-routes.js +2950 -0
  259. package/dist/utils/cloud-sdk/public-routes.js.map +10 -0
  260. package/dist/utils/cloud-sdk/types.cloud-api.d.ts +101 -0
  261. package/dist/utils/cloud-sdk/types.cloud-api.d.ts.map +1 -0
  262. package/dist/utils/cloud-sdk/types.cloud-api.js +2 -0
  263. package/dist/utils/cloud-sdk/types.cloud-api.js.map +9 -0
  264. package/dist/utils/cloud-sdk/types.d.ts +655 -0
  265. package/dist/utils/cloud-sdk/types.d.ts.map +1 -0
  266. package/dist/utils/cloud-sdk/types.js +29 -0
  267. package/dist/utils/cloud-sdk/types.js.map +10 -0
  268. package/dist/utils/config.d.ts +7 -3
  269. package/dist/utils/config.d.ts.map +1 -1
  270. package/dist/utils/config.js +137 -0
  271. package/dist/utils/config.js.map +10 -0
  272. package/dist/utils/events.d.ts.map +1 -1
  273. package/dist/utils/events.js +43 -0
  274. package/dist/utils/events.js.map +10 -0
  275. package/dist/utils/helpers.d.ts.map +1 -1
  276. package/dist/utils/helpers.js +103 -0
  277. package/dist/utils/helpers.js.map +10 -0
  278. package/dist/utils/responses-output.d.ts +13 -0
  279. package/dist/utils/responses-output.d.ts.map +1 -0
  280. package/dist/utils/responses-output.js +102 -0
  281. package/dist/utils/responses-output.js.map +10 -0
  282. package/dist/utils/sdk-client.d.ts +5 -0
  283. package/dist/utils/sdk-client.d.ts.map +1 -0
  284. package/dist/utils/sdk-client.js +144 -0
  285. package/dist/utils/sdk-client.js.map +11 -0
  286. package/package.json +108 -19
  287. package/src/cloud/auth.ts +175 -0
  288. package/src/cloud/backup.ts +46 -0
  289. package/src/cloud/base-url.ts +62 -0
  290. package/src/cloud/bridge-client.ts +602 -0
  291. package/src/cloud/cloud-api-key.ts +80 -0
  292. package/src/cloud/cloud-manager.ts +163 -0
  293. package/src/cloud/cloud-proxy.ts +52 -0
  294. package/src/cloud/cloud-wallet.ts +341 -0
  295. package/src/cloud/index.ts +28 -0
  296. package/src/cloud/reconnect.ts +111 -0
  297. package/src/cloud/validate-url.ts +181 -0
  298. package/src/cloud-providers/cloud-status.ts +75 -0
  299. package/src/cloud-providers/container-health.ts +68 -0
  300. package/src/cloud-providers/credit-balance.ts +70 -0
  301. package/src/cloud-providers/index.ts +3 -0
  302. package/src/cloud-providers/model-registry.ts +74 -0
  303. package/src/index.browser.ts +10 -0
  304. package/src/index.node.ts +39 -0
  305. package/src/index.ts +347 -0
  306. package/src/init.ts +39 -0
  307. package/src/lib/cloud-connection.ts +663 -0
  308. package/src/lib/cloud-secrets.ts +58 -0
  309. package/src/lib/config-env.ts +168 -0
  310. package/src/lib/config-like.ts +149 -0
  311. package/src/lib/credential-type-map.ts +130 -0
  312. package/src/lib/feature-flags.ts +26 -0
  313. package/src/lib/http.ts +139 -0
  314. package/src/lib/server-cloud-tts.ts +609 -0
  315. package/src/lib/state-paths.ts +28 -0
  316. package/src/lib/tts-debug.ts +34 -0
  317. package/src/models/embeddings.ts +234 -0
  318. package/src/models/image.ts +219 -0
  319. package/src/models/index.ts +16 -0
  320. package/src/models/research.ts +265 -0
  321. package/src/models/speech.ts +78 -0
  322. package/src/models/text.ts +899 -0
  323. package/src/models/tokenization.ts +67 -0
  324. package/src/models/transcription.ts +97 -0
  325. package/src/onboarding.ts +396 -0
  326. package/src/plugin.ts +243 -0
  327. package/src/providers/openai.ts +16 -0
  328. package/src/register-routes.ts +6 -0
  329. package/src/routes/cloud-billing-routes.ts +754 -0
  330. package/src/routes/cloud-compat-routes.ts +314 -0
  331. package/src/routes/cloud-features-routes.ts +57 -0
  332. package/src/routes/cloud-provisioning.ts +37 -0
  333. package/src/routes/cloud-relay-routes.ts +89 -0
  334. package/src/routes/cloud-routes-autonomous.ts +996 -0
  335. package/src/routes/cloud-routes.ts +576 -0
  336. package/src/routes/cloud-status-routes-autonomous.ts +234 -0
  337. package/src/routes/cloud-status-routes.ts +73 -0
  338. package/src/services/cloud-auth.ts +567 -0
  339. package/src/services/cloud-backup.ts +208 -0
  340. package/src/services/cloud-bootstrap.ts +108 -0
  341. package/src/services/cloud-bridge.ts +386 -0
  342. package/src/services/cloud-container.ts +297 -0
  343. package/src/services/cloud-credential-provider.ts +210 -0
  344. package/src/services/cloud-managed-gateway-relay.ts +663 -0
  345. package/src/services/cloud-model-registry.ts +202 -0
  346. package/src/services/index.ts +17 -0
  347. package/{types → src/types}/cloud.ts +52 -29
  348. package/{types → src/types}/index.ts +6 -0
  349. package/src/utils/cloud-api.ts +10 -0
  350. package/src/utils/cloud-sdk/client.ts +735 -0
  351. package/src/utils/cloud-sdk/http.ts +291 -0
  352. package/src/utils/cloud-sdk/index.ts +23 -0
  353. package/src/utils/cloud-sdk/public-routes.ts +5070 -0
  354. package/src/utils/cloud-sdk/types.cloud-api.ts +120 -0
  355. package/src/utils/cloud-sdk/types.ts +762 -0
  356. package/src/utils/config.ts +174 -0
  357. package/src/utils/events.ts +37 -0
  358. package/src/utils/helpers.ts +107 -0
  359. package/src/utils/responses-output.ts +115 -0
  360. package/src/utils/sdk-client.ts +37 -0
  361. package/dist/actions/check-credits.d.ts +0 -6
  362. package/dist/actions/check-credits.d.ts.map +0 -1
  363. package/dist/actions/freeze-agent.d.ts +0 -9
  364. package/dist/actions/freeze-agent.d.ts.map +0 -1
  365. package/dist/actions/index.d.ts +0 -5
  366. package/dist/actions/index.d.ts.map +0 -1
  367. package/dist/actions/provision-agent.d.ts +0 -8
  368. package/dist/actions/provision-agent.d.ts.map +0 -1
  369. package/dist/actions/resume-agent.d.ts +0 -9
  370. package/dist/actions/resume-agent.d.ts.map +0 -1
  371. package/dist/build.d.ts +0 -3
  372. package/dist/build.d.ts.map +0 -1
  373. package/dist/generated/specs/specs.d.ts +0 -55
  374. package/dist/generated/specs/specs.d.ts.map +0 -1
  375. package/dist/models/object.d.ts +0 -4
  376. package/dist/models/object.d.ts.map +0 -1
  377. package/dist/utils/forwarded-settings.d.ts +0 -8
  378. package/dist/utils/forwarded-settings.d.ts.map +0 -1
@@ -0,0 +1,479 @@
1
+ import { createRequire } from "node:module";
2
+ var __defProp = Object.defineProperty;
3
+ var __returnValue = (v) => v;
4
+ function __exportSetter(name, newValue) {
5
+ this[name] = __returnValue.bind(null, newValue);
6
+ }
7
+ var __export = (target, all) => {
8
+ for (var name in all)
9
+ __defProp(target, name, {
10
+ get: all[name],
11
+ enumerable: true,
12
+ configurable: true,
13
+ set: __exportSetter.bind(all, name)
14
+ });
15
+ };
16
+ var __esm = (fn, res) => () => (fn && (res = fn(fn = 0)), res);
17
+ var __require = /* @__PURE__ */ createRequire(import.meta.url);
18
+
19
+ // src/services/cloud-managed-gateway-relay.ts
20
+ import {
21
+ ChannelType,
22
+ ContentType,
23
+ createMessageMemory,
24
+ createUniqueUuid,
25
+ logger,
26
+ Service
27
+ } from "@elizaos/core";
28
+ var POLL_TIMEOUT_MS = 25000;
29
+ var REQUEST_TIMEOUT_MS = POLL_TIMEOUT_MS + 5000;
30
+ var RETRY_DELAY_MS = 2000;
31
+ var IDLE_DELAY_MS = 250;
32
+ function sleep(ms) {
33
+ return new Promise((resolve) => setTimeout(resolve, ms));
34
+ }
35
+ function isRecord(value) {
36
+ return typeof value === "object" && value !== null && !Array.isArray(value);
37
+ }
38
+ function isUuidLike(value) {
39
+ return /^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i.test(value);
40
+ }
41
+ function asTrimmedString(value) {
42
+ return typeof value === "string" && value.trim() ? value.trim() : undefined;
43
+ }
44
+ function resolveChannelType(value) {
45
+ const candidate = asTrimmedString(value)?.toUpperCase();
46
+ return candidate && candidate in ChannelType ? ChannelType[candidate] : ChannelType.DM;
47
+ }
48
+ function isCloudProvisionedRuntime() {
49
+ if (typeof process === "undefined") {
50
+ return false;
51
+ }
52
+ return process.env.ELIZA_CLOUD_PROVISIONED === "1";
53
+ }
54
+ function isNodeHost() {
55
+ return typeof process !== "undefined" && typeof process.versions?.node === "string";
56
+ }
57
+ function normalizeAttachments(value) {
58
+ if (!Array.isArray(value)) {
59
+ return;
60
+ }
61
+ const attachments = value.map((entry, index) => {
62
+ if (!isRecord(entry)) {
63
+ return null;
64
+ }
65
+ const url = asTrimmedString(entry.url);
66
+ if (!url) {
67
+ return null;
68
+ }
69
+ const type = asTrimmedString(entry.type)?.toLowerCase();
70
+ return {
71
+ id: asTrimmedString(entry.id) ?? `${index}:${url}`,
72
+ url,
73
+ source: asTrimmedString(entry.source),
74
+ title: asTrimmedString(entry.title),
75
+ description: asTrimmedString(entry.description),
76
+ text: asTrimmedString(entry.text),
77
+ contentType: type === "image" ? ContentType.IMAGE : type === "video" ? ContentType.VIDEO : type === "audio" ? ContentType.AUDIO : type === "document" ? ContentType.DOCUMENT : undefined
78
+ };
79
+ }).filter((entry) => entry !== null);
80
+ return attachments.length > 0 ? attachments : undefined;
81
+ }
82
+ function toJsonRecord(value) {
83
+ return isRecord(value) ? value : undefined;
84
+ }
85
+ function toJsonMetadataRecord(value) {
86
+ if (!isRecord(value)) {
87
+ return;
88
+ }
89
+ return JSON.parse(JSON.stringify(value));
90
+ }
91
+ function buildGatewayMessagePayload(runtime, rpc) {
92
+ const params = toJsonRecord(rpc.params);
93
+ const sender = toJsonRecord(params?.sender);
94
+ const source = asTrimmedString(params?.source) ?? "eliza_cloud_gateway";
95
+ const text = typeof params?.text === "string" ? params.text : "";
96
+ const senderId = asTrimmedString(sender?.id) ?? `${source}:anonymous`;
97
+ const senderUserName = asTrimmedString(sender?.username) ?? senderId;
98
+ const senderName = asTrimmedString(sender?.displayName) ?? asTrimmedString(sender?.name) ?? senderUserName;
99
+ const roomKey = asTrimmedString(params?.roomId) ?? `${source}:${senderId}:${String(rpc.id ?? Date.now())}:${runtime.agentId}`;
100
+ if (!text.trim() && !normalizeAttachments(params?.attachments)?.length) {
101
+ return null;
102
+ }
103
+ return {
104
+ text: text.trim() || " ",
105
+ roomKey,
106
+ channelType: resolveChannelType(params?.channelType),
107
+ source,
108
+ senderId,
109
+ senderUserName,
110
+ senderName,
111
+ attachments: normalizeAttachments(params?.attachments),
112
+ senderMetadata: toJsonRecord(sender?.metadata),
113
+ transportMetadata: toJsonRecord(params?.metadata)
114
+ };
115
+ }
116
+ function buildWorldKey(source, metadata, roomKey) {
117
+ const discord = toJsonRecord(metadata?.discord);
118
+ const guildId = asTrimmedString(discord?.guildId);
119
+ if (guildId) {
120
+ return `gateway:${source}:guild:${guildId}`;
121
+ }
122
+ const threadId = asTrimmedString(metadata?.threadId);
123
+ if (threadId) {
124
+ return `gateway:${source}:thread:${threadId}`;
125
+ }
126
+ return `gateway:${source}:room:${roomKey}`;
127
+ }
128
+
129
+ class SessionMissingError extends Error {
130
+ constructor() {
131
+ super("Gateway relay session missing");
132
+ this.name = "SessionMissingError";
133
+ }
134
+ }
135
+
136
+ class CloudManagedGatewayRelayService extends Service {
137
+ static serviceType = "CLOUD_MANAGED_GATEWAY_RELAY";
138
+ capabilityDescription = "Registers a local Eliza runtime with the cloud managed gateway and handles inbound relay traffic";
139
+ authService = null;
140
+ loopPromise = null;
141
+ currentSessionId = null;
142
+ stopping = false;
143
+ activeAbortController = null;
144
+ relayStatus = "idle";
145
+ lastSeenAt = null;
146
+ static async start(runtime) {
147
+ const service = new CloudManagedGatewayRelayService(runtime);
148
+ await service.initialize();
149
+ return service;
150
+ }
151
+ async stop() {
152
+ this.stopping = true;
153
+ this.relayStatus = "stopped";
154
+ this.activeAbortController?.abort();
155
+ if (this.loopPromise) {
156
+ await this.loopPromise.catch((error) => {
157
+ logger.debug(`[CloudManagedGatewayRelay] Ignoring relay loop shutdown error: ${error instanceof Error ? error.message : String(error)}`);
158
+ });
159
+ }
160
+ const sessionId = this.currentSessionId;
161
+ this.currentSessionId = null;
162
+ if (sessionId) {
163
+ await this.disconnectSession(sessionId);
164
+ }
165
+ }
166
+ async initialize() {
167
+ if (!isNodeHost()) {
168
+ logger.debug("[CloudManagedGatewayRelay] Skipping gateway relay outside Node.js runtime");
169
+ this.relayStatus = "stopped";
170
+ return;
171
+ }
172
+ if (isCloudProvisionedRuntime()) {
173
+ logger.debug("[CloudManagedGatewayRelay] Skipping local relay inside provisioned cloud runtime");
174
+ this.relayStatus = "stopped";
175
+ return;
176
+ }
177
+ if (!this.runtime.messageService) {
178
+ logger.debug("[CloudManagedGatewayRelay] Skipping gateway relay without message service");
179
+ this.relayStatus = "idle";
180
+ return;
181
+ }
182
+ const auth = this.runtime.getService("CLOUD_AUTH");
183
+ if (!auth) {
184
+ logger.debug("[CloudManagedGatewayRelay] CloudAuthService not available");
185
+ this.relayStatus = "idle";
186
+ return;
187
+ }
188
+ this.authService = auth;
189
+ if (!this.authService.isAuthenticated()) {
190
+ logger.debug("[CloudManagedGatewayRelay] Skipping gateway relay while cloud auth is inactive");
191
+ this.relayStatus = "idle";
192
+ return;
193
+ }
194
+ this.startRelayLoopIfReady();
195
+ }
196
+ getSessionInfo() {
197
+ const auth = this.authService;
198
+ const status = this.stopping || this.relayStatus === "stopped" ? "stopped" : auth?.isAuthenticated() === false ? "idle" : this.relayStatus;
199
+ return {
200
+ sessionId: this.currentSessionId,
201
+ organizationId: auth?.getOrganizationId() ?? null,
202
+ userId: auth?.getUserId() ?? null,
203
+ agentName: this.getAgentName(),
204
+ platform: "local-runtime",
205
+ lastSeenAt: this.lastSeenAt,
206
+ status
207
+ };
208
+ }
209
+ startRelayLoopIfReady() {
210
+ if (this.loopPromise && !this.stopping) {
211
+ return true;
212
+ }
213
+ const auth = this.authService ?? this.runtime.getService("CLOUD_AUTH");
214
+ if (!auth?.isAuthenticated() || !this.runtime.messageService) {
215
+ this.relayStatus = "idle";
216
+ return false;
217
+ }
218
+ this.authService = auth;
219
+ this.stopping = false;
220
+ this.relayStatus = "idle";
221
+ this.loopPromise = this.runLoop();
222
+ logger.info("[CloudManagedGatewayRelay] Local gateway relay loop started");
223
+ return true;
224
+ }
225
+ async runLoop() {
226
+ while (!this.stopping) {
227
+ try {
228
+ if (!this.currentSessionId) {
229
+ this.currentSessionId = await this.registerSession();
230
+ this.relayStatus = "registered";
231
+ this.lastSeenAt = new Date().toISOString();
232
+ continue;
233
+ }
234
+ this.relayStatus = "polling";
235
+ const request = await this.pollNextRequest(this.currentSessionId);
236
+ this.lastSeenAt = new Date().toISOString();
237
+ if (!request) {
238
+ this.relayStatus = "registered";
239
+ await sleep(IDLE_DELAY_MS);
240
+ continue;
241
+ }
242
+ const response = await this.handleRequest(request.rpc);
243
+ await this.submitResponse(this.currentSessionId, request.requestId, response);
244
+ this.relayStatus = "registered";
245
+ } catch (error) {
246
+ if (this.stopping) {
247
+ return;
248
+ }
249
+ if (error instanceof SessionMissingError) {
250
+ this.currentSessionId = null;
251
+ this.relayStatus = "idle";
252
+ await sleep(IDLE_DELAY_MS);
253
+ continue;
254
+ }
255
+ this.relayStatus = "error";
256
+ logger.warn(`[CloudManagedGatewayRelay] Relay loop error: ${error instanceof Error ? error.message : String(error)}`);
257
+ await sleep(RETRY_DELAY_MS);
258
+ }
259
+ }
260
+ }
261
+ getAgentName() {
262
+ return this.runtime.character?.name?.trim() || "Eliza";
263
+ }
264
+ getClient() {
265
+ const client = this.authService?.getClient();
266
+ if (!client) {
267
+ throw new Error("Cloud API client is unavailable");
268
+ }
269
+ return client;
270
+ }
271
+ async requestJson(path, options) {
272
+ const timeoutMs = options.timeoutMs ?? REQUEST_TIMEOUT_MS;
273
+ const controller = new AbortController;
274
+ const timeoutId = setTimeout(() => controller.abort(), timeoutMs);
275
+ this.activeAbortController = controller;
276
+ try {
277
+ const response = await this.getClient().requestRaw(options.method, path, {
278
+ headers: {
279
+ Accept: "application/json"
280
+ },
281
+ json: options.json,
282
+ query: options.query,
283
+ signal: controller.signal
284
+ });
285
+ const body = await response.json().catch(() => ({}));
286
+ return { status: response.status, body };
287
+ } finally {
288
+ clearTimeout(timeoutId);
289
+ if (this.activeAbortController === controller) {
290
+ this.activeAbortController = null;
291
+ }
292
+ }
293
+ }
294
+ async registerSession() {
295
+ const { status, body } = await this.requestJson("/eliza/gateway-relay/sessions", {
296
+ method: "POST",
297
+ json: {
298
+ runtimeAgentId: this.runtime.agentId,
299
+ agentName: this.getAgentName()
300
+ }
301
+ });
302
+ if (status >= 400 || !body?.success || !body.data?.session?.id) {
303
+ throw new Error(`Failed to register gateway relay session (status=${status})`);
304
+ }
305
+ logger.info(`[CloudManagedGatewayRelay] Registered local runtime for managed gateway (${body.data.session.id})`);
306
+ return body.data.session.id;
307
+ }
308
+ async disconnectSession(sessionId) {
309
+ try {
310
+ await this.requestJson(`/eliza/gateway-relay/sessions/${encodeURIComponent(sessionId)}`, {
311
+ method: "DELETE",
312
+ timeoutMs: 1e4
313
+ });
314
+ } catch (error) {
315
+ logger.debug(`[CloudManagedGatewayRelay] Failed to disconnect relay session ${sessionId}: ${error instanceof Error ? error.message : String(error)}`);
316
+ }
317
+ }
318
+ async pollNextRequest(sessionId) {
319
+ const { status, body } = await this.requestJson(`/eliza/gateway-relay/sessions/${encodeURIComponent(sessionId)}/next`, {
320
+ method: "GET",
321
+ query: { timeoutMs: POLL_TIMEOUT_MS },
322
+ timeoutMs: POLL_TIMEOUT_MS + 5000
323
+ });
324
+ if (status === 404) {
325
+ throw new SessionMissingError;
326
+ }
327
+ if (status >= 400 || !body?.success) {
328
+ throw new Error(`Failed to poll gateway relay session ${sessionId} (status=${status})`);
329
+ }
330
+ return body.data?.request ?? null;
331
+ }
332
+ async submitResponse(sessionId, requestId, response) {
333
+ const { status, body } = await this.requestJson(`/eliza/gateway-relay/sessions/${encodeURIComponent(sessionId)}/responses`, {
334
+ method: "POST",
335
+ json: { requestId, response }
336
+ });
337
+ if (status === 404) {
338
+ throw new SessionMissingError;
339
+ }
340
+ if (status >= 400 || body?.success === false) {
341
+ throw new Error(`Failed to submit gateway relay response (status=${status})`);
342
+ }
343
+ }
344
+ async handleRequest(rpc) {
345
+ switch (rpc.method) {
346
+ case "heartbeat":
347
+ return {
348
+ jsonrpc: "2.0",
349
+ id: rpc.id,
350
+ result: { timestamp: Date.now() }
351
+ };
352
+ case "status.get":
353
+ return {
354
+ jsonrpc: "2.0",
355
+ id: rpc.id,
356
+ result: {
357
+ status: "running",
358
+ runtimeAgentId: this.runtime.agentId,
359
+ agentName: this.getAgentName()
360
+ }
361
+ };
362
+ case "message.send":
363
+ return this.handleMessageSend(rpc);
364
+ default:
365
+ return {
366
+ jsonrpc: "2.0",
367
+ id: rpc.id,
368
+ error: {
369
+ code: -32601,
370
+ message: `Unsupported relay method: ${rpc.method}`
371
+ }
372
+ };
373
+ }
374
+ }
375
+ async handleMessageSend(rpc) {
376
+ if (!this.runtime.messageService) {
377
+ return {
378
+ jsonrpc: "2.0",
379
+ id: rpc.id,
380
+ error: { code: -32603, message: "Message service is not available" }
381
+ };
382
+ }
383
+ const payload = buildGatewayMessagePayload(this.runtime, rpc);
384
+ if (!payload) {
385
+ return {
386
+ jsonrpc: "2.0",
387
+ id: rpc.id,
388
+ error: { code: -32602, message: "Invalid message relay payload" }
389
+ };
390
+ }
391
+ const roomId = isUuidLike(payload.roomKey) ? payload.roomKey : createUniqueUuid(this.runtime, payload.roomKey);
392
+ const worldId = createUniqueUuid(this.runtime, buildWorldKey(payload.source, payload.transportMetadata, payload.roomKey));
393
+ const entityId = createUniqueUuid(this.runtime, `${payload.source}:${payload.senderId}`);
394
+ const messageServerId = createUniqueUuid(this.runtime, `eliza-cloud-gateway:${payload.source}`);
395
+ const messageId = createUniqueUuid(this.runtime, `${payload.source}:${payload.roomKey}:${String(rpc.id ?? Date.now())}:inbound`);
396
+ const transportMetadata = toJsonMetadataRecord(payload.transportMetadata);
397
+ await this.runtime.ensureConnection({
398
+ entityId,
399
+ roomId,
400
+ roomName: payload.roomKey,
401
+ worldId,
402
+ worldName: payload.source,
403
+ userName: payload.senderUserName,
404
+ name: payload.senderName,
405
+ source: payload.source,
406
+ channelId: payload.roomKey,
407
+ type: payload.channelType,
408
+ messageServerId,
409
+ metadata: transportMetadata
410
+ });
411
+ const message = createMessageMemory({
412
+ id: messageId,
413
+ entityId,
414
+ agentId: this.runtime.agentId,
415
+ roomId,
416
+ content: {
417
+ text: payload.text,
418
+ source: payload.source,
419
+ channelType: payload.channelType,
420
+ ...payload.attachments ? { attachments: payload.attachments } : {}
421
+ }
422
+ });
423
+ message.metadata = {
424
+ ...message.metadata,
425
+ entityName: payload.senderName,
426
+ entityUserName: payload.senderUserName,
427
+ ...payload.senderMetadata ? { gatewaySender: toJsonMetadataRecord(payload.senderMetadata) } : {},
428
+ ...payload.transportMetadata ? { gatewayMetadata: transportMetadata } : {}
429
+ };
430
+ const callbackTexts = [];
431
+ const callback = async (content) => {
432
+ const responseText = typeof content.text === "string" ? content.text : "";
433
+ if (responseText.trim()) {
434
+ callbackTexts.push(responseText);
435
+ }
436
+ const responseMemory = createMessageMemory({
437
+ id: createUniqueUuid(this.runtime, `${payload.source}:${payload.roomKey}:${String(rpc.id ?? Date.now())}:response:${callbackTexts.length}`),
438
+ entityId: this.runtime.agentId,
439
+ agentId: this.runtime.agentId,
440
+ roomId,
441
+ content: {
442
+ ...content,
443
+ text: responseText,
444
+ source: payload.source,
445
+ channelType: payload.channelType
446
+ }
447
+ });
448
+ await this.runtime.createMemory(responseMemory, "messages");
449
+ return [responseMemory];
450
+ };
451
+ try {
452
+ const result = await this.runtime.messageService.handleMessage(this.runtime, message, callback);
453
+ const replyText = callbackTexts[callbackTexts.length - 1] ?? (typeof result.responseContent?.text === "string" ? result.responseContent.text : undefined);
454
+ return {
455
+ jsonrpc: "2.0",
456
+ id: rpc.id,
457
+ result: {
458
+ didRespond: result.didRespond,
459
+ ...replyText ? { text: replyText } : {},
460
+ runtimeAgentId: this.runtime.agentId
461
+ }
462
+ };
463
+ } catch (error) {
464
+ return {
465
+ jsonrpc: "2.0",
466
+ id: rpc.id,
467
+ error: {
468
+ code: -32603,
469
+ message: error instanceof Error ? error.message : String(error)
470
+ }
471
+ };
472
+ }
473
+ }
474
+ }
475
+ export {
476
+ CloudManagedGatewayRelayService
477
+ };
478
+
479
+ //# debugId=964A5D4CCED5804564756E2164756E21
@@ -0,0 +1,10 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../src/services/cloud-managed-gateway-relay.ts"],
4
+ "sourcesContent": [
5
+ "import {\n ChannelType,\n type Content,\n ContentType,\n createMessageMemory,\n createUniqueUuid,\n type HandlerCallback,\n type IAgentRuntime,\n type JsonValue,\n logger,\n type Memory,\n Service,\n type UUID,\n} from \"@elizaos/core\";\nimport type {\n GatewayRelayRequest,\n GatewayRelayRequestEnvelope,\n GatewayRelayResponse,\n PollGatewayRelayResponse,\n RegisterGatewayRelaySessionResponse,\n} from \"../types/cloud\";\nimport type { CloudAuthService } from \"./cloud-auth\";\n\nconst POLL_TIMEOUT_MS = 25_000;\nconst REQUEST_TIMEOUT_MS = POLL_TIMEOUT_MS + 5_000;\nconst RETRY_DELAY_MS = 2_000;\nconst IDLE_DELAY_MS = 250;\n\ntype RelayRequestMethod = \"GET\" | \"POST\" | \"DELETE\";\ntype RelayRuntimeStatus = \"idle\" | \"registered\" | \"polling\" | \"error\" | \"stopped\";\n\ninterface RelayRequestJsonOptions {\n method: RelayRequestMethod;\n json?: unknown;\n query?: Record<string, string | number | boolean>;\n timeoutMs?: number;\n}\n\nfunction sleep(ms: number): Promise<void> {\n return new Promise((resolve) => setTimeout(resolve, ms));\n}\n\nfunction isRecord(value: unknown): value is Record<string, unknown> {\n return typeof value === \"object\" && value !== null && !Array.isArray(value);\n}\n\nfunction isUuidLike(value: string): value is UUID {\n return /^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i.test(value);\n}\n\nfunction asTrimmedString(value: unknown): string | undefined {\n return typeof value === \"string\" && value.trim() ? value.trim() : undefined;\n}\n\nfunction resolveChannelType(value: unknown): ChannelType {\n const candidate = asTrimmedString(value)?.toUpperCase();\n return candidate && candidate in ChannelType\n ? ChannelType[candidate as keyof typeof ChannelType]\n : ChannelType.DM;\n}\n\nfunction isCloudProvisionedRuntime(): boolean {\n if (typeof process === \"undefined\") {\n return false;\n }\n return process.env.ELIZA_CLOUD_PROVISIONED === \"1\";\n}\n\nfunction isNodeHost(): boolean {\n return typeof process !== \"undefined\" && typeof process.versions?.node === \"string\";\n}\n\nfunction normalizeAttachments(value: unknown): Content[\"attachments\"] | undefined {\n if (!Array.isArray(value)) {\n return undefined;\n }\n\n const attachments = value\n .map((entry, index) => {\n if (!isRecord(entry)) {\n return null;\n }\n\n const url = asTrimmedString(entry.url);\n if (!url) {\n return null;\n }\n\n const type = asTrimmedString(entry.type)?.toLowerCase();\n return {\n id: asTrimmedString(entry.id) ?? `${index}:${url}`,\n url,\n source: asTrimmedString(entry.source),\n title: asTrimmedString(entry.title),\n description: asTrimmedString(entry.description),\n text: asTrimmedString(entry.text),\n contentType:\n type === \"image\"\n ? ContentType.IMAGE\n : type === \"video\"\n ? ContentType.VIDEO\n : type === \"audio\"\n ? ContentType.AUDIO\n : type === \"document\"\n ? ContentType.DOCUMENT\n : undefined,\n };\n })\n .filter((entry): entry is NonNullable<typeof entry> => entry !== null);\n\n return attachments.length > 0 ? attachments : undefined;\n}\n\nfunction toJsonRecord(value: unknown): Record<string, unknown> | undefined {\n return isRecord(value) ? value : undefined;\n}\n\nfunction toJsonMetadataRecord(value: unknown): Record<string, JsonValue> | undefined {\n if (!isRecord(value)) {\n return undefined;\n }\n\n return JSON.parse(JSON.stringify(value)) as Record<string, JsonValue>;\n}\n\ntype GatewayMessagePayload = {\n text: string;\n roomKey: string;\n channelType: ChannelType;\n source: string;\n senderId: string;\n senderUserName: string;\n senderName: string;\n attachments?: Content[\"attachments\"];\n senderMetadata?: Record<string, unknown>;\n transportMetadata?: Record<string, unknown>;\n};\n\nfunction buildGatewayMessagePayload(\n runtime: IAgentRuntime,\n rpc: GatewayRelayRequest\n): GatewayMessagePayload | null {\n const params = toJsonRecord(rpc.params);\n const sender = toJsonRecord(params?.sender);\n\n const source = asTrimmedString(params?.source) ?? \"eliza_cloud_gateway\";\n const text = typeof params?.text === \"string\" ? params.text : \"\";\n const senderId = asTrimmedString(sender?.id) ?? `${source}:anonymous`;\n const senderUserName = asTrimmedString(sender?.username) ?? senderId;\n const senderName =\n asTrimmedString(sender?.displayName) ?? asTrimmedString(sender?.name) ?? senderUserName;\n const roomKey =\n asTrimmedString(params?.roomId) ??\n `${source}:${senderId}:${String(rpc.id ?? Date.now())}:${runtime.agentId}`;\n\n if (!text.trim() && !normalizeAttachments(params?.attachments)?.length) {\n return null;\n }\n\n return {\n text: text.trim() || \" \",\n roomKey,\n channelType: resolveChannelType(params?.channelType),\n source,\n senderId,\n senderUserName,\n senderName,\n attachments: normalizeAttachments(params?.attachments),\n senderMetadata: toJsonRecord(sender?.metadata),\n transportMetadata: toJsonRecord(params?.metadata),\n };\n}\n\nfunction buildWorldKey(\n source: string,\n metadata: Record<string, unknown> | undefined,\n roomKey: string\n): string {\n const discord = toJsonRecord(metadata?.discord);\n const guildId = asTrimmedString(discord?.guildId);\n if (guildId) {\n return `gateway:${source}:guild:${guildId}`;\n }\n\n const threadId = asTrimmedString(metadata?.threadId);\n if (threadId) {\n return `gateway:${source}:thread:${threadId}`;\n }\n\n return `gateway:${source}:room:${roomKey}`;\n}\n\nclass SessionMissingError extends Error {\n constructor() {\n super(\"Gateway relay session missing\");\n this.name = \"SessionMissingError\";\n }\n}\n\nexport class CloudManagedGatewayRelayService extends Service {\n static serviceType = \"CLOUD_MANAGED_GATEWAY_RELAY\";\n capabilityDescription =\n \"Registers a local Eliza runtime with the cloud managed gateway and handles inbound relay traffic\";\n\n private authService: CloudAuthService | null = null;\n private loopPromise: Promise<void> | null = null;\n private currentSessionId: string | null = null;\n private stopping = false;\n private activeAbortController: AbortController | null = null;\n private relayStatus: RelayRuntimeStatus = \"idle\";\n private lastSeenAt: string | null = null;\n\n static async start(runtime: IAgentRuntime): Promise<Service> {\n const service = new CloudManagedGatewayRelayService(runtime);\n await service.initialize();\n return service;\n }\n\n async stop(): Promise<void> {\n this.stopping = true;\n this.relayStatus = \"stopped\";\n this.activeAbortController?.abort();\n\n if (this.loopPromise) {\n await this.loopPromise.catch((error) => {\n logger.debug(\n `[CloudManagedGatewayRelay] Ignoring relay loop shutdown error: ${\n error instanceof Error ? error.message : String(error)\n }`\n );\n });\n }\n\n const sessionId = this.currentSessionId;\n this.currentSessionId = null;\n if (sessionId) {\n await this.disconnectSession(sessionId);\n }\n }\n\n private async initialize(): Promise<void> {\n if (!isNodeHost()) {\n logger.debug(\"[CloudManagedGatewayRelay] Skipping gateway relay outside Node.js runtime\");\n this.relayStatus = \"stopped\";\n return;\n }\n\n if (isCloudProvisionedRuntime()) {\n logger.debug(\n \"[CloudManagedGatewayRelay] Skipping local relay inside provisioned cloud runtime\"\n );\n this.relayStatus = \"stopped\";\n return;\n }\n\n if (!this.runtime.messageService) {\n logger.debug(\"[CloudManagedGatewayRelay] Skipping gateway relay without message service\");\n this.relayStatus = \"idle\";\n return;\n }\n\n const auth = this.runtime.getService(\"CLOUD_AUTH\");\n if (!auth) {\n logger.debug(\"[CloudManagedGatewayRelay] CloudAuthService not available\");\n this.relayStatus = \"idle\";\n return;\n }\n\n this.authService = auth as CloudAuthService;\n if (!this.authService.isAuthenticated()) {\n logger.debug(\n \"[CloudManagedGatewayRelay] Skipping gateway relay while cloud auth is inactive\"\n );\n this.relayStatus = \"idle\";\n return;\n }\n\n this.startRelayLoopIfReady();\n }\n\n getSessionInfo(): {\n sessionId: string | null;\n organizationId: string | null;\n userId: string | null;\n agentName: string | null;\n platform: string | null;\n lastSeenAt: string | null;\n status: RelayRuntimeStatus;\n } {\n const auth = this.authService;\n const status =\n this.stopping || this.relayStatus === \"stopped\"\n ? \"stopped\"\n : auth?.isAuthenticated() === false\n ? \"idle\"\n : this.relayStatus;\n\n return {\n sessionId: this.currentSessionId,\n organizationId: auth?.getOrganizationId() ?? null,\n userId: auth?.getUserId() ?? null,\n agentName: this.getAgentName(),\n platform: \"local-runtime\",\n lastSeenAt: this.lastSeenAt,\n status,\n };\n }\n\n startRelayLoopIfReady(): boolean {\n if (this.loopPromise && !this.stopping) {\n return true;\n }\n\n const auth =\n this.authService ?? (this.runtime.getService(\"CLOUD_AUTH\") as CloudAuthService | null);\n if (!auth?.isAuthenticated() || !this.runtime.messageService) {\n this.relayStatus = \"idle\";\n return false;\n }\n\n this.authService = auth;\n this.stopping = false;\n this.relayStatus = \"idle\";\n this.loopPromise = this.runLoop();\n logger.info(\"[CloudManagedGatewayRelay] Local gateway relay loop started\");\n return true;\n }\n\n private async runLoop(): Promise<void> {\n while (!this.stopping) {\n try {\n if (!this.currentSessionId) {\n this.currentSessionId = await this.registerSession();\n this.relayStatus = \"registered\";\n this.lastSeenAt = new Date().toISOString();\n continue;\n }\n\n this.relayStatus = \"polling\";\n const request = await this.pollNextRequest(this.currentSessionId);\n this.lastSeenAt = new Date().toISOString();\n if (!request) {\n this.relayStatus = \"registered\";\n await sleep(IDLE_DELAY_MS);\n continue;\n }\n\n const response = await this.handleRequest(request.rpc);\n await this.submitResponse(this.currentSessionId, request.requestId, response);\n this.relayStatus = \"registered\";\n } catch (error) {\n if (this.stopping) {\n return;\n }\n\n if (error instanceof SessionMissingError) {\n this.currentSessionId = null;\n this.relayStatus = \"idle\";\n await sleep(IDLE_DELAY_MS);\n continue;\n }\n\n this.relayStatus = \"error\";\n logger.warn(\n `[CloudManagedGatewayRelay] Relay loop error: ${\n error instanceof Error ? error.message : String(error)\n }`\n );\n await sleep(RETRY_DELAY_MS);\n }\n }\n }\n\n private getAgentName(): string {\n return this.runtime.character?.name?.trim() || \"Eliza\";\n }\n\n private getClient() {\n const client = this.authService?.getClient();\n if (!client) {\n throw new Error(\"Cloud API client is unavailable\");\n }\n return client;\n }\n\n private async requestJson<T>(\n path: string,\n options: RelayRequestJsonOptions\n ): Promise<{ status: number; body: T }> {\n const timeoutMs = options.timeoutMs ?? REQUEST_TIMEOUT_MS;\n const controller = new AbortController();\n const timeoutId = setTimeout(() => controller.abort(), timeoutMs);\n this.activeAbortController = controller;\n\n try {\n const response = await this.getClient().requestRaw(options.method, path, {\n headers: {\n Accept: \"application/json\",\n },\n json: options.json,\n query: options.query,\n signal: controller.signal,\n });\n\n const body = (await response.json().catch(() => ({}))) as T;\n return { status: response.status, body };\n } finally {\n clearTimeout(timeoutId);\n if (this.activeAbortController === controller) {\n this.activeAbortController = null;\n }\n }\n }\n\n private async registerSession(): Promise<string> {\n const { status, body } = await this.requestJson<RegisterGatewayRelaySessionResponse>(\n \"/eliza/gateway-relay/sessions\",\n {\n method: \"POST\",\n json: {\n runtimeAgentId: this.runtime.agentId,\n agentName: this.getAgentName(),\n },\n }\n );\n\n if (status >= 400 || !body?.success || !body.data?.session?.id) {\n throw new Error(`Failed to register gateway relay session (status=${status})`);\n }\n\n logger.info(\n `[CloudManagedGatewayRelay] Registered local runtime for managed gateway (${body.data.session.id})`\n );\n return body.data.session.id;\n }\n\n private async disconnectSession(sessionId: string): Promise<void> {\n try {\n await this.requestJson<{ success?: boolean }>(\n `/eliza/gateway-relay/sessions/${encodeURIComponent(sessionId)}`,\n {\n method: \"DELETE\",\n timeoutMs: 10_000,\n }\n );\n } catch (error) {\n logger.debug(\n `[CloudManagedGatewayRelay] Failed to disconnect relay session ${sessionId}: ${\n error instanceof Error ? error.message : String(error)\n }`\n );\n }\n }\n\n private async pollNextRequest(sessionId: string): Promise<GatewayRelayRequestEnvelope | null> {\n const { status, body } = await this.requestJson<PollGatewayRelayResponse>(\n `/eliza/gateway-relay/sessions/${encodeURIComponent(sessionId)}/next`,\n {\n method: \"GET\",\n query: { timeoutMs: POLL_TIMEOUT_MS },\n timeoutMs: POLL_TIMEOUT_MS + 5_000,\n }\n );\n\n if (status === 404) {\n throw new SessionMissingError();\n }\n\n if (status >= 400 || !body?.success) {\n throw new Error(`Failed to poll gateway relay session ${sessionId} (status=${status})`);\n }\n\n return body.data?.request ?? null;\n }\n\n private async submitResponse(\n sessionId: string,\n requestId: string,\n response: GatewayRelayResponse\n ): Promise<void> {\n const { status, body } = await this.requestJson<{ success?: boolean }>(\n `/eliza/gateway-relay/sessions/${encodeURIComponent(sessionId)}/responses`,\n {\n method: \"POST\",\n json: { requestId, response },\n }\n );\n\n if (status === 404) {\n throw new SessionMissingError();\n }\n\n if (status >= 400 || body?.success === false) {\n throw new Error(`Failed to submit gateway relay response (status=${status})`);\n }\n }\n\n private async handleRequest(rpc: GatewayRelayRequest): Promise<GatewayRelayResponse> {\n switch (rpc.method) {\n case \"heartbeat\":\n return {\n jsonrpc: \"2.0\",\n id: rpc.id,\n result: { timestamp: Date.now() },\n };\n case \"status.get\":\n return {\n jsonrpc: \"2.0\",\n id: rpc.id,\n result: {\n status: \"running\",\n runtimeAgentId: this.runtime.agentId,\n agentName: this.getAgentName(),\n },\n };\n case \"message.send\":\n return this.handleMessageSend(rpc);\n default:\n return {\n jsonrpc: \"2.0\",\n id: rpc.id,\n error: {\n code: -32601,\n message: `Unsupported relay method: ${rpc.method}`,\n },\n };\n }\n }\n\n private async handleMessageSend(rpc: GatewayRelayRequest): Promise<GatewayRelayResponse> {\n if (!this.runtime.messageService) {\n return {\n jsonrpc: \"2.0\",\n id: rpc.id,\n error: { code: -32603, message: \"Message service is not available\" },\n };\n }\n\n const payload = buildGatewayMessagePayload(this.runtime, rpc);\n if (!payload) {\n return {\n jsonrpc: \"2.0\",\n id: rpc.id,\n error: { code: -32602, message: \"Invalid message relay payload\" },\n };\n }\n\n const roomId = isUuidLike(payload.roomKey)\n ? payload.roomKey\n : createUniqueUuid(this.runtime, payload.roomKey);\n const worldId = createUniqueUuid(\n this.runtime,\n buildWorldKey(payload.source, payload.transportMetadata, payload.roomKey)\n );\n const entityId = createUniqueUuid(this.runtime, `${payload.source}:${payload.senderId}`);\n const messageServerId = createUniqueUuid(this.runtime, `eliza-cloud-gateway:${payload.source}`);\n const messageId = createUniqueUuid(\n this.runtime,\n `${payload.source}:${payload.roomKey}:${String(rpc.id ?? Date.now())}:inbound`\n );\n\n const transportMetadata = toJsonMetadataRecord(payload.transportMetadata);\n\n await this.runtime.ensureConnection({\n entityId,\n roomId,\n roomName: payload.roomKey,\n worldId,\n worldName: payload.source,\n userName: payload.senderUserName,\n name: payload.senderName,\n source: payload.source,\n channelId: payload.roomKey,\n type: payload.channelType,\n messageServerId,\n metadata: transportMetadata,\n });\n\n const message = createMessageMemory({\n id: messageId,\n entityId,\n agentId: this.runtime.agentId,\n roomId,\n content: {\n text: payload.text,\n source: payload.source,\n channelType: payload.channelType,\n ...(payload.attachments ? { attachments: payload.attachments } : {}),\n },\n });\n\n message.metadata = {\n ...(message.metadata as Record<string, JsonValue>),\n entityName: payload.senderName,\n entityUserName: payload.senderUserName,\n ...(payload.senderMetadata\n ? { gatewaySender: toJsonMetadataRecord(payload.senderMetadata) }\n : {}),\n ...(payload.transportMetadata ? { gatewayMetadata: transportMetadata } : {}),\n } as typeof message.metadata;\n\n const callbackTexts: string[] = [];\n const callback: HandlerCallback = async (content: Content) => {\n const responseText = typeof content.text === \"string\" ? content.text : \"\";\n if (responseText.trim()) {\n callbackTexts.push(responseText);\n }\n\n const responseMemory = createMessageMemory({\n id: createUniqueUuid(\n this.runtime,\n `${payload.source}:${payload.roomKey}:${String(\n rpc.id ?? Date.now()\n )}:response:${callbackTexts.length}`\n ),\n entityId: this.runtime.agentId,\n agentId: this.runtime.agentId,\n roomId,\n content: {\n ...content,\n text: responseText,\n source: payload.source,\n channelType: payload.channelType,\n },\n });\n\n await this.runtime.createMemory(responseMemory, \"messages\");\n return [responseMemory as Memory];\n };\n\n try {\n const result = await this.runtime.messageService.handleMessage(\n this.runtime,\n message,\n callback\n );\n const replyText =\n callbackTexts[callbackTexts.length - 1] ??\n (typeof result.responseContent?.text === \"string\"\n ? result.responseContent.text\n : undefined);\n\n return {\n jsonrpc: \"2.0\",\n id: rpc.id,\n result: {\n didRespond: result.didRespond,\n ...(replyText ? { text: replyText } : {}),\n runtimeAgentId: this.runtime.agentId,\n },\n };\n } catch (error) {\n return {\n jsonrpc: \"2.0\",\n id: rpc.id,\n error: {\n code: -32603,\n message: error instanceof Error ? error.message : String(error),\n },\n };\n }\n }\n}\n"
6
+ ],
7
+ "mappings": "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",
8
+ "debugId": "964A5D4CCED5804564756E2164756E21",
9
+ "names": []
10
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"cloud-model-registry.d.ts","sourceRoot":"","sources":["../../services/cloud-model-registry.ts"],"names":[],"mappings":"AAAA,2DAA2D;AAE3D,OAAO,EAAE,KAAK,aAAa,EAAU,OAAO,EAAE,MAAM,eAAe,CAAC;AAepE,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,gBAAgB;IAC/B,CAAC,QAAQ,EAAE,MAAM,GAAG,cAAc,EAAE,CAAC;CACtC;AAoCD,qBAAa,yBAA0B,SAAQ,OAAO;IACpD,MAAM,CAAC,WAAW,SAA0B;IAC5C,qBAAqB,SAA8D;IAEnF,OAAO,CAAC,MAAM,CAAwB;IACtC,OAAO,CAAC,UAAU,CAAwB;IAC1C,OAAO,CAAC,aAAa,CAAK;IAC1B,OAAO,CAAC,YAAY,CAA8B;WAErC,KAAK,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,OAAO,CAAC;IAMtD,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;YAMb,UAAU;YAYV,WAAW;YAWX,aAAa;IA8B3B,OAAO,CAAC,wBAAwB;IAgD1B,kBAAkB,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC;IAO/C,mBAAmB,IAAI,OAAO,CAAC,gBAAgB,CAAC;CAMvD"}
1
+ {"version":3,"file":"cloud-model-registry.d.ts","sourceRoot":"","sources":["../../src/services/cloud-model-registry.ts"],"names":[],"mappings":"AAAA,2DAA2D;AAE3D,OAAO,EAAE,KAAK,aAAa,EAAU,OAAO,EAAE,MAAM,eAAe,CAAC;AAepE,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,gBAAgB;IAC/B,CAAC,QAAQ,EAAE,MAAM,GAAG,cAAc,EAAE,CAAC;CACtC;AAoCD,qBAAa,yBAA0B,SAAQ,OAAO;IACpD,MAAM,CAAC,WAAW,SAA0B;IAC5C,qBAAqB,SAA8D;IAEnF,OAAO,CAAC,MAAM,CAAwB;IACtC,OAAO,CAAC,UAAU,CAAwB;IAC1C,OAAO,CAAC,aAAa,CAAK;IAC1B,OAAO,CAAC,YAAY,CAA8B;WAErC,KAAK,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,OAAO,CAAC;IAMtD,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;YAMb,UAAU;YAYV,WAAW;YAWX,aAAa;IA8B3B,OAAO,CAAC,wBAAwB;IAoD1B,kBAAkB,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC;IAO/C,mBAAmB,IAAI,OAAO,CAAC,gBAAgB,CAAC;CAMvD"}