@withbuddi/buddi 0.1.0-pre.19 → 0.1.0-pre.21

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 (525) hide show
  1. package/README.md +1 -1
  2. package/node_modules/@buddi/cli/dist/.tsbuildinfo +1 -1
  3. package/node_modules/@buddi/cli/dist/args.d.ts +6 -0
  4. package/node_modules/@buddi/cli/dist/args.d.ts.map +1 -1
  5. package/node_modules/@buddi/cli/dist/args.js +15 -0
  6. package/node_modules/@buddi/cli/dist/args.js.map +1 -1
  7. package/node_modules/@buddi/cli/dist/commands.d.ts.map +1 -1
  8. package/node_modules/@buddi/cli/dist/commands.js +18 -1
  9. package/node_modules/@buddi/cli/dist/commands.js.map +1 -1
  10. package/node_modules/@buddi/cli/dist/main.d.ts.map +1 -1
  11. package/node_modules/@buddi/cli/dist/main.js +19 -2
  12. package/node_modules/@buddi/cli/dist/main.js.map +1 -1
  13. package/node_modules/@buddi/cli/dist/status.d.ts +10 -0
  14. package/node_modules/@buddi/cli/dist/status.d.ts.map +1 -1
  15. package/node_modules/@buddi/cli/dist/status.js +4 -0
  16. package/node_modules/@buddi/cli/dist/status.js.map +1 -1
  17. package/node_modules/@buddi/core/dist/.tsbuildinfo +1 -1
  18. package/node_modules/@buddi/core/dist/agents/catalog.d.ts.map +1 -1
  19. package/node_modules/@buddi/core/dist/agents/catalog.js +7 -1
  20. package/node_modules/@buddi/core/dist/agents/catalog.js.map +1 -1
  21. package/node_modules/@buddi/core/dist/host/build.d.ts.map +1 -1
  22. package/node_modules/@buddi/core/dist/host/build.js +33 -16
  23. package/node_modules/@buddi/core/dist/host/build.js.map +1 -1
  24. package/node_modules/@buddi/core/dist/host/types.d.ts +17 -0
  25. package/node_modules/@buddi/core/dist/host/types.d.ts.map +1 -1
  26. package/node_modules/@buddi/core/dist/pages/__fixtures__/demo.d.ts.map +1 -1
  27. package/node_modules/@buddi/core/dist/pages/__fixtures__/demo.js +1 -0
  28. package/node_modules/@buddi/core/dist/pages/__fixtures__/demo.js.map +1 -1
  29. package/node_modules/@buddi/core/dist/pages.d.ts +74 -0
  30. package/node_modules/@buddi/core/dist/pages.d.ts.map +1 -1
  31. package/node_modules/@buddi/core/dist/pages.js +27 -1
  32. package/node_modules/@buddi/core/dist/pages.js.map +1 -1
  33. package/node_modules/@buddi/core/dist/plugin/index.d.ts +2 -2
  34. package/node_modules/@buddi/core/dist/plugin/index.d.ts.map +1 -1
  35. package/node_modules/@buddi/core/dist/plugin/version.d.ts +1 -1
  36. package/node_modules/@buddi/core/dist/plugin/version.js +1 -1
  37. package/node_modules/@buddi/core/dist/provider-accounts.d.ts +15 -1
  38. package/node_modules/@buddi/core/dist/provider-accounts.d.ts.map +1 -1
  39. package/node_modules/@buddi/core/dist/provider-accounts.js +22 -1
  40. package/node_modules/@buddi/core/dist/provider-accounts.js.map +1 -1
  41. package/node_modules/@buddi/core/dist/provider.d.ts +6 -0
  42. package/node_modules/@buddi/core/dist/provider.d.ts.map +1 -1
  43. package/node_modules/@buddi/core/dist/provider.js.map +1 -1
  44. package/node_modules/@buddi/core/dist/surfaces.d.ts +11 -0
  45. package/node_modules/@buddi/core/dist/surfaces.d.ts.map +1 -1
  46. package/node_modules/@buddi/core/dist/surfaces.js +4 -0
  47. package/node_modules/@buddi/core/dist/surfaces.js.map +1 -1
  48. package/node_modules/@buddi/core/migrations/046_ollama_device_key.sql +7 -0
  49. package/node_modules/@buddi/core/migrations/047_reported_context_windows.sql +5 -0
  50. package/node_modules/@buddi/core/migrations/048_surface_chat_voice.sql +13 -0
  51. package/node_modules/@buddi/core/migrations/049_surface_chat_voice_form.sql +8 -0
  52. package/node_modules/@buddi/gateway/dist/.tsbuildinfo +1 -1
  53. package/node_modules/@buddi/gateway/dist/agents-cli.d.ts +2 -0
  54. package/node_modules/@buddi/gateway/dist/agents-cli.d.ts.map +1 -1
  55. package/node_modules/@buddi/gateway/dist/agents-cli.js +5 -3
  56. package/node_modules/@buddi/gateway/dist/agents-cli.js.map +1 -1
  57. package/node_modules/@buddi/gateway/dist/chat/session.d.ts.map +1 -1
  58. package/node_modules/@buddi/gateway/dist/chat/session.js +2 -2
  59. package/node_modules/@buddi/gateway/dist/chat/session.js.map +1 -1
  60. package/node_modules/@buddi/gateway/dist/chat/usage.d.ts +16 -0
  61. package/node_modules/@buddi/gateway/dist/chat/usage.d.ts.map +1 -1
  62. package/node_modules/@buddi/gateway/dist/chat/usage.js +53 -11
  63. package/node_modules/@buddi/gateway/dist/chat/usage.js.map +1 -1
  64. package/node_modules/@buddi/gateway/dist/codex-accounts.d.ts +24 -11
  65. package/node_modules/@buddi/gateway/dist/codex-accounts.d.ts.map +1 -1
  66. package/node_modules/@buddi/gateway/dist/codex-accounts.js +151 -215
  67. package/node_modules/@buddi/gateway/dist/codex-accounts.js.map +1 -1
  68. package/node_modules/@buddi/gateway/dist/index.d.ts +2 -0
  69. package/node_modules/@buddi/gateway/dist/index.d.ts.map +1 -1
  70. package/node_modules/@buddi/gateway/dist/index.js +2 -0
  71. package/node_modules/@buddi/gateway/dist/index.js.map +1 -1
  72. package/node_modules/@buddi/gateway/dist/ollama-accounts.d.ts +87 -0
  73. package/node_modules/@buddi/gateway/dist/ollama-accounts.d.ts.map +1 -0
  74. package/node_modules/@buddi/gateway/dist/ollama-accounts.js +179 -0
  75. package/node_modules/@buddi/gateway/dist/ollama-accounts.js.map +1 -0
  76. package/node_modules/@buddi/gateway/dist/provider-accounts.d.ts +51 -1
  77. package/node_modules/@buddi/gateway/dist/provider-accounts.d.ts.map +1 -1
  78. package/node_modules/@buddi/gateway/dist/provider-accounts.js +184 -25
  79. package/node_modules/@buddi/gateway/dist/provider-accounts.js.map +1 -1
  80. package/node_modules/@buddi/gateway/dist/speech-cli.d.ts +43 -0
  81. package/node_modules/@buddi/gateway/dist/speech-cli.d.ts.map +1 -0
  82. package/node_modules/@buddi/gateway/dist/speech-cli.js +105 -0
  83. package/node_modules/@buddi/gateway/dist/speech-cli.js.map +1 -0
  84. package/node_modules/@buddi/gateway/dist/surfaces/context-budget.d.ts.map +1 -1
  85. package/node_modules/@buddi/gateway/dist/surfaces/context-budget.js +10 -3
  86. package/node_modules/@buddi/gateway/dist/surfaces/context-budget.js.map +1 -1
  87. package/node_modules/@buddi/gateway/dist/telegram/api.d.ts +10 -0
  88. package/node_modules/@buddi/gateway/dist/telegram/api.d.ts.map +1 -1
  89. package/node_modules/@buddi/gateway/dist/telegram/api.js +12 -0
  90. package/node_modules/@buddi/gateway/dist/telegram/api.js.map +1 -1
  91. package/node_modules/@buddi/gateway/dist/telegram/browser-view.d.ts +2 -1
  92. package/node_modules/@buddi/gateway/dist/telegram/browser-view.d.ts.map +1 -1
  93. package/node_modules/@buddi/gateway/dist/telegram/browser-view.js +4 -2
  94. package/node_modules/@buddi/gateway/dist/telegram/browser-view.js.map +1 -1
  95. package/node_modules/@buddi/gateway/dist/telegram/main.d.ts.map +1 -1
  96. package/node_modules/@buddi/gateway/dist/telegram/main.js +10 -2
  97. package/node_modules/@buddi/gateway/dist/telegram/main.js.map +1 -1
  98. package/node_modules/@buddi/gateway/dist/telegram/surface.d.ts +25 -0
  99. package/node_modules/@buddi/gateway/dist/telegram/surface.d.ts.map +1 -1
  100. package/node_modules/@buddi/gateway/dist/telegram/surface.js +212 -10
  101. package/node_modules/@buddi/gateway/dist/telegram/surface.js.map +1 -1
  102. package/node_modules/@buddi/gateway/dist/telegram/voice.d.ts +112 -0
  103. package/node_modules/@buddi/gateway/dist/telegram/voice.d.ts.map +1 -0
  104. package/node_modules/@buddi/gateway/dist/telegram/voice.js +220 -0
  105. package/node_modules/@buddi/gateway/dist/telegram/voice.js.map +1 -0
  106. package/node_modules/@buddi/gateway/dist/web/chat.d.ts +31 -8
  107. package/node_modules/@buddi/gateway/dist/web/chat.d.ts.map +1 -1
  108. package/node_modules/@buddi/gateway/dist/web/chat.js +3 -2
  109. package/node_modules/@buddi/gateway/dist/web/chat.js.map +1 -1
  110. package/node_modules/@buddi/gateway/dist/web/onboarding.d.ts +13 -2
  111. package/node_modules/@buddi/gateway/dist/web/onboarding.d.ts.map +1 -1
  112. package/node_modules/@buddi/gateway/dist/web/onboarding.js +24 -3
  113. package/node_modules/@buddi/gateway/dist/web/onboarding.js.map +1 -1
  114. package/node_modules/@buddi/gateway/dist/web/read.d.ts +15 -12
  115. package/node_modules/@buddi/gateway/dist/web/read.d.ts.map +1 -1
  116. package/node_modules/@buddi/gateway/dist/web/read.js +9 -10
  117. package/node_modules/@buddi/gateway/dist/web/read.js.map +1 -1
  118. package/node_modules/@buddi/gateway/dist/web/server.d.ts.map +1 -1
  119. package/node_modules/@buddi/gateway/dist/web/server.js +29 -13
  120. package/node_modules/@buddi/gateway/dist/web/server.js.map +1 -1
  121. package/node_modules/@buddi/gateway/dist/web/speech.d.ts +47 -0
  122. package/node_modules/@buddi/gateway/dist/web/speech.d.ts.map +1 -0
  123. package/node_modules/@buddi/gateway/dist/web/speech.js +83 -0
  124. package/node_modules/@buddi/gateway/dist/web/speech.js.map +1 -0
  125. package/node_modules/@buddi/gateway/dist/web/stream.d.ts +0 -24
  126. package/node_modules/@buddi/gateway/dist/web/stream.d.ts.map +1 -1
  127. package/node_modules/@buddi/gateway/dist/web/stream.js +26 -2
  128. package/node_modules/@buddi/gateway/dist/web/stream.js.map +1 -1
  129. package/node_modules/@buddi/gateway/dist/web/usage-view.d.ts +15 -0
  130. package/node_modules/@buddi/gateway/dist/web/usage-view.d.ts.map +1 -0
  131. package/node_modules/@buddi/gateway/dist/web/usage-view.js +20 -0
  132. package/node_modules/@buddi/gateway/dist/web/usage-view.js.map +1 -0
  133. package/node_modules/@buddi/install/dist/.tsbuildinfo +1 -1
  134. package/node_modules/@buddi/runtime/dist/.tsbuildinfo +1 -1
  135. package/node_modules/@buddi/runtime/dist/anthropic.d.ts +18 -0
  136. package/node_modules/@buddi/runtime/dist/anthropic.d.ts.map +1 -1
  137. package/node_modules/@buddi/runtime/dist/anthropic.js +65 -13
  138. package/node_modules/@buddi/runtime/dist/anthropic.js.map +1 -1
  139. package/node_modules/@buddi/runtime/dist/codex-direct.d.ts +55 -0
  140. package/node_modules/@buddi/runtime/dist/codex-direct.d.ts.map +1 -0
  141. package/node_modules/@buddi/runtime/dist/codex-direct.js +342 -0
  142. package/node_modules/@buddi/runtime/dist/codex-direct.js.map +1 -0
  143. package/node_modules/@buddi/runtime/dist/codex-oauth.d.ts +66 -0
  144. package/node_modules/@buddi/runtime/dist/codex-oauth.d.ts.map +1 -0
  145. package/node_modules/@buddi/runtime/dist/codex-oauth.js +210 -0
  146. package/node_modules/@buddi/runtime/dist/codex-oauth.js.map +1 -0
  147. package/node_modules/@buddi/runtime/dist/codex-profile.d.ts +19 -0
  148. package/node_modules/@buddi/runtime/dist/codex-profile.d.ts.map +1 -0
  149. package/node_modules/@buddi/runtime/dist/codex-profile.js +99 -0
  150. package/node_modules/@buddi/runtime/dist/codex-profile.js.map +1 -0
  151. package/node_modules/@buddi/runtime/dist/context-window.d.ts.map +1 -1
  152. package/node_modules/@buddi/runtime/dist/context-window.js +17 -4
  153. package/node_modules/@buddi/runtime/dist/context-window.js.map +1 -1
  154. package/node_modules/@buddi/runtime/dist/delegate.d.ts +24 -0
  155. package/node_modules/@buddi/runtime/dist/delegate.d.ts.map +1 -1
  156. package/node_modules/@buddi/runtime/dist/delegate.js +87 -11
  157. package/node_modules/@buddi/runtime/dist/delegate.js.map +1 -1
  158. package/node_modules/@buddi/runtime/dist/index.d.ts +4 -4
  159. package/node_modules/@buddi/runtime/dist/index.d.ts.map +1 -1
  160. package/node_modules/@buddi/runtime/dist/index.js +5 -5
  161. package/node_modules/@buddi/runtime/dist/index.js.map +1 -1
  162. package/node_modules/@buddi/runtime/dist/loop.d.ts +7 -0
  163. package/node_modules/@buddi/runtime/dist/loop.d.ts.map +1 -1
  164. package/node_modules/@buddi/runtime/dist/loop.js +54 -8
  165. package/node_modules/@buddi/runtime/dist/loop.js.map +1 -1
  166. package/node_modules/@buddi/runtime/dist/ollama-signing.d.ts +52 -0
  167. package/node_modules/@buddi/runtime/dist/ollama-signing.d.ts.map +1 -0
  168. package/node_modules/@buddi/runtime/dist/ollama-signing.js +154 -0
  169. package/node_modules/@buddi/runtime/dist/ollama-signing.js.map +1 -0
  170. package/node_modules/@buddi/runtime/dist/openai.d.ts +16 -4
  171. package/node_modules/@buddi/runtime/dist/openai.d.ts.map +1 -1
  172. package/node_modules/@buddi/runtime/dist/openai.js +44 -11
  173. package/node_modules/@buddi/runtime/dist/openai.js.map +1 -1
  174. package/node_modules/@buddi/runtime/dist/provider-models.d.ts +2 -0
  175. package/node_modules/@buddi/runtime/dist/provider-models.d.ts.map +1 -1
  176. package/node_modules/@buddi/runtime/dist/provider-models.js +13 -4
  177. package/node_modules/@buddi/runtime/dist/provider-models.js.map +1 -1
  178. package/node_modules/@buddi/tool-artifacts/dist/.tsbuildinfo +1 -1
  179. package/node_modules/@buddi/tool-browser/dist/.tsbuildinfo +1 -1
  180. package/node_modules/@buddi/tool-browser/dist/computer.d.ts +53 -1
  181. package/node_modules/@buddi/tool-browser/dist/computer.d.ts.map +1 -1
  182. package/node_modules/@buddi/tool-browser/dist/computer.js +154 -5
  183. package/node_modules/@buddi/tool-browser/dist/computer.js.map +1 -1
  184. package/node_modules/@buddi/tool-browser/dist/controller.d.ts +20 -3
  185. package/node_modules/@buddi/tool-browser/dist/controller.d.ts.map +1 -1
  186. package/node_modules/@buddi/tool-browser/dist/controller.js +170 -5
  187. package/node_modules/@buddi/tool-browser/dist/controller.js.map +1 -1
  188. package/node_modules/@buddi/tool-browser/dist/index.d.ts.map +1 -1
  189. package/node_modules/@buddi/tool-browser/dist/index.js +9 -1
  190. package/node_modules/@buddi/tool-browser/dist/index.js.map +1 -1
  191. package/node_modules/@buddi/tool-browser/dist/service.d.ts +14 -1
  192. package/node_modules/@buddi/tool-browser/dist/service.d.ts.map +1 -1
  193. package/node_modules/@buddi/tool-browser/dist/service.js +28 -5
  194. package/node_modules/@buddi/tool-browser/dist/service.js.map +1 -1
  195. package/node_modules/@buddi/tool-browser/dist/types.d.ts +11 -0
  196. package/node_modules/@buddi/tool-browser/dist/types.d.ts.map +1 -1
  197. package/node_modules/@buddi/tool-browser/dist/types.js +16 -3
  198. package/node_modules/@buddi/tool-browser/dist/types.js.map +1 -1
  199. package/node_modules/@buddi/tool-browser/package.json +1 -1
  200. package/node_modules/@buddi/tool-email/dist/.tsbuildinfo +1 -1
  201. package/node_modules/@buddi/tool-host/dist/.tsbuildinfo +1 -1
  202. package/node_modules/@buddi/tool-memory/dist/.tsbuildinfo +1 -1
  203. package/node_modules/@buddi/tool-web/dist/.tsbuildinfo +1 -1
  204. package/node_modules/imapflow/CHANGELOG.md +29 -0
  205. package/node_modules/imapflow/dist/cjs/commands/append.js +12 -12
  206. package/node_modules/imapflow/dist/cjs/commands/authenticate.d.ts +3 -8
  207. package/node_modules/imapflow/dist/cjs/commands/close.js +2 -1
  208. package/node_modules/imapflow/dist/cjs/commands/copy.js +4 -4
  209. package/node_modules/imapflow/dist/cjs/commands/create.js +2 -3
  210. package/node_modules/imapflow/dist/cjs/commands/delete.js +4 -4
  211. package/node_modules/imapflow/dist/cjs/commands/expunge.js +8 -5
  212. package/node_modules/imapflow/dist/cjs/commands/fetch.js +12 -10
  213. package/node_modules/imapflow/dist/cjs/commands/idle.js +6 -2
  214. package/node_modules/imapflow/dist/cjs/commands/list.js +22 -18
  215. package/node_modules/imapflow/dist/cjs/commands/move.js +11 -6
  216. package/node_modules/imapflow/dist/cjs/commands/namespace.js +1 -1
  217. package/node_modules/imapflow/dist/cjs/commands/quota.js +10 -9
  218. package/node_modules/imapflow/dist/cjs/commands/rename.js +4 -4
  219. package/node_modules/imapflow/dist/cjs/commands/search.js +7 -8
  220. package/node_modules/imapflow/dist/cjs/commands/select.js +12 -9
  221. package/node_modules/imapflow/dist/cjs/commands/status.js +11 -11
  222. package/node_modules/imapflow/dist/cjs/commands/store.js +5 -5
  223. package/node_modules/imapflow/dist/cjs/commands/subscribe.js +2 -17
  224. package/node_modules/imapflow/dist/cjs/commands/subscription.d.ts +10 -0
  225. package/node_modules/imapflow/dist/cjs/commands/subscription.js +29 -0
  226. package/node_modules/imapflow/dist/cjs/commands/unsubscribe.js +2 -17
  227. package/node_modules/imapflow/dist/cjs/download.d.ts +22 -0
  228. package/node_modules/imapflow/dist/cjs/download.js +588 -0
  229. package/node_modules/imapflow/dist/cjs/errors.d.ts +50 -1
  230. package/node_modules/imapflow/dist/cjs/errors.js +53 -1
  231. package/node_modules/imapflow/dist/cjs/handler/imap-compiler.js +1 -1
  232. package/node_modules/imapflow/dist/cjs/handler/imap-stream.d.ts +13 -2
  233. package/node_modules/imapflow/dist/cjs/handler/imap-stream.js +51 -30
  234. package/node_modules/imapflow/dist/cjs/handler/parser-instance.js +2 -2
  235. package/node_modules/imapflow/dist/cjs/handler/token-parser.js +15 -9
  236. package/node_modules/imapflow/dist/cjs/imap-flow.d.ts +30 -84
  237. package/node_modules/imapflow/dist/cjs/imap-flow.js +282 -734
  238. package/node_modules/imapflow/dist/cjs/jp-decoder.js +1 -1
  239. package/node_modules/imapflow/dist/cjs/package-info.d.ts +1 -1
  240. package/node_modules/imapflow/dist/cjs/package-info.js +3 -3
  241. package/node_modules/imapflow/dist/cjs/search-compiler.js +5 -12
  242. package/node_modules/imapflow/dist/cjs/tools.d.ts +52 -11
  243. package/node_modules/imapflow/dist/cjs/tools.js +86 -23
  244. package/node_modules/imapflow/dist/cjs/types.d.ts +30 -16
  245. package/node_modules/imapflow/dist/esm/commands/append.js +13 -13
  246. package/node_modules/imapflow/dist/esm/commands/authenticate.d.ts +3 -8
  247. package/node_modules/imapflow/dist/esm/commands/close.js +2 -1
  248. package/node_modules/imapflow/dist/esm/commands/copy.js +5 -5
  249. package/node_modules/imapflow/dist/esm/commands/create.js +3 -4
  250. package/node_modules/imapflow/dist/esm/commands/delete.js +5 -5
  251. package/node_modules/imapflow/dist/esm/commands/expunge.js +9 -6
  252. package/node_modules/imapflow/dist/esm/commands/fetch.js +13 -11
  253. package/node_modules/imapflow/dist/esm/commands/idle.js +7 -3
  254. package/node_modules/imapflow/dist/esm/commands/list.js +22 -18
  255. package/node_modules/imapflow/dist/esm/commands/move.js +12 -7
  256. package/node_modules/imapflow/dist/esm/commands/namespace.js +2 -2
  257. package/node_modules/imapflow/dist/esm/commands/quota.js +11 -10
  258. package/node_modules/imapflow/dist/esm/commands/rename.js +5 -5
  259. package/node_modules/imapflow/dist/esm/commands/search.js +8 -9
  260. package/node_modules/imapflow/dist/esm/commands/select.js +13 -10
  261. package/node_modules/imapflow/dist/esm/commands/status.js +12 -12
  262. package/node_modules/imapflow/dist/esm/commands/store.js +6 -6
  263. package/node_modules/imapflow/dist/esm/commands/subscribe.js +2 -17
  264. package/node_modules/imapflow/dist/esm/commands/subscription.d.ts +10 -0
  265. package/node_modules/imapflow/dist/esm/commands/subscription.js +26 -0
  266. package/node_modules/imapflow/dist/esm/commands/unsubscribe.js +2 -17
  267. package/node_modules/imapflow/dist/esm/download.d.ts +22 -0
  268. package/node_modules/imapflow/dist/esm/download.js +581 -0
  269. package/node_modules/imapflow/dist/esm/errors.d.ts +50 -1
  270. package/node_modules/imapflow/dist/esm/errors.js +52 -0
  271. package/node_modules/imapflow/dist/esm/handler/imap-compiler.js +1 -1
  272. package/node_modules/imapflow/dist/esm/handler/imap-stream.d.ts +13 -2
  273. package/node_modules/imapflow/dist/esm/handler/imap-stream.js +51 -30
  274. package/node_modules/imapflow/dist/esm/handler/parser-instance.js +2 -2
  275. package/node_modules/imapflow/dist/esm/handler/token-parser.js +15 -9
  276. package/node_modules/imapflow/dist/esm/imap-flow.d.ts +30 -84
  277. package/node_modules/imapflow/dist/esm/imap-flow.js +282 -735
  278. package/node_modules/imapflow/dist/esm/jp-decoder.js +1 -1
  279. package/node_modules/imapflow/dist/esm/package-info.d.ts +1 -1
  280. package/node_modules/imapflow/dist/esm/package-info.js +3 -3
  281. package/node_modules/imapflow/dist/esm/search-compiler.js +5 -12
  282. package/node_modules/imapflow/dist/esm/tools.d.ts +52 -11
  283. package/node_modules/imapflow/dist/esm/tools.js +79 -21
  284. package/node_modules/imapflow/dist/esm/types.d.ts +30 -16
  285. package/node_modules/imapflow/package.json +4 -4
  286. package/package.json +2 -2
  287. package/packages/cli/dist/.tsbuildinfo +1 -1
  288. package/packages/cli/dist/args.d.ts +6 -0
  289. package/packages/cli/dist/args.d.ts.map +1 -1
  290. package/packages/cli/dist/args.js +15 -0
  291. package/packages/cli/dist/args.js.map +1 -1
  292. package/packages/cli/dist/commands.d.ts.map +1 -1
  293. package/packages/cli/dist/commands.js +18 -1
  294. package/packages/cli/dist/commands.js.map +1 -1
  295. package/packages/cli/dist/main.d.ts.map +1 -1
  296. package/packages/cli/dist/main.js +19 -2
  297. package/packages/cli/dist/main.js.map +1 -1
  298. package/packages/cli/dist/status.d.ts +10 -0
  299. package/packages/cli/dist/status.d.ts.map +1 -1
  300. package/packages/cli/dist/status.js +4 -0
  301. package/packages/cli/dist/status.js.map +1 -1
  302. package/packages/core/dist/.tsbuildinfo +1 -1
  303. package/packages/core/dist/agents/catalog.d.ts.map +1 -1
  304. package/packages/core/dist/agents/catalog.js +7 -1
  305. package/packages/core/dist/agents/catalog.js.map +1 -1
  306. package/packages/core/dist/host/build.d.ts.map +1 -1
  307. package/packages/core/dist/host/build.js +33 -16
  308. package/packages/core/dist/host/build.js.map +1 -1
  309. package/packages/core/dist/host/types.d.ts +17 -0
  310. package/packages/core/dist/host/types.d.ts.map +1 -1
  311. package/packages/core/dist/pages/__fixtures__/demo.d.ts.map +1 -1
  312. package/packages/core/dist/pages/__fixtures__/demo.js +1 -0
  313. package/packages/core/dist/pages/__fixtures__/demo.js.map +1 -1
  314. package/packages/core/dist/pages.d.ts +74 -0
  315. package/packages/core/dist/pages.d.ts.map +1 -1
  316. package/packages/core/dist/pages.js +27 -1
  317. package/packages/core/dist/pages.js.map +1 -1
  318. package/packages/core/dist/plugin/index.d.ts +2 -2
  319. package/packages/core/dist/plugin/index.d.ts.map +1 -1
  320. package/packages/core/dist/plugin/version.d.ts +1 -1
  321. package/packages/core/dist/plugin/version.js +1 -1
  322. package/packages/core/dist/provider-accounts.d.ts +15 -1
  323. package/packages/core/dist/provider-accounts.d.ts.map +1 -1
  324. package/packages/core/dist/provider-accounts.js +22 -1
  325. package/packages/core/dist/provider-accounts.js.map +1 -1
  326. package/packages/core/dist/provider.d.ts +6 -0
  327. package/packages/core/dist/provider.d.ts.map +1 -1
  328. package/packages/core/dist/provider.js.map +1 -1
  329. package/packages/core/dist/surfaces.d.ts +11 -0
  330. package/packages/core/dist/surfaces.d.ts.map +1 -1
  331. package/packages/core/dist/surfaces.js +4 -0
  332. package/packages/core/dist/surfaces.js.map +1 -1
  333. package/packages/core/migrations/046_ollama_device_key.sql +7 -0
  334. package/packages/core/migrations/047_reported_context_windows.sql +5 -0
  335. package/packages/core/migrations/048_surface_chat_voice.sql +13 -0
  336. package/packages/core/migrations/049_surface_chat_voice_form.sql +8 -0
  337. package/packages/gateway/dist/.tsbuildinfo +1 -1
  338. package/packages/gateway/dist/agents-cli.d.ts +2 -0
  339. package/packages/gateway/dist/agents-cli.d.ts.map +1 -1
  340. package/packages/gateway/dist/agents-cli.js +5 -3
  341. package/packages/gateway/dist/agents-cli.js.map +1 -1
  342. package/packages/gateway/dist/chat/session.d.ts.map +1 -1
  343. package/packages/gateway/dist/chat/session.js +2 -2
  344. package/packages/gateway/dist/chat/session.js.map +1 -1
  345. package/packages/gateway/dist/chat/usage.d.ts +16 -0
  346. package/packages/gateway/dist/chat/usage.d.ts.map +1 -1
  347. package/packages/gateway/dist/chat/usage.js +53 -11
  348. package/packages/gateway/dist/chat/usage.js.map +1 -1
  349. package/packages/gateway/dist/codex-accounts.d.ts +24 -11
  350. package/packages/gateway/dist/codex-accounts.d.ts.map +1 -1
  351. package/packages/gateway/dist/codex-accounts.js +151 -215
  352. package/packages/gateway/dist/codex-accounts.js.map +1 -1
  353. package/packages/gateway/dist/index.d.ts +2 -0
  354. package/packages/gateway/dist/index.d.ts.map +1 -1
  355. package/packages/gateway/dist/index.js +2 -0
  356. package/packages/gateway/dist/index.js.map +1 -1
  357. package/packages/gateway/dist/ollama-accounts.d.ts +87 -0
  358. package/packages/gateway/dist/ollama-accounts.d.ts.map +1 -0
  359. package/packages/gateway/dist/ollama-accounts.js +179 -0
  360. package/packages/gateway/dist/ollama-accounts.js.map +1 -0
  361. package/packages/gateway/dist/provider-accounts.d.ts +51 -1
  362. package/packages/gateway/dist/provider-accounts.d.ts.map +1 -1
  363. package/packages/gateway/dist/provider-accounts.js +184 -25
  364. package/packages/gateway/dist/provider-accounts.js.map +1 -1
  365. package/packages/gateway/dist/speech-cli.d.ts +43 -0
  366. package/packages/gateway/dist/speech-cli.d.ts.map +1 -0
  367. package/packages/gateway/dist/speech-cli.js +105 -0
  368. package/packages/gateway/dist/speech-cli.js.map +1 -0
  369. package/packages/gateway/dist/surfaces/context-budget.d.ts.map +1 -1
  370. package/packages/gateway/dist/surfaces/context-budget.js +10 -3
  371. package/packages/gateway/dist/surfaces/context-budget.js.map +1 -1
  372. package/packages/gateway/dist/telegram/api.d.ts +10 -0
  373. package/packages/gateway/dist/telegram/api.d.ts.map +1 -1
  374. package/packages/gateway/dist/telegram/api.js +12 -0
  375. package/packages/gateway/dist/telegram/api.js.map +1 -1
  376. package/packages/gateway/dist/telegram/browser-view.d.ts +2 -1
  377. package/packages/gateway/dist/telegram/browser-view.d.ts.map +1 -1
  378. package/packages/gateway/dist/telegram/browser-view.js +4 -2
  379. package/packages/gateway/dist/telegram/browser-view.js.map +1 -1
  380. package/packages/gateway/dist/telegram/main.d.ts.map +1 -1
  381. package/packages/gateway/dist/telegram/main.js +10 -2
  382. package/packages/gateway/dist/telegram/main.js.map +1 -1
  383. package/packages/gateway/dist/telegram/surface.d.ts +25 -0
  384. package/packages/gateway/dist/telegram/surface.d.ts.map +1 -1
  385. package/packages/gateway/dist/telegram/surface.js +212 -10
  386. package/packages/gateway/dist/telegram/surface.js.map +1 -1
  387. package/packages/gateway/dist/telegram/voice.d.ts +112 -0
  388. package/packages/gateway/dist/telegram/voice.d.ts.map +1 -0
  389. package/packages/gateway/dist/telegram/voice.js +220 -0
  390. package/packages/gateway/dist/telegram/voice.js.map +1 -0
  391. package/packages/gateway/dist/web/chat.d.ts +31 -8
  392. package/packages/gateway/dist/web/chat.d.ts.map +1 -1
  393. package/packages/gateway/dist/web/chat.js +3 -2
  394. package/packages/gateway/dist/web/chat.js.map +1 -1
  395. package/packages/gateway/dist/web/onboarding.d.ts +13 -2
  396. package/packages/gateway/dist/web/onboarding.d.ts.map +1 -1
  397. package/packages/gateway/dist/web/onboarding.js +24 -3
  398. package/packages/gateway/dist/web/onboarding.js.map +1 -1
  399. package/packages/gateway/dist/web/read.d.ts +15 -12
  400. package/packages/gateway/dist/web/read.d.ts.map +1 -1
  401. package/packages/gateway/dist/web/read.js +9 -10
  402. package/packages/gateway/dist/web/read.js.map +1 -1
  403. package/packages/gateway/dist/web/server.d.ts.map +1 -1
  404. package/packages/gateway/dist/web/server.js +29 -13
  405. package/packages/gateway/dist/web/server.js.map +1 -1
  406. package/packages/gateway/dist/web/speech.d.ts +47 -0
  407. package/packages/gateway/dist/web/speech.d.ts.map +1 -0
  408. package/packages/gateway/dist/web/speech.js +83 -0
  409. package/packages/gateway/dist/web/speech.js.map +1 -0
  410. package/packages/gateway/dist/web/stream.d.ts +0 -24
  411. package/packages/gateway/dist/web/stream.d.ts.map +1 -1
  412. package/packages/gateway/dist/web/stream.js +26 -2
  413. package/packages/gateway/dist/web/stream.js.map +1 -1
  414. package/packages/gateway/dist/web/usage-view.d.ts +15 -0
  415. package/packages/gateway/dist/web/usage-view.d.ts.map +1 -0
  416. package/packages/gateway/dist/web/usage-view.js +20 -0
  417. package/packages/gateway/dist/web/usage-view.js.map +1 -0
  418. package/packages/install/dist/.tsbuildinfo +1 -1
  419. package/packages/runtime/dist/.tsbuildinfo +1 -1
  420. package/packages/runtime/dist/anthropic.d.ts +18 -0
  421. package/packages/runtime/dist/anthropic.d.ts.map +1 -1
  422. package/packages/runtime/dist/anthropic.js +65 -13
  423. package/packages/runtime/dist/anthropic.js.map +1 -1
  424. package/packages/runtime/dist/codex-direct.d.ts +55 -0
  425. package/packages/runtime/dist/codex-direct.d.ts.map +1 -0
  426. package/packages/runtime/dist/codex-direct.js +342 -0
  427. package/packages/runtime/dist/codex-direct.js.map +1 -0
  428. package/packages/runtime/dist/codex-oauth.d.ts +66 -0
  429. package/packages/runtime/dist/codex-oauth.d.ts.map +1 -0
  430. package/packages/runtime/dist/codex-oauth.js +210 -0
  431. package/packages/runtime/dist/codex-oauth.js.map +1 -0
  432. package/packages/runtime/dist/codex-profile.d.ts +19 -0
  433. package/packages/runtime/dist/codex-profile.d.ts.map +1 -0
  434. package/packages/runtime/dist/codex-profile.js +99 -0
  435. package/packages/runtime/dist/codex-profile.js.map +1 -0
  436. package/packages/runtime/dist/context-window.d.ts.map +1 -1
  437. package/packages/runtime/dist/context-window.js +17 -4
  438. package/packages/runtime/dist/context-window.js.map +1 -1
  439. package/packages/runtime/dist/delegate.d.ts +24 -0
  440. package/packages/runtime/dist/delegate.d.ts.map +1 -1
  441. package/packages/runtime/dist/delegate.js +87 -11
  442. package/packages/runtime/dist/delegate.js.map +1 -1
  443. package/packages/runtime/dist/index.d.ts +4 -4
  444. package/packages/runtime/dist/index.d.ts.map +1 -1
  445. package/packages/runtime/dist/index.js +5 -5
  446. package/packages/runtime/dist/index.js.map +1 -1
  447. package/packages/runtime/dist/loop.d.ts +7 -0
  448. package/packages/runtime/dist/loop.d.ts.map +1 -1
  449. package/packages/runtime/dist/loop.js +54 -8
  450. package/packages/runtime/dist/loop.js.map +1 -1
  451. package/packages/runtime/dist/ollama-signing.d.ts +52 -0
  452. package/packages/runtime/dist/ollama-signing.d.ts.map +1 -0
  453. package/packages/runtime/dist/ollama-signing.js +154 -0
  454. package/packages/runtime/dist/ollama-signing.js.map +1 -0
  455. package/packages/runtime/dist/openai.d.ts +16 -4
  456. package/packages/runtime/dist/openai.d.ts.map +1 -1
  457. package/packages/runtime/dist/openai.js +44 -11
  458. package/packages/runtime/dist/openai.js.map +1 -1
  459. package/packages/runtime/dist/provider-models.d.ts +2 -0
  460. package/packages/runtime/dist/provider-models.d.ts.map +1 -1
  461. package/packages/runtime/dist/provider-models.js +13 -4
  462. package/packages/runtime/dist/provider-models.js.map +1 -1
  463. package/packages/tools/artifacts/dist/.tsbuildinfo +1 -1
  464. package/packages/tools/browser/dist/.tsbuildinfo +1 -1
  465. package/packages/tools/browser/dist/computer.d.ts +53 -1
  466. package/packages/tools/browser/dist/computer.d.ts.map +1 -1
  467. package/packages/tools/browser/dist/computer.js +154 -5
  468. package/packages/tools/browser/dist/computer.js.map +1 -1
  469. package/packages/tools/browser/dist/controller.d.ts +20 -3
  470. package/packages/tools/browser/dist/controller.d.ts.map +1 -1
  471. package/packages/tools/browser/dist/controller.js +170 -5
  472. package/packages/tools/browser/dist/controller.js.map +1 -1
  473. package/packages/tools/browser/dist/index.d.ts.map +1 -1
  474. package/packages/tools/browser/dist/index.js +9 -1
  475. package/packages/tools/browser/dist/index.js.map +1 -1
  476. package/packages/tools/browser/dist/service.d.ts +14 -1
  477. package/packages/tools/browser/dist/service.d.ts.map +1 -1
  478. package/packages/tools/browser/dist/service.js +28 -5
  479. package/packages/tools/browser/dist/service.js.map +1 -1
  480. package/packages/tools/browser/dist/types.d.ts +11 -0
  481. package/packages/tools/browser/dist/types.d.ts.map +1 -1
  482. package/packages/tools/browser/dist/types.js +16 -3
  483. package/packages/tools/browser/dist/types.js.map +1 -1
  484. package/packages/tools/browser/package.json +1 -1
  485. package/packages/tools/email/dist/.tsbuildinfo +1 -1
  486. package/packages/tools/host/dist/.tsbuildinfo +1 -1
  487. package/packages/tools/memory/dist/.tsbuildinfo +1 -1
  488. package/packages/tools/web/dist/.tsbuildinfo +1 -1
  489. package/packages/web/dist/assets/index-D5cRFcgm.css +1 -0
  490. package/packages/web/dist/assets/index-GCFB1vBV.js +125 -0
  491. package/packages/web/dist/index.html +2 -2
  492. package/node_modules/@buddi/runtime/dist/codex-app-server.d.ts +0 -20
  493. package/node_modules/@buddi/runtime/dist/codex-app-server.d.ts.map +0 -1
  494. package/node_modules/@buddi/runtime/dist/codex-app-server.js +0 -172
  495. package/node_modules/@buddi/runtime/dist/codex-app-server.js.map +0 -1
  496. package/node_modules/@buddi/runtime/dist/codex-policy.d.ts +0 -6
  497. package/node_modules/@buddi/runtime/dist/codex-policy.d.ts.map +0 -1
  498. package/node_modules/@buddi/runtime/dist/codex-policy.js +0 -79
  499. package/node_modules/@buddi/runtime/dist/codex-policy.js.map +0 -1
  500. package/node_modules/@buddi/runtime/dist/codex-rpc.d.ts +0 -34
  501. package/node_modules/@buddi/runtime/dist/codex-rpc.d.ts.map +0 -1
  502. package/node_modules/@buddi/runtime/dist/codex-rpc.js +0 -152
  503. package/node_modules/@buddi/runtime/dist/codex-rpc.js.map +0 -1
  504. package/node_modules/@buddi/runtime/dist/codex-session.d.ts +0 -30
  505. package/node_modules/@buddi/runtime/dist/codex-session.d.ts.map +0 -1
  506. package/node_modules/@buddi/runtime/dist/codex-session.js +0 -169
  507. package/node_modules/@buddi/runtime/dist/codex-session.js.map +0 -1
  508. package/packages/runtime/dist/codex-app-server.d.ts +0 -20
  509. package/packages/runtime/dist/codex-app-server.d.ts.map +0 -1
  510. package/packages/runtime/dist/codex-app-server.js +0 -172
  511. package/packages/runtime/dist/codex-app-server.js.map +0 -1
  512. package/packages/runtime/dist/codex-policy.d.ts +0 -6
  513. package/packages/runtime/dist/codex-policy.d.ts.map +0 -1
  514. package/packages/runtime/dist/codex-policy.js +0 -79
  515. package/packages/runtime/dist/codex-policy.js.map +0 -1
  516. package/packages/runtime/dist/codex-rpc.d.ts +0 -34
  517. package/packages/runtime/dist/codex-rpc.d.ts.map +0 -1
  518. package/packages/runtime/dist/codex-rpc.js +0 -152
  519. package/packages/runtime/dist/codex-rpc.js.map +0 -1
  520. package/packages/runtime/dist/codex-session.d.ts +0 -30
  521. package/packages/runtime/dist/codex-session.d.ts.map +0 -1
  522. package/packages/runtime/dist/codex-session.js +0 -169
  523. package/packages/runtime/dist/codex-session.js.map +0 -1
  524. package/packages/web/dist/assets/index-B727JQsO.css +0 -1
  525. package/packages/web/dist/assets/index-OA0xgibo.js +0 -123
