visionclaw 0.1.209 → 0.1.210-beta.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (666) hide show
  1. package/dist/agent/backup.d.ts +10 -1
  2. package/dist/agent/backup.d.ts.map +1 -1
  3. package/dist/agent/backup.js +24 -1
  4. package/dist/agent/backup.js.map +1 -1
  5. package/dist/agent/browser-launcher.d.ts.map +1 -1
  6. package/dist/agent/browser-launcher.js +22 -20
  7. package/dist/agent/browser-launcher.js.map +1 -1
  8. package/dist/agent/command-handlers.d.ts.map +1 -1
  9. package/dist/agent/command-handlers.js +53 -6
  10. package/dist/agent/command-handlers.js.map +1 -1
  11. package/dist/agent/context.d.ts +1 -1
  12. package/dist/agent/context.d.ts.map +1 -1
  13. package/dist/agent/context.js +29 -25
  14. package/dist/agent/context.js.map +1 -1
  15. package/dist/agent/engines/claude/session-browser-policy.d.ts.map +1 -1
  16. package/dist/agent/engines/claude/session-browser-policy.js +2 -16
  17. package/dist/agent/engines/claude/session-browser-policy.js.map +1 -1
  18. package/dist/agent/engines/claude/session.d.ts.map +1 -1
  19. package/dist/agent/engines/claude/session.js +6 -9
  20. package/dist/agent/engines/claude/session.js.map +1 -1
  21. package/dist/agent/engines/pi/tools.d.ts +7 -0
  22. package/dist/agent/engines/pi/tools.d.ts.map +1 -1
  23. package/dist/agent/engines/pi/tools.js +5 -1
  24. package/dist/agent/engines/pi/tools.js.map +1 -1
  25. package/dist/agent/engines/pi-coding/session.d.ts.map +1 -1
  26. package/dist/agent/engines/pi-coding/session.js +11 -0
  27. package/dist/agent/engines/pi-coding/session.js.map +1 -1
  28. package/dist/agent/engines/pi-coding/tools.d.ts +1 -0
  29. package/dist/agent/engines/pi-coding/tools.d.ts.map +1 -1
  30. package/dist/agent/engines/pi-coding/tools.js.map +1 -1
  31. package/dist/agent/gather-context.d.ts.map +1 -1
  32. package/dist/agent/gather-context.js +3 -1
  33. package/dist/agent/gather-context.js.map +1 -1
  34. package/dist/agent/heartbeat-manager.d.ts +6 -1
  35. package/dist/agent/heartbeat-manager.d.ts.map +1 -1
  36. package/dist/agent/heartbeat-manager.js +44 -0
  37. package/dist/agent/heartbeat-manager.js.map +1 -1
  38. package/dist/agent/interrupt-handler.d.ts.map +1 -1
  39. package/dist/agent/interrupt-handler.js +7 -1
  40. package/dist/agent/interrupt-handler.js.map +1 -1
  41. package/dist/agent/loop.d.ts.map +1 -1
  42. package/dist/agent/loop.js +117 -43
  43. package/dist/agent/loop.js.map +1 -1
  44. package/dist/agent/onboarding-gate.d.ts +1 -1
  45. package/dist/agent/onboarding-gate.d.ts.map +1 -1
  46. package/dist/agent/onboarding-gate.js +3 -2
  47. package/dist/agent/onboarding-gate.js.map +1 -1
  48. package/dist/agent/owner-channel-resolver.d.ts +1 -1
  49. package/dist/agent/owner-channel-resolver.d.ts.map +1 -1
  50. package/dist/agent/owner-channel-resolver.js +12 -0
  51. package/dist/agent/owner-channel-resolver.js.map +1 -1
  52. package/dist/agent/runtime-surface.d.ts +2 -0
  53. package/dist/agent/runtime-surface.d.ts.map +1 -1
  54. package/dist/agent/runtime-surface.js +3 -0
  55. package/dist/agent/runtime-surface.js.map +1 -1
  56. package/dist/agent/session-manager.d.ts +1 -1
  57. package/dist/agent/session-manager.d.ts.map +1 -1
  58. package/dist/agent/session-manager.js +13 -5
  59. package/dist/agent/session-manager.js.map +1 -1
  60. package/dist/agent/state.d.ts +4 -0
  61. package/dist/agent/state.d.ts.map +1 -1
  62. package/dist/agent/state.js.map +1 -1
  63. package/dist/agent/status.d.ts +1 -1
  64. package/dist/agent/status.d.ts.map +1 -1
  65. package/dist/agent/status.js +58 -16
  66. package/dist/agent/status.js.map +1 -1
  67. package/dist/agent/stream-handler.d.ts.map +1 -1
  68. package/dist/agent/stream-handler.js +9 -4
  69. package/dist/agent/stream-handler.js.map +1 -1
  70. package/dist/agent/system-prompt.d.ts +1 -1
  71. package/dist/agent/system-prompt.d.ts.map +1 -1
  72. package/dist/agent/system-prompt.js +38 -23
  73. package/dist/agent/system-prompt.js.map +1 -1
  74. package/dist/agent/usage/usage-gate.d.ts.map +1 -1
  75. package/dist/agent/usage/usage-gate.js +6 -10
  76. package/dist/agent/usage/usage-gate.js.map +1 -1
  77. package/dist/agent/wake-schedule.d.ts +15 -0
  78. package/dist/agent/wake-schedule.d.ts.map +1 -0
  79. package/dist/agent/wake-schedule.js +18 -0
  80. package/dist/agent/wake-schedule.js.map +1 -0
  81. package/dist/builtin-skills/visionclaw-manual/SKILL.md +1 -1
  82. package/dist/calendar/calendar-interrupt-poller.d.ts +1 -1
  83. package/dist/calendar/calendar-interrupt-poller.d.ts.map +1 -1
  84. package/dist/calendar/calendar-interrupt-poller.js +5 -0
  85. package/dist/calendar/calendar-interrupt-poller.js.map +1 -1
  86. package/dist/calendar/scheduler.d.ts +1 -1
  87. package/dist/calendar/scheduler.d.ts.map +1 -1
  88. package/dist/calendar/scheduler.js +3 -0
  89. package/dist/calendar/scheduler.js.map +1 -1
  90. package/dist/channels/gmail.d.ts +3 -2
  91. package/dist/channels/gmail.d.ts.map +1 -1
  92. package/dist/channels/gmail.js +1 -0
  93. package/dist/channels/gmail.js.map +1 -1
  94. package/dist/channels/interface.d.ts +11 -0
  95. package/dist/channels/interface.d.ts.map +1 -1
  96. package/dist/channels/manager.d.ts +1 -1
  97. package/dist/channels/manager.d.ts.map +1 -1
  98. package/dist/channels/manager.js +25 -11
  99. package/dist/channels/manager.js.map +1 -1
  100. package/dist/channels/queue.d.ts +4 -0
  101. package/dist/channels/queue.d.ts.map +1 -1
  102. package/dist/channels/queue.js +10 -0
  103. package/dist/channels/queue.js.map +1 -1
  104. package/dist/channels/tui-commands.d.ts +14 -0
  105. package/dist/channels/tui-commands.d.ts.map +1 -0
  106. package/dist/channels/tui-commands.js +135 -0
  107. package/dist/channels/tui-commands.js.map +1 -0
  108. package/dist/channels/tui.d.ts +26 -11
  109. package/dist/channels/tui.d.ts.map +1 -1
  110. package/dist/channels/tui.js +109 -16
  111. package/dist/channels/tui.js.map +1 -1
  112. package/dist/cli/index.d.ts +1 -1
  113. package/dist/cli/index.d.ts.map +1 -1
  114. package/dist/cli/index.js +19 -28
  115. package/dist/cli/index.js.map +1 -1
  116. package/dist/config/index.d.ts.map +1 -1
  117. package/dist/config/index.js +3 -1
  118. package/dist/config/index.js.map +1 -1
  119. package/dist/config/types.d.ts +35 -1
  120. package/dist/config/types.d.ts.map +1 -1
  121. package/dist/config/types.js +63 -3
  122. package/dist/config/types.js.map +1 -1
  123. package/dist/e2e/local-test-server.d.ts +8 -1
  124. package/dist/e2e/local-test-server.d.ts.map +1 -1
  125. package/dist/e2e/local-test-server.js +58 -9
  126. package/dist/e2e/local-test-server.js.map +1 -1
  127. package/dist/e2e/suites/cua.d.ts +6 -0
  128. package/dist/e2e/suites/cua.d.ts.map +1 -1
  129. package/dist/e2e/suites/cua.js +33 -2
  130. package/dist/e2e/suites/cua.js.map +1 -1
  131. package/dist/e2e/suites/google.d.ts.map +1 -1
  132. package/dist/e2e/suites/google.js +11 -3
  133. package/dist/e2e/suites/google.js.map +1 -1
  134. package/dist/index.js.map +1 -1
  135. package/dist/obs/mini-app/status.js +1 -1
  136. package/dist/obs/rdp/backend.d.ts +12 -0
  137. package/dist/obs/rdp/backend.d.ts.map +1 -0
  138. package/dist/obs/rdp/backend.js +10 -0
  139. package/dist/obs/rdp/backend.js.map +1 -0
  140. package/dist/obs/rdp/linux-x11-backend.d.ts +25 -0
  141. package/dist/obs/rdp/linux-x11-backend.d.ts.map +1 -0
  142. package/dist/obs/rdp/linux-x11-backend.js +161 -0
  143. package/dist/obs/rdp/linux-x11-backend.js.map +1 -0
  144. package/dist/obs/rdp/macos-backend.d.ts +12 -0
  145. package/dist/obs/rdp/macos-backend.d.ts.map +1 -0
  146. package/dist/obs/rdp/macos-backend.js +39 -0
  147. package/dist/obs/rdp/macos-backend.js.map +1 -0
  148. package/dist/obs/rdp/stream-manager.d.ts +3 -0
  149. package/dist/obs/rdp/stream-manager.d.ts.map +1 -1
  150. package/dist/obs/rdp/stream-manager.js +23 -42
  151. package/dist/obs/rdp/stream-manager.js.map +1 -1
  152. package/dist/obs/server.d.ts +1 -1
  153. package/dist/obs/server.d.ts.map +1 -1
  154. package/dist/obs/server.js +16 -4
  155. package/dist/obs/server.js.map +1 -1
  156. package/dist/onboarding/bootstrap-client.d.ts +45 -18
  157. package/dist/onboarding/bootstrap-client.d.ts.map +1 -1
  158. package/dist/onboarding/bootstrap-client.js +18 -2
  159. package/dist/onboarding/bootstrap-client.js.map +1 -1
  160. package/dist/onboarding/generate-wallpaper.d.ts +29 -0
  161. package/dist/onboarding/generate-wallpaper.d.ts.map +1 -1
  162. package/dist/onboarding/generate-wallpaper.js +58 -38
  163. package/dist/onboarding/generate-wallpaper.js.map +1 -1
  164. package/dist/onboarding/host-resolver.d.ts +2 -0
  165. package/dist/onboarding/host-resolver.d.ts.map +1 -0
  166. package/dist/onboarding/host-resolver.js +18 -0
  167. package/dist/onboarding/host-resolver.js.map +1 -0
  168. package/dist/onboarding/index.d.ts.map +1 -1
  169. package/dist/onboarding/index.js +2 -17
  170. package/dist/onboarding/index.js.map +1 -1
  171. package/dist/onboarding/onboarding-service-client.d.ts +9 -0
  172. package/dist/onboarding/onboarding-service-client.d.ts.map +1 -1
  173. package/dist/onboarding/onboarding-service-client.js.map +1 -1
  174. package/dist/onboarding/prepare-linux.d.ts +9 -0
  175. package/dist/onboarding/prepare-linux.d.ts.map +1 -0
  176. package/dist/onboarding/prepare-linux.js +64 -0
  177. package/dist/onboarding/prepare-linux.js.map +1 -0
  178. package/dist/onboarding/send-invite.d.ts +1 -1
  179. package/dist/onboarding/send-invite.d.ts.map +1 -1
  180. package/dist/onboarding/send-invite.js +29 -12
  181. package/dist/onboarding/send-invite.js.map +1 -1
  182. package/dist/onboarding/setup-shared.d.ts +10 -2
  183. package/dist/onboarding/setup-shared.d.ts.map +1 -1
  184. package/dist/onboarding/setup-shared.js +38 -6
  185. package/dist/onboarding/setup-shared.js.map +1 -1
  186. package/dist/onboarding/setup-state.d.ts +1 -0
  187. package/dist/onboarding/setup-state.d.ts.map +1 -1
  188. package/dist/onboarding/setup-state.js +1 -0
  189. package/dist/onboarding/setup-state.js.map +1 -1
  190. package/dist/onboarding/setup-steps.d.ts.map +1 -1
  191. package/dist/onboarding/setup-steps.js +53 -18
  192. package/dist/onboarding/setup-steps.js.map +1 -1
  193. package/dist/onboarding/wallpaper-contract.d.ts +38 -0
  194. package/dist/onboarding/wallpaper-contract.d.ts.map +1 -0
  195. package/dist/onboarding/wallpaper-contract.js +2 -0
  196. package/dist/onboarding/wallpaper-contract.js.map +1 -0
  197. package/dist/onboarding/wallpaper-linux-x11.d.ts +8 -0
  198. package/dist/onboarding/wallpaper-linux-x11.d.ts.map +1 -0
  199. package/dist/onboarding/wallpaper-linux-x11.js +72 -0
  200. package/dist/onboarding/wallpaper-linux-x11.js.map +1 -0
  201. package/dist/onboarding/wallpaper-macos.d.ts +4 -0
  202. package/dist/onboarding/wallpaper-macos.d.ts.map +1 -0
  203. package/dist/onboarding/wallpaper-macos.js +32 -0
  204. package/dist/onboarding/wallpaper-macos.js.map +1 -0
  205. package/dist/onboarding/wallpaper-platform.d.ts +4 -0
  206. package/dist/onboarding/wallpaper-platform.d.ts.map +1 -0
  207. package/dist/onboarding/wallpaper-platform.js +41 -0
  208. package/dist/onboarding/wallpaper-platform.js.map +1 -0
  209. package/dist/reconfigure.d.ts.map +1 -1
  210. package/dist/reconfigure.js +19 -8
  211. package/dist/reconfigure.js.map +1 -1
  212. package/dist/reset.d.ts.map +1 -1
  213. package/dist/reset.js +7 -0
  214. package/dist/reset.js.map +1 -1
  215. package/dist/restore.d.ts +2 -0
  216. package/dist/restore.d.ts.map +1 -1
  217. package/dist/restore.js +25 -0
  218. package/dist/restore.js.map +1 -1
  219. package/dist/runtime/linux-baseline.d.ts +2 -0
  220. package/dist/runtime/linux-baseline.d.ts.map +1 -0
  221. package/dist/runtime/linux-baseline.js +21 -0
  222. package/dist/runtime/linux-baseline.js.map +1 -0
  223. package/dist/service/daemon.d.ts.map +1 -1
  224. package/dist/service/daemon.js +24 -0
  225. package/dist/service/daemon.js.map +1 -1
  226. package/dist/service/systemd.d.ts +11 -0
  227. package/dist/service/systemd.d.ts.map +1 -0
  228. package/dist/service/systemd.js +63 -0
  229. package/dist/service/systemd.js.map +1 -0
  230. package/dist/system/host-capabilities.d.ts +35 -0
  231. package/dist/system/host-capabilities.d.ts.map +1 -0
  232. package/dist/system/host-capabilities.js +107 -0
  233. package/dist/system/host-capabilities.js.map +1 -0
  234. package/dist/system/machine-identity.d.ts.map +1 -1
  235. package/dist/system/machine-identity.js +15 -0
  236. package/dist/system/machine-identity.js.map +1 -1
  237. package/dist/tools/computer-use.d.ts.map +1 -1
  238. package/dist/tools/computer-use.js +9 -2
  239. package/dist/tools/computer-use.js.map +1 -1
  240. package/dist/tools/desktop-executor-factory.d.ts.map +1 -1
  241. package/dist/tools/desktop-executor-factory.js +3 -0
  242. package/dist/tools/desktop-executor-factory.js.map +1 -1
  243. package/dist/tools/desktop-executor-linux.d.ts +19 -0
  244. package/dist/tools/desktop-executor-linux.d.ts.map +1 -0
  245. package/dist/tools/desktop-executor-linux.js +89 -0
  246. package/dist/tools/desktop-executor-linux.js.map +1 -0
  247. package/dist/tools/index.d.ts +10 -0
  248. package/dist/tools/index.d.ts.map +1 -1
  249. package/dist/tools/index.js +6 -3
  250. package/dist/tools/index.js.map +1 -1
  251. package/dist/tools/screenshot.js +7 -2
  252. package/dist/tools/screenshot.js.map +1 -1
  253. package/dist/tui/client.d.ts +52 -7
  254. package/dist/tui/client.d.ts.map +1 -1
  255. package/dist/tui/client.js +61 -17
  256. package/dist/tui/client.js.map +1 -1
  257. package/dist/tui/index.d.ts +3 -0
  258. package/dist/tui/index.d.ts.map +1 -1
  259. package/dist/tui/index.js +57 -13
  260. package/dist/tui/index.js.map +1 -1
  261. package/dist/tui/protocol.d.ts +40 -0
  262. package/dist/tui/protocol.d.ts.map +1 -0
  263. package/dist/tui/protocol.js +20 -0
  264. package/dist/tui/protocol.js.map +1 -0
  265. package/dist/tui/request-store.d.ts +40 -0
  266. package/dist/tui/request-store.d.ts.map +1 -0
  267. package/dist/tui/request-store.js +236 -0
  268. package/dist/tui/request-store.js.map +1 -0
  269. package/dist/tui/server.d.ts +3 -0
  270. package/dist/tui/server.d.ts.map +1 -1
  271. package/dist/tui/server.js +237 -37
  272. package/dist/tui/server.js.map +1 -1
  273. package/dist/workspace/google/gmail-email.d.ts +8 -2
  274. package/dist/workspace/google/gmail-email.d.ts.map +1 -1
  275. package/dist/workspace/google/gmail-email.js +6 -0
  276. package/dist/workspace/google/gmail-email.js.map +1 -1
  277. package/dist/workspace/provider-factory.d.ts +1 -1
  278. package/dist/workspace/provider-factory.d.ts.map +1 -1
  279. package/dist/workspace/provider-factory.js +27 -12
  280. package/dist/workspace/provider-factory.js.map +1 -1
  281. package/dist-agent/bundle.cjs +7511 -5398
  282. package/package.json +2 -2
  283. package/dist/agent/applied-credential-signature.d.ts +0 -53
  284. package/dist/agent/applied-credential-signature.d.ts.map +0 -1
  285. package/dist/agent/applied-credential-signature.js +0 -137
  286. package/dist/agent/applied-credential-signature.js.map +0 -1
  287. package/dist/agent/engines/client-factory.d.ts +0 -63
  288. package/dist/agent/engines/client-factory.d.ts.map +0 -1
  289. package/dist/agent/engines/client-factory.js +0 -382
  290. package/dist/agent/engines/client-factory.js.map +0 -1
  291. package/dist/agent/engines/engine.d.ts +0 -8
  292. package/dist/agent/engines/engine.d.ts.map +0 -1
  293. package/dist/agent/engines/engine.js +0 -15
  294. package/dist/agent/engines/engine.js.map +0 -1
  295. package/dist/agent/engines/openai/file-session.d.ts +0 -19
  296. package/dist/agent/engines/openai/file-session.d.ts.map +0 -1
  297. package/dist/agent/engines/openai/file-session.js +0 -78
  298. package/dist/agent/engines/openai/file-session.js.map +0 -1
  299. package/dist/agent/engines/openai/file-tools.d.ts +0 -35
  300. package/dist/agent/engines/openai/file-tools.d.ts.map +0 -1
  301. package/dist/agent/engines/openai/file-tools.js +0 -194
  302. package/dist/agent/engines/openai/file-tools.js.map +0 -1
  303. package/dist/agent/engines/openai/session.d.ts +0 -55
  304. package/dist/agent/engines/openai/session.d.ts.map +0 -1
  305. package/dist/agent/engines/openai/session.js +0 -447
  306. package/dist/agent/engines/openai/session.js.map +0 -1
  307. package/dist/agent/engines/openai/tools.d.ts +0 -15
  308. package/dist/agent/engines/openai/tools.d.ts.map +0 -1
  309. package/dist/agent/engines/openai/tools.js +0 -221
  310. package/dist/agent/engines/openai/tools.js.map +0 -1
  311. package/dist/agent/engines/pi/session.d.ts +0 -49
  312. package/dist/agent/engines/pi/session.d.ts.map +0 -1
  313. package/dist/agent/engines/pi/session.js +0 -309
  314. package/dist/agent/engines/pi/session.js.map +0 -1
  315. package/dist/agent/memory-preload.d.ts +0 -55
  316. package/dist/agent/memory-preload.d.ts.map +0 -1
  317. package/dist/agent/memory-preload.js +0 -166
  318. package/dist/agent/memory-preload.js.map +0 -1
  319. package/dist/agent/providers/claude/cli-resolver.d.ts +0 -16
  320. package/dist/agent/providers/claude/cli-resolver.d.ts.map +0 -1
  321. package/dist/agent/providers/claude/cli-resolver.js +0 -83
  322. package/dist/agent/providers/claude/cli-resolver.js.map +0 -1
  323. package/dist/agent/providers/claude/session-browser-policy.d.ts +0 -9
  324. package/dist/agent/providers/claude/session-browser-policy.d.ts.map +0 -1
  325. package/dist/agent/providers/claude/session-browser-policy.js +0 -49
  326. package/dist/agent/providers/claude/session-browser-policy.js.map +0 -1
  327. package/dist/agent/providers/claude/session.d.ts +0 -304
  328. package/dist/agent/providers/claude/session.d.ts.map +0 -1
  329. package/dist/agent/providers/claude/session.js +0 -1236
  330. package/dist/agent/providers/claude/session.js.map +0 -1
  331. package/dist/agent/providers/client-factory.d.ts +0 -60
  332. package/dist/agent/providers/client-factory.d.ts.map +0 -1
  333. package/dist/agent/providers/client-factory.js +0 -400
  334. package/dist/agent/providers/client-factory.js.map +0 -1
  335. package/dist/agent/providers/openai/file-session.d.ts +0 -19
  336. package/dist/agent/providers/openai/file-session.d.ts.map +0 -1
  337. package/dist/agent/providers/openai/file-session.js +0 -78
  338. package/dist/agent/providers/openai/file-session.js.map +0 -1
  339. package/dist/agent/providers/openai/session.d.ts +0 -55
  340. package/dist/agent/providers/openai/session.d.ts.map +0 -1
  341. package/dist/agent/providers/openai/session.js +0 -447
  342. package/dist/agent/providers/openai/session.js.map +0 -1
  343. package/dist/agent/providers/openai/tools.d.ts +0 -15
  344. package/dist/agent/providers/openai/tools.d.ts.map +0 -1
  345. package/dist/agent/providers/openai/tools.js +0 -229
  346. package/dist/agent/providers/openai/tools.js.map +0 -1
  347. package/dist/agent/providers/session-types.d.ts +0 -153
  348. package/dist/agent/providers/session-types.d.ts.map +0 -1
  349. package/dist/agent/providers/session-types.js +0 -2
  350. package/dist/agent/providers/session-types.js.map +0 -1
  351. package/dist/agent/providers/system-prompt-log.d.ts +0 -9
  352. package/dist/agent/providers/system-prompt-log.d.ts.map +0 -1
  353. package/dist/agent/providers/system-prompt-log.js +0 -46
  354. package/dist/agent/providers/system-prompt-log.js.map +0 -1
  355. package/dist/agent/qq-claim-signal.d.ts +0 -9
  356. package/dist/agent/qq-claim-signal.d.ts.map +0 -1
  357. package/dist/agent/qq-claim-signal.js +0 -38
  358. package/dist/agent/qq-claim-signal.js.map +0 -1
  359. package/dist/agent/transcript-backfill.d.ts +0 -54
  360. package/dist/agent/transcript-backfill.d.ts.map +0 -1
  361. package/dist/agent/transcript-backfill.js +0 -604
  362. package/dist/agent/transcript-backfill.js.map +0 -1
  363. package/dist/agent/transcript-indexer.d.ts +0 -200
  364. package/dist/agent/transcript-indexer.d.ts.map +0 -1
  365. package/dist/agent/transcript-indexer.js +0 -775
  366. package/dist/agent/transcript-indexer.js.map +0 -1
  367. package/dist/agent/transcript-memory-migrations.d.ts +0 -25
  368. package/dist/agent/transcript-memory-migrations.d.ts.map +0 -1
  369. package/dist/agent/transcript-memory-migrations.js +0 -87
  370. package/dist/agent/transcript-memory-migrations.js.map +0 -1
  371. package/dist/agent/tunnel-credential-handler.d.ts +0 -90
  372. package/dist/agent/tunnel-credential-handler.d.ts.map +0 -1
  373. package/dist/agent/tunnel-credential-handler.js +0 -162
  374. package/dist/agent/tunnel-credential-handler.js.map +0 -1
  375. package/dist/agent/usage-backfill-handler.d.ts +0 -18
  376. package/dist/agent/usage-backfill-handler.d.ts.map +0 -1
  377. package/dist/agent/usage-backfill-handler.js +0 -69
  378. package/dist/agent/usage-backfill-handler.js.map +0 -1
  379. package/dist/agent/usage-gate.d.ts +0 -25
  380. package/dist/agent/usage-gate.d.ts.map +0 -1
  381. package/dist/agent/usage-gate.js +0 -83
  382. package/dist/agent/usage-gate.js.map +0 -1
  383. package/dist/agent/usage-handler.d.ts +0 -7
  384. package/dist/agent/usage-handler.d.ts.map +0 -1
  385. package/dist/agent/usage-handler.js +0 -28
  386. package/dist/agent/usage-handler.js.map +0 -1
  387. package/dist/agent/usage-report-builder.d.ts +0 -26
  388. package/dist/agent/usage-report-builder.d.ts.map +0 -1
  389. package/dist/agent/usage-report-builder.js +0 -80
  390. package/dist/agent/usage-report-builder.js.map +0 -1
  391. package/dist/agent/usage-report-queue.d.ts +0 -26
  392. package/dist/agent/usage-report-queue.d.ts.map +0 -1
  393. package/dist/agent/usage-report-queue.js +0 -199
  394. package/dist/agent/usage-report-queue.js.map +0 -1
  395. package/dist/agent/usage-report-types.d.ts +0 -41
  396. package/dist/agent/usage-report-types.d.ts.map +0 -1
  397. package/dist/agent/usage-report-types.js +0 -2
  398. package/dist/agent/usage-report-types.js.map +0 -1
  399. package/dist/agent/usage-reporter.d.ts +0 -31
  400. package/dist/agent/usage-reporter.d.ts.map +0 -1
  401. package/dist/agent/usage-reporter.js +0 -102
  402. package/dist/agent/usage-reporter.js.map +0 -1
  403. package/dist/agent/wake-cycle-tool-tracker.d.ts +0 -39
  404. package/dist/agent/wake-cycle-tool-tracker.d.ts.map +0 -1
  405. package/dist/agent/wake-cycle-tool-tracker.js +0 -72
  406. package/dist/agent/wake-cycle-tool-tracker.js.map +0 -1
  407. package/dist/anthropic-credentials.d.ts +0 -24
  408. package/dist/anthropic-credentials.d.ts.map +0 -1
  409. package/dist/anthropic-credentials.js +0 -37
  410. package/dist/anthropic-credentials.js.map +0 -1
  411. package/dist/billing/payg-handler.d.ts +0 -29
  412. package/dist/billing/payg-handler.d.ts.map +0 -1
  413. package/dist/billing/payg-handler.js +0 -92
  414. package/dist/billing/payg-handler.js.map +0 -1
  415. package/dist/billing/payment-handler.d.ts +0 -24
  416. package/dist/billing/payment-handler.d.ts.map +0 -1
  417. package/dist/billing/payment-handler.js +0 -101
  418. package/dist/billing/payment-handler.js.map +0 -1
  419. package/dist/builtin-skills/catalog/phone-adb-automation/SKILL.md +0 -412
  420. package/dist/builtin-skills/catalog/phone-adb-automation/phone_input.sh +0 -132
  421. package/dist/builtin-skills/catalog/phone-adb-automation/phone_launch.sh +0 -166
  422. package/dist/builtin-skills/catalog/phone-adb-automation/phone_screenshot.sh +0 -87
  423. package/dist/builtin-skills/catalog/phone-adb-automation/phone_security_kbd.py +0 -174
  424. package/dist/builtin-skills/catalog/phone-adb-automation/phone_setup.sh +0 -274
  425. package/dist/builtin-skills/catalog/phone-adb-automation/phone_swipe.sh +0 -111
  426. package/dist/builtin-skills/catalog/phone-adb-automation/phone_tap.sh +0 -87
  427. package/dist/builtin-skills/catalog/phone-adb-automation/phone_ui_parse.py +0 -176
  428. package/dist/builtin-skills/catalog/phone-adb-automation/phone_wake_unlock.sh +0 -67
  429. package/dist/builtin-skills/transcribe-audio/SKILL.md +0 -122
  430. package/dist/calendar/google-calendar.d.ts +0 -54
  431. package/dist/calendar/google-calendar.d.ts.map +0 -1
  432. package/dist/calendar/google-calendar.js +0 -156
  433. package/dist/calendar/google-calendar.js.map +0 -1
  434. package/dist/channels/web.d.ts +0 -40
  435. package/dist/channels/web.d.ts.map +0 -1
  436. package/dist/channels/web.js +0 -137
  437. package/dist/channels/web.js.map +0 -1
  438. package/dist/config/models.d.ts +0 -32
  439. package/dist/config/models.d.ts.map +0 -1
  440. package/dist/config/models.js +0 -57
  441. package/dist/config/models.js.map +0 -1
  442. package/dist/data-processing/convert-demo-cli.d.ts +0 -7
  443. package/dist/data-processing/convert-demo-cli.d.ts.map +0 -1
  444. package/dist/data-processing/convert-demo-cli.js +0 -30
  445. package/dist/data-processing/convert-demo-cli.js.map +0 -1
  446. package/dist/data-processing/convert-demo.d.ts +0 -26
  447. package/dist/data-processing/convert-demo.d.ts.map +0 -1
  448. package/dist/data-processing/convert-demo.js +0 -233
  449. package/dist/data-processing/convert-demo.js.map +0 -1
  450. package/dist/drive/google-drive.d.ts +0 -83
  451. package/dist/drive/google-drive.d.ts.map +0 -1
  452. package/dist/drive/google-drive.js +0 -219
  453. package/dist/drive/google-drive.js.map +0 -1
  454. package/dist/email/gmail-email.d.ts +0 -64
  455. package/dist/email/gmail-email.d.ts.map +0 -1
  456. package/dist/email/gmail-email.js +0 -167
  457. package/dist/email/gmail-email.js.map +0 -1
  458. package/dist/factcheck/agent.d.ts +0 -50
  459. package/dist/factcheck/agent.d.ts.map +0 -1
  460. package/dist/factcheck/agent.js +0 -508
  461. package/dist/factcheck/agent.js.map +0 -1
  462. package/dist/factcheck/financial-verifier.d.ts +0 -49
  463. package/dist/factcheck/financial-verifier.d.ts.map +0 -1
  464. package/dist/factcheck/financial-verifier.js +0 -109
  465. package/dist/factcheck/financial-verifier.js.map +0 -1
  466. package/dist/factcheck/setup.d.ts +0 -32
  467. package/dist/factcheck/setup.d.ts.map +0 -1
  468. package/dist/factcheck/setup.js +0 -70
  469. package/dist/factcheck/setup.js.map +0 -1
  470. package/dist/factcheck/sidecar.d.ts +0 -131
  471. package/dist/factcheck/sidecar.d.ts.map +0 -1
  472. package/dist/factcheck/sidecar.js +0 -348
  473. package/dist/factcheck/sidecar.js.map +0 -1
  474. package/dist/factcheck/store.d.ts +0 -111
  475. package/dist/factcheck/store.d.ts.map +0 -1
  476. package/dist/factcheck/store.js +0 -246
  477. package/dist/factcheck/store.js.map +0 -1
  478. package/dist/factcheck/web-searcher.d.ts +0 -22
  479. package/dist/factcheck/web-searcher.d.ts.map +0 -1
  480. package/dist/factcheck/web-searcher.js +0 -90
  481. package/dist/factcheck/web-searcher.js.map +0 -1
  482. package/dist/obs/auth.d.ts +0 -45
  483. package/dist/obs/auth.d.ts.map +0 -1
  484. package/dist/obs/auth.js +0 -181
  485. package/dist/obs/auth.js.map +0 -1
  486. package/dist/obs/mini-app/tasks.d.ts +0 -2
  487. package/dist/obs/mini-app/tasks.d.ts.map +0 -1
  488. package/dist/obs/mini-app/tasks.js +0 -506
  489. package/dist/obs/mini-app/tasks.js.map +0 -1
  490. package/dist/obs/rdp/icons/icons/app_windows.svg +0 -4
  491. package/dist/obs/rdp/icons/icons/clip_get.svg +0 -4
  492. package/dist/obs/rdp/icons/icons/clip_send.svg +0 -4
  493. package/dist/obs/rdp/icons/icons/clip_shared.svg +0 -4
  494. package/dist/obs/rdp/icons/icons/clipboard.svg +0 -4
  495. package/dist/obs/rdp/icons/icons/clipboard_shared.svg +0 -4
  496. package/dist/obs/rdp/icons/icons/control.svg +0 -4
  497. package/dist/obs/rdp/icons/icons/desktop.svg +0 -4
  498. package/dist/obs/rdp/icons/icons/display.svg +0 -4
  499. package/dist/obs/rdp/icons/icons/launchpad.svg +0 -4
  500. package/dist/obs/rdp/icons/icons/mission_control.svg +0 -4
  501. package/dist/obs/rdp/icons/icons/screenshot.svg +0 -4
  502. package/dist/obs/rdp/icons/icons/zoom_actual.svg +0 -4
  503. package/dist/obs/rdp/icons/icons/zoom_fit.svg +0 -4
  504. package/dist/obs/rdp/icons/icons/zoom_in.svg +0 -4
  505. package/dist/obs/rdp/icons/icons/zoom_out.svg +0 -4
  506. package/dist/obs/tunnel-telemetry.d.ts +0 -46
  507. package/dist/obs/tunnel-telemetry.d.ts.map +0 -1
  508. package/dist/obs/tunnel-telemetry.js +0 -70
  509. package/dist/obs/tunnel-telemetry.js.map +0 -1
  510. package/dist/onboarding/cloudflared-cert.d.ts +0 -15
  511. package/dist/onboarding/cloudflared-cert.d.ts.map +0 -1
  512. package/dist/onboarding/cloudflared-cert.js +0 -57
  513. package/dist/onboarding/cloudflared-cert.js.map +0 -1
  514. package/dist/onboarding/gh-auth-browser.d.ts +0 -10
  515. package/dist/onboarding/gh-auth-browser.d.ts.map +0 -1
  516. package/dist/onboarding/gh-auth-browser.js +0 -70
  517. package/dist/onboarding/gh-auth-browser.js.map +0 -1
  518. package/dist/onboarding/provision-eth-wallet.d.ts +0 -7
  519. package/dist/onboarding/provision-eth-wallet.d.ts.map +0 -1
  520. package/dist/onboarding/provision-eth-wallet.js +0 -14
  521. package/dist/onboarding/provision-eth-wallet.js.map +0 -1
  522. package/dist/onboarding/provision-workspace-account.d.ts +0 -14
  523. package/dist/onboarding/provision-workspace-account.d.ts.map +0 -1
  524. package/dist/onboarding/provision-workspace-account.js +0 -165
  525. package/dist/onboarding/provision-workspace-account.js.map +0 -1
  526. package/dist/onboarding/provisioning-spec.d.ts +0 -62
  527. package/dist/onboarding/provisioning-spec.d.ts.map +0 -1
  528. package/dist/onboarding/provisioning-spec.js +0 -159
  529. package/dist/onboarding/provisioning-spec.js.map +0 -1
  530. package/dist/onboarding/send-identity-credentials.d.ts +0 -11
  531. package/dist/onboarding/send-identity-credentials.d.ts.map +0 -1
  532. package/dist/onboarding/send-identity-credentials.js +0 -110
  533. package/dist/onboarding/send-identity-credentials.js.map +0 -1
  534. package/dist/onboarding/setup-credentials.d.ts +0 -7
  535. package/dist/onboarding/setup-credentials.d.ts.map +0 -1
  536. package/dist/onboarding/setup-credentials.js +0 -44
  537. package/dist/onboarding/setup-credentials.js.map +0 -1
  538. package/dist/openai-credentials.d.ts +0 -30
  539. package/dist/openai-credentials.d.ts.map +0 -1
  540. package/dist/openai-credentials.js +0 -37
  541. package/dist/openai-credentials.js.map +0 -1
  542. package/dist/phonecall-credentials.d.ts +0 -21
  543. package/dist/phonecall-credentials.d.ts.map +0 -1
  544. package/dist/phonecall-credentials.js +0 -34
  545. package/dist/phonecall-credentials.js.map +0 -1
  546. package/dist/realtime/agent-bridge.d.ts +0 -7
  547. package/dist/realtime/agent-bridge.d.ts.map +0 -1
  548. package/dist/realtime/agent-bridge.js +0 -31
  549. package/dist/realtime/agent-bridge.js.map +0 -1
  550. package/dist/realtime/assets/index.html +0 -1058
  551. package/dist/realtime/assets/samples/alloy.mp3 +0 -0
  552. package/dist/realtime/assets/samples/ash.mp3 +0 -0
  553. package/dist/realtime/assets/samples/ballad.mp3 +0 -0
  554. package/dist/realtime/assets/samples/cedar.mp3 +0 -0
  555. package/dist/realtime/assets/samples/coral.mp3 +0 -0
  556. package/dist/realtime/assets/samples/echo.mp3 +0 -0
  557. package/dist/realtime/assets/samples/marin.mp3 +0 -0
  558. package/dist/realtime/assets/samples/sage.mp3 +0 -0
  559. package/dist/realtime/assets/samples/shimmer.mp3 +0 -0
  560. package/dist/realtime/assets/samples/verse.mp3 +0 -0
  561. package/dist/realtime/context.d.ts +0 -14
  562. package/dist/realtime/context.d.ts.map +0 -1
  563. package/dist/realtime/context.js +0 -153
  564. package/dist/realtime/context.js.map +0 -1
  565. package/dist/realtime/http-helpers.d.ts +0 -5
  566. package/dist/realtime/http-helpers.d.ts.map +0 -1
  567. package/dist/realtime/http-helpers.js +0 -29
  568. package/dist/realtime/http-helpers.js.map +0 -1
  569. package/dist/realtime/index.d.ts +0 -62
  570. package/dist/realtime/index.d.ts.map +0 -1
  571. package/dist/realtime/index.js +0 -94
  572. package/dist/realtime/index.js.map +0 -1
  573. package/dist/realtime/server.d.ts +0 -6
  574. package/dist/realtime/server.d.ts.map +0 -1
  575. package/dist/realtime/server.js +0 -479
  576. package/dist/realtime/server.js.map +0 -1
  577. package/dist/realtime/telegram-auth.d.ts +0 -2
  578. package/dist/realtime/telegram-auth.d.ts.map +0 -1
  579. package/dist/realtime/telegram-auth.js +0 -24
  580. package/dist/realtime/telegram-auth.js.map +0 -1
  581. package/dist/realtime/tools.d.ts +0 -829
  582. package/dist/realtime/tools.d.ts.map +0 -1
  583. package/dist/realtime/tools.js +0 -611
  584. package/dist/realtime/tools.js.map +0 -1
  585. package/dist/realtime/types.d.ts +0 -62
  586. package/dist/realtime/types.d.ts.map +0 -1
  587. package/dist/realtime/types.js +0 -3
  588. package/dist/realtime/types.js.map +0 -1
  589. package/dist/realtime/voice-summarizer.d.ts +0 -4
  590. package/dist/realtime/voice-summarizer.d.ts.map +0 -1
  591. package/dist/realtime/voice-summarizer.js +0 -123
  592. package/dist/realtime/voice-summarizer.js.map +0 -1
  593. package/dist/realtime/websocket.d.ts +0 -7
  594. package/dist/realtime/websocket.d.ts.map +0 -1
  595. package/dist/realtime/websocket.js +0 -65
  596. package/dist/realtime/websocket.js.map +0 -1
  597. package/dist/service/gbox-tun.d.ts +0 -14
  598. package/dist/service/gbox-tun.d.ts.map +0 -1
  599. package/dist/service/gbox-tun.js +0 -315
  600. package/dist/service/gbox-tun.js.map +0 -1
  601. package/dist/skills/installed.d.ts +0 -11
  602. package/dist/skills/installed.d.ts.map +0 -1
  603. package/dist/skills/installed.js +0 -35
  604. package/dist/skills/installed.js.map +0 -1
  605. package/dist/tools/card.d.ts +0 -11
  606. package/dist/tools/card.d.ts.map +0 -1
  607. package/dist/tools/card.js +0 -87
  608. package/dist/tools/card.js.map +0 -1
  609. package/dist/tools/coordinate-resolver.d.ts +0 -30
  610. package/dist/tools/coordinate-resolver.d.ts.map +0 -1
  611. package/dist/tools/coordinate-resolver.js +0 -104
  612. package/dist/tools/coordinate-resolver.js.map +0 -1
  613. package/dist/tools/sms.d.ts +0 -16
  614. package/dist/tools/sms.d.ts.map +0 -1
  615. package/dist/tools/sms.js +0 -78
  616. package/dist/tools/sms.js.map +0 -1
  617. package/dist/tools/stock-data.d.ts +0 -70
  618. package/dist/tools/stock-data.d.ts.map +0 -1
  619. package/dist/tools/stock-data.js +0 -596
  620. package/dist/tools/stock-data.js.map +0 -1
  621. package/dist/tools/webapp.d.ts +0 -30
  622. package/dist/tools/webapp.d.ts.map +0 -1
  623. package/dist/tools/webapp.js +0 -114
  624. package/dist/tools/webapp.js.map +0 -1
  625. package/dist/utils/wechat-monitor.d.ts +0 -21
  626. package/dist/utils/wechat-monitor.d.ts.map +0 -1
  627. package/dist/utils/wechat-monitor.js +0 -88
  628. package/dist/utils/wechat-monitor.js.map +0 -1
  629. package/dist/webapp/index.d.ts +0 -28
  630. package/dist/webapp/index.d.ts.map +0 -1
  631. package/dist/webapp/index.js +0 -75
  632. package/dist/webapp/index.js.map +0 -1
  633. package/dist/webapp/server.d.ts +0 -32
  634. package/dist/webapp/server.d.ts.map +0 -1
  635. package/dist/webapp/server.js +0 -375
  636. package/dist/webapp/server.js.map +0 -1
  637. package/dist/webapp/storage.d.ts +0 -64
  638. package/dist/webapp/storage.d.ts.map +0 -1
  639. package/dist/webapp/storage.js +0 -103
  640. package/dist/webapp/storage.js.map +0 -1
  641. package/dist/webapp/ui.d.ts +0 -2
  642. package/dist/webapp/ui.d.ts.map +0 -1
  643. package/dist/webapp/ui.js +0 -319
  644. package/dist/webapp/ui.js.map +0 -1
  645. package/dist-agent/assets/index.html +0 -1058
  646. package/dist-agent/assets/samples/alloy.mp3 +0 -0
  647. package/dist-agent/assets/samples/ash.mp3 +0 -0
  648. package/dist-agent/assets/samples/ballad.mp3 +0 -0
  649. package/dist-agent/assets/samples/cedar.mp3 +0 -0
  650. package/dist-agent/assets/samples/coral.mp3 +0 -0
  651. package/dist-agent/assets/samples/echo.mp3 +0 -0
  652. package/dist-agent/assets/samples/marin.mp3 +0 -0
  653. package/dist-agent/assets/samples/sage.mp3 +0 -0
  654. package/dist-agent/assets/samples/shimmer.mp3 +0 -0
  655. package/dist-agent/assets/samples/verse.mp3 +0 -0
  656. package/dist-agent/realtime/assets/index.html +0 -1058
  657. package/dist-agent/realtime/assets/samples/alloy.mp3 +0 -0
  658. package/dist-agent/realtime/assets/samples/ash.mp3 +0 -0
  659. package/dist-agent/realtime/assets/samples/ballad.mp3 +0 -0
  660. package/dist-agent/realtime/assets/samples/cedar.mp3 +0 -0
  661. package/dist-agent/realtime/assets/samples/coral.mp3 +0 -0
  662. package/dist-agent/realtime/assets/samples/echo.mp3 +0 -0
  663. package/dist-agent/realtime/assets/samples/marin.mp3 +0 -0
  664. package/dist-agent/realtime/assets/samples/sage.mp3 +0 -0
  665. package/dist-agent/realtime/assets/samples/shimmer.mp3 +0 -0
  666. package/dist-agent/realtime/assets/samples/verse.mp3 +0 -0
