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

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 (1533) hide show
  1. package/agent-bridge.d.ts +27 -0
  2. package/agent-bridge.d.ts.map +1 -0
  3. package/agent-bridge.js +26 -0
  4. package/api/__tests__/sandbox-test-helpers.js +1 -1
  5. package/api/auth/audit.js +1 -1
  6. package/api/auth/auth-context.js +1 -1
  7. package/api/auth/bootstrap-token.js +2 -2
  8. package/api/auth/index.d.ts +9 -10
  9. package/api/auth/index.d.ts.map +1 -1
  10. package/api/auth/index.js +9 -10
  11. package/api/auth/passwords.js +2 -2
  12. package/api/auth/sensitive-rate-limit.d.ts +1 -4
  13. package/api/auth/sensitive-rate-limit.d.ts.map +1 -1
  14. package/api/auth/sensitive-rate-limit.js +6 -6
  15. package/api/auth/sessions.js +2 -2
  16. package/api/auth-bootstrap-routes.d.ts +6 -13
  17. package/api/auth-bootstrap-routes.d.ts.map +1 -1
  18. package/api/auth-bootstrap-routes.js +14 -27
  19. package/api/auth-pairing-routes.d.ts +17 -0
  20. package/api/auth-pairing-routes.d.ts.map +1 -0
  21. package/api/auth-pairing-routes.js +300 -0
  22. package/api/auth-session-routes.d.ts.map +1 -1
  23. package/api/auth-session-routes.js +36 -15
  24. package/api/auth.d.ts +12 -19
  25. package/api/auth.d.ts.map +1 -1
  26. package/api/auth.js +32 -27
  27. package/api/automations-compat-routes.d.ts.map +1 -1
  28. package/api/automations-compat-routes.js +5 -5
  29. package/api/background-tasks-routes.d.ts +4 -0
  30. package/api/background-tasks-routes.d.ts.map +1 -0
  31. package/api/background-tasks-routes.js +63 -0
  32. package/api/catalog-routes.js +3 -3
  33. package/api/cloud-pair-route.d.ts +26 -0
  34. package/api/cloud-pair-route.d.ts.map +1 -0
  35. package/api/cloud-pair-route.js +222 -0
  36. package/api/cloud-voice-routes.d.ts +52 -0
  37. package/api/cloud-voice-routes.d.ts.map +1 -0
  38. package/api/cloud-voice-routes.js +50 -0
  39. package/api/compat-route-shared.d.ts +2 -2
  40. package/api/compat-route-shared.d.ts.map +1 -1
  41. package/api/compat-route-shared.js +11 -7
  42. package/api/credential-resolver.d.ts +2 -2
  43. package/api/credential-resolver.d.ts.map +1 -1
  44. package/api/credential-resolver.js +8 -2
  45. package/api/database-rows-compat-routes.d.ts.map +1 -1
  46. package/api/database-rows-compat-routes.js +69 -31
  47. package/api/dev-boot-history.d.ts +26 -0
  48. package/api/dev-boot-history.d.ts.map +1 -0
  49. package/api/dev-boot-history.js +69 -0
  50. package/api/dev-compat-routes.d.ts +5 -0
  51. package/api/dev-compat-routes.d.ts.map +1 -1
  52. package/api/dev-compat-routes.js +127 -4
  53. package/api/dev-console-log.d.ts +2 -2
  54. package/api/dev-console-log.d.ts.map +1 -1
  55. package/api/dev-console-log.js +8 -5
  56. package/api/dev-route-catalog.d.ts +58 -0
  57. package/api/dev-route-catalog.d.ts.map +1 -0
  58. package/api/dev-route-catalog.js +457 -0
  59. package/api/dev-stack.d.ts.map +1 -1
  60. package/api/dev-stack.js +6 -9
  61. package/api/first-run-routes.d.ts +4 -0
  62. package/api/first-run-routes.d.ts.map +1 -0
  63. package/api/first-run-routes.js +208 -0
  64. package/api/first-run-tts-route.d.ts +19 -0
  65. package/api/first-run-tts-route.d.ts.map +1 -0
  66. package/api/first-run-tts-route.js +59 -0
  67. package/api/internal-routes.d.ts +23 -0
  68. package/api/internal-routes.d.ts.map +1 -0
  69. package/api/internal-routes.js +203 -0
  70. package/api/ios-local-agent-transport.d.ts +36 -0
  71. package/api/ios-local-agent-transport.d.ts.map +1 -0
  72. package/api/ios-local-agent-transport.js +566 -0
  73. package/api/onboarding-voice-lines.d.ts +23 -0
  74. package/api/onboarding-voice-lines.d.ts.map +1 -0
  75. package/api/onboarding-voice-lines.js +8 -0
  76. package/api/perf-instrument.d.ts +43 -0
  77. package/api/perf-instrument.d.ts.map +1 -0
  78. package/api/perf-instrument.js +113 -0
  79. package/api/response.d.ts.map +1 -1
  80. package/api/response.js +14 -14
  81. package/api/runtime-mode-routes.d.ts.map +1 -1
  82. package/api/runtime-mode-routes.js +2 -2
  83. package/api/secrets-inventory-routes.js +2 -2
  84. package/api/secrets-manager-routes.d.ts +1 -1
  85. package/api/secrets-manager-routes.d.ts.map +1 -1
  86. package/api/secrets-manager-routes.js +9 -10
  87. package/api/sensitive-request-routes.js +5 -5
  88. package/api/server-cors.d.ts.map +1 -1
  89. package/api/server-cors.js +13 -2
  90. package/api/server-first-run-helpers.d.ts +26 -0
  91. package/api/server-first-run-helpers.d.ts.map +1 -0
  92. package/api/server-first-run-helpers.js +271 -0
  93. package/api/server-security.js +1 -1
  94. package/api/server-startup.d.ts.map +1 -1
  95. package/api/server-startup.js +3 -4
  96. package/api/server-wallet-trade.js +1 -1
  97. package/api/server.d.ts +4 -4
  98. package/api/server.d.ts.map +1 -1
  99. package/api/server.js +222 -88
  100. package/api/setup-contract.d.ts +63 -0
  101. package/api/setup-contract.d.ts.map +1 -0
  102. package/api/setup-contract.js +39 -0
  103. package/api/training-benchmarks.d.ts +97 -0
  104. package/api/training-benchmarks.d.ts.map +1 -0
  105. package/api/training-benchmarks.js +307 -0
  106. package/api/workbench-compat-routes.js +2 -2
  107. package/benchmark/cerebras-autowire.d.ts +28 -0
  108. package/benchmark/cerebras-autowire.d.ts.map +1 -0
  109. package/benchmark/cerebras-autowire.js +62 -0
  110. package/benchmark/lifeops-bench-handler.d.ts +36 -0
  111. package/benchmark/lifeops-bench-handler.d.ts.map +1 -1
  112. package/benchmark/lifeops-bench-handler.js +63 -1
  113. package/benchmark/lifeops-fake-backend.d.ts +39 -0
  114. package/benchmark/lifeops-fake-backend.d.ts.map +1 -1
  115. package/benchmark/lifeops-fake-backend.js +993 -21
  116. package/benchmark/mock-plugin.d.ts.map +1 -1
  117. package/benchmark/mock-plugin.js +0 -24
  118. package/benchmark/plugin.d.ts +2 -1
  119. package/benchmark/plugin.d.ts.map +1 -1
  120. package/benchmark/plugin.js +989 -68
  121. package/benchmark/replay-capture.d.ts +2 -2
  122. package/benchmark/replay-capture.d.ts.map +1 -1
  123. package/benchmark/replay-capture.js +3 -3
  124. package/benchmark/server-utils.d.ts +162 -9
  125. package/benchmark/server-utils.d.ts.map +1 -1
  126. package/benchmark/server-utils.js +625 -62
  127. package/benchmark/server.d.ts.map +1 -1
  128. package/benchmark/server.js +1962 -118
  129. package/boot-profile.d.ts +3 -0
  130. package/boot-profile.d.ts.map +1 -0
  131. package/boot-profile.js +30 -0
  132. package/browser.d.ts +23 -1
  133. package/browser.d.ts.map +1 -1
  134. package/browser.js +20 -1
  135. package/cli/argv.js +1 -1
  136. package/cli/banner.js +1 -1
  137. package/cli/command-format.js +2 -2
  138. package/cli/doctor/checks.d.ts.map +1 -1
  139. package/cli/doctor/checks.js +6 -6
  140. package/cli/plugins-cli.d.ts.map +1 -1
  141. package/cli/plugins-cli.js +77 -32
  142. package/cli/profile.d.ts.map +1 -1
  143. package/cli/profile.js +5 -4
  144. package/cli/program/build-program.js +4 -4
  145. package/cli/program/command-registry.d.ts.map +1 -1
  146. package/cli/program/command-registry.js +13 -11
  147. package/cli/program/help.js +5 -5
  148. package/cli/program/preaction.js +5 -5
  149. package/cli/program/register.auth.d.ts.map +1 -1
  150. package/cli/program/register.auth.js +6 -12
  151. package/cli/program/register.capability-router.d.ts +29 -0
  152. package/cli/program/register.capability-router.d.ts.map +1 -0
  153. package/cli/program/register.capability-router.js +568 -0
  154. package/cli/program/register.config.js +1 -1
  155. package/cli/program/register.configure.d.ts.map +1 -1
  156. package/cli/program/register.configure.js +1 -1
  157. package/cli/program/register.dashboard.d.ts.map +1 -1
  158. package/cli/program/register.dashboard.js +6 -7
  159. package/cli/program/register.db.d.ts.map +1 -1
  160. package/cli/program/register.db.js +3 -4
  161. package/cli/program/register.doctor.js +7 -7
  162. package/cli/program/register.setup.d.ts.map +1 -1
  163. package/cli/program/register.setup.js +14 -10
  164. package/cli/program/register.start.d.ts.map +1 -1
  165. package/cli/program/register.start.js +5 -3
  166. package/cli/program/register.subclis.js +3 -3
  167. package/cli/program/register.update.d.ts +6 -0
  168. package/cli/program/register.update.d.ts.map +1 -1
  169. package/cli/program/register.update.js +58 -6
  170. package/cli/program.js +1 -1
  171. package/cli/run-main.js +4 -4
  172. package/config/app-config.d.ts +2 -0
  173. package/config/app-config.d.ts.map +1 -0
  174. package/config/app-config.js +1 -0
  175. package/connectors/capacitor-jsc.d.ts.map +1 -1
  176. package/connectors/capacitor-jsc.js +16 -10
  177. package/connectors/capacitor-quickjs.d.ts.map +1 -1
  178. package/connectors/capacitor-quickjs.js +18 -13
  179. package/connectors/capacitor-sqlite.d.ts.map +1 -1
  180. package/connectors/capacitor-sqlite.js +27 -12
  181. package/dispatch/approval-queue.d.ts +37 -0
  182. package/dispatch/approval-queue.d.ts.map +1 -0
  183. package/dispatch/approval-queue.js +25 -0
  184. package/dispatch/channel-registry.d.ts +30 -0
  185. package/dispatch/channel-registry.d.ts.map +1 -0
  186. package/dispatch/channel-registry.js +22 -0
  187. package/dispatch/connector-registry.d.ts +39 -0
  188. package/dispatch/connector-registry.d.ts.map +1 -0
  189. package/dispatch/connector-registry.js +24 -0
  190. package/dispatch/index.d.ts +14 -0
  191. package/dispatch/index.d.ts.map +1 -0
  192. package/dispatch/index.js +13 -0
  193. package/dispatch/send-policy.d.ts +36 -0
  194. package/dispatch/send-policy.d.ts.map +1 -0
  195. package/dispatch/send-policy.js +16 -0
  196. package/entry.js +28 -11
  197. package/first-run/first-run-config.d.ts +55 -0
  198. package/first-run/first-run-config.d.ts.map +1 -0
  199. package/first-run/first-run-config.js +178 -0
  200. package/first-run/runtime-target.d.ts +4 -0
  201. package/first-run/runtime-target.d.ts.map +1 -0
  202. package/first-run/runtime-target.js +13 -0
  203. package/index.d.ts +16 -3
  204. package/index.d.ts.map +1 -1
  205. package/index.js +57 -33
  206. package/package.json +159 -50
  207. package/packaging/debian/apt-repo-config/README.md +18 -0
  208. package/packaging/debian/apt-repo-config/conf/distributions +11 -0
  209. package/packaging/flatpak/README.md +26 -16
  210. package/packaging/flatpak/ai.elizaos.App.metainfo.xml +17 -12
  211. package/packaging/flatpak/ai.elizaos.App.store.yml +5 -5
  212. package/packaging/flatpak/ai.elizaos.App.yml +10 -24
  213. package/packaging/flatpak/elizaos-app-wrapper.store.sh +2 -2
  214. package/packaging/flatpak/generate-sources.sh +74 -0
  215. package/packaging/flatpak/node-sources.json +7930 -0
  216. package/packaging/inno/build-inno.ps1 +34 -9
  217. package/packaging/msix/AppxManifest.store.xml +1 -1
  218. package/packaging/msix/README.md +39 -19
  219. package/packaging/msix/build-msix.ps1 +44 -14
  220. package/packaging/snap/snapcraft.yaml +22 -21
  221. package/packaging/test-packaging.sh +2 -2
  222. package/permissions/types.d.ts +1 -1
  223. package/permissions/types.js +1 -1
  224. package/platform/elizaos-agent-browser-stub.d.ts +144 -0
  225. package/platform/elizaos-agent-browser-stub.d.ts.map +1 -0
  226. package/platform/elizaos-agent-browser-stub.js +158 -0
  227. package/platform/elizaos-plugin-elizacloud-browser-stub.d.ts +34 -0
  228. package/platform/elizaos-plugin-elizacloud-browser-stub.d.ts.map +1 -0
  229. package/platform/elizaos-plugin-elizacloud-browser-stub.js +51 -0
  230. package/platform/empty-node-module.d.ts +148 -0
  231. package/platform/empty-node-module.d.ts.map +1 -1
  232. package/platform/empty-node-module.js +140 -3
  233. package/platform/ios-runtime-backends.d.ts +83 -0
  234. package/platform/ios-runtime-backends.d.ts.map +1 -0
  235. package/platform/ios-runtime-backends.js +133 -0
  236. package/platform/ios-runtime-bridge.d.ts +15 -0
  237. package/platform/ios-runtime-bridge.d.ts.map +1 -0
  238. package/platform/ios-runtime-bridge.js +527 -0
  239. package/platform/native-library-policy.d.ts +23 -0
  240. package/platform/native-library-policy.d.ts.map +1 -0
  241. package/platform/native-library-policy.js +112 -0
  242. package/platform/native-plugin-entrypoints.d.ts +19 -0
  243. package/platform/native-plugin-entrypoints.d.ts.map +1 -0
  244. package/platform/native-plugin-entrypoints.js +29 -0
  245. package/platforms/android/README.md +68 -10
  246. package/platforms/android/app/build.gradle +268 -3
  247. package/platforms/android/app/capacitor.build.gradle +18 -1
  248. package/platforms/android/app/proguard-rules.pro +17 -2
  249. package/platforms/android/app/src/androidTest/java/ai/elizaos/app/ElizaOsInstrumentedTest.java +1 -1
  250. package/platforms/android/app/src/main/AndroidManifest.xml +335 -18
  251. package/platforms/android/app/src/main/assets/runners/eliza-tasks.js +177 -0
  252. package/platforms/android/app/src/main/elizavoice-jni/CMakeLists.txt +100 -0
  253. package/platforms/android/app/src/main/elizavoice-jni/elizavoice-jni.cpp +1485 -0
  254. package/platforms/android/app/src/main/java/ai/elizaos/app/AgentPlugin.java +111 -171
  255. package/platforms/android/app/src/main/java/ai/elizaos/app/AndroidVirtualizationBridge.java +284 -0
  256. package/platforms/android/app/src/main/java/ai/elizaos/app/BatteryOptimizationPlugin.java +95 -0
  257. package/platforms/android/app/src/main/java/ai/elizaos/app/ElizaAccessibilityService.java +55 -0
  258. package/platforms/android/app/src/main/java/ai/elizaos/app/ElizaAgentService.java +1255 -141
  259. package/platforms/android/app/src/main/java/ai/elizaos/app/ElizaAndroidSystemBridge.java +83 -0
  260. package/platforms/android/app/src/main/java/ai/elizaos/app/ElizaAssistActivity.java +50 -1
  261. package/platforms/android/app/src/main/java/ai/elizaos/app/ElizaBionicInferenceServer.java +400 -0
  262. package/platforms/android/app/src/main/java/ai/elizaos/app/ElizaBootReceiver.java +90 -8
  263. package/platforms/android/app/src/main/java/ai/elizaos/app/ElizaBrowserActivity.java +2 -2
  264. package/platforms/android/app/src/main/java/ai/elizaos/app/ElizaCalendarActivity.java +1 -1
  265. package/platforms/android/app/src/main/java/ai/elizaos/app/ElizaCameraActivity.java +1 -1
  266. package/platforms/android/app/src/main/java/ai/elizaos/app/ElizaClockActivity.java +2 -2
  267. package/platforms/android/app/src/main/java/ai/elizaos/app/ElizaContactsActivity.java +1 -1
  268. package/platforms/android/app/src/main/java/ai/elizaos/app/ElizaDialActivity.java +1 -1
  269. package/platforms/android/app/src/main/java/ai/elizaos/app/ElizaInCallService.java +1 -1
  270. package/platforms/android/app/src/main/java/ai/elizaos/app/ElizaMmsReceiver.java +1 -1
  271. package/platforms/android/app/src/main/java/ai/elizaos/app/ElizaNativeBridge.java +22 -0
  272. package/platforms/android/app/src/main/java/ai/elizaos/app/ElizaNotificationListenerService.java +45 -0
  273. package/platforms/android/app/src/main/java/ai/elizaos/app/ElizaQuickActionsWidgetProvider.java +68 -0
  274. package/platforms/android/app/src/main/java/ai/elizaos/app/ElizaShareActivity.java +132 -0
  275. package/platforms/android/app/src/main/java/ai/elizaos/app/ElizaSmsComposeActivity.java +1 -1
  276. package/platforms/android/app/src/main/java/ai/elizaos/app/ElizaSmsGatewayService.java +268 -0
  277. package/platforms/android/app/src/main/java/ai/elizaos/app/ElizaSmsReceiver.java +12 -1
  278. package/platforms/android/app/src/main/java/ai/elizaos/app/ElizaTasksWorker.java +194 -0
  279. package/platforms/android/app/src/main/java/ai/elizaos/app/ElizaVoiceCaptureService.java +198 -0
  280. package/platforms/android/app/src/main/java/ai/elizaos/app/ElizaVoiceNative.java +220 -0
  281. package/platforms/android/app/src/main/java/ai/elizaos/app/ElizaVoicePlugin.java +498 -0
  282. package/platforms/android/app/src/main/java/ai/elizaos/app/ElizaVoiceTileService.java +39 -0
  283. package/platforms/android/app/src/main/java/ai/elizaos/app/ElizaWorkScheduler.java +60 -0
  284. package/platforms/android/app/src/main/java/ai/elizaos/app/GatewayConnectionService.java +53 -19
  285. package/platforms/android/app/src/main/java/ai/elizaos/app/MainActivity.java +160 -33
  286. package/platforms/android/app/src/main/java/ai/elizaos/app/ResourceProbePlugin.java +169 -0
  287. package/platforms/android/app/src/main/java/ai/elizaos/app/VoiceCapturePlugin.java +119 -0
  288. package/platforms/android/app/src/main/res/drawable/eliza_widget_background.xml +10 -0
  289. package/platforms/android/app/src/main/res/drawable/eliza_widget_button_background.xml +13 -0
  290. package/platforms/android/app/src/main/res/drawable/splash.png +0 -0
  291. package/platforms/android/app/src/main/res/drawable-land-hdpi/splash.png +0 -0
  292. package/platforms/android/app/src/main/res/drawable-land-mdpi/splash.png +0 -0
  293. package/platforms/android/app/src/main/res/drawable-land-xhdpi/splash.png +0 -0
  294. package/platforms/android/app/src/main/res/drawable-land-xxhdpi/splash.png +0 -0
  295. package/platforms/android/app/src/main/res/drawable-land-xxxhdpi/splash.png +0 -0
  296. package/platforms/android/app/src/main/res/drawable-port-hdpi/splash.png +0 -0
  297. package/platforms/android/app/src/main/res/drawable-port-mdpi/splash.png +0 -0
  298. package/platforms/android/app/src/main/res/drawable-port-xhdpi/splash.png +0 -0
  299. package/platforms/android/app/src/main/res/drawable-port-xxhdpi/splash.png +0 -0
  300. package/platforms/android/app/src/main/res/drawable-port-xxxhdpi/splash.png +0 -0
  301. package/platforms/android/app/src/main/res/layout/eliza_quick_actions_widget.xml +86 -0
  302. package/platforms/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml +2 -1
  303. package/platforms/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml +2 -1
  304. package/platforms/android/app/src/main/res/mipmap-hdpi/ic_launcher.png +0 -0
  305. package/platforms/android/app/src/main/res/mipmap-hdpi/ic_launcher_foreground.png +0 -0
  306. package/platforms/android/app/src/main/res/mipmap-hdpi/ic_launcher_monochrome.png +0 -0
  307. package/platforms/android/app/src/main/res/mipmap-hdpi/ic_launcher_round.png +0 -0
  308. package/platforms/android/app/src/main/res/mipmap-mdpi/ic_launcher.png +0 -0
  309. package/platforms/android/app/src/main/res/mipmap-mdpi/ic_launcher_foreground.png +0 -0
  310. package/platforms/android/app/src/main/res/mipmap-mdpi/ic_launcher_monochrome.png +0 -0
  311. package/platforms/android/app/src/main/res/mipmap-mdpi/ic_launcher_round.png +0 -0
  312. package/platforms/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png +0 -0
  313. package/platforms/android/app/src/main/res/mipmap-xhdpi/ic_launcher_foreground.png +0 -0
  314. package/platforms/android/app/src/main/res/mipmap-xhdpi/ic_launcher_monochrome.png +0 -0
  315. package/platforms/android/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png +0 -0
  316. package/platforms/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png +0 -0
  317. package/platforms/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_foreground.png +0 -0
  318. package/platforms/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_monochrome.png +0 -0
  319. package/platforms/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png +0 -0
  320. package/platforms/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png +0 -0
  321. package/platforms/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_foreground.png +0 -0
  322. package/platforms/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_monochrome.png +0 -0
  323. package/platforms/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png +0 -0
  324. package/platforms/android/app/src/main/res/values/android_app_actions.xml +48 -0
  325. package/platforms/android/app/src/main/res/values/colors.xml +8 -0
  326. package/platforms/android/app/src/main/res/values/ic_launcher_background.xml +2 -2
  327. package/platforms/android/app/src/main/res/values/strings.xml +2 -2
  328. package/platforms/android/app/src/main/res/values/styles.xml +25 -1
  329. package/platforms/android/app/src/main/res/xml/eliza_accessibility_service.xml +9 -0
  330. package/platforms/android/app/src/main/res/xml/eliza_quick_actions_widget.xml +13 -0
  331. package/platforms/android/app/src/main/res/xml/shortcuts.xml +121 -0
  332. package/platforms/android/build.gradle +2 -2
  333. package/platforms/android/capacitor-cordova-android-plugins/build.gradle +9 -3
  334. package/platforms/android/capacitor-cordova-android-plugins/cordova.variables.gradle +6 -2
  335. package/platforms/android/capacitor-cordova-android-plugins/src/main/AndroidManifest.xml +7 -2
  336. package/platforms/android/capacitor-cordova-android-plugins/src/main/java/.gitkeep +0 -1
  337. package/platforms/android/capacitor.settings.gradle +66 -16
  338. package/platforms/android/gradle.properties +1 -0
  339. package/platforms/android/update-manifest/generate-manifest.mjs +97 -0
  340. package/platforms/android/update-manifest/schema.json +26 -0
  341. package/platforms/apple-store-entitlements.reviewed.json +155 -0
  342. package/platforms/electrobun/.generated/brand-config.json +3 -2
  343. package/platforms/electrobun/LICENSE +21 -0
  344. package/platforms/electrobun/README.md +15 -1
  345. package/platforms/electrobun/assets/appIcon.icns +0 -0
  346. package/platforms/electrobun/assets/appIcon.ico +0 -0
  347. package/platforms/electrobun/assets/appIcon.iconset/icon_128x128.png +0 -0
  348. package/platforms/electrobun/assets/appIcon.iconset/icon_128x128@2x.png +0 -0
  349. package/platforms/electrobun/assets/appIcon.iconset/icon_16x16.png +0 -0
  350. package/platforms/electrobun/assets/appIcon.iconset/icon_16x16@2x.png +0 -0
  351. package/platforms/electrobun/assets/appIcon.iconset/icon_256x256.png +0 -0
  352. package/platforms/electrobun/assets/appIcon.iconset/icon_256x256@2x.png +0 -0
  353. package/platforms/electrobun/assets/appIcon.iconset/icon_32x32.png +0 -0
  354. package/platforms/electrobun/assets/appIcon.iconset/icon_32x32@2x.png +0 -0
  355. package/platforms/electrobun/assets/appIcon.iconset/icon_512x512.png +0 -0
  356. package/platforms/electrobun/assets/brand-config.json +6 -6
  357. package/platforms/electrobun/biome.json +9 -9
  358. package/platforms/electrobun/docs/capability-collapse-matrix.json +318 -0
  359. package/platforms/electrobun/docs/capability-collapse-matrix.md +129 -0
  360. package/platforms/electrobun/docs/capability-routing.md +86 -0
  361. package/platforms/electrobun/docs/convergence-audit.json +3505 -0
  362. package/platforms/electrobun/docs/convergence-audit.md +694 -0
  363. package/platforms/electrobun/docs/database-boot-policy.md +90 -0
  364. package/platforms/electrobun/docs/riscv64-port.md +175 -0
  365. package/platforms/electrobun/docs/startup-first-run-cleanup.md +18 -0
  366. package/platforms/electrobun/docs/trace-first-annotations.md +52 -0
  367. package/platforms/electrobun/docs/ui-boundary-audit.json +580 -0
  368. package/platforms/electrobun/docs/ui-boundary-audit.md +257 -0
  369. package/platforms/electrobun/electrobun.config.ts +592 -364
  370. package/platforms/electrobun/entitlements/JUSTIFICATIONS.md +141 -0
  371. package/platforms/electrobun/entitlements/README.md +34 -6
  372. package/platforms/electrobun/entitlements/mas-bun.entitlements +15 -0
  373. package/platforms/electrobun/entitlements/mas.entitlements +6 -4
  374. package/platforms/electrobun/native/macos/window-effects.mm +1522 -0
  375. package/platforms/electrobun/package.json +18 -12
  376. package/platforms/electrobun/remotes/fs/README.md +70 -0
  377. package/platforms/electrobun/remotes/fs/electrobun.config.ts +38 -0
  378. package/platforms/electrobun/remotes/fs/package.json +12 -0
  379. package/platforms/electrobun/remotes/fs/plugin.json +25 -0
  380. package/platforms/electrobun/remotes/fs/src/bun/errors.ts +57 -0
  381. package/platforms/electrobun/remotes/fs/src/bun/file-limits.ts +50 -0
  382. package/platforms/electrobun/remotes/fs/src/bun/fs-service.ts +389 -0
  383. package/platforms/electrobun/remotes/fs/src/bun/path-guard.ts +270 -0
  384. package/platforms/electrobun/remotes/fs/src/bun/protocol.ts +149 -0
  385. package/platforms/electrobun/remotes/fs/src/bun/worker.ts +174 -0
  386. package/platforms/electrobun/remotes/fs/src/dev/phase5-smoke.ts +171 -0
  387. package/platforms/electrobun/remotes/fs/src/web/index.html +8 -0
  388. package/platforms/electrobun/remotes/git/README.md +75 -0
  389. package/platforms/electrobun/remotes/git/electrobun.config.ts +44 -0
  390. package/platforms/electrobun/remotes/git/package.json +12 -0
  391. package/platforms/electrobun/remotes/git/plugin.json +31 -0
  392. package/platforms/electrobun/remotes/git/src/bun/errors.ts +69 -0
  393. package/platforms/electrobun/remotes/git/src/bun/git-command.ts +156 -0
  394. package/platforms/electrobun/remotes/git/src/bun/git-service.ts +446 -0
  395. package/platforms/electrobun/remotes/git/src/bun/operation-history.ts +124 -0
  396. package/platforms/electrobun/remotes/git/src/bun/protocol.ts +252 -0
  397. package/platforms/electrobun/remotes/git/src/bun/worker.ts +316 -0
  398. package/platforms/electrobun/remotes/git/src/dev/phase7-smoke.ts +141 -0
  399. package/platforms/electrobun/remotes/git/src/web/index.html +8 -0
  400. package/platforms/electrobun/remotes/local-model/README.md +138 -0
  401. package/platforms/electrobun/remotes/local-model/electrobun.config.ts +46 -0
  402. package/platforms/electrobun/remotes/local-model/package.json +12 -0
  403. package/platforms/electrobun/remotes/local-model/plugin.json +33 -0
  404. package/platforms/electrobun/remotes/local-model/src/bun/download-state.ts +115 -0
  405. package/platforms/electrobun/remotes/local-model/src/bun/eliza1-catalog.ts +405 -0
  406. package/platforms/electrobun/remotes/local-model/src/bun/errors.ts +74 -0
  407. package/platforms/electrobun/remotes/local-model/src/bun/hf-eliza1-client.ts +169 -0
  408. package/platforms/electrobun/remotes/local-model/src/bun/local-inference-api-client.ts +245 -0
  409. package/platforms/electrobun/remotes/local-model/src/bun/model-service.ts +490 -0
  410. package/platforms/electrobun/remotes/local-model/src/bun/protocol.ts +301 -0
  411. package/platforms/electrobun/remotes/local-model/src/bun/worker.ts +248 -0
  412. package/platforms/electrobun/remotes/local-model/src/dev/phase8-smoke.ts +116 -0
  413. package/platforms/electrobun/remotes/local-model/src/web/index.html +13 -0
  414. package/platforms/electrobun/remotes/pty/README.md +65 -0
  415. package/platforms/electrobun/remotes/pty/electrobun.config.ts +47 -0
  416. package/platforms/electrobun/remotes/pty/package.json +12 -0
  417. package/platforms/electrobun/remotes/pty/plugin.json +34 -0
  418. package/platforms/electrobun/remotes/pty/src/bun/errors.ts +57 -0
  419. package/platforms/electrobun/remotes/pty/src/bun/output-buffer.ts +127 -0
  420. package/platforms/electrobun/remotes/pty/src/bun/protocol.ts +192 -0
  421. package/platforms/electrobun/remotes/pty/src/bun/pty-service.ts +562 -0
  422. package/platforms/electrobun/remotes/pty/src/bun/worker.ts +218 -0
  423. package/platforms/electrobun/remotes/pty/src/dev/phase6-smoke.ts +127 -0
  424. package/platforms/electrobun/remotes/pty/src/web/index.html +8 -0
  425. package/platforms/electrobun/remotes/runtime/README.md +370 -0
  426. package/platforms/electrobun/remotes/runtime/electrobun.config.ts +48 -0
  427. package/platforms/electrobun/remotes/runtime/package.json +14 -0
  428. package/platforms/electrobun/remotes/runtime/plugin.json +30 -0
  429. package/platforms/electrobun/remotes/runtime/src/bun/api-client.ts +620 -0
  430. package/platforms/electrobun/remotes/runtime/src/bun/errors.ts +45 -0
  431. package/platforms/electrobun/remotes/runtime/src/bun/log-buffer.ts +33 -0
  432. package/platforms/electrobun/remotes/runtime/src/bun/protocol.ts +366 -0
  433. package/platforms/electrobun/remotes/runtime/src/bun/route-discovery.ts +419 -0
  434. package/platforms/electrobun/remotes/runtime/src/bun/runtime-manager.ts +423 -0
  435. package/platforms/electrobun/remotes/runtime/src/bun/sse-parser.ts +99 -0
  436. package/platforms/electrobun/remotes/runtime/src/bun/stream-manager.ts +887 -0
  437. package/platforms/electrobun/remotes/runtime/src/bun/worker.ts +1231 -0
  438. package/platforms/electrobun/remotes/runtime/src/dev/phase1-smoke.ts +34 -0
  439. package/platforms/electrobun/remotes/runtime/src/dev/phase2-smoke.ts +86 -0
  440. package/platforms/electrobun/remotes/runtime/src/dev/phase3-smoke.ts +141 -0
  441. package/platforms/electrobun/remotes/runtime/src/web/index.css +187 -0
  442. package/platforms/electrobun/remotes/runtime/src/web/index.html +76 -0
  443. package/platforms/electrobun/remotes/runtime/src/web/index.ts +192 -0
  444. package/platforms/electrobun/remotes/surface/README.md +201 -0
  445. package/platforms/electrobun/remotes/surface/electrobun.config.ts +38 -0
  446. package/platforms/electrobun/remotes/surface/package.json +12 -0
  447. package/platforms/electrobun/remotes/surface/plugin.json +28 -0
  448. package/platforms/electrobun/remotes/surface/src/bun/worker.ts +132 -0
  449. package/platforms/electrobun/remotes/surface/src/dev/phase4-smoke.ts +566 -0
  450. package/platforms/electrobun/remotes/surface/src/protocol/event-types.ts +84 -0
  451. package/platforms/electrobun/remotes/surface/src/protocol/runtime-client.ts +673 -0
  452. package/platforms/electrobun/remotes/surface/src/web/app.ts +595 -0
  453. package/platforms/electrobun/remotes/surface/src/web/index.css +460 -0
  454. package/platforms/electrobun/remotes/surface/src/web/index.html +466 -0
  455. package/platforms/electrobun/remotes/surface/src/web/index.ts +5 -0
  456. package/platforms/electrobun/remotes/surface/src/web/render.ts +455 -0
  457. package/platforms/electrobun/remotes/surface/src/web/state.ts +427 -0
  458. package/platforms/electrobun/scripts/build-macos-effects.sh +4 -0
  459. package/platforms/electrobun/scripts/ensure-build-folder.ts +28 -0
  460. package/platforms/electrobun/scripts/ensure-whisper-gguf.sh +55 -0
  461. package/platforms/electrobun/scripts/ensure-whisper-model.sh +22 -80
  462. package/platforms/electrobun/scripts/generate-convergence-audit.ts +1203 -0
  463. package/platforms/electrobun/scripts/local-adhoc-sign-macos.ts +159 -159
  464. package/platforms/electrobun/scripts/postwrap-diagnostics.ts +424 -339
  465. package/platforms/electrobun/scripts/postwrap-sign-runtime-macos.ts +302 -271
  466. package/platforms/electrobun/scripts/smoke-test-windows.ps1 +17 -16
  467. package/platforms/electrobun/scripts/smoke-test.sh +5 -7
  468. package/platforms/electrobun/scripts/sync-web-assets.mjs +13 -13
  469. package/platforms/electrobun/scripts/verify-rpc-handlers.ts +109 -110
  470. package/platforms/electrobun/scripts/verify-windows-installer-proof.ps1 +3 -8
  471. package/platforms/electrobun/src/__stubs__/bun-ffi.ts +31 -31
  472. package/platforms/electrobun/src/__stubs__/electrobun-bun.ts +1 -1
  473. package/platforms/electrobun/src/agent-ready-state.ts +8 -8
  474. package/platforms/electrobun/src/agent-reset-from-main.test.ts +162 -0
  475. package/platforms/electrobun/src/agent-reset-from-main.ts +62 -62
  476. package/platforms/electrobun/src/agent-status-rpc.test.ts +95 -0
  477. package/platforms/electrobun/src/agent-status-rpc.ts +156 -0
  478. package/platforms/electrobun/src/api-base.test.ts +247 -0
  479. package/platforms/electrobun/src/api-base.ts +202 -93
  480. package/platforms/electrobun/src/application-menu-action-registry.ts +9 -9
  481. package/platforms/electrobun/src/application-menu.ts +348 -348
  482. package/platforms/electrobun/src/background-notice.ts +36 -36
  483. package/platforms/electrobun/src/boot-progress.test.ts +188 -0
  484. package/platforms/electrobun/src/boot-progress.ts +111 -0
  485. package/platforms/electrobun/src/brand-config.test.ts +39 -0
  486. package/platforms/electrobun/src/brand-config.ts +141 -129
  487. package/platforms/electrobun/src/bridge/browser-tabs-renderer-registry.ts +28 -28
  488. package/platforms/electrobun/src/bridge/electrobun-boot-config.ts +42 -0
  489. package/platforms/electrobun/src/bridge/electrobun-crypto-ready.ts +120 -0
  490. package/platforms/electrobun/src/bridge/electrobun-direct-rpc.ts +342 -357
  491. package/platforms/electrobun/src/bridge/electrobun-stub.ts +13 -13
  492. package/platforms/electrobun/src/browser-workspace-bridge-server.ts +285 -243
  493. package/platforms/electrobun/src/cloud-auth-window.ts +136 -136
  494. package/platforms/electrobun/src/cloud-disconnect-from-main.ts +90 -90
  495. package/platforms/electrobun/src/config-and-auth-rpc.test.ts +256 -0
  496. package/platforms/electrobun/src/config-and-auth-rpc.ts +302 -0
  497. package/platforms/electrobun/src/conversations-and-character-rpc.test.ts +185 -0
  498. package/platforms/electrobun/src/conversations-and-character-rpc.ts +131 -0
  499. package/platforms/electrobun/src/dashboard-rpc.test.ts +200 -0
  500. package/platforms/electrobun/src/dashboard-rpc.ts +344 -0
  501. package/platforms/electrobun/src/database/database-lock.ts +141 -0
  502. package/platforms/electrobun/src/database/database-mode.ts +149 -0
  503. package/platforms/electrobun/src/database/database-recovery.ts +72 -0
  504. package/platforms/electrobun/src/database/database-snapshot.ts +190 -0
  505. package/platforms/electrobun/src/database/database.test.ts +196 -0
  506. package/platforms/electrobun/src/database/index.ts +5 -0
  507. package/platforms/electrobun/src/database/pglite-paths.ts +100 -0
  508. package/platforms/electrobun/src/desktop-deep-link-events.test.ts +30 -0
  509. package/platforms/electrobun/src/desktop-deep-link-events.ts +17 -0
  510. package/platforms/electrobun/src/desktop-http-request.test.ts +73 -73
  511. package/platforms/electrobun/src/desktop-http-request.ts +85 -85
  512. package/platforms/electrobun/src/desktop-pill-config.test.ts +27 -0
  513. package/platforms/electrobun/src/desktop-pill-config.ts +40 -0
  514. package/platforms/electrobun/src/desktop-test-bridge-server.ts +204 -204
  515. package/platforms/electrobun/src/desktop-tray-config.test.ts +87 -0
  516. package/platforms/electrobun/src/desktop-tray-config.ts +84 -0
  517. package/platforms/electrobun/src/devtools-layout.ts +41 -41
  518. package/platforms/electrobun/src/diagnostic-format.test.ts +71 -0
  519. package/platforms/electrobun/src/diagnostic-format.ts +75 -36
  520. package/platforms/electrobun/src/dynamic-view-rpc-schema.test.ts +37 -0
  521. package/platforms/electrobun/src/dynamic-views/README.md +44 -0
  522. package/platforms/electrobun/src/dynamic-views/demo/agent-run-trace.html +135 -0
  523. package/platforms/electrobun/src/dynamic-views/errors.ts +29 -0
  524. package/platforms/electrobun/src/dynamic-views/host.test.ts +353 -0
  525. package/platforms/electrobun/src/dynamic-views/host.ts +332 -0
  526. package/platforms/electrobun/src/dynamic-views/index.ts +57 -0
  527. package/platforms/electrobun/src/dynamic-views/kiosk-canvas.ts +89 -0
  528. package/platforms/electrobun/src/dynamic-views/registry.test.ts +139 -0
  529. package/platforms/electrobun/src/dynamic-views/registry.ts +196 -0
  530. package/platforms/electrobun/src/dynamic-views/session-manager.test.ts +355 -0
  531. package/platforms/electrobun/src/dynamic-views/session-manager.ts +348 -0
  532. package/platforms/electrobun/src/dynamic-views/types.ts +105 -0
  533. package/platforms/electrobun/src/electrobun-boot-config.test.ts +50 -0
  534. package/platforms/electrobun/src/electrobun-config.test.ts +62 -0
  535. package/platforms/electrobun/src/electrobun-crypto-ready.test.ts +65 -0
  536. package/platforms/electrobun/src/electrobun-window-options.ts +25 -0
  537. package/platforms/electrobun/src/extension-rpc.test.ts +88 -0
  538. package/platforms/electrobun/src/extension-rpc.ts +102 -0
  539. package/platforms/electrobun/src/fatal-shutdown.test.ts +10 -10
  540. package/platforms/electrobun/src/fatal-shutdown.ts +1 -1
  541. package/platforms/electrobun/src/first-party-remotes.test.ts +169 -0
  542. package/platforms/electrobun/src/first-party-remotes.ts +297 -0
  543. package/platforms/electrobun/src/first-run-rpc.test.ts +192 -0
  544. package/platforms/electrobun/src/first-run-rpc.ts +146 -0
  545. package/platforms/electrobun/src/floating-chat-window.ts +181 -181
  546. package/platforms/electrobun/src/inbox-rpc.test.ts +123 -0
  547. package/platforms/electrobun/src/inbox-rpc.ts +158 -0
  548. package/platforms/electrobun/src/index.ts +2555 -2096
  549. package/platforms/electrobun/src/kiosk-mode.ts +50 -0
  550. package/platforms/electrobun/src/launch/index.ts +4 -0
  551. package/platforms/electrobun/src/launch/launch-dynamic-view.ts +37 -0
  552. package/platforms/electrobun/src/launch/launch-orchestrator.test.ts +224 -0
  553. package/platforms/electrobun/src/launch/launch-orchestrator.ts +456 -0
  554. package/platforms/electrobun/src/launch/launch-store.test.ts +97 -0
  555. package/platforms/electrobun/src/launch/launch-store.ts +134 -0
  556. package/platforms/electrobun/src/launch/types.ts +103 -0
  557. package/platforms/electrobun/src/launch/views/launch-diagnostics.html +205 -0
  558. package/platforms/electrobun/src/lifecycle/agent-ready-publish.test.ts +50 -0
  559. package/platforms/electrobun/src/lifecycle/agent-ready-publish.ts +27 -0
  560. package/platforms/electrobun/src/lifecycle/api-base-owner.ts +42 -31
  561. package/platforms/electrobun/src/lifecycle/desktop-session-prime.ts +44 -44
  562. package/platforms/electrobun/src/logger.ts +14 -14
  563. package/platforms/electrobun/src/main-window-runtime.ts +83 -83
  564. package/platforms/electrobun/src/main-window-session.test.ts +109 -0
  565. package/platforms/electrobun/src/main-window-session.ts +87 -51
  566. package/platforms/electrobun/src/menu-reset-from-main.ts +158 -158
  567. package/platforms/electrobun/src/native/agent-env.test.ts +52 -0
  568. package/platforms/electrobun/src/native/agent-runtime-layout.test.ts +42 -0
  569. package/platforms/electrobun/src/native/agent-state-dir.test.ts +91 -0
  570. package/platforms/electrobun/src/native/agent.ts +2122 -1682
  571. package/platforms/electrobun/src/native/auth-bridge.test.ts +67 -0
  572. package/platforms/electrobun/src/native/auth-bridge.ts +464 -360
  573. package/platforms/electrobun/src/native/browser-workspace.ts +723 -471
  574. package/platforms/electrobun/src/native/camera.ts +50 -50
  575. package/platforms/electrobun/src/native/canvas.ts +444 -445
  576. package/platforms/electrobun/src/native/credentials.ts +673 -616
  577. package/platforms/electrobun/src/native/desktop-window.test.ts +300 -0
  578. package/platforms/electrobun/src/native/desktop.ts +2196 -2156
  579. package/platforms/electrobun/src/native/editor-bridge.ts +201 -201
  580. package/platforms/electrobun/src/native/file-watcher.ts +154 -154
  581. package/platforms/electrobun/src/native/gateway.ts +179 -180
  582. package/platforms/electrobun/src/native/gpu-window.ts +256 -256
  583. package/platforms/electrobun/src/native/index.ts +76 -74
  584. package/platforms/electrobun/src/native/location.test.ts +44 -0
  585. package/platforms/electrobun/src/native/location.ts +90 -80
  586. package/platforms/electrobun/src/native/loopback-port.ts +60 -60
  587. package/platforms/electrobun/src/native/mac-window-effects.ts +166 -104
  588. package/platforms/electrobun/src/native/music-player.ts +38 -38
  589. package/platforms/electrobun/src/native/permissions-shared.ts +249 -150
  590. package/platforms/electrobun/src/native/permissions.ts +301 -208
  591. package/platforms/electrobun/src/native/power-state.ts +129 -129
  592. package/platforms/electrobun/src/native/remote-plugin-host.test.ts +1394 -0
  593. package/platforms/electrobun/src/native/remote-plugin-host.ts +1531 -0
  594. package/platforms/electrobun/src/native/screencapture.ts +667 -573
  595. package/platforms/electrobun/src/native/steward.ts +207 -204
  596. package/platforms/electrobun/src/native/swabble.ts +68 -324
  597. package/platforms/electrobun/src/native/talkmode.ts +253 -422
  598. package/platforms/electrobun/src/native/webgpu-browser-support.test.ts +18 -0
  599. package/platforms/electrobun/src/native/webgpu-browser-support.ts +165 -147
  600. package/platforms/electrobun/src/native/whisper-env.test.ts +71 -0
  601. package/platforms/electrobun/src/native/whisper-env.ts +68 -0
  602. package/platforms/electrobun/src/native-onboarding.ts +270 -0
  603. package/platforms/electrobun/src/onboarding-overlay-window.ts +141 -0
  604. package/platforms/electrobun/src/persisted-deployment.ts +91 -0
  605. package/platforms/electrobun/src/pill-window.test.ts +91 -0
  606. package/platforms/electrobun/src/pill-window.ts +99 -0
  607. package/platforms/electrobun/src/preload-validation.ts +44 -44
  608. package/platforms/electrobun/src/preload.js +1 -1
  609. package/platforms/electrobun/src/print-electrobun-dev-settings-banner.ts +120 -120
  610. package/platforms/electrobun/src/renderer-api-proxy.test.ts +73 -0
  611. package/platforms/electrobun/src/renderer-api-proxy.ts +86 -0
  612. package/platforms/electrobun/src/renderer-static.test.ts +53 -0
  613. package/platforms/electrobun/src/renderer-static.ts +144 -57
  614. package/platforms/electrobun/src/rpc-handler-slices.ts +121 -0
  615. package/platforms/electrobun/src/rpc-handlers.test.ts +267 -0
  616. package/platforms/electrobun/src/rpc-handlers.ts +1306 -913
  617. package/platforms/electrobun/src/rpc-parse-utils.ts +57 -0
  618. package/platforms/electrobun/src/rpc-port-resolver.test.ts +45 -0
  619. package/platforms/electrobun/src/rpc-port-resolver.ts +31 -0
  620. package/platforms/electrobun/src/rpc-schema.ts +2556 -1619
  621. package/platforms/electrobun/src/runtime-layout.ts +105 -105
  622. package/platforms/electrobun/src/runtime-permissions.ts +95 -95
  623. package/platforms/electrobun/src/runtime-rpc.test.ts +126 -0
  624. package/platforms/electrobun/src/runtime-rpc.ts +237 -0
  625. package/platforms/electrobun/src/screenshot-dev-server.ts +87 -87
  626. package/platforms/electrobun/src/settings-mutations-rpc.test.ts +193 -0
  627. package/platforms/electrobun/src/settings-mutations-rpc.ts +220 -0
  628. package/platforms/electrobun/src/startup-trace.ts +274 -270
  629. package/platforms/electrobun/src/subscription-rpc.test.ts +89 -0
  630. package/platforms/electrobun/src/subscription-rpc.ts +192 -0
  631. package/platforms/electrobun/src/surface-windows.test.ts +355 -0
  632. package/platforms/electrobun/src/surface-windows.ts +410 -410
  633. package/platforms/electrobun/src/trace/README.md +73 -0
  634. package/platforms/electrobun/src/trace/errors.ts +21 -0
  635. package/platforms/electrobun/src/trace/index.ts +40 -0
  636. package/platforms/electrobun/src/trace/trace-dynamic-view.ts +40 -0
  637. package/platforms/electrobun/src/trace/trace-host-requests.ts +473 -0
  638. package/platforms/electrobun/src/trace/trace-service.test.ts +186 -0
  639. package/platforms/electrobun/src/trace/trace-service.ts +324 -0
  640. package/platforms/electrobun/src/trace/trace-store.test.ts +141 -0
  641. package/platforms/electrobun/src/trace/trace-store.ts +551 -0
  642. package/platforms/electrobun/src/trace/types.ts +250 -0
  643. package/platforms/electrobun/src/trace/views/agent-run-trace.html +311 -0
  644. package/platforms/electrobun/src/types/web-speech.d.ts +28 -28
  645. package/platforms/electrobun/src/types.ts +5 -5
  646. package/platforms/electrobun/src/update-availability.test.ts +72 -0
  647. package/platforms/electrobun/src/update-availability.ts +90 -0
  648. package/platforms/electrobun/src/update-rpc.test.ts +83 -0
  649. package/platforms/electrobun/src/update-rpc.ts +123 -0
  650. package/platforms/electrobun/src/voice/README.md +184 -0
  651. package/platforms/electrobun/src/voice/errors.ts +42 -0
  652. package/platforms/electrobun/src/voice/index.ts +78 -0
  653. package/platforms/electrobun/src/voice/types.ts +316 -0
  654. package/platforms/electrobun/src/voice/voice-host-requests.ts +259 -0
  655. package/platforms/electrobun/src/voice/voice-latency-budget.test.ts +66 -0
  656. package/platforms/electrobun/src/voice/voice-latency-budget.ts +243 -0
  657. package/platforms/electrobun/src/voice/voice-live-validation.test.ts +352 -0
  658. package/platforms/electrobun/src/voice/voice-live-validation.ts +838 -0
  659. package/platforms/electrobun/src/voice/voice-pipeline.ts +250 -0
  660. package/platforms/electrobun/src/voice/voice-playback-adapter.ts +31 -0
  661. package/platforms/electrobun/src/voice/voice-runtime-adapter.test.ts +213 -0
  662. package/platforms/electrobun/src/voice/voice-runtime-adapter.ts +686 -0
  663. package/platforms/electrobun/src/voice/voice-service.test.ts +561 -0
  664. package/platforms/electrobun/src/voice/voice-service.ts +1027 -0
  665. package/platforms/electrobun/src/voice/voice-stream-coordinator.test.ts +115 -0
  666. package/platforms/electrobun/src/voice/voice-stream-coordinator.ts +270 -0
  667. package/platforms/electrobun/src/voice/voice-trace.ts +97 -0
  668. package/platforms/electrobun/src/voice/voice-tts-chunker.test.ts +91 -0
  669. package/platforms/electrobun/src/voice/voice-tts-chunker.ts +194 -0
  670. package/platforms/electrobun/src/windows-cef-profile.ts +88 -88
  671. package/platforms/electrobun/tsconfig.json +73 -13
  672. package/platforms/electrobun/update-channels.json +22 -0
  673. package/platforms/electrobun/vitest.electrobun.config.ts +72 -42
  674. package/platforms/ios/App/App/App.entitlements +4 -0
  675. package/platforms/ios/App/App/AppDelegate.swift +80 -18
  676. package/platforms/ios/App/App/Assets.xcassets/AppIcon.appiconset/AppIcon-ios-marketing-1024.png +0 -0
  677. package/platforms/ios/App/App/Assets.xcassets/AppIcon.appiconset/AppIcon-ipad-20x20@1x.png +0 -0
  678. package/platforms/ios/App/App/Assets.xcassets/AppIcon.appiconset/AppIcon-ipad-20x20@2x.png +0 -0
  679. package/platforms/ios/App/App/Assets.xcassets/AppIcon.appiconset/AppIcon-ipad-29x29@1x.png +0 -0
  680. package/platforms/ios/App/App/Assets.xcassets/AppIcon.appiconset/AppIcon-ipad-29x29@2x.png +0 -0
  681. package/platforms/ios/App/App/Assets.xcassets/AppIcon.appiconset/AppIcon-ipad-40x40@1x.png +0 -0
  682. package/platforms/ios/App/App/Assets.xcassets/AppIcon.appiconset/AppIcon-ipad-40x40@2x.png +0 -0
  683. package/platforms/ios/App/App/Assets.xcassets/AppIcon.appiconset/AppIcon-ipad-76x76@1x.png +0 -0
  684. package/platforms/ios/App/App/Assets.xcassets/AppIcon.appiconset/AppIcon-ipad-76x76@2x.png +0 -0
  685. package/platforms/ios/App/App/Assets.xcassets/AppIcon.appiconset/AppIcon-ipad-83_5x83_5@2x.png +0 -0
  686. package/platforms/ios/App/App/Assets.xcassets/AppIcon.appiconset/AppIcon-iphone-20x20@2x.png +0 -0
  687. package/platforms/ios/App/App/Assets.xcassets/AppIcon.appiconset/AppIcon-iphone-20x20@3x.png +0 -0
  688. package/platforms/ios/App/App/Assets.xcassets/AppIcon.appiconset/AppIcon-iphone-29x29@2x.png +0 -0
  689. package/platforms/ios/App/App/Assets.xcassets/AppIcon.appiconset/AppIcon-iphone-29x29@3x.png +0 -0
  690. package/platforms/ios/App/App/Assets.xcassets/AppIcon.appiconset/AppIcon-iphone-40x40@2x.png +0 -0
  691. package/platforms/ios/App/App/Assets.xcassets/AppIcon.appiconset/AppIcon-iphone-40x40@3x.png +0 -0
  692. package/platforms/ios/App/App/Assets.xcassets/AppIcon.appiconset/AppIcon-iphone-60x60@2x.png +0 -0
  693. package/platforms/ios/App/App/Assets.xcassets/AppIcon.appiconset/AppIcon-iphone-60x60@3x.png +0 -0
  694. package/platforms/ios/App/App/Base.lproj/LaunchScreen.storyboard +1 -4
  695. package/platforms/ios/App/App/ComputerUseBridge.swift +589 -0
  696. package/platforms/ios/App/App/DeviceActivityMonitorExtension/DeviceActivityMonitorExtension.entitlements +12 -0
  697. package/platforms/ios/App/App/DeviceActivityMonitorExtension/DeviceActivityMonitorExtension.swift +34 -0
  698. package/platforms/ios/App/App/DeviceActivityMonitorExtension/Info.plist +29 -0
  699. package/platforms/ios/App/App/DeviceActivityReportExtension/DeviceActivityReportExtension.entitlements +12 -0
  700. package/platforms/ios/App/App/DeviceActivityReportExtension/DeviceActivityReportExtension.swift +53 -0
  701. package/platforms/ios/App/App/DeviceActivityReportExtension/Info.plist +27 -0
  702. package/platforms/ios/App/App/ElizaAppIntents.swift +183 -0
  703. package/platforms/ios/App/App/ElizaIntentPlugin.swift +342 -5
  704. package/platforms/ios/App/App/Info.plist +17 -1
  705. package/platforms/ios/App/App/runners/eliza-tasks.js +177 -0
  706. package/platforms/ios/App/App.xcodeproj/project.pbxproj +262 -6
  707. package/platforms/ios/App/BroadcastExtension/SampleHandler.swift +100 -0
  708. package/platforms/ios/App/Podfile +5 -0
  709. package/platforms/ios/App/Podfile.lock +83 -59
  710. package/register-runtime-hooks.js +11 -5
  711. package/registry/app-registry.d.ts +14 -0
  712. package/registry/app-registry.d.ts.map +1 -0
  713. package/registry/app-registry.js +29 -0
  714. package/registry/entries/apps/app-polymarket.json +31 -0
  715. package/registry/entries/apps/clawville.json +27 -0
  716. package/registry/entries/apps/companion.json +28 -0
  717. package/registry/entries/apps/database-viewer.json +27 -0
  718. package/registry/entries/apps/defense-of-the-agents.json +27 -0
  719. package/registry/entries/apps/documents.json +30 -0
  720. package/registry/entries/apps/feed.json +27 -0
  721. package/registry/entries/apps/hyperliquid.json +31 -0
  722. package/registry/entries/apps/log-viewer.json +27 -0
  723. package/registry/entries/apps/memory-viewer.json +27 -0
  724. package/registry/entries/apps/model-tester.json +31 -0
  725. package/registry/entries/apps/plugin-viewer.json +27 -0
  726. package/registry/entries/apps/relationship-viewer.json +27 -0
  727. package/registry/entries/apps/runtime-debugger.json +27 -0
  728. package/registry/entries/apps/shopify.json +31 -0
  729. package/registry/entries/apps/skills-viewer.json +27 -0
  730. package/registry/entries/apps/steward.json +31 -0
  731. package/registry/entries/apps/training.json +54 -0
  732. package/registry/entries/apps/trajectory-viewer.json +27 -0
  733. package/registry/entries/apps/vincent.json +31 -0
  734. package/registry/entries/connectors/bluebubbles.json +99 -0
  735. package/registry/entries/connectors/bluesky.json +173 -0
  736. package/registry/entries/connectors/discord.json +119 -0
  737. package/registry/entries/connectors/farcaster.json +174 -0
  738. package/registry/entries/connectors/feishu.json +79 -0
  739. package/registry/entries/connectors/google-chat.json +120 -0
  740. package/registry/entries/connectors/google.json +82 -0
  741. package/registry/entries/connectors/imessage.json +96 -0
  742. package/registry/entries/connectors/instagram.json +64 -0
  743. package/registry/entries/connectors/line.json +86 -0
  744. package/registry/entries/connectors/matrix.json +94 -0
  745. package/registry/entries/connectors/mattermost.json +110 -0
  746. package/registry/entries/connectors/msteams.json +104 -0
  747. package/registry/entries/connectors/nextcloud-talk.json +104 -0
  748. package/registry/entries/connectors/nostr.json +70 -0
  749. package/registry/entries/connectors/signal.json +81 -0
  750. package/registry/entries/connectors/slack.json +102 -0
  751. package/registry/entries/connectors/telegram.json +71 -0
  752. package/registry/entries/connectors/tlon.json +94 -0
  753. package/registry/entries/connectors/twitch.json +110 -0
  754. package/registry/entries/connectors/whatsapp.json +113 -0
  755. package/registry/entries/connectors/x.json +231 -0
  756. package/registry/entries/connectors/zalo.json +112 -0
  757. package/registry/entries/connectors/zalouser.json +122 -0
  758. package/registry/entries/plugins/agent-orchestrator.json +33 -0
  759. package/registry/entries/plugins/agent-skills.json +72 -0
  760. package/registry/entries/plugins/anthropic.json +73 -0
  761. package/registry/entries/plugins/app-control.json +23 -0
  762. package/registry/entries/plugins/auto-trader.json +203 -0
  763. package/registry/entries/plugins/background-runner.json +26 -0
  764. package/registry/entries/plugins/blooio.json +102 -0
  765. package/registry/entries/plugins/browser.json +75 -0
  766. package/registry/entries/plugins/cli.json +40 -0
  767. package/registry/entries/plugins/clipboard.json +44 -0
  768. package/registry/entries/plugins/coding-tools.json +71 -0
  769. package/registry/entries/plugins/commands.json +63 -0
  770. package/registry/entries/plugins/computeruse.json +74 -0
  771. package/registry/entries/plugins/copilot-proxy.json +93 -0
  772. package/registry/entries/plugins/directives.json +63 -0
  773. package/registry/entries/plugins/edge-tts.json +97 -0
  774. package/registry/entries/plugins/elevenlabs.json +169 -0
  775. package/registry/entries/plugins/elizacloud.json +208 -0
  776. package/registry/entries/plugins/evm.json +134 -0
  777. package/registry/entries/plugins/experience.json +34 -0
  778. package/registry/entries/plugins/facewear.json +131 -0
  779. package/registry/entries/plugins/form.json +26 -0
  780. package/registry/entries/plugins/github.json +93 -0
  781. package/registry/entries/plugins/gmail-watch.json +25 -0
  782. package/registry/entries/plugins/goals.json +77 -0
  783. package/registry/entries/plugins/google-genai.json +106 -0
  784. package/registry/entries/plugins/groq.json +93 -0
  785. package/registry/entries/plugins/hedera.json +48 -0
  786. package/registry/entries/plugins/inmemorydb.json +25 -0
  787. package/registry/entries/plugins/linear.json +51 -0
  788. package/registry/entries/plugins/local-inference.json +137 -0
  789. package/registry/entries/plugins/local-storage.json +36 -0
  790. package/registry/entries/plugins/localdb.json +25 -0
  791. package/registry/entries/plugins/mcp.json +44 -0
  792. package/registry/entries/plugins/memory.json +124 -0
  793. package/registry/entries/plugins/minecraft.json +79 -0
  794. package/registry/entries/plugins/moltbook.json +83 -0
  795. package/registry/entries/plugins/music.json +155 -0
  796. package/registry/entries/plugins/mysticism.json +48 -0
  797. package/registry/entries/plugins/nearai.json +82 -0
  798. package/registry/entries/plugins/ngrok.json +69 -0
  799. package/registry/entries/plugins/ollama.json +96 -0
  800. package/registry/entries/plugins/openai.json +189 -0
  801. package/registry/entries/plugins/openrouter.json +188 -0
  802. package/registry/entries/plugins/pdf.json +26 -0
  803. package/registry/entries/plugins/plugin-manager.json +23 -0
  804. package/registry/entries/plugins/prose.json +48 -0
  805. package/registry/entries/plugins/rlm.json +26 -0
  806. package/registry/entries/plugins/roblox.json +88 -0
  807. package/registry/entries/plugins/rss.json +64 -0
  808. package/registry/entries/plugins/s3-storage.json +91 -0
  809. package/registry/entries/plugins/scheduling.json +35 -0
  810. package/registry/entries/plugins/shell.json +94 -0
  811. package/registry/entries/plugins/social-alpha.json +72 -0
  812. package/registry/entries/plugins/tailscale.json +81 -0
  813. package/registry/entries/plugins/tee.json +53 -0
  814. package/registry/entries/plugins/todos.json +26 -0
  815. package/registry/entries/plugins/trajectory-logger.json +33 -0
  816. package/registry/entries/plugins/trust.json +39 -0
  817. package/registry/entries/plugins/tts.json +71 -0
  818. package/registry/entries/plugins/tunnel.json +45 -0
  819. package/registry/entries/plugins/twilio.json +168 -0
  820. package/registry/entries/plugins/vercel-ai-gateway.json +128 -0
  821. package/registry/entries/plugins/video.json +23 -0
  822. package/registry/entries/plugins/vision.json +43 -0
  823. package/registry/entries/plugins/webhooks.json +23 -0
  824. package/registry/entries/plugins/workflow.json +25 -0
  825. package/registry/entries/plugins/xai.json +75 -0
  826. package/registry/index.d.ts +2 -1
  827. package/registry/index.d.ts.map +1 -1
  828. package/registry/index.js +46 -12
  829. package/registry/loader.d.ts +2 -1
  830. package/registry/loader.d.ts.map +1 -1
  831. package/registry/loader.js +49 -2
  832. package/registry/schema.d.ts +244 -34
  833. package/registry/schema.d.ts.map +1 -1
  834. package/registry/schema.js +36 -0
  835. package/runtime/android-avf-microdroid-bridge.d.ts +29 -0
  836. package/runtime/android-avf-microdroid-bridge.d.ts.map +1 -0
  837. package/runtime/android-avf-microdroid-bridge.js +149 -0
  838. package/runtime/api-dev-settings-banner.d.ts.map +1 -1
  839. package/runtime/api-dev-settings-banner.js +5 -13
  840. package/runtime/app-core-runtime-hooks.d.ts +21 -0
  841. package/runtime/app-core-runtime-hooks.d.ts.map +1 -0
  842. package/runtime/app-core-runtime-hooks.js +10 -0
  843. package/runtime/autonomy-policy.d.ts +2 -0
  844. package/runtime/autonomy-policy.d.ts.map +1 -0
  845. package/runtime/autonomy-policy.js +4 -0
  846. package/runtime/desktop/AppWindowRenderer.d.ts +17 -0
  847. package/runtime/desktop/AppWindowRenderer.d.ts.map +1 -0
  848. package/runtime/desktop/AppWindowRenderer.js +360 -0
  849. package/runtime/desktop/DesktopSurfaceNavigationRuntime.d.ts +2 -0
  850. package/runtime/desktop/DesktopSurfaceNavigationRuntime.d.ts.map +1 -0
  851. package/runtime/desktop/DesktopSurfaceNavigationRuntime.js +41 -0
  852. package/runtime/desktop/DesktopTrayRuntime.d.ts +2 -0
  853. package/runtime/desktop/DesktopTrayRuntime.d.ts.map +1 -0
  854. package/runtime/desktop/DesktopTrayRuntime.js +174 -0
  855. package/runtime/desktop/DetachedShellRoot.d.ts +10 -0
  856. package/runtime/desktop/DetachedShellRoot.d.ts.map +1 -0
  857. package/runtime/desktop/DetachedShellRoot.js +111 -0
  858. package/runtime/desktop/index.d.ts +6 -0
  859. package/runtime/desktop/index.d.ts.map +1 -0
  860. package/runtime/desktop/index.js +5 -0
  861. package/runtime/desktop/tray-menu.d.ts +20 -0
  862. package/runtime/desktop/tray-menu.d.ts.map +1 -0
  863. package/runtime/desktop/tray-menu.js +143 -0
  864. package/runtime/dev-server.d.ts +1 -1
  865. package/runtime/dev-server.d.ts.map +1 -1
  866. package/runtime/dev-server.js +93 -17
  867. package/runtime/eliza.d.ts +75 -1
  868. package/runtime/eliza.d.ts.map +1 -1
  869. package/runtime/eliza.js +596 -122
  870. package/runtime/ensure-text-to-speech-handler.d.ts.map +1 -1
  871. package/runtime/ensure-text-to-speech-handler.js +10 -3
  872. package/runtime/mobile-safe-runtime.d.ts +181 -2
  873. package/runtime/mobile-safe-runtime.d.ts.map +1 -1
  874. package/runtime/mobile-safe-runtime.js +1019 -12
  875. package/runtime/mode/remote-forwarder.d.ts.map +1 -1
  876. package/runtime/mode/remote-forwarder.js +2 -2
  877. package/runtime/mode/route-mode-guard.d.ts +1 -2
  878. package/runtime/mode/route-mode-guard.d.ts.map +1 -1
  879. package/runtime/mode/route-mode-guard.js +4 -5
  880. package/runtime/mode/route-mode-matrix.d.ts.map +1 -1
  881. package/runtime/mode/route-mode-matrix.js +14 -1
  882. package/runtime/mode/runtime-mode.d.ts +1 -1
  883. package/runtime/mode/runtime-mode.js +1 -1
  884. package/runtime/runtime-bootstrap-policy.d.ts.map +1 -1
  885. package/runtime/runtime-bootstrap-policy.js +14 -2
  886. package/runtime/telegram-standalone-handler.d.ts.map +1 -1
  887. package/runtime/telegram-standalone-handler.js +10 -9
  888. package/runtime/tts-cache-wiring.d.ts +29 -0
  889. package/runtime/tts-cache-wiring.d.ts.map +1 -0
  890. package/runtime/tts-cache-wiring.js +114 -0
  891. package/runtime/voice-warmup.d.ts +81 -0
  892. package/runtime/voice-warmup.d.ts.map +1 -0
  893. package/runtime/voice-warmup.js +111 -0
  894. package/scripts/android-sms-gateway-template.test.mjs +1014 -0
  895. package/scripts/aosp/README.md +19 -15
  896. package/scripts/aosp/compile-libllama.mjs +1344 -248
  897. package/scripts/aosp/compile-shim.mjs +47 -18
  898. package/scripts/aosp/deploy-pixel.mjs +405 -0
  899. package/scripts/aosp/lib/load-variant-config.mjs +3 -3
  900. package/scripts/aosp/llama-cpp-patches/README.md +8 -8
  901. package/scripts/aosp/llama-cpp-patches/apply-patches.mjs +23 -6
  902. package/scripts/aosp/llama-cpp-patches/polarquant/README.md +37 -0
  903. package/scripts/aosp/llama-cpp-patches/qjl/README.md +37 -0
  904. package/scripts/aosp/seccomp-shim/sigsys-handler-arm64.c +169 -0
  905. package/scripts/aosp/seccomp-shim/sigsys-handler-riscv64.c +217 -0
  906. package/scripts/aosp/smoke-cuttlefish.mjs +34 -4
  907. package/scripts/aosp/stage-default-models.mjs +49 -18
  908. package/scripts/aosp/variant-config-schema.ts +2 -2
  909. package/scripts/assert-required-bundled-packages.test.ts +534 -0
  910. package/scripts/audit-apple-store-sandbox.mjs +146 -0
  911. package/scripts/audit-live-test-surface.mjs +5 -2
  912. package/scripts/build-capacitor-app.mjs +21 -0
  913. package/scripts/build-flatpak.mjs +5 -5
  914. package/scripts/build-helpers/arm64-simd.mjs +72 -0
  915. package/scripts/build-helpers/omnivoice-merged.mjs +87 -0
  916. package/scripts/build-helpers/verify-fused-symbols.mjs +567 -0
  917. package/scripts/build-image.sh +4 -2
  918. package/scripts/build-llama-cpp-mtp.mjs +487 -0
  919. package/scripts/build-native-plugins.mjs +230 -18
  920. package/scripts/build-patched-electrobun-cli.mjs +68 -10
  921. package/scripts/build-win.mjs +1 -1
  922. package/scripts/bun-riscv64/Dockerfile +418 -0
  923. package/scripts/bun-riscv64/README.md +316 -0
  924. package/scripts/bun-riscv64/build.sh +469 -0
  925. package/scripts/bun-riscv64/bun-patches/0001-config-add-riscv64-arch.patch +74 -0
  926. package/scripts/bun-riscv64/bun-patches/0002-flags-add-riscv64-march-mabi.patch +16 -0
  927. package/scripts/bun-riscv64/bun-patches/0003-zig-add-riscv64-target-triple-and-cpu.patch +26 -0
  928. package/scripts/bun-riscv64/bun-patches/0004-webkit-force-local-mode-on-riscv64.patch +33 -0
  929. package/scripts/bun-riscv64/bun-patches/0005-tinycc-disable-on-riscv64.patch +16 -0
  930. package/scripts/bun-riscv64/bun-patches/0006-build-add-riscv64-cli-validation.patch +15 -0
  931. package/scripts/bun-riscv64/bun-patches/0007-deps-per-dep-riscv64-checks.patch +24 -0
  932. package/scripts/bun-riscv64/bun-patches/0008-source-stabilize-riscv64-musl-build.patch +226 -0
  933. package/scripts/bun-riscv64/bun-patches/0009-disable-wasm-streaming-hooks-for-c-loop.patch +162 -0
  934. package/scripts/bun-riscv64/bun-patches/0010-disable-inspector-profiler-for-riscv64-c-loop.patch +80 -0
  935. package/scripts/bun-riscv64/bun-patches/0011-process-arch-add-riscv64.patch +23 -0
  936. package/scripts/bun-riscv64/bun-patches/0012-cpu-features-add-riscv64-fallback.patch +13 -0
  937. package/scripts/bun-riscv64/bun-patches/0013-disable-console-inspector-hooks-for-riscv64-c-loop.patch +43 -0
  938. package/scripts/bun-riscv64/bun-patches/0014-disable-custom-inspector-dispatchers-on-riscv64.patch +127 -0
  939. package/scripts/bun-riscv64/bun-patches/0015-disable-jsc-profiler-builtins-on-riscv64.patch +75 -0
  940. package/scripts/bun-riscv64/bun-patches/0016-node-vm-disable-jit-cached-data-on-riscv64-c-loop.patch +96 -0
  941. package/scripts/bun-riscv64/bun-patches/0017-disable-performance-domjit-signature-on-riscv64-c-loop.patch +34 -0
  942. package/scripts/bun-riscv64/bun-patches/0018-fix-serialized-script-identifier-big-endian-path.patch +19 -0
  943. package/scripts/bun-riscv64/bun-patches/0019-add-wtf-timer-fire-bridge-for-c-loop.patch +24 -0
  944. package/scripts/bun-riscv64/bun-patches/0020-run-riscv64-smoke-test-under-qemu.patch +13 -0
  945. package/scripts/bun-riscv64/bun-patches/0021-fix-riscv64-linux-open-flags.patch +25 -0
  946. package/scripts/bun-riscv64/bun-patches/0022-zlib-riscv64-generic-kernels.patch +25 -0
  947. package/scripts/bun-riscv64/bun-patches/README.md +127 -0
  948. package/scripts/bun-riscv64/bun-version.json +202 -0
  949. package/scripts/bun-riscv64/run-build.sh +162 -0
  950. package/scripts/bun-riscv64/rust-core/0001-riscv64-rust-core-port.patch +868 -0
  951. package/scripts/bun-riscv64/rust-core/0002-second-wave-riscv64-source-gaps.patch +130 -0
  952. package/scripts/bun-riscv64/rust-core/0003-third-wave-riscv64-crash-handler-gaps.patch +78 -0
  953. package/scripts/bun-riscv64/rust-core/0004-rust-target-cpu-riscv64.patch +39 -0
  954. package/scripts/bun-riscv64/rust-core/0005-fifth-wave-riscv64-source-gaps.patch +96 -0
  955. package/scripts/bun-riscv64/rust-core/0006-cpp-wasm-and-inspector-guards-riscv64.patch +91 -0
  956. package/scripts/bun-riscv64/rust-core/0007-bun-alloc-max-align-t-riscv64.patch +36 -0
  957. package/scripts/bun-riscv64/rust-core/0008-workspace-lints-warn-not-deny-riscv64.patch +75 -0
  958. package/scripts/bun-riscv64/rust-core/0009-zigglobalobject-wasm-streaming-guards-riscv64.patch +109 -0
  959. package/scripts/bun-riscv64/rust-core/0010-tcc-externs-stub-on-riscv64.patch +62 -0
  960. package/scripts/bun-riscv64/rust-core/0011-clippy-ptr-cast-lints-warn-riscv64.patch +61 -0
  961. package/scripts/bun-riscv64/rust-core/README.md +80 -0
  962. package/scripts/bun-riscv64/rust-core/webkit-patches/0003-disable-dfg-ftl-on-riscv64.patch +60 -0
  963. package/scripts/bun-riscv64/rust-core/webkit-patches/0004-riscv64-do-not-force-wasm-in-c-loop.patch +31 -0
  964. package/scripts/bun-riscv64/rust-core/webkit-patches/0005-domjit-effect-allow-no-dfg-c-loop.patch +40 -0
  965. package/scripts/bun-riscv64/rust-core/webkit-patches/0006-disable-usewasm-when-webassembly-compiled-out.patch +33 -0
  966. package/scripts/bun-riscv64/rust-core/webkit-patches/0007-restore-dropped-includes-and-llint-fwd-decl.patch +31 -0
  967. package/scripts/bun-riscv64/validate.sh +264 -0
  968. package/scripts/bun-riscv64/webkit-patches/0001-cherry-pick-llint-riscv64.recipe +155 -0
  969. package/scripts/bun-riscv64/webkit-patches/0002-cherry-pick-baseline-jit-riscv64.recipe +40 -0
  970. package/scripts/bun-riscv64/webkit-patches/0003-disable-dfg-ftl-on-riscv64.patch +60 -0
  971. package/scripts/bun-riscv64/webkit-patches/0004-riscv64-do-not-force-wasm-in-c-loop.patch +31 -0
  972. package/scripts/bun-riscv64/webkit-patches/0005-domjit-effect-allow-no-dfg-c-loop.patch +40 -0
  973. package/scripts/bun-riscv64/webkit-patches/0006-disable-usewasm-when-webassembly-compiled-out.patch +33 -0
  974. package/scripts/bun-riscv64/webkit-patches/0007-restore-dropped-includes-and-llint-fwd-decl.patch +72 -0
  975. package/scripts/bun-riscv64/webkit-patches/README.md +146 -0
  976. package/scripts/check-homepage-public-readiness.mjs +353 -0
  977. package/scripts/check-homepage-release-data.mjs +110 -0
  978. package/scripts/check-i18n.mjs +2 -1
  979. package/scripts/check-real-local-chat.ts +147 -0
  980. package/scripts/check-real-local-provisioning.ts +104 -0
  981. package/scripts/check-real-local-reset.ts +249 -0
  982. package/scripts/check-sms-gateway-completion-audit.mjs +428 -0
  983. package/scripts/check-sms-gateway-readiness.mjs +266 -0
  984. package/scripts/clean-repo.mjs +5 -5
  985. package/scripts/codesign-mas.mjs +222 -16
  986. package/scripts/collect-docker-runtime-deps.mjs +229 -0
  987. package/scripts/continue-sms-gateway-work.mjs +121 -0
  988. package/scripts/copy-runtime-node-modules.ts +903 -195
  989. package/scripts/deploy-cloud-api-production-gateway.mjs +52 -0
  990. package/scripts/desktop-build.mjs +655 -101
  991. package/scripts/dev-platform.mjs +346 -102
  992. package/scripts/dev-startup-smoke.mjs +248 -0
  993. package/scripts/dev-ui.mjs +418 -176
  994. package/scripts/disable-local-eliza-workspace.mjs +35 -0
  995. package/scripts/docker-ci-smoke.sh +440 -96
  996. package/scripts/docker-entrypoint.sh +62 -1
  997. package/scripts/docker-entrypoint.test.ts +283 -0
  998. package/scripts/ensure-avatars.mjs +2 -2
  999. package/scripts/ensure-electrobun-core.mjs +1 -1
  1000. package/scripts/ensure-generated-core-proto-js.mjs +1 -1
  1001. package/scripts/ensure-type-package-aliases.mjs +62 -5
  1002. package/scripts/ensure-vision-deps.mjs +20 -1
  1003. package/scripts/entry.ts +1 -1
  1004. package/scripts/ffi-stub/Makefile +64 -0
  1005. package/scripts/ffi-stub/README.md +391 -0
  1006. package/scripts/ffi-stub/asr-ffi-smoke.ts +139 -0
  1007. package/scripts/ffi-stub/ffi-stub.c +539 -0
  1008. package/scripts/ffi-stub/ffi.h +538 -0
  1009. package/scripts/ffi-stub/libelizainference_stub.so +0 -0
  1010. package/scripts/ffi-stub/tts-stream-ffi-smoke.ts +349 -0
  1011. package/scripts/generate-first-run-voicelines.mjs +194 -0
  1012. package/scripts/generate-plugin-index.js +4 -3
  1013. package/scripts/generate-static-asset-manifest.mjs +1 -1
  1014. package/scripts/i18n-dynamic-keys.json +5 -5
  1015. package/scripts/init-submodules.mjs +2 -2
  1016. package/scripts/install-android-sms-gateway.md +177 -0
  1017. package/scripts/install-android-sms-gateway.mjs +1088 -0
  1018. package/scripts/ios-xcframework/README.md +74 -72
  1019. package/scripts/ios-xcframework/build-xcframework.mjs +204 -43
  1020. package/scripts/ios-xcframework/run-physical-device-smoke.mjs +1943 -0
  1021. package/scripts/ios-xcframework/runtime-symbol-shim.c +450 -0
  1022. package/scripts/kernel-patches/cpu-polar-kernels.mjs +441 -0
  1023. package/scripts/kernel-patches/cpu-simd-kernels.mjs +253 -0
  1024. package/scripts/kernel-patches/cpu-thread-parallelism.mjs +368 -0
  1025. package/scripts/kernel-patches/cuda-kernels.mjs +117 -0
  1026. package/scripts/kernel-patches/metal-kernels.mjs +1698 -109
  1027. package/scripts/kernel-patches/server-omnivoice-route.mjs +718 -0
  1028. package/scripts/kernel-patches/server-structured-output.mjs +279 -0
  1029. package/scripts/kernel-patches/vulkan-dispatch-log.mjs +166 -0
  1030. package/scripts/kernel-patches/vulkan-dispatch-log.test.mjs +50 -0
  1031. package/scripts/kernel-patches/vulkan-dispatch-patches/01-vulkan-shaders-gen.patch +30 -16
  1032. package/scripts/kernel-patches/vulkan-dispatch-patches/02-ggml-vulkan-pipelines.patch +75 -30
  1033. package/scripts/kernel-patches/vulkan-kernels.mjs +800 -49
  1034. package/scripts/lib/agent-source-watcher.mjs +174 -0
  1035. package/scripts/lib/agent-source-watcher.test.mjs +184 -0
  1036. package/scripts/lib/api-supervisor.mjs +78 -9
  1037. package/scripts/lib/api-supervisor.test.mjs +121 -0
  1038. package/scripts/lib/app-dir.mjs +2 -16
  1039. package/scripts/lib/apple-entitlement-audit.mjs +655 -0
  1040. package/scripts/lib/apple-entitlement-audit.test.mjs +144 -0
  1041. package/scripts/lib/bun-version-guard.mjs +13 -13
  1042. package/scripts/lib/capacitor-plugin-build-needed.mjs +4 -3
  1043. package/scripts/lib/capacitor-plugin-names.mjs +30 -14
  1044. package/scripts/lib/desktop-preflight.mjs +9 -5
  1045. package/scripts/lib/desktop-startup-embedding-warmup-policy.mjs +51 -0
  1046. package/scripts/lib/desktop-startup-embedding-warmup-policy.test.mjs +55 -0
  1047. package/scripts/lib/duet-bridge.d.mts +63 -0
  1048. package/scripts/lib/duet-bridge.mjs +193 -0
  1049. package/scripts/lib/node-path-env.mjs +4 -2
  1050. package/scripts/lib/orchestrator-desktop-dev-banner.mjs +12 -3
  1051. package/scripts/lib/patch-bun-exports.mjs +90 -27
  1052. package/scripts/lib/patch-bun-exports.test.mjs +79 -0
  1053. package/scripts/lib/renderer-build-action.mjs +35 -0
  1054. package/scripts/lib/renderer-build-action.test.mjs +70 -0
  1055. package/scripts/lib/stage-android-agent.mjs +748 -99
  1056. package/scripts/lib/sync-eliza-env-aliases.mjs +3 -25
  1057. package/scripts/lib/ui-smoke-stub-decision.mjs +33 -0
  1058. package/scripts/lib/ui-smoke-stub-decision.test.mjs +46 -0
  1059. package/scripts/lib/vite-renderer-dist-stale.mjs +5 -0
  1060. package/scripts/lib/voice-latency-report.mjs +154 -0
  1061. package/scripts/lifeops-prompt-benchmark.ts +21 -12
  1062. package/scripts/link-docker-local-app-packages.mjs +103 -36
  1063. package/scripts/local-stt-bench.ts +192 -0
  1064. package/scripts/maintain-cloud-api-production-gateway.mjs +54 -0
  1065. package/scripts/mas-smoke.mjs +459 -0
  1066. package/scripts/mas-smoke.test.mjs +220 -0
  1067. package/scripts/mobile-auth-simulator-smoke.mjs +0 -1
  1068. package/scripts/normalize-eliza-capture.ts +97 -0
  1069. package/scripts/omnivoice-fuse/prepare.mjs +2543 -23
  1070. package/scripts/pack-upstreams.mjs +65 -5
  1071. package/scripts/package-electrobun-linux.mjs +303 -0
  1072. package/scripts/patch-deps.mjs +5 -3
  1073. package/scripts/patches/llama-asr-word-timestamps.patch +218 -0
  1074. package/scripts/patches/llama-mobile-kokoro-tts.patch +480 -0
  1075. package/scripts/playwright-ui-live-stack.ts +194 -49
  1076. package/scripts/playwright-ui-smoke-api-stub.mjs +3501 -109
  1077. package/scripts/pre-review-local.mjs +2 -2
  1078. package/scripts/prepare-ios-cocoapods.sh +41 -3
  1079. package/scripts/release-check.ts +180 -84
  1080. package/scripts/release-workflow-drift.test.ts +57 -0
  1081. package/scripts/relink-workspace-packages-to-dist.mjs +21 -4
  1082. package/scripts/rt.mjs +16 -1
  1083. package/scripts/run-biome-check.mjs +1 -1
  1084. package/scripts/run-coding-agent-e2e.mjs +3 -3
  1085. package/scripts/run-eliza-app-core-script.mjs +34 -0
  1086. package/scripts/run-local-plugin-live-smoke.mjs +71 -2
  1087. package/scripts/run-mobile-build-android-app-actions.test.mjs +426 -0
  1088. package/scripts/run-mobile-build.mjs +4757 -607
  1089. package/scripts/run-node-runtime.mjs +184 -7
  1090. package/scripts/run-node-runtime.test.mjs +167 -0
  1091. package/scripts/run-node-tsx.mjs +80 -33
  1092. package/scripts/run-node.mjs +41 -1
  1093. package/scripts/run-production-build.mjs +34 -27
  1094. package/scripts/run-release-check.mjs +19 -0
  1095. package/scripts/run-release-contract-suite.mjs +107 -14
  1096. package/scripts/run-ui-smoke-playwright-suite.mjs +0 -2
  1097. package/scripts/runtime-package-manifest.ts +21 -3
  1098. package/scripts/setup-upstreams.mjs +42 -1
  1099. package/scripts/sms-gateway-status.mjs +194 -0
  1100. package/scripts/stage-android-agent.test.mjs +97 -0
  1101. package/scripts/stage-desktop-fused-lib.mjs +424 -0
  1102. package/scripts/stage-elizavoice-lib.mjs +363 -0
  1103. package/scripts/startup-integration-script-drift.test.ts +82 -4
  1104. package/scripts/streaming-pipeline-bench.ts +543 -0
  1105. package/scripts/sync-homepage-porkbun-dns.mjs +262 -0
  1106. package/scripts/test-sms-gateway-software.mjs +100 -0
  1107. package/scripts/type-audit.mjs +1 -1
  1108. package/scripts/validate-bluebubbles-outbound.mjs +293 -0
  1109. package/scripts/validate-cdn-assets.mjs +15 -7
  1110. package/scripts/validate-regression-matrix.mjs +109 -8
  1111. package/scripts/verify-android-sms-gateway-e2e.mjs +362 -0
  1112. package/scripts/verify-bluebubbles-gateway-e2e.mjs +191 -0
  1113. package/scripts/verify-bluebubbles-inbound-readiness.mjs +88 -0
  1114. package/scripts/verify-cloud-api-production-deploy.mjs +87 -0
  1115. package/scripts/verify-cloud-sms-onboarding-flow.mjs +336 -0
  1116. package/scripts/voice/freeze-voice.mjs +521 -0
  1117. package/scripts/voice-attribution-smoke.ts +538 -0
  1118. package/scripts/voice-create-profile.mjs +379 -0
  1119. package/scripts/voice-duet.mjs +1355 -0
  1120. package/scripts/voice-e2e-hardware.ts +871 -0
  1121. package/scripts/voice-interactive.mjs +1750 -0
  1122. package/scripts/voice-latency-report.mjs +96 -0
  1123. package/scripts/voice-latency-report.test.ts +176 -0
  1124. package/scripts/voice-preset/build-default-voice-preset.mjs +249 -0
  1125. package/scripts/voice-preset/build-onboarding-voice.mjs +281 -0
  1126. package/scripts/watch-sms-gateway-readiness.mjs +303 -0
  1127. package/scripts/write-homepage-release-data.mjs +458 -26
  1128. package/security/agent-vault-id.d.ts +1 -1
  1129. package/security/agent-vault-id.js +1 -1
  1130. package/security/hydrate-wallet-keys-from-platform-store.d.ts.map +1 -1
  1131. package/security/hydrate-wallet-keys-from-platform-store.js +23 -14
  1132. package/security/platform-secure-store-node.d.ts +2 -2
  1133. package/security/platform-secure-store-node.js +3 -3
  1134. package/security/wallet-os-store-actions.d.ts +0 -9
  1135. package/security/wallet-os-store-actions.d.ts.map +1 -1
  1136. package/security/wallet-os-store-actions.js +3 -10
  1137. package/services/account-pool.d.ts +23 -14
  1138. package/services/account-pool.d.ts.map +1 -1
  1139. package/services/account-pool.js +86 -24
  1140. package/services/account-usage.d.ts.map +1 -1
  1141. package/services/account-usage.js +2 -5
  1142. package/services/ambient-audio/consent.d.ts +9 -0
  1143. package/services/ambient-audio/consent.d.ts.map +1 -0
  1144. package/services/ambient-audio/consent.js +28 -0
  1145. package/services/ambient-audio/index.d.ts +7 -0
  1146. package/services/ambient-audio/index.d.ts.map +1 -0
  1147. package/services/ambient-audio/index.js +4 -0
  1148. package/services/ambient-audio/replay-buffer.d.ts +14 -0
  1149. package/services/ambient-audio/replay-buffer.d.ts.map +1 -0
  1150. package/services/ambient-audio/replay-buffer.js +66 -0
  1151. package/services/ambient-audio/response-gate.d.ts +3 -0
  1152. package/services/ambient-audio/response-gate.d.ts.map +1 -0
  1153. package/services/ambient-audio/response-gate.js +33 -0
  1154. package/services/ambient-audio/service.d.ts +22 -0
  1155. package/services/ambient-audio/service.d.ts.map +1 -0
  1156. package/services/ambient-audio/service.js +47 -0
  1157. package/services/ambient-audio/types.d.ts +42 -0
  1158. package/services/ambient-audio/types.d.ts.map +1 -0
  1159. package/services/app-updates/update-policy.d.ts +64 -0
  1160. package/services/app-updates/update-policy.d.ts.map +1 -0
  1161. package/services/app-updates/update-policy.js +228 -0
  1162. package/services/auth-store.d.ts +37 -1
  1163. package/services/auth-store.d.ts.map +1 -1
  1164. package/services/auth-store.js +59 -26
  1165. package/services/cloud-jwks-store.d.ts +3 -3
  1166. package/services/cloud-jwks-store.d.ts.map +1 -1
  1167. package/services/cloud-jwks-store.js +5 -8
  1168. package/services/coding-account-bridge.d.ts +71 -0
  1169. package/services/coding-account-bridge.d.ts.map +1 -0
  1170. package/services/coding-account-bridge.js +267 -0
  1171. package/services/connector-target-catalog.d.ts +10 -3
  1172. package/services/connector-target-catalog.d.ts.map +1 -1
  1173. package/services/connector-target-catalog.js +7 -4
  1174. package/services/credential-tunnel-service.d.ts +66 -0
  1175. package/services/credential-tunnel-service.d.ts.map +1 -0
  1176. package/services/credential-tunnel-service.js +227 -0
  1177. package/services/github-credentials.d.ts +1 -1
  1178. package/services/github-credentials.js +1 -1
  1179. package/services/inference-abort.d.ts +47 -0
  1180. package/services/inference-abort.d.ts.map +1 -0
  1181. package/services/inference-abort.js +76 -0
  1182. package/services/persistence.d.ts +2 -3
  1183. package/services/persistence.d.ts.map +1 -1
  1184. package/services/persistence.js +2 -3
  1185. package/services/phrase-chunked-tts.d.ts +136 -0
  1186. package/services/phrase-chunked-tts.d.ts.map +1 -0
  1187. package/services/phrase-chunked-tts.js +208 -0
  1188. package/services/sandbox-registry.d.ts +78 -0
  1189. package/services/sandbox-registry.d.ts.map +1 -0
  1190. package/services/sandbox-registry.js +323 -0
  1191. package/services/secrets-manager-installer.d.ts +8 -1
  1192. package/services/secrets-manager-installer.d.ts.map +1 -1
  1193. package/services/secrets-manager-installer.js +27 -2
  1194. package/services/sensitive-requests/cloud-link-adapter.d.ts +15 -0
  1195. package/services/sensitive-requests/cloud-link-adapter.d.ts.map +1 -0
  1196. package/services/sensitive-requests/cloud-link-adapter.js +73 -0
  1197. package/services/sensitive-requests/index.d.ts +27 -0
  1198. package/services/sensitive-requests/index.d.ts.map +1 -0
  1199. package/services/sensitive-requests/index.js +51 -0
  1200. package/services/sensitive-requests/instruct-dm-only-adapter.d.ts +14 -0
  1201. package/services/sensitive-requests/instruct-dm-only-adapter.d.ts.map +1 -0
  1202. package/services/sensitive-requests/instruct-dm-only-adapter.js +22 -0
  1203. package/services/sensitive-requests/owner-app-inline-adapter.d.ts +3 -0
  1204. package/services/sensitive-requests/owner-app-inline-adapter.d.ts.map +1 -0
  1205. package/services/sensitive-requests/owner-app-inline-adapter.js +146 -0
  1206. package/services/sensitive-requests/owner-app-oauth-adapter.d.ts +3 -0
  1207. package/services/sensitive-requests/owner-app-oauth-adapter.d.ts.map +1 -0
  1208. package/services/sensitive-requests/owner-app-oauth-adapter.js +156 -0
  1209. package/services/sensitive-requests/public-link-adapter.d.ts +14 -0
  1210. package/services/sensitive-requests/public-link-adapter.d.ts.map +1 -0
  1211. package/services/sensitive-requests/public-link-adapter.js +86 -0
  1212. package/services/sensitive-requests/tunnel-link-adapter.d.ts +17 -0
  1213. package/services/sensitive-requests/tunnel-link-adapter.d.ts.map +1 -0
  1214. package/services/sensitive-requests/tunnel-link-adapter.js +38 -0
  1215. package/services/steward-credentials.d.ts +1 -1
  1216. package/services/steward-credentials.d.ts.map +1 -1
  1217. package/services/steward-credentials.js +10 -6
  1218. package/services/steward-sidecar/health-check.d.ts.map +1 -1
  1219. package/services/steward-sidecar/health-check.js +4 -3
  1220. package/services/steward-sidecar/process-management.d.ts +1 -1
  1221. package/services/steward-sidecar/process-management.d.ts.map +1 -1
  1222. package/services/steward-sidecar/process-management.js +9 -3
  1223. package/services/steward-sidecar/types.d.ts +1 -1
  1224. package/services/steward-sidecar/types.d.ts.map +1 -1
  1225. package/services/steward-sidecar/wallet-setup.d.ts.map +1 -1
  1226. package/services/steward-sidecar/wallet-setup.js +8 -7
  1227. package/services/steward-sidecar.d.ts +2 -2
  1228. package/services/steward-sidecar.d.ts.map +1 -1
  1229. package/services/steward-sidecar.js +27 -19
  1230. package/services/task-host-capabilities.d.ts +60 -0
  1231. package/services/task-host-capabilities.d.ts.map +1 -0
  1232. package/services/task-host-capabilities.js +122 -0
  1233. package/services/tool-call-cache/index.d.ts +2 -2
  1234. package/services/tool-call-cache/index.d.ts.map +1 -1
  1235. package/services/tool-call-cache/index.js +1 -1
  1236. package/services/trigger-event-bridge.js +1 -1
  1237. package/services/tunnel-to-mobile/index.d.ts +2 -0
  1238. package/services/tunnel-to-mobile/index.d.ts.map +1 -0
  1239. package/services/tunnel-to-mobile/index.js +1 -0
  1240. package/services/tunnel-to-mobile/tunnel-to-mobile-client.d.ts +105 -0
  1241. package/services/tunnel-to-mobile/tunnel-to-mobile-client.d.ts.map +1 -0
  1242. package/services/tunnel-to-mobile/tunnel-to-mobile-client.js +190 -0
  1243. package/services/vault-bootstrap.d.ts.map +1 -1
  1244. package/services/vault-bootstrap.js +48 -21
  1245. package/services/vault-mirror.d.ts +1 -1
  1246. package/services/vault-mirror.d.ts.map +1 -1
  1247. package/services/vault-mirror.js +29 -6
  1248. package/services/voice-profiles/diarization-pipeline.d.ts +6 -0
  1249. package/services/voice-profiles/diarization-pipeline.d.ts.map +1 -0
  1250. package/services/voice-profiles/diarization-pipeline.js +20 -0
  1251. package/services/voice-profiles/index.d.ts +12 -0
  1252. package/services/voice-profiles/index.d.ts.map +1 -0
  1253. package/services/voice-profiles/index.js +5 -0
  1254. package/services/voice-profiles/nickname-evaluator.d.ts +14 -0
  1255. package/services/voice-profiles/nickname-evaluator.d.ts.map +1 -0
  1256. package/services/voice-profiles/nickname-evaluator.js +46 -0
  1257. package/services/voice-profiles/owner-confidence.d.ts +10 -0
  1258. package/services/voice-profiles/owner-confidence.d.ts.map +1 -0
  1259. package/services/voice-profiles/owner-confidence.js +38 -0
  1260. package/services/voice-profiles/private-challenge.d.ts +20 -0
  1261. package/services/voice-profiles/private-challenge.d.ts.map +1 -0
  1262. package/services/voice-profiles/private-challenge.js +44 -0
  1263. package/services/voice-profiles/store.d.ts +21 -0
  1264. package/services/voice-profiles/store.d.ts.map +1 -0
  1265. package/services/voice-profiles/store.js +50 -0
  1266. package/services/voice-profiles/types.d.ts +38 -0
  1267. package/services/voice-profiles/types.d.ts.map +1 -0
  1268. package/services/voice-profiles/types.js +1 -0
  1269. package/styles/electrobun-mac-window-drag.css +4 -4
  1270. package/test/helpers/__tests__/live-agent-test.smoke.test.ts +43 -70
  1271. package/test/helpers/browser-mocks.ts +2 -2
  1272. package/test/helpers/conditional-tests.ts +2 -2
  1273. package/test/helpers/i18n.ts +1 -1
  1274. package/test/helpers/live-agent-test.ts +537 -551
  1275. package/test/helpers/live-provider.test.ts +4 -4
  1276. package/test/helpers/live-provider.ts +41 -7
  1277. package/test/helpers/live-runtime-server.ts +4 -4
  1278. package/test/helpers/pglite-runtime.ts +1 -1
  1279. package/test/helpers/real-runtime.ts +72 -20
  1280. package/test/helpers/trajectory-harness.ts +11 -7
  1281. package/test/scripts/start-eliza-live.ts +9 -0
  1282. package/test/scripts/test-parallel.mjs +1 -1
  1283. package/test/scripts/test-root-unit.mjs +6 -7
  1284. package/ui-compat.d.ts +13 -2
  1285. package/ui-compat.d.ts.map +1 -1
  1286. package/ui-compat.js +19 -3
  1287. package/api/auth-pairing-compat-routes.d.ts +0 -17
  1288. package/api/auth-pairing-compat-routes.d.ts.map +0 -1
  1289. package/api/auth-pairing-compat-routes.js +0 -301
  1290. package/api/local-inference-compat-routes.d.ts +0 -16
  1291. package/api/local-inference-compat-routes.d.ts.map +0 -1
  1292. package/api/local-inference-compat-routes.js +0 -617
  1293. package/api/onboarding-compat-routes.d.ts +0 -4
  1294. package/api/onboarding-compat-routes.d.ts.map +0 -1
  1295. package/api/onboarding-compat-routes.js +0 -207
  1296. package/api/plugins-compat-routes.d.ts +0 -103
  1297. package/api/plugins-compat-routes.d.ts.map +0 -1
  1298. package/api/plugins-compat-routes.js +0 -1181
  1299. package/api/server-onboarding-compat.d.ts +0 -31
  1300. package/api/server-onboarding-compat.d.ts.map +0 -1
  1301. package/api/server-onboarding-compat.js +0 -283
  1302. package/benchmark/cua-routes.d.ts +0 -10
  1303. package/benchmark/cua-routes.d.ts.map +0 -1
  1304. package/benchmark/cua-routes.js +0 -179
  1305. package/benchmark/mock-plugin-base.d.ts +0 -9
  1306. package/benchmark/mock-plugin-base.d.ts.map +0 -1
  1307. package/benchmark/mock-plugin-base.js +0 -325
  1308. package/cli/parse-duration.d.ts +0 -5
  1309. package/cli/parse-duration.d.ts.map +0 -1
  1310. package/cli/parse-duration.js +0 -27
  1311. package/patches/llama-cpp-capacitor@0.1.5.patch +0 -2387
  1312. package/platform/agent-browser-stub.d.ts +0 -27
  1313. package/platform/agent-browser-stub.d.ts.map +0 -1
  1314. package/platform/agent-browser-stub.js +0 -16
  1315. package/platforms/android/app/src/androidTest/java/com/getcapacitor/myapp/ExampleInstrumentedTest.java +0 -26
  1316. package/platforms/android/app/src/main/res/drawable/ic_launcher_background.xml +0 -170
  1317. package/platforms/android/app/src/main/res/drawable-v24/ic_launcher_foreground.xml +0 -34
  1318. package/platforms/android/app/src/test/java/com/getcapacitor/myapp/ExampleUnitTest.java +0 -18
  1319. package/platforms/electrobun/assets/appIcon.iconset/icon_512x512@2x.png +0 -0
  1320. package/platforms/electrobun/assets/appIcon.png +0 -0
  1321. package/platforms/electrobun/scripts/build-whisper-universal.sh +0 -137
  1322. package/platforms/electrobun/scripts/build-whisper.sh +0 -95
  1323. package/platforms/electrobun/src/libMacWindowEffects.dylib +0 -0
  1324. package/platforms/electrobun/src/native/whisper.ts +0 -280
  1325. package/platforms/ios/App/App/Assets.xcassets/Splash.imageset/splash-2732x2732-1.png +0 -0
  1326. package/platforms/ios/App/App/Assets.xcassets/Splash.imageset/splash-2732x2732-2.png +0 -0
  1327. package/platforms/ios/App/App/Assets.xcassets/Splash.imageset/splash-2732x2732.png +0 -0
  1328. package/registry/generate-apps.d.ts +0 -2
  1329. package/registry/generate-apps.d.ts.map +0 -1
  1330. package/registry/generate-apps.js +0 -338
  1331. package/registry/generate.d.ts +0 -2
  1332. package/registry/generate.d.ts.map +0 -1
  1333. package/registry/generate.js +0 -506
  1334. package/runtime/embedding-manager-support.d.ts +0 -77
  1335. package/runtime/embedding-manager-support.d.ts.map +0 -1
  1336. package/runtime/embedding-manager-support.js +0 -309
  1337. package/runtime/embedding-presets.d.ts +0 -5
  1338. package/runtime/embedding-presets.d.ts.map +0 -1
  1339. package/runtime/embedding-presets.js +0 -47
  1340. package/runtime/embedding-warmup-policy.d.ts +0 -13
  1341. package/runtime/embedding-warmup-policy.d.ts.map +0 -1
  1342. package/runtime/embedding-warmup-policy.js +0 -33
  1343. package/runtime/ensure-local-inference-handler.d.ts +0 -25
  1344. package/runtime/ensure-local-inference-handler.d.ts.map +0 -1
  1345. package/runtime/ensure-local-inference-handler.js +0 -389
  1346. package/runtime/mobile-local-inference-gate.d.ts +0 -21
  1347. package/runtime/mobile-local-inference-gate.d.ts.map +0 -1
  1348. package/runtime/mobile-local-inference-gate.js +0 -24
  1349. package/scripts/aosp/avd-test.mjs +0 -403
  1350. package/scripts/aosp/boot-validate.mjs +0 -536
  1351. package/scripts/aosp/build-aosp.mjs +0 -448
  1352. package/scripts/aosp/build-bootanimation.mjs +0 -178
  1353. package/scripts/aosp/capture-screens.mjs +0 -325
  1354. package/scripts/aosp/e2e-validate.mjs +0 -225
  1355. package/scripts/aosp/lint-init-rc.mjs +0 -258
  1356. package/scripts/aosp/llama-shim/eliza_llama_shim.c +0 -276
  1357. package/scripts/aosp/sim.mjs +0 -277
  1358. package/scripts/aosp/sync-to-aosp.mjs +0 -134
  1359. package/scripts/aosp/validate.mjs +0 -1273
  1360. package/scripts/build-llama-cpp-dflash.mjs +0 -1866
  1361. package/scripts/generate-onboarding-voicelines.mjs +0 -194
  1362. package/scripts/generated/static-asset-manifest.json +0 -4
  1363. package/scripts/normalize-parallax-capture.ts +0 -97
  1364. package/scripts/omnivoice-fuse/Makefile +0 -44
  1365. package/scripts/omnivoice-fuse/README.md +0 -266
  1366. package/scripts/omnivoice-fuse/cmake-graft.mjs +0 -180
  1367. package/scripts/omnivoice-fuse/ffi-stub.c +0 -222
  1368. package/scripts/omnivoice-fuse/ffi.h +0 -158
  1369. package/scripts/omnivoice-fuse/libelizainference_stub.dylib +0 -0
  1370. package/scripts/omnivoice-fuse/verify-symbols.mjs +0 -138
  1371. package/security/cloud-secret-store.d.ts +0 -34
  1372. package/security/cloud-secret-store.d.ts.map +0 -1
  1373. package/security/cloud-secret-store.js +0 -65
  1374. package/security/export-guard.d.ts +0 -34
  1375. package/security/export-guard.d.ts.map +0 -1
  1376. package/security/export-guard.js +0 -127
  1377. package/services/local-inference/__stress__/cache-stress-helpers.d.ts +0 -76
  1378. package/services/local-inference/__stress__/cache-stress-helpers.d.ts.map +0 -1
  1379. package/services/local-inference/__stress__/cache-stress-helpers.js +0 -238
  1380. package/services/local-inference/active-model.d.ts +0 -180
  1381. package/services/local-inference/active-model.d.ts.map +0 -1
  1382. package/services/local-inference/active-model.js +0 -362
  1383. package/services/local-inference/assignments.d.ts +0 -58
  1384. package/services/local-inference/assignments.d.ts.map +0 -1
  1385. package/services/local-inference/assignments.js +0 -179
  1386. package/services/local-inference/backend.d.ts +0 -200
  1387. package/services/local-inference/backend.d.ts.map +0 -1
  1388. package/services/local-inference/backend.js +0 -242
  1389. package/services/local-inference/bundled-models.d.ts +0 -34
  1390. package/services/local-inference/bundled-models.d.ts.map +0 -1
  1391. package/services/local-inference/bundled-models.js +0 -104
  1392. package/services/local-inference/cache-bridge.d.ts +0 -184
  1393. package/services/local-inference/cache-bridge.d.ts.map +0 -1
  1394. package/services/local-inference/cache-bridge.js +0 -333
  1395. package/services/local-inference/catalog.d.ts +0 -57
  1396. package/services/local-inference/catalog.d.ts.map +0 -1
  1397. package/services/local-inference/catalog.js +0 -262
  1398. package/services/local-inference/conversation-registry.d.ts +0 -122
  1399. package/services/local-inference/conversation-registry.d.ts.map +0 -1
  1400. package/services/local-inference/conversation-registry.js +0 -182
  1401. package/services/local-inference/device-bridge.d.ts +0 -139
  1402. package/services/local-inference/device-bridge.d.ts.map +0 -1
  1403. package/services/local-inference/device-bridge.js +0 -774
  1404. package/services/local-inference/dflash-doctor.d.ts +0 -27
  1405. package/services/local-inference/dflash-doctor.d.ts.map +0 -1
  1406. package/services/local-inference/dflash-doctor.js +0 -149
  1407. package/services/local-inference/dflash-server.d.ts +0 -248
  1408. package/services/local-inference/dflash-server.d.ts.map +0 -1
  1409. package/services/local-inference/dflash-server.js +0 -1076
  1410. package/services/local-inference/downloader.d.ts +0 -48
  1411. package/services/local-inference/downloader.d.ts.map +0 -1
  1412. package/services/local-inference/downloader.js +0 -688
  1413. package/services/local-inference/engine.d.ts +0 -282
  1414. package/services/local-inference/engine.d.ts.map +0 -1
  1415. package/services/local-inference/engine.js +0 -743
  1416. package/services/local-inference/external-scanner.d.ts +0 -17
  1417. package/services/local-inference/external-scanner.d.ts.map +0 -1
  1418. package/services/local-inference/external-scanner.js +0 -261
  1419. package/services/local-inference/handler-registry.d.ts +0 -72
  1420. package/services/local-inference/handler-registry.d.ts.map +0 -1
  1421. package/services/local-inference/handler-registry.js +0 -159
  1422. package/services/local-inference/hardware.d.ts +0 -26
  1423. package/services/local-inference/hardware.d.ts.map +0 -1
  1424. package/services/local-inference/hardware.js +0 -139
  1425. package/services/local-inference/hf-search.d.ts +0 -19
  1426. package/services/local-inference/hf-search.d.ts.map +0 -1
  1427. package/services/local-inference/hf-search.js +0 -169
  1428. package/services/local-inference/index.d.ts +0 -10
  1429. package/services/local-inference/index.d.ts.map +0 -1
  1430. package/services/local-inference/index.js +0 -7
  1431. package/services/local-inference/llama-server-metrics.d.ts +0 -108
  1432. package/services/local-inference/llama-server-metrics.d.ts.map +0 -1
  1433. package/services/local-inference/llama-server-metrics.js +0 -175
  1434. package/services/local-inference/manifest/index.d.ts +0 -4
  1435. package/services/local-inference/manifest/index.d.ts.map +0 -1
  1436. package/services/local-inference/manifest/index.js +0 -5
  1437. package/services/local-inference/manifest/schema.d.ts +0 -419
  1438. package/services/local-inference/manifest/schema.d.ts.map +0 -1
  1439. package/services/local-inference/manifest/schema.js +0 -227
  1440. package/services/local-inference/manifest/types.d.ts +0 -23
  1441. package/services/local-inference/manifest/types.d.ts.map +0 -1
  1442. package/services/local-inference/manifest/types.js +0 -5
  1443. package/services/local-inference/manifest/validator.d.ts +0 -43
  1444. package/services/local-inference/manifest/validator.d.ts.map +0 -1
  1445. package/services/local-inference/manifest/validator.js +0 -187
  1446. package/services/local-inference/paths.d.ts +0 -8
  1447. package/services/local-inference/paths.d.ts.map +0 -1
  1448. package/services/local-inference/paths.js +0 -7
  1449. package/services/local-inference/providers.d.ts +0 -61
  1450. package/services/local-inference/providers.d.ts.map +0 -1
  1451. package/services/local-inference/providers.js +0 -334
  1452. package/services/local-inference/ram-budget.d.ts +0 -57
  1453. package/services/local-inference/ram-budget.d.ts.map +0 -1
  1454. package/services/local-inference/ram-budget.js +0 -107
  1455. package/services/local-inference/readiness.d.ts +0 -9
  1456. package/services/local-inference/readiness.d.ts.map +0 -1
  1457. package/services/local-inference/readiness.js +0 -153
  1458. package/services/local-inference/recommendation.d.ts +0 -62
  1459. package/services/local-inference/recommendation.d.ts.map +0 -1
  1460. package/services/local-inference/recommendation.js +0 -309
  1461. package/services/local-inference/registry.d.ts +0 -35
  1462. package/services/local-inference/registry.d.ts.map +0 -1
  1463. package/services/local-inference/registry.js +0 -117
  1464. package/services/local-inference/router-handler.d.ts +0 -51
  1465. package/services/local-inference/router-handler.d.ts.map +0 -1
  1466. package/services/local-inference/router-handler.js +0 -165
  1467. package/services/local-inference/routing-policy.d.ts +0 -55
  1468. package/services/local-inference/routing-policy.d.ts.map +0 -1
  1469. package/services/local-inference/routing-policy.js +0 -195
  1470. package/services/local-inference/routing-preferences.d.ts +0 -8
  1471. package/services/local-inference/routing-preferences.d.ts.map +0 -1
  1472. package/services/local-inference/routing-preferences.js +0 -7
  1473. package/services/local-inference/service.d.ts +0 -88
  1474. package/services/local-inference/service.d.ts.map +0 -1
  1475. package/services/local-inference/service.js +0 -210
  1476. package/services/local-inference/session-pool.d.ts +0 -72
  1477. package/services/local-inference/session-pool.d.ts.map +0 -1
  1478. package/services/local-inference/session-pool.js +0 -125
  1479. package/services/local-inference/types.d.ts +0 -309
  1480. package/services/local-inference/types.d.ts.map +0 -1
  1481. package/services/local-inference/types.js +0 -23
  1482. package/services/local-inference/verify.d.ts +0 -8
  1483. package/services/local-inference/verify.d.ts.map +0 -1
  1484. package/services/local-inference/verify.js +0 -7
  1485. package/services/local-inference/voice/barge-in.d.ts +0 -15
  1486. package/services/local-inference/voice/barge-in.d.ts.map +0 -1
  1487. package/services/local-inference/voice/barge-in.js +0 -20
  1488. package/services/local-inference/voice/engine-bridge.d.ts +0 -256
  1489. package/services/local-inference/voice/engine-bridge.d.ts.map +0 -1
  1490. package/services/local-inference/voice/engine-bridge.js +0 -398
  1491. package/services/local-inference/voice/ffi-bindings.d.ts +0 -114
  1492. package/services/local-inference/voice/ffi-bindings.d.ts.map +0 -1
  1493. package/services/local-inference/voice/ffi-bindings.js +0 -281
  1494. package/services/local-inference/voice/index.d.ts +0 -51
  1495. package/services/local-inference/voice/index.d.ts.map +0 -1
  1496. package/services/local-inference/voice/index.js +0 -50
  1497. package/services/local-inference/voice/lifecycle.d.ts +0 -135
  1498. package/services/local-inference/voice/lifecycle.d.ts.map +0 -1
  1499. package/services/local-inference/voice/lifecycle.js +0 -189
  1500. package/services/local-inference/voice/phoneme-tokenizer.d.ts +0 -58
  1501. package/services/local-inference/voice/phoneme-tokenizer.d.ts.map +0 -1
  1502. package/services/local-inference/voice/phoneme-tokenizer.js +0 -53
  1503. package/services/local-inference/voice/phrase-cache.d.ts +0 -24
  1504. package/services/local-inference/voice/phrase-cache.d.ts.map +0 -1
  1505. package/services/local-inference/voice/phrase-cache.js +0 -32
  1506. package/services/local-inference/voice/phrase-chunker.d.ts +0 -20
  1507. package/services/local-inference/voice/phrase-chunker.d.ts.map +0 -1
  1508. package/services/local-inference/voice/phrase-chunker.js +0 -85
  1509. package/services/local-inference/voice/ring-buffer.d.ts +0 -40
  1510. package/services/local-inference/voice/ring-buffer.d.ts.map +0 -1
  1511. package/services/local-inference/voice/ring-buffer.js +0 -85
  1512. package/services/local-inference/voice/rollback-queue.d.ts +0 -24
  1513. package/services/local-inference/voice/rollback-queue.d.ts.map +0 -1
  1514. package/services/local-inference/voice/rollback-queue.js +0 -49
  1515. package/services/local-inference/voice/scheduler.d.ts +0 -47
  1516. package/services/local-inference/voice/scheduler.d.ts.map +0 -1
  1517. package/services/local-inference/voice/scheduler.js +0 -123
  1518. package/services/local-inference/voice/shared-resources.d.ts +0 -119
  1519. package/services/local-inference/voice/shared-resources.d.ts.map +0 -1
  1520. package/services/local-inference/voice/shared-resources.js +0 -83
  1521. package/services/local-inference/voice/speaker-preset-cache.d.ts +0 -28
  1522. package/services/local-inference/voice/speaker-preset-cache.d.ts.map +0 -1
  1523. package/services/local-inference/voice/speaker-preset-cache.js +0 -44
  1524. package/services/local-inference/voice/types.d.ts +0 -80
  1525. package/services/local-inference/voice/types.d.ts.map +0 -1
  1526. package/services/local-inference/voice/voice-preset-format.d.ts +0 -56
  1527. package/services/local-inference/voice/voice-preset-format.d.ts.map +0 -1
  1528. package/services/local-inference/voice/voice-preset-format.js +0 -184
  1529. package/services/plugin-installer.d.ts +0 -22
  1530. package/services/plugin-installer.d.ts.map +0 -1
  1531. package/services/plugin-installer.js +0 -41
  1532. package/test/scripts/task-agent-live-smoke.ts +0 -1335
  1533. /package/services/{local-inference/voice → ambient-audio}/types.js +0 -0
