@elizaos/shared 2.0.0-beta.1 → 2.0.3-beta.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1101) hide show
  1. package/api/agent-api-types.d.ts +210 -0
  2. package/api/agent-api-types.d.ts.map +1 -0
  3. package/api/agent-api-types.js +11 -0
  4. package/api/agent-api-types.js.map +1 -0
  5. package/api/http-helpers.d.ts +3 -0
  6. package/api/http-helpers.d.ts.map +1 -0
  7. package/api/http-helpers.js +2 -0
  8. package/api/http-helpers.js.map +1 -0
  9. package/api/route-helpers.d.ts +2 -0
  10. package/api/route-helpers.d.ts.map +1 -0
  11. package/app-hero-art.d.ts.map +1 -0
  12. package/app-hero-art.js +344 -0
  13. package/app-hero-art.js.map +1 -0
  14. package/brand/index.d.ts +130 -0
  15. package/brand/index.d.ts.map +1 -0
  16. package/brand/index.js +126 -0
  17. package/brand/index.js.map +1 -0
  18. package/brand-classic/index.d.ts +158 -0
  19. package/brand-classic/index.d.ts.map +1 -0
  20. package/brand-classic/index.js +91 -0
  21. package/brand-classic/index.js.map +1 -0
  22. package/character-language.d.ts +16 -0
  23. package/character-language.d.ts.map +1 -0
  24. package/character-language.js +58 -0
  25. package/character-language.js.map +1 -0
  26. package/character-presets.characters.d.ts +22 -0
  27. package/character-presets.characters.d.ts.map +1 -0
  28. package/character-presets.characters.js +2617 -0
  29. package/character-presets.characters.js.map +1 -0
  30. package/character-presets.d.ts +42 -0
  31. package/character-presets.d.ts.map +1 -0
  32. package/character-presets.js +176 -0
  33. package/character-presets.js.map +1 -0
  34. package/character-presets.shared.d.ts +2 -0
  35. package/character-presets.shared.d.ts.map +1 -0
  36. package/character-presets.shared.js +8 -0
  37. package/character-presets.shared.js.map +1 -0
  38. package/checkout/index.d.ts +48 -0
  39. package/checkout/index.d.ts.map +1 -0
  40. package/checkout/index.js +59 -0
  41. package/checkout/index.js.map +1 -0
  42. package/cli/parse-duration.d.ts.map +1 -0
  43. package/cli/parse-duration.js +26 -0
  44. package/cli/parse-duration.js.map +1 -0
  45. package/config/allowed-hosts.js +44 -0
  46. package/config/allowed-hosts.js.map +1 -0
  47. package/config/api-key-prefix-hints.d.ts +24 -0
  48. package/config/api-key-prefix-hints.d.ts.map +1 -0
  49. package/config/api-key-prefix-hints.js +26 -0
  50. package/config/api-key-prefix-hints.js.map +1 -0
  51. package/config/app-config.d.ts +274 -0
  52. package/config/app-config.d.ts.map +1 -0
  53. package/config/app-config.js +64 -0
  54. package/config/app-config.js.map +1 -0
  55. package/config/app-manifest.d.ts.map +1 -0
  56. package/config/app-manifest.js +115 -0
  57. package/config/app-manifest.js.map +1 -0
  58. package/config/boot-config-store.d.ts +71 -0
  59. package/config/boot-config-store.d.ts.map +1 -0
  60. package/config/boot-config-store.js +77 -0
  61. package/config/boot-config-store.js.map +1 -0
  62. package/config/branding.d.ts +53 -0
  63. package/config/branding.d.ts.map +1 -0
  64. package/config/branding.js +23 -0
  65. package/config/branding.js.map +1 -0
  66. package/config/cloud-only.d.ts +8 -0
  67. package/config/cloud-only.d.ts.map +1 -0
  68. package/config/cloud-only.js +26 -0
  69. package/config/cloud-only.js.map +1 -0
  70. package/config/config-catalog.d.ts.map +1 -0
  71. package/config/config-catalog.js +719 -0
  72. package/config/config-catalog.js.map +1 -0
  73. package/config/config.js +23 -0
  74. package/config/config.js.map +1 -0
  75. package/config/distribution-profile.js +29 -0
  76. package/config/distribution-profile.js.map +1 -0
  77. package/config/env-vars.d.ts.map +1 -0
  78. package/config/index.d.ts +12 -0
  79. package/config/index.d.ts.map +1 -0
  80. package/config/index.js +15 -0
  81. package/config/index.js.map +1 -0
  82. package/config/plugin-auto-enable-engine.js +45 -0
  83. package/config/plugin-auto-enable-engine.js.map +1 -0
  84. package/config/plugin-manifest.d.ts.map +1 -0
  85. package/config/plugin-manifest.js +281 -0
  86. package/config/plugin-manifest.js.map +1 -0
  87. package/config/runtime-mode.d.ts.map +1 -0
  88. package/config/runtime-mode.js +107 -0
  89. package/config/runtime-mode.js.map +1 -0
  90. package/config/types.agent-defaults.d.ts +388 -0
  91. package/config/types.agent-defaults.d.ts.map +1 -0
  92. package/config/types.agents.d.ts +119 -0
  93. package/config/types.agents.d.ts.map +1 -0
  94. package/config/types.eliza.d.ts +689 -0
  95. package/config/types.eliza.d.ts.map +1 -0
  96. package/config/types.messages.d.ts +176 -0
  97. package/config/types.messages.d.ts.map +1 -0
  98. package/config/types.tools.d.ts +400 -0
  99. package/config/types.tools.d.ts.map +1 -0
  100. package/config/ui-spec.d.ts +164 -0
  101. package/config/ui-spec.d.ts.map +1 -0
  102. package/config/zod-schema.agent-runtime.d.ts +1087 -0
  103. package/config/zod-schema.core.d.ts +1048 -0
  104. package/connectors.d.ts +5 -0
  105. package/connectors.d.ts.map +1 -0
  106. package/connectors.js +73 -0
  107. package/connectors.js.map +1 -0
  108. package/contracts/agent-routes.d.ts +63 -0
  109. package/contracts/agent-routes.d.ts.map +1 -0
  110. package/contracts/agent-routes.js +55 -0
  111. package/contracts/agent-routes.js.map +1 -0
  112. package/contracts/app-permissions-routes.d.ts +148 -0
  113. package/contracts/app-permissions-routes.d.ts.map +1 -0
  114. package/contracts/app-permissions-routes.js +96 -0
  115. package/contracts/app-permissions-routes.js.map +1 -0
  116. package/contracts/app-permissions.d.ts +122 -0
  117. package/contracts/app-permissions.d.ts.map +1 -0
  118. package/contracts/app-permissions.js +163 -0
  119. package/contracts/app-permissions.js.map +1 -0
  120. package/contracts/apps-favorites-routes.d.ts +44 -0
  121. package/contracts/apps-favorites-routes.d.ts.map +1 -0
  122. package/contracts/apps-favorites-routes.js +48 -0
  123. package/contracts/apps-favorites-routes.js.map +1 -0
  124. package/contracts/apps-lifecycle-routes.d.ts +185 -0
  125. package/contracts/apps-lifecycle-routes.d.ts.map +1 -0
  126. package/contracts/apps-lifecycle-routes.js +204 -0
  127. package/contracts/apps-lifecycle-routes.js.map +1 -0
  128. package/contracts/apps-loading-routes.d.ts +64 -0
  129. package/contracts/apps-loading-routes.d.ts.map +1 -0
  130. package/contracts/apps-loading-routes.js +65 -0
  131. package/contracts/apps-loading-routes.js.map +1 -0
  132. package/contracts/apps-runs-routes.d.ts +33 -0
  133. package/contracts/apps-runs-routes.d.ts.map +1 -0
  134. package/contracts/apps-runs-routes.js +38 -0
  135. package/contracts/apps-runs-routes.js.map +1 -0
  136. package/contracts/apps.d.ts +1159 -0
  137. package/contracts/apps.d.ts.map +1 -0
  138. package/contracts/apps.js +400 -0
  139. package/contracts/apps.js.map +1 -0
  140. package/contracts/auth-routes.d.ts +23 -0
  141. package/contracts/auth-routes.d.ts.map +1 -0
  142. package/contracts/auth-routes.js +25 -0
  143. package/contracts/auth-routes.js.map +1 -0
  144. package/contracts/calendar.d.ts +181 -0
  145. package/contracts/calendar.d.ts.map +1 -0
  146. package/contracts/calendar.js +19 -0
  147. package/contracts/calendar.js.map +1 -0
  148. package/contracts/character-routes.d.ts +70 -0
  149. package/contracts/character-routes.d.ts.map +1 -0
  150. package/contracts/character-routes.js +49 -0
  151. package/contracts/character-routes.js.map +1 -0
  152. package/contracts/cloud-coding-containers.d.ts +432 -0
  153. package/contracts/cloud-coding-containers.d.ts.map +1 -0
  154. package/contracts/cloud-coding-containers.js +135 -0
  155. package/contracts/cloud-coding-containers.js.map +1 -0
  156. package/contracts/cloud-topology.js +72 -0
  157. package/contracts/cloud-topology.js.map +1 -0
  158. package/contracts/connector-routes.d.ts +39 -0
  159. package/contracts/connector-routes.d.ts.map +1 -0
  160. package/contracts/connector-routes.js +50 -0
  161. package/contracts/connector-routes.js.map +1 -0
  162. package/contracts/content-pack.d.ts +131 -0
  163. package/contracts/content-pack.d.ts.map +1 -0
  164. package/contracts/content-pack.js +103 -0
  165. package/contracts/conversation-routes.d.ts +191 -0
  166. package/contracts/conversation-routes.d.ts.map +1 -0
  167. package/contracts/conversation-routes.js +106 -0
  168. package/contracts/conversation-routes.js.map +1 -0
  169. package/contracts/diagnostics-routes.d.ts +33 -0
  170. package/contracts/diagnostics-routes.d.ts.map +1 -0
  171. package/contracts/diagnostics-routes.js +26 -0
  172. package/contracts/diagnostics-routes.js.map +1 -0
  173. package/contracts/first-run-options.d.ts +531 -0
  174. package/contracts/first-run-options.d.ts.map +1 -0
  175. package/contracts/first-run-options.js +1186 -0
  176. package/contracts/first-run-options.js.map +1 -0
  177. package/contracts/first-run-routes.d.ts +167 -0
  178. package/contracts/first-run-routes.d.ts.map +1 -0
  179. package/contracts/first-run-routes.js +115 -0
  180. package/contracts/first-run-routes.js.map +1 -0
  181. package/contracts/health.d.ts +30 -0
  182. package/contracts/health.d.ts.map +1 -0
  183. package/contracts/health.js +29 -0
  184. package/contracts/health.js.map +1 -0
  185. package/contracts/inbox-routes.d.ts +37 -0
  186. package/contracts/inbox-routes.d.ts.map +1 -0
  187. package/contracts/inbox-routes.js +44 -0
  188. package/contracts/inbox-routes.js.map +1 -0
  189. package/contracts/index.d.ts +42 -0
  190. package/contracts/index.d.ts.map +1 -0
  191. package/contracts/index.js +42 -0
  192. package/contracts/index.js.map +1 -0
  193. package/contracts/memory-routes.d.ts +27 -0
  194. package/contracts/memory-routes.d.ts.map +1 -0
  195. package/contracts/memory-routes.js +23 -0
  196. package/contracts/memory-routes.js.map +1 -0
  197. package/contracts/misc-routes.d.ts +192 -0
  198. package/contracts/misc-routes.d.ts.map +1 -0
  199. package/contracts/misc-routes.js +155 -0
  200. package/contracts/misc-routes.js.map +1 -0
  201. package/contracts/permissions-routes.d.ts +31 -0
  202. package/contracts/permissions-routes.d.ts.map +1 -0
  203. package/contracts/permissions-routes.js +34 -0
  204. package/contracts/permissions-routes.js.map +1 -0
  205. package/contracts/permissions.d.ts +109 -0
  206. package/contracts/permissions.d.ts.map +1 -0
  207. package/contracts/permissions.js +41 -0
  208. package/contracts/permissions.js.map +1 -0
  209. package/contracts/personal-assistant.d.ts +2931 -0
  210. package/contracts/personal-assistant.d.ts.map +1 -0
  211. package/contracts/personal-assistant.js +583 -0
  212. package/contracts/personal-assistant.js.map +1 -0
  213. package/contracts/plugin-routes.d.ts +105 -0
  214. package/contracts/plugin-routes.d.ts.map +1 -0
  215. package/contracts/plugin-routes.js +81 -0
  216. package/contracts/plugin-routes.js.map +1 -0
  217. package/contracts/relationships-routes.d.ts +23 -0
  218. package/contracts/relationships-routes.d.ts.map +1 -0
  219. package/contracts/relationships-routes.js +22 -0
  220. package/contracts/relationships-routes.js.map +1 -0
  221. package/contracts/service-routing.d.ts +49 -0
  222. package/contracts/service-routing.d.ts.map +1 -0
  223. package/contracts/service-routing.js +403 -0
  224. package/contracts/service-routing.js.map +1 -0
  225. package/contracts/skills-routes.d.ts +116 -0
  226. package/contracts/skills-routes.d.ts.map +1 -0
  227. package/contracts/skills-routes.js +115 -0
  228. package/contracts/skills-routes.js.map +1 -0
  229. package/contracts/subscription-routes.d.ts +47 -0
  230. package/contracts/subscription-routes.d.ts.map +1 -0
  231. package/contracts/subscription-routes.js +50 -0
  232. package/contracts/subscription-routes.js.map +1 -0
  233. package/contracts/tail-routes.d.ts +78 -0
  234. package/contracts/tail-routes.d.ts.map +1 -0
  235. package/contracts/tail-routes.js +63 -0
  236. package/contracts/tail-routes.js.map +1 -0
  237. package/contracts/theme.d.ts +134 -0
  238. package/contracts/theme.d.ts.map +1 -0
  239. package/contracts/theme.js +132 -0
  240. package/contracts/theme.js.map +1 -0
  241. package/contracts/update-status.d.ts +100 -0
  242. package/contracts/update-status.d.ts.map +1 -0
  243. package/contracts/update-status.js +45 -0
  244. package/contracts/update-status.js.map +1 -0
  245. package/contracts/wallet-routes.d.ts +82 -0
  246. package/contracts/wallet-routes.d.ts.map +1 -0
  247. package/contracts/wallet-routes.js +49 -0
  248. package/contracts/wallet-routes.js.map +1 -0
  249. package/contracts/wallet.d.ts +57 -0
  250. package/contracts/wallet.d.ts.map +1 -0
  251. package/contracts/wallet.js +200 -0
  252. package/contracts/wallet.js.map +1 -0
  253. package/contracts/workbench-routes.d.ts +231 -0
  254. package/contracts/workbench-routes.d.ts.map +1 -0
  255. package/contracts/workbench-routes.js +183 -0
  256. package/contracts/workbench-routes.js.map +1 -0
  257. package/db/drizzle-database.d.ts +13 -0
  258. package/db/drizzle-database.d.ts.map +1 -0
  259. package/db/drizzle-database.js +2 -0
  260. package/db/drizzle-database.js.map +1 -0
  261. package/dev-settings-banner-style.d.ts +14 -0
  262. package/dev-settings-banner-style.js +58 -0
  263. package/dev-settings-banner-style.js.map +1 -0
  264. package/dev-settings-figlet-heading.d.ts.map +1 -0
  265. package/dev-settings-figlet-heading.js +49 -0
  266. package/dev-settings-figlet-heading.js.map +1 -0
  267. package/elizacloud/base-url.d.ts +6 -0
  268. package/elizacloud/base-url.d.ts.map +1 -0
  269. package/elizacloud/base-url.js +65 -0
  270. package/elizacloud/base-url.js.map +1 -0
  271. package/elizacloud/cloud-provisioning.d.ts +9 -0
  272. package/elizacloud/cloud-provisioning.d.ts.map +1 -0
  273. package/elizacloud/cloud-provisioning.js +25 -0
  274. package/elizacloud/cloud-provisioning.js.map +1 -0
  275. package/elizacloud/cloud-secrets.d.ts +23 -0
  276. package/elizacloud/cloud-secrets.d.ts.map +1 -0
  277. package/elizacloud/cloud-secrets.js +51 -0
  278. package/elizacloud/cloud-secrets.js.map +1 -0
  279. package/elizacloud/index.d.ts +6 -0
  280. package/elizacloud/index.d.ts.map +1 -0
  281. package/elizacloud/index.js +6 -0
  282. package/elizacloud/index.js.map +1 -0
  283. package/elizacloud/is-cloud-reachable.d.ts +19 -0
  284. package/elizacloud/is-cloud-reachable.d.ts.map +1 -0
  285. package/elizacloud/is-cloud-reachable.js +44 -0
  286. package/elizacloud/is-cloud-reachable.js.map +1 -0
  287. package/elizacloud/server-cloud-tts.d.ts +21 -0
  288. package/elizacloud/server-cloud-tts.d.ts.map +1 -0
  289. package/elizacloud/server-cloud-tts.js +293 -0
  290. package/elizacloud/server-cloud-tts.js.map +1 -0
  291. package/email-classification/email-classifier.d.ts +57 -0
  292. package/email-classification/email-classifier.d.ts.map +1 -0
  293. package/email-classification/email-classifier.js +348 -0
  294. package/email-classification/email-classifier.js.map +1 -0
  295. package/email-classification/index.d.ts +12 -0
  296. package/email-classification/index.d.ts.map +1 -0
  297. package/email-classification/index.js +12 -0
  298. package/email-classification/index.js.map +1 -0
  299. package/email-classification/wrap-untrusted-email-content.d.ts +15 -0
  300. package/email-classification/wrap-untrusted-email-content.d.ts.map +1 -0
  301. package/email-classification/wrap-untrusted-email-content.js +24 -0
  302. package/email-classification/wrap-untrusted-email-content.js.map +1 -0
  303. package/env-utils.d.ts +11 -0
  304. package/env-utils.d.ts.map +1 -0
  305. package/env-utils.js +11 -0
  306. package/env-utils.js.map +1 -0
  307. package/events/index.d.ts +68 -0
  308. package/events/index.d.ts.map +1 -0
  309. package/events/index.js +53 -0
  310. package/events/index.js.map +1 -0
  311. package/events.d.ts +2 -0
  312. package/events.d.ts.map +1 -0
  313. package/events.js +2 -0
  314. package/events.js.map +1 -0
  315. package/format-error.d.ts +15 -0
  316. package/format-error.d.ts.map +1 -0
  317. package/format-error.js +17 -0
  318. package/format-error.js.map +1 -0
  319. package/hardware-catalog/index.d.ts +204 -0
  320. package/hardware-catalog/index.d.ts.map +1 -0
  321. package/hardware-catalog/index.js +174 -0
  322. package/hardware-catalog/index.js.map +1 -0
  323. package/i18n/generated/validation-keyword-data.d.ts +3054 -0
  324. package/i18n/generated/validation-keyword-data.d.ts.map +1 -0
  325. package/i18n/generated/validation-keyword-data.js +3058 -0
  326. package/i18n/generated/validation-keyword-data.js.map +1 -0
  327. package/i18n/keyword-matching.d.ts.map +1 -0
  328. package/i18n/keyword-matching.js +116 -0
  329. package/i18n/keyword-matching.js.map +1 -0
  330. package/index.d.ts +106 -0
  331. package/index.d.ts.map +1 -0
  332. package/index.js +139 -0
  333. package/index.js.map +1 -0
  334. package/knowledge-graph/entity-types.d.ts +135 -0
  335. package/knowledge-graph/entity-types.d.ts.map +1 -0
  336. package/knowledge-graph/entity-types.js +75 -0
  337. package/knowledge-graph/entity-types.js.map +1 -0
  338. package/knowledge-graph/index.d.ts +13 -0
  339. package/knowledge-graph/index.d.ts.map +1 -0
  340. package/knowledge-graph/index.js +13 -0
  341. package/knowledge-graph/index.js.map +1 -0
  342. package/knowledge-graph/merge.d.ts +76 -0
  343. package/knowledge-graph/merge.d.ts.map +1 -0
  344. package/knowledge-graph/merge.js +175 -0
  345. package/knowledge-graph/merge.js.map +1 -0
  346. package/knowledge-graph/relationship-types.d.ts +105 -0
  347. package/knowledge-graph/relationship-types.d.ts.map +1 -0
  348. package/knowledge-graph/relationship-types.js +114 -0
  349. package/knowledge-graph/relationship-types.js.map +1 -0
  350. package/lifeops-constants/index.d.ts +9 -0
  351. package/lifeops-constants/index.d.ts.map +1 -0
  352. package/lifeops-constants/index.js +9 -0
  353. package/lifeops-constants/index.js.map +1 -0
  354. package/lifeops-constants/service-constants.d.ts +79 -0
  355. package/lifeops-constants/service-constants.d.ts.map +1 -0
  356. package/lifeops-constants/service-constants.js +123 -0
  357. package/lifeops-constants/service-constants.js.map +1 -0
  358. package/lifeops-normalize/index.d.ts +12 -0
  359. package/lifeops-normalize/index.d.ts.map +1 -0
  360. package/lifeops-normalize/index.js +12 -0
  361. package/lifeops-normalize/index.js.map +1 -0
  362. package/lifeops-normalize/service-error.d.ts +14 -0
  363. package/lifeops-normalize/service-error.d.ts.map +1 -0
  364. package/lifeops-normalize/service-error.js +19 -0
  365. package/lifeops-normalize/service-error.js.map +1 -0
  366. package/lifeops-normalize/service-normalize.d.ts +38 -0
  367. package/lifeops-normalize/service-normalize.d.ts.map +1 -0
  368. package/lifeops-normalize/service-normalize.js +205 -0
  369. package/lifeops-normalize/service-normalize.js.map +1 -0
  370. package/lifeops-normalize/time-zone.d.ts +12 -0
  371. package/lifeops-normalize/time-zone.d.ts.map +1 -0
  372. package/lifeops-normalize/time-zone.js +29 -0
  373. package/lifeops-normalize/time-zone.js.map +1 -0
  374. package/local-inference/catalog.d.ts +122 -0
  375. package/local-inference/catalog.d.ts.map +1 -0
  376. package/local-inference/catalog.js +534 -0
  377. package/local-inference/catalog.js.map +1 -0
  378. package/local-inference/device-fit.d.ts +73 -0
  379. package/local-inference/device-fit.d.ts.map +1 -0
  380. package/local-inference/device-fit.js +155 -0
  381. package/local-inference/device-fit.js.map +1 -0
  382. package/local-inference/gpu-profiles.d.ts +110 -0
  383. package/local-inference/gpu-profiles.d.ts.map +1 -0
  384. package/local-inference/gpu-profiles.js +191 -0
  385. package/local-inference/gpu-profiles.js.map +1 -0
  386. package/local-inference/hf-proxy.d.ts +43 -0
  387. package/local-inference/hf-proxy.d.ts.map +1 -0
  388. package/local-inference/hf-proxy.js +50 -0
  389. package/local-inference/hf-proxy.js.map +1 -0
  390. package/local-inference/hub-auth.d.ts +26 -0
  391. package/local-inference/hub-auth.d.ts.map +1 -0
  392. package/local-inference/hub-auth.js +48 -0
  393. package/local-inference/hub-auth.js.map +1 -0
  394. package/local-inference/index.d.ts +26 -0
  395. package/local-inference/index.d.ts.map +1 -0
  396. package/local-inference/index.js +23 -0
  397. package/local-inference/index.js.map +1 -0
  398. package/local-inference/manifest-signature.d.ts +61 -0
  399. package/local-inference/manifest-signature.d.ts.map +1 -0
  400. package/local-inference/manifest-signature.js +129 -0
  401. package/local-inference/manifest-signature.js.map +1 -0
  402. package/local-inference/network-policy.d.ts +115 -0
  403. package/local-inference/network-policy.d.ts.map +1 -0
  404. package/local-inference/network-policy.js +154 -0
  405. package/local-inference/network-policy.js.map +1 -0
  406. package/local-inference/paths.d.ts +24 -0
  407. package/local-inference/paths.js +40 -0
  408. package/local-inference/providers-types.d.ts +56 -0
  409. package/local-inference/providers-types.d.ts.map +1 -0
  410. package/local-inference/providers-types.js +19 -0
  411. package/local-inference/providers-types.js.map +1 -0
  412. package/local-inference/routing-preferences.d.ts +42 -0
  413. package/local-inference/routing-preferences.d.ts.map +1 -0
  414. package/local-inference/routing-preferences.js +96 -0
  415. package/local-inference/routing-preferences.js.map +1 -0
  416. package/local-inference/runtime-class.d.ts +29 -0
  417. package/local-inference/runtime-class.d.ts.map +1 -0
  418. package/local-inference/runtime-class.js +30 -0
  419. package/local-inference/runtime-class.js.map +1 -0
  420. package/local-inference/throughput.d.ts +74 -0
  421. package/local-inference/throughput.d.ts.map +1 -0
  422. package/local-inference/throughput.js +84 -0
  423. package/local-inference/throughput.js.map +1 -0
  424. package/local-inference/types.d.ts +548 -0
  425. package/local-inference/types.d.ts.map +1 -0
  426. package/local-inference/types.js +22 -0
  427. package/local-inference/types.js.map +1 -0
  428. package/local-inference/voice-models.d.ts +156 -0
  429. package/local-inference/voice-models.d.ts.map +1 -0
  430. package/local-inference/voice-models.js +769 -0
  431. package/local-inference/voice-models.js.map +1 -0
  432. package/local-inference-gpu/gpu-overrides.d.ts +97 -0
  433. package/local-inference-gpu/gpu-overrides.d.ts.map +1 -0
  434. package/local-inference-gpu/gpu-overrides.js +76 -0
  435. package/local-inference-gpu/gpu-overrides.js.map +1 -0
  436. package/local-inference-gpu/gpu-profile-loader.d.ts +83 -0
  437. package/local-inference-gpu/gpu-profile-loader.d.ts.map +1 -0
  438. package/local-inference-gpu/gpu-profile-loader.js +196 -0
  439. package/local-inference-gpu/gpu-profile-loader.js.map +1 -0
  440. package/local-inference-gpu/gpu-profile-schema.d.ts +208 -0
  441. package/local-inference-gpu/gpu-profile-schema.d.ts.map +1 -0
  442. package/local-inference-gpu/gpu-profile-schema.js +123 -0
  443. package/local-inference-gpu/gpu-profile-schema.js.map +1 -0
  444. package/local-inference-gpu/gpu-tier-detect.d.ts +61 -0
  445. package/local-inference-gpu/gpu-tier-detect.d.ts.map +1 -0
  446. package/local-inference-gpu/gpu-tier-detect.js +93 -0
  447. package/local-inference-gpu/gpu-tier-detect.js.map +1 -0
  448. package/local-inference-gpu/gpu-tier-profiles.d.ts +110 -0
  449. package/local-inference-gpu/gpu-tier-profiles.d.ts.map +1 -0
  450. package/local-inference-gpu/gpu-tier-profiles.js +235 -0
  451. package/local-inference-gpu/gpu-tier-profiles.js.map +1 -0
  452. package/loopback-trust.d.ts +73 -0
  453. package/loopback-trust.d.ts.map +1 -0
  454. package/loopback-trust.js +241 -0
  455. package/loopback-trust.js.map +1 -0
  456. package/package.json +208 -30
  457. package/restart.d.ts +28 -0
  458. package/restart.d.ts.map +1 -0
  459. package/restart.js +30 -0
  460. package/restart.js.map +1 -0
  461. package/runtime-env.d.ts +84 -0
  462. package/runtime-env.d.ts.map +1 -0
  463. package/runtime-env.js +270 -0
  464. package/runtime-env.js.map +1 -0
  465. package/self-edit.d.ts +64 -0
  466. package/self-edit.d.ts.map +1 -0
  467. package/self-edit.js +133 -0
  468. package/self-edit.js.map +1 -0
  469. package/settings-debug.d.ts +9 -0
  470. package/settings-debug.d.ts.map +1 -0
  471. package/settings-debug.js +9 -0
  472. package/settings-debug.js.map +1 -0
  473. package/spoken-text.d.ts.map +1 -0
  474. package/spoken-text.js +58 -0
  475. package/spoken-text.js.map +1 -0
  476. package/steward-session-client/index.d.ts +150 -0
  477. package/steward-session-client/index.d.ts.map +1 -0
  478. package/steward-session-client/index.js +192 -0
  479. package/steward-session-client/index.js.map +1 -0
  480. package/steward-session-client/steward-oauth-pkce.d.ts +24 -0
  481. package/steward-session-client/steward-oauth-pkce.d.ts.map +1 -0
  482. package/steward-session-client/steward-oauth-pkce.js +105 -0
  483. package/steward-session-client/steward-oauth-pkce.js.map +1 -0
  484. package/test-env-config.d.ts +81 -0
  485. package/test-env-config.d.ts.map +1 -0
  486. package/test-env-config.js +125 -0
  487. package/test-env-config.js.map +1 -0
  488. package/test-support/test-helpers.d.ts +79 -0
  489. package/test-support/test-helpers.d.ts.map +1 -0
  490. package/test-support/test-helpers.js +341 -0
  491. package/test-support/test-helpers.js.map +1 -0
  492. package/transcripts.d.ts +141 -0
  493. package/transcripts.d.ts.map +1 -0
  494. package/transcripts.js +162 -0
  495. package/transcripts.js.map +1 -0
  496. package/type-guards.d.ts +7 -0
  497. package/type-guards.d.ts.map +1 -0
  498. package/type-guards.js +27 -0
  499. package/type-guards.js.map +1 -0
  500. package/types/index.d.ts +654 -0
  501. package/types/index.d.ts.map +1 -0
  502. package/utils/assistant-text.d.ts +13 -0
  503. package/utils/assistant-text.d.ts.map +1 -0
  504. package/utils/assistant-text.js +292 -0
  505. package/utils/assistant-text.js.map +1 -0
  506. package/utils/browser-tab-kit-types.d.ts +81 -0
  507. package/utils/browser-tab-kit-types.js +23 -0
  508. package/utils/browser-tabs-renderer-registry.d.ts +56 -0
  509. package/utils/browser-tabs-renderer-registry.d.ts.map +1 -0
  510. package/utils/browser-tabs-renderer-registry.js +1282 -0
  511. package/utils/browser-tabs-renderer-registry.js.map +1 -0
  512. package/utils/documents-upload-image.js +147 -0
  513. package/utils/documents-upload-image.js.map +1 -0
  514. package/utils/env.d.ts +35 -0
  515. package/utils/env.d.ts.map +1 -0
  516. package/utils/env.js +133 -0
  517. package/utils/env.js.map +1 -0
  518. package/utils/errors.d.ts +14 -0
  519. package/utils/errors.d.ts.map +1 -0
  520. package/utils/errors.js +23 -0
  521. package/utils/errors.js.map +1 -0
  522. package/utils/exec-safety.d.ts.map +1 -0
  523. package/utils/exec-safety.js +25 -0
  524. package/utils/exec-safety.js.map +1 -0
  525. package/utils/format.d.ts +85 -0
  526. package/utils/format.d.ts.map +1 -0
  527. package/utils/format.js +140 -0
  528. package/utils/format.js.map +1 -0
  529. package/utils/log-prefix.d.ts.map +1 -0
  530. package/utils/log-prefix.js +44 -0
  531. package/utils/log-prefix.js.map +1 -0
  532. package/utils/name-tokens.d.ts +24 -0
  533. package/utils/name-tokens.js +37 -0
  534. package/utils/namespace-defaults.d.ts +10 -0
  535. package/utils/namespace-defaults.d.ts.map +1 -0
  536. package/utils/namespace-defaults.js +17 -0
  537. package/utils/namespace-defaults.js.map +1 -0
  538. package/utils/number-parsing.d.ts.map +1 -0
  539. package/utils/number-parsing.js +57 -0
  540. package/utils/number-parsing.js.map +1 -0
  541. package/utils/permission-deep-links.d.ts +35 -0
  542. package/utils/permission-deep-links.d.ts.map +1 -0
  543. package/utils/permission-deep-links.js +95 -0
  544. package/utils/permission-deep-links.js.map +1 -0
  545. package/utils/serialise.js +22 -0
  546. package/utils/serialise.js.map +1 -0
  547. package/utils/sql-compat.js +112 -0
  548. package/utils/sql-compat.js.map +1 -0
  549. package/utils/streaming-text.d.ts +9 -0
  550. package/utils/streaming-text.d.ts.map +1 -0
  551. package/utils/streaming-text.js +116 -0
  552. package/utils/streaming-text.js.map +1 -0
  553. package/utils/string-hash.d.ts +11 -0
  554. package/utils/string-hash.d.ts.map +1 -0
  555. package/utils/string-hash.js +17 -0
  556. package/utils/string-hash.js.map +1 -0
  557. package/utils/tts-debug.d.ts +10 -0
  558. package/utils/tts-debug.d.ts.map +1 -0
  559. package/utils/tts-debug.js +73 -0
  560. package/utils/tts-debug.js.map +1 -0
  561. package/view-hero-art.d.ts +75 -0
  562. package/view-hero-art.d.ts.map +1 -0
  563. package/view-hero-art.js +354 -0
  564. package/view-hero-art.js.map +1 -0
  565. package/voice/first-sentence-snip.d.ts +68 -0
  566. package/voice/first-sentence-snip.d.ts.map +1 -0
  567. package/voice/first-sentence-snip.js +284 -0
  568. package/voice/first-sentence-snip.js.map +1 -0
  569. package/voice/owner-inference.d.ts +57 -0
  570. package/voice/owner-inference.d.ts.map +1 -0
  571. package/voice/owner-inference.js +73 -0
  572. package/voice/owner-inference.js.map +1 -0
  573. package/voice/respond-gate.d.ts +88 -0
  574. package/voice/respond-gate.d.ts.map +1 -0
  575. package/voice/respond-gate.js +139 -0
  576. package/voice/respond-gate.js.map +1 -0
  577. package/voice/voice-cancellation-token.d.ts +127 -0
  578. package/voice/voice-cancellation-token.d.ts.map +1 -0
  579. package/voice/voice-cancellation-token.js +186 -0
  580. package/voice/voice-cancellation-token.js.map +1 -0
  581. package/voice-eot.d.ts +42 -0
  582. package/voice-eot.d.ts.map +1 -0
  583. package/voice-eot.js +158 -0
  584. package/voice-eot.js.map +1 -0
  585. package/voice-wer.d.ts +19 -0
  586. package/voice-wer.d.ts.map +1 -0
  587. package/voice-wer.js +42 -0
  588. package/voice-wer.js.map +1 -0
  589. package/voice.d.ts +55 -0
  590. package/voice.d.ts.map +1 -0
  591. package/voice.js +337 -0
  592. package/voice.js.map +1 -0
  593. package/dist/api/chat-contracts.d.ts +0 -2
  594. package/dist/api/chat-contracts.d.ts.map +0 -1
  595. package/dist/api/chat-contracts.js +0 -2
  596. package/dist/api/chat-contracts.js.map +0 -1
  597. package/dist/api/http-helpers.d.ts +0 -50
  598. package/dist/api/http-helpers.d.ts.map +0 -1
  599. package/dist/api/http-helpers.js +0 -168
  600. package/dist/api/http-helpers.js.map +0 -1
  601. package/dist/api/route-helpers.d.ts +0 -16
  602. package/dist/api/route-helpers.d.ts.map +0 -1
  603. package/dist/app-hero-art.d.ts.map +0 -1
  604. package/dist/app-hero-art.js +0 -358
  605. package/dist/app-hero-art.js.map +0 -1
  606. package/dist/cli/parse-duration.d.ts.map +0 -1
  607. package/dist/cli/parse-duration.js +0 -28
  608. package/dist/cli/parse-duration.js.map +0 -1
  609. package/dist/config/allowed-hosts.js +0 -44
  610. package/dist/config/allowed-hosts.js.map +0 -1
  611. package/dist/config/api-key-prefix-hints.d.ts +0 -25
  612. package/dist/config/api-key-prefix-hints.d.ts.map +0 -1
  613. package/dist/config/api-key-prefix-hints.js +0 -27
  614. package/dist/config/api-key-prefix-hints.js.map +0 -1
  615. package/dist/config/app-config.d.ts +0 -273
  616. package/dist/config/app-config.d.ts.map +0 -1
  617. package/dist/config/app-config.js +0 -32
  618. package/dist/config/app-config.js.map +0 -1
  619. package/dist/config/app-manifest.d.ts.map +0 -1
  620. package/dist/config/app-manifest.js +0 -109
  621. package/dist/config/app-manifest.js.map +0 -1
  622. package/dist/config/boot-config-react.d.ts +0 -5
  623. package/dist/config/boot-config-react.d.ts.map +0 -1
  624. package/dist/config/boot-config-react.js +0 -8
  625. package/dist/config/boot-config-react.js.map +0 -1
  626. package/dist/config/boot-config-store.d.ts +0 -74
  627. package/dist/config/boot-config-store.d.ts.map +0 -1
  628. package/dist/config/boot-config-store.js +0 -121
  629. package/dist/config/boot-config-store.js.map +0 -1
  630. package/dist/config/branding-react.d.ts +0 -4
  631. package/dist/config/branding-react.d.ts.map +0 -1
  632. package/dist/config/branding-react.js +0 -12
  633. package/dist/config/branding-react.js.map +0 -1
  634. package/dist/config/branding.d.ts +0 -53
  635. package/dist/config/branding.d.ts.map +0 -1
  636. package/dist/config/branding.js +0 -23
  637. package/dist/config/branding.js.map +0 -1
  638. package/dist/config/cloud-only.d.ts +0 -6
  639. package/dist/config/cloud-only.d.ts.map +0 -1
  640. package/dist/config/cloud-only.js +0 -16
  641. package/dist/config/cloud-only.js.map +0 -1
  642. package/dist/config/config-catalog.d.ts.map +0 -1
  643. package/dist/config/config-catalog.js +0 -710
  644. package/dist/config/config-catalog.js.map +0 -1
  645. package/dist/config/config.js +0 -23
  646. package/dist/config/config.js.map +0 -1
  647. package/dist/config/distribution-profile.js +0 -29
  648. package/dist/config/distribution-profile.js.map +0 -1
  649. package/dist/config/env-vars.d.ts.map +0 -1
  650. package/dist/config/index.d.ts +0 -14
  651. package/dist/config/index.d.ts.map +0 -1
  652. package/dist/config/index.js +0 -17
  653. package/dist/config/index.js.map +0 -1
  654. package/dist/config/plugin-auto-enable-engine.js +0 -45
  655. package/dist/config/plugin-auto-enable-engine.js.map +0 -1
  656. package/dist/config/plugin-manifest.d.ts.map +0 -1
  657. package/dist/config/plugin-manifest.js +0 -272
  658. package/dist/config/plugin-manifest.js.map +0 -1
  659. package/dist/config/runtime-mode.d.ts.map +0 -1
  660. package/dist/config/runtime-mode.js +0 -103
  661. package/dist/config/runtime-mode.js.map +0 -1
  662. package/dist/config/types.agent-defaults.d.ts +0 -383
  663. package/dist/config/types.agent-defaults.d.ts.map +0 -1
  664. package/dist/config/types.agents.d.ts +0 -114
  665. package/dist/config/types.agents.d.ts.map +0 -1
  666. package/dist/config/types.eliza.d.ts +0 -689
  667. package/dist/config/types.eliza.d.ts.map +0 -1
  668. package/dist/config/types.messages.d.ts +0 -176
  669. package/dist/config/types.messages.d.ts.map +0 -1
  670. package/dist/config/types.tools.d.ts +0 -400
  671. package/dist/config/types.tools.d.ts.map +0 -1
  672. package/dist/config/ui-spec.d.ts +0 -164
  673. package/dist/config/ui-spec.d.ts.map +0 -1
  674. package/dist/config/zod-schema.agent-runtime.d.ts +0 -1087
  675. package/dist/config/zod-schema.core.d.ts +0 -1048
  676. package/dist/connectors.d.ts +0 -2
  677. package/dist/connectors.d.ts.map +0 -1
  678. package/dist/connectors.js +0 -2
  679. package/dist/connectors.js.map +0 -1
  680. package/dist/contracts/apps.d.ts +0 -279
  681. package/dist/contracts/apps.d.ts.map +0 -1
  682. package/dist/contracts/apps.js +0 -218
  683. package/dist/contracts/apps.js.map +0 -1
  684. package/dist/contracts/cloud-topology.js +0 -72
  685. package/dist/contracts/cloud-topology.js.map +0 -1
  686. package/dist/contracts/content-pack.d.ts +0 -131
  687. package/dist/contracts/content-pack.d.ts.map +0 -1
  688. package/dist/contracts/content-pack.js +0 -103
  689. package/dist/contracts/health.d.ts +0 -30
  690. package/dist/contracts/health.d.ts.map +0 -1
  691. package/dist/contracts/health.js +0 -29
  692. package/dist/contracts/health.js.map +0 -1
  693. package/dist/contracts/index.d.ts +0 -16
  694. package/dist/contracts/index.d.ts.map +0 -1
  695. package/dist/contracts/index.js +0 -16
  696. package/dist/contracts/index.js.map +0 -1
  697. package/dist/contracts/lifeops.d.ts +0 -3140
  698. package/dist/contracts/lifeops.d.ts.map +0 -1
  699. package/dist/contracts/lifeops.js +0 -587
  700. package/dist/contracts/lifeops.js.map +0 -1
  701. package/dist/contracts/onboarding.d.ts +0 -507
  702. package/dist/contracts/onboarding.d.ts.map +0 -1
  703. package/dist/contracts/onboarding.js +0 -1141
  704. package/dist/contracts/onboarding.js.map +0 -1
  705. package/dist/contracts/permissions.d.ts +0 -121
  706. package/dist/contracts/permissions.d.ts.map +0 -1
  707. package/dist/contracts/permissions.js +0 -31
  708. package/dist/contracts/permissions.js.map +0 -1
  709. package/dist/contracts/service-routing.d.ts +0 -155
  710. package/dist/contracts/service-routing.d.ts.map +0 -1
  711. package/dist/contracts/service-routing.js +0 -395
  712. package/dist/contracts/service-routing.js.map +0 -1
  713. package/dist/contracts/theme.d.ts +0 -136
  714. package/dist/contracts/theme.d.ts.map +0 -1
  715. package/dist/contracts/theme.js +0 -134
  716. package/dist/contracts/theme.js.map +0 -1
  717. package/dist/contracts/wallet.d.ts +0 -622
  718. package/dist/contracts/wallet.d.ts.map +0 -1
  719. package/dist/contracts/wallet.js +0 -194
  720. package/dist/contracts/wallet.js.map +0 -1
  721. package/dist/dev-settings-banner-style.d.ts +0 -14
  722. package/dist/dev-settings-banner-style.js +0 -58
  723. package/dist/dev-settings-banner-style.js.map +0 -1
  724. package/dist/dev-settings-figlet-heading.d.ts.map +0 -1
  725. package/dist/dev-settings-figlet-heading.js +0 -56
  726. package/dist/dev-settings-figlet-heading.js.map +0 -1
  727. package/dist/env-utils.d.ts +0 -2
  728. package/dist/env-utils.d.ts.map +0 -1
  729. package/dist/env-utils.js +0 -13
  730. package/dist/env-utils.js.map +0 -1
  731. package/dist/events/index.d.ts +0 -62
  732. package/dist/events/index.d.ts.map +0 -1
  733. package/dist/events/index.js +0 -52
  734. package/dist/events/index.js.map +0 -1
  735. package/dist/format-error.d.ts +0 -14
  736. package/dist/format-error.d.ts.map +0 -1
  737. package/dist/format-error.js +0 -18
  738. package/dist/format-error.js.map +0 -1
  739. package/dist/i18n/generated/validation-keyword-data.d.ts +0 -3080
  740. package/dist/i18n/generated/validation-keyword-data.d.ts.map +0 -1
  741. package/dist/i18n/generated/validation-keyword-data.js +0 -3084
  742. package/dist/i18n/generated/validation-keyword-data.js.map +0 -1
  743. package/dist/i18n/keyword-matching.d.ts.map +0 -1
  744. package/dist/i18n/keyword-matching.js +0 -113
  745. package/dist/i18n/keyword-matching.js.map +0 -1
  746. package/dist/index.d.ts +0 -93
  747. package/dist/index.d.ts.map +0 -1
  748. package/dist/index.js +0 -105
  749. package/dist/index.js.map +0 -1
  750. package/dist/local-inference/index.d.ts +0 -16
  751. package/dist/local-inference/index.d.ts.map +0 -1
  752. package/dist/local-inference/index.js +0 -16
  753. package/dist/local-inference/index.js.map +0 -1
  754. package/dist/local-inference/paths.d.ts +0 -24
  755. package/dist/local-inference/paths.js +0 -40
  756. package/dist/local-inference/routing-preferences.d.ts +0 -31
  757. package/dist/local-inference/routing-preferences.d.ts.map +0 -1
  758. package/dist/local-inference/routing-preferences.js +0 -73
  759. package/dist/local-inference/routing-preferences.js.map +0 -1
  760. package/dist/local-inference/types.d.ts +0 -62
  761. package/dist/local-inference/types.d.ts.map +0 -1
  762. package/dist/local-inference/types.js +0 -25
  763. package/dist/local-inference/types.js.map +0 -1
  764. package/dist/onboarding-presets.characters.d.ts +0 -22
  765. package/dist/onboarding-presets.characters.d.ts.map +0 -1
  766. package/dist/onboarding-presets.characters.js +0 -2617
  767. package/dist/onboarding-presets.characters.js.map +0 -1
  768. package/dist/onboarding-presets.d.ts +0 -40
  769. package/dist/onboarding-presets.d.ts.map +0 -1
  770. package/dist/onboarding-presets.js +0 -181
  771. package/dist/onboarding-presets.js.map +0 -1
  772. package/dist/onboarding-presets.shared.d.ts +0 -2
  773. package/dist/onboarding-presets.shared.d.ts.map +0 -1
  774. package/dist/onboarding-presets.shared.js +0 -8
  775. package/dist/onboarding-presets.shared.js.map +0 -1
  776. package/dist/package.json +0 -50
  777. package/dist/restart.d.ts +0 -27
  778. package/dist/restart.d.ts.map +0 -1
  779. package/dist/restart.js +0 -29
  780. package/dist/restart.js.map +0 -1
  781. package/dist/runtime-env.d.ts +0 -84
  782. package/dist/runtime-env.d.ts.map +0 -1
  783. package/dist/runtime-env.js +0 -262
  784. package/dist/runtime-env.js.map +0 -1
  785. package/dist/self-edit.d.ts +0 -64
  786. package/dist/self-edit.d.ts.map +0 -1
  787. package/dist/self-edit.js +0 -133
  788. package/dist/self-edit.js.map +0 -1
  789. package/dist/settings-debug.d.ts +0 -20
  790. package/dist/settings-debug.d.ts.map +0 -1
  791. package/dist/settings-debug.js +0 -122
  792. package/dist/settings-debug.js.map +0 -1
  793. package/dist/spoken-text.d.ts.map +0 -1
  794. package/dist/spoken-text.js +0 -57
  795. package/dist/spoken-text.js.map +0 -1
  796. package/dist/test-support/test-helpers.d.ts +0 -112
  797. package/dist/test-support/test-helpers.d.ts.map +0 -1
  798. package/dist/test-support/test-helpers.js +0 -416
  799. package/dist/test-support/test-helpers.js.map +0 -1
  800. package/dist/themes/index.d.ts +0 -7
  801. package/dist/themes/index.d.ts.map +0 -1
  802. package/dist/themes/index.js +0 -6
  803. package/dist/themes/index.js.map +0 -1
  804. package/dist/themes/presets.d.ts +0 -15
  805. package/dist/themes/presets.d.ts.map +0 -1
  806. package/dist/themes/presets.js +0 -789
  807. package/dist/themes/presets.js.map +0 -1
  808. package/dist/type-guards.d.ts +0 -30
  809. package/dist/type-guards.d.ts.map +0 -1
  810. package/dist/type-guards.js +0 -50
  811. package/dist/type-guards.js.map +0 -1
  812. package/dist/types/index.d.ts +0 -655
  813. package/dist/types/index.d.ts.map +0 -1
  814. package/dist/utils/assistant-text.d.ts +0 -2
  815. package/dist/utils/assistant-text.d.ts.map +0 -1
  816. package/dist/utils/assistant-text.js +0 -168
  817. package/dist/utils/assistant-text.js.map +0 -1
  818. package/dist/utils/browser-tab-kit-types.d.ts +0 -81
  819. package/dist/utils/browser-tab-kit-types.js +0 -23
  820. package/dist/utils/browser-tabs-renderer-registry.d.ts +0 -56
  821. package/dist/utils/browser-tabs-renderer-registry.d.ts.map +0 -1
  822. package/dist/utils/browser-tabs-renderer-registry.js +0 -962
  823. package/dist/utils/browser-tabs-renderer-registry.js.map +0 -1
  824. package/dist/utils/documents-upload-image.js +0 -147
  825. package/dist/utils/documents-upload-image.js.map +0 -1
  826. package/dist/utils/env.d.ts +0 -34
  827. package/dist/utils/env.d.ts.map +0 -1
  828. package/dist/utils/env.js +0 -131
  829. package/dist/utils/env.js.map +0 -1
  830. package/dist/utils/errors.d.ts +0 -13
  831. package/dist/utils/errors.d.ts.map +0 -1
  832. package/dist/utils/errors.js +0 -26
  833. package/dist/utils/errors.js.map +0 -1
  834. package/dist/utils/exec-safety.d.ts.map +0 -1
  835. package/dist/utils/exec-safety.js +0 -22
  836. package/dist/utils/exec-safety.js.map +0 -1
  837. package/dist/utils/format.d.ts +0 -66
  838. package/dist/utils/format.d.ts.map +0 -1
  839. package/dist/utils/format.js +0 -122
  840. package/dist/utils/format.js.map +0 -1
  841. package/dist/utils/index.d.ts +0 -12
  842. package/dist/utils/index.d.ts.map +0 -1
  843. package/dist/utils/index.js +0 -12
  844. package/dist/utils/index.js.map +0 -1
  845. package/dist/utils/log-prefix.d.ts.map +0 -1
  846. package/dist/utils/log-prefix.js +0 -54
  847. package/dist/utils/log-prefix.js.map +0 -1
  848. package/dist/utils/name-tokens.d.ts +0 -24
  849. package/dist/utils/name-tokens.js +0 -37
  850. package/dist/utils/namespace-defaults.d.ts +0 -6
  851. package/dist/utils/namespace-defaults.d.ts.map +0 -1
  852. package/dist/utils/namespace-defaults.js +0 -16
  853. package/dist/utils/namespace-defaults.js.map +0 -1
  854. package/dist/utils/number-parsing.d.ts.map +0 -1
  855. package/dist/utils/number-parsing.js +0 -52
  856. package/dist/utils/number-parsing.js.map +0 -1
  857. package/dist/utils/permission-deep-links.d.ts +0 -34
  858. package/dist/utils/permission-deep-links.d.ts.map +0 -1
  859. package/dist/utils/permission-deep-links.js +0 -84
  860. package/dist/utils/permission-deep-links.js.map +0 -1
  861. package/dist/utils/serialise.js +0 -22
  862. package/dist/utils/serialise.js.map +0 -1
  863. package/dist/utils/sql-compat.js +0 -112
  864. package/dist/utils/sql-compat.js.map +0 -1
  865. package/dist/utils/streaming-text.d.ts +0 -9
  866. package/dist/utils/streaming-text.d.ts.map +0 -1
  867. package/dist/utils/streaming-text.js +0 -113
  868. package/dist/utils/streaming-text.js.map +0 -1
  869. package/dist/utils/tts-debug.d.ts +0 -9
  870. package/dist/utils/tts-debug.d.ts.map +0 -1
  871. package/dist/utils/tts-debug.js +0 -70
  872. package/dist/utils/tts-debug.js.map +0 -1
  873. package/dist/voice.d.ts +0 -40
  874. package/dist/voice.d.ts.map +0 -1
  875. package/dist/voice.js +0 -296
  876. package/dist/voice.js.map +0 -1
  877. /package/{dist/api → api}/route-helpers.js +0 -0
  878. /package/{dist/api → api}/route-helpers.js.map +0 -0
  879. /package/{dist/app-hero-art.d.ts → app-hero-art.d.ts} +0 -0
  880. /package/{dist/awareness → awareness}/index.d.ts +0 -0
  881. /package/{dist/awareness → awareness}/index.d.ts.map +0 -0
  882. /package/{dist/awareness → awareness}/index.js +0 -0
  883. /package/{dist/awareness → awareness}/index.js.map +0 -0
  884. /package/{dist/awareness → awareness}/registry.d.ts +0 -0
  885. /package/{dist/awareness → awareness}/registry.d.ts.map +0 -0
  886. /package/{dist/awareness → awareness}/registry.js +0 -0
  887. /package/{dist/awareness → awareness}/registry.js.map +0 -0
  888. /package/{dist/cli → cli}/parse-duration.d.ts +0 -0
  889. /package/{dist/config → config}/allowed-hosts.d.ts +0 -0
  890. /package/{dist/config → config}/allowed-hosts.d.ts.map +0 -0
  891. /package/{dist/config → config}/app-manifest.d.ts +0 -0
  892. /package/{dist/config → config}/boot-config.d.ts +0 -0
  893. /package/{dist/config → config}/boot-config.d.ts.map +0 -0
  894. /package/{dist/config → config}/boot-config.js +0 -0
  895. /package/{dist/config → config}/boot-config.js.map +0 -0
  896. /package/{dist/config → config}/config-catalog.d.ts +0 -0
  897. /package/{dist/config → config}/config-paths.d.ts +0 -0
  898. /package/{dist/config → config}/config-paths.d.ts.map +0 -0
  899. /package/{dist/config → config}/config-paths.js +0 -0
  900. /package/{dist/config → config}/config-paths.js.map +0 -0
  901. /package/{dist/config → config}/config.d.ts +0 -0
  902. /package/{dist/config → config}/config.d.ts.map +0 -0
  903. /package/{dist/config → config}/distribution-profile.d.ts +0 -0
  904. /package/{dist/config → config}/distribution-profile.d.ts.map +0 -0
  905. /package/{dist/config → config}/env-vars.d.ts +0 -0
  906. /package/{dist/config → config}/env-vars.js +0 -0
  907. /package/{dist/config → config}/env-vars.js.map +0 -0
  908. /package/{dist/config → config}/plugin-auto-enable-engine.d.ts +0 -0
  909. /package/{dist/config → config}/plugin-auto-enable-engine.d.ts.map +0 -0
  910. /package/{dist/config → config}/plugin-auto-enable.d.ts +0 -0
  911. /package/{dist/config → config}/plugin-auto-enable.d.ts.map +0 -0
  912. /package/{dist/config → config}/plugin-auto-enable.js +0 -0
  913. /package/{dist/config → config}/plugin-auto-enable.js.map +0 -0
  914. /package/{dist/config → config}/plugin-manifest.d.ts +0 -0
  915. /package/{dist/config → config}/plugin-ui-spec.d.ts +0 -0
  916. /package/{dist/config → config}/plugin-ui-spec.d.ts.map +0 -0
  917. /package/{dist/config → config}/plugin-ui-spec.js +0 -0
  918. /package/{dist/config → config}/plugin-ui-spec.js.map +0 -0
  919. /package/{dist/config → config}/runtime-mode.d.ts +0 -0
  920. /package/{dist/config → config}/runtime-overrides.d.ts +0 -0
  921. /package/{dist/config → config}/runtime-overrides.d.ts.map +0 -0
  922. /package/{dist/config → config}/runtime-overrides.js +0 -0
  923. /package/{dist/config → config}/runtime-overrides.js.map +0 -0
  924. /package/{dist/config → config}/schema.d.ts +0 -0
  925. /package/{dist/config → config}/schema.d.ts.map +0 -0
  926. /package/{dist/config → config}/schema.js +0 -0
  927. /package/{dist/config → config}/schema.js.map +0 -0
  928. /package/{dist/config → config}/types.agent-defaults.js +0 -0
  929. /package/{dist/config → config}/types.agent-defaults.js.map +0 -0
  930. /package/{dist/config → config}/types.agents.js +0 -0
  931. /package/{dist/config → config}/types.agents.js.map +0 -0
  932. /package/{dist/config → config}/types.d.ts +0 -0
  933. /package/{dist/config → config}/types.d.ts.map +0 -0
  934. /package/{dist/config → config}/types.eliza.js +0 -0
  935. /package/{dist/config → config}/types.eliza.js.map +0 -0
  936. /package/{dist/config → config}/types.gateway.d.ts +0 -0
  937. /package/{dist/config → config}/types.gateway.d.ts.map +0 -0
  938. /package/{dist/config → config}/types.gateway.js +0 -0
  939. /package/{dist/config → config}/types.gateway.js.map +0 -0
  940. /package/{dist/config → config}/types.hooks.d.ts +0 -0
  941. /package/{dist/config → config}/types.hooks.d.ts.map +0 -0
  942. /package/{dist/config → config}/types.hooks.js +0 -0
  943. /package/{dist/config → config}/types.hooks.js.map +0 -0
  944. /package/{dist/config → config}/types.js +0 -0
  945. /package/{dist/config → config}/types.js.map +0 -0
  946. /package/{dist/config → config}/types.messages.js +0 -0
  947. /package/{dist/config → config}/types.messages.js.map +0 -0
  948. /package/{dist/config → config}/types.tools.js +0 -0
  949. /package/{dist/config → config}/types.tools.js.map +0 -0
  950. /package/{dist/config → config}/ui-spec.js +0 -0
  951. /package/{dist/config → config}/ui-spec.js.map +0 -0
  952. /package/{dist/config → config}/wechat-config.d.ts +0 -0
  953. /package/{dist/config → config}/wechat-config.d.ts.map +0 -0
  954. /package/{dist/config → config}/wechat-config.js +0 -0
  955. /package/{dist/config → config}/wechat-config.js.map +0 -0
  956. /package/{dist/config → config}/zod-schema.agent-runtime.d.ts.map +0 -0
  957. /package/{dist/config → config}/zod-schema.agent-runtime.js +0 -0
  958. /package/{dist/config → config}/zod-schema.agent-runtime.js.map +0 -0
  959. /package/{dist/config → config}/zod-schema.core.d.ts.map +0 -0
  960. /package/{dist/config → config}/zod-schema.core.js +0 -0
  961. /package/{dist/config → config}/zod-schema.core.js.map +0 -0
  962. /package/{dist/connector-cred-types.d.ts → connector-cred-types.d.ts} +0 -0
  963. /package/{dist/connector-cred-types.d.ts.map → connector-cred-types.d.ts.map} +0 -0
  964. /package/{dist/connector-cred-types.js → connector-cred-types.js} +0 -0
  965. /package/{dist/connector-cred-types.js.map → connector-cred-types.js.map} +0 -0
  966. /package/{dist/contracts → contracts}/awareness.d.ts +0 -0
  967. /package/{dist/contracts → contracts}/awareness.d.ts.map +0 -0
  968. /package/{dist/contracts → contracts}/awareness.js +0 -0
  969. /package/{dist/contracts → contracts}/awareness.js.map +0 -0
  970. /package/{dist/contracts → contracts}/cloud-topology.d.ts +0 -0
  971. /package/{dist/contracts → contracts}/cloud-topology.d.ts.map +0 -0
  972. /package/{dist/contracts → contracts}/config.d.ts +0 -0
  973. /package/{dist/contracts → contracts}/config.d.ts.map +0 -0
  974. /package/{dist/contracts → contracts}/config.js +0 -0
  975. /package/{dist/contracts → contracts}/config.js.map +0 -0
  976. /package/{dist/contracts → contracts}/content-pack.js.map +0 -0
  977. /package/{dist/contracts → contracts}/drop.d.ts +0 -0
  978. /package/{dist/contracts → contracts}/drop.d.ts.map +0 -0
  979. /package/{dist/contracts → contracts}/drop.js +0 -0
  980. /package/{dist/contracts → contracts}/drop.js.map +0 -0
  981. /package/{dist/contracts → contracts}/feature-result.d.ts +0 -0
  982. /package/{dist/contracts → contracts}/feature-result.d.ts.map +0 -0
  983. /package/{dist/contracts → contracts}/feature-result.js +0 -0
  984. /package/{dist/contracts → contracts}/feature-result.js.map +0 -0
  985. /package/{dist/contracts → contracts}/inbox.d.ts +0 -0
  986. /package/{dist/contracts → contracts}/inbox.d.ts.map +0 -0
  987. /package/{dist/contracts → contracts}/inbox.js +0 -0
  988. /package/{dist/contracts → contracts}/inbox.js.map +0 -0
  989. /package/{dist/contracts → contracts}/lifeops-connector-degradation.d.ts +0 -0
  990. /package/{dist/contracts → contracts}/lifeops-connector-degradation.d.ts.map +0 -0
  991. /package/{dist/contracts → contracts}/lifeops-connector-degradation.js +0 -0
  992. /package/{dist/contracts → contracts}/lifeops-connector-degradation.js.map +0 -0
  993. /package/{dist/contracts → contracts}/verification.d.ts +0 -0
  994. /package/{dist/contracts → contracts}/verification.d.ts.map +0 -0
  995. /package/{dist/contracts → contracts}/verification.js +0 -0
  996. /package/{dist/contracts → contracts}/verification.js.map +0 -0
  997. /package/{dist/dev-settings-banner-style.d.ts.map → dev-settings-banner-style.d.ts.map} +0 -0
  998. /package/{dist/dev-settings-figlet-heading.d.ts → dev-settings-figlet-heading.d.ts} +0 -0
  999. /package/{dist/dev-settings-table.d.ts → dev-settings-table.d.ts} +0 -0
  1000. /package/{dist/dev-settings-table.d.ts.map → dev-settings-table.d.ts.map} +0 -0
  1001. /package/{dist/dev-settings-table.js → dev-settings-table.js} +0 -0
  1002. /package/{dist/dev-settings-table.js.map → dev-settings-table.js.map} +0 -0
  1003. /package/{dist/i18n → i18n}/keyword-matching.d.ts +0 -0
  1004. /package/{dist/i18n → i18n}/validation-keywords.d.ts +0 -0
  1005. /package/{dist/i18n → i18n}/validation-keywords.d.ts.map +0 -0
  1006. /package/{dist/i18n → i18n}/validation-keywords.js +0 -0
  1007. /package/{dist/i18n → i18n}/validation-keywords.js.map +0 -0
  1008. /package/{dist/local-inference → local-inference}/paths.d.ts.map +0 -0
  1009. /package/{dist/local-inference → local-inference}/paths.js.map +0 -0
  1010. /package/{dist/local-inference → local-inference}/verify.d.ts +0 -0
  1011. /package/{dist/local-inference → local-inference}/verify.d.ts.map +0 -0
  1012. /package/{dist/local-inference → local-inference}/verify.js +0 -0
  1013. /package/{dist/local-inference → local-inference}/verify.js.map +0 -0
  1014. /package/{dist/platform → platform}/is-native-server.d.ts +0 -0
  1015. /package/{dist/platform → platform}/is-native-server.d.ts.map +0 -0
  1016. /package/{dist/platform → platform}/is-native-server.js +0 -0
  1017. /package/{dist/platform → platform}/is-native-server.js.map +0 -0
  1018. /package/{dist/recent-messages-state.d.ts → recent-messages-state.d.ts} +0 -0
  1019. /package/{dist/recent-messages-state.d.ts.map → recent-messages-state.d.ts.map} +0 -0
  1020. /package/{dist/recent-messages-state.js → recent-messages-state.js} +0 -0
  1021. /package/{dist/recent-messages-state.js.map → recent-messages-state.js.map} +0 -0
  1022. /package/{dist/spoken-text.d.ts → spoken-text.d.ts} +0 -0
  1023. /package/{dist/terminal → terminal}/links.d.ts +0 -0
  1024. /package/{dist/terminal → terminal}/links.d.ts.map +0 -0
  1025. /package/{dist/terminal → terminal}/links.js +0 -0
  1026. /package/{dist/terminal → terminal}/links.js.map +0 -0
  1027. /package/{dist/terminal → terminal}/palette.d.ts +0 -0
  1028. /package/{dist/terminal → terminal}/palette.d.ts.map +0 -0
  1029. /package/{dist/terminal → terminal}/palette.js +0 -0
  1030. /package/{dist/terminal → terminal}/palette.js.map +0 -0
  1031. /package/{dist/terminal → terminal}/theme.d.ts +0 -0
  1032. /package/{dist/terminal → terminal}/theme.d.ts.map +0 -0
  1033. /package/{dist/terminal → terminal}/theme.js +0 -0
  1034. /package/{dist/terminal → terminal}/theme.js.map +0 -0
  1035. /package/{dist/test-support → test-support}/process-helpers.d.ts +0 -0
  1036. /package/{dist/test-support → test-support}/process-helpers.d.ts.map +0 -0
  1037. /package/{dist/test-support → test-support}/process-helpers.js +0 -0
  1038. /package/{dist/test-support → test-support}/process-helpers.js.map +0 -0
  1039. /package/{dist/types → types}/index.js +0 -0
  1040. /package/{dist/types → types}/index.js.map +0 -0
  1041. /package/{dist/utils → utils}/asset-url.d.ts +0 -0
  1042. /package/{dist/utils → utils}/asset-url.d.ts.map +0 -0
  1043. /package/{dist/utils → utils}/asset-url.js +0 -0
  1044. /package/{dist/utils → utils}/asset-url.js.map +0 -0
  1045. /package/{dist/utils → utils}/browser-tab-kit-types.d.ts.map +0 -0
  1046. /package/{dist/utils → utils}/browser-tab-kit-types.js.map +0 -0
  1047. /package/{dist/utils → utils}/character-message-examples.d.ts +0 -0
  1048. /package/{dist/utils → utils}/character-message-examples.d.ts.map +0 -0
  1049. /package/{dist/utils → utils}/character-message-examples.js +0 -0
  1050. /package/{dist/utils → utils}/character-message-examples.js.map +0 -0
  1051. /package/{dist/utils → utils}/cloud-status.d.ts +0 -0
  1052. /package/{dist/utils → utils}/cloud-status.d.ts.map +0 -0
  1053. /package/{dist/utils → utils}/cloud-status.js +0 -0
  1054. /package/{dist/utils → utils}/cloud-status.js.map +0 -0
  1055. /package/{dist/utils → utils}/documents-upload-image.d.ts +0 -0
  1056. /package/{dist/utils → utils}/documents-upload-image.d.ts.map +0 -0
  1057. /package/{dist/utils → utils}/eliza-cloud-model-route.d.ts +0 -0
  1058. /package/{dist/utils → utils}/eliza-cloud-model-route.d.ts.map +0 -0
  1059. /package/{dist/utils → utils}/eliza-cloud-model-route.js +0 -0
  1060. /package/{dist/utils → utils}/eliza-cloud-model-route.js.map +0 -0
  1061. /package/{dist/utils → utils}/eliza-globals.d.ts +0 -0
  1062. /package/{dist/utils → utils}/eliza-globals.d.ts.map +0 -0
  1063. /package/{dist/utils → utils}/eliza-globals.js +0 -0
  1064. /package/{dist/utils → utils}/eliza-globals.js.map +0 -0
  1065. /package/{dist/utils → utils}/eliza-root.d.ts +0 -0
  1066. /package/{dist/utils → utils}/eliza-root.d.ts.map +0 -0
  1067. /package/{dist/utils → utils}/eliza-root.js +0 -0
  1068. /package/{dist/utils → utils}/eliza-root.js.map +0 -0
  1069. /package/{dist/utils → utils}/exec-safety.d.ts +0 -0
  1070. /package/{dist/utils → utils}/labels.d.ts +0 -0
  1071. /package/{dist/utils → utils}/labels.d.ts.map +0 -0
  1072. /package/{dist/utils → utils}/labels.js +0 -0
  1073. /package/{dist/utils → utils}/labels.js.map +0 -0
  1074. /package/{dist/utils → utils}/log-prefix.d.ts +0 -0
  1075. /package/{dist/utils → utils}/name-tokens.d.ts.map +0 -0
  1076. /package/{dist/utils → utils}/name-tokens.js.map +0 -0
  1077. /package/{dist/utils → utils}/number-parsing.d.ts +0 -0
  1078. /package/{dist/utils → utils}/owner-name.d.ts +0 -0
  1079. /package/{dist/utils → utils}/owner-name.d.ts.map +0 -0
  1080. /package/{dist/utils → utils}/owner-name.js +0 -0
  1081. /package/{dist/utils → utils}/owner-name.js.map +0 -0
  1082. /package/{dist/utils → utils}/rate-limiter.d.ts +0 -0
  1083. /package/{dist/utils → utils}/rate-limiter.d.ts.map +0 -0
  1084. /package/{dist/utils → utils}/rate-limiter.js +0 -0
  1085. /package/{dist/utils → utils}/rate-limiter.js.map +0 -0
  1086. /package/{dist/utils → utils}/serialise.d.ts +0 -0
  1087. /package/{dist/utils → utils}/serialise.d.ts.map +0 -0
  1088. /package/{dist/utils → utils}/sql-compat.d.ts +0 -0
  1089. /package/{dist/utils → utils}/sql-compat.d.ts.map +0 -0
  1090. /package/{dist/utils → utils}/subscription-auth.d.ts +0 -0
  1091. /package/{dist/utils → utils}/subscription-auth.d.ts.map +0 -0
  1092. /package/{dist/utils → utils}/subscription-auth.js +0 -0
  1093. /package/{dist/utils → utils}/subscription-auth.js.map +0 -0
  1094. /package/{dist/utils → utils}/trajectory-format.d.ts +0 -0
  1095. /package/{dist/utils → utils}/trajectory-format.d.ts.map +0 -0
  1096. /package/{dist/utils → utils}/trajectory-format.js +0 -0
  1097. /package/{dist/utils → utils}/trajectory-format.js.map +0 -0
  1098. /package/{dist/validation-keywords.d.ts → validation-keywords.d.ts} +0 -0
  1099. /package/{dist/validation-keywords.d.ts.map → validation-keywords.d.ts.map} +0 -0
  1100. /package/{dist/validation-keywords.js → validation-keywords.js} +0 -0
  1101. /package/{dist/validation-keywords.js.map → validation-keywords.js.map} +0 -0
