@withbuddi/buddi 0.1.0-pre.50 → 0.1.0-pre.52

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 (462) hide show
  1. package/extension/background.js +1604 -847
  2. package/extension/manifest.json +3 -3
  3. package/extension/popup.css +91 -3
  4. package/extension/popup.html +49 -32
  5. package/extension/popup.js +215 -123
  6. package/node_modules/@buddi/cli/dist/.tsbuildinfo +1 -1
  7. package/node_modules/@buddi/cli/dist/commands.d.ts.map +1 -1
  8. package/node_modules/@buddi/cli/dist/commands.js +11 -1
  9. package/node_modules/@buddi/cli/dist/commands.js.map +1 -1
  10. package/node_modules/@buddi/core/dist/.tsbuildinfo +1 -1
  11. package/node_modules/@buddi/core/dist/plugin/index.d.ts +1 -1
  12. package/node_modules/@buddi/core/dist/plugin/index.d.ts.map +1 -1
  13. package/node_modules/@buddi/core/dist/plugin/index.js.map +1 -1
  14. package/node_modules/@buddi/core/dist/questions/store.d.ts +3 -1
  15. package/node_modules/@buddi/core/dist/questions/store.d.ts.map +1 -1
  16. package/node_modules/@buddi/core/dist/questions/store.js +3 -3
  17. package/node_modules/@buddi/core/dist/questions/store.js.map +1 -1
  18. package/node_modules/@buddi/core/dist/questions/types.d.ts +46 -1
  19. package/node_modules/@buddi/core/dist/questions/types.d.ts.map +1 -1
  20. package/node_modules/@buddi/core/dist/questions/types.js +2 -1
  21. package/node_modules/@buddi/core/dist/questions/types.js.map +1 -1
  22. package/node_modules/@buddi/core/dist/registry.d.ts.map +1 -1
  23. package/node_modules/@buddi/core/dist/registry.js +11 -2
  24. package/node_modules/@buddi/core/dist/registry.js.map +1 -1
  25. package/node_modules/@buddi/core/dist/scheduler/index.d.ts +1 -0
  26. package/node_modules/@buddi/core/dist/scheduler/index.d.ts.map +1 -1
  27. package/node_modules/@buddi/core/dist/scheduler/index.js +1 -0
  28. package/node_modules/@buddi/core/dist/scheduler/index.js.map +1 -1
  29. package/node_modules/@buddi/core/dist/scheduler/manual.d.ts +50 -0
  30. package/node_modules/@buddi/core/dist/scheduler/manual.d.ts.map +1 -0
  31. package/node_modules/@buddi/core/dist/scheduler/manual.js +73 -0
  32. package/node_modules/@buddi/core/dist/scheduler/manual.js.map +1 -0
  33. package/node_modules/@buddi/core/dist/secrets/approval.d.ts +54 -0
  34. package/node_modules/@buddi/core/dist/secrets/approval.d.ts.map +1 -1
  35. package/node_modules/@buddi/core/dist/secrets/approval.js +58 -1
  36. package/node_modules/@buddi/core/dist/secrets/approval.js.map +1 -1
  37. package/node_modules/@buddi/core/dist/secrets/settings.d.ts +178 -0
  38. package/node_modules/@buddi/core/dist/secrets/settings.d.ts.map +1 -1
  39. package/node_modules/@buddi/core/dist/secrets/settings.js +63 -6
  40. package/node_modules/@buddi/core/dist/secrets/settings.js.map +1 -1
  41. package/node_modules/@buddi/core/dist/secrets/store.d.ts +31 -0
  42. package/node_modules/@buddi/core/dist/secrets/store.d.ts.map +1 -1
  43. package/node_modules/@buddi/core/dist/secrets/store.js +75 -0
  44. package/node_modules/@buddi/core/dist/secrets/store.js.map +1 -1
  45. package/node_modules/@buddi/core/dist/secrets/use.d.ts.map +1 -1
  46. package/node_modules/@buddi/core/dist/secrets/use.js +68 -3
  47. package/node_modules/@buddi/core/dist/secrets/use.js.map +1 -1
  48. package/node_modules/@buddi/core/dist/tools.d.ts +22 -0
  49. package/node_modules/@buddi/core/dist/tools.d.ts.map +1 -1
  50. package/node_modules/@buddi/core/dist/tools.js.map +1 -1
  51. package/node_modules/@buddi/core/migrations/080_secret_requests.sql +14 -0
  52. package/node_modules/@buddi/gateway/dist/.tsbuildinfo +1 -1
  53. package/node_modules/@buddi/gateway/dist/chat/session.d.ts.map +1 -1
  54. package/node_modules/@buddi/gateway/dist/chat/session.js +2 -1
  55. package/node_modules/@buddi/gateway/dist/chat/session.js.map +1 -1
  56. package/node_modules/@buddi/gateway/dist/mcp/requests.d.ts.map +1 -1
  57. package/node_modules/@buddi/gateway/dist/mcp/requests.js +9 -1
  58. package/node_modules/@buddi/gateway/dist/mcp/requests.js.map +1 -1
  59. package/node_modules/@buddi/gateway/dist/missions/execute.d.ts.map +1 -1
  60. package/node_modules/@buddi/gateway/dist/missions/execute.js +3 -1
  61. package/node_modules/@buddi/gateway/dist/missions/execute.js.map +1 -1
  62. package/node_modules/@buddi/gateway/dist/missions/reminders.d.ts +7 -2
  63. package/node_modules/@buddi/gateway/dist/missions/reminders.d.ts.map +1 -1
  64. package/node_modules/@buddi/gateway/dist/missions/reminders.js +27 -9
  65. package/node_modules/@buddi/gateway/dist/missions/reminders.js.map +1 -1
  66. package/node_modules/@buddi/gateway/dist/missions/run-now.d.ts +38 -0
  67. package/node_modules/@buddi/gateway/dist/missions/run-now.d.ts.map +1 -0
  68. package/node_modules/@buddi/gateway/dist/missions/run-now.js +62 -0
  69. package/node_modules/@buddi/gateway/dist/missions/run-now.js.map +1 -0
  70. package/node_modules/@buddi/gateway/dist/missions-cli.d.ts +1 -1
  71. package/node_modules/@buddi/gateway/dist/missions-cli.d.ts.map +1 -1
  72. package/node_modules/@buddi/gateway/dist/missions-cli.js +21 -10
  73. package/node_modules/@buddi/gateway/dist/missions-cli.js.map +1 -1
  74. package/node_modules/@buddi/gateway/dist/serve.d.ts +3 -12
  75. package/node_modules/@buddi/gateway/dist/serve.d.ts.map +1 -1
  76. package/node_modules/@buddi/gateway/dist/serve.js +2 -21
  77. package/node_modules/@buddi/gateway/dist/serve.js.map +1 -1
  78. package/node_modules/@buddi/gateway/dist/surfaces/browser-cards.d.ts +15 -3
  79. package/node_modules/@buddi/gateway/dist/surfaces/browser-cards.d.ts.map +1 -1
  80. package/node_modules/@buddi/gateway/dist/surfaces/browser-cards.js +34 -7
  81. package/node_modules/@buddi/gateway/dist/surfaces/browser-cards.js.map +1 -1
  82. package/node_modules/@buddi/gateway/dist/surfaces/offered-actions.d.ts.map +1 -1
  83. package/node_modules/@buddi/gateway/dist/surfaces/offered-actions.js +8 -2
  84. package/node_modules/@buddi/gateway/dist/surfaces/offered-actions.js.map +1 -1
  85. package/node_modules/@buddi/gateway/dist/surfaces/pending-question.d.ts +3 -1
  86. package/node_modules/@buddi/gateway/dist/surfaces/pending-question.d.ts.map +1 -1
  87. package/node_modules/@buddi/gateway/dist/surfaces/pending-question.js.map +1 -1
  88. package/node_modules/@buddi/gateway/dist/surfaces/secret-request.d.ts +173 -0
  89. package/node_modules/@buddi/gateway/dist/surfaces/secret-request.d.ts.map +1 -0
  90. package/node_modules/@buddi/gateway/dist/surfaces/secret-request.js +332 -0
  91. package/node_modules/@buddi/gateway/dist/surfaces/secret-request.js.map +1 -0
  92. package/node_modules/@buddi/gateway/dist/system-context.js +1 -1
  93. package/node_modules/@buddi/gateway/dist/system-context.js.map +1 -1
  94. package/node_modules/@buddi/gateway/dist/telegram/main.d.ts.map +1 -1
  95. package/node_modules/@buddi/gateway/dist/telegram/main.js +14 -3
  96. package/node_modules/@buddi/gateway/dist/telegram/main.js.map +1 -1
  97. package/node_modules/@buddi/gateway/dist/telegram/surface.d.ts.map +1 -1
  98. package/node_modules/@buddi/gateway/dist/telegram/surface.js +4 -1
  99. package/node_modules/@buddi/gateway/dist/telegram/surface.js.map +1 -1
  100. package/node_modules/@buddi/gateway/dist/web/api-routes.d.ts.map +1 -1
  101. package/node_modules/@buddi/gateway/dist/web/api-routes.js +16 -1
  102. package/node_modules/@buddi/gateway/dist/web/api-routes.js.map +1 -1
  103. package/node_modules/@buddi/gateway/dist/web/approval-ask.js +2 -2
  104. package/node_modules/@buddi/gateway/dist/web/approval-ask.js.map +1 -1
  105. package/node_modules/@buddi/gateway/dist/web/browser-capture.d.ts +13 -0
  106. package/node_modules/@buddi/gateway/dist/web/browser-capture.d.ts.map +1 -0
  107. package/node_modules/@buddi/gateway/dist/web/browser-capture.js +24 -0
  108. package/node_modules/@buddi/gateway/dist/web/browser-capture.js.map +1 -0
  109. package/node_modules/@buddi/gateway/dist/web/chat.d.ts +26 -0
  110. package/node_modules/@buddi/gateway/dist/web/chat.d.ts.map +1 -1
  111. package/node_modules/@buddi/gateway/dist/web/chat.js +87 -2
  112. package/node_modules/@buddi/gateway/dist/web/chat.js.map +1 -1
  113. package/node_modules/@buddi/gateway/dist/web/extension.d.ts +30 -0
  114. package/node_modules/@buddi/gateway/dist/web/extension.d.ts.map +1 -1
  115. package/node_modules/@buddi/gateway/dist/web/extension.js +86 -6
  116. package/node_modules/@buddi/gateway/dist/web/extension.js.map +1 -1
  117. package/node_modules/@buddi/gateway/dist/web/onboarding.js +1 -1
  118. package/node_modules/@buddi/gateway/dist/web/onboarding.js.map +1 -1
  119. package/node_modules/@buddi/gateway/dist/web/read.d.ts +2 -0
  120. package/node_modules/@buddi/gateway/dist/web/read.d.ts.map +1 -1
  121. package/node_modules/@buddi/gateway/dist/web/read.js +2 -1
  122. package/node_modules/@buddi/gateway/dist/web/read.js.map +1 -1
  123. package/node_modules/@buddi/gateway/dist/web/remote-hand.d.ts +26 -2
  124. package/node_modules/@buddi/gateway/dist/web/remote-hand.d.ts.map +1 -1
  125. package/node_modules/@buddi/gateway/dist/web/remote-hand.js +89 -28
  126. package/node_modules/@buddi/gateway/dist/web/remote-hand.js.map +1 -1
  127. package/node_modules/@buddi/gateway/dist/web/secret-request.d.ts +54 -0
  128. package/node_modules/@buddi/gateway/dist/web/secret-request.d.ts.map +1 -0
  129. package/node_modules/@buddi/gateway/dist/web/secret-request.js +264 -0
  130. package/node_modules/@buddi/gateway/dist/web/secret-request.js.map +1 -0
  131. package/node_modules/@buddi/gateway/dist/web/secrets.d.ts +1 -0
  132. package/node_modules/@buddi/gateway/dist/web/secrets.d.ts.map +1 -1
  133. package/node_modules/@buddi/gateway/dist/web/secrets.js +1 -1
  134. package/node_modules/@buddi/gateway/dist/web/secrets.js.map +1 -1
  135. package/node_modules/@buddi/gateway/dist/web/server.d.ts.map +1 -1
  136. package/node_modules/@buddi/gateway/dist/web/server.js +76 -4
  137. package/node_modules/@buddi/gateway/dist/web/server.js.map +1 -1
  138. package/node_modules/@buddi/gateway/dist/web/write.d.ts +14 -0
  139. package/node_modules/@buddi/gateway/dist/web/write.d.ts.map +1 -1
  140. package/node_modules/@buddi/gateway/dist/web/write.js +21 -0
  141. package/node_modules/@buddi/gateway/dist/web/write.js.map +1 -1
  142. package/node_modules/@buddi/install/dist/.tsbuildinfo +1 -1
  143. package/node_modules/@buddi/runtime/dist/.tsbuildinfo +1 -1
  144. package/node_modules/@buddi/runtime/dist/anthropic.d.ts +7 -0
  145. package/node_modules/@buddi/runtime/dist/anthropic.d.ts.map +1 -1
  146. package/node_modules/@buddi/runtime/dist/anthropic.js +19 -1
  147. package/node_modules/@buddi/runtime/dist/anthropic.js.map +1 -1
  148. package/node_modules/@buddi/runtime/dist/codex-direct.d.ts +1 -1
  149. package/node_modules/@buddi/runtime/dist/codex-direct.js +1 -1
  150. package/node_modules/@buddi/tool-artifacts/dist/.tsbuildinfo +1 -1
  151. package/node_modules/@buddi/tool-browser/dist/.tsbuildinfo +1 -1
  152. package/node_modules/@buddi/tool-browser/dist/controller.d.ts +16 -1
  153. package/node_modules/@buddi/tool-browser/dist/controller.d.ts.map +1 -1
  154. package/node_modules/@buddi/tool-browser/dist/controller.js +59 -5
  155. package/node_modules/@buddi/tool-browser/dist/controller.js.map +1 -1
  156. package/node_modules/@buddi/tool-browser/dist/driver.d.ts +12 -0
  157. package/node_modules/@buddi/tool-browser/dist/driver.d.ts.map +1 -1
  158. package/node_modules/@buddi/tool-browser/dist/driver.js +41 -2
  159. package/node_modules/@buddi/tool-browser/dist/driver.js.map +1 -1
  160. package/node_modules/@buddi/tool-browser/dist/extension.d.ts +49 -9
  161. package/node_modules/@buddi/tool-browser/dist/extension.d.ts.map +1 -1
  162. package/node_modules/@buddi/tool-browser/dist/extension.js +145 -21
  163. package/node_modules/@buddi/tool-browser/dist/extension.js.map +1 -1
  164. package/node_modules/@buddi/tool-browser/dist/index.d.ts +10 -6
  165. package/node_modules/@buddi/tool-browser/dist/index.d.ts.map +1 -1
  166. package/node_modules/@buddi/tool-browser/dist/index.js +22 -8
  167. package/node_modules/@buddi/tool-browser/dist/index.js.map +1 -1
  168. package/node_modules/@buddi/tool-browser/dist/routes.d.ts +10 -1
  169. package/node_modules/@buddi/tool-browser/dist/routes.d.ts.map +1 -1
  170. package/node_modules/@buddi/tool-browser/dist/routes.js +24 -0
  171. package/node_modules/@buddi/tool-browser/dist/routes.js.map +1 -1
  172. package/node_modules/@buddi/tool-browser/dist/service.d.ts +48 -1
  173. package/node_modules/@buddi/tool-browser/dist/service.d.ts.map +1 -1
  174. package/node_modules/@buddi/tool-browser/dist/service.js +114 -11
  175. package/node_modules/@buddi/tool-browser/dist/service.js.map +1 -1
  176. package/node_modules/@buddi/tool-browser/dist/types.d.ts +54 -3
  177. package/node_modules/@buddi/tool-browser/dist/types.d.ts.map +1 -1
  178. package/node_modules/@buddi/tool-browser/dist/types.js +17 -1
  179. package/node_modules/@buddi/tool-browser/dist/types.js.map +1 -1
  180. package/node_modules/@buddi/tool-email/dist/.tsbuildinfo +1 -1
  181. package/node_modules/@buddi/tool-host/dist/.tsbuildinfo +1 -1
  182. package/node_modules/@buddi/tool-mcp/dist/.tsbuildinfo +1 -1
  183. package/node_modules/@buddi/tool-memory/dist/.tsbuildinfo +1 -1
  184. package/node_modules/@buddi/tool-web/dist/.tsbuildinfo +1 -1
  185. package/node_modules/imapflow/CHANGELOG.md +30 -0
  186. package/node_modules/imapflow/dist/cjs/commands/authenticate.js +15 -4
  187. package/node_modules/imapflow/dist/cjs/commands/enable.js +6 -0
  188. package/node_modules/imapflow/dist/cjs/commands/fetch.js +22 -5
  189. package/node_modules/imapflow/dist/cjs/commands/select.d.ts +3 -14
  190. package/node_modules/imapflow/dist/cjs/commands/select.js +1 -4
  191. package/node_modules/imapflow/dist/cjs/commands/store.js +7 -6
  192. package/node_modules/imapflow/dist/cjs/download.js +139 -5
  193. package/node_modules/imapflow/dist/cjs/imap-flow.d.ts +2 -2
  194. package/node_modules/imapflow/dist/cjs/imap-flow.js +51 -12
  195. package/node_modules/imapflow/dist/cjs/package-info.d.ts +1 -1
  196. package/node_modules/imapflow/dist/cjs/package-info.js +1 -1
  197. package/node_modules/imapflow/dist/cjs/search-compiler.js +6 -3
  198. package/node_modules/imapflow/dist/cjs/tools.d.ts +14 -3
  199. package/node_modules/imapflow/dist/cjs/tools.js +68 -6
  200. package/node_modules/imapflow/dist/cjs/types.d.ts +9 -1
  201. package/node_modules/imapflow/dist/esm/commands/authenticate.js +15 -4
  202. package/node_modules/imapflow/dist/esm/commands/enable.js +6 -0
  203. package/node_modules/imapflow/dist/esm/commands/fetch.js +22 -5
  204. package/node_modules/imapflow/dist/esm/commands/select.d.ts +3 -14
  205. package/node_modules/imapflow/dist/esm/commands/select.js +1 -4
  206. package/node_modules/imapflow/dist/esm/commands/store.js +8 -7
  207. package/node_modules/imapflow/dist/esm/download.js +139 -5
  208. package/node_modules/imapflow/dist/esm/imap-flow.d.ts +2 -2
  209. package/node_modules/imapflow/dist/esm/imap-flow.js +52 -13
  210. package/node_modules/imapflow/dist/esm/package-info.d.ts +1 -1
  211. package/node_modules/imapflow/dist/esm/package-info.js +1 -1
  212. package/node_modules/imapflow/dist/esm/search-compiler.js +6 -3
  213. package/node_modules/imapflow/dist/esm/tools.d.ts +14 -3
  214. package/node_modules/imapflow/dist/esm/tools.js +67 -6
  215. package/node_modules/imapflow/dist/esm/types.d.ts +9 -1
  216. package/node_modules/imapflow/package.json +5 -3
  217. package/node_modules/playwright/README.md +4 -4
  218. package/node_modules/playwright/lib/agents/playwright-test-generator.agent.md +1 -1
  219. package/node_modules/playwright/lib/cli/testActions.js +8 -5
  220. package/node_modules/playwright/lib/common/index.js +37 -23
  221. package/node_modules/playwright/lib/common/index.js.txt +8 -9
  222. package/node_modules/playwright/lib/index.js +16 -4
  223. package/node_modules/playwright/lib/matchers/expect.js +13 -7
  224. package/node_modules/playwright/lib/matchers/expect.js.txt +4 -4
  225. package/node_modules/playwright/lib/program.js +2 -1
  226. package/node_modules/playwright/lib/runner/index.js +438 -244
  227. package/node_modules/playwright/lib/runner/index.js.txt +12 -11
  228. package/node_modules/playwright/lib/transform/babelBundle.js +2612 -2396
  229. package/node_modules/playwright/lib/transform/babelBundle.js.LICENSE +15 -15
  230. package/node_modules/playwright/lib/transform/babelBundle.js.txt +14 -11
  231. package/node_modules/playwright/lib/transform/esmLoader.js +17 -5
  232. package/node_modules/playwright/lib/transform/esmLoader.js.txt +3 -3
  233. package/node_modules/playwright/lib/worker/workerProcessEntry.js +17 -18
  234. package/node_modules/playwright/package.json +2 -7
  235. package/node_modules/playwright/types/test.d.ts +156 -39
  236. package/node_modules/playwright-core/browsers.json +9 -9
  237. package/node_modules/playwright-core/cli.js +1 -0
  238. package/node_modules/playwright-core/lib/bootstrap.js +61 -0
  239. package/node_modules/playwright-core/lib/coreBundle.js +6393 -4170
  240. package/node_modules/playwright-core/lib/server/electron/loader.js +4 -0
  241. package/node_modules/playwright-core/lib/tools/cli-client/cli.js +2 -1
  242. package/node_modules/playwright-core/lib/tools/cli-client/help.json +99 -12
  243. package/node_modules/playwright-core/lib/tools/cli-client/output.js +17 -16
  244. package/node_modules/playwright-core/lib/tools/cli-client/program.js +8 -4
  245. package/node_modules/playwright-core/lib/tools/cli-client/session.js +2 -0
  246. package/node_modules/playwright-core/lib/tools/skills/playwright-cli/SKILL.md +71 -3
  247. package/node_modules/playwright-core/lib/tools/skills/playwright-cli/references/pr-attachments.md +60 -0
  248. package/node_modules/playwright-core/lib/tools/skills/playwright-cli/references/running-code.md +4 -0
  249. package/node_modules/playwright-core/lib/tools/skills/playwright-cli/references/session-management.md +2 -0
  250. package/node_modules/playwright-core/lib/tools/skills/playwright-cli/references/test-generation.md +1 -1
  251. package/node_modules/playwright-core/lib/tools/skills/playwright-cli/references/video-recording.md +76 -3
  252. package/node_modules/playwright-core/lib/tools/skills/playwright-trace/SKILL.md +1 -1
  253. package/node_modules/playwright-core/lib/utilsBundle.js +948 -227
  254. package/node_modules/playwright-core/lib/utilsBundle.js.LICENSE +6 -6
  255. package/node_modules/playwright-core/lib/vite/htmlReport/report.js +1 -1
  256. package/node_modules/playwright-core/lib/vite/recorder/assets/{codeMirrorModule-CVQWJZAA.js → codeMirrorModule-DK72OMRi.js} +1 -1
  257. package/node_modules/playwright-core/lib/vite/recorder/assets/index-Cn0mmDuv.js +129 -0
  258. package/node_modules/playwright-core/lib/vite/recorder/index.html +1 -1
  259. package/node_modules/playwright-core/lib/vite/traceViewer/assets/{codeMirrorModule-BbkfBe3n.js → codeMirrorModule-BEB2e8M3.js} +1 -1
  260. package/node_modules/playwright-core/lib/vite/traceViewer/assets/defaultSettingsView-D-g2vrvf.js +184 -0
  261. package/node_modules/playwright-core/lib/vite/traceViewer/assets/{xtermModule-DywYcAf8.js → xtermModule-B794rD2Z.js} +1 -1
  262. package/node_modules/playwright-core/lib/vite/traceViewer/{defaultSettingsView.Bqk9acqE.css → defaultSettingsView.C8BeHuxd.css} +1 -1
  263. package/node_modules/playwright-core/lib/vite/traceViewer/{index.B4cLoZK3.js → index.7-c5LSTW.js} +1 -1
  264. package/node_modules/playwright-core/lib/vite/traceViewer/index.html +3 -3
  265. package/node_modules/playwright-core/lib/vite/traceViewer/sw.bundle.js +3 -3
  266. package/node_modules/playwright-core/lib/vite/traceViewer/{uiMode.CU5KtEkS.js → uiMode.CYwC_gH1.js} +4 -4
  267. package/node_modules/playwright-core/lib/vite/traceViewer/uiMode.html +3 -3
  268. package/node_modules/playwright-core/package.json +1 -1
  269. package/node_modules/playwright-core/types/protocol.d.ts +468 -337
  270. package/node_modules/playwright-core/types/types.d.ts +572 -37
  271. package/package.json +2 -2
  272. package/packages/cli/dist/.tsbuildinfo +1 -1
  273. package/packages/cli/dist/commands.d.ts.map +1 -1
  274. package/packages/cli/dist/commands.js +11 -1
  275. package/packages/cli/dist/commands.js.map +1 -1
  276. package/packages/core/dist/.tsbuildinfo +1 -1
  277. package/packages/core/dist/plugin/index.d.ts +1 -1
  278. package/packages/core/dist/plugin/index.d.ts.map +1 -1
  279. package/packages/core/dist/plugin/index.js.map +1 -1
  280. package/packages/core/dist/questions/store.d.ts +3 -1
  281. package/packages/core/dist/questions/store.d.ts.map +1 -1
  282. package/packages/core/dist/questions/store.js +3 -3
  283. package/packages/core/dist/questions/store.js.map +1 -1
  284. package/packages/core/dist/questions/types.d.ts +46 -1
  285. package/packages/core/dist/questions/types.d.ts.map +1 -1
  286. package/packages/core/dist/questions/types.js +2 -1
  287. package/packages/core/dist/questions/types.js.map +1 -1
  288. package/packages/core/dist/registry.d.ts.map +1 -1
  289. package/packages/core/dist/registry.js +11 -2
  290. package/packages/core/dist/registry.js.map +1 -1
  291. package/packages/core/dist/scheduler/index.d.ts +1 -0
  292. package/packages/core/dist/scheduler/index.d.ts.map +1 -1
  293. package/packages/core/dist/scheduler/index.js +1 -0
  294. package/packages/core/dist/scheduler/index.js.map +1 -1
  295. package/packages/core/dist/scheduler/manual.d.ts +50 -0
  296. package/packages/core/dist/scheduler/manual.d.ts.map +1 -0
  297. package/packages/core/dist/scheduler/manual.js +73 -0
  298. package/packages/core/dist/scheduler/manual.js.map +1 -0
  299. package/packages/core/dist/secrets/approval.d.ts +54 -0
  300. package/packages/core/dist/secrets/approval.d.ts.map +1 -1
  301. package/packages/core/dist/secrets/approval.js +58 -1
  302. package/packages/core/dist/secrets/approval.js.map +1 -1
  303. package/packages/core/dist/secrets/settings.d.ts +178 -0
  304. package/packages/core/dist/secrets/settings.d.ts.map +1 -1
  305. package/packages/core/dist/secrets/settings.js +63 -6
  306. package/packages/core/dist/secrets/settings.js.map +1 -1
  307. package/packages/core/dist/secrets/store.d.ts +31 -0
  308. package/packages/core/dist/secrets/store.d.ts.map +1 -1
  309. package/packages/core/dist/secrets/store.js +75 -0
  310. package/packages/core/dist/secrets/store.js.map +1 -1
  311. package/packages/core/dist/secrets/use.d.ts.map +1 -1
  312. package/packages/core/dist/secrets/use.js +68 -3
  313. package/packages/core/dist/secrets/use.js.map +1 -1
  314. package/packages/core/dist/tools.d.ts +22 -0
  315. package/packages/core/dist/tools.d.ts.map +1 -1
  316. package/packages/core/dist/tools.js.map +1 -1
  317. package/packages/core/migrations/080_secret_requests.sql +14 -0
  318. package/packages/gateway/dist/.tsbuildinfo +1 -1
  319. package/packages/gateway/dist/chat/session.d.ts.map +1 -1
  320. package/packages/gateway/dist/chat/session.js +2 -1
  321. package/packages/gateway/dist/chat/session.js.map +1 -1
  322. package/packages/gateway/dist/mcp/requests.d.ts.map +1 -1
  323. package/packages/gateway/dist/mcp/requests.js +9 -1
  324. package/packages/gateway/dist/mcp/requests.js.map +1 -1
  325. package/packages/gateway/dist/missions/execute.d.ts.map +1 -1
  326. package/packages/gateway/dist/missions/execute.js +3 -1
  327. package/packages/gateway/dist/missions/execute.js.map +1 -1
  328. package/packages/gateway/dist/missions/reminders.d.ts +7 -2
  329. package/packages/gateway/dist/missions/reminders.d.ts.map +1 -1
  330. package/packages/gateway/dist/missions/reminders.js +27 -9
  331. package/packages/gateway/dist/missions/reminders.js.map +1 -1
  332. package/packages/gateway/dist/missions/run-now.d.ts +38 -0
  333. package/packages/gateway/dist/missions/run-now.d.ts.map +1 -0
  334. package/packages/gateway/dist/missions/run-now.js +62 -0
  335. package/packages/gateway/dist/missions/run-now.js.map +1 -0
  336. package/packages/gateway/dist/missions-cli.d.ts +1 -1
  337. package/packages/gateway/dist/missions-cli.d.ts.map +1 -1
  338. package/packages/gateway/dist/missions-cli.js +21 -10
  339. package/packages/gateway/dist/missions-cli.js.map +1 -1
  340. package/packages/gateway/dist/serve.d.ts +3 -12
  341. package/packages/gateway/dist/serve.d.ts.map +1 -1
  342. package/packages/gateway/dist/serve.js +2 -21
  343. package/packages/gateway/dist/serve.js.map +1 -1
  344. package/packages/gateway/dist/surfaces/browser-cards.d.ts +15 -3
  345. package/packages/gateway/dist/surfaces/browser-cards.d.ts.map +1 -1
  346. package/packages/gateway/dist/surfaces/browser-cards.js +34 -7
  347. package/packages/gateway/dist/surfaces/browser-cards.js.map +1 -1
  348. package/packages/gateway/dist/surfaces/offered-actions.d.ts.map +1 -1
  349. package/packages/gateway/dist/surfaces/offered-actions.js +8 -2
  350. package/packages/gateway/dist/surfaces/offered-actions.js.map +1 -1
  351. package/packages/gateway/dist/surfaces/pending-question.d.ts +3 -1
  352. package/packages/gateway/dist/surfaces/pending-question.d.ts.map +1 -1
  353. package/packages/gateway/dist/surfaces/pending-question.js.map +1 -1
  354. package/packages/gateway/dist/surfaces/secret-request.d.ts +173 -0
  355. package/packages/gateway/dist/surfaces/secret-request.d.ts.map +1 -0
  356. package/packages/gateway/dist/surfaces/secret-request.js +332 -0
  357. package/packages/gateway/dist/surfaces/secret-request.js.map +1 -0
  358. package/packages/gateway/dist/system-context.js +1 -1
  359. package/packages/gateway/dist/system-context.js.map +1 -1
  360. package/packages/gateway/dist/telegram/main.d.ts.map +1 -1
  361. package/packages/gateway/dist/telegram/main.js +14 -3
  362. package/packages/gateway/dist/telegram/main.js.map +1 -1
  363. package/packages/gateway/dist/telegram/surface.d.ts.map +1 -1
  364. package/packages/gateway/dist/telegram/surface.js +4 -1
  365. package/packages/gateway/dist/telegram/surface.js.map +1 -1
  366. package/packages/gateway/dist/web/api-routes.d.ts.map +1 -1
  367. package/packages/gateway/dist/web/api-routes.js +16 -1
  368. package/packages/gateway/dist/web/api-routes.js.map +1 -1
  369. package/packages/gateway/dist/web/approval-ask.js +2 -2
  370. package/packages/gateway/dist/web/approval-ask.js.map +1 -1
  371. package/packages/gateway/dist/web/browser-capture.d.ts +13 -0
  372. package/packages/gateway/dist/web/browser-capture.d.ts.map +1 -0
  373. package/packages/gateway/dist/web/browser-capture.js +24 -0
  374. package/packages/gateway/dist/web/browser-capture.js.map +1 -0
  375. package/packages/gateway/dist/web/chat.d.ts +26 -0
  376. package/packages/gateway/dist/web/chat.d.ts.map +1 -1
  377. package/packages/gateway/dist/web/chat.js +87 -2
  378. package/packages/gateway/dist/web/chat.js.map +1 -1
  379. package/packages/gateway/dist/web/extension.d.ts +30 -0
  380. package/packages/gateway/dist/web/extension.d.ts.map +1 -1
  381. package/packages/gateway/dist/web/extension.js +86 -6
  382. package/packages/gateway/dist/web/extension.js.map +1 -1
  383. package/packages/gateway/dist/web/onboarding.js +1 -1
  384. package/packages/gateway/dist/web/onboarding.js.map +1 -1
  385. package/packages/gateway/dist/web/read.d.ts +2 -0
  386. package/packages/gateway/dist/web/read.d.ts.map +1 -1
  387. package/packages/gateway/dist/web/read.js +2 -1
  388. package/packages/gateway/dist/web/read.js.map +1 -1
  389. package/packages/gateway/dist/web/remote-hand.d.ts +26 -2
  390. package/packages/gateway/dist/web/remote-hand.d.ts.map +1 -1
  391. package/packages/gateway/dist/web/remote-hand.js +89 -28
  392. package/packages/gateway/dist/web/remote-hand.js.map +1 -1
  393. package/packages/gateway/dist/web/secret-request.d.ts +54 -0
  394. package/packages/gateway/dist/web/secret-request.d.ts.map +1 -0
  395. package/packages/gateway/dist/web/secret-request.js +264 -0
  396. package/packages/gateway/dist/web/secret-request.js.map +1 -0
  397. package/packages/gateway/dist/web/secrets.d.ts +1 -0
  398. package/packages/gateway/dist/web/secrets.d.ts.map +1 -1
  399. package/packages/gateway/dist/web/secrets.js +1 -1
  400. package/packages/gateway/dist/web/secrets.js.map +1 -1
  401. package/packages/gateway/dist/web/server.d.ts.map +1 -1
  402. package/packages/gateway/dist/web/server.js +76 -4
  403. package/packages/gateway/dist/web/server.js.map +1 -1
  404. package/packages/gateway/dist/web/write.d.ts +14 -0
  405. package/packages/gateway/dist/web/write.d.ts.map +1 -1
  406. package/packages/gateway/dist/web/write.js +21 -0
  407. package/packages/gateway/dist/web/write.js.map +1 -1
  408. package/packages/install/dist/.tsbuildinfo +1 -1
  409. package/packages/runtime/dist/.tsbuildinfo +1 -1
  410. package/packages/runtime/dist/anthropic.d.ts +7 -0
  411. package/packages/runtime/dist/anthropic.d.ts.map +1 -1
  412. package/packages/runtime/dist/anthropic.js +19 -1
  413. package/packages/runtime/dist/anthropic.js.map +1 -1
  414. package/packages/runtime/dist/codex-direct.d.ts +1 -1
  415. package/packages/runtime/dist/codex-direct.js +1 -1
  416. package/packages/tools/artifacts/dist/.tsbuildinfo +1 -1
  417. package/packages/tools/browser/dist/.tsbuildinfo +1 -1
  418. package/packages/tools/browser/dist/controller.d.ts +16 -1
  419. package/packages/tools/browser/dist/controller.d.ts.map +1 -1
  420. package/packages/tools/browser/dist/controller.js +59 -5
  421. package/packages/tools/browser/dist/controller.js.map +1 -1
  422. package/packages/tools/browser/dist/driver.d.ts +12 -0
  423. package/packages/tools/browser/dist/driver.d.ts.map +1 -1
  424. package/packages/tools/browser/dist/driver.js +41 -2
  425. package/packages/tools/browser/dist/driver.js.map +1 -1
  426. package/packages/tools/browser/dist/extension.d.ts +49 -9
  427. package/packages/tools/browser/dist/extension.d.ts.map +1 -1
  428. package/packages/tools/browser/dist/extension.js +145 -21
  429. package/packages/tools/browser/dist/extension.js.map +1 -1
  430. package/packages/tools/browser/dist/index.d.ts +10 -6
  431. package/packages/tools/browser/dist/index.d.ts.map +1 -1
  432. package/packages/tools/browser/dist/index.js +22 -8
  433. package/packages/tools/browser/dist/index.js.map +1 -1
  434. package/packages/tools/browser/dist/routes.d.ts +10 -1
  435. package/packages/tools/browser/dist/routes.d.ts.map +1 -1
  436. package/packages/tools/browser/dist/routes.js +24 -0
  437. package/packages/tools/browser/dist/routes.js.map +1 -1
  438. package/packages/tools/browser/dist/service.d.ts +48 -1
  439. package/packages/tools/browser/dist/service.d.ts.map +1 -1
  440. package/packages/tools/browser/dist/service.js +114 -11
  441. package/packages/tools/browser/dist/service.js.map +1 -1
  442. package/packages/tools/browser/dist/types.d.ts +54 -3
  443. package/packages/tools/browser/dist/types.d.ts.map +1 -1
  444. package/packages/tools/browser/dist/types.js +17 -1
  445. package/packages/tools/browser/dist/types.js.map +1 -1
  446. package/packages/tools/email/dist/.tsbuildinfo +1 -1
  447. package/packages/tools/host/dist/.tsbuildinfo +1 -1
  448. package/packages/tools/mcp/dist/.tsbuildinfo +1 -1
  449. package/packages/tools/memory/dist/.tsbuildinfo +1 -1
  450. package/packages/tools/web/dist/.tsbuildinfo +1 -1
  451. package/packages/web/dist/assets/index-oxmxR39o.js +155 -0
  452. package/packages/web/dist/assets/index-rMRjibNI.css +1 -0
  453. package/packages/web/dist/assets/{lottie_light-BJaxbmZQ.js → lottie_light-DROBTM6Y.js} +1 -1
  454. package/packages/web/dist/build.json +1 -1
  455. package/packages/web/dist/index.html +2 -2
  456. package/packages/web/dist/precache.json +4 -4
  457. package/node_modules/playwright/jsx-runtime.js +0 -42
  458. package/node_modules/playwright/jsx-runtime.mjs +0 -21
  459. package/node_modules/playwright-core/lib/vite/recorder/assets/index-hrlLqLtq.js +0 -129
  460. package/node_modules/playwright-core/lib/vite/traceViewer/assets/defaultSettingsView-Ds6CBOo0.js +0 -182
  461. package/packages/web/dist/assets/index-DBVZzTau.css +0 -1
  462. package/packages/web/dist/assets/index-DqoP9iYJ.js +0 -155