@@ -7,29 +7,108 @@ set -Eeuo pipefail
7
7
  # 1. Installs deps with bun using the committed lockfile
8
8
  # 2. Builds required runtime/UI artifacts for Dockerfile.ci
9
9
  # 3. Builds the production image locally
10
- # 4. Optionally boots the container and probes /api/health or /api/status
10
+ # 4. Boots the container running the REAL agent entrypoint and probes
11
+ # /api/health or /api/status, failing if the agent crashes on startup
12
+ #
13
+ # The boot probe runs the image's default command (APP_CMD_START =
14
+ # the absolute tsx loader plus `packages/agent/dist/bin.js start`), i.e. the
15
+ # actual production entrypoint. It does NOT substitute a stub health server, so a
16
+ # broken runtime dependency closure (missing zod / @elizaos/core / chalk /
17
+ # etc.) surfaces as a RED build instead of shipping a container that crashes
18
+ # the moment it boots in production.
11
19
  #
12
20
  # Usage:
13
21
  # bash packages/app-core/scripts/docker-ci-smoke.sh [--tag TAG] [--version VERSION] [--skip-smoke]
22
+ # # Verify an already-built/pulled image without rebuilding:
23
+ # DOCKER_IMAGE=ghcr.io/... bash packages/app-core/scripts/docker-ci-smoke.sh --boot-verify-only
14
24
  #
