@elizaos/app-core 2.0.3-beta.2 → 2.0.3-beta.4

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 (361) hide show
  1. package/agent-bridge.d.ts +5 -5
  2. package/api/auth/audit.d.ts +1 -1
  3. package/api/auth/auth-context.d.ts +1 -1
  4. package/api/auth/bootstrap-token.d.ts +1 -1
  5. package/api/auth/sessions.d.ts +1 -1
  6. package/api/auth-bootstrap-routes.d.ts +1 -1
  7. package/api/auth-pairing-routes.d.ts +1 -1
  8. package/api/auth-pairing-routes.d.ts.map +1 -1
  9. package/api/auth-pairing-routes.js +2 -3
  10. package/api/auth-session-routes.d.ts +2 -2
  11. package/api/auth.d.ts +1 -1
  12. package/api/automations-compat-routes.d.ts +1 -1
  13. package/api/background-tasks-routes.d.ts +1 -1
  14. package/api/catalog-routes.d.ts +1 -1
  15. package/api/cloud-voice-routes.d.ts +1 -1
  16. package/api/compat-route-shared.d.ts +12 -5
  17. package/api/compat-route-shared.d.ts.map +1 -1
  18. package/api/compat-route-shared.js +22 -187
  19. package/api/database-rows-compat-routes.d.ts +1 -1
  20. package/api/dev-compat-routes.d.ts +1 -1
  21. package/api/dev-route-catalog.d.ts.map +1 -1
  22. package/api/dev-route-catalog.js +20 -0
  23. package/api/drop-status-compat-route.d.ts +3 -0
  24. package/api/drop-status-compat-route.d.ts.map +1 -0
  25. package/api/drop-status-compat-route.js +12 -0
  26. package/api/first-run-routes.d.ts +1 -1
  27. package/api/internal-routes.d.ts +1 -1
  28. package/api/runtime-mode-routes.d.ts +1 -1
  29. package/api/secrets-manager-routes.d.ts.map +1 -1
  30. package/api/sensitive-request-routes.d.ts +2 -2
  31. package/api/server-config-filter.d.ts.map +1 -1
  32. package/api/server-config-filter.js +0 -1
  33. package/api/server-first-run-helpers.d.ts.map +1 -1
  34. package/api/server-first-run-helpers.js +0 -3
  35. package/api/server.d.ts +8 -8
  36. package/api/server.d.ts.map +1 -1
  37. package/api/server.js +13 -59
  38. package/api/training-benchmarks.d.ts +1 -1
  39. package/api/training-benchmarks.d.ts.map +1 -1
  40. package/api/training-benchmarks.js +31 -9
  41. package/api/workbench-compat-routes.d.ts +1 -1
  42. package/benchmark/server-utils.d.ts +2 -2
  43. package/browser.d.ts +4 -4
  44. package/cli/plugins-cli.d.ts.map +1 -1
  45. package/cli/plugins-cli.js +5 -0
  46. package/cli/program/register.auth.d.ts +27 -1
  47. package/cli/program/register.auth.d.ts.map +1 -1
  48. package/cli/program/register.auth.js +187 -0
  49. package/cli/program/register.dashboard.d.ts.map +1 -1
  50. package/cli/program/register.dashboard.js +11 -1
  51. package/cli/program.d.ts +1 -1
  52. package/first-run/first-run-config.d.ts +1 -1
  53. package/index.d.ts +46 -47
  54. package/index.d.ts.map +1 -1
  55. package/index.js +3 -7
  56. package/package.json +42 -36
  57. package/packaging/PUBLISHING_GUIDE.md +20 -20
  58. package/platform/elizaos-agent-browser-stub.d.ts +0 -1
  59. package/platform/elizaos-agent-browser-stub.d.ts.map +1 -1
  60. package/platform/elizaos-agent-browser-stub.js +0 -1
  61. package/platform/ios-runtime-bridge.d.ts.map +1 -1
  62. package/platform/ios-runtime-bridge.js +0 -1
  63. package/platform/native-plugin-entrypoints.d.ts +2 -2
  64. package/platforms/android/app/build.gradle +30 -7
  65. package/platforms/android/app/src/main/elizavoice-jni/elizavoice-jni.cpp +179 -35
  66. package/platforms/android/app/src/main/java/ai/elizaos/app/ElizaAgentService.java +60 -32
  67. package/platforms/android/app/src/main/java/ai/elizaos/app/ElizaBionicInferenceServer.java +405 -65
  68. package/platforms/android/app/src/main/java/ai/elizaos/app/ElizaVoiceNative.java +35 -0
  69. package/platforms/android/app/src/main/java/ai/elizaos/app/ElizaVoicePlugin.java +13 -6
  70. package/platforms/android/app/src/main/res/drawable/splash.png +0 -0
  71. package/platforms/android/app/src/main/res/drawable-land-hdpi/splash.png +0 -0
  72. package/platforms/android/app/src/main/res/drawable-land-mdpi/splash.png +0 -0
  73. package/platforms/android/app/src/main/res/drawable-land-xhdpi/splash.png +0 -0
  74. package/platforms/android/app/src/main/res/drawable-land-xxhdpi/splash.png +0 -0
  75. package/platforms/android/app/src/main/res/drawable-land-xxxhdpi/splash.png +0 -0
  76. package/platforms/android/app/src/main/res/drawable-port-hdpi/splash.png +0 -0
  77. package/platforms/android/app/src/main/res/drawable-port-mdpi/splash.png +0 -0
  78. package/platforms/android/app/src/main/res/drawable-port-xhdpi/splash.png +0 -0
  79. package/platforms/android/app/src/main/res/drawable-port-xxhdpi/splash.png +0 -0
  80. package/platforms/android/app/src/main/res/drawable-port-xxxhdpi/splash.png +0 -0
  81. package/platforms/android/app/src/main/res/mipmap-hdpi/ic_launcher.png +0 -0
  82. package/platforms/android/app/src/main/res/mipmap-hdpi/ic_launcher_foreground.png +0 -0
  83. package/platforms/android/app/src/main/res/mipmap-hdpi/ic_launcher_monochrome.png +0 -0
  84. package/platforms/android/app/src/main/res/mipmap-hdpi/ic_launcher_round.png +0 -0
  85. package/platforms/android/app/src/main/res/mipmap-mdpi/ic_launcher.png +0 -0
  86. package/platforms/android/app/src/main/res/mipmap-mdpi/ic_launcher_foreground.png +0 -0
  87. package/platforms/android/app/src/main/res/mipmap-mdpi/ic_launcher_monochrome.png +0 -0
  88. package/platforms/android/app/src/main/res/mipmap-mdpi/ic_launcher_round.png +0 -0
  89. package/platforms/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png +0 -0
  90. package/platforms/android/app/src/main/res/mipmap-xhdpi/ic_launcher_foreground.png +0 -0
  91. package/platforms/android/app/src/main/res/mipmap-xhdpi/ic_launcher_monochrome.png +0 -0
  92. package/platforms/android/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png +0 -0
  93. package/platforms/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png +0 -0
  94. package/platforms/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_foreground.png +0 -0
  95. package/platforms/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_monochrome.png +0 -0
  96. package/platforms/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png +0 -0
  97. package/platforms/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png +0 -0
  98. package/platforms/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_foreground.png +0 -0
  99. package/platforms/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_monochrome.png +0 -0
  100. package/platforms/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png +0 -0
  101. package/platforms/android/app/src/main/res/values/colors.xml +5 -1
  102. package/platforms/android/app/src/main/res/values/ic_launcher_background.xml +1 -1
  103. package/platforms/android/app/src/main/res/values/styles.xml +4 -1
  104. package/platforms/electrobun/electrobun.config.ts +0 -1
  105. package/platforms/electrobun/native/macos/window-effects.mm +4 -0
  106. package/platforms/electrobun/package.json +11 -9
  107. package/platforms/electrobun/remotes/local-model/src/bun/eliza1-catalog.ts +1 -1
  108. package/platforms/electrobun/remotes/runtime/src/dev/phase2-smoke.ts +10 -5
  109. package/platforms/electrobun/remotes/runtime/src/dev/phase3-smoke.ts +11 -15
  110. package/platforms/electrobun/src/application-menu.ts +0 -7
  111. package/platforms/electrobun/src/desktop-http-request.test.ts +30 -1
  112. package/platforms/electrobun/src/desktop-http-request.ts +14 -2
  113. package/platforms/electrobun/src/desktop-test-bridge-server.ts +28 -0
  114. package/platforms/electrobun/src/fatal-shutdown.test.ts +3 -7
  115. package/platforms/electrobun/src/index.ts +64 -13
  116. package/platforms/electrobun/src/lifecycle/api-base-owner.test.ts +83 -0
  117. package/platforms/electrobun/src/lifecycle/api-base-owner.ts +37 -16
  118. package/platforms/electrobun/src/native/agent.ts +28 -17
  119. package/platforms/electrobun/src/native/credentials.ts +6 -1
  120. package/platforms/electrobun/src/native/desktop-window.test.ts +142 -26
  121. package/platforms/electrobun/src/native/desktop.ts +8 -4
  122. package/platforms/electrobun/src/native/index.ts +6 -0
  123. package/platforms/electrobun/src/native/remote-plugin-host.ts +18 -8
  124. package/platforms/electrobun/src/preload.js +1 -1
  125. package/platforms/electrobun/src/voice/voice-live-validation.test.ts +10 -5
  126. package/platforms/electrobun/src/voice/voice-runtime-adapter.ts +3 -2
  127. package/platforms/electrobun/src/voice/voice-service.test.ts +26 -0
  128. package/platforms/electrobun/src/voice/voice-service.ts +57 -17
  129. package/platforms/electrobun/tsconfig.json +17 -1
  130. package/platforms/ios/App/App/Base.lproj/LaunchScreen.storyboard +4 -6
  131. package/registry/index.d.ts +1 -6
  132. package/registry/index.d.ts.map +1 -1
  133. package/registry/index.js +9 -101
  134. package/runtime/android-avf-microdroid-bridge.d.ts +1 -1
  135. package/runtime/bundled-fused-lib.d.ts +36 -0
  136. package/runtime/bundled-fused-lib.d.ts.map +1 -0
  137. package/runtime/bundled-fused-lib.js +77 -0
  138. package/runtime/channel-plugin-map.d.ts +1 -5
  139. package/runtime/channel-plugin-map.d.ts.map +1 -1
  140. package/runtime/channel-plugin-map.js +11 -31
  141. package/runtime/desktop/index.d.ts +5 -5
  142. package/runtime/dev-server.js +11 -2
  143. package/runtime/eliza.d.ts.map +1 -1
  144. package/runtime/eliza.js +18 -8
  145. package/runtime/mode/route-mode-guard.d.ts +1 -1
  146. package/runtime/mode/route-mode-matrix.d.ts +1 -1
  147. package/runtime/voice-warmup.d.ts +4 -19
  148. package/runtime/voice-warmup.d.ts.map +1 -1
  149. package/runtime/voice-warmup.js +4 -14
  150. package/scripts/aosp/README.md +10 -1
  151. package/scripts/aosp/compile-libllama-paths.mjs +110 -0
  152. package/scripts/aosp/compile-libllama-zig-pin.test.mjs +147 -0
  153. package/scripts/aosp/compile-libllama.mjs +377 -81
  154. package/scripts/aosp/compile-libllama.test.mjs +133 -0
  155. package/scripts/aosp/compile-shim.mjs +21 -1
  156. package/scripts/aosp/deploy-pixel.mjs +1 -1
  157. package/scripts/aosp/stage-default-models.mjs +24 -31
  158. package/scripts/aosp/stage-default-models.test.mjs +23 -0
  159. package/scripts/assert-required-bundled-packages.test.ts +22 -1
  160. package/scripts/build-helpers/verify-fused-symbols.mjs +33 -0
  161. package/scripts/build-helpers/verify-fused-symbols.test.mjs +0 -0
  162. package/scripts/build-image.sh +1 -3
  163. package/scripts/build-llama-cpp-mtp.mjs +17 -16
  164. package/scripts/check-i18n.mjs +0 -1
  165. package/scripts/copy-runtime-node-modules.ts +147 -0
  166. package/scripts/desktop-build.mjs +317 -4
  167. package/scripts/docker-ci-smoke.sh +33 -8
  168. package/scripts/ensure-type-package-aliases.mjs +1 -1
  169. package/scripts/ios-xcframework/run-physical-device-smoke.mjs +1 -1
  170. package/scripts/lib/agent-source-watcher.mjs +0 -1
  171. package/scripts/lib/artifact-staleness.d.mts +33 -0
  172. package/scripts/lib/artifact-staleness.mjs +122 -0
  173. package/scripts/lib/artifact-staleness.test.mts +98 -0
  174. package/scripts/lib/duet-bridge.mjs +1 -1
  175. package/scripts/lib/ios-plist-url-scheme.mjs +80 -0
  176. package/scripts/lib/mobile-build-decisions.mjs +97 -0
  177. package/scripts/lib/renderer-build-manifest.d.mts +65 -0
  178. package/scripts/lib/renderer-build-manifest.mjs +257 -0
  179. package/scripts/lib/renderer-build-manifest.test.mts +277 -0
  180. package/scripts/lib/stage-android-agent.mjs +13 -4
  181. package/scripts/lib/verify-ondevice-artifact.d.mts +16 -0
  182. package/scripts/lib/verify-ondevice-artifact.mjs +61 -0
  183. package/scripts/lib/verify-ondevice-artifact.test.mts +98 -0
  184. package/scripts/lib/websocket-pending-queue.ts +92 -0
  185. package/scripts/link-docker-local-app-packages.mjs +6 -0
  186. package/scripts/playwright-ui-live-stack.ts +430 -144
  187. package/scripts/playwright-ui-smoke-api-stub.mjs +160 -168
  188. package/scripts/run-local-plugin-live-smoke.mjs +1 -6
  189. package/scripts/run-mobile-build-brand-separation.test.mts +33 -0
  190. package/scripts/run-mobile-build-ios-engine-gate.test.mjs +85 -0
  191. package/scripts/run-mobile-build-mtp-staleness.test.mts +198 -0
  192. package/scripts/run-mobile-build.mjs +408 -86
  193. package/scripts/serve-real-local-agent.ts +72 -0
  194. package/scripts/stage-desktop-fused-lib.mjs +43 -14
  195. package/scripts/verify-ondevice-artifact.mjs +111 -0
  196. package/scripts/voice-attribution-smoke.ts +144 -38
  197. package/scripts/voice-duet.mjs +6 -6
  198. package/scripts/voice-e2e-hardware.ts +22 -16
  199. package/scripts/voice-interactive.mjs +16 -45
  200. package/security/agent-vault-id.d.ts +1 -1
  201. package/security/platform-secure-store-node.d.ts +1 -1
  202. package/services/ambient-audio/consent.d.ts +1 -1
  203. package/services/ambient-audio/index.d.ts +6 -6
  204. package/services/ambient-audio/replay-buffer.d.ts +1 -1
  205. package/services/ambient-audio/response-gate.d.ts +1 -1
  206. package/services/ambient-audio/service.d.ts +3 -3
  207. package/services/connector-target-catalog.d.ts +1 -1
  208. package/services/sensitive-requests/index.d.ts +6 -6
  209. package/services/steward-sidecar/wallet-setup.d.ts +1 -1
  210. package/services/steward-sidecar.d.ts +3 -3
  211. package/services/tunnel-to-mobile/index.d.ts +1 -1
  212. package/services/vault-bootstrap.d.ts.map +1 -1
  213. package/services/vault-bootstrap.js +14 -10
  214. package/services/voice-profiles/diarization-pipeline.d.ts +1 -1
  215. package/services/voice-profiles/index.d.ts +11 -11
  216. package/services/voice-profiles/owner-confidence.d.ts +1 -1
  217. package/services/voice-profiles/private-challenge.d.ts +1 -1
  218. package/services/voice-profiles/store.d.ts +1 -1
  219. package/test/helpers/live-provider.test.ts +91 -1
  220. package/test/helpers/live-provider.ts +195 -51
  221. package/test/scripts/websocket-pending-queue.test.ts +119 -0
  222. package/test-support/test-helpers.d.ts +0 -33
  223. package/test-support/test-helpers.d.ts.map +1 -1
  224. package/test-support/test-helpers.js +81 -189
  225. package/ui-compat.d.ts +1 -0
  226. package/ui-compat.d.ts.map +1 -1
  227. package/ui-compat.js +4 -0
  228. package/platforms/electrobun/docs/convergence-audit.json +0 -3505
  229. package/platforms/electrobun/docs/convergence-audit.md +0 -694
  230. package/platforms/electrobun/scripts/ensure-whisper-gguf.sh +0 -55
  231. package/platforms/electrobun/scripts/ensure-whisper-model.sh +0 -35
  232. package/platforms/electrobun/scripts/generate-convergence-audit.ts +0 -1203
  233. package/platforms/electrobun/src/native/whisper-env.test.ts +0 -71
  234. package/platforms/electrobun/src/native/whisper-env.ts +0 -68
  235. package/registry/app-registry.d.ts +0 -14
  236. package/registry/app-registry.d.ts.map +0 -1
  237. package/registry/app-registry.js +0 -29
  238. package/registry/entries/apps/app-polymarket.json +0 -31
  239. package/registry/entries/apps/clawville.json +0 -27
  240. package/registry/entries/apps/companion.json +0 -28
  241. package/registry/entries/apps/database-viewer.json +0 -27
  242. package/registry/entries/apps/defense-of-the-agents.json +0 -27
  243. package/registry/entries/apps/documents.json +0 -30
  244. package/registry/entries/apps/feed.json +0 -27
  245. package/registry/entries/apps/hyperliquid.json +0 -31
  246. package/registry/entries/apps/log-viewer.json +0 -27
  247. package/registry/entries/apps/memory-viewer.json +0 -27
  248. package/registry/entries/apps/model-tester.json +0 -31
  249. package/registry/entries/apps/plugin-viewer.json +0 -27
  250. package/registry/entries/apps/relationship-viewer.json +0 -27
  251. package/registry/entries/apps/runtime-debugger.json +0 -27
  252. package/registry/entries/apps/shopify.json +0 -31
  253. package/registry/entries/apps/skills-viewer.json +0 -27
  254. package/registry/entries/apps/steward.json +0 -31
  255. package/registry/entries/apps/training.json +0 -54
  256. package/registry/entries/apps/trajectory-viewer.json +0 -27
  257. package/registry/entries/apps/vincent.json +0 -31
  258. package/registry/entries/connectors/bluebubbles.json +0 -99
  259. package/registry/entries/connectors/bluesky.json +0 -173
  260. package/registry/entries/connectors/discord.json +0 -119
  261. package/registry/entries/connectors/farcaster.json +0 -174
  262. package/registry/entries/connectors/feishu.json +0 -79
  263. package/registry/entries/connectors/google-chat.json +0 -120
  264. package/registry/entries/connectors/google.json +0 -82
  265. package/registry/entries/connectors/imessage.json +0 -96
  266. package/registry/entries/connectors/instagram.json +0 -64
  267. package/registry/entries/connectors/line.json +0 -86
  268. package/registry/entries/connectors/matrix.json +0 -94
  269. package/registry/entries/connectors/mattermost.json +0 -110
  270. package/registry/entries/connectors/msteams.json +0 -104
  271. package/registry/entries/connectors/nextcloud-talk.json +0 -104
  272. package/registry/entries/connectors/nostr.json +0 -70
  273. package/registry/entries/connectors/signal.json +0 -81
  274. package/registry/entries/connectors/slack.json +0 -102
  275. package/registry/entries/connectors/telegram.json +0 -71
  276. package/registry/entries/connectors/tlon.json +0 -94
  277. package/registry/entries/connectors/twitch.json +0 -110
  278. package/registry/entries/connectors/whatsapp.json +0 -113
  279. package/registry/entries/connectors/x.json +0 -231
  280. package/registry/entries/connectors/zalo.json +0 -112
  281. package/registry/entries/connectors/zalouser.json +0 -122
  282. package/registry/entries/plugins/agent-orchestrator.json +0 -33
  283. package/registry/entries/plugins/agent-skills.json +0 -72
  284. package/registry/entries/plugins/anthropic.json +0 -73
  285. package/registry/entries/plugins/app-control.json +0 -23
  286. package/registry/entries/plugins/auto-trader.json +0 -203
  287. package/registry/entries/plugins/background-runner.json +0 -26
  288. package/registry/entries/plugins/blooio.json +0 -102
  289. package/registry/entries/plugins/browser.json +0 -75
  290. package/registry/entries/plugins/cli.json +0 -40
  291. package/registry/entries/plugins/clipboard.json +0 -44
  292. package/registry/entries/plugins/coding-tools.json +0 -71
  293. package/registry/entries/plugins/commands.json +0 -63
  294. package/registry/entries/plugins/computeruse.json +0 -74
  295. package/registry/entries/plugins/copilot-proxy.json +0 -93
  296. package/registry/entries/plugins/directives.json +0 -63
  297. package/registry/entries/plugins/edge-tts.json +0 -97
  298. package/registry/entries/plugins/elevenlabs.json +0 -169
  299. package/registry/entries/plugins/elizacloud.json +0 -208
  300. package/registry/entries/plugins/evm.json +0 -134
  301. package/registry/entries/plugins/experience.json +0 -34
  302. package/registry/entries/plugins/facewear.json +0 -131
  303. package/registry/entries/plugins/form.json +0 -26
  304. package/registry/entries/plugins/github.json +0 -93
  305. package/registry/entries/plugins/gmail-watch.json +0 -25
  306. package/registry/entries/plugins/goals.json +0 -77
  307. package/registry/entries/plugins/google-genai.json +0 -106
  308. package/registry/entries/plugins/groq.json +0 -93
  309. package/registry/entries/plugins/hedera.json +0 -48
  310. package/registry/entries/plugins/inmemorydb.json +0 -25
  311. package/registry/entries/plugins/linear.json +0 -51
  312. package/registry/entries/plugins/local-inference.json +0 -137
  313. package/registry/entries/plugins/local-storage.json +0 -36
  314. package/registry/entries/plugins/localdb.json +0 -25
  315. package/registry/entries/plugins/mcp.json +0 -44
  316. package/registry/entries/plugins/memory.json +0 -124
  317. package/registry/entries/plugins/minecraft.json +0 -79
  318. package/registry/entries/plugins/moltbook.json +0 -83
  319. package/registry/entries/plugins/music.json +0 -155
  320. package/registry/entries/plugins/mysticism.json +0 -48
  321. package/registry/entries/plugins/nearai.json +0 -82
  322. package/registry/entries/plugins/ngrok.json +0 -69
  323. package/registry/entries/plugins/ollama.json +0 -96
  324. package/registry/entries/plugins/openai.json +0 -189
  325. package/registry/entries/plugins/openrouter.json +0 -188
  326. package/registry/entries/plugins/pdf.json +0 -26
  327. package/registry/entries/plugins/plugin-manager.json +0 -23
  328. package/registry/entries/plugins/prose.json +0 -48
  329. package/registry/entries/plugins/rlm.json +0 -26
  330. package/registry/entries/plugins/roblox.json +0 -88
  331. package/registry/entries/plugins/rss.json +0 -64
  332. package/registry/entries/plugins/s3-storage.json +0 -91
  333. package/registry/entries/plugins/scheduling.json +0 -35
  334. package/registry/entries/plugins/shell.json +0 -94
  335. package/registry/entries/plugins/social-alpha.json +0 -72
  336. package/registry/entries/plugins/tailscale.json +0 -81
  337. package/registry/entries/plugins/tee.json +0 -53
  338. package/registry/entries/plugins/todos.json +0 -26
  339. package/registry/entries/plugins/trajectory-logger.json +0 -33
  340. package/registry/entries/plugins/trust.json +0 -39
  341. package/registry/entries/plugins/tts.json +0 -71
  342. package/registry/entries/plugins/tunnel.json +0 -45
  343. package/registry/entries/plugins/twilio.json +0 -168
  344. package/registry/entries/plugins/vercel-ai-gateway.json +0 -128
  345. package/registry/entries/plugins/video.json +0 -23
  346. package/registry/entries/plugins/vision.json +0 -43
  347. package/registry/entries/plugins/webhooks.json +0 -23
  348. package/registry/entries/plugins/workflow.json +0 -25
  349. package/registry/entries/plugins/xai.json +0 -75
  350. package/registry/loader.d.ts +0 -28
  351. package/registry/loader.d.ts.map +0 -1
  352. package/registry/loader.js +0 -158
  353. package/registry/schema.d.ts +0 -1199
  354. package/registry/schema.d.ts.map +0 -1
  355. package/registry/schema.js +0 -300
  356. package/scripts/patches/llama-mobile-kokoro-tts.patch +0 -480
  357. package/scripts/release-workflow-drift.test.ts +0 -57
  358. package/test/helpers/i18n.ts +0 -5
  359. package/test/helpers/loopback.ts +0 -33
  360. package/test/helpers/react-test.ts +0 -40
  361. package/test/helpers/skip-without.ts +0 -53