@@ -0,0 +1,264 @@
1
+ import { createAction, decideApproval, describeSecretSetUse, executeApproved, getQuestion, OWNER_AGENT_ID, SECRETS_SET_TOOL, SECRETS_TOOL_VERSION, VAULT_LOCKED_SAVE, } from '@buddi/core';
2
+ import { normalizeSite, outcomeStamp, outcomeTurnText, requestOrigins, secretNameFor, } from '../surfaces/secret-request.js';
3
+ import { WEB_SURFACE, WEB_WORKER } from './write.js';
4
+ const reply = (status, body) => ({ status, body });
5
+ /** The field kinds a card's row may be. */
6
+ const KINDS = new Set(['username', 'password', 'totp', 'other']);
7
+ function postedFields(raw) {
8
+ if (!Array.isArray(raw) || raw.length === 0)
9
+ return 'Send the fields to save: [{ label, kind, value }].';
10
+ if (raw.length > 12)
11
+ return 'At most 12 fields at once.';
12
+ const out = [];
13
+ for (const item of raw) {
14
+ const { label, kind, value } = (item ?? {});
15
+ if (typeof label !== 'string' || label.trim() === '' || label.length > 60)
16
+ return 'Each field needs a label of up to 60 characters.';
17
+ if (typeof kind !== 'string' || !KINDS.has(kind))
18
+ return 'Each field\'s kind is username, password, totp or other.';
19
+ if (typeof value !== 'string')
20
+ return `"${label.trim()}" needs a value.`;
21
+ // An empty row is a row the owner left blank: skipped, not an error.
22
+ if (value.trim() === '')
23
+ continue;
24
+ if (value.length > 16_384)
25
+ return `"${label.trim()}" is too long.`;
26
+ out.push({ label: label.trim().replace(/\s+/g, ' '), kind: kind, value });
27
+ }
28
+ if (out.length === 0)
29
+ return 'Type at least one value.';
30
+ return out;
31
+ }
32
+ /** Names already taken, so a new one gets " 2" rather than overwriting an old secret. */
33
+ async function uniqueNames(pool, wanted) {
34
+ const { rows } = await pool.query(`select lower(name) as name from core.secrets`);
35
+ const taken = new Set(rows.map((row) => row.name));
36
+ return wanted.map((name) => {
37
+ let candidate = name;
38
+ for (let n = 2; taken.has(candidate.toLowerCase()); n += 1)
39
+ candidate = `${name} ${n}`;
40
+ taken.add(candidate.toLowerCase());
41
+ return candidate;
42
+ });
43
+ }
44
+ /** The card this question is, when it is an open `secret.request`. */
45
+ function openRequest(question, now) {
46
+ if (!question)
47
+ return 'That card is gone.';
48
+ if (question.answeredAt || Date.parse(question.expiresAt) <= now.getTime())
49
+ return 'That card is no longer waiting.';
50
+ if (question.request?.kind !== 'secret.request')
51
+ return 'That card is not a sign-in card.';
52
+ return { question, card: question.request };
53
+ }
54
+ /** Claim the card so a second press (another tab, a double tap) saves nothing twice. */
55
+ async function claim(pool, id, now) {
56
+ const { rows } = await pool.query(`update core.questions set answered_at = $2, answered_via = $3 where id = $1 and answered_at is null and expires_at > $2 returning id`, [id, now, WEB_SURFACE]);
57
+ return rows.length > 0;
58
+ }
59
+ /** Put the card back when the save it claimed for did not happen (a locked vault). */
60
+ async function unclaim(pool, id) {
61
+ await pool.query(`update core.questions set answered_at = null, answered_via = null where id = $1`, [id]);
62
+ }
63
+ /** Record what came of the card on its row: the outcome, names only. */
64
+ async function settle(pool, id, outcome) {
65
+ await pool.query(`update core.questions set answer = $2 where id = $1`, [id, JSON.stringify(outcome)]);
66
+ }
67
+ /** The ids of each saved secret's `browser.field` bindings — the page, the site, `*.` the site — by name. */
68
+ async function fieldBindings(pool, names) {
69
+ const { rows } = await pool.query(`select s.name, b.id::text as id from core.secrets s join core.secret_bindings b on b.secret_id = s.id
70
+ where s.name = any($1::text[]) and b.kind = 'browser.field' order by b.created_at, b.id`, [names]);
71
+ const out = new Map();
72
+ for (const row of rows)
73
+ out.set(row.name, [...(out.get(row.name) ?? []), row.id]);
74
+ return out;
75
+ }
76
+ /**
77
+ * `POST /api/secrets` — a set of secrets for one site, saved in one call.
78
+ *
79
+ * `{ site, fields: [{ label, kind, value }] }` saves them, named after the site
80
+ * and each label ("Wikipedia password"), bound as `browser.field` to the site
81
+ * and every host under it, asking the first time. With `questionId` the site
82
+ * and the places come from that card, and `then` says what follows:
83
+ * `fill` (Save and fill) or `save` (Save only, and the owner gets the page).
84
+ */
85
+ export async function saveSecretSet(deps, body) {
86
+ if (typeof body !== 'object' || body === null)
87
+ return reply(400, { error: 'Send `{ site, fields }`.' });
88
+ const input = body;
89
+ const fields = postedFields(input.fields);
90
+ if (typeof fields === 'string')
91
+ return reply(400, { error: fields });
92
+ const now = deps.now();
93
+ const questionId = typeof input.questionId === 'string' ? input.questionId : undefined;
94
+ const then = input.then === 'fill' ? 'fill' : 'save';
95
+ let site;
96
+ let origins;
97
+ let request;
98
+ if (questionId !== undefined) {
99
+ if (!/^[0-9a-f-]{36}$/i.test(questionId))
100
+ return reply(400, { error: 'questionId is a card id.' });
101
+ const open = openRequest(await getQuestion(deps.pool, questionId), now);
102
+ if (typeof open === 'string')
103
+ return reply(409, { error: open });
104
+ request = open;
105
+ site = open.card.site;
106
+ origins = open.card.origins;
107
+ }
108
+ else {
109
+ site = normalizeSite(typeof input.site === 'string' ? input.site : undefined);
110
+ if (!site)
111
+ return reply(400, { error: 'Name the site, like wikipedia.org.' });
112
+ origins = requestOrigins(site, undefined);
113
+ }
114
+ const names = await uniqueNames(deps.pool, fields.map((field) => secretNameFor(site, field.label)));
115
+ const bindings = origins.map((origin) => ({ kind: 'browser.field', target: origin, rule: 'first-time' }));
116
+ if (request && !(await claim(deps.pool, request.question.id, now)))
117
+ return reply(409, { error: 'That card is no longer waiting.' });
118
+ const saved = await deps.registry.invoke('secrets.put_set', {
119
+ site,
120
+ ...(request ? { conversationId: request.question.conversationId } : {}),
121
+ items: fields.map((field, index) => ({ name: names[index], value: field.value, totp: field.kind === 'totp', bindings })),
122
+ }, { ...deps.ctx, agentId: OWNER_AGENT_ID, db: deps.pool, now: deps.now });
123
+ if (!saved.ok) {
124
+ if (request)
125
+ await unclaim(deps.pool, request.question.id).catch(() => undefined);
126
+ if (saved.message === VAULT_LOCKED_SAVE) {
127
+ return reply(409, { error: VAULT_LOCKED_SAVE, locked: true });
128
+ }
129
+ return reply(400, { error: saved.message });
130
+ }
131
+ const savedNames = saved.output.names;
132
+ if (!request)
133
+ return reply(200, { saved: savedNames, site });
134
+ const { question, card } = request;
135
+ let filled = false;
136
+ const report = [];
137
+ if (then === 'fill') {
138
+ filled = await approveAndFill(deps, { question, card, fields, names: savedNames }, report);
139
+ }
140
+ else {
141
+ await deps.browser?.handOver?.({ conversationId: question.conversationId, agentId: question.agentId }).catch(() => false);
142
+ }
143
+ const outcome = { saved: savedNames, filled, ...(report.length > 0 ? { fields: report } : {}) };
144
+ await settle(deps.pool, question.id, outcome).catch(() => undefined);
145
+ const stamp = outcomeStamp(outcome, card.site, fields.map((field) => field.label));
146
+ await deps.carryOn?.({
147
+ conversationId: question.conversationId,
148
+ agentId: question.agentId,
149
+ text: outcomeTurnText(outcome, { filling: then === 'fill' }),
150
+ stamp,
151
+ }).catch((err) => deps.log?.(`secrets: carrying on after the sign-in card failed: ${err instanceof Error ? err.message : String(err)}`));
152
+ return reply(200, { saved: savedNames, filled, stamp });
153
+ }
154
+ /**
155
+ * Save and fill, after the save: one approval for the set (the press is the
156
+ * owner's yes), then each field the agent named filled through `secret.fill`
157
+ * as that agent. A field that looked like a card number, a CVV, an SSN or a
158
+ * one-time code is left out of both: it asks on its own first use.
159
+ */
160
+ async function approveAndFill(deps, input, report = []) {
161
+ const { question, card } = input;
162
+ const plan = input.fields.map((field, index) => {
163
+ const asked = card.fields.find((candidate) => candidate.label.toLowerCase() === field.label.toLowerCase());
164
+ return { name: input.names[index], label: field.label, page: asked?.name ?? asked?.label, ref: asked?.ref, warned: Boolean(asked?.warning) };
165
+ }).filter((item) => !item.warned);
166
+ if (plan.length === 0)
167
+ return false;
168
+ const bindings = await fieldBindings(deps.pool, plan.map((item) => item.name));
169
+ const items = plan.flatMap((item) => {
170
+ const [bindingId, ...alsoBindingIds] = bindings.get(item.name) ?? [];
171
+ return bindingId ? [{ bindingId, ...(alsoBindingIds.length > 0 ? { alsoBindingIds } : {}), secret: item.name, kind: 'browser.field', field: item.label.slice(0, 80) }] : [];
172
+ });
173
+ if (items.length === 0)
174
+ return false;
175
+ const args = { site: card.site, plugin: 'browser', items };
176
+ const described = describeSecretSetUse(args);
177
+ const now = deps.now();
178
+ const action = await createAction(deps.pool, {
179
+ tool: SECRETS_SET_TOOL,
180
+ toolVersion: SECRETS_TOOL_VERSION,
181
+ agentId: question.agentId,
182
+ conversationId: question.conversationId,
183
+ canonicalArgs: args,
184
+ envelope: described.envelope,
185
+ preview: described.preview,
186
+ tier: 'gated',
187
+ now,
188
+ });
189
+ const decided = await decideApproval(deps.pool, { actionId: action.id, decision: 'approved', by: deps.ctx.ownerId, via: WEB_SURFACE, now, registry: deps.registry });
190
+ if (!decided.ok) {
191
+ deps.log?.(`secrets: the set's approval could not be recorded: ${decided.message}`);
192
+ return false;
193
+ }
194
+ const executed = await executeApproved(deps.pool, {
195
+ actionId: action.id,
196
+ registry: deps.registry,
197
+ ctx: { ...deps.ctx, db: deps.pool, now: deps.now },
198
+ worker: WEB_WORKER,
199
+ now,
200
+ });
201
+ if (!executed.ok) {
202
+ deps.log?.(`secrets: the set's approval did not go through: ${executed.message}`);
203
+ return false;
204
+ }
205
+ // Approved for the set. Each field is filled by its label on the latest page (refs move once a fill
206
+ // redraws the page), its ref the fallback; one the agent named neither for is the agent's to fill.
207
+ const fillable = plan.filter((item) => item.page || item.ref);
208
+ for (const item of plan)
209
+ report.push({ name: item.name, label: item.page ?? item.label, ...(item.ref ? { ref: item.ref } : {}), filled: false });
210
+ if (fillable.length === 0)
211
+ return false;
212
+ let all = fillable.length === plan.length;
213
+ for (const item of fillable) {
214
+ const result = await deps.registry.invoke('secret.fill', { name: item.name, ...(item.page ? { label: item.page } : {}), ...(item.ref ? { ref: item.ref } : {}) }, {
215
+ ...deps.ctx,
216
+ agentId: question.agentId,
217
+ conversationId: question.conversationId,
218
+ db: deps.pool,
219
+ now: deps.now,
220
+ });
221
+ const output = result.ok ? result.output : null;
222
+ if (!result.ok || output?.filled !== true) {
223
+ all = false;
224
+ deps.log?.(`secrets: filling "${item.name}" after Save and fill did not go through${result.ok ? '' : `: ${result.message}`}`);
225
+ continue;
226
+ }
227
+ const done = report.find((entry) => entry.name === item.name);
228
+ if (done) {
229
+ done.filled = true;
230
+ if (typeof output.ref === 'string')
231
+ done.ref = output.ref;
232
+ }
233
+ }
234
+ return all;
235
+ }
236
+ /**
237
+ * `POST /api/secrets/request/decline` — `{ questionId, reason }`: "I'll sign in
238
+ * myself" hands the page to the owner the way Take over does; `cancelled`
239
+ * just closes the card. The agent hears `{ declined: reason }`.
240
+ */
241
+ export async function declineSecretRequest(deps, body) {
242
+ const input = (typeof body === 'object' && body !== null ? body : {});
243
+ const questionId = typeof input.questionId === 'string' ? input.questionId : '';
244
+ if (!/^[0-9a-f-]{36}$/i.test(questionId))
245
+ return reply(400, { error: 'questionId is a card id.' });
246
+ const reason = input.reason === 'cancelled' ? 'cancelled' : 'sign-in-myself';
247
+ const now = deps.now();
248
+ const open = openRequest(await getQuestion(deps.pool, questionId), now);
249
+ if (typeof open === 'string')
250
+ return reply(409, { error: open });
251
+ if (!(await claim(deps.pool, questionId, now)))
252
+ return reply(409, { error: 'That card is no longer waiting.' });
253
+ const { question, card } = open;
254
+ if (reason === 'sign-in-myself') {
255
+ await deps.browser?.handOver?.({ conversationId: question.conversationId, agentId: question.agentId }).catch(() => false);
256
+ }
257
+ const outcome = { declined: reason };
258
+ await settle(deps.pool, questionId, outcome).catch(() => undefined);
259
+ const stamp = outcomeStamp(outcome, card.site, []);
260
+ await deps.carryOn?.({ conversationId: question.conversationId, agentId: question.agentId, text: outcomeTurnText(outcome), stamp })
261
+ .catch((err) => deps.log?.(`secrets: carrying on after the sign-in card failed: ${err instanceof Error ? err.message : String(err)}`));
262
+ return reply(200, { declined: reason, stamp });
263
+ }
264
+ //# sourceMappingURL=secret-request.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"secret-request.js","sourceRoot":"","sources":["../../src/web/secret-request.ts"],"names":[],"mappings":"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"}
@@ -25,6 +25,7 @@ export interface RouteReply {
25
25
  status: number;
26
26
  body: unknown;
27
27
  }