15
25
  # Environment:
16
26
  # BUN_VERSION Bun version to install/use in CI (default: 1.3.9)
17
27
  # SMOKE_PORT Host port to bind for smoke boot (default: 32138)
18
28
  # SMOKE_TIMEOUT_SEC Max wait for boot probe (default: 420)
19
29
  # DOCKER_IMAGE Override image tag completely
30
+ # BOOT_VERIFY_ONLY If "true", skip the build and only boot-verify
31
+ # DOCKER_IMAGE (must be set). Equivalent to
32
+ # --boot-verify-only.
33
+ # SMOKE_CHARACTER_JSON Optional minimal character JSON injected via
34
+ # ELIZA_AGENT_CHARACTER_JSON for the boot.
35
+ # BOOT_KPI_ENFORCE If "1", a cold-start readyMs budget breach (measured
36
+ # boot readyMs > boot.coldReadyMs from
37
+ # packages/benchmarks/loadperf/budgets.json) FAILS the
38
+ # smoke. Default (unset/!=1) is WARN-FIRST: a breach is
39
+ # reported via a ::warning:: line but does NOT fail. Flip
40
+ # this to "1" in the workflow once the baseline is
41
+ # confirmed green in CI. The KPI measurement is additive
42
+ # and only runs in --boot-verify-only mode; a measurement
43
+ # failure (missing jq/budget) never fails a smoke that
44
+ # otherwise passed.
20
45
 