@@ -1,5 +1,14 @@
1
1
  import { type BackupProvider, type BackupUploadResult } from "./backup-uploader.js";
2
- import type { VisionClawConfig } from "../config/types.js";
2
+ import { type VisionClawConfig } from "../config/types.js";
3
+ export interface BackupPlatformManifest {
4
+ schemaVersion: 1;
5
+ createdAt: string;
6
+ sourcePlatform: NodeJS.Platform;
7
+ sourceArch: string;
8
+ profile: string;
9
+ portable: boolean;
10
+ }
11
+ export declare function createBackupPlatformManifest(profile: string): BackupPlatformManifest;
3
12
  /**
4
13
  * Create a ZIP backup of VisionClaw profile data and upload it to Google Drive.
5
14
  *
@@ -1 +1 @@
1
- {"version":3,"file":"backup.d.ts","sourceRoot":"","sources":["../../src/agent/backup.ts"],"names":[],"mappings":"AAOA,OAAO,EAAmC,KAAK,cAAc,EAAE,KAAK,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAErH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AA0kB3D;;;;;;;;GAQG;AACH,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B,uBAAuB,CAAC,EAAE,MAAM,CAAC;CAClC;AAED,MAAM,MAAM,YAAY,GAAG,kBAAkB,CAAC;AAE9C,wBAAsB,SAAS,CAC7B,MAAM,EAAE,gBAAgB;AACxB,8EAA8E;AAC9E,UAAU,EAAE,MAAM,GAAG,SAAS,EAC9B,OAAO,GAAE,gBAAqB,GAC7B,OAAO,CAAC,YAAY,CAAC,CAkQvB"}
1
+ {"version":3,"file":"backup.d.ts","sourceRoot":"","sources":["../../src/agent/backup.ts"],"names":[],"mappings":"AAOA,OAAO,EAAmC,KAAK,cAAc,EAAE,KAAK,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAErH,OAAO,EAAsB,KAAK,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAqB/E,MAAM,WAAW,sBAAsB;IACrC,aAAa,EAAE,CAAC,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC,QAAQ,CAAC;IAChC,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,wBAAgB,4BAA4B,CAAC,OAAO,EAAE,MAAM,GAAG,sBAAsB,CASpF;AAwjBD;;;;;;;;GAQG;AACH,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B,uBAAuB,CAAC,EAAE,MAAM,CAAC;CAClC;AAED,MAAM,MAAM,YAAY,GAAG,kBAAkB,CAAC;AAE9C,wBAAsB,SAAS,CAC7B,MAAM,EAAE,gBAAgB;AACxB,8EAA8E;AAC9E,UAAU,EAAE,MAAM,GAAG,SAAS,EAC9B,OAAO,GAAE,gBAAqB,GAC7B,OAAO,CAAC,YAAY,CAAC,CAoRvB"}
@@ -7,6 +7,7 @@ import ignore from "ignore";
7
7
  import { getConfigDir, getSessionFile } from "../config/index.js";
8
8
  import { buildBackupTosKey, uploadBackup } from "./backup-uploader.js";
9
9
  import { resolveTosCredentials } from "../tos-credentials.js";
10
+ import { isWorkspaceEnabled } from "../config/types.js";
10
11
  import { logger } from "../logger.js";
11
12
  import { getClaudeProjectSlug, getClaudeTranscriptDirForProfileDir, getReferencedClaudeTranscriptIds, } from "../utils/claude-transcripts.js";
12
13
  const execFileAsync = promisify(execFile);
@@ -18,6 +19,17 @@ const GLOBAL_BACKUP_IGNORE_FILE = ".visionclaw-backupignore";
18
19
  const LOCAL_BACKUP_IGNORE_FILE = ".backupignore";
19
20
  const MAX_IGNORED_PATH_LOG_LINES = 50;
20
21
  const UPLOAD_PROGRESS_LOG_INTERVAL_MS = 5_000;
22
+ const BACKUP_MANIFEST_FILE = "visionclaw-backup-manifest.json";
23
+ export function createBackupPlatformManifest(profile) {
24
+ return {
25
+ schemaVersion: 1,
26
+ createdAt: new Date().toISOString(),
27
+ sourcePlatform: process.platform,
28
+ sourceArch: process.arch,
29
+ profile,
30
+ portable: true,
31
+ };
32
+ }
21
33
  function formatBytes(bytes) {
22
34
  if (bytes < 1024)
23
35
  return `${bytes} B`;
@@ -467,6 +479,15 @@ async function snapshotGhCli(stagingDir, ignoreContext) {
467
479
  export async function runBackup(config,
468
480
  /** Absent for a channel-only owner; the Drive upload then skips the share. */
