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

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 (360) 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-zig-pin.test.mjs +147 -0
  152. package/scripts/aosp/compile-libllama.mjs +446 -59
  153. package/scripts/aosp/compile-libllama.test.mjs +133 -0
  154. package/scripts/aosp/compile-shim.mjs +21 -1
  155. package/scripts/aosp/deploy-pixel.mjs +1 -1
  156. package/scripts/aosp/stage-default-models.mjs +24 -31
  157. package/scripts/aosp/stage-default-models.test.mjs +23 -0
  158. package/scripts/assert-required-bundled-packages.test.ts +22 -1
  159. package/scripts/build-helpers/verify-fused-symbols.mjs +33 -0
  160. package/scripts/build-helpers/verify-fused-symbols.test.mjs +0 -0
  161. package/scripts/build-image.sh +1 -3
  162. package/scripts/build-llama-cpp-mtp.mjs +17 -16
  163. package/scripts/check-i18n.mjs +0 -1
  164. package/scripts/copy-runtime-node-modules.ts +147 -0
  165. package/scripts/desktop-build.mjs +317 -4
  166. package/scripts/docker-ci-smoke.sh +33 -8
  167. package/scripts/ensure-type-package-aliases.mjs +1 -1
  168. package/scripts/ios-xcframework/run-physical-device-smoke.mjs +1 -1
  169. package/scripts/lib/agent-source-watcher.mjs +0 -1
  170. package/scripts/lib/artifact-staleness.d.mts +33 -0
  171. package/scripts/lib/artifact-staleness.mjs +122 -0
  172. package/scripts/lib/artifact-staleness.test.mts +98 -0
  173. package/scripts/lib/duet-bridge.mjs +1 -1
  174. package/scripts/lib/ios-plist-url-scheme.mjs +80 -0
  175. package/scripts/lib/mobile-build-decisions.mjs +97 -0
  176. package/scripts/lib/renderer-build-manifest.d.mts +65 -0
  177. package/scripts/lib/renderer-build-manifest.mjs +257 -0
  178. package/scripts/lib/renderer-build-manifest.test.mts +277 -0
  179. package/scripts/lib/stage-android-agent.mjs +13 -4
  180. package/scripts/lib/verify-ondevice-artifact.d.mts +16 -0
  181. package/scripts/lib/verify-ondevice-artifact.mjs +61 -0
  182. package/scripts/lib/verify-ondevice-artifact.test.mts +98 -0
  183. package/scripts/lib/websocket-pending-queue.ts +92 -0
  184. package/scripts/link-docker-local-app-packages.mjs +6 -0
  185. package/scripts/playwright-ui-live-stack.ts +430 -144
  186. package/scripts/playwright-ui-smoke-api-stub.mjs +160 -168
  187. package/scripts/run-local-plugin-live-smoke.mjs +1 -6
  188. package/scripts/run-mobile-build-brand-separation.test.mts +33 -0
  189. package/scripts/run-mobile-build-ios-engine-gate.test.mjs +85 -0
  190. package/scripts/run-mobile-build-mtp-staleness.test.mts +198 -0
  191. package/scripts/run-mobile-build.mjs +408 -86
  192. package/scripts/serve-real-local-agent.ts +72 -0
  193. package/scripts/stage-desktop-fused-lib.mjs +43 -14
  194. package/scripts/verify-ondevice-artifact.mjs +111 -0
  195. package/scripts/voice-attribution-smoke.ts +144 -38
  196. package/scripts/voice-duet.mjs +6 -6
  197. package/scripts/voice-e2e-hardware.ts +22 -16
  198. package/scripts/voice-interactive.mjs +16 -45
  199. package/security/agent-vault-id.d.ts +1 -1
  200. package/security/platform-secure-store-node.d.ts +1 -1
  201. package/services/ambient-audio/consent.d.ts +1 -1
  202. package/services/ambient-audio/index.d.ts +6 -6
  203. package/services/ambient-audio/replay-buffer.d.ts +1 -1
  204. package/services/ambient-audio/response-gate.d.ts +1 -1
  205. package/services/ambient-audio/service.d.ts +3 -3
  206. package/services/connector-target-catalog.d.ts +1 -1
  207. package/services/sensitive-requests/index.d.ts +6 -6
  208. package/services/steward-sidecar/wallet-setup.d.ts +1 -1
  209. package/services/steward-sidecar.d.ts +3 -3
  210. package/services/tunnel-to-mobile/index.d.ts +1 -1
  211. package/services/vault-bootstrap.d.ts.map +1 -1
  212. package/services/vault-bootstrap.js +14 -10
  213. package/services/voice-profiles/diarization-pipeline.d.ts +1 -1
  214. package/services/voice-profiles/index.d.ts +11 -11
  215. package/services/voice-profiles/owner-confidence.d.ts +1 -1
  216. package/services/voice-profiles/private-challenge.d.ts +1 -1
  217. package/services/voice-profiles/store.d.ts +1 -1
  218. package/test/helpers/live-provider.test.ts +91 -1
  219. package/test/helpers/live-provider.ts +195 -51
  220. package/test/scripts/websocket-pending-queue.test.ts +119 -0
  221. package/test-support/test-helpers.d.ts +0 -33
  222. package/test-support/test-helpers.d.ts.map +1 -1
  223. package/test-support/test-helpers.js +81 -189
  224. package/ui-compat.d.ts +1 -0
  225. package/ui-compat.d.ts.map +1 -1
  226. package/ui-compat.js +4 -0
  227. package/platforms/electrobun/docs/convergence-audit.json +0 -3505
  228. package/platforms/electrobun/docs/convergence-audit.md +0 -694
  229. package/platforms/electrobun/scripts/ensure-whisper-gguf.sh +0 -55
  230. package/platforms/electrobun/scripts/ensure-whisper-model.sh +0 -35
  231. package/platforms/electrobun/scripts/generate-convergence-audit.ts +0 -1203
  232. package/platforms/electrobun/src/native/whisper-env.test.ts +0 -71
  233. package/platforms/electrobun/src/native/whisper-env.ts +0 -68
  234. package/registry/app-registry.d.ts +0 -14
  235. package/registry/app-registry.d.ts.map +0 -1
  236. package/registry/app-registry.js +0 -29
  237. package/registry/entries/apps/app-polymarket.json +0 -31
  238. package/registry/entries/apps/clawville.json +0 -27
  239. package/registry/entries/apps/companion.json +0 -28
  240. package/registry/entries/apps/database-viewer.json +0 -27
  241. package/registry/entries/apps/defense-of-the-agents.json +0 -27
  242. package/registry/entries/apps/documents.json +0 -30
  243. package/registry/entries/apps/feed.json +0 -27
  244. package/registry/entries/apps/hyperliquid.json +0 -31
  245. package/registry/entries/apps/log-viewer.json +0 -27
  246. package/registry/entries/apps/memory-viewer.json +0 -27
  247. package/registry/entries/apps/model-tester.json +0 -31
  248. package/registry/entries/apps/plugin-viewer.json +0 -27
  249. package/registry/entries/apps/relationship-viewer.json +0 -27
  250. package/registry/entries/apps/runtime-debugger.json +0 -27
  251. package/registry/entries/apps/shopify.json +0 -31
  252. package/registry/entries/apps/skills-viewer.json +0 -27
  253. package/registry/entries/apps/steward.json +0 -31
  254. package/registry/entries/apps/training.json +0 -54
  255. package/registry/entries/apps/trajectory-viewer.json +0 -27
  256. package/registry/entries/apps/vincent.json +0 -31
  257. package/registry/entries/connectors/bluebubbles.json +0 -99
  258. package/registry/entries/connectors/bluesky.json +0 -173
  259. package/registry/entries/connectors/discord.json +0 -119
  260. package/registry/entries/connectors/farcaster.json +0 -174
  261. package/registry/entries/connectors/feishu.json +0 -79
  262. package/registry/entries/connectors/google-chat.json +0 -120
  263. package/registry/entries/connectors/google.json +0 -82
  264. package/registry/entries/connectors/imessage.json +0 -96
  265. package/registry/entries/connectors/instagram.json +0 -64
  266. package/registry/entries/connectors/line.json +0 -86
  267. package/registry/entries/connectors/matrix.json +0 -94
  268. package/registry/entries/connectors/mattermost.json +0 -110
  269. package/registry/entries/connectors/msteams.json +0 -104
  270. package/registry/entries/connectors/nextcloud-talk.json +0 -104
  271. package/registry/entries/connectors/nostr.json +0 -70
  272. package/registry/entries/connectors/signal.json +0 -81
  273. package/registry/entries/connectors/slack.json +0 -102
  274. package/registry/entries/connectors/telegram.json +0 -71
  275. package/registry/entries/connectors/tlon.json +0 -94
  276. package/registry/entries/connectors/twitch.json +0 -110
  277. package/registry/entries/connectors/whatsapp.json +0 -113
  278. package/registry/entries/connectors/x.json +0 -231
  279. package/registry/entries/connectors/zalo.json +0 -112
  280. package/registry/entries/connectors/zalouser.json +0 -122
  281. package/registry/entries/plugins/agent-orchestrator.json +0 -33
  282. package/registry/entries/plugins/agent-skills.json +0 -72
  283. package/registry/entries/plugins/anthropic.json +0 -73
  284. package/registry/entries/plugins/app-control.json +0 -23
  285. package/registry/entries/plugins/auto-trader.json +0 -203
  286. package/registry/entries/plugins/background-runner.json +0 -26
  287. package/registry/entries/plugins/blooio.json +0 -102
  288. package/registry/entries/plugins/browser.json +0 -75
  289. package/registry/entries/plugins/cli.json +0 -40
  290. package/registry/entries/plugins/clipboard.json +0 -44
  291. package/registry/entries/plugins/coding-tools.json +0 -71
  292. package/registry/entries/plugins/commands.json +0 -63
  293. package/registry/entries/plugins/computeruse.json +0 -74
  294. package/registry/entries/plugins/copilot-proxy.json +0 -93
  295. package/registry/entries/plugins/directives.json +0 -63
  296. package/registry/entries/plugins/edge-tts.json +0 -97
  297. package/registry/entries/plugins/elevenlabs.json +0 -169
  298. package/registry/entries/plugins/elizacloud.json +0 -208
  299. package/registry/entries/plugins/evm.json +0 -134
  300. package/registry/entries/plugins/experience.json +0 -34
  301. package/registry/entries/plugins/facewear.json +0 -131
  302. package/registry/entries/plugins/form.json +0 -26
  303. package/registry/entries/plugins/github.json +0 -93
  304. package/registry/entries/plugins/gmail-watch.json +0 -25
  305. package/registry/entries/plugins/goals.json +0 -77
  306. package/registry/entries/plugins/google-genai.json +0 -106
  307. package/registry/entries/plugins/groq.json +0 -93
  308. package/registry/entries/plugins/hedera.json +0 -48
  309. package/registry/entries/plugins/inmemorydb.json +0 -25
  310. package/registry/entries/plugins/linear.json +0 -51
  311. package/registry/entries/plugins/local-inference.json +0 -137
  312. package/registry/entries/plugins/local-storage.json +0 -36
  313. package/registry/entries/plugins/localdb.json +0 -25
  314. package/registry/entries/plugins/mcp.json +0 -44
  315. package/registry/entries/plugins/memory.json +0 -124
  316. package/registry/entries/plugins/minecraft.json +0 -79
  317. package/registry/entries/plugins/moltbook.json +0 -83
  318. package/registry/entries/plugins/music.json +0 -155
  319. package/registry/entries/plugins/mysticism.json +0 -48
  320. package/registry/entries/plugins/nearai.json +0 -82
  321. package/registry/entries/plugins/ngrok.json +0 -69
  322. package/registry/entries/plugins/ollama.json +0 -96
  323. package/registry/entries/plugins/openai.json +0 -189
  324. package/registry/entries/plugins/openrouter.json +0 -188
  325. package/registry/entries/plugins/pdf.json +0 -26
  326. package/registry/entries/plugins/plugin-manager.json +0 -23
  327. package/registry/entries/plugins/prose.json +0 -48
  328. package/registry/entries/plugins/rlm.json +0 -26
  329. package/registry/entries/plugins/roblox.json +0 -88
  330. package/registry/entries/plugins/rss.json +0 -64
  331. package/registry/entries/plugins/s3-storage.json +0 -91
  332. package/registry/entries/plugins/scheduling.json +0 -35
  333. package/registry/entries/plugins/shell.json +0 -94
  334. package/registry/entries/plugins/social-alpha.json +0 -72
  335. package/registry/entries/plugins/tailscale.json +0 -81
  336. package/registry/entries/plugins/tee.json +0 -53
  337. package/registry/entries/plugins/todos.json +0 -26
  338. package/registry/entries/plugins/trajectory-logger.json +0 -33
  339. package/registry/entries/plugins/trust.json +0 -39
  340. package/registry/entries/plugins/tts.json +0 -71
  341. package/registry/entries/plugins/tunnel.json +0 -45
  342. package/registry/entries/plugins/twilio.json +0 -168
  343. package/registry/entries/plugins/vercel-ai-gateway.json +0 -128
  344. package/registry/entries/plugins/video.json +0 -23
  345. package/registry/entries/plugins/vision.json +0 -43
  346. package/registry/entries/plugins/webhooks.json +0 -23
  347. package/registry/entries/plugins/workflow.json +0 -25
  348. package/registry/entries/plugins/xai.json +0 -75
  349. package/registry/loader.d.ts +0 -28
  350. package/registry/loader.d.ts.map +0 -1
  351. package/registry/loader.js +0 -158
  352. package/registry/schema.d.ts +0 -1199
  353. package/registry/schema.d.ts.map +0 -1
  354. package/registry/schema.js +0 -300
  355. package/scripts/patches/llama-mobile-kokoro-tts.patch +0 -480
  356. package/scripts/release-workflow-drift.test.ts +0 -57
  357. package/test/helpers/i18n.ts +0 -5
  358. package/test/helpers/loopback.ts +0 -33
  359. package/test/helpers/react-test.ts +0 -40
  360. 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";