21
46
  BUN_VERSION="${BUN_VERSION:-1.3.10}"
22
47
  SMOKE_PORT="${SMOKE_PORT:-32138}"
23
48
  CONTAINER_PORT="${CONTAINER_PORT:-42138}"
24
49
  SMOKE_TIMEOUT_SEC="${SMOKE_TIMEOUT_SEC:-420}"
25
50
  SKIP_SMOKE=false
51
+ BOOT_VERIFY_ONLY="${BOOT_VERIFY_ONLY:-false}"
26
52
  TAG="docker-smoke"
27
53
  VERSION=""
28
54
 
55
+ # Log signatures that mean the agent crashed during startup. If any of these
56
+ # show up in the container logs we fail immediately rather than waiting out the
57
+ # full timeout. These are the exact failure modes (missing runtime deps,
58
+ # entrypoint blowups) that previously shipped green because the smoke step
59
+ # booted a stub health server instead of the real entrypoint.
60
+ #
61
+ # Kept deliberately specific to module-resolution failures and explicit
62
+ # fatal-startup markers so a benign warning that merely contains a generic word
63
+ # (FATAL, Cannot read properties of undefined, ...) does not flap the gate. The
64
+ # container-exit and health-timeout checks below are the backstops for any crash
65
+ # that does not print one of these.
66
+ BOOT_CRASH_PATTERNS=(
67
+ 'Cannot find package'
68
+ 'Cannot find module'
69
+ 'ERR_MODULE_NOT_FOUND'
70
+ 'ERR_REQUIRE_ESM'
71
+ 'MODULE_NOT_FOUND'
72
+ # The agent now starts under plain `node` (no tsx loader, #8837). If any
73
+ # workspace package shipped without a built dist, link-docker-local-app-packages.mjs
74
+ # rewrites its exports to ./src/*.ts, and importing that at runtime throws
75
+ # ERR_UNKNOWN_FILE_EXTENSION on the core boot path. Fail fast on that signature
76
+ # instead of waiting out the full health timeout.
77
+ 'ERR_UNKNOWN_FILE_EXTENSION'
78
+ 'Unknown file extension'
79
+ 'Failed to start'
80
+ 'crashed during init'
81
+ )
82
+
29
83
  log() {
30
84
  printf '[docker-ci-smoke] %s\n' "$*"
31
85
  }