@@ -22,6 +22,7 @@ import { type ArtifactStore, type IncomingAttachment } from './attachments.js';
22
22
  import { type BrowserCommandWord } from './browser-view.js';
23
23
  import { type AgentCatalog, type CatalogAgent } from './types.js';
24
24
  import { type CanvasView } from './outbound.js';
25
+ import { type SpeechHooks } from './voice.js';
25
26
  export declare const SURFACE = "telegram";
26
27
  /** Proposal cards' callback prefix (`proposals.ts`); here so routing needs no import cycle. */
27
28
  export declare const PROPOSAL_CALLBACK_PREFIX = "prp";
@@ -271,6 +272,18 @@ export interface RunRequest {
271
272
  * answers the first message, which is what this surface did before.
272
273
  */
273
274
  interjections?: InterjectionSource;
275
+ /**
276
+ * This turn's answer will be read aloud as a voice note: the surface
277
+ * profile carries the `spoken` fact for this one run, so the agent writes
278
+ * for the ear.
279
+ */
280
+ spoken?: boolean;
281
+ /**
282
+ * The language the owner's voice note was in, by name ("French"), when it
283
+ * was detected: the surface profile names it for this one run, so the
284
+ * agent answers in it.
285
+ */
286
+ spokenLanguage?: string;
274
287
  }