469
481
  ownerEmail, options = {}) {
482
+ // #1392: backup ships to the Agent's own Google Drive, so an Agent created
483
+ // without a Workspace has nowhere to put it. Refuse up front rather than
484
+ // silently retargeting TOS — that is a shared bucket, and quietly moving a
485
+ // user's private profile archive there would be a data-handling change nobody
486
+ // asked for. Checked before the temp dir and the zip so a refusal costs
487
+ // nothing.
488
+ if (!isWorkspaceEnabled(config)) {
489
+ throw new Error("Backup is unavailable: this Agent was created without Workspace support, so it has no Drive to upload to.");
490
+ }
470
491
  const zipName = `visionclaw-backup-${formatTimestamp()}.zip`;
471
492
  const tmpDir = fs.mkdtempSync(path.join(os.tmpdir(), "vc-backup-"));
472
493
  const zipPath = path.join(tmpDir, zipName);
@@ -477,6 +498,8 @@ ownerEmail, options = {}) {
477
498
  throw new Error(`Profile directory not found: ${profileDir}`);
478
499
  }
479
500
  const profileDirName = path.basename(profileDir);
501
+ fs.mkdirSync(stagingRoot, { recursive: true });
502
+ fs.writeFileSync(path.join(stagingRoot, BACKUP_MANIFEST_FILE), `${JSON.stringify(createBackupPlatformManifest(profileDirName), null, 2)}\n`, "utf-8");
480
503
  const globalIgnore = loadIgnoreFile(path.join(getHomeDir(), GLOBAL_BACKUP_IGNORE_FILE));