32
86
 
87
+ # Portable millisecond epoch timer used by the boot-KPI cold-start measurement.
88
+ # Prefers bash 5's EPOCHREALTIME (no subprocess), falls back to GNU date
89
+ # (%s%3N), then python3, then whole-second `date` * 1000. Always prints an
90
+ # integer count of milliseconds. Never used for liveness decisions, only for
91
+ # the additive boot-KPI readyMs value, so a coarse fallback is harmless.
92
+ now_ms() {
93
+ if [[ -n "${EPOCHREALTIME:-}" ]]; then
94
+ # EPOCHREALTIME is "<seconds>.<microseconds>"; strip the dot and trim to ms.
95
+ local er="${EPOCHREALTIME/[.,]/}"
96
+ printf '%s\n' "${er:0:${#er}-3}"
97
+ return 0
98
+ fi
99
+ local d
100
+ d="$(date +%s%3N 2>/dev/null || true)"
101
+ if [[ "$d" =~ ^[0-9]+$ && "$d" != *N ]]; then
102
+ printf '%s\n' "$d"
103
+ return 0
104
+ fi
105
+ if command -v python3 >/dev/null 2>&1; then
106
+ python3 -c 'import time; print(int(time.time()*1000))'
107
+ return 0
108
+ fi
109
+ printf '%s\n' "$(( $(date +%s) * 1000 ))"
110
+ }
111
+
33
112
  on_error() {
34
113
  local status=$?
35
114
  local line="${BASH_LINENO[0]:-0}"
@@ -86,6 +165,10 @@ while [[ $# -gt 0 ]]; do
86
165
  SKIP_SMOKE=true
87
166
  shift
88
167
  ;;
168
+ --boot-verify-only)
169
+ BOOT_VERIFY_ONLY=true
170
+ shift
171
+ ;;
89
172
  -h|--help)
90
173
  sed -n '1,24p' "$0" | sed 's/^# \{0,1\}//'
91
174
  exit 0
@@ -140,8 +223,10 @@ load_env_file "$APP_CORE_DIR/deploy/deploy.defaults.env"
140
223
  load_env_file "deploy/deploy.env"
141
224
 
142
225
  APP_IMAGE="${APP_IMAGE:-eliza/agent}"
143
- APP_ENTRYPOINT="${APP_ENTRYPOINT:-$AGENT_DIR/dist/packages/agent/src/bin.js}"
144
- APP_CMD_START="${APP_CMD_START:-node --import tsx ${APP_ENTRYPOINT} start}"
226
+ APP_ENTRYPOINT="${APP_ENTRYPOINT:-$AGENT_DIR/dist/bin.js}"
227
+ # F6 (#8812): start under plain `node` the prebuilt dist is compiled JS with
228
+ # `.ts` specifiers rewritten to `.js`, so the tsx loader only added startup tax.
229
+ APP_CMD_START="${APP_CMD_START:-node ${APP_ENTRYPOINT} start}"
145
230
  APP_PORT="${APP_PORT:-2138}"
146
231
  APP_API_BIND="${APP_API_BIND:-127.0.0.1}"
147
232
  OCI_SOURCE="${OCI_SOURCE:-}"
@@ -166,9 +251,13 @@ log "Smoke port: $SMOKE_PORT"
166
251
  log "Container port override: $CONTAINER_PORT"
167
252
  log "Artifact dir: $SMOKE_ARTIFACT_DIR"
168
253
 
169
- command -v node >/dev/null 2>&1 || fail "node is required"
170
- command -v bun >/dev/null 2>&1 || fail "bun is required"
171
- BUN_BIN="$(command -v bun)"
254
+ # bun/node are only needed for the build path. In boot-verify-only mode we
255
+ # just run an already-built image, so don't hard-require them.
256
+ if [[ "$BOOT_VERIFY_ONLY" != "true" ]]; then
257
+ command -v node >/dev/null 2>&1 || fail "node is required"
258
+ command -v bun >/dev/null 2>&1 || fail "bun is required"
259
+ BUN_BIN="$(command -v bun)"
260
+ fi
172
261
 
173
262
  DOCKER_BIN="$(find_docker_bin)" || fail "docker is required"
174
263
 
@@ -204,6 +293,305 @@ cleanup() {
204
293
  }
205
294
  trap cleanup EXIT
206
295
 
296
+ # boot_verify boots the just-built (or pre-supplied) image running the REAL
297
+ # agent entrypoint and fails the script if the agent crashes on startup or
298
+ # never serves health. This is the gate that stops a container that crashes on
299
+ # boot (missing runtime deps, broken entrypoint) from shipping green.
300
+ boot_verify() {
301
+ log "Starting container boot verification (real agent entrypoint)"
302
+ log "Command under test: ${APP_CMD_START}"
303
+
304
+ # A tiny, valid character so the agent has a concrete identity to boot with.
305
+ # The runtime falls back to a bundled default if this is unset, but pinning
306
+ # one keeps the boot deterministic across branches.
307
+ local character_json
308
+ character_json="${SMOKE_CHARACTER_JSON:-{\"name\":\"CiSmoke\",\"bio\":[\"CI boot verification agent.\"],\"system\":\"You are a CI boot probe.\"}}"
309
+
310
+ # Unique pglite data dir per run avoids the data-dir lock that makes a
311
+ # second container on the same host fail to acquire the store.
312
+ local pglite_dir="/tmp/ci-db-${RANDOM}-${RANDOM}"
313
+
314
+ "$DOCKER_BIN" rm -f "$CONTAINER_NAME" >/dev/null 2>&1 || true
315
+ # Boot-KPI cold-start: stamp the instant just before the container starts.
316
+ # The elapsed time from here to the FIRST /api/health (or /api/status) ready
317
+ # is the cold readyMs we compare against boot.coldReadyMs. Only meaningful in
318
+ # --boot-verify-only mode (the workflow's gate); see emit_boot_kpi below.
319
+ BOOT_KPI_START_MS=""
320
+ BOOT_KPI_READY_MS=""
321
+ if [[ "$BOOT_VERIFY_ONLY" == "true" ]]; then
322
+ BOOT_KPI_START_MS="$(now_ms 2>/dev/null || true)"
323
+ fi
324
+ # NOTE: no command override here. The container runs its default CMD
325
+ # (APP_CMD_START = the real absolute tsx loader plus agent dist start).
326
+ # Substituting a stub health server is exactly what let broken
327
+ # images ship green before; do not reintroduce it.
328
+ "$DOCKER_BIN" run -d \
329
+ --name "$CONTAINER_NAME" \
330
+ -e PORT="$CONTAINER_PORT" \
331
+ -e APP_PORT="$CONTAINER_PORT" \
332
+ -e ELIZA_PORT="$CONTAINER_PORT" \
333
+ -e ELIZA_API_PORT="$CONTAINER_PORT" \
334
+ -e ELIZA_AGENT_PORT="$CONTAINER_PORT" \
335
+ -e APP_API_BIND=0.0.0.0 \
336
+ -e ELIZA_API_BIND=0.0.0.0 \
337
+ -e AGENT_API_BIND=0.0.0.0 \
338
+ -e ELIZA_AGENT_CHARACTER_JSON="$character_json" \
339
+ -e ELIZA_STATE_DIR=/tmp/eliza-smoke/state \
340
+ -e ELIZA_CONFIG_DIR=/tmp/eliza-smoke/config \
341
+ -e ELIZA_WORKSPACE_DIR=/tmp/eliza-smoke/workspace \
342
+ -e ELIZA_VAULT_PASSPHRASE=docker-smoke-vault-passphrase \
343
+ -e PGLITE_DATA_DIR="$pglite_dir" \
344
+ -e ELIZA_DISABLE_LOCAL_EMBEDDINGS=1 \
345
+ -p "${SMOKE_PORT}:${CONTAINER_PORT}" \
346
+ "$DOCKER_IMAGE" >/dev/null
347
+
348
+ local status_url="http://127.0.0.1:${SMOKE_PORT}/api/status"
349
+ local health_url="http://127.0.0.1:${SMOKE_PORT}/api/health"
350
+
351
+ # Boot-KPI: record the FIRST instant any probe reports ready. Called from the
352
+ # 200/401 success paths below so the readyMs reflects the very first health
353
+ # success, not the end of confirm_ok's confirmation re-probes. Stamps once and
354
+ # only in --boot-verify-only mode; never affects the liveness return value.
355
+ mark_first_ready() {
356
+ if [[ "$BOOT_VERIFY_ONLY" == "true" && -z "${BOOT_KPI_READY_MS:-}" ]]; then
357
+ BOOT_KPI_READY_MS="$(now_ms 2>/dev/null || true)"
358
+ fi
359
+ }
360
+
361
+ probe_ok() {
362
+ local url="$1"
363
+ local out="$2"
364
+ local code
365
+ code="$(curl -sS --connect-timeout 1 --max-time 3 -o "$out" -w '%{http_code}' "$url" || true)"
366
+ case "$code" in
367
+ 200)
368
+ mark_first_ready
369
+ return 0
370
+ ;;
371
+ 401)
372
+ if grep -q 'Unauthorized' "$out" 2>/dev/null; then
373
+ mark_first_ready
374
+ return 0
375
+ fi
376
+ ;;
377
+ esac
378
+ return 1
379
+ }
380
+
381
+ # Scan container logs for known crash signatures. Returns 0 (match) when the
382
+ # agent has crashed on startup so we can fail fast with a clear message
383
+ # instead of waiting out the whole timeout.
384
+ scan_crash() {
385
+ local logs_file="$1"
386
+ local pattern
387
+ for pattern in "${BOOT_CRASH_PATTERNS[@]}"; do
388
+ if grep -qiF "$pattern" "$logs_file" 2>/dev/null; then
389
+ printf '%s' "$pattern"
390
+ return 0
391
+ fi
392
+ done
393
+ return 1
394
+ }
395
+
396
+ # Confirm health by probing a few times in a row before declaring success,
397
+ # so a single transient curl failure does not flap the gate.
398
+ confirm_ok() {
399
+ local url="$1"
400
+ local out="$2"
401
+ local i
402
+ for i in 1 2 3; do
403
+ probe_ok "$url" "$out" || return 1
404
+ [[ "$i" -lt 3 ]] && sleep 1
405
+ done
406
+ return 0
407
+ }
408
+
409
+ # Post-health observation window: after health first comes up, keep watching
410
+ # the container for a short window so a crash that happens just AFTER the
411
+ # server binds (async plugin/runtime init blowing up post-listen) still turns
412
+ # the gate RED instead of slipping through. Only scans logs emitted AFTER the
413
+ # passed-in checkpoint ("$1", an RFC3339 UTC timestamp captured when health
414
+ # first succeeded) so a benign pre-health crash signature can't false-positive.
415
+ # Returns non-zero if the container dies or logs a crash signature in-window.
416
+ confirm_stable() {
417
+ local since="$1"
418
+ local window="${BOOT_STABLE_WINDOW_SEC:-15}"
419
+ local stable_logs="$SMOKE_ARTIFACT_DIR/post-health.log"
420
+ local stable_deadline=$((SECONDS + window))
421
+ while (( SECONDS < stable_deadline )); do
422
+ timeout 30 "$DOCKER_BIN" logs --since "$since" "$CONTAINER_NAME" >"$stable_logs" 2>&1 || true
423
+ local m
424
+ if m="$(scan_crash "$stable_logs")"; then
425
+ log "Crash signature appeared after health came up: '${m}'"
426
+ timeout 30 "$DOCKER_BIN" logs --tail 120 "$CONTAINER_NAME" || true
427
+ return 1
428
+ fi
429
+ if ! timeout 10 "$DOCKER_BIN" ps --format '{{.Names}}' 2>/dev/null | grep -Fxq "$CONTAINER_NAME"; then
430
+ local code
431
+ code="$(timeout 10 "$DOCKER_BIN" inspect -f '{{.State.ExitCode}}' "$CONTAINER_NAME" 2>/dev/null || echo '?')"
432
+ log "Container exited (exit code ${code}) during the post-health window"
433
+ timeout 30 "$DOCKER_BIN" logs --tail 120 "$CONTAINER_NAME" || true
434
+ return 1
435
+ fi
436
+ sleep 3
437
+ done
438
+ return 0
439
+ }
440
+
441
+ # Boot-KPI cold-start budget (item 5 of #8812). Computes cold readyMs from the
442
+ # pre-`docker run` checkpoint to the FIRST health/status success, reads the
443
+ # boot.coldReadyMs budget from packages/benchmarks/loadperf/budgets.json, and
444
+ # reports the comparison. WARN-FIRST: a breach prints a ::warning:: line and
445
+ # returns 0 (does not fail) UNLESS BOOT_KPI_ENFORCE=1, in which case it returns
446
+ # 1 so the caller can fail the smoke. Every measurement step is guarded so a
447
+ # missing jq / budget / timer NEVER turns a liveness-passing boot RED.
448
+ # peakRss is intentionally NOT measured: `docker stats` reports an inst
449
+ # sample, not the boot peak, so a number here would be misleading.
450
+ emit_boot_kpi() {
451
+ if [[ "$BOOT_VERIFY_ONLY" != "true" ]]; then
452
+ return 0
453
+ fi
454
+ if [[ -z "${BOOT_KPI_START_MS:-}" || -z "${BOOT_KPI_READY_MS:-}" ]]; then
455
+ log "[boot-kpi] cold readyMs: not measured (missing start/ready timestamp)"
456
+ return 0
457
+ fi
458
+
459
+ local ready_ms
460
+ ready_ms=$(( BOOT_KPI_READY_MS - BOOT_KPI_START_MS ))
461
+ if (( ready_ms < 0 )); then
462
+ log "[boot-kpi] cold readyMs: not measured (non-monotonic clock)"
463
+ return 0
464
+ fi
465
+
466
+ # Default budget mirrors packages/benchmarks/loadperf/budgets.json boot.coldReadyMs.
467
+ local budget_default=25000
468
+ local budget="$budget_default"
469
+ local budgets_file="$REPO_ROOT/packages/benchmarks/loadperf/budgets.json"
470
+ if command -v jq >/dev/null 2>&1 && [[ -f "$budgets_file" ]]; then
471
+ local parsed
472
+ parsed="$(jq -r '.boot.coldReadyMs // empty' "$budgets_file" 2>/dev/null || true)"
473
+ if [[ "$parsed" =~ ^[0-9]+$ ]]; then
474
+ budget="$parsed"
475
+ else
476
+ log "[boot-kpi] WARNING: could not read boot.coldReadyMs from $budgets_file; using default ${budget_default}ms"
477
+ fi
478
+ else
479
+ log "[boot-kpi] WARNING: jq or budgets.json unavailable; using default coldReadyMs budget ${budget_default}ms"
480
+ fi
481
+
482
+ log "[boot-kpi] cold readyMs=${ready_ms} budget=${budget}"
483
+ log "[boot-kpi] peakRss: not measured (docker stats samples instantaneously, not boot peak)"
484
+
485
+ if (( ready_ms > budget )); then
486
+ local msg="boot-kpi cold readyMs=${ready_ms} exceeded budget=${budget} (boot.coldReadyMs)"
487
+ if [[ "${BOOT_KPI_ENFORCE:-}" == "1" ]]; then
488
+ if [[ "${GITHUB_ACTIONS:-}" == "true" ]]; then
489
+ printf '::error::%s\n' "$msg" >&2
490
+ fi
491
+ log "[boot-kpi] ENFORCING: $msg"
492
+ return 1
493
+ fi
494
+ if [[ "${GITHUB_ACTIONS:-}" == "true" ]]; then
495
+ printf '::warning::%s (warn-first; set BOOT_KPI_ENFORCE=1 to gate)\n' "$msg" >&2
496
+ fi
497
+ log "[boot-kpi] WARNING (warn-first, not failing): $msg"
498
+ log "[boot-kpi] Set BOOT_KPI_ENFORCE=1 to make this breach fail CI."
499
+ return 0
500
+ fi
501
+
502
+ log "[boot-kpi] within budget (readyMs ${ready_ms} <= ${budget})"
503
+ return 0
504
+ }
505
+
506
+ local logs_file="$SMOKE_ARTIFACT_DIR/boot.log"
507
+ local deadline=$((SECONDS + SMOKE_TIMEOUT_SEC))
508
+ local last_log_dump=0
509
+ while (( SECONDS < deadline )); do
510
+ timeout 30 "$DOCKER_BIN" logs "$CONTAINER_NAME" >"$logs_file" 2>&1 || true
511
+
512
+ # Fail fast on a known crash signature in the logs.
513
+ local matched
514
+ if matched="$(scan_crash "$logs_file")"; then
515
+ log "Detected startup crash signature in container logs: '${matched}'"
516
+ timeout 30 "$DOCKER_BIN" logs --tail 120 "$CONTAINER_NAME" || true
517
+ log "Preserved failure artifacts in $SMOKE_ARTIFACT_DIR"
518
+ fail "Agent crashed on startup (matched '${matched}'); image is NOT bootable"
519
+ fi
520
+
521
+ local running_containers_file
522
+ running_containers_file="$(mktemp 2>/dev/null || printf '%s\n' "$SMOKE_ARTIFACT_DIR/docker-running-containers.txt")"
523
+ timeout 10 "$DOCKER_BIN" ps --format '{{.Names}}' >"$running_containers_file" 2>&1 || true
524
+ if ! grep -Fxq "$CONTAINER_NAME" "$running_containers_file" 2>/dev/null; then
525
+ rm -f "$running_containers_file" >/dev/null 2>&1 || true
526
+ local exit_code
527
+ exit_code="$(timeout 10 "$DOCKER_BIN" inspect -f '{{.State.ExitCode}}' "$CONTAINER_NAME" 2>/dev/null || echo '?')"
528
+ timeout 30 "$DOCKER_BIN" logs --tail 120 "$CONTAINER_NAME" || true
529
+ log "Preserved failure artifacts in $SMOKE_ARTIFACT_DIR"
530
+ fail "Container exited (exit code ${exit_code}) before health came up; image is NOT bootable"
531
+ fi
532
+ rm -f "$running_containers_file" >/dev/null 2>&1 || true
533
+
534
+ if (( SECONDS - last_log_dump >= 30 )); then
535
+ last_log_dump=$SECONDS
536
+ log "Container still booting; recent logs follow"
537
+ timeout 10 "$DOCKER_BIN" logs --tail 80 "$CONTAINER_NAME" || true
538
+ fi
539
+
540
+ if confirm_ok "$health_url" /tmp/eliza-docker-health.txt; then
541
+ # Boot-KPI readyMs was already stamped by probe_ok (mark_first_ready) at
542
+ # the FIRST health success, BEFORE the post-health stability window.
543
+ log "Health probe succeeded against the real entrypoint: $health_url"
544
+ cat /tmp/eliza-docker-health.txt
545
+ local health_ts
546
+ health_ts="$(date -u +%Y-%m-%dT%H:%M:%S 2>/dev/null || echo '')"
547
+ if confirm_stable "$health_ts"; then
548
+ log "Boot verified: agent stayed up after health came up"
549
+ emit_boot_kpi || fail "boot-kpi cold readyMs budget exceeded (BOOT_KPI_ENFORCE=1)"
550
+ return 0
551
+ fi
552
+ fail "Agent served health then crashed during the post-health window; image is NOT bootable"
553
+ fi
554
+
555
+ if confirm_ok "$status_url" /tmp/eliza-docker-status.txt; then
556
+ # Boot-KPI readyMs was already stamped by probe_ok (mark_first_ready) at
557
+ # the FIRST status success.
558
+ log "Status probe succeeded against the real entrypoint: $status_url"
559
+ cat /tmp/eliza-docker-status.txt
560
+ local status_ts
561
+ status_ts="$(date -u +%Y-%m-%dT%H:%M:%S 2>/dev/null || echo '')"
562
+ if confirm_stable "$status_ts"; then
563
+ log "Boot verified: agent stayed up after status came up"
564
+ emit_boot_kpi || fail "boot-kpi cold readyMs budget exceeded (BOOT_KPI_ENFORCE=1)"
565
+ return 0
566
+ fi
567
+ fail "Agent served status then crashed during the post-health window; image is NOT bootable"
568
+ fi
569
+
570
+ sleep 5
571
+ done
572
+
573
+ timeout 30 "$DOCKER_BIN" logs --tail 120 "$CONTAINER_NAME" || true
574
+ log "Preserved timeout artifacts in $SMOKE_ARTIFACT_DIR"
575
+ fail "Timed out waiting for the real agent to serve health (${SMOKE_TIMEOUT_SEC}s); image is NOT bootable"
576
+ }
577
+
578
+ # Boot-verify-only mode: skip the entire build and just verify a pre-built
579
+ # image (DOCKER_IMAGE must be set/pullable). Used by the build workflow to
580
+ # verify the image it just built locally before pushing.
581
+ if [[ "$BOOT_VERIFY_ONLY" == "true" ]]; then
582
+ log "Boot-verify-only mode: skipping build, verifying $DOCKER_IMAGE"
583
+ if ! "$DOCKER_BIN" image inspect "$DOCKER_IMAGE" >/dev/null 2>&1; then
584
+ log "Image $DOCKER_IMAGE not present locally; attempting pull"
585
+ "$DOCKER_BIN" pull "$DOCKER_IMAGE" >/dev/null 2>&1 || fail "Image $DOCKER_IMAGE not available locally and pull failed"
586
+ fi
587
+ if $SKIP_SMOKE; then
588
+ log "Skipping runtime boot (--skip-smoke)"
589
+ exit 0
590
+ fi
591
+ boot_verify
592
+ exit 0
593
+ fi
594
+
207
595
  log "Installing dependencies"
