@elizaos/shared 2.0.0-alpha.537 → 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 (565) hide show
  1. package/dist/api/chat-contracts.d.ts +2 -0
  2. package/dist/api/chat-contracts.d.ts.map +1 -0
  3. package/dist/api/chat-contracts.js +2 -0
  4. package/dist/api/chat-contracts.js.map +1 -0
  5. package/dist/api/http-helpers.d.ts +50 -0
  6. package/dist/api/http-helpers.d.ts.map +1 -0
  7. package/dist/api/http-helpers.js +168 -0
  8. package/dist/api/http-helpers.js.map +1 -0
  9. package/dist/api/route-helpers.d.ts +16 -0
  10. package/dist/api/route-helpers.d.ts.map +1 -0
  11. package/dist/api/route-helpers.js +2 -0
  12. package/dist/api/route-helpers.js.map +1 -0
  13. package/dist/cli/parse-duration.d.ts +5 -0
  14. package/dist/cli/parse-duration.d.ts.map +1 -0
  15. package/dist/cli/parse-duration.js +28 -0
  16. package/dist/cli/parse-duration.js.map +1 -0
  17. package/dist/config/allowed-hosts.d.ts +8 -0
  18. package/dist/config/allowed-hosts.d.ts.map +1 -0
  19. package/dist/config/allowed-hosts.js +44 -0
  20. package/dist/config/allowed-hosts.js.map +1 -0
  21. package/dist/config/api-key-prefix-hints.d.ts +25 -0
  22. package/dist/config/api-key-prefix-hints.d.ts.map +1 -0
  23. package/dist/config/api-key-prefix-hints.js +27 -0
  24. package/dist/config/api-key-prefix-hints.js.map +1 -0
  25. package/dist/config/app-config.d.ts +273 -0
  26. package/dist/config/app-config.d.ts.map +1 -0
  27. package/dist/config/app-config.js +32 -0
  28. package/dist/config/app-config.js.map +1 -0
  29. package/dist/config/app-manifest.d.ts +75 -0
  30. package/dist/config/app-manifest.d.ts.map +1 -0
  31. package/dist/config/app-manifest.js +109 -0
  32. package/dist/config/app-manifest.js.map +1 -0
  33. package/dist/config/boot-config-react.d.ts +5 -0
  34. package/dist/config/boot-config-react.d.ts.map +1 -0
  35. package/dist/config/boot-config-react.js +8 -0
  36. package/dist/config/boot-config-react.js.map +1 -0
  37. package/dist/config/boot-config-store.d.ts +74 -0
  38. package/dist/config/boot-config-store.d.ts.map +1 -0
  39. package/dist/config/boot-config-store.js +121 -0
  40. package/dist/config/boot-config-store.js.map +1 -0
  41. package/dist/config/boot-config.d.ts +6 -0
  42. package/dist/config/boot-config.d.ts.map +1 -0
  43. package/dist/config/boot-config.js +6 -0
  44. package/dist/config/boot-config.js.map +1 -0
  45. package/dist/config/branding-react.d.ts +4 -0
  46. package/dist/config/branding-react.d.ts.map +1 -0
  47. package/dist/config/branding-react.js +12 -0
  48. package/dist/config/branding-react.js.map +1 -0
  49. package/dist/config/branding.d.ts +53 -0
  50. package/dist/config/branding.d.ts.map +1 -0
  51. package/dist/config/branding.js +23 -0
  52. package/dist/config/branding.js.map +1 -0
  53. package/dist/config/cloud-only.d.ts +6 -0
  54. package/dist/config/cloud-only.d.ts.map +1 -0
  55. package/dist/config/cloud-only.js +16 -0
  56. package/dist/config/cloud-only.js.map +1 -0
  57. package/dist/config/config-catalog.d.ts +371 -0
  58. package/dist/config/config-catalog.d.ts.map +1 -0
  59. package/dist/config/config-catalog.js +710 -0
  60. package/dist/config/config-catalog.js.map +1 -0
  61. package/dist/config/config-paths.d.ts +11 -0
  62. package/dist/config/config-paths.d.ts.map +1 -0
  63. package/dist/config/config-paths.js +74 -0
  64. package/dist/config/config-paths.js.map +1 -0
  65. package/dist/config/config.d.ts +11 -0
  66. package/dist/config/config.d.ts.map +1 -0
  67. package/dist/config/config.js +23 -0
  68. package/dist/config/config.js.map +1 -0
  69. package/dist/config/distribution-profile.d.ts +16 -0
  70. package/dist/config/distribution-profile.d.ts.map +1 -0
  71. package/dist/config/distribution-profile.js +29 -0
  72. package/dist/config/distribution-profile.js.map +1 -0
  73. package/dist/config/env-vars.d.ts +2 -0
  74. package/dist/config/env-vars.d.ts.map +1 -0
  75. package/dist/config/env-vars.js +2 -0
  76. package/dist/config/env-vars.js.map +1 -0
  77. package/dist/config/index.d.ts +14 -0
  78. package/dist/config/index.d.ts.map +1 -0
  79. package/dist/config/index.js +17 -0
  80. package/dist/config/index.js.map +1 -0
  81. package/dist/config/plugin-auto-enable-engine.d.ts +4 -0
  82. package/dist/config/plugin-auto-enable-engine.d.ts.map +1 -0
  83. package/dist/config/plugin-auto-enable-engine.js +45 -0
  84. package/dist/config/plugin-auto-enable-engine.js.map +1 -0
  85. package/dist/config/plugin-auto-enable.d.ts +2 -0
  86. package/dist/config/plugin-auto-enable.d.ts.map +1 -0
  87. package/dist/config/plugin-auto-enable.js +8 -0
  88. package/dist/config/plugin-auto-enable.js.map +1 -0
  89. package/dist/config/plugin-manifest.d.ts +89 -0
  90. package/dist/config/plugin-manifest.d.ts.map +1 -0
  91. package/dist/config/plugin-manifest.js +272 -0
  92. package/dist/config/plugin-manifest.js.map +1 -0
  93. package/dist/config/plugin-ui-spec.d.ts +42 -0
  94. package/dist/config/plugin-ui-spec.d.ts.map +1 -0
  95. package/dist/config/plugin-ui-spec.js +257 -0
  96. package/dist/config/plugin-ui-spec.js.map +1 -0
  97. package/dist/config/runtime-mode.d.ts +54 -0
  98. package/dist/config/runtime-mode.d.ts.map +1 -0
  99. package/dist/config/runtime-mode.js +103 -0
  100. package/dist/config/runtime-mode.js.map +1 -0
  101. package/dist/config/runtime-overrides.d.ts +16 -0
  102. package/dist/config/runtime-overrides.d.ts.map +1 -0
  103. package/dist/config/runtime-overrides.js +49 -0
  104. package/dist/config/runtime-overrides.js.map +1 -0
  105. package/dist/config/schema.d.ts +7 -0
  106. package/dist/config/schema.d.ts.map +1 -0
  107. package/dist/config/schema.js +30 -0
  108. package/dist/config/schema.js.map +1 -0
  109. package/{config → dist/config}/types.eliza.d.ts +16 -38
  110. package/dist/config/types.eliza.d.ts.map +1 -0
  111. package/{config → dist/config}/types.messages.d.ts +1 -1
  112. package/{config → dist/config}/types.tools.d.ts +1 -1
  113. package/dist/config/ui-spec.d.ts +164 -0
  114. package/dist/config/ui-spec.d.ts.map +1 -0
  115. package/dist/config/ui-spec.js +14 -0
  116. package/dist/config/ui-spec.js.map +1 -0
  117. package/dist/config/wechat-config.d.ts +2 -0
  118. package/dist/config/wechat-config.d.ts.map +1 -0
  119. package/dist/config/wechat-config.js +2 -0
  120. package/dist/config/wechat-config.js.map +1 -0
  121. package/dist/config/zod-schema.agent-runtime.d.ts +1087 -0
  122. package/dist/config/zod-schema.agent-runtime.d.ts.map +1 -0
  123. package/dist/config/zod-schema.agent-runtime.js +764 -0
  124. package/dist/config/zod-schema.agent-runtime.js.map +1 -0
  125. package/dist/config/zod-schema.core.d.ts +1048 -0
  126. package/dist/config/zod-schema.core.d.ts.map +1 -0
  127. package/dist/config/zod-schema.core.js +707 -0
  128. package/dist/config/zod-schema.core.js.map +1 -0
  129. package/{connector-cred-types.d.ts → dist/connector-cred-types.d.ts} +3 -3
  130. package/{connector-cred-types.js → dist/connector-cred-types.js} +4 -4
  131. package/dist/connectors.d.ts +2 -0
  132. package/dist/connectors.d.ts.map +1 -0
  133. package/dist/connectors.js +2 -0
  134. package/dist/connectors.js.map +1 -0
  135. package/{contracts → dist/contracts}/apps.d.ts +21 -1
  136. package/dist/contracts/apps.d.ts.map +1 -0
  137. package/{contracts → dist/contracts}/apps.js +9 -10
  138. package/dist/contracts/apps.js.map +1 -0
  139. package/{contracts → dist/contracts}/awareness.d.ts +1 -1
  140. package/{contracts → dist/contracts}/config.d.ts +52 -4
  141. package/dist/contracts/config.d.ts.map +1 -0
  142. package/{contracts → dist/contracts}/content-pack.d.ts +1 -1
  143. package/{contracts → dist/contracts}/content-pack.d.ts.map +1 -1
  144. package/dist/contracts/feature-result.d.ts +24 -0
  145. package/dist/contracts/feature-result.d.ts.map +1 -0
  146. package/dist/contracts/feature-result.js +7 -0
  147. package/dist/contracts/feature-result.js.map +1 -0
  148. package/dist/contracts/health.d.ts +30 -0
  149. package/dist/contracts/health.d.ts.map +1 -0
  150. package/dist/contracts/health.js +29 -0
  151. package/dist/contracts/health.js.map +1 -0
  152. package/{contracts → dist/contracts}/index.d.ts +2 -1
  153. package/{contracts → dist/contracts}/index.d.ts.map +1 -1
  154. package/{contracts → dist/contracts}/index.js +2 -1
  155. package/dist/contracts/index.js.map +1 -0
  156. package/{contracts → dist/contracts}/lifeops.d.ts +410 -3
  157. package/dist/contracts/lifeops.d.ts.map +1 -0
  158. package/{contracts → dist/contracts}/lifeops.js +35 -5
  159. package/dist/contracts/lifeops.js.map +1 -0
  160. package/{contracts → dist/contracts}/onboarding.d.ts +107 -8
  161. package/dist/contracts/onboarding.d.ts.map +1 -0
  162. package/{contracts → dist/contracts}/onboarding.js +132 -13
  163. package/dist/contracts/onboarding.js.map +1 -0
  164. package/dist/contracts/permissions.d.ts +121 -0
  165. package/dist/contracts/permissions.d.ts.map +1 -0
  166. package/dist/contracts/permissions.js +31 -0
  167. package/dist/contracts/permissions.js.map +1 -0
  168. package/{contracts → dist/contracts}/service-routing.d.ts +4 -11
  169. package/dist/contracts/service-routing.d.ts.map +1 -0
  170. package/{contracts → dist/contracts}/service-routing.js +16 -14
  171. package/dist/contracts/service-routing.js.map +1 -0
  172. package/{contracts → dist/contracts}/wallet.d.ts +7 -0
  173. package/dist/contracts/wallet.d.ts.map +1 -0
  174. package/dist/contracts/wallet.js +194 -0
  175. package/dist/contracts/wallet.js.map +1 -0
  176. package/{env-utils.impl.d.ts → dist/env-utils.d.ts} +1 -1
  177. package/dist/env-utils.d.ts.map +1 -0
  178. package/{env-utils.impl.js → dist/env-utils.js} +4 -1
  179. package/dist/env-utils.js.map +1 -0
  180. package/dist/events/index.d.ts +62 -0
  181. package/dist/events/index.d.ts.map +1 -0
  182. package/dist/events/index.js +52 -0
  183. package/dist/events/index.js.map +1 -0
  184. package/dist/i18n/generated/validation-keyword-data.d.ts +3080 -0
  185. package/dist/i18n/generated/validation-keyword-data.d.ts.map +1 -0
  186. package/dist/i18n/generated/validation-keyword-data.js +3084 -0
  187. package/dist/i18n/generated/validation-keyword-data.js.map +1 -0
  188. package/dist/index.d.ts +93 -0
  189. package/dist/index.d.ts.map +1 -0
  190. package/dist/index.js +105 -0
  191. package/dist/index.js.map +1 -0
  192. package/dist/local-inference/index.d.ts +16 -0
  193. package/dist/local-inference/index.d.ts.map +1 -0
  194. package/dist/local-inference/index.js +16 -0
  195. package/dist/local-inference/index.js.map +1 -0
  196. package/dist/local-inference/paths.d.ts +24 -0
  197. package/dist/local-inference/paths.d.ts.map +1 -0
  198. package/dist/local-inference/paths.js +40 -0
  199. package/dist/local-inference/paths.js.map +1 -0
  200. package/dist/local-inference/routing-preferences.d.ts +31 -0
  201. package/dist/local-inference/routing-preferences.d.ts.map +1 -0
  202. package/dist/local-inference/routing-preferences.js +73 -0
  203. package/dist/local-inference/routing-preferences.js.map +1 -0
  204. package/dist/local-inference/types.d.ts +62 -0
  205. package/dist/local-inference/types.d.ts.map +1 -0
  206. package/dist/local-inference/types.js +25 -0
  207. package/dist/local-inference/types.js.map +1 -0
  208. package/dist/local-inference/verify.d.ts +39 -0
  209. package/dist/local-inference/verify.d.ts.map +1 -0
  210. package/dist/local-inference/verify.js +105 -0
  211. package/dist/local-inference/verify.js.map +1 -0
  212. package/dist/package.json +50 -0
  213. package/dist/platform/is-native-server.d.ts +9 -0
  214. package/dist/platform/is-native-server.d.ts.map +1 -0
  215. package/dist/platform/is-native-server.js +12 -0
  216. package/dist/platform/is-native-server.js.map +1 -0
  217. package/{runtime-env.js → dist/runtime-env.js} +2 -2
  218. package/{runtime-env.js.map → dist/runtime-env.js.map} +1 -1
  219. package/dist/self-edit.d.ts +64 -0
  220. package/dist/self-edit.d.ts.map +1 -0
  221. package/dist/self-edit.js +133 -0
  222. package/dist/self-edit.js.map +1 -0
  223. package/{settings-debug.d.ts.map → dist/settings-debug.d.ts.map} +1 -1
  224. package/{settings-debug.js → dist/settings-debug.js} +45 -38
  225. package/dist/settings-debug.js.map +1 -0
  226. package/{spoken-text.js → dist/spoken-text.js} +1 -1
  227. package/{spoken-text.js.map → dist/spoken-text.js.map} +1 -1
  228. package/dist/terminal/links.d.ts +9 -0
  229. package/dist/terminal/links.d.ts.map +1 -0
  230. package/dist/terminal/links.js +21 -0
  231. package/dist/terminal/links.js.map +1 -0
  232. package/dist/terminal/palette.d.ts +11 -0
  233. package/dist/terminal/palette.d.ts.map +1 -0
  234. package/dist/terminal/palette.js +13 -0
  235. package/dist/terminal/palette.js.map +1 -0
  236. package/dist/terminal/theme.d.ts +17 -0
  237. package/dist/terminal/theme.d.ts.map +1 -0
  238. package/dist/terminal/theme.js +25 -0
  239. package/dist/terminal/theme.js.map +1 -0
  240. package/dist/test-support/process-helpers.d.ts +13 -0
  241. package/dist/test-support/process-helpers.d.ts.map +1 -0
  242. package/dist/test-support/process-helpers.js +24 -0
  243. package/dist/test-support/process-helpers.js.map +1 -0
  244. package/dist/test-support/test-helpers.d.ts +112 -0
  245. package/dist/test-support/test-helpers.d.ts.map +1 -0
  246. package/dist/test-support/test-helpers.js +416 -0
  247. package/dist/test-support/test-helpers.js.map +1 -0
  248. package/{themes → dist/themes}/index.d.ts +3 -3
  249. package/dist/themes/index.d.ts.map +1 -0
  250. package/{themes → dist/themes}/index.js +2 -2
  251. package/{themes → dist/themes}/index.js.map +1 -1
  252. package/{themes → dist/themes}/presets.d.ts +1 -1
  253. package/{themes → dist/themes}/presets.d.ts.map +1 -1
  254. package/{type-guards.d.ts → dist/type-guards.d.ts} +1 -0
  255. package/dist/type-guards.d.ts.map +1 -0
  256. package/{type-guards.js → dist/type-guards.js} +6 -0
  257. package/dist/type-guards.js.map +1 -0
  258. package/dist/types/index.d.ts +655 -0
  259. package/dist/types/index.d.ts.map +1 -0
  260. package/dist/types/index.js +5 -0
  261. package/dist/types/index.js.map +1 -0
  262. package/dist/utils/asset-url.d.ts +24 -0
  263. package/dist/utils/asset-url.d.ts.map +1 -0
  264. package/dist/utils/asset-url.js +151 -0
  265. package/dist/utils/asset-url.js.map +1 -0
  266. package/dist/utils/assistant-text.d.ts +2 -0
  267. package/dist/utils/assistant-text.d.ts.map +1 -0
  268. package/dist/utils/assistant-text.js +168 -0
  269. package/dist/utils/assistant-text.js.map +1 -0
  270. package/dist/utils/browser-tab-kit-types.d.ts +81 -0
  271. package/dist/utils/browser-tab-kit-types.d.ts.map +1 -0
  272. package/dist/utils/browser-tab-kit-types.js +23 -0
  273. package/dist/utils/browser-tab-kit-types.js.map +1 -0
  274. package/dist/utils/browser-tabs-renderer-registry.d.ts +56 -0
  275. package/dist/utils/browser-tabs-renderer-registry.d.ts.map +1 -0
  276. package/dist/utils/browser-tabs-renderer-registry.js +962 -0
  277. package/{i18n/generated/validation-keyword-data.d.ts.map → dist/utils/browser-tabs-renderer-registry.js.map} +1 -1
  278. package/dist/utils/character-message-examples.d.ts +7 -0
  279. package/dist/utils/character-message-examples.d.ts.map +1 -0
  280. package/dist/utils/character-message-examples.js +123 -0
  281. package/dist/utils/character-message-examples.js.map +1 -0
  282. package/dist/utils/cloud-status.d.ts +3 -0
  283. package/dist/utils/cloud-status.d.ts.map +1 -0
  284. package/dist/utils/cloud-status.js +11 -0
  285. package/dist/utils/cloud-status.js.map +1 -0
  286. package/dist/utils/documents-upload-image.d.ts +27 -0
  287. package/dist/utils/documents-upload-image.d.ts.map +1 -0
  288. package/dist/utils/documents-upload-image.js +147 -0
  289. package/dist/utils/documents-upload-image.js.map +1 -0
  290. package/dist/utils/eliza-cloud-model-route.d.ts +3 -0
  291. package/dist/utils/eliza-cloud-model-route.d.ts.map +1 -0
  292. package/dist/utils/eliza-cloud-model-route.js +10 -0
  293. package/dist/utils/eliza-cloud-model-route.js.map +1 -0
  294. package/dist/utils/eliza-globals.d.ts +13 -0
  295. package/dist/utils/eliza-globals.d.ts.map +1 -0
  296. package/dist/utils/eliza-globals.js +49 -0
  297. package/dist/utils/eliza-globals.js.map +1 -0
  298. package/dist/utils/eliza-root.d.ts +9 -0
  299. package/dist/utils/eliza-root.d.ts.map +1 -0
  300. package/dist/utils/eliza-root.js +102 -0
  301. package/dist/utils/eliza-root.js.map +1 -0
  302. package/dist/utils/env.d.ts +34 -0
  303. package/dist/utils/env.d.ts.map +1 -0
  304. package/dist/utils/env.js +131 -0
  305. package/dist/utils/env.js.map +1 -0
  306. package/dist/utils/errors.d.ts +13 -0
  307. package/dist/utils/errors.d.ts.map +1 -0
  308. package/dist/utils/errors.js +26 -0
  309. package/dist/utils/errors.js.map +1 -0
  310. package/dist/utils/exec-safety.d.ts +2 -0
  311. package/dist/utils/exec-safety.d.ts.map +1 -0
  312. package/dist/utils/exec-safety.js +22 -0
  313. package/dist/utils/exec-safety.js.map +1 -0
  314. package/dist/utils/format.d.ts +66 -0
  315. package/dist/utils/format.d.ts.map +1 -0
  316. package/dist/utils/format.js +122 -0
  317. package/dist/utils/format.js.map +1 -0
  318. package/dist/utils/index.d.ts +12 -0
  319. package/dist/utils/index.d.ts.map +1 -0
  320. package/dist/utils/index.js +12 -0
  321. package/dist/utils/index.js.map +1 -0
  322. package/dist/utils/labels.d.ts +6 -0
  323. package/dist/utils/labels.d.ts.map +1 -0
  324. package/dist/utils/labels.js +42 -0
  325. package/dist/utils/labels.js.map +1 -0
  326. package/dist/utils/log-prefix.d.ts +2 -0
  327. package/dist/utils/log-prefix.d.ts.map +1 -0
  328. package/dist/utils/log-prefix.js +54 -0
  329. package/dist/utils/log-prefix.js.map +1 -0
  330. package/dist/utils/name-tokens.d.ts +24 -0
  331. package/dist/utils/name-tokens.d.ts.map +1 -0
  332. package/dist/utils/name-tokens.js +37 -0
  333. package/dist/utils/name-tokens.js.map +1 -0
  334. package/dist/utils/namespace-defaults.d.ts +6 -0
  335. package/dist/utils/namespace-defaults.d.ts.map +1 -0
  336. package/dist/utils/namespace-defaults.js +16 -0
  337. package/dist/utils/namespace-defaults.js.map +1 -0
  338. package/dist/utils/number-parsing.d.ts +26 -0
  339. package/dist/utils/number-parsing.d.ts.map +1 -0
  340. package/dist/utils/number-parsing.js +52 -0
  341. package/dist/utils/number-parsing.js.map +1 -0
  342. package/dist/utils/owner-name.d.ts +3 -0
  343. package/dist/utils/owner-name.d.ts.map +1 -0
  344. package/dist/utils/owner-name.js +8 -0
  345. package/dist/utils/owner-name.js.map +1 -0
  346. package/dist/utils/permission-deep-links.d.ts +34 -0
  347. package/dist/utils/permission-deep-links.d.ts.map +1 -0
  348. package/dist/utils/permission-deep-links.js +84 -0
  349. package/dist/utils/permission-deep-links.js.map +1 -0
  350. package/dist/utils/rate-limiter.d.ts +32 -0
  351. package/dist/utils/rate-limiter.d.ts.map +1 -0
  352. package/dist/utils/rate-limiter.js +53 -0
  353. package/dist/utils/rate-limiter.js.map +1 -0
  354. package/dist/utils/serialise.d.ts +12 -0
  355. package/dist/utils/serialise.d.ts.map +1 -0
  356. package/dist/utils/serialise.js +22 -0
  357. package/dist/utils/serialise.js.map +1 -0
  358. package/dist/utils/sql-compat.d.ts +10 -0
  359. package/dist/utils/sql-compat.d.ts.map +1 -0
  360. package/dist/utils/sql-compat.js +112 -0
  361. package/dist/utils/sql-compat.js.map +1 -0
  362. package/dist/utils/streaming-text.d.ts +9 -0
  363. package/dist/utils/streaming-text.d.ts.map +1 -0
  364. package/dist/utils/streaming-text.js +113 -0
  365. package/dist/utils/streaming-text.js.map +1 -0
  366. package/dist/utils/subscription-auth.d.ts +9 -0
  367. package/dist/utils/subscription-auth.d.ts.map +1 -0
  368. package/dist/utils/subscription-auth.js +49 -0
  369. package/dist/utils/subscription-auth.js.map +1 -0
  370. package/dist/utils/trajectory-format.d.ts +6 -0
  371. package/dist/utils/trajectory-format.d.ts.map +1 -0
  372. package/dist/utils/trajectory-format.js +44 -0
  373. package/dist/utils/trajectory-format.js.map +1 -0
  374. package/dist/utils/tts-debug.d.ts +9 -0
  375. package/dist/utils/tts-debug.d.ts.map +1 -0
  376. package/dist/utils/tts-debug.js +70 -0
  377. package/dist/utils/tts-debug.js.map +1 -0
  378. package/dist/voice.d.ts +40 -0
  379. package/dist/voice.d.ts.map +1 -0
  380. package/dist/voice.js +296 -0
  381. package/dist/voice.js.map +1 -0
  382. package/package.json +33 -174
  383. package/config/types.eliza.d.ts.map +0 -1
  384. package/connectors.d.ts +0 -13
  385. package/connectors.d.ts.map +0 -1
  386. package/connectors.js +0 -97
  387. package/connectors.js.map +0 -1
  388. package/contracts/apps.d.ts.map +0 -1
  389. package/contracts/apps.js.map +0 -1
  390. package/contracts/config.d.ts.map +0 -1
  391. package/contracts/index.js.map +0 -1
  392. package/contracts/lifeops-extensions.d.ts +0 -340
  393. package/contracts/lifeops-extensions.d.ts.map +0 -1
  394. package/contracts/lifeops-extensions.js +0 -37
  395. package/contracts/lifeops-extensions.js.map +0 -1
  396. package/contracts/lifeops.d.ts.map +0 -1
  397. package/contracts/lifeops.js.map +0 -1
  398. package/contracts/onboarding.d.ts.map +0 -1
  399. package/contracts/onboarding.js.map +0 -1
  400. package/contracts/permissions.d.ts +0 -38
  401. package/contracts/permissions.d.ts.map +0 -1
  402. package/contracts/permissions.js +0 -5
  403. package/contracts/permissions.js.map +0 -1
  404. package/contracts/scratchpad.d.ts +0 -136
  405. package/contracts/scratchpad.d.ts.map +0 -1
  406. package/contracts/scratchpad.js +0 -91
  407. package/contracts/scratchpad.js.map +0 -1
  408. package/contracts/service-routing.d.ts.map +0 -1
  409. package/contracts/service-routing.js.map +0 -1
  410. package/contracts/wallet.d.ts.map +0 -1
  411. package/contracts/wallet.js +0 -61
  412. package/contracts/wallet.js.map +0 -1
  413. package/eliza-core-roles.d.ts +0 -79
  414. package/eliza-core-roles.d.ts.map +0 -1
  415. package/eliza-core-roles.js +0 -600
  416. package/eliza-core-roles.js.map +0 -1
  417. package/env-utils.d.ts +0 -5
  418. package/env-utils.d.ts.map +0 -1
  419. package/env-utils.impl.d.ts.map +0 -1
  420. package/env-utils.impl.js.map +0 -1
  421. package/env-utils.js +0 -5
  422. package/env-utils.js.map +0 -1
  423. package/i18n/generated/validation-keyword-data.d.ts +0 -1091
  424. package/i18n/generated/validation-keyword-data.js +0 -1095
  425. package/i18n/generated/validation-keyword-data.js.map +0 -1
  426. package/index.d.ts +0 -27
  427. package/index.d.ts.map +0 -1
  428. package/index.js +0 -39
  429. package/index.js.map +0 -1
  430. package/settings-debug.js.map +0 -1
  431. package/themes/index.d.ts.map +0 -1
  432. package/type-guards.d.ts.map +0 -1
  433. package/type-guards.js.map +0 -1
  434. package/types.d.ts +0 -27
  435. package/types.d.ts.map +0 -1
  436. package/types.js +0 -2
  437. package/types.js.map +0 -1
  438. /package/{app-hero-art.d.ts → dist/app-hero-art.d.ts} +0 -0
  439. /package/{app-hero-art.d.ts.map → dist/app-hero-art.d.ts.map} +0 -0
  440. /package/{app-hero-art.js → dist/app-hero-art.js} +0 -0
  441. /package/{app-hero-art.js.map → dist/app-hero-art.js.map} +0 -0
  442. /package/{awareness → dist/awareness}/index.d.ts +0 -0
  443. /package/{awareness → dist/awareness}/index.d.ts.map +0 -0
  444. /package/{awareness → dist/awareness}/index.js +0 -0
  445. /package/{awareness → dist/awareness}/index.js.map +0 -0
  446. /package/{awareness → dist/awareness}/registry.d.ts +0 -0
  447. /package/{awareness → dist/awareness}/registry.d.ts.map +0 -0
  448. /package/{awareness → dist/awareness}/registry.js +0 -0
  449. /package/{awareness → dist/awareness}/registry.js.map +0 -0
  450. /package/{config → dist/config}/types.agent-defaults.d.ts +0 -0
  451. /package/{config → dist/config}/types.agent-defaults.d.ts.map +0 -0
  452. /package/{config → dist/config}/types.agent-defaults.js +0 -0
  453. /package/{config → dist/config}/types.agent-defaults.js.map +0 -0
  454. /package/{config → dist/config}/types.agents.d.ts +0 -0
  455. /package/{config → dist/config}/types.agents.d.ts.map +0 -0
  456. /package/{config → dist/config}/types.agents.js +0 -0
  457. /package/{config → dist/config}/types.agents.js.map +0 -0
  458. /package/{config → dist/config}/types.d.ts +0 -0
  459. /package/{config → dist/config}/types.d.ts.map +0 -0
  460. /package/{config → dist/config}/types.eliza.js +0 -0
  461. /package/{config → dist/config}/types.eliza.js.map +0 -0
  462. /package/{config → dist/config}/types.gateway.d.ts +0 -0
  463. /package/{config → dist/config}/types.gateway.d.ts.map +0 -0
  464. /package/{config → dist/config}/types.gateway.js +0 -0
  465. /package/{config → dist/config}/types.gateway.js.map +0 -0
  466. /package/{config → dist/config}/types.hooks.d.ts +0 -0
  467. /package/{config → dist/config}/types.hooks.d.ts.map +0 -0
  468. /package/{config → dist/config}/types.hooks.js +0 -0
  469. /package/{config → dist/config}/types.hooks.js.map +0 -0
  470. /package/{config → dist/config}/types.js +0 -0
  471. /package/{config → dist/config}/types.js.map +0 -0
  472. /package/{config → dist/config}/types.messages.d.ts.map +0 -0
  473. /package/{config → dist/config}/types.messages.js +0 -0
  474. /package/{config → dist/config}/types.messages.js.map +0 -0
  475. /package/{config → dist/config}/types.tools.d.ts.map +0 -0
  476. /package/{config → dist/config}/types.tools.js +0 -0
  477. /package/{config → dist/config}/types.tools.js.map +0 -0
  478. /package/{connector-cred-types.d.ts.map → dist/connector-cred-types.d.ts.map} +0 -0
  479. /package/{connector-cred-types.js.map → dist/connector-cred-types.js.map} +0 -0
  480. /package/{contracts → dist/contracts}/awareness.d.ts.map +0 -0
  481. /package/{contracts → dist/contracts}/awareness.js +0 -0
  482. /package/{contracts → dist/contracts}/awareness.js.map +0 -0
  483. /package/{contracts → dist/contracts}/cloud-topology.d.ts +0 -0
  484. /package/{contracts → dist/contracts}/cloud-topology.d.ts.map +0 -0
  485. /package/{contracts → dist/contracts}/cloud-topology.js +0 -0
  486. /package/{contracts → dist/contracts}/cloud-topology.js.map +0 -0
  487. /package/{contracts → dist/contracts}/config.js +0 -0
  488. /package/{contracts → dist/contracts}/config.js.map +0 -0
  489. /package/{contracts → dist/contracts}/content-pack.js +0 -0
  490. /package/{contracts → dist/contracts}/content-pack.js.map +0 -0
  491. /package/{contracts → dist/contracts}/drop.d.ts +0 -0
  492. /package/{contracts → dist/contracts}/drop.d.ts.map +0 -0
  493. /package/{contracts → dist/contracts}/drop.js +0 -0
  494. /package/{contracts → dist/contracts}/drop.js.map +0 -0
  495. /package/{contracts → dist/contracts}/inbox.d.ts +0 -0
  496. /package/{contracts → dist/contracts}/inbox.d.ts.map +0 -0
  497. /package/{contracts → dist/contracts}/inbox.js +0 -0
  498. /package/{contracts → dist/contracts}/inbox.js.map +0 -0
  499. /package/{contracts → dist/contracts}/lifeops-connector-degradation.d.ts +0 -0
  500. /package/{contracts → dist/contracts}/lifeops-connector-degradation.d.ts.map +0 -0
  501. /package/{contracts → dist/contracts}/lifeops-connector-degradation.js +0 -0
  502. /package/{contracts → dist/contracts}/lifeops-connector-degradation.js.map +0 -0
  503. /package/{contracts → dist/contracts}/theme.d.ts +0 -0
  504. /package/{contracts → dist/contracts}/theme.d.ts.map +0 -0
  505. /package/{contracts → dist/contracts}/theme.js +0 -0
  506. /package/{contracts → dist/contracts}/theme.js.map +0 -0
  507. /package/{contracts → dist/contracts}/verification.d.ts +0 -0
  508. /package/{contracts → dist/contracts}/verification.d.ts.map +0 -0
  509. /package/{contracts → dist/contracts}/verification.js +0 -0
  510. /package/{contracts → dist/contracts}/verification.js.map +0 -0
  511. /package/{dev-settings-banner-style.d.ts → dist/dev-settings-banner-style.d.ts} +0 -0
  512. /package/{dev-settings-banner-style.d.ts.map → dist/dev-settings-banner-style.d.ts.map} +0 -0
  513. /package/{dev-settings-banner-style.js → dist/dev-settings-banner-style.js} +0 -0
  514. /package/{dev-settings-banner-style.js.map → dist/dev-settings-banner-style.js.map} +0 -0
  515. /package/{dev-settings-figlet-heading.d.ts → dist/dev-settings-figlet-heading.d.ts} +0 -0
  516. /package/{dev-settings-figlet-heading.d.ts.map → dist/dev-settings-figlet-heading.d.ts.map} +0 -0
  517. /package/{dev-settings-figlet-heading.js → dist/dev-settings-figlet-heading.js} +0 -0
  518. /package/{dev-settings-figlet-heading.js.map → dist/dev-settings-figlet-heading.js.map} +0 -0
  519. /package/{dev-settings-table.d.ts → dist/dev-settings-table.d.ts} +0 -0
  520. /package/{dev-settings-table.d.ts.map → dist/dev-settings-table.d.ts.map} +0 -0
  521. /package/{dev-settings-table.js → dist/dev-settings-table.js} +0 -0
  522. /package/{dev-settings-table.js.map → dist/dev-settings-table.js.map} +0 -0
  523. /package/{format-error.d.ts → dist/format-error.d.ts} +0 -0
  524. /package/{format-error.d.ts.map → dist/format-error.d.ts.map} +0 -0
  525. /package/{format-error.js → dist/format-error.js} +0 -0
  526. /package/{format-error.js.map → dist/format-error.js.map} +0 -0
  527. /package/{i18n → dist/i18n}/keyword-matching.d.ts +0 -0
  528. /package/{i18n → dist/i18n}/keyword-matching.d.ts.map +0 -0
  529. /package/{i18n → dist/i18n}/keyword-matching.js +0 -0
  530. /package/{i18n → dist/i18n}/keyword-matching.js.map +0 -0
  531. /package/{i18n → dist/i18n}/validation-keywords.d.ts +0 -0
  532. /package/{i18n → dist/i18n}/validation-keywords.d.ts.map +0 -0
  533. /package/{i18n → dist/i18n}/validation-keywords.js +0 -0
  534. /package/{i18n → dist/i18n}/validation-keywords.js.map +0 -0
  535. /package/{onboarding-presets.characters.d.ts → dist/onboarding-presets.characters.d.ts} +0 -0
  536. /package/{onboarding-presets.characters.d.ts.map → dist/onboarding-presets.characters.d.ts.map} +0 -0
  537. /package/{onboarding-presets.characters.js → dist/onboarding-presets.characters.js} +0 -0
  538. /package/{onboarding-presets.characters.js.map → dist/onboarding-presets.characters.js.map} +0 -0
  539. /package/{onboarding-presets.d.ts → dist/onboarding-presets.d.ts} +0 -0
  540. /package/{onboarding-presets.d.ts.map → dist/onboarding-presets.d.ts.map} +0 -0
  541. /package/{onboarding-presets.js → dist/onboarding-presets.js} +0 -0
  542. /package/{onboarding-presets.js.map → dist/onboarding-presets.js.map} +0 -0
  543. /package/{onboarding-presets.shared.d.ts → dist/onboarding-presets.shared.d.ts} +0 -0
  544. /package/{onboarding-presets.shared.d.ts.map → dist/onboarding-presets.shared.d.ts.map} +0 -0
  545. /package/{onboarding-presets.shared.js → dist/onboarding-presets.shared.js} +0 -0
  546. /package/{onboarding-presets.shared.js.map → dist/onboarding-presets.shared.js.map} +0 -0
  547. /package/{recent-messages-state.d.ts → dist/recent-messages-state.d.ts} +0 -0
  548. /package/{recent-messages-state.d.ts.map → dist/recent-messages-state.d.ts.map} +0 -0
  549. /package/{recent-messages-state.js → dist/recent-messages-state.js} +0 -0
  550. /package/{recent-messages-state.js.map → dist/recent-messages-state.js.map} +0 -0
  551. /package/{restart.d.ts → dist/restart.d.ts} +0 -0
  552. /package/{restart.d.ts.map → dist/restart.d.ts.map} +0 -0
  553. /package/{restart.js → dist/restart.js} +0 -0
  554. /package/{restart.js.map → dist/restart.js.map} +0 -0
  555. /package/{runtime-env.d.ts → dist/runtime-env.d.ts} +0 -0
  556. /package/{runtime-env.d.ts.map → dist/runtime-env.d.ts.map} +0 -0
  557. /package/{settings-debug.d.ts → dist/settings-debug.d.ts} +0 -0
  558. /package/{spoken-text.d.ts → dist/spoken-text.d.ts} +0 -0
  559. /package/{spoken-text.d.ts.map → dist/spoken-text.d.ts.map} +0 -0
  560. /package/{themes → dist/themes}/presets.js +0 -0
  561. /package/{themes → dist/themes}/presets.js.map +0 -0
  562. /package/{validation-keywords.d.ts → dist/validation-keywords.d.ts} +0 -0
  563. /package/{validation-keywords.d.ts.map → dist/validation-keywords.d.ts.map} +0 -0
  564. /package/{validation-keywords.js → dist/validation-keywords.js} +0 -0
  565. /package/{validation-keywords.js.map → dist/validation-keywords.js.map} +0 -0
