@withbuddi/buddi 0.1.0-pre.24 → 0.1.0-pre.26

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 (716) hide show
  1. package/README.md +62 -47
  2. package/examples/agents/agent-father/agent.md +1 -0
  3. package/extension/background.js +24 -1
  4. package/extension/blob.png +0 -0
  5. package/extension/fonts/dm-mono-latin-400-normal.woff2 +0 -0
  6. package/extension/fonts/dm-mono-latin-500-normal.woff2 +0 -0
  7. package/extension/fonts/dm-sans-latin-ext-standard-normal.woff2 +0 -0
  8. package/extension/fonts/dm-sans-latin-standard-normal.woff2 +0 -0
  9. package/extension/icons/128.png +0 -0
  10. package/extension/icons/16.png +0 -0
  11. package/extension/icons/32.png +0 -0
  12. package/extension/icons/48.png +0 -0
  13. package/extension/manifest.json +4 -3
  14. package/extension/popup.css +199 -81
  15. package/extension/popup.html +39 -17
  16. package/extension/popup.js +133 -37
  17. package/node_modules/@buddi/cli/dist/.tsbuildinfo +1 -1
  18. package/node_modules/@buddi/cli/dist/args.d.ts +59 -0
  19. package/node_modules/@buddi/cli/dist/args.d.ts.map +1 -1
  20. package/node_modules/@buddi/cli/dist/args.js +141 -0
  21. package/node_modules/@buddi/cli/dist/args.js.map +1 -1
  22. package/node_modules/@buddi/cli/dist/commands.d.ts +2 -0
  23. package/node_modules/@buddi/cli/dist/commands.d.ts.map +1 -1
  24. package/node_modules/@buddi/cli/dist/commands.js +71 -1
  25. package/node_modules/@buddi/cli/dist/commands.js.map +1 -1
  26. package/node_modules/@buddi/cli/dist/connections-cmd.d.ts +93 -0
  27. package/node_modules/@buddi/cli/dist/connections-cmd.d.ts.map +1 -0
  28. package/node_modules/@buddi/cli/dist/connections-cmd.js +657 -0
  29. package/node_modules/@buddi/cli/dist/connections-cmd.js.map +1 -0
  30. package/node_modules/@buddi/cli/dist/doctor-probes.d.ts.map +1 -1
  31. package/node_modules/@buddi/cli/dist/doctor-probes.js +82 -17
  32. package/node_modules/@buddi/cli/dist/doctor-probes.js.map +1 -1
  33. package/node_modules/@buddi/cli/dist/doctor.d.ts +9 -9
  34. package/node_modules/@buddi/cli/dist/doctor.d.ts.map +1 -1
  35. package/node_modules/@buddi/cli/dist/doctor.js +20 -17
  36. package/node_modules/@buddi/cli/dist/doctor.js.map +1 -1
  37. package/node_modules/@buddi/cli/dist/init-plan.d.ts +1 -2
  38. package/node_modules/@buddi/cli/dist/init-plan.d.ts.map +1 -1
  39. package/node_modules/@buddi/cli/dist/init-plan.js +2 -6
  40. package/node_modules/@buddi/cli/dist/init-plan.js.map +1 -1
  41. package/node_modules/@buddi/cli/dist/init.d.ts.map +1 -1
  42. package/node_modules/@buddi/cli/dist/init.js +5 -29
  43. package/node_modules/@buddi/cli/dist/init.js.map +1 -1
  44. package/node_modules/@buddi/cli/dist/main.d.ts.map +1 -1
  45. package/node_modules/@buddi/cli/dist/main.js +10 -1
  46. package/node_modules/@buddi/cli/dist/main.js.map +1 -1
  47. package/node_modules/@buddi/cli/dist/mcp/gateway-client.d.ts +5 -0
  48. package/node_modules/@buddi/cli/dist/mcp/gateway-client.d.ts.map +1 -1
  49. package/node_modules/@buddi/cli/dist/mcp/gateway-client.js +15 -4
  50. package/node_modules/@buddi/cli/dist/mcp/gateway-client.js.map +1 -1
  51. package/node_modules/@buddi/cli/dist/service/index.d.ts +4 -2
  52. package/node_modules/@buddi/cli/dist/service/index.d.ts.map +1 -1
  53. package/node_modules/@buddi/cli/dist/service/index.js +5 -7
  54. package/node_modules/@buddi/cli/dist/service/index.js.map +1 -1
  55. package/node_modules/@buddi/core/dist/.tsbuildinfo +1 -1
  56. package/node_modules/@buddi/core/dist/agents/catalog.d.ts.map +1 -1
  57. package/node_modules/@buddi/core/dist/agents/catalog.js +11 -2
  58. package/node_modules/@buddi/core/dist/agents/catalog.js.map +1 -1
  59. package/node_modules/@buddi/core/dist/agents/provider-from-env.d.ts +7 -6
  60. package/node_modules/@buddi/core/dist/agents/provider-from-env.d.ts.map +1 -1
  61. package/node_modules/@buddi/core/dist/agents/provider-from-env.js +9 -12
  62. package/node_modules/@buddi/core/dist/agents/provider-from-env.js.map +1 -1
  63. package/node_modules/@buddi/core/dist/agents/skills.d.ts +4 -4
  64. package/node_modules/@buddi/core/dist/backup/load.d.ts.map +1 -1
  65. package/node_modules/@buddi/core/dist/backup/load.js +37 -0
  66. package/node_modules/@buddi/core/dist/backup/load.js.map +1 -1
  67. package/node_modules/@buddi/core/dist/backup/restore.js +2 -2
  68. package/node_modules/@buddi/core/dist/backup/restore.js.map +1 -1
  69. package/node_modules/@buddi/core/dist/connection-config.d.ts +96 -0
  70. package/node_modules/@buddi/core/dist/connection-config.d.ts.map +1 -0
  71. package/node_modules/@buddi/core/dist/connection-config.js +308 -0
  72. package/node_modules/@buddi/core/dist/connection-config.js.map +1 -0
  73. package/node_modules/@buddi/core/dist/failures/owner-message.d.ts.map +1 -1
  74. package/node_modules/@buddi/core/dist/failures/owner-message.js +37 -10
  75. package/node_modules/@buddi/core/dist/failures/owner-message.js.map +1 -1
  76. package/node_modules/@buddi/core/dist/notifications/agent.d.ts +54 -0
  77. package/node_modules/@buddi/core/dist/notifications/agent.d.ts.map +1 -0
  78. package/node_modules/@buddi/core/dist/notifications/agent.js +134 -0
  79. package/node_modules/@buddi/core/dist/notifications/agent.js.map +1 -0
  80. package/node_modules/@buddi/core/dist/notifications/index.d.ts +1 -0
  81. package/node_modules/@buddi/core/dist/notifications/index.d.ts.map +1 -1
  82. package/node_modules/@buddi/core/dist/notifications/index.js +1 -0
  83. package/node_modules/@buddi/core/dist/notifications/index.js.map +1 -1
  84. package/node_modules/@buddi/core/dist/notifications/notify.d.ts +4 -0
  85. package/node_modules/@buddi/core/dist/notifications/notify.d.ts.map +1 -1
  86. package/node_modules/@buddi/core/dist/notifications/notify.js +19 -7
  87. package/node_modules/@buddi/core/dist/notifications/notify.js.map +1 -1
  88. package/node_modules/@buddi/core/dist/notifications/store.d.ts +8 -1
  89. package/node_modules/@buddi/core/dist/notifications/store.d.ts.map +1 -1
  90. package/node_modules/@buddi/core/dist/notifications/store.js +55 -6
  91. package/node_modules/@buddi/core/dist/notifications/store.js.map +1 -1
  92. package/node_modules/@buddi/core/dist/notifications/types.d.ts +26 -2
  93. package/node_modules/@buddi/core/dist/notifications/types.d.ts.map +1 -1
  94. package/node_modules/@buddi/core/dist/notifications/types.js +1 -1
  95. package/node_modules/@buddi/core/dist/notifications/types.js.map +1 -1
  96. package/node_modules/@buddi/core/dist/onboarding/store.d.ts.map +1 -1
  97. package/node_modules/@buddi/core/dist/onboarding/store.js +17 -1
  98. package/node_modules/@buddi/core/dist/onboarding/store.js.map +1 -1
  99. package/node_modules/@buddi/core/dist/onboarding/types.d.ts +14 -0
  100. package/node_modules/@buddi/core/dist/onboarding/types.d.ts.map +1 -1
  101. package/node_modules/@buddi/core/dist/provider-accounts.d.ts +21 -1
  102. package/node_modules/@buddi/core/dist/provider-accounts.d.ts.map +1 -1
  103. package/node_modules/@buddi/core/dist/provider-accounts.js +31 -1
  104. package/node_modules/@buddi/core/dist/provider-accounts.js.map +1 -1
  105. package/node_modules/@buddi/core/dist/provider.d.ts +4 -3
  106. package/node_modules/@buddi/core/dist/provider.d.ts.map +1 -1
  107. package/node_modules/@buddi/core/dist/provider.js +7 -4
  108. package/node_modules/@buddi/core/dist/provider.js.map +1 -1
  109. package/node_modules/@buddi/core/dist/testing/accounts.d.ts +12 -0
  110. package/node_modules/@buddi/core/dist/testing/accounts.d.ts.map +1 -0
  111. package/node_modules/@buddi/core/dist/testing/accounts.js +7 -0
  112. package/node_modules/@buddi/core/dist/testing/accounts.js.map +1 -0
  113. package/node_modules/@buddi/core/dist/testing/index.d.ts +1 -0
  114. package/node_modules/@buddi/core/dist/testing/index.d.ts.map +1 -1
  115. package/node_modules/@buddi/core/dist/testing/index.js +1 -0
  116. package/node_modules/@buddi/core/dist/testing/index.js.map +1 -1
  117. package/node_modules/@buddi/core/dist/vault/resolve.d.ts.map +1 -1
  118. package/node_modules/@buddi/core/dist/vault/resolve.js +0 -3
  119. package/node_modules/@buddi/core/dist/vault/resolve.js.map +1 -1
  120. package/node_modules/@buddi/core/migrations/053_drop_legacy_anthropic_env.sql +31 -0
  121. package/node_modules/@buddi/core/migrations/054_agent_messages.sql +15 -0
  122. package/node_modules/@buddi/core/package.json +4 -0
  123. package/node_modules/@buddi/gateway/dist/.tsbuildinfo +1 -1
  124. package/node_modules/@buddi/gateway/dist/agents/owner-tools.d.ts +34 -1
  125. package/node_modules/@buddi/gateway/dist/agents/owner-tools.d.ts.map +1 -1
  126. package/node_modules/@buddi/gateway/dist/agents/owner-tools.js +87 -4
  127. package/node_modules/@buddi/gateway/dist/agents/owner-tools.js.map +1 -1
  128. package/node_modules/@buddi/gateway/dist/agents-cli.js +1 -1
  129. package/node_modules/@buddi/gateway/dist/agents-cli.js.map +1 -1
  130. package/node_modules/@buddi/gateway/dist/bootstrap.d.ts +1 -3
  131. package/node_modules/@buddi/gateway/dist/bootstrap.d.ts.map +1 -1
  132. package/node_modules/@buddi/gateway/dist/bootstrap.js +16 -11
  133. package/node_modules/@buddi/gateway/dist/bootstrap.js.map +1 -1
  134. package/node_modules/@buddi/gateway/dist/cli.js +1 -1
  135. package/node_modules/@buddi/gateway/dist/mlxh.d.ts +44 -0
  136. package/node_modules/@buddi/gateway/dist/mlxh.d.ts.map +1 -0
  137. package/node_modules/@buddi/gateway/dist/mlxh.js +98 -0
  138. package/node_modules/@buddi/gateway/dist/mlxh.js.map +1 -0
  139. package/node_modules/@buddi/gateway/dist/owner-secrets.d.ts +98 -9
  140. package/node_modules/@buddi/gateway/dist/owner-secrets.d.ts.map +1 -1
  141. package/node_modules/@buddi/gateway/dist/owner-secrets.js +237 -15
  142. package/node_modules/@buddi/gateway/dist/owner-secrets.js.map +1 -1
  143. package/node_modules/@buddi/gateway/dist/plugins/stage.d.ts +4 -0
  144. package/node_modules/@buddi/gateway/dist/plugins/stage.d.ts.map +1 -1
  145. package/node_modules/@buddi/gateway/dist/plugins/stage.js +3 -0
  146. package/node_modules/@buddi/gateway/dist/plugins/stage.js.map +1 -1
  147. package/node_modules/@buddi/gateway/dist/plugins/update.d.ts +8 -0
  148. package/node_modules/@buddi/gateway/dist/plugins/update.d.ts.map +1 -1
  149. package/node_modules/@buddi/gateway/dist/plugins/update.js +8 -2
  150. package/node_modules/@buddi/gateway/dist/plugins/update.js.map +1 -1
  151. package/node_modules/@buddi/gateway/dist/provider-accounts.d.ts +6 -13
  152. package/node_modules/@buddi/gateway/dist/provider-accounts.d.ts.map +1 -1
  153. package/node_modules/@buddi/gateway/dist/provider-accounts.js +76 -16
  154. package/node_modules/@buddi/gateway/dist/provider-accounts.js.map +1 -1
  155. package/node_modules/@buddi/gateway/dist/providers.d.ts +3 -3
  156. package/node_modules/@buddi/gateway/dist/providers.d.ts.map +1 -1
  157. package/node_modules/@buddi/gateway/dist/providers.js +7 -7
  158. package/node_modules/@buddi/gateway/dist/providers.js.map +1 -1
  159. package/node_modules/@buddi/gateway/dist/serve.d.ts.map +1 -1
  160. package/node_modules/@buddi/gateway/dist/serve.js +26 -8
  161. package/node_modules/@buddi/gateway/dist/serve.js.map +1 -1
  162. package/node_modules/@buddi/gateway/dist/surfaces/context-budget.d.ts +1 -1
  163. package/node_modules/@buddi/gateway/dist/surfaces/context-budget.d.ts.map +1 -1
  164. package/node_modules/@buddi/gateway/dist/surfaces/context-budget.js +46 -3
  165. package/node_modules/@buddi/gateway/dist/surfaces/context-budget.js.map +1 -1
  166. package/node_modules/@buddi/gateway/dist/surfaces/pending-question.d.ts.map +1 -1
  167. package/node_modules/@buddi/gateway/dist/surfaces/pending-question.js +2 -1
  168. package/node_modules/@buddi/gateway/dist/surfaces/pending-question.js.map +1 -1
  169. package/node_modules/@buddi/gateway/dist/system-context.d.ts +2 -0
  170. package/node_modules/@buddi/gateway/dist/system-context.d.ts.map +1 -1
  171. package/node_modules/@buddi/gateway/dist/system-context.js +5 -1
  172. package/node_modules/@buddi/gateway/dist/system-context.js.map +1 -1
  173. package/node_modules/@buddi/gateway/dist/telegram/channel.d.ts +7 -0
  174. package/node_modules/@buddi/gateway/dist/telegram/channel.d.ts.map +1 -1
  175. package/node_modules/@buddi/gateway/dist/telegram/channel.js +14 -2
  176. package/node_modules/@buddi/gateway/dist/telegram/channel.js.map +1 -1
  177. package/node_modules/@buddi/gateway/dist/web/agents.d.ts.map +1 -1
  178. package/node_modules/@buddi/gateway/dist/web/agents.js +5 -1
  179. package/node_modules/@buddi/gateway/dist/web/agents.js.map +1 -1
  180. package/node_modules/@buddi/gateway/dist/web/connections.d.ts +18 -5
  181. package/node_modules/@buddi/gateway/dist/web/connections.d.ts.map +1 -1
  182. package/node_modules/@buddi/gateway/dist/web/connections.js +118 -8
  183. package/node_modules/@buddi/gateway/dist/web/connections.js.map +1 -1
  184. package/node_modules/@buddi/gateway/dist/web/extension.d.ts +6 -0
  185. package/node_modules/@buddi/gateway/dist/web/extension.d.ts.map +1 -1
  186. package/node_modules/@buddi/gateway/dist/web/extension.js +5 -1
  187. package/node_modules/@buddi/gateway/dist/web/extension.js.map +1 -1
  188. package/node_modules/@buddi/gateway/dist/web/market.d.ts +18 -0
  189. package/node_modules/@buddi/gateway/dist/web/market.d.ts.map +1 -1
  190. package/node_modules/@buddi/gateway/dist/web/market.js +20 -14
  191. package/node_modules/@buddi/gateway/dist/web/market.js.map +1 -1
  192. package/node_modules/@buddi/gateway/dist/web/notifications.d.ts +6 -0
  193. package/node_modules/@buddi/gateway/dist/web/notifications.d.ts.map +1 -1
  194. package/node_modules/@buddi/gateway/dist/web/notifications.js +14 -1
  195. package/node_modules/@buddi/gateway/dist/web/notifications.js.map +1 -1
  196. package/node_modules/@buddi/gateway/dist/web/onboarding.d.ts +21 -7
  197. package/node_modules/@buddi/gateway/dist/web/onboarding.d.ts.map +1 -1
  198. package/node_modules/@buddi/gateway/dist/web/onboarding.js +64 -11
  199. package/node_modules/@buddi/gateway/dist/web/onboarding.js.map +1 -1
  200. package/node_modules/@buddi/gateway/dist/web/plugins.d.ts +5 -0
  201. package/node_modules/@buddi/gateway/dist/web/plugins.d.ts.map +1 -1
  202. package/node_modules/@buddi/gateway/dist/web/plugins.js +11 -1
  203. package/node_modules/@buddi/gateway/dist/web/plugins.js.map +1 -1
  204. package/node_modules/@buddi/gateway/dist/web/recovery.d.ts +10 -0
  205. package/node_modules/@buddi/gateway/dist/web/recovery.d.ts.map +1 -1
  206. package/node_modules/@buddi/gateway/dist/web/recovery.js +114 -34
  207. package/node_modules/@buddi/gateway/dist/web/recovery.js.map +1 -1
  208. package/node_modules/@buddi/gateway/dist/web/server.d.ts.map +1 -1
  209. package/node_modules/@buddi/gateway/dist/web/server.js +84 -8
  210. package/node_modules/@buddi/gateway/dist/web/server.js.map +1 -1
  211. package/node_modules/@buddi/gateway/dist/web/sessions.d.ts +8 -0
  212. package/node_modules/@buddi/gateway/dist/web/sessions.d.ts.map +1 -1
  213. package/node_modules/@buddi/gateway/dist/web/sessions.js +24 -1
  214. package/node_modules/@buddi/gateway/dist/web/sessions.js.map +1 -1
  215. package/node_modules/@buddi/gateway/dist/web/static.d.ts +8 -0
  216. package/node_modules/@buddi/gateway/dist/web/static.d.ts.map +1 -1
  217. package/node_modules/@buddi/gateway/dist/web/static.js +21 -1
  218. package/node_modules/@buddi/gateway/dist/web/static.js.map +1 -1
  219. package/node_modules/@buddi/gateway/dist/web/take-on.d.ts +91 -0
  220. package/node_modules/@buddi/gateway/dist/web/take-on.d.ts.map +1 -0
  221. package/node_modules/@buddi/gateway/dist/web/take-on.js +287 -0
  222. package/node_modules/@buddi/gateway/dist/web/take-on.js.map +1 -0
  223. package/node_modules/@buddi/gateway/src/agents/starter/keeper/agent.md +2 -2
  224. package/node_modules/@buddi/gateway/src/agents/starter/planner/agent.md +1 -1
  225. package/node_modules/@buddi/gateway/src/agents/starter/scout/agent.md +1 -1
  226. package/node_modules/@buddi/install/dist/.tsbuildinfo +1 -1
  227. package/node_modules/@buddi/runtime/dist/.tsbuildinfo +1 -1
  228. package/node_modules/@buddi/runtime/dist/anthropic.d.ts +7 -0
  229. package/node_modules/@buddi/runtime/dist/anthropic.d.ts.map +1 -1
  230. package/node_modules/@buddi/runtime/dist/anthropic.js +29 -3
  231. package/node_modules/@buddi/runtime/dist/anthropic.js.map +1 -1
  232. package/node_modules/@buddi/runtime/dist/delegate.js +1 -1
  233. package/node_modules/@buddi/runtime/dist/delegate.js.map +1 -1
  234. package/node_modules/@buddi/runtime/dist/provider-models.d.ts +2 -0
  235. package/node_modules/@buddi/runtime/dist/provider-models.d.ts.map +1 -1
  236. package/node_modules/@buddi/runtime/dist/provider-models.js +22 -0
  237. package/node_modules/@buddi/runtime/dist/provider-models.js.map +1 -1
  238. package/node_modules/@buddi/runtime/dist/search.js +2 -2
  239. package/node_modules/@buddi/tool-artifacts/dist/.tsbuildinfo +1 -1
  240. package/node_modules/@buddi/tool-browser/dist/.tsbuildinfo +1 -1
  241. package/node_modules/@buddi/tool-email/dist/.tsbuildinfo +1 -1
  242. package/node_modules/@buddi/tool-email/dist/config.d.ts +13 -9
  243. package/node_modules/@buddi/tool-email/dist/config.d.ts.map +1 -1
  244. package/node_modules/@buddi/tool-email/dist/config.js +33 -40
  245. package/node_modules/@buddi/tool-email/dist/config.js.map +1 -1
  246. package/node_modules/@buddi/tool-email/dist/index.d.ts +1 -1
  247. package/node_modules/@buddi/tool-email/dist/index.d.ts.map +1 -1
  248. package/node_modules/@buddi/tool-email/dist/index.js +1 -1
  249. package/node_modules/@buddi/tool-email/dist/index.js.map +1 -1
  250. package/node_modules/@buddi/tool-email/dist/pages/accounts.d.ts +1 -2
  251. package/node_modules/@buddi/tool-email/dist/pages/accounts.d.ts.map +1 -1
  252. package/node_modules/@buddi/tool-email/dist/pages/accounts.js +42 -18
  253. package/node_modules/@buddi/tool-email/dist/pages/accounts.js.map +1 -1
  254. package/node_modules/@buddi/tool-email/dist/pages/queries.d.ts.map +1 -1
  255. package/node_modules/@buddi/tool-email/dist/pages/queries.js +7 -5
  256. package/node_modules/@buddi/tool-email/dist/pages/queries.js.map +1 -1
  257. package/node_modules/@buddi/tool-email/dist/ports.d.ts +5 -1
  258. package/node_modules/@buddi/tool-email/dist/ports.d.ts.map +1 -1
  259. package/node_modules/@buddi/tool-email/dist/tools/shared.js +1 -1
  260. package/node_modules/@buddi/tool-email/dist/tools/shared.js.map +1 -1
  261. package/node_modules/@buddi/tool-host/dist/.tsbuildinfo +1 -1
  262. package/node_modules/@buddi/tool-mcp/dist/.tsbuildinfo +1 -1
  263. package/node_modules/@buddi/tool-mcp/dist/catalog.d.ts +32 -2
  264. package/node_modules/@buddi/tool-mcp/dist/catalog.d.ts.map +1 -1
  265. package/node_modules/@buddi/tool-mcp/dist/catalog.js +41 -7
  266. package/node_modules/@buddi/tool-mcp/dist/catalog.js.map +1 -1
  267. package/node_modules/@buddi/tool-mcp/dist/device.d.ts +53 -0
  268. package/node_modules/@buddi/tool-mcp/dist/device.d.ts.map +1 -0
  269. package/node_modules/@buddi/tool-mcp/dist/device.js +100 -0
  270. package/node_modules/@buddi/tool-mcp/dist/device.js.map +1 -0
  271. package/node_modules/@buddi/tool-mcp/dist/fetch.d.ts +10 -1
  272. package/node_modules/@buddi/tool-mcp/dist/fetch.d.ts.map +1 -1
  273. package/node_modules/@buddi/tool-mcp/dist/fetch.js +7 -1
  274. package/node_modules/@buddi/tool-mcp/dist/fetch.js.map +1 -1
  275. package/node_modules/@buddi/tool-mcp/dist/index.d.ts +5 -3
  276. package/node_modules/@buddi/tool-mcp/dist/index.d.ts.map +1 -1
  277. package/node_modules/@buddi/tool-mcp/dist/index.js +7 -4
  278. package/node_modules/@buddi/tool-mcp/dist/index.js.map +1 -1
  279. package/node_modules/@buddi/tool-mcp/dist/ports.d.ts +31 -0
  280. package/node_modules/@buddi/tool-mcp/dist/ports.d.ts.map +1 -1
  281. package/node_modules/@buddi/tool-mcp/dist/preview.d.ts +16 -0
  282. package/node_modules/@buddi/tool-mcp/dist/preview.d.ts.map +1 -0
  283. package/node_modules/@buddi/tool-mcp/dist/preview.js +52 -0
  284. package/node_modules/@buddi/tool-mcp/dist/preview.js.map +1 -0
  285. package/node_modules/@buddi/tool-mcp/dist/program.d.ts +73 -0
  286. package/node_modules/@buddi/tool-mcp/dist/program.d.ts.map +1 -0
  287. package/node_modules/@buddi/tool-mcp/dist/program.js +306 -0
  288. package/node_modules/@buddi/tool-mcp/dist/program.js.map +1 -0
  289. package/node_modules/@buddi/tool-mcp/dist/service.d.ts +131 -22
  290. package/node_modules/@buddi/tool-mcp/dist/service.d.ts.map +1 -1
  291. package/node_modules/@buddi/tool-mcp/dist/service.js +717 -29
  292. package/node_modules/@buddi/tool-mcp/dist/service.js.map +1 -1
  293. package/node_modules/@buddi/tool-mcp/dist/session.d.ts +13 -1
  294. package/node_modules/@buddi/tool-mcp/dist/session.d.ts.map +1 -1
  295. package/node_modules/@buddi/tool-mcp/dist/session.js +27 -4
  296. package/node_modules/@buddi/tool-mcp/dist/session.js.map +1 -1
  297. package/node_modules/@buddi/tool-mcp/dist/store.d.ts +39 -1
  298. package/node_modules/@buddi/tool-mcp/dist/store.d.ts.map +1 -1
  299. package/node_modules/@buddi/tool-mcp/dist/store.js +24 -0
  300. package/node_modules/@buddi/tool-mcp/dist/store.js.map +1 -1
  301. package/node_modules/@buddi/tool-mcp/dist/testing/fake.d.ts +6 -0
  302. package/node_modules/@buddi/tool-mcp/dist/testing/fake.d.ts.map +1 -1
  303. package/node_modules/@buddi/tool-mcp/dist/testing/fake.js +26 -0
  304. package/node_modules/@buddi/tool-mcp/dist/testing/fake.js.map +1 -1
  305. package/node_modules/@buddi/tool-mcp/migrations/003_token_auth.sql +14 -0
  306. package/node_modules/@buddi/tool-mcp/migrations/004_programs.sql +26 -0
  307. package/node_modules/@buddi/tool-memory/dist/.tsbuildinfo +1 -1
  308. package/node_modules/@buddi/tool-web/dist/.tsbuildinfo +1 -1
  309. package/node_modules/@buddi/tool-web/dist/providers/index.d.ts +1 -2
  310. package/node_modules/@buddi/tool-web/dist/providers/index.d.ts.map +1 -1
  311. package/node_modules/@buddi/tool-web/dist/providers/index.js +1 -2
  312. package/node_modules/@buddi/tool-web/dist/providers/index.js.map +1 -1
  313. package/node_modules/hono/dist/cjs/jsx/utils.js +1 -1
  314. package/node_modules/hono/dist/cjs/middleware/combine/index.js +3 -1
  315. package/node_modules/hono/dist/cjs/middleware/etag/index.js +2 -2
  316. package/node_modules/hono/dist/jsx/utils.js +1 -1
  317. package/node_modules/hono/dist/middleware/combine/index.js +3 -1
  318. package/node_modules/hono/dist/middleware/etag/index.js +2 -2
  319. package/node_modules/hono/dist/middleware/language/language.js +1 -1
  320. package/node_modules/hono/dist/types/adapter/aws-lambda/handler.d.ts +2 -1
  321. package/node_modules/hono/dist/types/adapter/aws-lambda/types.d.ts +2 -1
  322. package/node_modules/hono/dist/types/adapter/bun/websocket.d.ts +2 -1
  323. package/node_modules/hono/dist/types/adapter/cloudflare-pages/handler.d.ts +2 -1
  324. package/node_modules/hono/dist/types/adapter/cloudflare-workers/serve-static-module.d.ts +2 -1
  325. package/node_modules/hono/dist/types/adapter/lambda-edge/handler.d.ts +2 -1
  326. package/node_modules/hono/dist/types/adapter/service-worker/handler.d.ts +2 -1
  327. package/node_modules/hono/dist/types/adapter/service-worker/index.d.ts +2 -1
  328. package/node_modules/hono/dist/types/adapter/service-worker/types.d.ts +2 -1
  329. package/node_modules/hono/dist/types/client/types.d.ts +2 -1
  330. package/node_modules/hono/dist/types/context.d.ts +2 -1
  331. package/node_modules/hono/dist/types/helper/cookie/index.d.ts +2 -1
  332. package/node_modules/hono/dist/types/helper/css/common.d.ts +2 -1
  333. package/node_modules/hono/dist/types/helper/css/index.d.ts +2 -1
  334. package/node_modules/hono/dist/types/helper/dev/index.d.ts +2 -1
  335. package/node_modules/hono/dist/types/helper/factory/index.d.ts +2 -1
  336. package/node_modules/hono/dist/types/helper/proxy/index.d.ts +2 -1
  337. package/node_modules/hono/dist/types/helper/ssg/middleware.d.ts +2 -1
  338. package/node_modules/hono/dist/types/helper/ssg/utils.d.ts +2 -1
  339. package/node_modules/hono/dist/types/helper/testing/index.d.ts +2 -1
  340. package/node_modules/hono/dist/types/hono-base.d.ts +2 -1
  341. package/node_modules/hono/dist/types/http-exception.d.ts +2 -1
  342. package/node_modules/hono/dist/types/jsx/base.d.ts +4 -3
  343. package/node_modules/hono/dist/types/jsx/context.d.ts +2 -1
  344. package/node_modules/hono/dist/types/jsx/dom/client.d.ts +2 -1
  345. package/node_modules/hono/dist/types/jsx/dom/css.d.ts +2 -1
  346. package/node_modules/hono/dist/types/jsx/dom/hooks/index.d.ts +2 -1
  347. package/node_modules/hono/dist/types/jsx/dom/index.d.ts +2 -1
  348. package/node_modules/hono/dist/types/jsx/dom/render.d.ts +2 -1
  349. package/node_modules/hono/dist/types/jsx/dom/server.d.ts +2 -1
  350. package/node_modules/hono/dist/types/jsx/hooks/index.d.ts +2 -1
  351. package/node_modules/hono/dist/types/jsx/index.d.ts +2 -1
  352. package/node_modules/hono/dist/types/jsx/types.d.ts +2 -1
  353. package/node_modules/hono/dist/types/middleware/basic-auth/index.d.ts +2 -1
  354. package/node_modules/hono/dist/types/middleware/bearer-auth/index.d.ts +2 -1
  355. package/node_modules/hono/dist/types/middleware/body-limit/index.d.ts +2 -1
  356. package/node_modules/hono/dist/types/middleware/combine/index.d.ts +2 -1
  357. package/node_modules/hono/dist/types/middleware/compress/index.d.ts +2 -1
  358. package/node_modules/hono/dist/types/middleware/cors/index.d.ts +2 -1
  359. package/node_modules/hono/dist/types/middleware/csrf/index.d.ts +2 -1
  360. package/node_modules/hono/dist/types/middleware/etag/index.d.ts +2 -1
  361. package/node_modules/hono/dist/types/middleware/ip-restriction/index.d.ts +2 -1
  362. package/node_modules/hono/dist/types/middleware/jsx-renderer/index.d.ts +2 -1
  363. package/node_modules/hono/dist/types/middleware/jwt/index.d.ts +2 -1
  364. package/node_modules/hono/dist/types/middleware/language/index.d.ts +2 -1
  365. package/node_modules/hono/dist/types/middleware/logger/index.d.ts +2 -1
  366. package/node_modules/hono/dist/types/middleware/method-not-allowed/index.d.ts +2 -1
  367. package/node_modules/hono/dist/types/middleware/method-override/index.d.ts +2 -1
  368. package/node_modules/hono/dist/types/middleware/powered-by/index.d.ts +2 -1
  369. package/node_modules/hono/dist/types/middleware/pretty-json/index.d.ts +2 -1
  370. package/node_modules/hono/dist/types/middleware/request-id/index.d.ts +2 -1
  371. package/node_modules/hono/dist/types/middleware/secure-headers/index.d.ts +2 -1
  372. package/node_modules/hono/dist/types/middleware/secure-headers/permissions-policy.d.ts +2 -1
  373. package/node_modules/hono/dist/types/middleware/secure-headers/secure-headers.d.ts +2 -1
  374. package/node_modules/hono/dist/types/middleware/timing/index.d.ts +2 -1
  375. package/node_modules/hono/dist/types/middleware/timing/timing.d.ts +2 -1
  376. package/node_modules/hono/dist/types/middleware/trailing-slash/index.d.ts +2 -1
  377. package/node_modules/hono/dist/types/request.d.ts +2 -1
  378. package/node_modules/hono/dist/types/router/reg-exp-router/prepared-router.d.ts +2 -1
  379. package/node_modules/hono/dist/types/types.d.ts +2 -1
  380. package/node_modules/hono/dist/types/utils/body.d.ts +2 -1
  381. package/node_modules/hono/dist/types/utils/buffer.d.ts +2 -1
  382. package/node_modules/hono/dist/types/utils/cookie.d.ts +2 -1
  383. package/node_modules/hono/dist/types/utils/crypto.d.ts +2 -1
  384. package/node_modules/hono/dist/types/utils/filepath.d.ts +2 -1
  385. package/node_modules/hono/dist/types/utils/html.d.ts +2 -1
  386. package/node_modules/hono/dist/types/utils/mime.d.ts +2 -1
  387. package/node_modules/hono/dist/types/utils/types.d.ts +2 -1
  388. package/node_modules/hono/dist/types/utils/url.d.ts +2 -1
  389. package/node_modules/hono/dist/types/validator/utils.d.ts +2 -1
  390. package/node_modules/hono/dist/types/validator/validator.d.ts +2 -1
  391. package/node_modules/hono/package.json +2 -2
  392. package/node_modules/pg/lib/client.js +18 -0
  393. package/node_modules/pg/lib/connection.js +8 -1
  394. package/node_modules/pg/lib/crypto/cert-signatures.js +1 -1
  395. package/node_modules/pg/lib/native/client.js +11 -3
  396. package/node_modules/pg/lib/native/query.js +3 -1
  397. package/node_modules/pg/lib/query.js +5 -1
  398. package/node_modules/pg/lib/utils.js +19 -1
  399. package/node_modules/pg/package.json +5 -5
  400. package/node_modules/pg-connection-string/index.js +1 -1
  401. package/node_modules/pg-connection-string/package.json +2 -3
  402. package/node_modules/pg-protocol/dist/buffer-writer.d.ts +5 -1
  403. package/node_modules/pg-protocol/dist/buffer-writer.js +10 -1
  404. package/node_modules/pg-protocol/dist/buffer-writer.js.map +1 -1
  405. package/node_modules/pg-protocol/dist/serializer.js +20 -18
  406. package/node_modules/pg-protocol/dist/serializer.js.map +1 -1
  407. package/node_modules/pg-protocol/package.json +2 -2
  408. package/node_modules/pg-protocol/src/buffer-writer.ts +12 -2
  409. package/node_modules/pg-protocol/src/serializer.ts +26 -20
  410. package/package.json +2 -2
  411. package/packages/cli/dist/.tsbuildinfo +1 -1
  412. package/packages/cli/dist/args.d.ts +59 -0
  413. package/packages/cli/dist/args.d.ts.map +1 -1
  414. package/packages/cli/dist/args.js +141 -0
  415. package/packages/cli/dist/args.js.map +1 -1
  416. package/packages/cli/dist/commands.d.ts +2 -0
  417. package/packages/cli/dist/commands.d.ts.map +1 -1
  418. package/packages/cli/dist/commands.js +71 -1
  419. package/packages/cli/dist/commands.js.map +1 -1
  420. package/packages/cli/dist/connections-cmd.d.ts +93 -0
  421. package/packages/cli/dist/connections-cmd.d.ts.map +1 -0
  422. package/packages/cli/dist/connections-cmd.js +657 -0
  423. package/packages/cli/dist/connections-cmd.js.map +1 -0
  424. package/packages/cli/dist/doctor-probes.d.ts.map +1 -1
  425. package/packages/cli/dist/doctor-probes.js +82 -17
  426. package/packages/cli/dist/doctor-probes.js.map +1 -1
  427. package/packages/cli/dist/doctor.d.ts +9 -9
  428. package/packages/cli/dist/doctor.d.ts.map +1 -1
  429. package/packages/cli/dist/doctor.js +20 -17
  430. package/packages/cli/dist/doctor.js.map +1 -1
  431. package/packages/cli/dist/init-plan.d.ts +1 -2
  432. package/packages/cli/dist/init-plan.d.ts.map +1 -1
  433. package/packages/cli/dist/init-plan.js +2 -6
  434. package/packages/cli/dist/init-plan.js.map +1 -1
  435. package/packages/cli/dist/init.d.ts.map +1 -1
  436. package/packages/cli/dist/init.js +5 -29
  437. package/packages/cli/dist/init.js.map +1 -1
  438. package/packages/cli/dist/main.d.ts.map +1 -1
  439. package/packages/cli/dist/main.js +10 -1
  440. package/packages/cli/dist/main.js.map +1 -1
  441. package/packages/cli/dist/mcp/gateway-client.d.ts +5 -0
  442. package/packages/cli/dist/mcp/gateway-client.d.ts.map +1 -1
  443. package/packages/cli/dist/mcp/gateway-client.js +15 -4
  444. package/packages/cli/dist/mcp/gateway-client.js.map +1 -1
  445. package/packages/cli/dist/service/index.d.ts +4 -2
  446. package/packages/cli/dist/service/index.d.ts.map +1 -1
  447. package/packages/cli/dist/service/index.js +5 -7
  448. package/packages/cli/dist/service/index.js.map +1 -1
  449. package/packages/core/dist/.tsbuildinfo +1 -1
  450. package/packages/core/dist/agents/catalog.d.ts.map +1 -1
  451. package/packages/core/dist/agents/catalog.js +11 -2
  452. package/packages/core/dist/agents/catalog.js.map +1 -1
  453. package/packages/core/dist/agents/provider-from-env.d.ts +7 -6
  454. package/packages/core/dist/agents/provider-from-env.d.ts.map +1 -1
  455. package/packages/core/dist/agents/provider-from-env.js +9 -12
  456. package/packages/core/dist/agents/provider-from-env.js.map +1 -1
  457. package/packages/core/dist/agents/skills.d.ts +4 -4
  458. package/packages/core/dist/backup/load.d.ts.map +1 -1
  459. package/packages/core/dist/backup/load.js +37 -0
  460. package/packages/core/dist/backup/load.js.map +1 -1
  461. package/packages/core/dist/backup/restore.js +2 -2
  462. package/packages/core/dist/backup/restore.js.map +1 -1
  463. package/packages/core/dist/connection-config.d.ts +96 -0
  464. package/packages/core/dist/connection-config.d.ts.map +1 -0
  465. package/packages/core/dist/connection-config.js +308 -0
  466. package/packages/core/dist/connection-config.js.map +1 -0
  467. package/packages/core/dist/failures/owner-message.d.ts.map +1 -1
  468. package/packages/core/dist/failures/owner-message.js +37 -10
  469. package/packages/core/dist/failures/owner-message.js.map +1 -1
  470. package/packages/core/dist/notifications/agent.d.ts +54 -0
  471. package/packages/core/dist/notifications/agent.d.ts.map +1 -0
  472. package/packages/core/dist/notifications/agent.js +134 -0
  473. package/packages/core/dist/notifications/agent.js.map +1 -0
  474. package/packages/core/dist/notifications/index.d.ts +1 -0
  475. package/packages/core/dist/notifications/index.d.ts.map +1 -1
  476. package/packages/core/dist/notifications/index.js +1 -0
  477. package/packages/core/dist/notifications/index.js.map +1 -1
  478. package/packages/core/dist/notifications/notify.d.ts +4 -0
  479. package/packages/core/dist/notifications/notify.d.ts.map +1 -1
  480. package/packages/core/dist/notifications/notify.js +19 -7
  481. package/packages/core/dist/notifications/notify.js.map +1 -1
  482. package/packages/core/dist/notifications/store.d.ts +8 -1
  483. package/packages/core/dist/notifications/store.d.ts.map +1 -1
  484. package/packages/core/dist/notifications/store.js +55 -6
  485. package/packages/core/dist/notifications/store.js.map +1 -1
  486. package/packages/core/dist/notifications/types.d.ts +26 -2
  487. package/packages/core/dist/notifications/types.d.ts.map +1 -1
  488. package/packages/core/dist/notifications/types.js +1 -1
  489. package/packages/core/dist/notifications/types.js.map +1 -1
  490. package/packages/core/dist/onboarding/store.d.ts.map +1 -1
  491. package/packages/core/dist/onboarding/store.js +17 -1
  492. package/packages/core/dist/onboarding/store.js.map +1 -1
  493. package/packages/core/dist/onboarding/types.d.ts +14 -0
  494. package/packages/core/dist/onboarding/types.d.ts.map +1 -1
  495. package/packages/core/dist/provider-accounts.d.ts +21 -1
  496. package/packages/core/dist/provider-accounts.d.ts.map +1 -1
  497. package/packages/core/dist/provider-accounts.js +31 -1
  498. package/packages/core/dist/provider-accounts.js.map +1 -1
  499. package/packages/core/dist/provider.d.ts +4 -3
  500. package/packages/core/dist/provider.d.ts.map +1 -1
  501. package/packages/core/dist/provider.js +7 -4
  502. package/packages/core/dist/provider.js.map +1 -1
  503. package/packages/core/dist/testing/accounts.d.ts +12 -0
  504. package/packages/core/dist/testing/accounts.d.ts.map +1 -0
  505. package/packages/core/dist/testing/accounts.js +7 -0
  506. package/packages/core/dist/testing/accounts.js.map +1 -0
  507. package/packages/core/dist/testing/index.d.ts +1 -0
  508. package/packages/core/dist/testing/index.d.ts.map +1 -1
  509. package/packages/core/dist/testing/index.js +1 -0
  510. package/packages/core/dist/testing/index.js.map +1 -1
  511. package/packages/core/dist/vault/resolve.d.ts.map +1 -1
  512. package/packages/core/dist/vault/resolve.js +0 -3
  513. package/packages/core/dist/vault/resolve.js.map +1 -1
  514. package/packages/core/migrations/053_drop_legacy_anthropic_env.sql +31 -0
  515. package/packages/core/migrations/054_agent_messages.sql +15 -0
  516. package/packages/core/package.json +4 -0
  517. package/packages/gateway/dist/.tsbuildinfo +1 -1
  518. package/packages/gateway/dist/agents/owner-tools.d.ts +34 -1
  519. package/packages/gateway/dist/agents/owner-tools.d.ts.map +1 -1
  520. package/packages/gateway/dist/agents/owner-tools.js +87 -4
  521. package/packages/gateway/dist/agents/owner-tools.js.map +1 -1
  522. package/packages/gateway/dist/agents-cli.js +1 -1
  523. package/packages/gateway/dist/agents-cli.js.map +1 -1
  524. package/packages/gateway/dist/bootstrap.d.ts +1 -3
  525. package/packages/gateway/dist/bootstrap.d.ts.map +1 -1
  526. package/packages/gateway/dist/bootstrap.js +16 -11
  527. package/packages/gateway/dist/bootstrap.js.map +1 -1
  528. package/packages/gateway/dist/cli.js +1 -1
  529. package/packages/gateway/dist/mlxh.d.ts +44 -0
  530. package/packages/gateway/dist/mlxh.d.ts.map +1 -0
  531. package/packages/gateway/dist/mlxh.js +98 -0
  532. package/packages/gateway/dist/mlxh.js.map +1 -0
  533. package/packages/gateway/dist/owner-secrets.d.ts +98 -9
  534. package/packages/gateway/dist/owner-secrets.d.ts.map +1 -1
  535. package/packages/gateway/dist/owner-secrets.js +237 -15
  536. package/packages/gateway/dist/owner-secrets.js.map +1 -1
  537. package/packages/gateway/dist/plugins/stage.d.ts +4 -0
  538. package/packages/gateway/dist/plugins/stage.d.ts.map +1 -1
  539. package/packages/gateway/dist/plugins/stage.js +3 -0
  540. package/packages/gateway/dist/plugins/stage.js.map +1 -1
  541. package/packages/gateway/dist/plugins/update.d.ts +8 -0
  542. package/packages/gateway/dist/plugins/update.d.ts.map +1 -1
  543. package/packages/gateway/dist/plugins/update.js +8 -2
  544. package/packages/gateway/dist/plugins/update.js.map +1 -1
  545. package/packages/gateway/dist/provider-accounts.d.ts +6 -13
  546. package/packages/gateway/dist/provider-accounts.d.ts.map +1 -1
  547. package/packages/gateway/dist/provider-accounts.js +76 -16
  548. package/packages/gateway/dist/provider-accounts.js.map +1 -1
  549. package/packages/gateway/dist/providers.d.ts +3 -3
  550. package/packages/gateway/dist/providers.d.ts.map +1 -1
  551. package/packages/gateway/dist/providers.js +7 -7
  552. package/packages/gateway/dist/providers.js.map +1 -1
  553. package/packages/gateway/dist/serve.d.ts.map +1 -1
  554. package/packages/gateway/dist/serve.js +26 -8
  555. package/packages/gateway/dist/serve.js.map +1 -1
  556. package/packages/gateway/dist/surfaces/context-budget.d.ts +1 -1
  557. package/packages/gateway/dist/surfaces/context-budget.d.ts.map +1 -1
  558. package/packages/gateway/dist/surfaces/context-budget.js +46 -3
  559. package/packages/gateway/dist/surfaces/context-budget.js.map +1 -1
  560. package/packages/gateway/dist/surfaces/pending-question.d.ts.map +1 -1
  561. package/packages/gateway/dist/surfaces/pending-question.js +2 -1
  562. package/packages/gateway/dist/surfaces/pending-question.js.map +1 -1
  563. package/packages/gateway/dist/system-context.d.ts +2 -0
  564. package/packages/gateway/dist/system-context.d.ts.map +1 -1
  565. package/packages/gateway/dist/system-context.js +5 -1
  566. package/packages/gateway/dist/system-context.js.map +1 -1
  567. package/packages/gateway/dist/telegram/channel.d.ts +7 -0
  568. package/packages/gateway/dist/telegram/channel.d.ts.map +1 -1
  569. package/packages/gateway/dist/telegram/channel.js +14 -2
  570. package/packages/gateway/dist/telegram/channel.js.map +1 -1
  571. package/packages/gateway/dist/web/agents.d.ts.map +1 -1
  572. package/packages/gateway/dist/web/agents.js +5 -1
  573. package/packages/gateway/dist/web/agents.js.map +1 -1
  574. package/packages/gateway/dist/web/connections.d.ts +18 -5
  575. package/packages/gateway/dist/web/connections.d.ts.map +1 -1
  576. package/packages/gateway/dist/web/connections.js +118 -8
  577. package/packages/gateway/dist/web/connections.js.map +1 -1
  578. package/packages/gateway/dist/web/extension.d.ts +6 -0
  579. package/packages/gateway/dist/web/extension.d.ts.map +1 -1
  580. package/packages/gateway/dist/web/extension.js +5 -1
  581. package/packages/gateway/dist/web/extension.js.map +1 -1
  582. package/packages/gateway/dist/web/market.d.ts +18 -0
  583. package/packages/gateway/dist/web/market.d.ts.map +1 -1
  584. package/packages/gateway/dist/web/market.js +20 -14
  585. package/packages/gateway/dist/web/market.js.map +1 -1
  586. package/packages/gateway/dist/web/notifications.d.ts +6 -0
  587. package/packages/gateway/dist/web/notifications.d.ts.map +1 -1
  588. package/packages/gateway/dist/web/notifications.js +14 -1
  589. package/packages/gateway/dist/web/notifications.js.map +1 -1
  590. package/packages/gateway/dist/web/onboarding.d.ts +21 -7
  591. package/packages/gateway/dist/web/onboarding.d.ts.map +1 -1
  592. package/packages/gateway/dist/web/onboarding.js +64 -11
  593. package/packages/gateway/dist/web/onboarding.js.map +1 -1
  594. package/packages/gateway/dist/web/plugins.d.ts +5 -0
  595. package/packages/gateway/dist/web/plugins.d.ts.map +1 -1
  596. package/packages/gateway/dist/web/plugins.js +11 -1
  597. package/packages/gateway/dist/web/plugins.js.map +1 -1
  598. package/packages/gateway/dist/web/recovery.d.ts +10 -0
  599. package/packages/gateway/dist/web/recovery.d.ts.map +1 -1
  600. package/packages/gateway/dist/web/recovery.js +114 -34
  601. package/packages/gateway/dist/web/recovery.js.map +1 -1
  602. package/packages/gateway/dist/web/server.d.ts.map +1 -1
  603. package/packages/gateway/dist/web/server.js +84 -8
  604. package/packages/gateway/dist/web/server.js.map +1 -1
  605. package/packages/gateway/dist/web/sessions.d.ts +8 -0
  606. package/packages/gateway/dist/web/sessions.d.ts.map +1 -1
  607. package/packages/gateway/dist/web/sessions.js +24 -1
  608. package/packages/gateway/dist/web/sessions.js.map +1 -1
  609. package/packages/gateway/dist/web/static.d.ts +8 -0
  610. package/packages/gateway/dist/web/static.d.ts.map +1 -1
  611. package/packages/gateway/dist/web/static.js +21 -1
  612. package/packages/gateway/dist/web/static.js.map +1 -1
  613. package/packages/gateway/dist/web/take-on.d.ts +91 -0
  614. package/packages/gateway/dist/web/take-on.d.ts.map +1 -0
  615. package/packages/gateway/dist/web/take-on.js +287 -0
  616. package/packages/gateway/dist/web/take-on.js.map +1 -0
  617. package/packages/gateway/src/agents/starter/keeper/agent.md +2 -2
  618. package/packages/gateway/src/agents/starter/planner/agent.md +1 -1
  619. package/packages/gateway/src/agents/starter/scout/agent.md +1 -1
  620. package/packages/install/dist/.tsbuildinfo +1 -1
  621. package/packages/runtime/dist/.tsbuildinfo +1 -1
  622. package/packages/runtime/dist/anthropic.d.ts +7 -0
  623. package/packages/runtime/dist/anthropic.d.ts.map +1 -1
  624. package/packages/runtime/dist/anthropic.js +29 -3
  625. package/packages/runtime/dist/anthropic.js.map +1 -1
  626. package/packages/runtime/dist/delegate.js +1 -1
  627. package/packages/runtime/dist/delegate.js.map +1 -1
  628. package/packages/runtime/dist/provider-models.d.ts +2 -0
  629. package/packages/runtime/dist/provider-models.d.ts.map +1 -1
  630. package/packages/runtime/dist/provider-models.js +22 -0
  631. package/packages/runtime/dist/provider-models.js.map +1 -1
  632. package/packages/runtime/dist/search.js +2 -2
  633. package/packages/tools/artifacts/dist/.tsbuildinfo +1 -1
  634. package/packages/tools/browser/dist/.tsbuildinfo +1 -1
  635. package/packages/tools/email/dist/.tsbuildinfo +1 -1
  636. package/packages/tools/email/dist/config.d.ts +13 -9
  637. package/packages/tools/email/dist/config.d.ts.map +1 -1
  638. package/packages/tools/email/dist/config.js +33 -40
  639. package/packages/tools/email/dist/config.js.map +1 -1
  640. package/packages/tools/email/dist/index.d.ts +1 -1
  641. package/packages/tools/email/dist/index.d.ts.map +1 -1
  642. package/packages/tools/email/dist/index.js +1 -1
  643. package/packages/tools/email/dist/index.js.map +1 -1
  644. package/packages/tools/email/dist/pages/accounts.d.ts +1 -2
  645. package/packages/tools/email/dist/pages/accounts.d.ts.map +1 -1
  646. package/packages/tools/email/dist/pages/accounts.js +42 -18
  647. package/packages/tools/email/dist/pages/accounts.js.map +1 -1
  648. package/packages/tools/email/dist/pages/queries.d.ts.map +1 -1
  649. package/packages/tools/email/dist/pages/queries.js +7 -5
  650. package/packages/tools/email/dist/pages/queries.js.map +1 -1
  651. package/packages/tools/email/dist/ports.d.ts +5 -1
  652. package/packages/tools/email/dist/ports.d.ts.map +1 -1
  653. package/packages/tools/email/dist/tools/shared.js +1 -1
  654. package/packages/tools/email/dist/tools/shared.js.map +1 -1
  655. package/packages/tools/host/dist/.tsbuildinfo +1 -1
  656. package/packages/tools/mcp/dist/.tsbuildinfo +1 -1
  657. package/packages/tools/mcp/dist/catalog.d.ts +32 -2
  658. package/packages/tools/mcp/dist/catalog.d.ts.map +1 -1
  659. package/packages/tools/mcp/dist/catalog.js +41 -7
  660. package/packages/tools/mcp/dist/catalog.js.map +1 -1
  661. package/packages/tools/mcp/dist/device.d.ts +53 -0
  662. package/packages/tools/mcp/dist/device.d.ts.map +1 -0
  663. package/packages/tools/mcp/dist/device.js +100 -0
  664. package/packages/tools/mcp/dist/device.js.map +1 -0
  665. package/packages/tools/mcp/dist/fetch.d.ts +10 -1
  666. package/packages/tools/mcp/dist/fetch.d.ts.map +1 -1
  667. package/packages/tools/mcp/dist/fetch.js +7 -1
  668. package/packages/tools/mcp/dist/fetch.js.map +1 -1
  669. package/packages/tools/mcp/dist/index.d.ts +5 -3
  670. package/packages/tools/mcp/dist/index.d.ts.map +1 -1
  671. package/packages/tools/mcp/dist/index.js +7 -4
  672. package/packages/tools/mcp/dist/index.js.map +1 -1
  673. package/packages/tools/mcp/dist/ports.d.ts +31 -0
  674. package/packages/tools/mcp/dist/ports.d.ts.map +1 -1
  675. package/packages/tools/mcp/dist/preview.d.ts +16 -0
  676. package/packages/tools/mcp/dist/preview.d.ts.map +1 -0
  677. package/packages/tools/mcp/dist/preview.js +52 -0
  678. package/packages/tools/mcp/dist/preview.js.map +1 -0
  679. package/packages/tools/mcp/dist/program.d.ts +73 -0
  680. package/packages/tools/mcp/dist/program.d.ts.map +1 -0
  681. package/packages/tools/mcp/dist/program.js +306 -0
  682. package/packages/tools/mcp/dist/program.js.map +1 -0
  683. package/packages/tools/mcp/dist/service.d.ts +131 -22
  684. package/packages/tools/mcp/dist/service.d.ts.map +1 -1
  685. package/packages/tools/mcp/dist/service.js +717 -29
  686. package/packages/tools/mcp/dist/service.js.map +1 -1
  687. package/packages/tools/mcp/dist/session.d.ts +13 -1
  688. package/packages/tools/mcp/dist/session.d.ts.map +1 -1
  689. package/packages/tools/mcp/dist/session.js +27 -4
  690. package/packages/tools/mcp/dist/session.js.map +1 -1
  691. package/packages/tools/mcp/dist/store.d.ts +39 -1
  692. package/packages/tools/mcp/dist/store.d.ts.map +1 -1
  693. package/packages/tools/mcp/dist/store.js +24 -0
  694. package/packages/tools/mcp/dist/store.js.map +1 -1
  695. package/packages/tools/mcp/dist/testing/fake.d.ts +6 -0
  696. package/packages/tools/mcp/dist/testing/fake.d.ts.map +1 -1
  697. package/packages/tools/mcp/dist/testing/fake.js +26 -0
  698. package/packages/tools/mcp/dist/testing/fake.js.map +1 -1
  699. package/packages/tools/mcp/migrations/003_token_auth.sql +14 -0
  700. package/packages/tools/mcp/migrations/004_programs.sql +26 -0
  701. package/packages/tools/memory/dist/.tsbuildinfo +1 -1
  702. package/packages/tools/web/dist/.tsbuildinfo +1 -1
  703. package/packages/tools/web/dist/providers/index.d.ts +1 -2
  704. package/packages/tools/web/dist/providers/index.d.ts.map +1 -1
  705. package/packages/tools/web/dist/providers/index.js +1 -2
  706. package/packages/tools/web/dist/providers/index.js.map +1 -1
  707. package/packages/web/dist/assets/index-BxbiKNMS.css +1 -0
  708. package/packages/web/dist/assets/index-Rrze3bGo.js +130 -0
  709. package/packages/web/dist/assets/{lottie_light-D7STH9tF.js → lottie_light-7wQnGwdw.js} +1 -1
  710. package/packages/web/dist/build.json +1 -1
  711. package/packages/web/dist/index.html +2 -2
  712. package/packages/web/dist/manifest.webmanifest +24 -5
  713. package/packages/web/dist/precache.json +4 -4
  714. package/packages/web/dist/sw.js +5 -3
  715. package/packages/web/dist/assets/index-C-NAQ_MT.css +0 -1
  716. package/packages/web/dist/assets/index-DzFS39N3.js +0 -125