208
596
  node "$APP_CORE_SCRIPTS_DIR/init-submodules.mjs"
209
597
  ELIZA_SKIP_LOCAL_UPSTREAMS=1 ELIZA_SKIP_LOCAL_UPSTREAMS=1 node "$APP_CORE_SCRIPTS_DIR/disable-local-eliza-workspace.mjs"
@@ -237,33 +625,61 @@ else
237
625
  fi
238
626
 
239
627
  log "Running repository postinstall"
240
- if [[ -f scripts/setup-upstreams.mjs ]]; then
628
+ if [[ -f packages/scripts/setup-upstreams.mjs ]]; then
241
629
  SKIP_AVATAR_CLONE=1 ELIZA_NO_VISION_DEPS=1 node "$APP_CORE_SCRIPTS_DIR/run-repo-setup.mjs"
242
630
  else
243
- node scripts/patch-nested-core-dist.mjs || true
631
+ node packages/scripts/patch-nested-core-dist.mjs || true
244
632
  node "$APP_CORE_SCRIPTS_DIR/ensure-shared-i18n-data.mjs"
245
633
  node "$APP_CORE_SCRIPTS_DIR/patch-deps.mjs" || true
246
634
  node "$APP_CORE_SCRIPTS_DIR/ensure-type-package-aliases.mjs" || true