481
504
  const stagedProfileDir = path.join(stagingRoot, ".visionclaw", "profiles", profileDirName);
482
505
  const transcriptDir = getClaudeTranscriptDirForProfileDir(profileDir);
@@ -580,7 +603,7 @@ ownerEmail, options = {}) {
580
603
  if (ghCli.copiedCount > 0) {
581
604
  logger.system(`Including ${ghCli.copiedCount} GitHub CLI config file${ghCli.copiedCount === 1 ? "" : "s"}${ghCli.hasToken ? " (with OAuth token)" : ""} in backup.`);
582
605
  }
583
- const zipInputs = [".visionclaw"];
606
+ const zipInputs = [BACKUP_MANIFEST_FILE, ".visionclaw"];
584
607
  if (fs.existsSync(path.join(stagingRoot, ".claude"))) {
585
608
  zipInputs.push(".claude");
586
609
  }
@@ -1 +1 @@
1
- {"version":3,"file":"backup.js","sourceRoot":"","sources":["../../src/agent/backup.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"backup.js","sourceRoot":"","sources":["../../src/agent/backup.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"browser-launcher.d.ts","sourceRoot":"","sources":["../../src/agent/browser-launcher.ts"],"names":[],"mappings":"AAuOA;;;;GAIG;AACH,wBAAsB,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC,CAkBnD;AAED;;;GAGG;AACH,wBAAsB,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC,CAIpD;AAED,wBAAgB,cAAc,IAAI,MAAM,CAEvC"}
1
+ {"version":3,"file":"browser-launcher.d.ts","sourceRoot":"","sources":["../../src/agent/browser-launcher.ts"],"names":[],"mappings":"AA6OA;;;;GAIG;AACH,wBAAsB,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC,CAkBnD;AAED;;;GAGG;AACH,wBAAsB,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC,CAIpD;AAED,wBAAgB,cAAc,IAAI,MAAM,CAEvC"}
@@ -1,8 +1,8 @@
1
1
  import { execSync, spawn } from "node:child_process";
2
2
  import fs from "node:fs";
3
- import path from "node:path";
4
3
  import { getPlaywrightProfileDir } from "../config/index.js";
5
4
  import { logger } from "../logger.js";
5
+ import { getHostCapabilities, resolveChromePath } from "../system/host-capabilities.js";
6
6
  const CDP_PORT = 9222;
7
7
  const CDP_STARTUP_TIMEOUT_MS = 8_000;
8
8
  const CDP_POLL_INTERVAL_MS = 300;
@@ -23,23 +23,7 @@ function isVirtualMachine() {
23
23
  return false;
24
24
  }
25
25
  }
26
- function findChromePath() {
27
- if (process.platform === "darwin") {
28
- return "/Applications/Google Chrome.app/Contents/MacOS/Google Chrome";
29
- }
30
- // Windows: check common installation paths
31
- const candidates = [
32
- path.join(process.env.PROGRAMFILES ?? "C:\\Program Files", "Google", "Chrome", "Application", "chrome.exe"),
33
- path.join(process.env["PROGRAMFILES(X86)"] ?? "C:\\Program Files (x86)", "Google", "Chrome", "Application", "chrome.exe"),
34
- path.join(process.env.LOCALAPPDATA ?? "", "Google", "Chrome", "Application", "chrome.exe"),
35
- ];
36
- for (const p of candidates) {
37
- if (fs.existsSync(p))
38
- return p;
39
- }
40
- return candidates[0]; // fallback — will fail with a clear "not found" message
41
- }
42
- const CHROME_PATH = findChromePath();
26
+ const CHROME_PATH = resolveChromePath();
43
27
  /**
44
28
  * Check whether a CDP-enabled browser is responding on the configured port.
45
29
  */
@@ -104,8 +88,13 @@ function isCdpChromeProcessRunning() {
104
88
  if (process.platform === "win32")
105
89
  return false;
106
90
  try {
107
- execSync(`pgrep -f -- '--remote-debugging-port=${CDP_PORT}'`, { stdio: "ignore" });
108
- return true;
91
+ const output = execSync(`pgrep -af -- '--remote-debugging-port=${CDP_PORT}'`, {
92
+ encoding: "utf-8",
93
+ });
94
+ return output
95
+ .split(/\r?\n/)
96
+ .some((line) => line.includes(`--remote-debugging-port=${CDP_PORT}`)
97
+ && !line.includes("pgrep -af"));
109
98
  }
110
99
  catch {
111
100
  // pgrep exits non-zero when no matching process is found — expected.
@@ -152,6 +141,11 @@ async function killAndWait() {
152
141
  * was already running.
153
142
  */
154
143
  async function launchBrowser() {
144
+ const capabilities = getHostCapabilities();
145
+ if (!capabilities.browser.visible) {
146
+ logger.warn("Visible Chrome requires an interactive desktop session");
147
+ return false;
148
+ }
155
149
  if (await isCdpAlive()) {
156
150
  return false;
157
151
  }
@@ -185,9 +179,17 @@ async function launchBrowser() {
185
179
  flags.push("--disable-gpu", "--disable-software-rasterizer");
186
180
  logger.system("VM detected — Chrome launched with GPU disabled");
187
181
  }
182
+ if (process.platform === "linux") {
183
+ flags.push("--disable-dev-shm-usage");
184
+ if (process.env.VISIONCLAW_STATE_DIR === "/var/lib/visionclaw") {
185
+ flags.push("--disable-gpu", "--no-sandbox");
186
+ logger.system("Linux container detected — Chrome launched with container-isolation safeguards");
187
+ }
188
+ }
188
189
  const child = spawn(CHROME_PATH, flags, {
189
190
  detached: true,
190
191
  stdio: "ignore",
192
+ env: process.env,
191
193
  });
192
194
  child.on("error", (err) => {
193
195
  logger.warn(`Browser process error: ${err.message}`);
@@ -1 +1 @@
1
- {"version":3,"file":"browser-launcher.js","sourceRoot":"","sources":["../../src/agent/browser-launcher.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"browser-launcher.js","sourceRoot":"","sources":["../../src/agent/browser-launcher.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"command-handlers.d.ts","sourceRoot":"","sources":["../../src/agent/command-handlers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAgCxE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAE3D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EAAE,KAAK,UAAU,EAAuB,MAAM,YAAY,CAAC;AAqBlE,MAAM,WAAW,kBAAkB;IACjC,UAAU,EAAE,UAAU,CAAC;IACvB,cAAc,EAAE,cAAc,CAAC;IAC/B,YAAY,EAAE,YAAY,CAAC;IAC3B,OAAO,EAAE,cAAc,CAAC;IACxB,MAAM,EAAE,gBAAgB,CAAC;IACzB,WAAW,EAAE,WAAW,CAAC;IACzB,SAAS,EAAE,gBAAgB,CAAC;IAC5B,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;IAC1B,QAAQ,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAChC;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,kBAAkB,GAAG,IAAI,CAopCtE"}
1
+ {"version":3,"file":"command-handlers.d.ts","sourceRoot":"","sources":["../../src/agent/command-handlers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAiCxE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAE3D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EAAE,KAAK,UAAU,EAAuB,MAAM,YAAY,CAAC;AA6BlE,MAAM,WAAW,kBAAkB;IACjC,UAAU,EAAE,UAAU,CAAC;IACvB,cAAc,EAAE,cAAc,CAAC;IAC/B,YAAY,EAAE,YAAY,CAAC;IAC3B,OAAO,EAAE,cAAc,CAAC;IACxB,MAAM,EAAE,gBAAgB,CAAC;IACzB,WAAW,EAAE,WAAW,CAAC;IACzB,SAAS,EAAE,gBAAgB,CAAC;IAC5B,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;IAC1B,QAAQ,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAChC;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,kBAAkB,GAAG,IAAI,CA2sCtE"}
@@ -13,6 +13,8 @@ import { startWeixinLoginWithQr, waitForWeixinLogin, } from "@tencent-weixin/ope
13
13
  import { normalizeAccountId } from "openclaw/plugin-sdk";
14
14
  import { scheduleRestart } from "../utils/restart.js";
15
15
  import { listBoundOwnerChannels, resolveOwnerPrimaryTarget } from "./owner-channel-resolver.js";
16
+ import { applyEngineSwitchTarget, describeEngineTarget, isAlreadyOnEngineTarget, resolveEngineSwitchTarget, validateEngineSwitchTarget, } from "./engine-switch-target.js";
17
+ import { LlmGatewayModelsError } from "./llm-gateway-models.js";
16
18
  /**
17
19
  * Register all slash-command event handlers on the channel manager.
18
20
  * These handle /stop, /sleep, /console, /restart,
@@ -178,7 +180,7 @@ export function registerCommandHandlers(deps) {
178
180
  logger.warn(`Failed to send console URL: ${err instanceof Error ? err.message : String(err)}`);
179
181
  });
180
182
  });
181
- channelManager.on("restart_request", (req) => {
183
+ const handleRestartRequest = (req, sendConfirmation = true) => {
182
184
  logger.system(`Restart requested by ${req.sender} via ${req.channel}`);
183
185
  // Write a marker so the agent can notify the owner after restart.
184
186
  writePendingRestart({
@@ -195,11 +197,14 @@ export function registerCommandHandlers(deps) {
195
197
  attachments: [],
196
198
  timestamp: new Date().toISOString(),
197
199
  });
198
- channelManager
199
- .sendMessage(req.channel, req.sender, t("cmd.restart.confirm", getLocale()))
200
- .catch((err) => {
201
- logger.warn(`Failed to send restart confirmation: ${err instanceof Error ? err.message : String(err)}`);
202
- });
200
+ if (sendConfirmation) {
201
+ const confirmation = req.replyTo
202
+ ? channelManager.deliver({ channel: req.channel, to: req.sender, replyTo: req.replyTo }, t("cmd.restart.confirm", getLocale()))
203
+ : channelManager.sendMessage(req.channel, req.sender, t("cmd.restart.confirm", getLocale()));
204
+ confirmation.catch((err) => {
205
+ logger.warn(`Failed to send restart confirmation: ${err instanceof Error ? err.message : String(err)}`);
206
+ });
207
+ }
203
208
  const doRestart = async () => {
204
209
  const { runGracefulShutdown } = await import("./state.js");
205
210
  const shutdownHook = async () => {
@@ -213,6 +218,48 @@ export function registerCommandHandlers(deps) {
213
218
  doRestart().catch((err) => {
214
219
  logger.err(`Failed to schedule restart: ${err instanceof Error ? err.message : String(err)}`);
215
220
  });
221
+ };
222
+ channelManager.on("restart_request", (req) => {
223
+ handleRestartRequest(req);
224
+ });
225
+ channelManager.on("engine_switch_request", (req) => {
226
+ const sendEngineReply = (message) => req.replyTo
227
+ ? channelManager.deliver({ channel: req.channel, to: req.sender, replyTo: req.replyTo }, message)
228
+ : channelManager.sendMessage(req.channel, req.sender, message);
229
+ const switchEngine = async () => {
230
+ const target = resolveEngineSwitchTarget(req.engine);
231
+ if (!target) {
232
+ await sendEngineReply(`Unsupported engine "${req.engine}". Use /engine default, /engine claude, /engine gpt, or /engine <modelId>.`);
233
+ return;
234
+ }
235
+ if (isAlreadyOnEngineTarget(config, target)) {
236
+ await sendEngineReply(`Already using ${describeEngineTarget(target)}.`);
237
+ return;
238
+ }
239
+ try {
240
+ await validateEngineSwitchTarget(config, target);
241
+ }
242
+ catch (err) {
243
+ const detail = err instanceof LlmGatewayModelsError || err instanceof Error
244
+ ? err.message
245
+ : String(err);
246
+ await sendEngineReply(`Cannot switch engine: ${detail}`);
247
+ return;
248
+ }
249
+ const nextConfig = { ...config };
250
+ applyEngineSwitchTarget(nextConfig, target);
251
+ saveConfig(nextConfig);
252
+ applyEngineSwitchTarget(config, target);
253
+ const label = describeEngineTarget(target);
254
+ logger.system(`Engine switch to ${label} requested by ${req.sender} via ${req.channel}`);
255
+ await sendEngineReply(`Switching to ${label}. Restarting agent...`);
256
+ handleRestartRequest(req, false);
257
+ };
258
+ switchEngine().catch((err) => {
259
+ const detail = err instanceof Error ? err.message : String(err);
260
+ logger.warn(`Failed to handle engine switch request: ${detail}`);
261
+ void sendEngineReply(`Cannot switch engine: ${detail}`).catch(() => undefined);
262
+ });
216
263
  });
217
264
  channelManager.on("tunnel_request", (req) => {
218
265
  logger.system(`Tunnel restart requested by ${req.sender} via ${req.channel}`);