275
288
  /**
276
289
  * What a turn produced.
@@ -345,6 +358,12 @@ export interface TelegramSurfaceOptions {
345
358
  artifacts?: ArtifactStore;
346
359
  /** Submits one turn and returns the reply text, and what it declared. */
347
360
  run(req: RunRequest): Promise<string | RunReply>;
361
+ /**
362
+ * The speech plugin's two tools, called by name as the owner. Absent: a
363
+ * voice note is kept and answered with the sentence that says how to have
364
+ * it heard, and every answer is text.
365
+ */
366
+ speech?: SpeechHooks;
348
367
  /** Runs a mission inline for `/recap`. Absent: the command is unavailable. */
349
368
  runMission?: RunMission;
350
369
  /**
@@ -681,5 +700,11 @@ export declare class TelegramSurface {
681
700
  * here, and an installation providing neither is told so plainly.
682
701
  */
683
702
  handleRecap(chatId: string): Promise<void>;
703
+ /**
704
+ * `/voice` alone shows the chat's choice; `/voice spoken|always|off` sets
705
+ * when, `/voice voice|both|text` what. Written to the chat's row and to the
706
+ * speech plugin's copy, so Settings → Speech shows the same.
707
+ */
708
+ handleVoice(chatId: string, arg: string): Promise<void>;
684
709
  }