247
635
  fi
248
- node scripts/patch-tsup-dts.mjs || true
636
+ # @elizaos/contracts must be built BEFORE @elizaos/core: core's
637
+ # tsconfig.declarations.json maps `@elizaos/contracts` to
638
+ # `../contracts/dist/index.d.ts`, so the declarations build aborts with
639
+ # TS2307 if dist/ doesn't exist yet.
640
+ if [[ -f packages/contracts/package.json ]] && jq -e '.scripts.build' packages/contracts/package.json >/dev/null; then
641
+ log "Building @elizaos/contracts (required by core declarations)"
642
+ pushd packages/contracts >/dev/null
643
+ "$BUN_BIN" run build
644
+ popd >/dev/null
645
+ mkdir -p node_modules/@elizaos
646
+ rm -rf node_modules/@elizaos/contracts
647
+ ln -s ../../packages/contracts node_modules/@elizaos/contracts
648
+ fi
649
+
650
+ # @elizaos/logger must also be built BEFORE @elizaos/core: core's
651
+ # tsconfig.declarations.json maps `@elizaos/logger` to
652
+ # `../logger/dist/index.d.ts`, so the declarations build aborts with TS2307
653
+ # (src/logger.ts) if dist/ doesn't exist yet.
654
+ if [[ -f packages/logger/package.json ]] && jq -e '.scripts.build' packages/logger/package.json >/dev/null; then
655
+ log "Building @elizaos/logger (required by core declarations)"
656
+ pushd packages/logger >/dev/null
657
+ "$BUN_BIN" run build
658
+ popd >/dev/null
659
+ mkdir -p node_modules/@elizaos
660
+ rm -rf node_modules/@elizaos/logger
661
+ ln -s ../../packages/logger node_modules/@elizaos/logger
662
+ fi
249
663
 