@@ -0,0 +1,155 @@
1
+ /**
2
+ * Device-fit selector for the one forced local model (eliza-1).
3
+ *
4
+ * The product rule (see `packages/ui/docs/local-model-simplification/README.md`):
5
+ * **always run the biggest eliza-1 tier we can, balanced against a 128k context
6
+ * target, with every memory optimization applied** so the floors are as low as
7
+ * physics allows:
8
+ *
9
+ * - **TurboQuant weights** — the catalog `sizeGb` per tier already reflects the
10
+ * TurboQuant-compressed GGUF (e.g. a 2B model is 1.4 GB, not ~4 GB bf16).
11
+ * - **Stock q8_0 KV-cache** — Gemma 4's KV is already minimal by construction
12
+ * (MQA = 1 KV head, windowed sliding-window attention on most layers, and
13
+ * shared-KV layers reusing earlier KV), so a 128k window fits in a fraction
14
+ * of a GB at stock q8_0 without the legacy QJL/Polar kernels. The head_dim=128
15
+ * QJL kernel does not apply to Gemma's dual head dims (512 global / 256 swa)
16
+ * and is not used. KV quant is forced, never a user option.
17
+ *
18
+ * `minRamGb` per tier is therefore "TurboQuant weights + a 128k q8_0 KV cache +
19
+ * runtime/OS overhead". Picking the largest tier whose `minRamGb` fits free RAM
20
+ * is exactly "biggest model that still gets a 128k window".
21
+ *
22
+ * **Dynamic fit-to-RAM context (#8809 M10b).** Picking the largest tier whose
23
+ * static `minRamGb` floor fits is the coarse gate. On top of that we compute the
24
+ * *largest context window that actually fits the device's free RAM* for the
25
+ * chosen tier, from the per-token q8_0 KV rate (`kvBytesPerTokenForTier`) rather
26
+ * than only honouring the catalog ceiling. On a roomy host that is the tier's
27
+ * native window; on a host that clears the weights+overhead floor but not a full
28
+ * 128k cache, the window shrinks to the largest 4k-stepped size that fits. The
29
+ * tier choice never drops below 2B (0.8B is gone); when even a minimum window
30
+ * (`ELIZA_1_MIN_LOCAL_CONTEXT`) cannot fit any tier, we return `null`, which the
31
+ * caller reads as "this modality should route to Cloud" (the AUTO policy).
32
+ */
33
+ import { MODEL_CATALOG } from "./catalog.js";
34
+ /** The KV-cache quantization eliza-1 always uses on-device. Gemma 4's KV is
35
+ * already minimal (MQA + windowed-SWA + shared-KV), so stock q8_0 is sufficient;
36
+ * the legacy head_dim=128 QJL kernel is incompatible with Gemma's dual head dims
37
+ * (512 global / 256 swa) and is not used. */
38
+ export const ELIZA_1_KV_QUANT = "q8_0";
39
+ /** The consumer context target. We never advertise less than this if it fits. */
40
+ export const ELIZA_1_CONTEXT_TARGET = 131072; // 128k
41
+ /** Floor below which a cramped local window is worse than routing to Cloud. */
42
+ export const ELIZA_1_MIN_LOCAL_CONTEXT = 8192; // 8k
43
+ /** Round a token count down to a 4k step so we advertise clean window sizes. */
44
+ const CONTEXT_STEP = 4096;
45
+ /**
46
+ * Fixed non-KV cost on top of the TurboQuant weights: the inference runtime,
47
+ * activation scratch, and OS headroom. Used by the context-fit math to reserve
48
+ * room before the KV cache claims the rest of free RAM.
49
+ */
50
+ const RUNTIME_OVERHEAD_GB = 1.0;
51
+ const BYTES_PER_GB = 1024 * 1024 * 1024;
52
+ /**
53
+ * Per-token q8_0 KV footprint for a tier, derived from the catalog's own
54
+ * sizing: the tier's `minRamGb` floor is "TurboQuant weights + a native-window
55
+ * q8_0 KV cache + runtime/OS overhead", so the RAM the catalog reserves for the
56
+ * KV cache at the native window is `minRamGb − sizeGb − RUNTIME_OVERHEAD_GB`,
57
+ * and dividing by the native context gives the per-token rate. Deriving it from
58
+ * the catalog (rather than a second hardcoded table) keeps the full-fit floor
59
+ * and the dynamic context-downscale math provably consistent: just below a
60
+ * tier's floor, exactly less-than-native fits.
61
+ *
62
+ * Returns `null` when the tier's floor doesn't actually reserve any KV room
63
+ * (mis-sized catalog row) — the caller then cannot compute a window for it.
64
+ */
65
+ function kvBytesPerTokenForTier(tier) {
66
+ const { minRamGb, sizeGb, contextLength } = tier;
67
+ if (minRamGb == null || sizeGb == null || contextLength == null)
68
+ return null;
69
+ const kvReserveGb = minRamGb - sizeGb - RUNTIME_OVERHEAD_GB;
70
+ if (kvReserveGb <= 0 || contextLength <= 0)
71
+ return null;
72
+ return (kvReserveGb * BYTES_PER_GB) / contextLength;
73
+ }
74
+ function roundDownToStep(tokens, step = CONTEXT_STEP) {
75
+ return Math.max(0, Math.floor(tokens / step) * step);
76
+ }
77
+ /**
78
+ * Largest 4k-stepped window that fits `freeRamGb` for `tier` at the q8_0 KV
79
+ * rate. Returns `context: 0` when the weights+overhead alone do not fit, or
80
+ * when the tier's KV rate cannot be derived (caller treats either as "this
81
+ * tier cannot hold any window").
82
+ */
83
+ function maxFittingContextForTier(tier, freeRamGb) {
84
+ const kvBytesPerToken = kvBytesPerTokenForTier(tier);
85
+ if (kvBytesPerToken == null)
86
+ return null;
87
+ const sizeGb = tier.sizeGb ?? 0;
88
+ const kvAvailableGb = freeRamGb - sizeGb - RUNTIME_OVERHEAD_GB;
89
+ if (kvAvailableGb <= 0)
90
+ return { context: 0, kvBytesPerToken };
91
+ const tokensThatFit = (kvAvailableGb * BYTES_PER_GB) / kvBytesPerToken;
92
+ return { context: roundDownToStep(tokensThatFit), kvBytesPerToken };
93
+ }
94
+ /**
95
+ * Pick the best on-device eliza-1 configuration for a device with `freeRamGb` of
96
+ * usable RAM (Apple-silicon unified RAM, discrete-GPU VRAM, or CPU RAM — the
97
+ * caller normalizes this, e.g. via the device-tier classifier).
98
+ *
99
+ * Returns `null` when nothing acceptable fits locally → the caller routes this
100
+ * modality to Cloud (AUTO). Never returns a tier smaller than 2B (0.8B is gone).
101
+ */
102
+ export function selectBestEliza1Fit(freeRamGb) {
103
+ if (!Number.isFinite(freeRamGb) || freeRamGb <= 0)
104
+ return null;
105
+ // Release tiers, largest RAM-floor first. The floor already bakes in a native
106
+ // (128k) q8_0 window, so the first one whose floor fits is the biggest model
107
+ // that still gets its full window.
108
+ const tiers = [...MODEL_CATALOG]
109
+ .filter((m) => typeof m.minRamGb === "number" && typeof m.sizeGb === "number")
110
+ .sort((a, b) => b.minRamGb - a.minRamGb);
111
+ for (const tier of tiers) {
112
+ if (tier.minRamGb == null || freeRamGb < tier.minRamGb)
113
+ continue;
114
+ const nativeCtx = tier.contextLength ?? ELIZA_1_CONTEXT_TARGET;
115
+ const fit = maxFittingContextForTier(tier, freeRamGb);
116
+ if (!fit)
117
+ continue;
118
+ const { context: maxFittingContext, kvBytesPerToken } = fit;
119
+ // Floor fits → at least the native window fits; clamp the dynamic window to
120
+ // the tier ceiling so we never advertise more than the bundle ships.
121
+ const contextLength = Math.min(Math.max(maxFittingContext, nativeCtx), nativeCtx);
122
+ return {
123
+ tierId: tier.id,
124
+ contextLength,
125
+ kvQuant: ELIZA_1_KV_QUANT,
126
+ contextDownscaled: false,
127
+ kvBytesPerToken,
128
+ maxFittingContext,
129
+ reason: "native-fit",
130
+ };
131
+ }
132
+ // No tier clears its native floor. Keep the smallest tier (2B) and shrink the
133
+ // q8_0 KV window to the largest 4k step that fits. Never drop below 2B.
134
+ const smallest = tiers[tiers.length - 1];
135
+ if (!smallest || smallest.contextLength == null)
136
+ return null;
137
+ const nativeCtx = smallest.contextLength;
138
+ const fit = maxFittingContextForTier(smallest, freeRamGb);
139
+ if (!fit)
140
+ return null;
141
+ const { context: fittedContext, kvBytesPerToken } = fit;
142
+ if (fittedContext < ELIZA_1_MIN_LOCAL_CONTEXT)
143
+ return null; // too cramped → Cloud
144
+ const contextLength = Math.min(fittedContext, nativeCtx);
145
+ return {
146
+ tierId: smallest.id,
147
+ contextLength,
148
+ kvQuant: ELIZA_1_KV_QUANT,
149
+ contextDownscaled: contextLength < nativeCtx,
150
+ kvBytesPerToken,
151
+ maxFittingContext: fittedContext,
152
+ reason: contextLength < nativeCtx ? "context-downscaled" : "native-fit",
153
+ };
154
+ }
155
+ //# sourceMappingURL=device-fit.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"device-fit.js","sourceRoot":"","sources":["../../src/local-inference/device-fit.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,110 @@
1
+ /**
2
+ * Per-GPU deployment profiles for single-GPU Eliza-1 servers.
3
+ *
4
+ * Scope: ONE GPU per host. We do not target NVLink, tensor-parallel splits,
5
+ * or multi-tenant datacenter workloads. The product target is "one
6
+ * conversation at a time on a single GPU box" — `--parallel N` can still go
7
+ * higher than on a phone, but the model is not split across cards.
8
+ *
9
+ * These profiles are *recommendations* — the runtime selects a bundle by id
10
+ * and then maps the host's GPU to a `GpuProfile` to fill in llama-server
11
+ * flags (KV cache types, n-gpu-layers, batch sizing, MTP draft range,
12
+ * mlock). A non-NVIDIA host returns `null` and the runtime falls back to
13
+ * the catalog defaults.
14
+ *
15
+ * The KV cache type names match `LocalRuntimeKernel` / the llama.cpp fork
16
+ * kernel handles (`qjl1_256`, `q4_polar`, `turbo3_0`, `turbo4_0`, `q8_0`,
17
+ * `f16`) so that `appendOptimizationFlags` + `applyGpuProfile` can pass
18
+ * them straight through to `--cache-type-k` / `--cache-type-v`.
19
+ *
20
+ * The active mobile/local release exposes Eliza-1 2b, 4b, 9b, and 27b
21
+ * tiers, with larger cards recommended toward the biggest installed bundle
22
+ * that leaves memory headroom.
23
+ */
24
+ import type { Eliza1TierId } from "./catalog.js";
25
+ export type GpuProfileId = "rtx-3090" | "rtx-4090" | "rtx-5090" | "h200";
26
+ /**
27
+ * KV cache type names accepted by `llama-server --cache-type-k/-v`. Mirrors
28
+ * the strings the buun-llama-cpp fork advertises in `CAPABILITIES.json`.
29
+ * Kept as a string literal union so a profile's choice is checked at
30
+ * compile time and propagates into the bundle manifest's `requiresKernel`
31
+ * set.
32
+ */
33
+ export type KvCacheType = "f16" | "q8_0" | "q4_0" | "qjl1_256" | "q4_polar" | "turbo3_0" | "turbo4_0";
34
+ export interface GpuProfile {
35
+ id: GpuProfileId;
36
+ /** Human-readable vendor card name shown to the operator. */
37
+ displayName: string;
38
+ /** Total VRAM in GiB. Used for headroom math + recommendations. */
39
+ vramGb: number;
40
+ /** CUDA compute capability, e.g. `"sm_86"`. */
41
+ computeCapability: string;
42
+ /** Peak HBM/GDDR bandwidth in GB/s — feeds the perf estimator. */
43
+ memoryBandwidthGBs: number;
44
+ /** Whether the GPU has hardware FP8 (Ada/Hopper/Blackwell). */
45
+ fp8: boolean;
46
+ /**
47
+ * Recommended catalog bundle ids for single-GPU deployment on this card.
48
+ * Ordered by quality: first entry is the "best fit" for the card; later
49
+ * entries are smaller fallbacks that still leave headroom. The recommender
50
+ * picks the first id that the user has installed.
51
+ */
52
+ recommendedBundles: ReadonlyArray<Eliza1TierId>;
53
+ /** Inference flags. */
54
+ flashAttn: boolean;
55
+ /** `--cache-type-k` value. */
56
+ kvCacheTypeK: KvCacheType;
57
+ /** `--cache-type-v` value. */
58
+ kvCacheTypeV: KvCacheType;
59
+ /**
60
+ * `--n-gpu-layers` — `-1` for "all layers on GPU". Single-GPU only; we
61
+ * never split layers across two cards.
62
+ */
63
+ nGpuLayers: number;
64
+ /**
65
+ * `--ctx-size`. Always sized to the bundle's `contextLength`, but the
66
+ * profile records the *recommended* max for the card.
67
+ */
68
+ contextSize: number;
69
+ /** `--parallel N` continuous-batching slots. */
70
+ parallel: number;
71
+ /** `--batch-size N` logical batch. */
72
+ batchSize: number;
73
+ /** `--ubatch-size N` physical micro-batch. */
74
+ ubatchSize: number;
75
+ /** MTP speculative-decoding draft range. */
76
+ mtpDraftMin: number;
77
+ mtpDraftMax: number;
78
+ /** `--mlock` — pin model pages in RAM. */
79
+ mlock: boolean;
80
+ /** `--no-mmap` — disable mmap loading. */
81
+ noMmap: boolean;
82
+ /**
83
+ * Force KV spill to CPU (`--no-kv-offload`). Only useful on cards that
84
+ * cannot hold the full KV cache. The 141 GiB H200 sets this to `false`;
85
+ * the 24 GiB cards can opt in for very long contexts.
86
+ */
87
+ kvSpillToCpu: boolean;
88
+ }
89
+ export declare const GPU_PROFILES: Readonly<Record<GpuProfileId, GpuProfile>>;
90
+ export declare const GPU_PROFILE_IDS: ReadonlyArray<GpuProfileId>;
91
+ /**
92
+ * Match an `nvidia-smi --query-gpu=name` output line to a profile. Returns
93
+ * `null` when the card is not in the supported set; callers should fall
94
+ * back to the catalog defaults in that case rather than guess.
95
+ *
96
+ * The patterns are intentionally strict to avoid mis-classifying a 3080
97
+ * as a 3090, or an A100 as a 4090.
98
+ */
99
+ export declare function matchGpuProfile(gpuName: string): GpuProfileId | null;
100
+ /**
101
+ * Returns the headroom (in GiB) a profile reserves for the OS / driver /
102
+ * activations / drafter / N parallel-slot KV. Used for sizing checks
103
+ * before promoting a bundle to "fits" on a card.
104
+ *
105
+ * The figures are deliberate per-tier reserves, not a formula — different
106
+ * cards have different driver overheads (Windows display drivers steal
107
+ * ~1 GiB before workloads even start; H200 SXM has none).
108
+ */
109
+ export declare function reservedHeadroomGb(profile: GpuProfile): number;
110
+ //# sourceMappingURL=gpu-profiles.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gpu-profiles.d.ts","sourceRoot":"","sources":["../../src/local-inference/gpu-profiles.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAEjD,MAAM,MAAM,YAAY,GAAG,UAAU,GAAG,UAAU,GAAG,UAAU,GAAG,MAAM,CAAC;AAEzE;;;;;;GAMG;AACH,MAAM,MAAM,WAAW,GACnB,KAAK,GACL,MAAM,GACN,MAAM,GACN,UAAU,GACV,UAAU,GACV,UAAU,GACV,UAAU,CAAC;AAEf,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,YAAY,CAAC;IACjB,6DAA6D;IAC7D,WAAW,EAAE,MAAM,CAAC;IACpB,mEAAmE;IACnE,MAAM,EAAE,MAAM,CAAC;IACf,+CAA+C;IAC/C,iBAAiB,EAAE,MAAM,CAAC;IAC1B,kEAAkE;IAClE,kBAAkB,EAAE,MAAM,CAAC;IAC3B,+DAA+D;IAC/D,GAAG,EAAE,OAAO,CAAC;IAEb;;;;;OAKG;IACH,kBAAkB,EAAE,aAAa,CAAC,YAAY,CAAC,CAAC;IAEhD,uBAAuB;IACvB,SAAS,EAAE,OAAO,CAAC;IACnB,8BAA8B;IAC9B,YAAY,EAAE,WAAW,CAAC;IAC1B,8BAA8B;IAC9B,YAAY,EAAE,WAAW,CAAC;IAC1B;;;OAGG;IACH,UAAU,EAAE,MAAM,CAAC;IACnB;;;OAGG;IACH,WAAW,EAAE,MAAM,CAAC;IACpB,gDAAgD;IAChD,QAAQ,EAAE,MAAM,CAAC;IACjB,sCAAsC;IACtC,SAAS,EAAE,MAAM,CAAC;IAClB,8CAA8C;IAC9C,UAAU,EAAE,MAAM,CAAC;IAEnB,4CAA4C;IAC5C,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IAEpB,0CAA0C;IAC1C,KAAK,EAAE,OAAO,CAAC;IACf,0CAA0C;IAC1C,MAAM,EAAE,OAAO,CAAC;IAChB;;;;OAIG;IACH,YAAY,EAAE,OAAO,CAAC;CACvB;AAwHD,eAAO,MAAM,YAAY,EAAE,QAAQ,CAAC,MAAM,CAAC,YAAY,EAAE,UAAU,CAAC,CAKnE,CAAC;AAEF,eAAO,MAAM,eAAe,EAAE,aAAa,CAAC,YAAY,CAKvD,CAAC;AAEF;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,YAAY,GAAG,IAAI,CAOpE;AAED;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,UAAU,GAAG,MAAM,CAW9D"}
@@ -0,0 +1,191 @@
1
+ /**
2
+ * Per-GPU deployment profiles for single-GPU Eliza-1 servers.
3
+ *
4
+ * Scope: ONE GPU per host. We do not target NVLink, tensor-parallel splits,
5
+ * or multi-tenant datacenter workloads. The product target is "one
6
+ * conversation at a time on a single GPU box" — `--parallel N` can still go
7
+ * higher than on a phone, but the model is not split across cards.
8
+ *
9
+ * These profiles are *recommendations* — the runtime selects a bundle by id
10
+ * and then maps the host's GPU to a `GpuProfile` to fill in llama-server
11
+ * flags (KV cache types, n-gpu-layers, batch sizing, MTP draft range,
12
+ * mlock). A non-NVIDIA host returns `null` and the runtime falls back to
13
+ * the catalog defaults.
14
+ *
15
+ * The KV cache type names match `LocalRuntimeKernel` / the llama.cpp fork
16
+ * kernel handles (`qjl1_256`, `q4_polar`, `turbo3_0`, `turbo4_0`, `q8_0`,
17
+ * `f16`) so that `appendOptimizationFlags` + `applyGpuProfile` can pass
18
+ * them straight through to `--cache-type-k` / `--cache-type-v`.
19
+ *
20
+ * The active mobile/local release exposes Eliza-1 2b, 4b, 9b, and 27b
21
+ * tiers, with larger cards recommended toward the biggest installed bundle
22
+ * that leaves memory headroom.
23
+ */
24
+ /**
25
+ * RTX 3090 — Ampere, 24 GiB, no FP8.
26
+ *
27
+ * Best current release fit: Eliza-1 9B with 4B/2B fallbacks.
28
+ * Flash-attn helps Ampere meaningfully.
29
+ */
30
+ const RTX_3090 = {
31
+ id: "rtx-3090",
32
+ displayName: "NVIDIA GeForce RTX 3090",
33
+ vramGb: 24,
34
+ computeCapability: "sm_86",
35
+ memoryBandwidthGBs: 936,
36
+ fp8: false,
37
+ recommendedBundles: ["eliza-1-9b", "eliza-1-4b", "eliza-1-2b"],
38
+ flashAttn: true,
39
+ // Ampere doesn't have the q4_polar kernel on the Polar fork; fall back to
40
+ // the Q8/Q4 KV quants which work on every sm_70+ GPU.
41
+ kvCacheTypeK: "q8_0",
42
+ kvCacheTypeV: "q4_polar",
43
+ nGpuLayers: -1,
44
+ contextSize: 65536,
45
+ parallel: 4,
46
+ batchSize: 2048,
47
+ ubatchSize: 512,
48
+ mtpDraftMin: 4,
49
+ mtpDraftMax: 16,
50
+ mlock: true,
51
+ noMmap: false,
52
+ kvSpillToCpu: false,
53
+ };
54
+ /**
55
+ * RTX 4090 — Ada Lovelace, 24 GiB, FP8 (no flash-attn-FP8 yet).
56
+ *
57
+ * Best current release fit: Eliza-1 27B with 9B/4B/2B fallbacks.
58
+ */
59
+ const RTX_4090 = {
60
+ id: "rtx-4090",
61
+ displayName: "NVIDIA GeForce RTX 4090",
62
+ vramGb: 24,
63
+ computeCapability: "sm_89",
64
+ memoryBandwidthGBs: 1008,
65
+ fp8: true,
66
+ recommendedBundles: ["eliza-1-27b", "eliza-1-9b", "eliza-1-4b", "eliza-1-2b"],
67
+ flashAttn: true,
68
+ kvCacheTypeK: "qjl1_256",
69
+ kvCacheTypeV: "q4_polar",
70
+ nGpuLayers: -1,
71
+ contextSize: 131072,
72
+ parallel: 4,
73
+ batchSize: 2048,
74
+ ubatchSize: 512,
75
+ mtpDraftMin: 4,
76
+ mtpDraftMax: 24,
77
+ mlock: true,
78
+ noMmap: false,
79
+ kvSpillToCpu: false,
80
+ };
81
+ /**
82
+ * RTX 5090 — Blackwell, 32 GiB, FP8/FP4 first-class.
83
+ *
84
+ * Best current release fit: Eliza-1 27B. Blackwell sm_120 is new enough that
85
+ * the Polar/QJL kernels may not be pre-built — the runtime should probe
86
+ * `CAPABILITIES.json` and surface a structured error rather than silently
87
+ * falling back.
88
+ */
89
+ const RTX_5090 = {
90
+ id: "rtx-5090",
91
+ displayName: "NVIDIA GeForce RTX 5090",
92
+ vramGb: 32,
93
+ computeCapability: "sm_120",
94
+ memoryBandwidthGBs: 1792,
95
+ fp8: true,
96
+ recommendedBundles: ["eliza-1-27b", "eliza-1-9b", "eliza-1-4b", "eliza-1-2b"],
97
+ flashAttn: true,
98
+ kvCacheTypeK: "qjl1_256",
99
+ kvCacheTypeV: "q4_polar",
100
+ nGpuLayers: -1,
101
+ contextSize: 131072,
102
+ parallel: 8,
103
+ batchSize: 4096,
104
+ ubatchSize: 1024,
105
+ mtpDraftMin: 4,
106
+ mtpDraftMax: 24,
107
+ mlock: true,
108
+ noMmap: false,
109
+ kvSpillToCpu: false,
110
+ };
111
+ /**
112
+ * H200 — Hopper, 141 GiB HBM3e, 4.8 TB/s.
113
+ *
114
+ * Best current release fit: Eliza-1 27B.
115
+ */
116
+ const H200 = {
117
+ id: "h200",
118
+ displayName: "NVIDIA H200 (SXM 141 GiB)",
119
+ vramGb: 141,
120
+ computeCapability: "sm_90",
121
+ memoryBandwidthGBs: 4800,
122
+ fp8: true,
123
+ recommendedBundles: ["eliza-1-27b", "eliza-1-9b", "eliza-1-4b", "eliza-1-2b"],
124
+ flashAttn: true,
125
+ kvCacheTypeK: "qjl1_256",
126
+ kvCacheTypeV: "q4_polar",
127
+ nGpuLayers: -1,
128
+ contextSize: 131072,
129
+ parallel: 16,
130
+ batchSize: 4096,
131
+ ubatchSize: 2048,
132
+ mtpDraftMin: 8,
133
+ mtpDraftMax: 32,
134
+ mlock: true,
135
+ noMmap: false,
136
+ kvSpillToCpu: false,
137
+ };
138
+ export const GPU_PROFILES = {
139
+ "rtx-3090": RTX_3090,
140
+ "rtx-4090": RTX_4090,
141
+ "rtx-5090": RTX_5090,
142
+ h200: H200,
143
+ };
144
+ export const GPU_PROFILE_IDS = [
145
+ "rtx-3090",
146
+ "rtx-4090",
147
+ "rtx-5090",
148
+ "h200",
149
+ ];
150
+ /**
151
+ * Match an `nvidia-smi --query-gpu=name` output line to a profile. Returns
152
+ * `null` when the card is not in the supported set; callers should fall
153
+ * back to the catalog defaults in that case rather than guess.
154
+ *
155
+ * The patterns are intentionally strict to avoid mis-classifying a 3080
156
+ * as a 3090, or an A100 as a 4090.
157
+ */
158
+ export function matchGpuProfile(gpuName) {
159
+ const n = gpuName.toLowerCase();
160
+ if (n.includes("h200"))
161
+ return "h200";
162
+ if (n.includes("rtx 5090") || n.includes("rtx5090"))
163
+ return "rtx-5090";
164
+ if (n.includes("rtx 4090") || n.includes("rtx4090"))
165
+ return "rtx-4090";
166
+ if (n.includes("rtx 3090") || n.includes("rtx3090"))
167
+ return "rtx-3090";
168
+ return null;
169
+ }
170
+ /**
171
+ * Returns the headroom (in GiB) a profile reserves for the OS / driver /
172
+ * activations / drafter / N parallel-slot KV. Used for sizing checks
173
+ * before promoting a bundle to "fits" on a card.
174
+ *
175
+ * The figures are deliberate per-tier reserves, not a formula — different
176
+ * cards have different driver overheads (Windows display drivers steal
177
+ * ~1 GiB before workloads even start; H200 SXM has none).
178
+ */
179
+ export function reservedHeadroomGb(profile) {
180
+ switch (profile.id) {
181
+ case "rtx-3090":
182
+ return 3;
183
+ case "rtx-4090":
184
+ return 3;
185
+ case "rtx-5090":
186
+ return 4;
187
+ case "h200":
188
+ return 6;
189
+ }
190
+ }
191
+ //# sourceMappingURL=gpu-profiles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gpu-profiles.js","sourceRoot":"","sources":["../../src/local-inference/gpu-profiles.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,43 @@
1
+ /**
2
+ * HuggingFace download routing for local-inference bundle fetches.
3
+ *
4
+ * The product never holds a local HuggingFace token. When the device is linked
5
+ * to Eliza Cloud, ALL HuggingFace `resolve` traffic is routed through the cloud
6
+ * HF proxy (`/api/v1/hf-proxy/<repo>/resolve/<rev>/<path>`), which attaches the
7
+ * cloud-side `HF_TOKEN` so gated repos resolve without exposing a token to the
8
+ * client. When the device is not cloud-linked, downloads go directly to the
9
+ * public (ungated) HuggingFace host — the shipping eliza-1 bundles are public.
10
+ *
11
+ * Precedence:
12
+ * 1. `ELIZA_HF_BASE_URL` override (explicit mirror/base) — always wins.
13
+ * 2. Cloud proxy base + bearer — when an Eliza Cloud API key is present.
14
+ * 3. Direct public HuggingFace host — no auth header.
15
+ *
16
+ * The returned `base` is the host (+ optional path prefix) that a
17
+ * `<repo>/resolve/<rev>/<path>` suffix is appended to by the catalog URL
18
+ * builder, so cloud and direct paths share one URL-construction shape.
19
+ */
20
+ export interface HfDownloadBase {
21
+ /**
22
+ * Base URL the catalog builder appends `<repo>/resolve/<rev>/<path>` to.
23
+ * For the cloud proxy this is `<cloudApi>/hf-proxy`; for direct HF it is the
24
+ * HuggingFace host. Never has a trailing slash.
25
+ */
26
+ base: string;
27
+ /**
28
+ * Bearer header to send with the request, or `undefined` for the
29
+ * unauthenticated public path. Only the cloud proxy carries auth — the
30
+ * cloud-side `HF_TOKEN` is attached by the Worker, never by the client.
31
+ */
32
+ authHeader?: {
33
+ authorization: string;
34
+ };
35
+ /** True when traffic is routed through the Eliza Cloud HF proxy. */
36
+ viaCloud: boolean;
37
+ }
38
+ /**
39
+ * Resolve where HuggingFace `resolve` traffic should go and how it should
40
+ * authenticate. See the module doc for precedence.
41
+ */
42
+ export declare function resolveHfDownloadBase(): HfDownloadBase;
43
+ //# sourceMappingURL=hf-proxy.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hf-proxy.d.ts","sourceRoot":"","sources":["../../src/local-inference/hf-proxy.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAOH,MAAM,WAAW,cAAc;IAC7B;;;;OAIG;IACH,IAAI,EAAE,MAAM,CAAC;IACb;;;;OAIG;IACH,UAAU,CAAC,EAAE;QAAE,aAAa,EAAE,MAAM,CAAA;KAAE,CAAC;IACvC,oEAAoE;IACpE,QAAQ,EAAE,OAAO,CAAC;CACnB;AAWD;;;GAGG;AACH,wBAAgB,qBAAqB,IAAI,cAAc,CAiBtD"}
@@ -0,0 +1,50 @@
1
+ /**
2
+ * HuggingFace download routing for local-inference bundle fetches.
3
+ *
4
+ * The product never holds a local HuggingFace token. When the device is linked
5
+ * to Eliza Cloud, ALL HuggingFace `resolve` traffic is routed through the cloud
6
+ * HF proxy (`/api/v1/hf-proxy/<repo>/resolve/<rev>/<path>`), which attaches the
7
+ * cloud-side `HF_TOKEN` so gated repos resolve without exposing a token to the
8
+ * client. When the device is not cloud-linked, downloads go directly to the
9
+ * public (ungated) HuggingFace host — the shipping eliza-1 bundles are public.
10
+ *
11
+ * Precedence:
12
+ * 1. `ELIZA_HF_BASE_URL` override (explicit mirror/base) — always wins.
13
+ * 2. Cloud proxy base + bearer — when an Eliza Cloud API key is present.
14
+ * 3. Direct public HuggingFace host — no auth header.
15
+ *
16
+ * The returned `base` is the host (+ optional path prefix) that a
17
+ * `<repo>/resolve/<rev>/<path>` suffix is appended to by the catalog URL
18
+ * builder, so cloud and direct paths share one URL-construction shape.
19
+ */
20
+ import { resolveCloudApiBaseUrl } from "../elizacloud/base-url.js";
21
+ import { getCloudSecret } from "../elizacloud/cloud-secrets.js";
22
+ const DEFAULT_HF_HOST = "https://huggingface.co";
23
+ function trimTrailingSlash(value) {
24
+ return value.replace(/\/+$/, "");
25
+ }
26
+ /** Read the Eliza Cloud API key from the sealed store (falls back to env). */
27
+ function cloudApiKey() {
28
+ return getCloudSecret("ELIZAOS_CLOUD_API_KEY")?.trim() ?? "";
29
+ }
30
+ /**
31
+ * Resolve where HuggingFace `resolve` traffic should go and how it should
32
+ * authenticate. See the module doc for precedence.
33
+ */
34
+ export function resolveHfDownloadBase() {
35
+ const override = process.env.ELIZA_HF_BASE_URL?.trim();
36
+ if (override) {
37
+ return { base: trimTrailingSlash(override), viaCloud: false };
38
+ }
39
+ const apiKey = cloudApiKey();
40
+ if (apiKey) {
41
+ const cloudApi = resolveCloudApiBaseUrl(process.env.ELIZAOS_CLOUD_BASE_URL);
42
+ return {
43
+ base: `${trimTrailingSlash(cloudApi)}/hf-proxy`,
44
+ authHeader: { authorization: `Bearer ${apiKey}` },
45
+ viaCloud: true,
46
+ };
47
+ }
48
+ return { base: DEFAULT_HF_HOST, viaCloud: false };
49
+ }
50
+ //# sourceMappingURL=hf-proxy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hf-proxy.js","sourceRoot":"","sources":["../../src/local-inference/hf-proxy.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AACnE,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAEhE,MAAM,eAAe,GAAG,wBAAwB,CAAC;AAmBjD,SAAS,iBAAiB,CAAC,KAAa;IACtC,OAAO,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;AACnC,CAAC;AAED,8EAA8E;AAC9E,SAAS,WAAW;IAClB,OAAO,cAAc,CAAC,uBAAuB,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;AAC/D,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,qBAAqB;IACnC,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE,IAAI,EAAE,CAAC;IACvD,IAAI,QAAQ,EAAE,CAAC;QACb,OAAO,EAAE,IAAI,EAAE,iBAAiB,CAAC,QAAQ,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;IAChE,CAAC;IAED,MAAM,MAAM,GAAG,WAAW,EAAE,CAAC;IAC7B,IAAI,MAAM,EAAE,CAAC;QACX,MAAM,QAAQ,GAAG,sBAAsB,CAAC,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC;QAC5E,OAAO;YACL,IAAI,EAAE,GAAG,iBAAiB,CAAC,QAAQ,CAAC,WAAW;YAC/C,UAAU,EAAE,EAAE,aAAa,EAAE,UAAU,MAAM,EAAE,EAAE;YACjD,QAAQ,EAAE,IAAI;SACf,CAAC;IACJ,CAAC;IAED,OAAO,EAAE,IAAI,EAAE,eAAe,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;AACpD,CAAC"}
@@ -0,0 +1,26 @@
1
+ /**
2
+ * Model-hub authentication helpers.
3
+ *
4
+ * Gated/metered HuggingFace repos require an `Authorization: Bearer <token>`
5
+ * header or they answer `HTTP 401`/`403` (and gated repos are invisible to
6
+ * unauthenticated search, reporting wrong/zero sizes). The token is read from
7
+ * the same env aliases the embedding manager uses
8
+ * (`HF_TOKEN` / `HUGGINGFACE_TOKEN` / `HF_HUB_TOKEN`).
9
+ *
10
+ * The token is **host-gated**: it is only attached to `huggingface.co`
11
+ * requests, never leaked to ModelScope or arbitrary mirrors. Every model
12
+ * download and search path forwards it through {@link resolveHubAuthHeaders}.
13
+ */
14
+ /** Read the HuggingFace token from the documented env aliases. `""` when unset. */
15
+ export declare function resolveHuggingFaceToken(): string;
16
+ /** True when a configured HuggingFace token is present in the environment. */
17
+ export declare function hasHuggingFaceToken(): boolean;
18
+ /** True when `url` points at huggingface.co (or a subdomain of it). */
19
+ export declare function isHuggingFaceHost(url: string): boolean;
20
+ /**
21
+ * Auth headers for a model-hub request. Returns the bearer header only for
22
+ * huggingface.co URLs when a token is configured; `{}` otherwise (public repos
23
+ * and non-HF hosts are unaffected, and tokens never leak to other hosts).
24
+ */
25
+ export declare function resolveHubAuthHeaders(url: string): Record<string, string>;
26
+ //# sourceMappingURL=hub-auth.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hub-auth.d.ts","sourceRoot":"","sources":["../../src/local-inference/hub-auth.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,mFAAmF;AACnF,wBAAgB,uBAAuB,IAAI,MAAM,CAQhD;AAED,8EAA8E;AAC9E,wBAAgB,mBAAmB,IAAI,OAAO,CAE7C;AAED,uEAAuE;AACvE,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAOtD;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAIzE"}
@@ -0,0 +1,48 @@
1
+ /**
2
+ * Model-hub authentication helpers.
3
+ *
4
+ * Gated/metered HuggingFace repos require an `Authorization: Bearer <token>`
5
+ * header or they answer `HTTP 401`/`403` (and gated repos are invisible to
6
+ * unauthenticated search, reporting wrong/zero sizes). The token is read from
7
+ * the same env aliases the embedding manager uses
8
+ * (`HF_TOKEN` / `HUGGINGFACE_TOKEN` / `HF_HUB_TOKEN`).
9
+ *
10
+ * The token is **host-gated**: it is only attached to `huggingface.co`
11
+ * requests, never leaked to ModelScope or arbitrary mirrors. Every model
12
+ * download and search path forwards it through {@link resolveHubAuthHeaders}.
13
+ */
14
+ /** Read the HuggingFace token from the documented env aliases. `""` when unset. */
15
+ export function resolveHuggingFaceToken() {
16
+ if (typeof process === "undefined" || !process.env)
17
+ return "";
18
+ return (process.env.HF_TOKEN?.trim() ||
19
+ process.env.HUGGINGFACE_TOKEN?.trim() ||
20
+ process.env.HF_HUB_TOKEN?.trim() ||
21
+ "");
22
+ }
23
+ /** True when a configured HuggingFace token is present in the environment. */
24
+ export function hasHuggingFaceToken() {
25
+ return resolveHuggingFaceToken().length > 0;
26
+ }
27
+ /** True when `url` points at huggingface.co (or a subdomain of it). */
28
+ export function isHuggingFaceHost(url) {
29
+ try {
30
+ const host = new URL(url).hostname.toLowerCase();
31
+ return host === "huggingface.co" || host.endsWith(".huggingface.co");
32
+ }
33
+ catch {
34
+ return false;
35
+ }
36
+ }
37
+ /**
38
+ * Auth headers for a model-hub request. Returns the bearer header only for
39
+ * huggingface.co URLs when a token is configured; `{}` otherwise (public repos
40
+ * and non-HF hosts are unaffected, and tokens never leak to other hosts).
41
+ */
42
+ export function resolveHubAuthHeaders(url) {
43
+ if (!isHuggingFaceHost(url))
44
+ return {};
45
+ const token = resolveHuggingFaceToken();
46
+ return token ? { authorization: `Bearer ${token}` } : {};
47
+ }
48
+ //# sourceMappingURL=hub-auth.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hub-auth.js","sourceRoot":"","sources":["../../src/local-inference/hub-auth.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,mFAAmF;AACnF,MAAM,UAAU,uBAAuB;IACrC,IAAI,OAAO,OAAO,KAAK,WAAW,IAAI,CAAC,OAAO,CAAC,GAAG;QAAE,OAAO,EAAE,CAAC;IAC9D,OAAO,CACL,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,EAAE;QAC5B,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE,IAAI,EAAE;QACrC,OAAO,CAAC,GAAG,CAAC,YAAY,EAAE,IAAI,EAAE;QAChC,EAAE,CACH,CAAC;AACJ,CAAC;AAED,8EAA8E;AAC9E,MAAM,UAAU,mBAAmB;IACjC,OAAO,uBAAuB,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC;AAC9C,CAAC;AAED,uEAAuE;AACvE,MAAM,UAAU,iBAAiB,CAAC,GAAW;IAC3C,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC;QACjD,OAAO,IAAI,KAAK,gBAAgB,IAAI,IAAI,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC;IACvE,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,qBAAqB,CAAC,GAAW;IAC/C,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC;QAAE,OAAO,EAAE,CAAC;IACvC,MAAM,KAAK,GAAG,uBAAuB,EAAE,CAAC;IACxC,OAAO,KAAK,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,UAAU,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAC3D,CAAC"}