@@ -1,7 +1,13 @@
1
+ import { type Vault } from '@buddi/core';
1
2
  import type { Pool } from 'pg';
2
3
  export interface RecoverySecret {
4
+ /** The name the credential is kept under. Shown small, for the curious; never a value. */
3
5
  name: string;
4
6
  kind: 'account' | 'telegram' | 'plugin';
7
+ /** What it is, in words: "Gemini — API key", "Telegram — bot token". */
8
+ label: string;
9
+ /** The model account this is the credential of, so the page can open that account. */
10
+ accountId?: string;
5
11
  settingsRoute: string;
6
12
  }
7
13
  export interface RecoveryPlugin {
@@ -9,6 +15,8 @@ export interface RecoveryPlugin {
9
15
  version: string;
10
16
  source: string;
11
17
  installed: boolean;
18
+ /** `<npm name>@<version>` when it came from a registry: what Settings → Plugins can stage again. */
19
+ install?: string;
12
20
  }
13
21
  export interface RecoveryGrant {
14
22
  id: string;
@@ -36,6 +44,8 @@ export interface RecoveryView {
36
44
  export interface RecoveryDeps {
37
45
  pool: Pool;
38
46
  env: NodeJS.ProcessEnv;
47
+ /** Injected in tests; this machine's own vault otherwise. */
48
+ vault?: Vault | undefined;
39
49
  /** Where leaving recovery says what it dropped. Optional; defaults to stderr. */
40
50
  log?: ((line: string) => void) | undefined;
41
51
  }
@@ -1 +1 @@
1
- {"version":3,"file":"recovery.d.ts","sourceRoot":"","sources":["../../src/web/recovery.ts"],"names":[],"mappings":"AAqCA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,IAAI,CAAC;AAG/B,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,SAAS,GAAG,UAAU,GAAG,QAAQ,CAAC;IACxC,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,OAAO,CAAC;IAChB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,SAAS,EAAE;QACT,OAAO,EAAE,cAAc,EAAE,CAAC;QAC1B,OAAO,EAAE,cAAc,EAAE,CAAC;QAC1B,OAAO,EAAE;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,QAAQ,EAAE,MAAM,CAAC;YAAC,SAAS,EAAE,MAAM,CAAC;YAAC,aAAa,EAAE,MAAM,CAAA;SAAE,CAAC;QACtF,MAAM,EAAE,aAAa,EAAE,CAAC;KACzB,CAAC;CACH;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,IAAI,CAAC;IACX,GAAG,EAAE,MAAM,CAAC,UAAU,CAAC;IACvB,iFAAiF;IACjF,GAAG,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC;CAC5C;AAqBD;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,CAOxD;AAuFD,6EAA6E;AAC7E,wBAAsB,gBAAgB,CAAC,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,CA2BjG;AAED,MAAM,WAAW,UAAU;IACzB,WAAW,EAAE,OAAO,CAAC;IACrB;;;;OAIG;IACH,UAAU,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;CAClC;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,OAAO,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,gBAAgB,EAAE,MAAM,CAAC;IACzB,aAAa,EAAE,MAAM,CAAC;CACvB;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,iBAAiB,CACrC,IAAI,EAAE,YAAY,EAClB,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,UAAU,EACjB,GAAG,EAAE,IAAI,GACR,OAAO,CAAC,WAAW,CAAC,CAuCtB;AAED,uEAAuE;AACvE,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,CAAC,UAAU,GAAG,MAAM,GAAG,SAAS,CAGzE"}
1
+ {"version":3,"file":"recovery.d.ts","sourceRoot":"","sources":["../../src/web/recovery.ts"],"names":[],"mappings":"AA4BA,OAAO,EAWL,KAAK,KAAK,EACX,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,IAAI,CAAC;AAK/B,MAAM,WAAW,cAAc;IAC7B,0FAA0F;IAC1F,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,SAAS,GAAG,UAAU,GAAG,QAAQ,CAAC;IACxC,wEAAwE;IACxE,KAAK,EAAE,MAAM,CAAC;IACd,sFAAsF;IACtF,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,OAAO,CAAC;IACnB,oGAAoG;IACpG,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,OAAO,CAAC;IAChB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,SAAS,EAAE;QACT,OAAO,EAAE,cAAc,EAAE,CAAC;QAC1B,OAAO,EAAE,cAAc,EAAE,CAAC;QAC1B,OAAO,EAAE;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,QAAQ,EAAE,MAAM,CAAC;YAAC,SAAS,EAAE,MAAM,CAAC;YAAC,aAAa,EAAE,MAAM,CAAA;SAAE,CAAC;QACtF,MAAM,EAAE,aAAa,EAAE,CAAC;KACzB,CAAC;CACH;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,IAAI,CAAC;IACX,GAAG,EAAE,MAAM,CAAC,UAAU,CAAC;IACvB,6DAA6D;IAC7D,KAAK,CAAC,EAAE,KAAK,GAAG,SAAS,CAAC;IAC1B,iFAAiF;IACjF,GAAG,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC;CAC5C;AAmFD;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,CAOxD;AA2GD,6EAA6E;AAC7E,wBAAsB,gBAAgB,CAAC,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,CA2BjG;AAED,MAAM,WAAW,UAAU;IACzB,WAAW,EAAE,OAAO,CAAC;IACrB;;;;OAIG;IACH,UAAU,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;CAClC;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,OAAO,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,gBAAgB,EAAE,MAAM,CAAC;IACzB,aAAa,EAAE,MAAM,CAAC;CACvB;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,iBAAiB,CACrC,IAAI,EAAE,YAAY,EAClB,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,UAAU,EACjB,GAAG,EAAE,IAAI,GACR,OAAO,CAAC,WAAW,CAAC,CAuCtB;AAED,uEAAuE;AACvE,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,CAAC,UAAU,GAAG,MAAM,GAAG,SAAS,CAGzE"}
@@ -8,8 +8,11 @@
8
8
  *
9
9
  * - **secrets.** No backup contains a secret value, by design. So every
10
10
  * provider account, the Telegram token and anything the restored `.env`
11
- * marked as living in the vault is checked against the vault on *this*
12
- * machine, and what is missing is listed with a link to where to paste it.
11
+ * marked as living in the vault is looked up the way the runtime reads it
12
+ * on *this* machine — owner secret first, raw vault entry, then the
13
+ * environment — and only what buddi truly cannot read is listed, with a
14
+ * link to where it is fixed. A name in the vault's list proves nothing: an
15
+ * adopted credential is kept under `owner-secret:<id>`, not its name.
13
16
  * - **plugins.** `plugins.json` came back in the archive; what is installed
14
17
  * here is whatever this build has. The difference is the list.
15
18
  * - **pending work.** Counts the restore took at the moment it loaded, so the
@@ -23,24 +26,79 @@
23
26
  import { existsSync } from 'node:fs';
24
27
  import { readFile } from 'node:fs/promises';
25
28
  import path from 'node:path';
26
- import { createVault, describeSource, leaveRecovery, listToolPermissions, pluginsFilePath, readPluginsFile, readRecovery, revokeToolPermission, } from '@buddi/core';
29
+ import { createVault, describeSource, envValue, leaveRecovery, listToolPermissions, pluginsFilePath, readPluginsFile, readRecovery, revokeToolPermission, } from '@buddi/core';
27
30
  import { agentSearchPath, installedManifests } from '../agents/catalog.js';
31
+ import { readOllamaDevice } from '../ollama-accounts.js';
32
+ import { ownerSecretVault } from '../owner-secrets.js';
28
33
  const ACCOUNTS_ROUTE = '#/settings/accounts';
29
- const SYSTEM_ROUTE = '#/settings/system';
34
+ const TELEGRAM_ROUTE = '#/settings/telegram';
35
+ const SECRETS_ROUTE = '#/settings/secrets';
30
36
  /** Names that are a model credential wherever they turn up. */
31
- const MODEL_SECRETS = new Set(['ANTHROPIC_API_KEY', 'CLAUDE_CODE_OAUTH_TOKEN', 'OPENAI_API_KEY']);
32
- /** The names this machine's vault actually holds. Never a value. */
33
- async function vaultNames(env) {
34
- const vault = createVault({ env });
35
- if (!vault)
36
- return new Set();
37
+ const MODEL_SECRETS = new Set(['OPENAI_API_KEY']);
38
+ /**
39
+ * Names a restored `.env` may mark that the owner never pastes on a page: the
40
+ * database's own credentials and the vault's key. A gateway that is serving
41
+ * this page is already using them, so listing them would only ever be wrong.
42
+ */
43
+ const RUNNING_PROVES = new Set(['DATABASE_URL', 'BUDDI_DB_PASSWORD', 'BUDDI_VAULT_KEY']);
44
+ /** What the known names are, in words. Anything else is shown by its name. */
45
+ const SECRET_WORDS = {
46
+ OPENAI_API_KEY: 'OpenAI — API key',
47
+ TELEGRAM_BOT_TOKEN: 'Telegram — bot token',
48
+ TAVILY_API_KEY: 'Tavily — search key',
49
+ BRAVE_SEARCH_API_KEY: 'Brave Search — search key',
50
+ };
51
+ const AUTH_WORDS = {
52
+ 'api-key': 'API key',
53
+ chatgpt: 'ChatGPT sign-in',
54
+ 'anthropic-oauth': 'Claude sign-in',
55
+ 'device-key': 'Ollama device key',
56
+ };
57
+ function openVault(deps) {
58
+ if (deps.vault)
59
+ return deps.vault;
37
60
  try {
38
- return new Set(await vault.list());
61
+ return createVault({ env: deps.env });
39
62
  }
40
63
  catch {
41
- // A locked vault is the same problem the checklist is about; treating it
42
- // as "nothing is there" lists everything, which is the safe direction.
43
- return new Set();
64
+ return undefined;
65
+ }
66
+ }
67
+ /**
68
+ * Whether buddi can read a credential by this name the way the runtime does:
69
+ * the owner secret of that name when one exists (`owner-secret:<id>` in the
70
+ * vault, which is where every adopted account key and plugin secret lives
71
+ * now), else the raw vault entry. Only ever a yes or no; the value never
72
+ * leaves this function. A locked or failing vault is "no", the safe direction.
73
+ */
74
+ async function readable(vault, pool, name) {
75
+ if (!vault || name === '')
76
+ return null;
77
+ try {
78
+ const value = await ownerSecretVault(vault, pool).get(name);
79
+ return value !== null && value.trim() !== '' ? value : null;
80
+ }
81
+ catch {
82
+ return null;
83
+ }
84
+ }
85
+ /**
86
+ * Mirrors `ProviderAccountService#secret` and its "configured" rule: the
87
+ * credential through the owner-secret-aware vault, then a migrated account's
88
+ * own named environment variable; an Ollama device counts once connected.
89
+ */
90
+ async function accountHasCredential(vault, deps, row) {
91
+ const raw = row.secret_ref ? await readable(vault, deps.pool, row.secret_ref) : null;
92
+ const value = raw ?? (row.legacy_env ? envValue(deps.env, row.legacy_env) ?? null : null);
93
+ if (value === null)
94
+ return false;
95
+ if (row.auth !== 'device-key')
96
+ return true;
97
+ try {
98
+ return readOllamaDevice(value).connectedAt !== null;
99
+ }
100
+ catch {
101
+ return false;
44
102
  }
45
103
  }
46
104
  /**
@@ -60,31 +118,52 @@ export function vaultMarkersIn(envText) {
60
118
  return names;
61
119
  }
62
120
  async function missingSecrets(deps) {
63
- const held = await vaultNames(deps.env);
121
+ const vault = openVault(deps);
64
122
  const out = [];
65
- const add = (name, kind, settingsRoute) => {
66
- if (held.has(name) || (deps.env[name] ?? '').trim() !== '')
67
- return;
68
- if (out.some((s) => s.name === name))
69
- return;
70
- out.push({ name, kind, settingsRoute });
71
- };
72
- // Every account that needs a credential and whose credential is not here.
123
+ const listed = (name) => name !== '' && out.some((s) => s.name === name);
124
+ // Every account the runtime could not get a credential for.
125
+ let rows = [];
73
126
  try {
74
- const { rows } = await deps.pool.query(`select secret_ref, auth, label from core.provider_accounts
75
- where enabled and not deleting and auth <> 'none'`);
76
- for (const row of rows) {
77
- add(row.secret_ref ?? `credential for ${row.label}`, 'account', ACCOUNTS_ROUTE);
78
- }
127
+ ({ rows } = await deps.pool.query(`select id, kind, auth, label, secret_ref, legacy_env from core.provider_accounts
128
+ where enabled and not deleting and auth <> 'none' order by created_at, id`));
79
129
  }
80
130
  catch {
81
131
  // No accounts table is an installation that predates them, not an error.
82
132
  }
133
+ for (const row of rows) {
134
+ if (await accountHasCredential(vault, deps, row))
135
+ continue;
136
+ const name = row.secret_ref ?? row.legacy_env ?? '';
137
+ if (listed(name))
138
+ continue;
139
+ out.push({
140
+ name,
141
+ kind: 'account',
142
+ label: `${row.label} — ${AUTH_WORDS[row.auth] ?? row.auth}`,
143
+ accountId: row.id,
144
+ settingsRoute: `${ACCOUNTS_ROUTE}?account=${encodeURIComponent(row.id)}`,
145
+ });
146
+ }
147
+ /*
148
+ * Anything else by name: the environment the gateway started with (a real
149
+ * value, not the `<vault>` marker), then the owner secret or vault entry of
150
+ * that name — where the dashboard saves the bot token and where every plugin
151
+ * key lives since the host API.
152
+ */
153
+ const add = async (name, kind, settingsRoute) => {
154
+ if (listed(name) || RUNNING_PROVES.has(name))
155
+ return;
156
+ if (envValue(deps.env, name) !== undefined)
157
+ return;
158
+ if ((await readable(vault, deps.pool, name)) !== null)
159
+ return;
160
+ out.push({ name, kind, label: SECRET_WORDS[name] ?? name, settingsRoute });
161
+ };
83
162
  // A bot that was paired on the old machine but has no token on this one.
84
163
  try {
85
- const { rows } = await deps.pool.query(`select count(*)::text as n from core.surface_identities where surface = 'telegram'`);
86
- if (Number(rows[0]?.n ?? '0') > 0)
87
- add('TELEGRAM_BOT_TOKEN', 'telegram', SYSTEM_ROUTE);
164
+ const { rows: paired } = await deps.pool.query(`select count(*)::text as n from core.surface_identities where surface = 'telegram'`);
165
+ if (Number(paired[0]?.n ?? '0') > 0)
166
+ await add('TELEGRAM_BOT_TOKEN', 'telegram', TELEGRAM_ROUTE);
88
167
  }
89
168
  catch {
90
169
  /* same */
@@ -95,11 +174,11 @@ async function missingSecrets(deps) {
95
174
  const text = await readFile(envFile, 'utf8').catch(() => '');
96
175
  for (const name of vaultMarkersIn(text)) {
97
176
  if (name === 'TELEGRAM_BOT_TOKEN')
98
- add(name, 'telegram', SYSTEM_ROUTE);
177
+ await add(name, 'telegram', TELEGRAM_ROUTE);
99
178
  else if (MODEL_SECRETS.has(name))
100
- add(name, 'account', ACCOUNTS_ROUTE);
179
+ await add(name, 'account', ACCOUNTS_ROUTE);
101
180
  else
102
- add(name, 'plugin', SYSTEM_ROUTE);
181
+ await add(name, 'plugin', SECRETS_ROUTE);
103
182
  }
104
183
  }
105
184
  return out;
@@ -127,6 +206,7 @@ function pluginsFromArchive(env) {
127
206
  version: p.version,
128
207
  source: describeSource(p.source),
129
208
  installed: installed.has(p.name),
209
+ ...(p.source.kind === 'registry' ? { install: `${p.source.name}@${p.source.version}` } : {}),
130
210
  }));
131
211
  }
132
212
  catch {
@@ -1 +1 @@
1
- {"version":3,"file":"recovery.js","sourceRoot":"","sources":["../../src/web/recovery.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"recovery.js","sourceRoot":"","sources":["../../src/web/recovery.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/web/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/web/server.ts"],"names":[],"mappings":"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"}
@@ -41,7 +41,7 @@
41
41
  * No `Access-Control-*` header is ever emitted, and `OPTIONS` is refused: a
42
42
  * page on another origin gets no preflight and no permission.
43
43
  */
44
- import { focusRoute, listNotificationsRoute, markSeenRoute, notificationSettingsRoute, presenceRoute, testChannelRoute } from './notifications.js';
44
+ import { agentMuteRoute, focusRoute, listNotificationsRoute, markSeenRoute, notificationSettingsRoute, presenceRoute, testChannelRoute } from './notifications.js';
45
45
  import { catalogSkillLookup, discardProposalFromWeb, keepProposalFromWeb, readProposals, registryChangeLookup } from './proposals.js';
46
46
  import { latestDigest, readDigestSchedule, setDigestSchedule } from '../agents/learning-digest.js';
47
47
  import { readAgentSkills, removeLearnedSkillFromWeb } from '../agents/learned-skills.js';
@@ -54,7 +54,9 @@ import { ProviderAccountError } from '../provider-accounts.js';
54
54
  import { listBrowserProfiles, listInstalledApps } from './apps.js';
55
55
  import { agentSearchPath, EXAMPLES_AGENTS_DIR } from '../agents/catalog.js';
56
56
  import { setDelegatesFromWeb } from './write.js';
57
+ import { mlxhBaseUrl, probeMlxh } from '../mlxh.js';
57
58
  import { OnboardingRefusal, WEB_ONBOARDING_STEPS, WEB_ONBOARDING_SURFACE, claimOpeningTurn, createFirstAgent, probeOllama, readOnboarding, rebindBrain, updateFirstAgent, withFirstRunFacts, readFirstAgentPersona } from './onboarding.js';
59
+ import { TakeOnRefusal, readTakeOn, startTakeOn } from './take-on.js';
58
60
  import { TelegramWebError, saveTelegramToken, telegramBot, telegramDevices, telegramPairing, telegramStatus, unpairTelegramDevice, } from './telegram.js';
59
61
  import { PAGE_ROUTE, sendPageFile, actOnPage, listPageDescriptors, runPageQuery, } from './pages.js';
60
62
  import { listSecrets, secretUses, secretsAct } from './secrets.js';
@@ -99,7 +101,7 @@ import { dismissAgentOffer, isPendingAccept, raiseAgentOffers, readAgentOffers,
99
101
  import { currentVersion, upgradeJobRoute, upgradeRoute, versionCheckRoute, versionRoute, } from './version.js';
100
102
  import { leaveRecoveryMode, readRecoveryView } from './recovery.js';
101
103
  import { readRail, setRailPageHidden } from './rail.js';
102
- import { BUILD_MISSING, serveAsset } from './static.js';
104
+ import { BUILD_MISSING, serveAsset, serveShellAtRoot } from './static.js';
103
105
  import { StreamBudget, resumeCursor, streamConversation } from './stream.js';
104
106
  import { ensureWebToken, verifyTicket } from './token.js';
105
107
  import { MAX_UPLOAD_BYTES, readUpload } from './upload.js';
@@ -465,7 +467,7 @@ export function createWebApp(deps) {
465
467
  * state is checked there against the session that started the sign-in.
466
468
  */
467
469
  if ((method === 'GET' || method === 'HEAD') && url.pathname === CONNECTIONS_CALLBACK_PATH) {
468
- const served = await serveAsset(res, assetsDir, '/index.html');
470
+ const served = await serveShellAtRoot(res, assetsDir);
469
471
  if (!served.served)
470
472
  sendText(res, 503, BUILD_MISSING);
471
473
  return;
@@ -496,7 +498,8 @@ export function createWebApp(deps) {
496
498
  });
497
499
  }
498
500
  const cookies = parseCookies(req.headers.cookie);
499
- let session = sessions.get(cookies[sessionCookieName(cookiePort(req))], scope, now);
501
+ const presentedSession = cookies[sessionCookieName(cookiePort(req))];
502
+ let session = sessions.get(presentedSession, scope, now);
500
503
  /*
501
504
  * A Tailscale session is re-confirmed on every single request.
502
505
  *
@@ -517,7 +520,7 @@ export function createWebApp(deps) {
517
520
  hand.revoke((lease) => lease === session.id);
518
521
  if (limiter.blocked(key, now))
519
522
  return sendEmpty(res, 429);
520
- limiter.fail(key, now);
523
+ limiter.failCredential(key, presentedSession ?? '', now);
521
524
  return sendEmpty(res, 401);
522
525
  }
523
526
  }
@@ -561,9 +564,17 @@ export function createWebApp(deps) {
561
564
  // Rate-limit failed authentication, not authenticated traffic. A stale
562
565
  // tab behind the same proxy must not lock out a valid recovery ticket
563
566
  // or an already authenticated owner (nor direct local access).
567
+ //
568
+ // Only a request that presented a credential is an attempt. One with no
569
+ // cookie at all (a reconnect check, a health probe) guessed nothing, and
570
+ // the same stale cookie counts once however often it is sent: all tailnet
571
+ // and tunnel traffic shares 127.0.0.1, so a forgotten tab must not be
572
+ // able to lock the owner out of every way in.
573
+ if (!presentedSession)
574
+ return sendEmpty(res, 401);
564
575
  if (limiter.blocked(key, now))
565
576
  return sendEmpty(res, 429);
566
- limiter.fail(key, now);
577
+ limiter.failCredential(key, presentedSession, now);
567
578
  return sendEmpty(res, 401);
568
579
  }
569
580
  /*
@@ -643,6 +654,34 @@ export function createWebApp(deps) {
643
654
  registry: deps.registry,
644
655
  ...(deps.plugins ? { engine: deps.plugins } : {}),
645
656
  });
657
+ /** Is a mailbox connected? The email plugin's own read, the one Home's offer asks. */
658
+ const mailboxSet = async () => {
659
+ const answer = await runPageQuery(pagesDeps(), 'email', 'triage_offer', new URLSearchParams()).catch(() => null);
660
+ return answer?.status === 200 && answer.body?.data?.wanted === true;
661
+ };
662
+ /** First run's chapter 3: the market, the plugin engine, the live registry, the mailbox. */
663
+ const takeOnDeps = () => {
664
+ const live = deps.registry;
665
+ return {
666
+ pool: deps.pool,
667
+ env: deps.env ?? process.env,
668
+ log,
669
+ ...(deps.plugins ? { engine: deps.plugins } : {}),
670
+ ...(live.register && live.unregister && live.manifests ? { registry: deps.registry } : {}),
671
+ mailboxSet,
672
+ agentIds: () => deps.catalog.list().map((a) => a.id),
673
+ };
674
+ };
675
+ /** The weather at home in one line, for the hello, when the weather plugin answers. */
676
+ const weatherAtHome = async () => {
677
+ const answer = await runPageQuery(pagesDeps(), 'weather', 'today', new URLSearchParams()).catch(() => null);
678
+ const data = answer?.body?.data;
679
+ if (answer?.status !== 200 || !data || data.setUp !== true)
680
+ return null;
681
+ const parts = [data.now, data.sky, typeof data.highLow === 'string' && data.highLow !== '' ? `high / low ${data.highLow}` : '']
682
+ .filter((part) => typeof part === 'string' && part !== '');
683
+ return parts.length === 0 ? null : `${typeof data.place === 'string' ? `${data.place}: ` : ''}${parts.join(', ')}`;
684
+ };
646
685
  /**
647
686
  * May this installation still be restored over from the first-run screen?
648
687
  *
@@ -1142,9 +1181,15 @@ export function createWebApp(deps) {
1142
1181
  }
1143
1182
  case '/api/onboarding/ollama':
1144
1183
  return sendJson(res, 200, await probeOllama());
1184
+ // Is mlxh running here? The same question, asked the same way, of port 1060.
1185
+ case '/api/onboarding/mlxh':
1186
+ return sendJson(res, 200, await probeMlxh({ baseUrl: mlxhBaseUrl(deps.env ?? process.env) }));
1187
+ // Chapter 3's progress: per plugin, and what the handover card will say is waiting.
1188
+ case '/api/onboarding/take-on':
1189
+ return sendJson(res, 200, await readTakeOn(takeOnDeps()));
1145
1190
  case '/api/telegram':
1146
1191
  return sendJson(res, 200, await telegramStatus(telegramDeps()));
1147
- // Settings → Notifications: which bot, and which phones talk to it.
1192
+ // Settings → Telegram: which bot, and which phones talk to it.
1148
1193
  case '/api/telegram/bot':
1149
1194
  return sendJson(res, 200, await telegramBot(telegramDeps()));
1150
1195
  case '/api/telegram/devices':
@@ -1806,6 +1851,8 @@ export function createWebApp(deps) {
1806
1851
  return reply(res, await presenceRoute(deps.pool, body, deps.now()));
1807
1852
  if (path === '/api/notifications/test')
1808
1853
  return reply(res, await testChannelRoute(body, deps.now()));
1854
+ if (path === '/api/notifications/agent-mute')
1855
+ return reply(res, await agentMuteRoute(deps.pool, body));
1809
1856
  const seen = /^\/api\/notifications\/([^/]+)\/seen$/.exec(path);
1810
1857
  if (seen)
1811
1858
  return reply(res, await markSeenRoute(deps.pool, decodeURIComponent(seen[1]), deps.now()));
@@ -2223,6 +2270,13 @@ export function createWebApp(deps) {
2223
2270
  return sendJson(res, 400, { error: `\`${key}\` must be a string` });
2224
2271
  }
2225
2272
  }
2273
+ // Chapter 4 carries which of its rows were done: yes or no, nothing else.
2274
+ const reachKeys = ['phone', 'mailbox', 'app', 'browser'];
2275
+ if (body.reach !== undefined &&
2276
+ (body.reach === null || typeof body.reach !== 'object' || Array.isArray(body.reach) ||
2277
+ Object.entries(body.reach).some(([key, value]) => !reachKeys.includes(key) || typeof value !== 'boolean'))) {
2278
+ return sendJson(res, 400, { error: '`reach` must say yes or no for phone, mailbox, app and browser' });
2279
+ }
2226
2280
  // The first step recorded is also what starts the record, with this
2227
2281
  // surface's name on it. Already in progress, done or skipped: unchanged.
2228
2282
  await beginOnboarding(deps.pool, WEB_ONBOARDING_SURFACE);
@@ -2230,9 +2284,24 @@ export function createWebApp(deps) {
2230
2284
  await setOnboardingDetails(deps.pool, {
2231
2285
  ...(typeof body.conversationId === 'string' ? { conversationId: body.conversationId } : {}),
2232
2286
  ...(typeof body.accountId === 'string' ? { accountId: body.accountId } : {}),
2287
+ ...(body.reach !== undefined ? { reach: body.reach } : {}),
2233
2288
  });
2234
2289
  return sendJson(res, 200, await readOnboarding(onboardingDeps()));
2235
2290
  }
2291
+ /*
2292
+ * Chapter 3: what buddi takes on. Records the tiles and starts the By-buddi
2293
+ * installs in the background; answers at once with a job per plugin.
2294
+ */
2295
+ if (path === '/api/onboarding/take-on') {
2296
+ try {
2297
+ return sendJson(res, 202, await startTakeOn(takeOnDeps(), body.tiles));
2298
+ }
2299
+ catch (error) {
2300
+ if (error instanceof TakeOnRefusal)
2301
+ return sendJson(res, error.status, { error: error.message });
2302
+ throw error;
2303
+ }
2304
+ }
2236
2305
  if (path === '/api/onboarding/complete' || path === '/api/onboarding/skip') {
2237
2306
  if (path.endsWith('/skip')) {
2238
2307
  // The explicit bypass. It records that the owner declined, and it is
@@ -2664,7 +2733,14 @@ export function createWebApp(deps) {
2664
2733
  agentId: decodeURIComponent(messages[1]),
2665
2734
  ...(typeof body.conversationId === 'string' ? { conversationId: body.conversationId } : {}),
2666
2735
  ...(typeof body.client === 'string' ? { client: body.client.trim() } : {}),
2667
- text: body.opening === true ? await withFirstRunFacts(onboardingDeps(), body.text) : body.text,
2736
+ text: body.opening === true
2737
+ ? await withFirstRunFacts(onboardingDeps(), body.text, {
2738
+ weatherAtHome,
2739
+ mailboxSet,
2740
+ installed: async () => (await readTakeOn(takeOnDeps())).plugins.filter((p) => p.state === 'ready').map((p) => p.title),
2741
+ now: deps.now,
2742
+ })
2743
+ : body.text,
2668
2744
  ...(ids ? { attachmentIds: ids } : {}),
2669
2745
  ...(body.opening === true ? { opening: true } : {}),
2670
2746
  });