685
710
  //# sourceMappingURL=surface.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"surface.d.ts","sourceRoot":"","sources":["../../src/telegram/surface.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"surface.d.ts","sourceRoot":"","sources":["../../src/telegram/surface.ts"],"names":[],"mappings":"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"}
@@ -24,6 +24,7 @@ import { isUnknownAgentError } from './types.js';
24
24
  import { whereText } from './commands.js';
25
25
  import { BURST_GAP_MS, StreamedAnswer, sendBurst, sendRunExtras, toPlainText, } from './outbound.js';
26
26
  import { FIRST_RUN_SUFFIX, shouldStartFirstRun } from '../agents/first-run.js';
27
+ import { answerSpoken, applyVoiceArg, claimTextInsteadNote, getChatVoice, languageName, INSTALL_SPEECH_TEXT, MAX_SPOKEN_CHARS, MAX_VOICE_CAPTION_CHARS, NO_WORDS_TEXT, notHeardText, SET_UP_LISTENING_TEXT, setChatVoice, textInsteadText, VOICE_USAGE_TEXT, voiceSetText, voiceStatusText, voiceTurnText, } from './voice.js';
27
28
  export const SURFACE = 'telegram';
28
29
  /** Proposal cards' callback prefix (`proposals.ts`); here so routing needs no import cycle. */