250
664
  if [[ -f "$TYPESCRIPT_DIR/package.json" ]]; then
251
665
  log "Building @elizaos/core source artifacts"
252
666
  pushd "$TYPESCRIPT_DIR" >/dev/null
253
667
  "$BUN_BIN" run build.ts --node-only
254
668
  popd >/dev/null
255
- node scripts/prepare-package-dist.mjs "$TYPESCRIPT_DIR"
669
+ node packages/scripts/prepare-package-dist.mjs "$TYPESCRIPT_DIR"
256
670
  CORE_NODE_MODULE="node_modules/@elizaos/core"
257
671
  rm -rf "$CORE_NODE_MODULE"
258
672
  mkdir -p "$(dirname "$CORE_NODE_MODULE")"
259
673
  ln -s "../../$TYPESCRIPT_DIR" "$CORE_NODE_MODULE"
260
- node scripts/patch-nested-core-dist.mjs || true
674
+ node packages/scripts/patch-nested-core-dist.mjs || true
261
675
  else
262
676
  log "No local @elizaos/core source package found at $TYPESCRIPT_DIR; using installed package"
263
677
  fi
264
678
 
265
679
  log "Building shared/cloud package artifacts"
266
- for package_dir in packages/shared cloud/packages/sdk packages/cloud-routing; do
680
+ # plugin-streaming imports @elizaos/cloud-routing during its declarations build,
681
+ # so Docker smoke needs the local workspace package built and linked.
682
+ for package_dir in packages/shared packages/cloud-sdk packages/cloud-routing packages/skills; do
267
683
  if [[ -f "$package_dir/package.json" ]] && jq -e '.scripts.build' "$package_dir/package.json" >/dev/null; then
268
684
  log "Building $(node -p "require('./$package_dir/package.json').name") workspace artifacts"
269
685
  pushd "$package_dir" >/dev/null
@@ -272,10 +688,11 @@ for package_dir in packages/shared cloud/packages/sdk packages/cloud-routing; do
272
688
  fi
273
689
  done
274
690
  mkdir -p node_modules/@elizaos
275
- rm -rf node_modules/@elizaos/shared node_modules/@elizaos/cloud-sdk node_modules/@elizaos/cloud-routing
691
+ rm -rf node_modules/@elizaos/shared node_modules/@elizaos/cloud-sdk node_modules/@elizaos/cloud-routing node_modules/@elizaos/skills
276
692
  ln -s ../../packages/shared node_modules/@elizaos/shared
277
- ln -s ../../cloud/packages/sdk node_modules/@elizaos/cloud-sdk
693
+ ln -s ../../packages/cloud-sdk node_modules/@elizaos/cloud-sdk
278
694
  ln -s ../../packages/cloud-routing node_modules/@elizaos/cloud-routing
695
+ ln -s ../../packages/skills node_modules/@elizaos/skills
279
696
 
280
697
  log "Building Capacitor plugins"
281
698
  "$BUN_BIN" packages/app-core/scripts/build-native-plugins.mjs
@@ -297,10 +714,12 @@ for plugin in \
297
714
  plugin-sql \
298
715
  plugin-video \
299
716
  plugin-agent-skills \
717
+ plugin-app-manager \
300
718
  plugin-pdf \
301
719
  plugin-browser \
302
720
  plugin-capacitor-bridge \
303
721
  plugin-coding-tools \
722
+ plugin-commands \
304
723
  plugin-computeruse \
305
724
  plugin-discord \
306
725
  plugin-elizacloud \
@@ -334,7 +753,7 @@ log "Building all @elizaos/app workspace deps (turbo, --force to bypass cache)"
334
753
  # turbo build of @elizaos/app's dep graph (build:core covers a subset
335
754
  # but misses @elizaos/ui and the @elizaos/app-* surface packages).
336
755
  # --force forces fresh builds, sidestepping any poisoned remote cache
337
- # that contains incomplete dist artifacts.
756
+ # that contains partial dist artifacts.
338
757
  "$BUN_BIN" run build:client -- --force
339
758
 
340
759
  log "Building agent workspace"
@@ -392,6 +811,11 @@ log "Building Docker image"
392
811
  log "Docker build disk usage"
393
812
  df -h "$REPO_ROOT" || true
394
813
  "$DOCKER_BIN" system df || true
814
+ available_kb="$(df -Pk "$REPO_ROOT" | awk 'NR == 2 { print $4 }')"
815
+ minimum_kb=$((18 * 1024 * 1024))
816
+ if [[ -n "$available_kb" && "$available_kb" -lt "$minimum_kb" ]]; then
817
+ fail "Insufficient disk for Docker smoke build: available=$((available_kb / 1024 / 1024))GiB required>=18GiB"
818
+ fi
395
819
  "$DOCKER_BIN" build \
396
820
  --file "$APP_CORE_DIR/deploy/Dockerfile.ci" \
397
821
  --tag "$DOCKER_IMAGE" \
@@ -417,84 +841,4 @@ if $SKIP_SMOKE; then
417
841
  exit 0
418
842
  fi
419
843
 
420
- log "Starting container smoke boot"
421
- "$DOCKER_BIN" rm -f "$CONTAINER_NAME" >/dev/null 2>&1 || true
422
- "$DOCKER_BIN" run -d \
423
- --name "$CONTAINER_NAME" \
424
- -e PORT="$CONTAINER_PORT" \
425
- -e APP_PORT="$CONTAINER_PORT" \
426
- -e ELIZA_API_PORT="$CONTAINER_PORT" \
427
- -e ELIZA_API_PORT="$CONTAINER_PORT" \
428
- -e ELIZA_PORT="$CONTAINER_PORT" \
429
- -e APP_API_BIND=0.0.0.0 \
430
- -e ELIZA_STATE_DIR=/tmp/eliza-smoke/state \
431
- -e ELIZA_STATE_DIR=/tmp/eliza-smoke/state \
432
- -e ELIZA_CONFIG_DIR=/tmp/eliza-smoke/config \
433
- -e ELIZA_CONFIG_DIR=/tmp/eliza-smoke/config \
434
- -e ELIZA_WORKSPACE_DIR=/tmp/eliza-smoke/workspace \
435
- -e ELIZA_WORKSPACE_DIR=/tmp/eliza-smoke/workspace \
436
- -e ELIZA_VAULT_PASSPHRASE=docker-smoke-vault-passphrase \
437
- -e PGLITE_DATA_DIR=/tmp/eliza-smoke/pglite \
438
- -e ELIZA_DISABLE_LOCAL_EMBEDDINGS=1 \
439
- -e ELIZA_API_BIND=0.0.0.0 \
440
- -p "${SMOKE_PORT}:${CONTAINER_PORT}" \
441
- "$DOCKER_IMAGE" >/dev/null
442
-
443
- status_url="http://127.0.0.1:${SMOKE_PORT}/api/status"
444
- health_url="http://127.0.0.1:${SMOKE_PORT}/api/health"
445
-
446
- probe_ok() {
447
- local url="$1"
448
- local out="$2"
449
- local code
450
- code="$(curl -sS --connect-timeout 1 --max-time 3 -o "$out" -w '%{http_code}' "$url" || true)"
451
- case "$code" in
452
- 200)
453
- return 0
454
- ;;
455
- 401)
456
- if grep -q 'Unauthorized' "$out" 2>/dev/null; then
457
- return 0
458
- fi
459
- ;;
460
- esac
461
- return 1
462
- }
463
-
464
- deadline=$((SECONDS + SMOKE_TIMEOUT_SEC))
465
- last_log_dump=0
466
- while (( SECONDS < deadline )); do
467
- running_containers_file="$(mktemp 2>/dev/null || printf '%s\n' "$SMOKE_ARTIFACT_DIR/docker-running-containers.txt")"
468
- timeout 10 "$DOCKER_BIN" ps --format '{{.Names}}' >"$running_containers_file" 2>&1 || true
469
- if ! grep -Fxq "$CONTAINER_NAME" "$running_containers_file" 2>/dev/null; then
470
- rm -f "$running_containers_file" >/dev/null 2>&1 || true
471
- timeout 30 "$DOCKER_BIN" logs "$CONTAINER_NAME" || true
472
- log "Preserved failure artifacts in $SMOKE_ARTIFACT_DIR"
473
- fail "Container exited before smoke probe succeeded"
474
- fi
475
- rm -f "$running_containers_file" >/dev/null 2>&1 || true
476
-
477
- if (( SECONDS - last_log_dump >= 30 )); then
478
- last_log_dump=$SECONDS
479
- log "Container still booting; recent logs follow"
480
- timeout 10 "$DOCKER_BIN" logs --tail 80 "$CONTAINER_NAME" || true
481
- fi
482
-
483
- if probe_ok "$health_url" /tmp/eliza-docker-health.txt; then
484
- log "Health probe succeeded: $health_url"
485
- cat /tmp/eliza-docker-health.txt
486
- exit 0
487
- fi
488
-
489
- if probe_ok "$status_url" /tmp/eliza-docker-status.txt; then
490
- log "Status probe succeeded: $status_url"
491
- cat /tmp/eliza-docker-status.txt
492
- exit 0
493
- fi
494
-
495
- sleep 5
496
- done
497
-
498
- timeout 30 "$DOCKER_BIN" logs "$CONTAINER_NAME" || true
499
- log "Preserved timeout artifacts in $SMOKE_ARTIFACT_DIR"
500
- fail "Timed out waiting for container smoke probe (${SMOKE_TIMEOUT_SEC}s)"
844
+ boot_verify