@@ -85,221 +85,113 @@ export function isWorkspaceDependency(version) {
85
85
  return (typeof version === "string" &&
86
86
  (version.startsWith(".") || version.startsWith("workspace:")));
87
87
  }
88
- const DISCORD_PLUGIN_PACKAGE_NAME = "@elizaos/plugin-discord";
89
- const DISCORD_PLUGIN_LOCAL_ENTRY_CANDIDATES = [
90
- "../plugins/plugin-discord/dist/index",
91
- ];
92
- /**
93
- * Resolve the Discord plugin import specifier.
94
- * Prefers package resolution, then falls back to local plugin checkout paths.
95
- */
96
- export function resolveDiscordPluginImportSpecifier() {
97
- if (isPackageImportResolvable(DISCORD_PLUGIN_PACKAGE_NAME)) {
98
- return DISCORD_PLUGIN_PACKAGE_NAME;
99
- }
100
- const helperDir = path.dirname(fileURLToPath(import.meta.url));
101
- const packageRoot = path.resolve(helperDir, "..", "..");
102
- for (const relativeEntryPath of DISCORD_PLUGIN_LOCAL_ENTRY_CANDIDATES) {
103
- const absoluteEntryPath = path.resolve(packageRoot, relativeEntryPath);
88
+ const PACKAGE_ROOT = path.resolve(path.dirname(fileURLToPath(import.meta.url)), "..", "..");
89
+ function resolveFirstExistingPath(relativeEntryPaths) {
90
+ for (const relativeEntryPath of relativeEntryPaths) {
91
+ const absoluteEntryPath = path.resolve(PACKAGE_ROOT, relativeEntryPath);
104
92
  if (existsSync(absoluteEntryPath)) {
105
93
  return pathToFileURL(absoluteEntryPath).href;
106
94
  }
107
95
  }
108
96
  return null;
109
97
  }
110
- const TELEGRAM_PLUGIN_PACKAGE_NAME = "@elizaos/plugin-telegram";
111
- const TELEGRAM_PLUGIN_LOCAL_ENTRY_CANDIDATES = [
112
- "../plugins/plugin-telegram/dist/index",
113
- ];
98
+ function resolveNodeModulesEntry(packageName, relativeEntryPath) {
99
+ const packageSegments = packageName.split("/");
100
+ const entryPath = path.resolve(PACKAGE_ROOT, "node_modules", ...packageSegments, relativeEntryPath);
101
+ return existsSync(entryPath) ? pathToFileURL(entryPath).href : null;
102
+ }
114
103
  /**
115
- * Resolve the Telegram plugin import specifier.
116
- * Prefers package resolution, then falls back to node_modules ESM entry
117
- * (the telegram plugin is ESM-only so CJS require.resolve fails), then
118
- * falls back to local plugin checkout paths.
104
+ * Resolve a plugin import specifier for a connector live test.
105
+ *
106
+ * Resolution order:
107
+ * 1. Package resolution (CJS `require.resolve`) of the canonical name, then
108
+ * any alternate package names.
109
+ * 2. Direct `node_modules` entry probes — required for ESM-only packages whose
110
+ * `require.resolve` fails (Telegram/Lens/Feishu ship ESM-only dist entries).
111
+ * 3. Local plugin-checkout paths relative to the package root.
119
112
  */
120
- export function resolveTelegramPluginImportSpecifier() {
121
- if (isPackageImportResolvable(TELEGRAM_PLUGIN_PACKAGE_NAME)) {
122
- return TELEGRAM_PLUGIN_PACKAGE_NAME;
123
- }
124
- const helperDir = path.dirname(fileURLToPath(import.meta.url));
125
- const packageRoot = path.resolve(helperDir, "..", "..");
126
- // ESM-only: try direct node_modules entry
127
- const nodeModulesEntry = path.resolve(packageRoot, "node_modules", "@elizaos", "plugin-telegram", "dist", "index.js");
128
- if (existsSync(nodeModulesEntry)) {
129
- return pathToFileURL(nodeModulesEntry).href;
130
- }
131
- for (const relativeEntryPath of TELEGRAM_PLUGIN_LOCAL_ENTRY_CANDIDATES) {
132
- const absoluteEntryPath = path.resolve(packageRoot, relativeEntryPath);
133
- if (existsSync(absoluteEntryPath)) {
134
- return pathToFileURL(absoluteEntryPath).href;
113
+ function resolvePluginImportSpecifier({ packageName, alternatePackageNames = [], nodeModulesEntries = [], localEntries = [], }) {
114
+ for (const candidatePackageName of [packageName, ...alternatePackageNames]) {
115
+ if (isPackageImportResolvable(candidatePackageName)) {
116
+ return candidatePackageName;
135
117
  }
136
118
  }
137
- return null;
119
+ for (const entry of nodeModulesEntries) {
120
+ const resolved = resolveNodeModulesEntry(entry.packageName, entry.relativeEntryPath);
121
+ if (resolved)
122
+ return resolved;
123
+ }
124
+ return resolveFirstExistingPath(localEntries);
125
+ }
126
+ const TELEGRAM_PLUGIN_PACKAGE_NAME = "@elizaos/plugin-telegram";
127
+ export function resolveTelegramPluginImportSpecifier() {
128
+ return resolvePluginImportSpecifier({
129
+ packageName: TELEGRAM_PLUGIN_PACKAGE_NAME,
130
+ nodeModulesEntries: [
131
+ {
132
+ packageName: TELEGRAM_PLUGIN_PACKAGE_NAME,
133
+ relativeEntryPath: "dist/index.js",
134
+ },
135
+ ],
136
+ localEntries: ["../plugins/plugin-telegram/dist/index"],
137
+ });
138
138
  }
139
139
  const LENS_PLUGIN_PACKAGE_NAME = "@elizaos/plugin-lens";
140
140
  const LENS_PLUGIN_FALLBACK_PACKAGE = "@elizaos-plugins/client-lens";
141
- const LENS_PLUGIN_LOCAL_ENTRY_CANDIDATES = [
142
- "../plugins/plugin-lens/dist/index",
143
- "../../client-lens/dist/index",
144
- "../../client-lens/src/index",
145
- ];
146
- /**
147
- * Resolve the Lens plugin import specifier.
148
- * Prefers package resolution, then falls back to local plugin checkout paths.
149
- * Uses both CJS require.resolve and a direct node_modules check for ESM-only packages.
150
- */
151
141
  export function resolveLensPluginImportSpecifier() {
152
- if (isPackageImportResolvable(LENS_PLUGIN_PACKAGE_NAME)) {
153
- return LENS_PLUGIN_PACKAGE_NAME;
154
- }
155
- if (isPackageImportResolvable(LENS_PLUGIN_FALLBACK_PACKAGE)) {
156
- return LENS_PLUGIN_FALLBACK_PACKAGE;
157
- }
158
- const helperDir = path.dirname(fileURLToPath(import.meta.url));
159
- const packageRoot = path.resolve(helperDir, "..", "..");
160
- const nodeModulesSourceEntry = path.resolve(packageRoot, "node_modules", "@elizaos-plugins", "client-lens", "src", "index.ts");
161
- if (existsSync(nodeModulesSourceEntry)) {
162
- return pathToFileURL(nodeModulesSourceEntry).href;
163
- }
164
- const nodeModulesDistEntry = path.resolve(packageRoot, "node_modules", "@elizaos-plugins", "client-lens", "dist", "index.js");
165
- if (existsSync(nodeModulesDistEntry)) {
166
- return pathToFileURL(nodeModulesDistEntry).href;
167
- }
168
- for (const relativeEntryPath of LENS_PLUGIN_LOCAL_ENTRY_CANDIDATES) {
169
- const absoluteEntryPath = path.resolve(packageRoot, relativeEntryPath);
170
- if (existsSync(absoluteEntryPath)) {
171
- return pathToFileURL(absoluteEntryPath).href;
172
- }
173
- }
174
- return null;
142
+ return resolvePluginImportSpecifier({
143
+ packageName: LENS_PLUGIN_PACKAGE_NAME,
144
+ alternatePackageNames: [LENS_PLUGIN_FALLBACK_PACKAGE],
145
+ nodeModulesEntries: [
146
+ {
147
+ packageName: LENS_PLUGIN_FALLBACK_PACKAGE,
148
+ relativeEntryPath: "src/index.ts",
149
+ },
150
+ {
151
+ packageName: LENS_PLUGIN_FALLBACK_PACKAGE,
152
+ relativeEntryPath: "dist/index.js",
153
+ },
154
+ ],
155
+ localEntries: [
156
+ "../plugins/plugin-lens/dist/index",
157
+ "../../client-lens/dist/index",
158
+ "../../client-lens/src/index",
159
+ ],
160
+ });
175
161
  }
176
162
  const FARCASTER_PLUGIN_PACKAGE_NAME = "@elizaos/plugin-farcaster";
177
- const FARCASTER_PLUGIN_LOCAL_ENTRY_CANDIDATES = [
178
- "../plugins/plugin-farcaster/dist/node/index.node.js",
179
- ];
180
- /**
181
- * Resolve the Farcaster plugin import specifier.
182
- * Prefers package resolution, then falls back to local plugin checkout paths.
183
- */
184
163
  export function resolveFarcasterPluginImportSpecifier() {
185
- if (isPackageImportResolvable(FARCASTER_PLUGIN_PACKAGE_NAME)) {
186
- return FARCASTER_PLUGIN_PACKAGE_NAME;
187
- }
188
- const helperDir = path.dirname(fileURLToPath(import.meta.url));
189
- const packageRoot = path.resolve(helperDir, "..", "..");
190
- for (const relativeEntryPath of FARCASTER_PLUGIN_LOCAL_ENTRY_CANDIDATES) {
191
- const absoluteEntryPath = path.resolve(packageRoot, relativeEntryPath);
192
- if (existsSync(absoluteEntryPath)) {
193
- return pathToFileURL(absoluteEntryPath).href;
194
- }
195
- }
196
- return null;
164
+ return resolvePluginImportSpecifier({
165
+ packageName: FARCASTER_PLUGIN_PACKAGE_NAME,
166
+ localEntries: ["../plugins/plugin-farcaster/dist/node/index.node.js"],
167
+ });
197
168
  }
198
169
  const NOSTR_PLUGIN_PACKAGE_NAME = "@elizaos/plugin-nostr";
199
- const NOSTR_PLUGIN_LOCAL_ENTRY_CANDIDATES = [
200
- "../plugins/plugin-nostr/dist/index",
201
- ];
202
- /**
203
- * Resolve the Nostr plugin import specifier.
204
- * Prefers package resolution, then falls back to local plugin checkout paths.
205
- */
206
170
  export function resolveNostrPluginImportSpecifier() {
207
- if (isPackageImportResolvable(NOSTR_PLUGIN_PACKAGE_NAME)) {
208
- return NOSTR_PLUGIN_PACKAGE_NAME;
209
- }
210
- const helperDir = path.dirname(fileURLToPath(import.meta.url));
211
- const packageRoot = path.resolve(helperDir, "..", "..");
212
- for (const relativeEntryPath of NOSTR_PLUGIN_LOCAL_ENTRY_CANDIDATES) {
213
- const absoluteEntryPath = path.resolve(packageRoot, relativeEntryPath);
214
- if (existsSync(absoluteEntryPath)) {
215
- return pathToFileURL(absoluteEntryPath).href;
216
- }
217
- }
218
- return null;
171
+ return resolvePluginImportSpecifier({
172
+ packageName: NOSTR_PLUGIN_PACKAGE_NAME,
173
+ localEntries: ["../plugins/plugin-nostr/dist/index"],
174
+ });
219
175
  }
220
176
  const MATRIX_PLUGIN_PACKAGE_NAME = "@elizaos/plugin-matrix";
221
- const MATRIX_PLUGIN_LOCAL_ENTRY_CANDIDATES = [
222
- "../plugins/plugin-matrix/dist/index",
223
- ];
224
- /**
225
- * Resolve the Matrix plugin import specifier.
226
- * Prefers package resolution, then falls back to local plugin checkout paths.
227
- */
228
177
  export function resolveMatrixPluginImportSpecifier() {
229
- if (isPackageImportResolvable(MATRIX_PLUGIN_PACKAGE_NAME)) {
230
- return MATRIX_PLUGIN_PACKAGE_NAME;
231
- }
232
- const helperDir = path.dirname(fileURLToPath(import.meta.url));
233
- const packageRoot = path.resolve(helperDir, "..", "..");
234
- for (const relativeEntryPath of MATRIX_PLUGIN_LOCAL_ENTRY_CANDIDATES) {
235
- const absoluteEntryPath = path.resolve(packageRoot, relativeEntryPath);
236
- if (existsSync(absoluteEntryPath)) {
237
- return pathToFileURL(absoluteEntryPath).href;
238
- }
239
- }
240
- return null;
178
+ return resolvePluginImportSpecifier({
179
+ packageName: MATRIX_PLUGIN_PACKAGE_NAME,
180
+ localEntries: ["../plugins/plugin-matrix/dist/index"],
181
+ });
241
182
  }
242
183
  const FEISHU_PLUGIN_PACKAGE_NAME = "@elizaos/plugin-feishu";
243
- const FEISHU_PLUGIN_LOCAL_ENTRY_CANDIDATES = [
244
- "../plugins/plugin-feishu/dist/index",
245
- ];
246
- /**
247
- * Resolve the Feishu plugin import specifier.
248
- * Prefers package resolution, then falls back to local plugin checkout paths.
249
- */
250
184
  export function resolveFeishuPluginImportSpecifier() {
251
- if (isPackageImportResolvable(FEISHU_PLUGIN_PACKAGE_NAME)) {
252
- return FEISHU_PLUGIN_PACKAGE_NAME;
253
- }
254
- const helperDir = path.dirname(fileURLToPath(import.meta.url));
255
- const packageRoot = path.resolve(helperDir, "..", "..");
256
- const nodeModulesDistEntry = path.resolve(packageRoot, "node_modules", "@elizaos", "plugin-feishu", "dist", "index.js");
257
- if (existsSync(nodeModulesDistEntry)) {
258
- return pathToFileURL(nodeModulesDistEntry).href;
259
- }
260
- for (const relativeEntryPath of FEISHU_PLUGIN_LOCAL_ENTRY_CANDIDATES) {
261
- const absoluteEntryPath = path.resolve(packageRoot, relativeEntryPath);
262
- if (existsSync(absoluteEntryPath)) {
263
- return pathToFileURL(absoluteEntryPath).href;
264
- }
265
- }
266
- return null;
267
- }
268
- const WECHAT_PLUGIN_PACKAGE_NAME = "@elizaos/plugin-wechat";
269
- const WECHAT_PLUGIN_LEGACY_PACKAGE_NAME = "@elizaai/plugin-wechat";
270
- const WECHAT_PLUGIN_LOCAL_ENTRY_CANDIDATES = [
271
- "src/index.ts",
272
- "dist/index.js",
273
- ];
274
- export function resolveWechatPluginImportSpecifier() {
275
- if (isPackageImportResolvable(WECHAT_PLUGIN_PACKAGE_NAME)) {
276
- return WECHAT_PLUGIN_PACKAGE_NAME;
277
- }
278
- if (isPackageImportResolvable(WECHAT_PLUGIN_LEGACY_PACKAGE_NAME)) {
279
- return WECHAT_PLUGIN_LEGACY_PACKAGE_NAME;
280
- }
281
- const helperDir = path.dirname(fileURLToPath(import.meta.url));
282
- const packageRoot = path.resolve(helperDir, "..", "..");
283
- // Check node_modules for either the canonical or legacy package name.
284
- for (const packageName of [
285
- WECHAT_PLUGIN_PACKAGE_NAME,
286
- WECHAT_PLUGIN_LEGACY_PACKAGE_NAME,
287
- ]) {
288
- const packageSegments = packageName.split("/");
289
- for (const relativeEntryPath of WECHAT_PLUGIN_LOCAL_ENTRY_CANDIDATES) {
290
- const nodeModulesEntry = path.resolve(packageRoot, "node_modules", ...packageSegments, relativeEntryPath);
291
- if (existsSync(nodeModulesEntry)) {
292
- return pathToFileURL(nodeModulesEntry).href;
293
- }
294
- }
295
- }
296
- for (const relativeEntryPath of WECHAT_PLUGIN_LOCAL_ENTRY_CANDIDATES) {
297
- const nodeModulesEntry = path.resolve(packageRoot, "node_modules", "@elizaos", "plugin-wechat", relativeEntryPath);
298
- if (existsSync(nodeModulesEntry)) {
299
- return pathToFileURL(nodeModulesEntry).href;
300
- }
301
- }
302
- return null;
185
+ return resolvePluginImportSpecifier({
186
+ packageName: FEISHU_PLUGIN_PACKAGE_NAME,
187
+ nodeModulesEntries: [
188
+ {
189
+ packageName: FEISHU_PLUGIN_PACKAGE_NAME,
190
+ relativeEntryPath: "dist/index.js",
191
+ },
192
+ ],
193
+ localEntries: ["../plugins/plugin-feishu/dist/index"],
194
+ });
303
195
  }
304
196
  /** Build a mock update check result with deterministic defaults. */
305
197
  export function buildMockUpdateCheckResult(overrides = {}) {
package/ui-compat.d.ts CHANGED
@@ -10,5 +10,6 @@ export { PagePanel } from "@elizaos/ui/components/composites/page-panel";
10
10
  export { Button } from "@elizaos/ui/components/ui/button";
11
11
  export { Input } from "@elizaos/ui/components/ui/input";
12
12
  export { Spinner } from "@elizaos/ui/components/ui/spinner";
13
+ export { useAppSelector, useAppSelectorShallow, } from "@elizaos/ui/state/app-store";
13
14
  export { useApp } from "@elizaos/ui/state/useApp";
14
15
  //# sourceMappingURL=ui-compat.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ui-compat.d.ts","sourceRoot":"","sources":["../../../../src/ui-compat.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,uBAAuB,EACvB,uBAAuB,EACvB,aAAa,EACb,mBAAmB,EACnB,gBAAgB,EAChB,aAAa,EACb,eAAe,EACf,eAAe,EACf,oBAAoB,EACpB,aAAa,EACb,UAAU,EACV,kBAAkB,EAClB,iBAAiB,EACjB,UAAU,EACV,iBAAiB,EACjB,WAAW,GACZ,MAAM,aAAa,CAAC;AAQrB,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzC,OAAO,EAAE,uBAAuB,EAAE,MAAM,iDAAiD,CAAC;AAC1F,OAAO,EACL,YAAY,EACZ,WAAW,EACX,iBAAiB,EACjB,WAAW,EACX,cAAc,GACf,MAAM,gDAAgD,CAAC;AACxD,OAAO,EACL,qBAAqB,EACrB,qBAAqB,EACrB,kBAAkB,EAClB,iBAAiB,EACjB,uBAAuB,GACxB,MAAM,wDAAwD,CAAC;AAChE,OAAO,EAAE,kBAAkB,EAAE,MAAM,kDAAkD,CAAC;AACtF,OAAO,EAAE,iBAAiB,EAAE,MAAM,wDAAwD,CAAC;AAC3F,OAAO,EAAE,uBAAuB,EAAE,MAAM,+CAA+C,CAAC;AACxF,OAAO,EAAE,SAAS,EAAE,MAAM,8CAA8C,CAAC;AACzE,OAAO,EAAE,MAAM,EAAE,MAAM,kCAAkC,CAAC;AAC1D,OAAO,EAAE,KAAK,EAAE,MAAM,iCAAiC,CAAC;AACxD,OAAO,EAAE,OAAO,EAAE,MAAM,mCAAmC,CAAC;AAC5D,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC"}
1
+ {"version":3,"file":"ui-compat.d.ts","sourceRoot":"","sources":["../../../../src/ui-compat.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,uBAAuB,EACvB,uBAAuB,EACvB,aAAa,EACb,mBAAmB,EACnB,gBAAgB,EAChB,aAAa,EACb,eAAe,EACf,eAAe,EACf,oBAAoB,EACpB,aAAa,EACb,UAAU,EACV,kBAAkB,EAClB,iBAAiB,EACjB,UAAU,EACV,iBAAiB,EACjB,WAAW,GACZ,MAAM,aAAa,CAAC;AAQrB,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzC,OAAO,EAAE,uBAAuB,EAAE,MAAM,iDAAiD,CAAC;AAC1F,OAAO,EACL,YAAY,EACZ,WAAW,EACX,iBAAiB,EACjB,WAAW,EACX,cAAc,GACf,MAAM,gDAAgD,CAAC;AACxD,OAAO,EACL,qBAAqB,EACrB,qBAAqB,EACrB,kBAAkB,EAClB,iBAAiB,EACjB,uBAAuB,GACxB,MAAM,wDAAwD,CAAC;AAChE,OAAO,EAAE,kBAAkB,EAAE,MAAM,kDAAkD,CAAC;AACtF,OAAO,EAAE,iBAAiB,EAAE,MAAM,wDAAwD,CAAC;AAC3F,OAAO,EAAE,uBAAuB,EAAE,MAAM,+CAA+C,CAAC;AACxF,OAAO,EAAE,SAAS,EAAE,MAAM,8CAA8C,CAAC;AACzE,OAAO,EAAE,MAAM,EAAE,MAAM,kCAAkC,CAAC;AAC1D,OAAO,EAAE,KAAK,EAAE,MAAM,iCAAiC,CAAC;AACxD,OAAO,EAAE,OAAO,EAAE,MAAM,mCAAmC,CAAC;AAI5D,OAAO,EACL,cAAc,EACd,qBAAqB,GACtB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC"}
package/ui-compat.js CHANGED
@@ -16,4 +16,8 @@ export { PagePanel } from "@elizaos/ui/components/composites/page-panel";
16
16
  export { Button } from "@elizaos/ui/components/ui/button";
17
17
  export { Input } from "@elizaos/ui/components/ui/input";
18
18
  export { Spinner } from "@elizaos/ui/components/ui/spinner";
19
+ // app-store only pulls React + an erased type (same weight as useApp), so it
20
+ // stays light enough for the Node API process — re-export the selector hooks so
21
+ // app plugins can subscribe to AppContext slices instead of the whole value.
22
+ export { useAppSelector, useAppSelectorShallow, } from "@elizaos/ui/state/app-store";
19
23
  export { useApp } from "@elizaos/ui/state/useApp";