@@ -0,0 +1,272 @@
1
+ // Plugin manifest evaluation engine.
2
+ //
3
+ // Each plugin declares its auto-enable conditions in its package.json under
4
+ // `elizaos.plugin`, optionally pointing at a small JS module that implements
5
+ // the actual `shouldEnable(ctx)` check:
6
+ //
7
+ // {
8
+ // "elizaos": {
9
+ // "plugin": {
10
+ // "autoEnableModule": "./dist/auto-enable.js",
11
+ // "force": false,
12
+ // "capabilities": ["text-large", "tool-use"]
13
+ // }
14
+ // }
15
+ // }
16
+ //
17
+ // The check module exports:
18
+ //
19
+ // export function shouldEnable(ctx: PluginAutoEnableContext): boolean | Promise<boolean>;
20
+ // export function shouldForce?(ctx: PluginAutoEnableContext): boolean; // optional override
21
+ //
22
+ // The engine here:
23
+ // 1. Walks a list of candidate plugin packages.
24
+ // 2. Reads each package.json for the elizaos.plugin block.
25
+ // 3. Dynamic-imports the autoEnableModule (cheap if it stays small — convention,
26
+ // not enforced; consumers can lint via knip or import-graph if drift becomes a problem).
27
+ // 4. Evaluates shouldEnable + shouldForce against the runtime context.
28
+ // 5. Returns a verdict per plugin.
29
+ //
30
+ // This replaces the centralized maps in plugin-auto-enable-engine.ts. Both
31
+ // engines coexist during the migration: the new one runs first, the old one
32
+ // fills gaps for plugins that haven't migrated yet. When all plugins ship a
33
+ // manifest, the central maps and the old engine can be deleted.
34
+ var __rewriteRelativeImportExtension = (this && this.__rewriteRelativeImportExtension) || function (path, preserveJsx) {
35
+ if (typeof path === "string" && /^\.\.?\//.test(path)) {
36
+ return path.replace(/\.(tsx)$|((?:\.d)?)((?:\.[^./]+?)?)\.([cm]?)ts$/i, function (m, tsx, d, ext, cm) {
37
+ return tsx ? preserveJsx ? ".jsx" : ".js" : d && (!ext || !cm) ? m : (d + ext + "." + cm.toLowerCase() + "js");
38
+ });
39
+ }
40
+ return path;
41
+ };
42
+ import { promises as fs } from "node:fs";
43
+ import path from "node:path";
44
+ import { pathToFileURL } from "node:url";
45
+ /**
46
+ * Derive the short id used for `plugins.allow` and `plugins.entries` lookups.
47
+ * Mirrors the logic in plugin-auto-enable-engine.addToAllowlist.
48
+ */
49
+ export function pluginShortId(packageName) {
50
+ return packageName.includes("/plugin-")
51
+ ? packageName.slice(packageName.lastIndexOf("/plugin-") + "/plugin-".length)
52
+ : packageName;
53
+ }
54
+ /**
55
+ * Read `package.json` for a candidate and extract the elizaos.plugin block.
56
+ * Returns null when no package.json exists or it doesn't declare an elizaos.plugin block.
57
+ */
58
+ export async function readPluginPackageManifest(packageRoot) {
59
+ let raw;
60
+ try {
61
+ raw = await fs.readFile(path.join(packageRoot, "package.json"), "utf8");
62
+ }
63
+ catch (err) {
64
+ if (err.code === "ENOENT")
65
+ return null;
66
+ throw err;
67
+ }
68
+ const parsed = JSON.parse(raw);
69
+ if (!parsed?.elizaos?.plugin)
70
+ return null;
71
+ return parsed;
72
+ }
73
+ const CHECK_MODULE_CACHE = new Map();
74
+ /**
75
+ * Dynamic-import the check module declared by a manifest. Cached per absolute
76
+ * module path so re-evaluation across multiple boots in the same process
77
+ * (e.g. test suites) doesn't re-import.
78
+ */
79
+ async function loadCheckModule(packageRoot, modulePath) {
80
+ const absolute = path.resolve(packageRoot, modulePath);
81
+ const cached = CHECK_MODULE_CACHE.get(absolute);
82
+ if (cached === "missing")
83
+ return null;
84
+ if (cached)
85
+ return cached;
86
+ try {
87
+ await fs.access(absolute);
88
+ }
89
+ catch {
90
+ CHECK_MODULE_CACHE.set(absolute, "missing");
91
+ return null;
92
+ }
93
+ const url = pathToFileURL(absolute).href;
94
+ // Dynamic file:// import — Vite's static analyzer flags this on the client
95
+ // bundle even though the engine only runs server-side at boot. Suppress.
96
+ const mod = (await import(__rewriteRelativeImportExtension(
97
+ /* @vite-ignore */ url)));
98
+ // Accept both named and default exports — `export function shouldEnable`
99
+ // and `export default { shouldEnable }` both work.
100
+ const resolved = typeof mod.shouldEnable === "function"
101
+ ? { shouldEnable: mod.shouldEnable, shouldForce: mod.shouldForce }
102
+ : typeof mod.default?.shouldEnable === "function"
103
+ ? {
104
+ shouldEnable: mod.default.shouldEnable,
105
+ shouldForce: mod.default.shouldForce,
106
+ }
107
+ : null;
108
+ if (!resolved) {
109
+ CHECK_MODULE_CACHE.set(absolute, "missing");
110
+ return null;
111
+ }
112
+ CHECK_MODULE_CACHE.set(absolute, resolved);
113
+ return resolved;
114
+ }
115
+ /**
116
+ * Evaluate one candidate's manifest against the runtime context. Pure
117
+ * verdict — caller decides how to apply it to the allow list / force overrides.
118
+ */
119
+ export async function evaluatePluginManifest(candidate, ctx) {
120
+ const manifest = await readPluginPackageManifest(candidate.packageRoot);
121
+ if (!manifest)
122
+ return null;
123
+ const block = manifest.elizaos?.plugin ?? {};
124
+ const shortId = pluginShortId(candidate.packageName);
125
+ const capabilities = Array.isArray(block.capabilities)
126
+ ? block.capabilities.filter((c) => typeof c === "string")
127
+ : [];
128
+ if (!block.autoEnableModule) {
129
+ // Manifest exists but no check module — treat as not-auto-enabled (the
130
+ // plugin can still be enabled via explicit user config). Still surface
131
+ // declared capabilities.
132
+ return {
133
+ packageName: candidate.packageName,
134
+ shortId,
135
+ enabled: false,
136
+ force: block.force === true,
137
+ capabilities,
138
+ reason: null,
139
+ error: null,
140
+ };
141
+ }
142
+ let module;
143
+ try {
144
+ module = await loadCheckModule(candidate.packageRoot, block.autoEnableModule);
145
+ }
146
+ catch (err) {
147
+ return {
148
+ packageName: candidate.packageName,
149
+ shortId,
150
+ enabled: false,
151
+ force: block.force === true,
152
+ capabilities,
153
+ reason: null,
154
+ error: `failed to import autoEnableModule "${block.autoEnableModule}": ${err instanceof Error ? err.message : String(err)}`,
155
+ };
156
+ }
157
+ if (!module) {
158
+ return {
159
+ packageName: candidate.packageName,
160
+ shortId,
161
+ enabled: false,
162
+ force: block.force === true,
163
+ capabilities,
164
+ reason: null,
165
+ error: `autoEnableModule "${block.autoEnableModule}" did not export a shouldEnable function`,
166
+ };
167
+ }
168
+ let enabled;
169
+ try {
170
+ enabled = Boolean(await module.shouldEnable(ctx));
171
+ }
172
+ catch (err) {
173
+ return {
174
+ packageName: candidate.packageName,
175
+ shortId,
176
+ enabled: false,
177
+ force: block.force === true,
178
+ capabilities,
179
+ reason: null,
180
+ error: `shouldEnable threw: ${err instanceof Error ? err.message : String(err)}`,
181
+ };
182
+ }
183
+ let force = block.force === true;
184
+ if (module.shouldForce) {
185
+ try {
186
+ force = force || Boolean(module.shouldForce(ctx));
187
+ }
188
+ catch {
189
+ // Treat predicate failure as "no force" — don't escalate.
190
+ force = block.force === true;
191
+ }
192
+ }
193
+ return {
194
+ packageName: candidate.packageName,
195
+ shortId,
196
+ enabled,
197
+ force,
198
+ capabilities,
199
+ reason: enabled || force
200
+ ? `manifest: ${candidate.packageName}/${block.autoEnableModule}`
201
+ : null,
202
+ error: null,
203
+ };
204
+ }
205
+ /**
206
+ * Evaluate every candidate. Verdicts come back in the same order as the input.
207
+ * Failures are reported in the verdict's `error` field — this function never
208
+ * throws so a single bad manifest can't kill auto-enable for the rest.
209
+ */
210
+ export async function evaluatePluginManifests(candidates, ctx) {
211
+ return Promise.all(candidates.map(async (candidate) => {
212
+ try {
213
+ return await evaluatePluginManifest(candidate, ctx);
214
+ }
215
+ catch (err) {
216
+ return {
217
+ packageName: candidate.packageName,
218
+ shortId: pluginShortId(candidate.packageName),
219
+ enabled: false,
220
+ force: false,
221
+ capabilities: [],
222
+ reason: null,
223
+ error: `manifest read failed: ${err instanceof Error ? err.message : String(err)}`,
224
+ };
225
+ }
226
+ })).then((entries) => entries.filter((v) => v !== null));
227
+ }
228
+ /**
229
+ * Apply manifest verdicts to a config: push enabled plugins onto
230
+ * `plugins.allow` (with the short id and full package name), set
231
+ * `plugins.entries[shortId].enabled = true` for forced ones, and append
232
+ * human-readable strings to `changes` for log surfacing.
233
+ */
234
+ export function applyPluginManifestVerdicts(config, verdicts, changes) {
235
+ config.plugins = config.plugins ?? {};
236
+ const pluginsConfig = config.plugins;
237
+ pluginsConfig.allow = pluginsConfig.allow ?? [];
238
+ pluginsConfig.entries = pluginsConfig.entries ?? {};
239
+ for (const verdict of verdicts) {
240
+ if (verdict.error) {
241
+ changes.push(`Plugin auto-enable error for ${verdict.packageName}: ${verdict.error}`);
242
+ continue;
243
+ }
244
+ if (!verdict.enabled && !verdict.force)
245
+ continue;
246
+ const explicitlyDisabled = pluginsConfig.entries[verdict.shortId]?.enabled === false;
247
+ if (explicitlyDisabled && !verdict.force) {
248
+ // User explicitly disabled — respect that unless force is set.
249
+ continue;
250
+ }
251
+ if (verdict.force && explicitlyDisabled) {
252
+ pluginsConfig.entries[verdict.shortId] = {
253
+ ...pluginsConfig.entries[verdict.shortId],
254
+ enabled: true,
255
+ };
256
+ }
257
+ let added = false;
258
+ if (!pluginsConfig.allow.includes(verdict.shortId)) {
259
+ pluginsConfig.allow.push(verdict.shortId);
260
+ added = true;
261
+ }
262
+ if (verdict.packageName !== verdict.shortId &&
263
+ !pluginsConfig.allow.includes(verdict.packageName)) {
264
+ pluginsConfig.allow.push(verdict.packageName);
265
+ added = true;
266
+ }
267
+ if (added && verdict.reason) {
268
+ changes.push(`Auto-enabled plugin: ${verdict.packageName} (${verdict.reason})`);
269
+ }
270
+ }
271
+ }
272
+ //# sourceMappingURL=plugin-manifest.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plugin-manifest.js","sourceRoot":"","sources":["../../src/config/plugin-manifest.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,42 @@
1
+ /**
2
+ * Generates UiSpec JSON for plugin/connector configuration forms.
3
+ *
4
+ * When the agent wants to help a user configure a plugin, it generates
5
+ * a UiSpec that renders as an interactive form in chat. The form fields
6
+ * are derived from the plugin's parameter definitions.
7
+ *
8
+ * Actions:
9
+ * - "plugin:save" → saves config via PUT /api/plugins/:id
10
+ * - "plugin:enable" → enables the plugin
11
+ * - "plugin:test" → tests connectivity
12
+ */
13
+ export interface PluginParam {
14
+ key: string;
15
+ required?: boolean;
16
+ isSet?: boolean;
17
+ type?: string;
18
+ description?: string;
19
+ label?: string;
20
+ }
21
+ export interface PluginForUiSpec {
22
+ id: string;
23
+ name: string;
24
+ description?: string;
25
+ enabled?: boolean;
26
+ category?: string;
27
+ parameters: PluginParam[];
28
+ }
29
+ /** Declarative UI specification for rendering plugin forms in chat. */
30
+ export interface PluginUiSpec {
31
+ version: number;
32
+ root: string;
33
+ elements: Record<string, Record<string, unknown>>;
34
+ state: Record<string, unknown>;
35
+ }
36
+ export declare function buildPluginConfigUiSpec(plugin: PluginForUiSpec): PluginUiSpec;
37
+ /**
38
+ * Generate a compact plugin list UiSpec for the agent to show available
39
+ * plugins matching a query.
40
+ */
41
+ export declare function buildPluginListUiSpec(plugins: PluginForUiSpec[], title: string): PluginUiSpec;
42
+ //# sourceMappingURL=plugin-ui-spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plugin-ui-spec.d.ts","sourceRoot":"","sources":["../../src/config/plugin-ui-spec.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,MAAM,WAAW,WAAW;IAC1B,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,WAAW,EAAE,CAAC;CAC3B;AAED,uEAAuE;AACvE,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IAClD,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAChC;AAED,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,eAAe,GAAG,YAAY,CAuL7E;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,eAAe,EAAE,EAC1B,KAAK,EAAE,MAAM,GACZ,YAAY,CA+Ed"}
@@ -0,0 +1,257 @@
1
+ /**
2
+ * Generates UiSpec JSON for plugin/connector configuration forms.
3
+ *
4
+ * When the agent wants to help a user configure a plugin, it generates
5
+ * a UiSpec that renders as an interactive form in chat. The form fields
6
+ * are derived from the plugin's parameter definitions.
7
+ *
8
+ * Actions:
9
+ * - "plugin:save" → saves config via PUT /api/plugins/:id
10
+ * - "plugin:enable" → enables the plugin
11
+ * - "plugin:test" → tests connectivity
12
+ */
13
+ export function buildPluginConfigUiSpec(plugin) {
14
+ const elements = {};
15
+ const rootChildren = [];
16
+ const state = {
17
+ pluginId: plugin.id,
18
+ };
19
+ // Header
20
+ elements.header = {
21
+ type: "Stack",
22
+ props: { gap: "1", children: ["title", "desc"] },
23
+ };
24
+ rootChildren.push("header");
25
+ elements.title = {
26
+ type: "Heading",
27
+ props: {
28
+ level: 3,
29
+ text: `Configure ${plugin.name}`,
30
+ },
31
+ };
32
+ if (plugin.description) {
33
+ elements.desc = {
34
+ type: "Text",
35
+ props: {
36
+ text: plugin.description,
37
+ className: "text-xs text-muted",
38
+ },
39
+ };
40
+ }
41
+ // Status badge
42
+ const statusText = plugin.enabled
43
+ ? plugin.parameters.every((p) => !p.required || p.isSet)
44
+ ? "Ready"
45
+ : "Needs Configuration"
46
+ : "Disabled";
47
+ const statusVariant = plugin.enabled
48
+ ? plugin.parameters.every((p) => !p.required || p.isSet)
49
+ ? "default"
50
+ : "secondary"
51
+ : "outline";
52
+ elements.status = {
53
+ type: "Badge",
54
+ props: { text: statusText, variant: statusVariant },
55
+ };
56
+ rootChildren.push("status");
57
+ // Separator
58
+ elements.sep = { type: "Separator", props: {} };
59
+ rootChildren.push("sep");
60
+ // Parameter fields
61
+ const fieldIds = [];
62
+ for (const param of plugin.parameters) {
63
+ const fieldId = `field_${param.key}`;
64
+ const statePath = `config.${param.key}`;
65
+ fieldIds.push(fieldId);
66
+ state[`config.${param.key}`] = "";
67
+ const isSecret = param.key.includes("KEY") ||
68
+ param.key.includes("TOKEN") ||
69
+ param.key.includes("SECRET") ||
70
+ param.key.includes("PASSWORD");
71
+ elements[fieldId] = {
72
+ type: "Input",
73
+ props: {
74
+ label: param.label || param.key,
75
+ placeholder: param.isSet
76
+ ? "••••••• (already set)"
77
+ : param.required
78
+ ? "Required"
79
+ : "Optional",
80
+ statePath,
81
+ type: isSecret ? "password" : "text",
82
+ className: "font-mono text-xs",
83
+ },
84
+ ...(param.required
85
+ ? {
86
+ validation: {
87
+ checks: [
88
+ { rule: "required", message: `${param.key} is required` },
89
+ ],
90
+ },
91
+ }
92
+ : {}),
93
+ };
94
+ // Add description below field if available
95
+ if (param.description) {
96
+ const hintId = `hint_${param.key}`;
97
+ fieldIds.push(hintId);
98
+ elements[hintId] = {
99
+ type: "Text",
100
+ props: {
101
+ text: param.description,
102
+ className: "text-2xs text-muted -mt-1 mb-1",
103
+ },
104
+ };
105
+ }
106
+ }
107
+ elements.fields = {
108
+ type: "Stack",
109
+ props: { gap: "3", children: fieldIds },
110
+ };
111
+ rootChildren.push("fields");
112
+ // Action buttons
113
+ const buttonChildren = ["saveBtn"];
114
+ elements.saveBtn = {
115
+ type: "Button",
116
+ props: {
117
+ text: "Save Configuration",
118
+ variant: "default",
119
+ className: "font-semibold",
120
+ on: {
121
+ press: {
122
+ action: "plugin:save",
123
+ params: { pluginId: plugin.id },
124
+ },
125
+ },
126
+ },
127
+ };
128
+ if (!plugin.enabled) {
129
+ buttonChildren.push("enableBtn");
130
+ elements.enableBtn = {
131
+ type: "Button",
132
+ props: {
133
+ text: "Enable Plugin",
134
+ variant: "outline",
135
+ on: {
136
+ press: {
137
+ action: "plugin:enable",
138
+ params: { pluginId: plugin.id },
139
+ },
140
+ },
141
+ },
142
+ };
143
+ }
144
+ if (plugin.category === "connector") {
145
+ buttonChildren.push("testBtn");
146
+ elements.testBtn = {
147
+ type: "Button",
148
+ props: {
149
+ text: "Test Connection",
150
+ variant: "outline",
151
+ on: {
152
+ press: {
153
+ action: "plugin:test",
154
+ params: { pluginId: plugin.id },
155
+ },
156
+ },
157
+ },
158
+ };
159
+ }
160
+ elements.actions = {
161
+ type: "Stack",
162
+ props: { direction: "row", gap: "2", children: buttonChildren },
163
+ };
164
+ rootChildren.push("actions");
165
+ // Root
166
+ elements.root = {
167
+ type: "Card",
168
+ props: {
169
+ children: rootChildren,
170
+ className: "p-4 space-y-3",
171
+ },
172
+ };
173
+ return {
174
+ version: 1,
175
+ root: "root",
176
+ elements,
177
+ state,
178
+ };
179
+ }
180
+ /**
181
+ * Generate a compact plugin list UiSpec for the agent to show available
182
+ * plugins matching a query.
183
+ */
184
+ export function buildPluginListUiSpec(plugins, title) {
185
+ const elements = {};
186
+ const cardIds = [];
187
+ elements.heading = {
188
+ type: "Heading",
189
+ props: { level: 3, text: title },
190
+ };
191
+ for (let i = 0; i < plugins.length; i++) {
192
+ const p = plugins[i];
193
+ const cardId = `card_${i}`;
194
+ const nameId = `name_${i}`;
195
+ const descId = `desc_${i}`;
196
+ const badgeId = `badge_${i}`;
197
+ const configBtnId = `cfgBtn_${i}`;
198
+ cardIds.push(cardId);
199
+ elements[nameId] = {
200
+ type: "Text",
201
+ props: {
202
+ text: p.name,
203
+ className: "font-semibold text-sm",
204
+ },
205
+ };
206
+ elements[descId] = {
207
+ type: "Text",
208
+ props: {
209
+ text: p.description || "No description",
210
+ className: "text-xs text-muted",
211
+ },
212
+ };
213
+ elements[badgeId] = {
214
+ type: "Badge",
215
+ props: {
216
+ text: p.enabled ? "Enabled" : "Available",
217
+ variant: p.enabled ? "default" : "outline",
218
+ },
219
+ };
220
+ elements[configBtnId] = {
221
+ type: "Button",
222
+ props: {
223
+ text: "Configure",
224
+ variant: "outline",
225
+ size: "sm",
226
+ on: {
227
+ press: {
228
+ action: "plugin:configure",
229
+ params: { pluginId: p.id },
230
+ },
231
+ },
232
+ },
233
+ };
234
+ elements[cardId] = {
235
+ type: "Card",
236
+ props: {
237
+ children: [nameId, descId, badgeId, configBtnId],
238
+ className: "p-3 space-y-1",
239
+ },
240
+ };
241
+ }
242
+ elements.list = {
243
+ type: "Stack",
244
+ props: { gap: "2", children: cardIds },
245
+ };
246
+ elements.root = {
247
+ type: "Stack",
248
+ props: { gap: "3", children: ["heading", "list"] },
249
+ };
250
+ return {
251
+ version: 1,
252
+ root: "root",
253
+ elements,
254
+ state: {},
255
+ };
256
+ }
257
+ //# sourceMappingURL=plugin-ui-spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plugin-ui-spec.js","sourceRoot":"","sources":["../../src/config/plugin-ui-spec.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AA4BH,MAAM,UAAU,uBAAuB,CAAC,MAAuB;IAC7D,MAAM,QAAQ,GAA4C,EAAE,CAAC;IAC7D,MAAM,YAAY,GAAa,EAAE,CAAC;IAClC,MAAM,KAAK,GAA4B;QACrC,QAAQ,EAAE,MAAM,CAAC,EAAE;KACpB,CAAC;IAEF,SAAS;IACT,QAAQ,CAAC,MAAM,GAAG;QAChB,IAAI,EAAE,OAAO;QACb,KAAK,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,EAAE;KACjD,CAAC;IACF,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAE5B,QAAQ,CAAC,KAAK,GAAG;QACf,IAAI,EAAE,SAAS;QACf,KAAK,EAAE;YACL,KAAK,EAAE,CAAC;YACR,IAAI,EAAE,aAAa,MAAM,CAAC,IAAI,EAAE;SACjC;KACF,CAAC;IAEF,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;QACvB,QAAQ,CAAC,IAAI,GAAG;YACd,IAAI,EAAE,MAAM;YACZ,KAAK,EAAE;gBACL,IAAI,EAAE,MAAM,CAAC,WAAW;gBACxB,SAAS,EAAE,oBAAoB;aAChC;SACF,CAAC;IACJ,CAAC;IAED,eAAe;IACf,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO;QAC/B,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,KAAK,CAAC;YACtD,CAAC,CAAC,OAAO;YACT,CAAC,CAAC,qBAAqB;QACzB,CAAC,CAAC,UAAU,CAAC;IACf,MAAM,aAAa,GAAG,MAAM,CAAC,OAAO;QAClC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,KAAK,CAAC;YACtD,CAAC,CAAC,SAAS;YACX,CAAC,CAAC,WAAW;QACf,CAAC,CAAC,SAAS,CAAC;IACd,QAAQ,CAAC,MAAM,GAAG;QAChB,IAAI,EAAE,OAAO;QACb,KAAK,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,aAAa,EAAE;KACpD,CAAC;IACF,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAE5B,YAAY;IACZ,QAAQ,CAAC,GAAG,GAAG,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;IAChD,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAEzB,mBAAmB;IACnB,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;QACtC,MAAM,OAAO,GAAG,SAAS,KAAK,CAAC,GAAG,EAAE,CAAC;QACrC,MAAM,SAAS,GAAG,UAAU,KAAK,CAAC,GAAG,EAAE,CAAC;QACxC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACvB,KAAK,CAAC,UAAU,KAAK,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC;QAElC,MAAM,QAAQ,GACZ,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC;YACzB,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC;YAC3B,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC;YAC5B,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QAEjC,QAAQ,CAAC,OAAO,CAAC,GAAG;YAClB,IAAI,EAAE,OAAO;YACb,KAAK,EAAE;gBACL,KAAK,EAAE,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,GAAG;gBAC/B,WAAW,EAAE,KAAK,CAAC,KAAK;oBACtB,CAAC,CAAC,uBAAuB;oBACzB,CAAC,CAAC,KAAK,CAAC,QAAQ;wBACd,CAAC,CAAC,UAAU;wBACZ,CAAC,CAAC,UAAU;gBAChB,SAAS;gBACT,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM;gBACpC,SAAS,EAAE,mBAAmB;aAC/B;YACD,GAAG,CAAC,KAAK,CAAC,QAAQ;gBAChB,CAAC,CAAC;oBACE,UAAU,EAAE;wBACV,MAAM,EAAE;4BACN,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC,GAAG,cAAc,EAAE;yBAC1D;qBACF;iBACF;gBACH,CAAC,CAAC,EAAE,CAAC;SACR,CAAC;QAEF,2CAA2C;QAC3C,IAAI,KAAK,CAAC,WAAW,EAAE,CAAC;YACtB,MAAM,MAAM,GAAG,QAAQ,KAAK,CAAC,GAAG,EAAE,CAAC;YACnC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACtB,QAAQ,CAAC,MAAM,CAAC,GAAG;gBACjB,IAAI,EAAE,MAAM;gBACZ,KAAK,EAAE;oBACL,IAAI,EAAE,KAAK,CAAC,WAAW;oBACvB,SAAS,EAAE,gCAAgC;iBAC5C;aACF,CAAC;QACJ,CAAC;IACH,CAAC;IAED,QAAQ,CAAC,MAAM,GAAG;QAChB,IAAI,EAAE,OAAO;QACb,KAAK,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAE;KACxC,CAAC;IACF,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAE5B,iBAAiB;IACjB,MAAM,cAAc,GAAG,CAAC,SAAS,CAAC,CAAC;IACnC,QAAQ,CAAC,OAAO,GAAG;QACjB,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE;YACL,IAAI,EAAE,oBAAoB;YAC1B,OAAO,EAAE,SAAS;YAClB,SAAS,EAAE,eAAe;YAC1B,EAAE,EAAE;gBACF,KAAK,EAAE;oBACL,MAAM,EAAE,aAAa;oBACrB,MAAM,EAAE,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,EAAE;iBAChC;aACF;SACF;KACF,CAAC;IAEF,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACpB,cAAc,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACjC,QAAQ,CAAC,SAAS,GAAG;YACnB,IAAI,EAAE,QAAQ;YACd,KAAK,EAAE;gBACL,IAAI,EAAE,eAAe;gBACrB,OAAO,EAAE,SAAS;gBAClB,EAAE,EAAE;oBACF,KAAK,EAAE;wBACL,MAAM,EAAE,eAAe;wBACvB,MAAM,EAAE,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,EAAE;qBAChC;iBACF;aACF;SACF,CAAC;IACJ,CAAC;IAED,IAAI,MAAM,CAAC,QAAQ,KAAK,WAAW,EAAE,CAAC;QACpC,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC/B,QAAQ,CAAC,OAAO,GAAG;YACjB,IAAI,EAAE,QAAQ;YACd,KAAK,EAAE;gBACL,IAAI,EAAE,iBAAiB;gBACvB,OAAO,EAAE,SAAS;gBAClB,EAAE,EAAE;oBACF,KAAK,EAAE;wBACL,MAAM,EAAE,aAAa;wBACrB,MAAM,EAAE,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,EAAE;qBAChC;iBACF;aACF;SACF,CAAC;IACJ,CAAC;IAED,QAAQ,CAAC,OAAO,GAAG;QACjB,IAAI,EAAE,OAAO;QACb,KAAK,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,cAAc,EAAE;KAChE,CAAC;IACF,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAE7B,OAAO;IACP,QAAQ,CAAC,IAAI,GAAG;QACd,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE;YACL,QAAQ,EAAE,YAAY;YACtB,SAAS,EAAE,eAAe;SAC3B;KACF,CAAC;IAEF,OAAO;QACL,OAAO,EAAE,CAAC;QACV,IAAI,EAAE,MAAM;QACZ,QAAQ;QACR,KAAK;KACN,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,qBAAqB,CACnC,OAA0B,EAC1B,KAAa;IAEb,MAAM,QAAQ,GAA4C,EAAE,CAAC;IAC7D,MAAM,OAAO,GAAa,EAAE,CAAC;IAE7B,QAAQ,CAAC,OAAO,GAAG;QACjB,IAAI,EAAE,SAAS;QACf,KAAK,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE;KACjC,CAAC;IAEF,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACxC,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;QACrB,MAAM,MAAM,GAAG,QAAQ,CAAC,EAAE,CAAC;QAC3B,MAAM,MAAM,GAAG,QAAQ,CAAC,EAAE,CAAC;QAC3B,MAAM,MAAM,GAAG,QAAQ,CAAC,EAAE,CAAC;QAC3B,MAAM,OAAO,GAAG,SAAS,CAAC,EAAE,CAAC;QAC7B,MAAM,WAAW,GAAG,UAAU,CAAC,EAAE,CAAC;QAClC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAErB,QAAQ,CAAC,MAAM,CAAC,GAAG;YACjB,IAAI,EAAE,MAAM;YACZ,KAAK,EAAE;gBACL,IAAI,EAAE,CAAC,CAAC,IAAI;gBACZ,SAAS,EAAE,uBAAuB;aACnC;SACF,CAAC;QACF,QAAQ,CAAC,MAAM,CAAC,GAAG;YACjB,IAAI,EAAE,MAAM;YACZ,KAAK,EAAE;gBACL,IAAI,EAAE,CAAC,CAAC,WAAW,IAAI,gBAAgB;gBACvC,SAAS,EAAE,oBAAoB;aAChC;SACF,CAAC;QACF,QAAQ,CAAC,OAAO,CAAC,GAAG;YAClB,IAAI,EAAE,OAAO;YACb,KAAK,EAAE;gBACL,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW;gBACzC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS;aAC3C;SACF,CAAC;QACF,QAAQ,CAAC,WAAW,CAAC,GAAG;YACtB,IAAI,EAAE,QAAQ;YACd,KAAK,EAAE;gBACL,IAAI,EAAE,WAAW;gBACjB,OAAO,EAAE,SAAS;gBAClB,IAAI,EAAE,IAAI;gBACV,EAAE,EAAE;oBACF,KAAK,EAAE;wBACL,MAAM,EAAE,kBAAkB;wBAC1B,MAAM,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE;qBAC3B;iBACF;aACF;SACF,CAAC;QAEF,QAAQ,CAAC,MAAM,CAAC,GAAG;YACjB,IAAI,EAAE,MAAM;YACZ,KAAK,EAAE;gBACL,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,CAAC;gBAChD,SAAS,EAAE,eAAe;aAC3B;SACF,CAAC;IACJ,CAAC;IAED,QAAQ,CAAC,IAAI,GAAG;QACd,IAAI,EAAE,OAAO;QACb,KAAK,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,OAAO,EAAE;KACvC,CAAC;IAEF,QAAQ,CAAC,IAAI,GAAG;QACd,IAAI,EAAE,OAAO;QACb,KAAK,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC,SAAS,EAAE,MAAM,CAAC,EAAE;KACnD,CAAC;IAEF,OAAO;QACL,OAAO,EAAE,CAAC;QACV,IAAI,EAAE,MAAM;QACZ,QAAQ;QACR,KAAK,EAAE,EAAE;KACV,CAAC;AACJ,CAAC"}
@@ -0,0 +1,54 @@
1
+ import type { DeploymentTargetConfig } from "../contracts/service-routing.js";
2
+ export declare const RUNTIME_EXECUTION_MODES: readonly ["cloud", "local-safe", "local-yolo"];
3
+ export type RuntimeExecutionMode = (typeof RUNTIME_EXECUTION_MODES)[number];
4
+ export interface RuntimeModeConfig {
5
+ executionMode?: RuntimeExecutionMode;
6
+ }
7
+ export interface RuntimeExecutionModeConfigSource {
8
+ runtime?: RuntimeModeConfig | Record<string, unknown> | null;
9
+ deploymentTarget?: DeploymentTargetConfig | null;
10
+ }
11
+ export interface RuntimeExecutionModeDefinition {
12
+ mode: RuntimeExecutionMode;
13
+ local: boolean;
14
+ cloud: boolean;
15
+ safe: boolean;
16
+ yolo: boolean;
17
+ }
18
+ export declare const RUNTIME_EXECUTION_MODE_DEFINITIONS: Record<RuntimeExecutionMode, RuntimeExecutionModeDefinition>;
19
+ export declare function normalizeRuntimeExecutionMode(value: unknown): RuntimeExecutionMode | null;
20
+ export declare function isCloudRuntimeMode(value: unknown): boolean;
21
+ export declare function isLocalRuntimeMode(value: unknown): boolean;
22
+ export declare function isSafeLocalMode(value: unknown): boolean;
23
+ export declare function isYoloLocalMode(value: unknown): boolean;
24
+ export declare function runtimeExecutionModeForDeploymentTarget(deploymentTarget: DeploymentTargetConfig | null | undefined): RuntimeExecutionMode;
25
+ export declare function readRuntimeExecutionModeConfig(config: RuntimeExecutionModeConfigSource | null | undefined): RuntimeExecutionMode;
26
+ /**
27
+ * Structural shape for the runtime/setting source consumed by the env-driven
28
+ * resolvers below. Kept structural so this module does not have to import
29
+ * `IAgentRuntime` from `@elizaos/core` (which would create a layering wart —
30
+ * runtime/agent types depend on this module, not the other way around).
31
+ */
32
+ export interface RuntimeExecutionModeSource {
33
+ getSetting?: (key: string) => unknown;
34
+ }
35
+ /**
36
+ * Canonical resolver for the active runtime execution mode at the
37
+ * agent/plugin boundary. Reads an explicit setting from the runtime first,
38
+ * then falls back to the same env vars, defaulting to `local-yolo` when
39
+ * nothing is set.
40
+ *
41
+ * This is the one source of truth for `cloud | local-safe | local-yolo`
42
+ * routing; both the agent package and the shell/coding-tools plugins import
43
+ * it from `@elizaos/shared` to avoid duplicating the resolution logic.
44
+ */
45
+ export declare function resolveRuntimeExecutionMode(source?: RuntimeExecutionModeSource | null): RuntimeExecutionMode;
46
+ /** Local-only narrowing of {@link RuntimeExecutionMode} for callers that only
47
+ * distinguish local-safe vs local-yolo. Cloud collapses to `local-yolo` here
48
+ * because legacy callers used this helper to pick a host-side execution path
49
+ * and only flipped to safe-mode when the sandbox was required. */
50
+ export type LocalExecutionMode = "local-safe" | "local-yolo";
51
+ export declare function resolveLocalExecutionMode(source?: RuntimeExecutionModeSource | null): LocalExecutionMode;
52
+ export declare function shouldUseSandboxExecution(source?: RuntimeExecutionModeSource | null): boolean;
53
+ export declare function isCloudExecutionMode(source?: RuntimeExecutionModeSource | null): boolean;
54
+ //# sourceMappingURL=runtime-mode.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runtime-mode.d.ts","sourceRoot":"","sources":["../../src/config/runtime-mode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AAI9E,eAAO,MAAM,uBAAuB,gDAI1B,CAAC;AAEX,MAAM,MAAM,oBAAoB,GAAG,CAAC,OAAO,uBAAuB,CAAC,CAAC,MAAM,CAAC,CAAC;AAE5E,MAAM,WAAW,iBAAiB;IAChC,aAAa,CAAC,EAAE,oBAAoB,CAAC;CACtC;AAED,MAAM,WAAW,gCAAgC;IAC/C,OAAO,CAAC,EAAE,iBAAiB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IAC7D,gBAAgB,CAAC,EAAE,sBAAsB,GAAG,IAAI,CAAC;CAClD;AAED,MAAM,WAAW,8BAA8B;IAC7C,IAAI,EAAE,oBAAoB,CAAC;IAC3B,KAAK,EAAE,OAAO,CAAC;IACf,KAAK,EAAE,OAAO,CAAC;IACf,IAAI,EAAE,OAAO,CAAC;IACd,IAAI,EAAE,OAAO,CAAC;CACf;AAED,eAAO,MAAM,kCAAkC,EAAE,MAAM,CACrD,oBAAoB,EACpB,8BAA8B,CAuB/B,CAAC;AAEF,wBAAgB,6BAA6B,CAC3C,KAAK,EAAE,OAAO,GACb,oBAAoB,GAAG,IAAI,CAM7B;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAE1D;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAG1D;AAED,wBAAgB,eAAe,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAEvD;AAED,wBAAgB,eAAe,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAEvD;AAED,wBAAgB,uCAAuC,CACrD,gBAAgB,EAAE,sBAAsB,GAAG,IAAI,GAAG,SAAS,GAC1D,oBAAoB,CAEtB;AAED,wBAAgB,8BAA8B,CAC5C,MAAM,EAAE,gCAAgC,GAAG,IAAI,GAAG,SAAS,GAC1D,oBAAoB,CAYtB;AAED;;;;;GAKG;AACH,MAAM,WAAW,0BAA0B;IACzC,UAAU,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC;CACvC;AAQD;;;;;;;;;GASG;AACH,wBAAgB,2BAA2B,CACzC,MAAM,CAAC,EAAE,0BAA0B,GAAG,IAAI,GACzC,oBAAoB,CAUtB;AAED;;;kEAGkE;AAClE,MAAM,MAAM,kBAAkB,GAAG,YAAY,GAAG,YAAY,CAAC;AAE7D,wBAAgB,yBAAyB,CACvC,MAAM,CAAC,EAAE,0BAA0B,GAAG,IAAI,GACzC,kBAAkB,CAIpB;AAED,wBAAgB,yBAAyB,CACvC,MAAM,CAAC,EAAE,0BAA0B,GAAG,IAAI,GACzC,OAAO,CAET;AAED,wBAAgB,oBAAoB,CAClC,MAAM,CAAC,EAAE,0BAA0B,GAAG,IAAI,GACzC,OAAO,CAET"}