28
+ export declare function writeRateLimited(session: string, at: number): boolean;
28
29
  /**
29
30
  * What holds a secret by name: the thing whose row says "my credential is the
30
31
  * owner secret called this". The page names a secret by it (a mailbox's
@@ -1 +1 @@
1
- {"version":3,"file":"secrets.d.ts","sourceRoot":"","sources":["../../src/web/secrets.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"secrets.d.ts","sourceRoot":"","sources":["../../src/web/secrets.ts"],"names":[],"mappings":"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"}
@@ -6,7 +6,7 @@ import { mailProvider } from './recovery.js';
6
6
  const reply = (status, body) => ({ status, body });
7
7
  /** Writes from one session: the act route's own budget, reused here. */
8
8
  const lastWrite = new Map();
9
- function writeRateLimited(session, at) {
9
+ export function writeRateLimited(session, at) {
10
10
  const last = lastWrite.get(session) ?? 0;
11
11
  if (at - last < 1_000)
12
12
  return true;
@@ -1 +1 @@
1
- {"version":3,"file":"secrets.js","sourceRoot":"","sources":["../../src/web/secrets.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"secrets.js","sourceRoot":"","sources":["../../src/web/secrets.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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"}
@@ -65,7 +65,8 @@ import { OnboardingRefusal, hasOwnerAgent, WEB_ONBOARDING_STEPS, WEB_ONBOARDING_
65
65
  import { TakeOnRefusal, readTakeOn, readTakeOnOffers, startTakeOn } from './take-on.js';
66
66
  import { TelegramWebError, saveTelegramToken, telegramBot, telegramDevices, telegramPairing, telegramStatus, unpairTelegramDevice, } from './telegram.js';
67
67
  import { PAGE_ROUTE, sendPageFile, actOnPage, actRateLimited, listPageDescriptors, runPageQuery, } from './pages.js';
68
- import { listSecrets, ownerLoginKey, ownerLoginNames, ownerLoginStore, secretUses, secretsAct } from './secrets.js';
68
+ import { listSecrets, ownerLoginKey, ownerLoginNames, ownerLoginStore, secretUses, secretsAct, writeRateLimited } from './secrets.js';
69
+ import { declineSecretRequest, saveSecretSet } from './secret-request.js';
69
70
  import { sayRoute, transcribeRoute } from './speech.js';
70
71
  import { createServer } from 'node:http';
71
72
  import { asksEachTime, getAction, idleRolloverMs, inRecovery, listMissions, listPendingActions, isJobState, parseAgentFile, setSentinelEnabled, snoozeFinding, snoozeFindings, unmuteFindings } from '@buddi/core';
@@ -77,7 +78,8 @@ import { hostService } from '@buddi/tool-host';
77
78
  import { listToolPermissions, revokeToolPermission, getArtifact, readArtifactBytes, artifactBytesExist, discardUnreferencedUpload, listLibrary, getLibraryEntry, decodeCursor, filterKey, textPreviewable, readArtifactPrefix, FILE_FAMILIES, LIBRARY_PAGE_MAX, getOwnerProfile, saveOwnerProfile, listGroups, getGroup, createGroup, updateGroup, archiveGroup, deleteGroup, restoreGroup, clearGroupHistory, groupHistorySize, GROUP_UNDO_MS, GroupRefusal, createGroupConversation, listGroupConversations, latestGroupConversation, openGroupRequest, conversationGroup } from '@buddi/core';
78
79
  import { EXPORT_MIME, MAX_EXPORT_SOURCE_BYTES, exportFormats, exportName } from '../export/document.js';
79
80
  import { ExportRefused, runExport } from '../export/convert.js';
80
- import { createVault, saveArtifactReporting } from '@buddi/core';
81
+ import { createVault, saveArtifactReporting, recordArtifactUse } from '@buddi/core';
82
+ import { captureFilename } from './browser-capture.js';
81
83
  import { beginOnboarding, completeOnboarding, getOnboarding, markStepDone, setOnboardingDetails, skipOnboarding, readWebSetting, writeWebSetting, isAssetKey, readPluginAsset } from '@buddi/core';
82
84
  import { listMemory, setPreference, forgetPreference, updateNote, forgetNote } from '@buddi/tool-memory';
83
85
  import { purgeGroups, stopGroupWork } from './group-lifecycle.js';
@@ -151,7 +153,7 @@ import { createEngagementHooks } from '../missions/engagement.js';
151
153
  import { apiTokensRoute, bearerOf, verifyApiToken } from './api-tokens.js';
152
154
  import { LockImageRefusal, MAX_LOCK_IMAGE_BYTES, normaliseLockImage } from './lock-image.js';
153
155
  import { lockPicturesFrom } from './lock-backgrounds.js';
154
- import { cancelJobFromWeb, cancelReminderFromWeb, decideApprovalFromWeb, retryJobFromWeb, retryJobsFromWeb, dismissJobsFromWeb, undismissJobsFromWeb, setMissionEnabledFromWeb, setMissionChromeFromWeb, keepMissionFromWeb, answerStillUsefulFromWeb, setPausedFromWeb, setScheduleFromWeb, dismissOfferFromWeb, dismissOffersFromWeb, takeOfferFromWeb, } from './write.js';
156
+ import { cancelJobFromWeb, cancelReminderFromWeb, decideApprovalFromWeb, retryJobFromWeb, retryJobsFromWeb, dismissJobsFromWeb, undismissJobsFromWeb, setMissionEnabledFromWeb, setMissionChromeFromWeb, runMissionNowFromWeb, keepMissionFromWeb, answerStillUsefulFromWeb, setPausedFromWeb, setScheduleFromWeb, dismissOfferFromWeb, dismissOffersFromWeb, takeOfferFromWeb, } from './write.js';
155
157
  /** How long one account's connection test answers again instead of calling the provider. */
156
158
  const ACCOUNT_TEST_COOLDOWN_MS = 10_000;
157
159
  /** How often approvals past their expiry are swept, and waiting delegations told. */
@@ -489,7 +491,11 @@ export function createWebApp(deps) {
489
491
  void (async () => {
490
492
  if (await resumeParkedForPage(deps.pool, info.conversationId, deps.now()))
491
493
  return;
492
- await chat?.continueAfterGiveBack({ conversationId: info.conversationId, agentId: info.agentId });
494
+ // Only a turn that waited on the page carries on; a page taken from an idle agent is stamped, with no model call.
495
+ if (info.waiting)
496
+ await chat?.continueAfterGiveBack({ conversationId: info.conversationId, agentId: info.agentId });
497
+ else
498
+ await chat?.stampGiveBack({ conversationId: info.conversationId });
493
499
  })().catch((err) => log(`browser: carrying on after the page was given back failed: ${err instanceof Error ? err.message : String(err)}`));
494
500
  });
495
501
  /*
@@ -1289,6 +1295,11 @@ export function createWebApp(deps) {
1289
1295
  });
1290
1296
  /** The Keys and secrets page (docs/owner-secrets.md §6): core's own queries and ownerOnly tools. */
1291
1297
  const secretsDeps = () => ({ pool: deps.pool, registry: deps.registry, ctx: deps.ctx, now: deps.now, ...(browser.logins ? { logins: browser.logins } : {}) });
1298
+ /** An agent's sign-in card (web/secret-request.ts): the set saved, the page handed over, the agent carried on. */
1299
+ const secretRequestDeps = () => ({
1300
+ pool: deps.pool, registry: deps.registry, ctx: deps.ctx, now: deps.now, log, browser,
1301
+ ...(chat ? { carryOn: (input) => chat.continueWithStamp(input) } : {}),
1302
+ });
1292
1303
  /** Talking to buddi on the dashboard: the speech plugin's two tools, as the owner. */
1293
1304
  const speechDeps = () => ({ pool: deps.pool, registry: deps.registry, ctx: deps.ctx, now: deps.now, agents: () => deps.catalog.list() });
1294
1305
  /** The same, for the version and upgrade routes. */
@@ -3026,6 +3037,54 @@ export function createWebApp(deps) {
3026
3037
  return sendJson(res, 409, { error: 'buddi could not keep that login. Add it in Settings → Keys and secrets.' });
3027
3038
  }
3028
3039
  }
3040
+ /*
3041
+ * Capture: the page as it is now, at full resolution, saved to the owner's
3042
+ * Files under its title and the time (docs/browser.md, "Capture"). Whoever
3043
+ * holds the page; it is not one of the agent's steps.
3044
+ */
3045
+ if (path === '/api/browser/capture') {
3046
+ const body = await readJsonBody(req);
3047
+ if (typeof body?.sessionId !== 'string' || body.sessionId.length > 200)
3048
+ return sendJson(res, 400, { error: 'Name the page to capture: { sessionId }.' });
3049
+ if (!browser.capture)
3050
+ return sendJson(res, 409, { error: 'This host can’t capture a page.' });
3051
+ let shot;
3052
+ try {
3053
+ shot = await browser.capture(body.sessionId);
3054
+ }
3055
+ catch (error) {
3056
+ return sendJson(res, 409, { error: error instanceof Error ? error.message : String(error) });
3057
+ }
3058
+ const filename = captureFilename({ title: shot.title, url: shot.url, at: deps.now(), timezone: deps.timezone });
3059
+ const { row } = await saveArtifactReporting(deps.pool, {
3060
+ bytes: shot.png, mime: 'image/png', filename, caption: shot.url ? `Captured from ${shot.url}` : 'Captured in the browser',
3061
+ source: { surface: 'browser', chatId: null, messageId: null }, createdBy: deps.ctx.ownerId, conversationId: shot.conversationId,
3062
+ }, deps.env ?? process.env);
3063
+ // Owner-made with no use recorded is "an upload nobody sent yet" to the
3064
+ // library, which hides it; a capture is a file of this conversation.
3065
+ if (shot.conversationId)
3066
+ await recordArtifactUse(deps.pool, { artifactId: row.id, conversationId: shot.conversationId, kind: 'produced', at: deps.now() });
3067
+ return sendJson(res, 200, { artifactId: row.id, name: row.filename ?? filename, mime: row.mime });
3068
+ }
3069
+ /*
3070
+ * Bring the tab to the front: a page in the owner's Chrome that they hold,
3071
+ * for when they are at the machine. The remote hand ends first; the page
3072
+ * is in front of them instead.
3073
+ */
3074
+ if (path === '/api/browser/front') {
3075
+ const body = await readJsonBody(req);
3076
+ if (typeof body?.sessionId !== 'string' || body.sessionId.length > 200)
3077
+ return sendJson(res, 400, { error: 'Name the page to bring forward: { sessionId }.' });
3078
+ if (!browser.front)
3079
+ return sendJson(res, 409, { error: 'This host has no tab to bring to the front.' });
3080
+ try {
3081
+ await hand.close(body.sessionId, 'The tab is in front of you in Chrome.');
3082
+ return sendJson(res, 200, { ...await browser.front(body.sessionId), hand: false });
3083
+ }
3084
+ catch (error) {
3085
+ return sendJson(res, 409, { error: error instanceof Error ? error.message : String(error) });
3086
+ }
3087
+ }
3029
3088
  const control = /^\/api\/browser\/(stop|takeover|resume|release)$/.exec(path);
3030
3089
  if (control) {
3031
3090
  const body = await readJsonBody(req);
@@ -3371,6 +3430,9 @@ export function createWebApp(deps) {
3371
3430
  }
3372
3431
  return finish(res, await setMissionEnabledFromWeb(writeDeps, decodeURIComponent(missionEnabled[1]), enabled));
3373
3432
  }
3433
+ const missionRun = /^\/api\/missions\/([^/]+)\/run$/.exec(path);
3434
+ if (missionRun)
3435
+ return finish(res, await runMissionNowFromWeb(writeDeps, decodeURIComponent(missionRun[1])));
3374
3436
  const missionBrowser = /^\/api\/missions\/([^/]+)\/browser$/.exec(path);
3375
3437
  if (missionBrowser) {
3376
3438
  const chrome = body.chrome;
@@ -3978,6 +4040,16 @@ export function createWebApp(deps) {
3978
4040
  if (path === '/api/secrets/act') {
3979
4041
  return reply(res, await secretsAct(secretsDeps(), body, session));
3980
4042
  }
4043
+ /*
4044
+ * An agent's sign-in card, answered in place (docs/owner-secrets.md §6):
4045
+ * a set saved in one call, then filled or the page handed over, and the
4046
+ * agent told the names — never a value.
4047
+ */
4048
+ if (path === '/api/secrets' || path === '/api/secrets/request/decline') {
4049
+ if (writeRateLimited(session.id, deps.now().getTime()))
4050
+ return sendJson(res, 429, { error: 'Too many writes from this page. Wait a moment and try again.' });
4051
+ return reply(res, path === '/api/secrets' ? await saveSecretSet(secretRequestDeps(), body) : await declineSecretRequest(secretRequestDeps(), body));
4052
+ }
3981
4053
  /*
3982
4054
  * Talking to buddi (docs/dashboard.md): the composer's microphone and the
3983
4055
  * speaker toggle, through the speech plugin's tools by name, as the owner.