@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
@@ -1 +0,0 @@
1
- {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../../../src/registry/schema.ts"],"names":[],"mappings":"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"}
@@ -1,300 +0,0 @@
1
- // Registry SoT for apps, plugins, and connectors.
2
- //
3
- // Replaces the fragmented surface of:
4
- // - plugins.json (97 entries, 5 categories)
5
- // - PluginInfo (api/client-types-config.ts)
6
- // - ConfigUiHint (types/index.ts)
7
- // - RegistryAppInfo (shared/contracts/apps.ts)
8
- // - VISIBLE_CONNECTOR_IDS / DEFAULT_ICONS / FEATURE_SUBGROUP / SUBGROUP_DISPLAY_ORDER
9
- // (components/pages/plugin-list-utils.ts)
10
- // - paramsToSchema() heuristics (PORT/TIMEOUT/MODEL guessing)
11
- //
12
- // Static registry only. Runtime overlay (enabled, configured, isActive,
13
- // validationErrors) lives in RegistryRuntimeOverlay and is merged at API read
14
- // time — never in the registry files themselves.
15
- import { z } from "zod";
16
- // ---------------------------------------------------------------------------
17
- // Config field schema — replaces PluginParamDef + ConfigUiHint.
18
- // One field, one place. UI hints are co-located with type info.
19
- // ---------------------------------------------------------------------------
20
- const configFieldType = z.enum([
21
- "string",
22
- "secret",
23
- "boolean",
24
- "number",
25
- "select",
26
- "multiselect",
27
- "json",
28
- "textarea",
29
- "url",
30
- "file-path",
31
- ]);
32
- const configFieldOption = z.object({
33
- value: z.string(),
34
- label: z.string(),
35
- description: z.string().optional(),
36
- icon: z.string().optional(),
37
- disabled: z.boolean().optional(),
38
- });
39
- const visibilityCondition = z.object({
40
- key: z.string(),
41
- equals: z.unknown().optional(),
42
- in: z.array(z.unknown()).optional(),
43
- notEquals: z.unknown().optional(),
44
- });
45
- export const configFieldSchema = z.object({
46
- type: configFieldType,
47
- required: z.boolean(),
48
- sensitive: z.boolean().optional(),
49
- default: z.union([z.string(), z.number(), z.boolean(), z.null()]).optional(),
50
- label: z.string().optional(),
51
- help: z.string().optional(),
52
- placeholder: z.string().optional(),
53
- group: z.string().optional(),
54
- order: z.number().int().optional(),
55
- width: z.enum(["full", "half", "third"]).optional(),
56
- advanced: z.boolean().optional(),
57
- hidden: z.boolean().optional(),
58
- readonly: z.boolean().optional(),
59
- icon: z.string().optional(),
60
- options: z.array(configFieldOption).optional(),
61
- pattern: z.string().optional(),
62
- patternError: z.string().optional(),
63
- min: z.number().optional(),
64
- max: z.number().optional(),
65
- step: z.number().optional(),
66
- unit: z.string().optional(),
67
- visible: visibilityCondition.optional(),
68
- });
69
- // ---------------------------------------------------------------------------
70
- // Render hints — replaces VISIBLE_CONNECTOR_IDS / DEFAULT_ICONS /
71
- // FEATURE_SUBGROUP / SUBGROUP_DISPLAY_ORDER.
72
- //
73
- // Surface mapping is implicit:
74
- // kind: "connector" → ConnectorsView (primary)
75
- // kind: "app" → AppsView (primary)
76
- // kind: "plugin" → PluginsView (primary)
77
- // Every entry shows in its primary surface unless `visible: false`.
78
- //
79
- // Use `pinTo` to ALSO surface an item somewhere it wouldn't appear by default
80
- // (e.g. promoting an app into the chat quick-launcher). Opt-in only — keeps
81
- // the common case zero-config.
82
- // ---------------------------------------------------------------------------
83
- const renderActionSchema = z.enum([
84
- "enable",
85
- "configure",
86
- "launch",
87
- "attach",
88
- "detach",
89
- "stop",
90
- "uninstall",
91
- "install",
92
- "setup-guide",
93
- ]);
94
- const secondarySurfaceSchema = z.enum([
95
- "chat-apps-section",
96
- "companion-shell",
97
- "settings-integrations",
98
- ]);
99
- export const renderSchema = z.object({
100
- visible: z.boolean().default(true),
101
- pinTo: z.array(secondarySurfaceSchema).default([]),
102
- style: z.enum(["card", "setup-panel", "hero-card"]).default("card"),
103
- icon: z.string().optional(),
104
- heroImage: z.string().optional(),
105
- group: z.string(),
106
- groupOrder: z.number().int().optional(),
107
- actions: z.array(renderActionSchema).default([]),
108
- });
109
- // ---------------------------------------------------------------------------
110
- // External resources (already in plugins.json today).
111
- // ---------------------------------------------------------------------------
112
- export const resourcesSchema = z.object({
113
- homepage: z.string().url().optional(),
114
- repository: z.string().url().optional(),
115
- setupGuideUrl: z.string().url().optional(),
116
- });
117
- // ---------------------------------------------------------------------------
118
- // App-only: launch + viewer + session (mirrors RegistryAppInfo).
119
- // ---------------------------------------------------------------------------
120
- const appViewerSchema = z.object({
121
- url: z.string(),
122
- embedParams: z.record(z.string(), z.string()).optional(),
123
- postMessageAuth: z.boolean().optional(),
124
- sandbox: z.string().optional(),
125
- });
126
- const appSessionSchema = z.object({
127
- mode: z.enum(["viewer", "spectate-and-steer", "external"]),
128
- features: z
129
- .array(z.enum(["commands", "telemetry", "pause", "resume", "suggestions"]))
130
- .optional(),
131
- });
132
- const appSupportsSchema = z.object({
133
- v0: z.boolean(),
134
- v1: z.boolean(),
135
- v2: z.boolean(),
136
- });
137
- const appNpmSchema = z.object({
138
- package: z.string(),
139
- v0Version: z.string().nullable(),
140
- v1Version: z.string().nullable(),
141
- v2Version: z.string().nullable(),
142
- });
143
- const packageRoutePluginSpecifierSchema = z
144
- .string()
145
- .min(1)
146
- .refine((value) => !value.startsWith(".") &&
147
- !value.startsWith("/") &&
148
- !/(^|\/)(apps|plugins)\//.test(value), "routePlugin.specifier must be a package specifier, not a filesystem path");
149
- const appRoutePluginSchema = z.object({
150
- specifier: packageRoutePluginSpecifierSchema,
151
- exportName: z.string().min(1).optional(),
152
- });
153
- export const appLaunchSchema = z.object({
154
- type: z.enum(["internal-tab", "overlay", "server-launch"]),
155
- target: z.string().optional(),
156
- url: z.string().nullable().optional(),
157
- viewer: appViewerSchema.optional(),
158
- session: appSessionSchema.optional(),
159
- supports: appSupportsSchema.optional(),
160
- npm: appNpmSchema.optional(),
161
- capabilities: z.array(z.string()).default([]),
162
- uiExtension: z.object({ detailPanelId: z.string() }).optional(),
163
- curatedSlug: z.string().optional(),
164
- routePlugin: appRoutePluginSchema.optional(),
165
- /**
166
- * If true, the app declares itself as the default landing tab.
167
- * Mirrors `package.json#elizaos.app.mainTab`. Consumed by
168
- * `getMainTabApp()` in this package to compute the shell's landing
169
- * tab. Exactly one installed app should set this; multiple declarers
170
- * are resolved deterministically by alphabetic id.
171
- */
172
- mainTab: z.boolean().optional(),
173
- });
174
- // ---------------------------------------------------------------------------
175
- // Common fields shared by every entry.
176
- // ---------------------------------------------------------------------------
177
- const commonFields = {
178
- id: z
179
- .string()
180
- .min(1)
181
- .regex(/^[a-z0-9][a-z0-9-]*$/, "id must be kebab-case ascii"),
182
- name: z.string().min(1),
183
- description: z.string().optional(),
184
- npmName: z.string().optional(),
185
- version: z.string().optional(),
186
- releaseStream: z.enum(["latest", "beta"]).optional(),
187
- source: z.enum(["bundled", "store"]).default("bundled"),
188
- tags: z.array(z.string()).default([]),
189
- config: z.record(z.string(), configFieldSchema).default({}),
190
- render: renderSchema,
191
- resources: resourcesSchema.default({}),
192
- dependsOn: z.array(z.string()).default([]),
193
- };
194
- // ---------------------------------------------------------------------------
195
- // Discriminated union — three kinds, each with their own constraints.
196
- // ---------------------------------------------------------------------------
197
- const pluginSubtype = z.enum([
198
- "ai-provider",
199
- "feature",
200
- "database",
201
- "voice",
202
- "documents",
203
- "blockchain",
204
- "media",
205
- "agents",
206
- "automation",
207
- "storage",
208
- "gaming",
209
- "devtools",
210
- "other",
211
- ]);
212
- const connectorSubtype = z.enum([
213
- "messaging",
214
- "social",
215
- "streaming",
216
- "email",
217
- "calendar",
218
- "other",
219
- ]);
220
- export const pluginEntrySchema = z.object({
221
- ...commonFields,
222
- kind: z.literal("plugin"),
223
- subtype: pluginSubtype,
224
- launch: appLaunchSchema.optional(),
225
- });
226
- // ---------------------------------------------------------------------------
227
- // Per-account auth config. Connectors can declare an OWNER side (the user's
228
- // own platform account — e.g. user's Gmail, user's Discord) and/or an AGENT
229
- // side (a separate identity the agent operates — e.g. a bot Gmail, a Discord
230
- // bot). Auth method, credential keys, and OS support are independent per side.
231
- //
232
- // Purely additive over `auth`. When a manifest only declares `auth`, the
233
- // loader auto-maps it to `accounts.agent` (see loader.ts:normalizeConnectorAuth).
234
- // ---------------------------------------------------------------------------
235
- const accountAuthKind = z.enum([
236
- "oauth-cloud", // "Log in with X" routed through Eliza Cloud
237
- "oauth-local", // local-only OAuth (e.g. per-homeserver Matrix)
238
- "qr", // QR-pairing (WhatsApp Baileys, Signal device-link)
239
- "local-app", // local-app inspection (Discord-CDP, iMessage chat.db)
240
- "browser-extension", // browser companion
241
- "api-key", // manual paste of bot token / API key
242
- "none",
243
- ]);
244
- const accountOsSupport = z.enum(["darwin", "win32", "linux"]);
245
- export const accountConfigSchema = z.object({
246
- supported: z.boolean().default(true),
247
- authKind: accountAuthKind,
248
- credentialKeys: z.array(z.string()).default([]),
249
- osSupport: z.array(accountOsSupport).optional(),
250
- notes: z.string().optional(),
251
- });
252
- export const connectorEntrySchema = z.object({
253
- ...commonFields,
254
- kind: z.literal("connector"),
255
- subtype: connectorSubtype,
256
- auth: z
257
- .object({
258
- kind: z.enum(["token", "oauth", "credentials", "none"]),
259
- credentialKeys: z.array(z.string()).default([]),
260
- })
261
- .optional(),
262
- accounts: z
263
- .object({
264
- owner: accountConfigSchema.optional(),
265
- agent: accountConfigSchema.optional(),
266
- })
267
- .refine((val) => val.owner !== undefined || val.agent !== undefined, {
268
- message: "accounts must define at least one of owner or agent — an empty {} is meaningless and indicates an invalid manifest",
269
- })
270
- .optional(),
271
- });
272
- export const appEntrySchema = z.object({
273
- ...commonFields,
274
- kind: z.literal("app"),
275
- subtype: z.enum(["game", "tool", "shell", "marketplace", "trading", "other"]),
276
- launch: appLaunchSchema,
277
- });
278
- export const registryEntrySchema = z.discriminatedUnion("kind", [
279
- pluginEntrySchema,
280
- connectorEntrySchema,
281
- appEntrySchema,
282
- ]);
283
- // ---------------------------------------------------------------------------
284
- // Runtime overlay — never in registry files. Merged at API read time.
285
- // ---------------------------------------------------------------------------
286
- export const registryRuntimeOverlaySchema = z.object({
287
- id: z.string(),
288
- enabled: z.boolean(),
289
- configured: z.boolean(),
290
- isActive: z.boolean(),
291
- loadError: z.string().optional(),
292
- validationErrors: z
293
- .array(z.object({ field: z.string(), message: z.string() }))
294
- .default([]),
295
- validationWarnings: z
296
- .array(z.object({ field: z.string(), message: z.string() }))
297
- .default([]),
298
- installedVersion: z.string().optional(),
299
- latestVersion: z.string().nullable().optional(),
300
- });