29
30
  export const PROPOSAL_CALLBACK_PREFIX = 'prp';
@@ -96,6 +97,7 @@ export const HELP = [
96
97
  'buddi on Telegram.',
97
98
  '',
98
99
  'Send a statement, a receipt photo or a CSV and tell me what to do with it.',
100
+ 'Send a voice note and I hear it, and answer with one, when the speech plugin is set up.',
99
101
  '',
100
102
  'Answers here are kept short, because you read them on a phone. Ask for more and you get more.',
101
103
  '',
@@ -113,6 +115,8 @@ export const HELP = [
113
115
  '/missions — the next five scheduled missions',
114
116
  '/goals — each goal with its number and where it stands',
115
117
  '/where — the dashboard address, when your phone can reach it',
118
+ '/voice [spoken|always|off] — answer with a voice when you send one (spoken), every time (always), or never (off)',
119
+ '/voice [voice|both|text] — send the voice note alone, with the text, or text only',
116
120
  '/browser — where the screen stands; /browser stop, /browser resume, /browser release',
117
121
  '/host — host execution permissions and running commands',
118
122
  '/hoststop — interrupt all host commands',
@@ -705,6 +709,10 @@ export class TelegramSurface {
705
709
  * restart drops it back to ordinary routing, never to a wrong agent.
706
710
  */
707
711
  #pending = new PendingQuestions();
712
+ /** The chats whose message in hand is a voice note the owner spoke; read by `#runFor`. */
713
+ #ownerSpoke = new Set();
714
+ /** The language of the voice note being run now, per chat, by name. */
715
+ #ownerLanguage = new Map();
708
716
  #offset;
709
717
  #running = false;
710
718
  #abort;
@@ -880,8 +888,11 @@ export class TelegramSurface {
880
888
  const incoming = extractAttachment(message);
881
889
  if (incoming) {
882
890
  // A file arrives with its own intent, caption or not. It is never the
883
- // answer to "what time tonight?", so it ends any pending question.
884
- this.#pending.clear(chatId);
891
+ // answer to "what time tonight?", so it ends any pending question. A
892
+ // voice note can be exactly that answer: it is heard, then routed as
893
+ // the words it carries.
894
+ if (incoming.slot !== 'voice' && incoming.slot !== 'audio')
895
+ this.#pending.clear(chatId);
885
896
  const messageId = String(message.message_id);
886
897
  this.enqueue(chatId, () => this.handleAttachment(chatId, resolution.ownerId, messageId, incoming));
887
898
  return;
@@ -1176,6 +1187,10 @@ export class TelegramSurface {
1176
1187
  await this.#opts.api.sendMessage(chatId, whereText(this.#opts.publicOrigin));
1177
1188
  return;
1178
1189
  }
1190
+ if (command === '/voice') {
1191
+ await this.handleVoice(chatId, text.slice(command.length));
1192
+ return;
1193
+ }
1179
1194
  // `/quiet 1w` — the argument is everything after the command word, so
1180
1195
  // `/quiet` alone parses as the default. The surface never reads a duration.
1181
1196
  if (command === '/quiet') {
@@ -1382,6 +1397,10 @@ export class TelegramSurface {
1382
1397
  // Whether this turn ended by asking the owner something. Read out of the
1383
1398
  // run, not out of what the owner is shown: the note is prepended after.
1384
1399
  let askedOwner = false;
1400
+ // Read aloud? When the owner spoke and the chat says `spoken`, or always.
1401
+ // Only with a speaker to read it; otherwise the agent is not told so.
1402
+ const spoken = await this.#willSpeak(chatId);
1403
+ const spokenLanguage = this.#ownerLanguage.get(chatId);
1385
1404
  // Where a message typed while this run works arrives. It is registered
1386
1405
  // before the first model call and closed after the last, so the window in
1387
1406
  // which the owner can get a word in is exactly the window in which the
@@ -1397,8 +1416,12 @@ export class TelegramSurface {
1397
1416
  text: prompt,
1398
1417
  interjections,
1399
1418
  ...(carried?.attachments.length ? { attachments: carried.attachments } : {}),
1419
+ ...(spoken ? { spoken: true } : {}),
1420
+ ...(spokenLanguage ? { spokenLanguage } : {}),
1400
1421
  onToolCall: (name) => progress.noteToolCall(name),
1401
- onTextDelta: (delta) => stream.push(delta),
1422
+ // A spoken answer is not streamed: it arrives as a voice note with
1423
+ // its text underneath, and the progress line holds until then.
1424
+ ...(spoken ? {} : { onTextDelta: (delta) => stream.push(delta) }),
1402
1425
  });
1403
1426
  const reply = replyText(produced);
1404
1427
  askedOwner = turnAskedOwner(typeof produced === 'string' ? undefined : produced.askedOwner, reply);
@@ -1416,7 +1439,7 @@ export class TelegramSurface {
1416
1439
  ...(typeof produced !== 'string' && produced.question ? { question: produced.question } : {}),
1417
1440
  ...extrasOf(produced),
1418
1441
  };
1419
- }, label, carried ? readingText(label) : undefined, { agentId: agent.id, conversationId, prompt });
1442
+ }, label, carried ? readingText(label) : undefined, { agentId: agent.id, conversationId, prompt }, spoken);
1420
1443
  }
1421
1444
  finally {
1422
1445
  /*
@@ -1552,10 +1575,11 @@ export class TelegramSurface {
1552
1575
  mime: row.mime,
1553
1576
  sizeBytes: row.sizeBytes,
1554
1577
  });
1555
- // Voice notes are kept, not heard: no run is started over bytes no model
1556
- // in this build can read, with or without a caption.
1578
+ // A voice note is heard by the speech plugin and run as the owner's
1579
+ // words. Without the plugin, or with listening not set
1580
+ // up, it is kept and the reply says where to fix that.
1557
1581
  if (row.kind === 'audio') {
1558
- await api.sendMessage(chatId, gotAudioText(filename, row.sizeBytes));
1582
+ await this.#heard(chatId, row, filename, incoming.caption);
1559
1583
  return;
1560
1584
  }
1561
1585
  const caption = incoming.caption;
@@ -1955,7 +1979,9 @@ export class TelegramSurface {
1955
1979
  * single message behind it — a `/recap` is the mission's, not the owner's,
1956
1980
  * and "try again" there would re-run something they never typed.
1957
1981
  */
1958
- retry) {
1982
+ retry,
1983
+ /** Send the answer as a voice note, with its text as the caption. */
1984
+ speak = false) {
1959
1985
  const stopTyping = this.#startTyping(chatId);
1960
1986
  const placeholder = placeholderOverride ?? placeholderText(agentName);
1961
1987
  // An explicit bubble, posted before the provider is called: the owner sees
@@ -1988,9 +2014,16 @@ export class TelegramSurface {
1988
2014
  const drawn = typeof produced === 'string' ? { text: produced, controls: [] } : produced;
1989
2015
  const reply = toPlainText(drawn.text);
1990
2016
  await progress.settle();
1991
- await stream.finish(reply, drawn.question && drawn.question.options.length > 0
2017
+ const keyboard = drawn.question && drawn.question.options.length > 0
1992
2018
  ? questionKeyboard(drawn.question)
1993
- : drawn.controls.length === 0 ? undefined : offersKeyboard(drawn.controls));
2019
+ : drawn.controls.length === 0 ? undefined : offersKeyboard(drawn.controls);
2020
+ // Buttons need a text message to sit under: an answer that carries any
2021
+ // stays text, as cards and questions do.
2022
+ const voice = speak && keyboard === undefined ? await this.#speakAnswer(chatId, placeholderId, reply, progress) : { sent: false };
2023
+ if (!voice.sent)
2024
+ await stream.finish(reply, keyboard);
2025
+ if (voice.note)
2026
+ await this.#opts.api.sendMessage(chatId, voice.note).catch(() => { });
1994
2027
  // Then what else the turn made: the view it drew, the files it saved.
1995
2028
  if (drawn.artifacts || drawn.canvas) {
1996
2029
  await sendRunExtras({
@@ -2032,6 +2065,175 @@ export class TelegramSurface {
2032
2065
  stopTyping();
2033
2066
  }
2034
2067
  }
2068
+ /* ---------------------------------------------------------------- *
2069
+ * Voice
2070
+ * ---------------------------------------------------------------- */
2071
+ /**
2072
+ * `/voice` alone shows the chat's choice; `/voice spoken|always|off` sets
2073
+ * when, `/voice voice|both|text` what. Written to the chat's row and to the
2074
+ * speech plugin's copy, so Settings → Speech shows the same.
2075
+ */
2076
+ async handleVoice(chatId, arg) {
2077
+ const api = this.#opts.api;
2078
+ const current = await this.#chatVoice(chatId);
2079
+ if (arg.trim() === '') {
2080
+ await api.sendMessage(chatId, voiceStatusText(current));
2081
+ return;
2082
+ }
2083
+ const next = applyVoiceArg(current, arg);
2084
+ if (!next) {
2085
+ await api.sendMessage(chatId, VOICE_USAGE_TEXT);
2086
+ return;
2087
+ }
2088
+ await setChatVoice(this.#opts.pool, SURFACE, chatId, next);
2089
+ await this.#opts.speech?.saveVoicePrefs?.(next).catch(() => false);
2090
+ await api.sendMessage(chatId, voiceSetText(next));
2091
+ }
2092
+ /** The chat's two choices: the speech plugin's copy where it has one, else the chat's row. */
2093
+ async #chatVoice(chatId) {
2094
+ const row = await getChatVoice(this.#opts.pool, SURFACE, chatId);
2095
+ const prefs = (await this.#opts.speech?.voicePrefs?.().catch(() => ({}))) ?? {};
2096
+ return { when: prefs.when ?? row.when, form: prefs.form ?? row.form };
2097
+ }
2098
+ /** Will this chat's next answer be read aloud? */
2099
+ async #willSpeak(chatId) {
2100
+ const speech = this.#opts.speech;
2101
+ if (!speech || !this.#opts.artifacts || !speech.canSpeak())
2102
+ return false;
2103
+ try {
2104
+ return answerSpoken((await this.#chatVoice(chatId)).when, this.#ownerSpoke.has(chatId));
2105
+ }
2106
+ catch (err) {
2107
+ this.#log(`telegram: chat ${chatId} — the voice setting could not be read: ${message(err)}`);
2108
+ return false;
2109
+ }
2110
+ }
2111
+ /**
2112
+ * A voice note, saved: transcribe it and run it as the owner's words (a
2113
+ * caption follows the transcript). Nothing is echoed back: the transcript is
2114
+ * the owner's message in the conversation, where the dashboard shows it.
2115
+ * Refused or failed: one sentence, and the file stays saved.
2116
+ */
2117
+ async #heard(chatId, row, filename, caption) {
2118
+ const api = this.#opts.api;
2119
+ const speech = this.#opts.speech;
2120
+ if (!speech) {
2121
+ await api.sendMessage(chatId, `${gotAudioText(filename, row.sizeBytes)} ${INSTALL_SPEECH_TEXT}`);
2122
+ return;
2123
+ }
2124
+ const stopTyping = this.#startTyping(chatId);
2125
+ let heard;
2126
+ try {
2127
+ heard = await speech.transcribe(row.id);
2128
+ }
2129
+ catch (err) {
2130
+ heard = { ok: false, reason: 'failed', message: message(err) };
2131
+ }
2132
+ finally {
2133
+ stopTyping();
2134
+ }
2135
+ if (!heard.ok) {
2136
+ if (heard.reason === 'failed')
2137
+ this.#log(`telegram: chat ${chatId} — transcription failed: ${heard.message}`);
2138
+ const text = heard.reason === 'missing'
2139
+ ? `${gotAudioText(filename, row.sizeBytes)} ${INSTALL_SPEECH_TEXT}`
2140
+ : heard.reason === 'unconfigured'
2141
+ ? `${gotAudioText(filename, row.sizeBytes)} ${SET_UP_LISTENING_TEXT}`
2142
+ : notHeardText(heard.message);
2143
+ await api.sendMessage(chatId, text);
2144
+ return;
2145
+ }
2146
+ if (heard.text === '') {
2147
+ await api.sendMessage(chatId, NO_WORDS_TEXT);
2148
+ return;
2149
+ }
2150
+ this.#ownerSpoke.add(chatId);
2151
+ const language = languageName(heard.language);
2152
+ if (language)
2153
+ this.#ownerLanguage.set(chatId, language);
2154
+ try {
2155
+ await this.handleText(chatId, '', voiceTurnText(heard.text, caption));
2156
+ }
2157
+ finally {
2158
+ this.#ownerSpoke.delete(chatId);
2159
+ this.#ownerLanguage.delete(chatId);
2160
+ }
2161
+ }
2162
+ /**
2163
+ * The answer as a voice note, in place of the placeholder: alone (`/voice
2164
+ * voice`), or with its text as the caption, or right after it past
2165
+ * Telegram's 1,024 characters (`/voice both`). Not
2166
+ * sent: the caller lands the text as usual, and `note` is the once-a-day
2167
+ * line saying why, when there is one to say.
2168
+ */
2169
+ async #speakAnswer(chatId, placeholderId, reply, progress) {
2170
+ const api = this.#opts.api;
2171
+ const speech = this.#opts.speech;
2172
+ const store = this.#opts.artifacts;
2173
+ // A long answer is not read aloud, and nothing is said about it.
2174
+ if (!speech || !store || reply.trim() === '' || reply.length > MAX_SPOKEN_CHARS)
2175
+ return { sent: false };
2176
+ const fallback = async (reason, detail) => {
2177
+ this.#log(`telegram: chat ${chatId} — the answer went as text (${reason}): ${detail}`);
2178
+ const note = await this.#textInsteadNote(chatId, reason);
2179
+ return note ? { sent: false, note } : { sent: false };
2180
+ };
2181
+ api.sendChatAction(chatId, 'record_voice').catch(() => { });
2182
+ const form = (await this.#chatVoice(chatId).catch(() => undefined))?.form ?? 'voice';
2183
+ let said;
2184
+ try {
2185
+ said = await speech.say(reply, this.#handleNames());
2186
+ }
2187
+ catch (err) {
2188
+ said = { ok: false, reason: 'failed', message: message(err) };
2189
+ }
2190
+ if (!said.ok)
2191
+ return fallback(said.reason, said.message);
2192
+ const loaded = await store.load(said.artifactId).catch(() => null);
2193
+ if (!loaded)
2194
+ return fallback('failed', `the voice ${said.artifactId} could not be read back`);
2195
+ const withText = form === 'both';
2196
+ const long = reply.length > MAX_VOICE_CAPTION_CHARS;
2197
+ progress.silence();
2198
+ try {
2199
+ await api.sendVoice(chatId, Buffer.from(loaded.data, 'base64'), {
2200
+ contentType: loaded.mime,
2201
+ filename: loaded.mime === 'audio/mpeg' ? 'voice.mp3' : 'voice.ogg',
2202
+ ...(withText && !long ? { caption: reply } : {}),
2203
+ });
2204
+ }
2205
+ catch (err) {
2206
+ return fallback('failed', message(err));
2207
+ }
2208
+ if (withText && long)
2209
+ await api.sendMessage(chatId, reply);
2210
+ if (placeholderId !== undefined)
2211
+ await api.deleteMessage(chatId, placeholderId).catch(() => { });
2212
+ return { sent: true };
2213
+ }
2214
+ /** Every agent's handle and name, so a spoken `@ledger` is read as its name. */
2215
+ #handleNames() {
2216
+ const names = {};
2217
+ try {
2218
+ for (const agent of this.#opts.catalog.list())
2219
+ if (agent.handle && agent.name)
2220
+ names[agent.handle] = agent.name;
2221
+ }
2222
+ catch {
2223
+ // No names: handles are read as bare words.
2224
+ }
2225
+ return names;
2226
+ }
2227
+ /** Today's "why this came as text" line for this chat, or nothing when it was said today. */
2228
+ async #textInsteadNote(chatId, reason) {
2229
+ try {
2230
+ const claimed = await claimTextInsteadNote(this.#opts.pool, SURFACE, chatId, new Date(this.#now()), this.#opts.timezone ?? DEFAULT_TIMEZONE);
2231
+ return claimed ? textInsteadText(reason) : undefined;
2232
+ }
2233
+ catch {
2234
+ return undefined;
2235
+ }
2236
+ }
2035
2237
  /**
2036
2238
  * One turn's reply, with whatever it offered already drawn into the shape
2037
2239
  * this surface sends: the text, and the controls if there are any.