@poolzin/pool-bot 1.28.0 → 2026.1.26

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1024) hide show
  1. package/CHANGELOG.md +1123 -32
  2. package/README.md +37 -47
  3. package/assets/chrome-extension/background.js +5 -5
  4. package/assets/chrome-extension/manifest.json +3 -3
  5. package/assets/chrome-extension/options.html +6 -5
  6. package/assets/chrome-extension/options.js +1 -1
  7. package/dist/acp/client.js +5 -5
  8. package/dist/acp/server.js +1 -1
  9. package/dist/acp/types.js +2 -2
  10. package/dist/agents/agent-paths.js +3 -3
  11. package/dist/agents/auth-health.js +6 -2
  12. package/dist/agents/auth-profiles/doctor.js +1 -1
  13. package/dist/agents/auth-profiles/external-cli-sync.js +150 -5
  14. package/dist/agents/auth-profiles/oauth.js +7 -26
  15. package/dist/agents/auth-profiles/paths.js +3 -3
  16. package/dist/agents/auth-profiles/store.js +13 -5
  17. package/dist/agents/bash-tools.shared.js +1 -8
  18. package/dist/agents/cli-backends.js +0 -8
  19. package/dist/agents/cli-runner/helpers.js +3 -3
  20. package/dist/agents/cli-runner.js +2 -2
  21. package/dist/agents/compaction.js +0 -3
  22. package/dist/agents/context.js +4 -4
  23. package/dist/agents/docs-path.js +3 -3
  24. package/dist/agents/identity.js +1 -1
  25. package/dist/agents/memory-search.js +2 -7
  26. package/dist/agents/minimax-vlm.js +1 -1
  27. package/dist/agents/model-auth.js +1 -1
  28. package/dist/agents/model-catalog.js +4 -4
  29. package/dist/agents/model-fallback.js +0 -22
  30. package/dist/agents/model-selection.js +1 -1
  31. package/dist/agents/models-config.js +3 -3
  32. package/dist/agents/models-config.providers.js +4 -4
  33. package/dist/agents/pi-embedded-helpers/openai.js +1 -1
  34. package/dist/agents/pi-embedded-runner/cache-ttl.js +1 -1
  35. package/dist/agents/pi-embedded-runner/compact.js +8 -8
  36. package/dist/agents/pi-embedded-runner/extensions.js +0 -5
  37. package/dist/agents/pi-embedded-runner/model.js +2 -2
  38. package/dist/agents/pi-embedded-runner/run/attempt.js +6 -10
  39. package/dist/agents/pi-embedded-runner/run.js +4 -4
  40. package/dist/agents/pi-embedded-runner/sandbox-info.js +4 -1
  41. package/dist/agents/pi-embedded-runner/utils.js +1 -1
  42. package/dist/agents/pi-embedded-utils.js +1 -7
  43. package/dist/agents/pi-extensions/compaction-safeguard.js +3 -32
  44. package/dist/agents/pi-tools.js +15 -25
  45. package/dist/agents/pi-tools.policy.js +1 -34
  46. package/dist/agents/pi-tools.read.js +2 -2
  47. package/dist/agents/sandbox/browser.js +7 -5
  48. package/dist/agents/sandbox/config.js +12 -0
  49. package/dist/agents/sandbox/constants.js +7 -7
  50. package/dist/agents/sandbox/context.js +3 -3
  51. package/dist/agents/sandbox/docker.js +8 -8
  52. package/dist/agents/sandbox/runtime-status.js +1 -1
  53. package/dist/agents/session-transcript-repair.js +1 -1
  54. package/dist/agents/session-write-lock.js +0 -68
  55. package/dist/agents/skills/config.js +8 -9
  56. package/dist/agents/skills/env-overrides.js +1 -1
  57. package/dist/agents/skills/frontmatter.js +14 -15
  58. package/dist/agents/skills/workspace.js +7 -7
  59. package/dist/agents/skills-install.js +1 -1
  60. package/dist/agents/skills-status.js +12 -12
  61. package/dist/agents/subagent-registry.store.js +2 -2
  62. package/dist/agents/system-prompt.js +32 -21
  63. package/dist/agents/tool-images.js +1 -1
  64. package/dist/agents/tool-policy.js +2 -8
  65. package/dist/agents/tools/browser-tool.js +79 -19
  66. package/dist/agents/tools/browser-tool.schema.js +2 -1
  67. package/dist/agents/tools/cron-tool.js +1 -44
  68. package/dist/agents/tools/discord-actions-guild.js +1 -5
  69. package/dist/agents/tools/image-tool.js +2 -2
  70. package/dist/agents/tools/message-tool.js +0 -1
  71. package/dist/agents/tools/sessions-send-helpers.js +2 -17
  72. package/dist/agents/tools/telegram-actions.js +1 -93
  73. package/dist/agents/tools/web-fetch.js +103 -123
  74. package/dist/agents/tools/web-search.js +7 -7
  75. package/dist/agents/workspace.js +0 -36
  76. package/dist/auto-reply/commands-registry.data.js +3 -68
  77. package/dist/auto-reply/commands-registry.js +11 -14
  78. package/dist/auto-reply/reply/agent-runner-execution.js +3 -21
  79. package/dist/auto-reply/reply/agent-runner-memory.js +0 -5
  80. package/dist/auto-reply/reply/bash-command.js +2 -2
  81. package/dist/auto-reply/reply/commands-context-report.js +2 -2
  82. package/dist/auto-reply/reply/commands-info.js +5 -50
  83. package/dist/auto-reply/reply/commands-session.js +4 -4
  84. package/dist/auto-reply/reply/commands-tts.js +63 -61
  85. package/dist/auto-reply/reply/directive-handling.shared.js +1 -1
  86. package/dist/auto-reply/reply/dispatch-from-config.js +1 -65
  87. package/dist/auto-reply/reply/followup-runner.js +0 -5
  88. package/dist/auto-reply/reply/get-reply-inline-actions.js +2 -2
  89. package/dist/auto-reply/reply/get-reply-run.js +0 -4
  90. package/dist/auto-reply/reply/groups.js +1 -1
  91. package/dist/auto-reply/reply/history.js +0 -23
  92. package/dist/auto-reply/reply/reply-elevated.js +1 -1
  93. package/dist/auto-reply/reply/session-updates.js +1 -6
  94. package/dist/auto-reply/status.js +49 -141
  95. package/dist/browser/bridge-server.js +3 -1
  96. package/dist/browser/client-actions-core.js +7 -13
  97. package/dist/browser/client-actions-observe.js +8 -14
  98. package/dist/browser/client-actions-state.js +15 -21
  99. package/dist/browser/client-fetch.js +61 -74
  100. package/dist/browser/client.js +21 -19
  101. package/dist/browser/config.js +26 -13
  102. package/dist/browser/constants.js +1 -1
  103. package/dist/browser/extension-relay.js +3 -3
  104. package/dist/browser/pw-session.js +4 -41
  105. package/dist/browser/pw-tools-core.downloads.js +1 -1
  106. package/dist/browser/pw-tools-core.interactions.js +5 -5
  107. package/dist/browser/pw-tools-core.responses.js +1 -1
  108. package/dist/browser/routes/agent.act.js +0 -13
  109. package/dist/browser/routes/agent.debug.js +1 -1
  110. package/dist/browser/routes/basic.js +1 -0
  111. package/dist/browser/server-context.js +3 -3
  112. package/dist/browser/server.js +9 -7
  113. package/dist/build-info.json +3 -3
  114. package/dist/canvas-host/a2ui/.bundle.hash +1 -1
  115. package/dist/canvas-host/a2ui/a2ui.bundle.js +1618 -1620
  116. package/dist/canvas-host/a2ui/index.html +28 -28
  117. package/dist/canvas-host/a2ui.js +19 -25
  118. package/dist/canvas-host/server.js +32 -66
  119. package/dist/channels/plugins/actions/discord/handle-action.guild-admin.js +1 -5
  120. package/dist/channels/plugins/actions/telegram.js +7 -60
  121. package/dist/channels/plugins/catalog.js +4 -6
  122. package/dist/channels/plugins/group-mentions.js +1 -48
  123. package/dist/channels/plugins/helpers.js +2 -2
  124. package/dist/channels/plugins/message-action-names.js +0 -1
  125. package/dist/channels/plugins/onboarding/imessage.js +1 -1
  126. package/dist/channels/plugins/onboarding/signal.js +2 -2
  127. package/dist/channels/plugins/onboarding/slack.js +4 -4
  128. package/dist/channels/plugins/onboarding/telegram.js +9 -17
  129. package/dist/channels/plugins/onboarding/whatsapp.js +4 -4
  130. package/dist/channels/plugins/outbound/telegram.js +0 -38
  131. package/dist/channels/plugins/pairing-message.js +1 -1
  132. package/dist/channels/plugins/status-issues/bluebubbles.js +1 -1
  133. package/dist/channels/plugins/status-issues/whatsapp.js +2 -2
  134. package/dist/channels/registry.js +1 -1
  135. package/dist/cli/acp-cli.js +2 -2
  136. package/dist/cli/argv.js +7 -14
  137. package/dist/cli/banner.js +1 -3
  138. package/dist/cli/browser-cli-actions-input/register.element.js +44 -72
  139. package/dist/cli/browser-cli-actions-input/register.files-downloads.js +35 -55
  140. package/dist/cli/browser-cli-actions-input/register.form-wait-eval.js +28 -41
  141. package/dist/cli/browser-cli-actions-input/register.navigation.js +14 -23
  142. package/dist/cli/browser-cli-actions-input/shared.js +3 -10
  143. package/dist/cli/browser-cli-actions-observe.js +21 -29
  144. package/dist/cli/browser-cli-debug.js +35 -49
  145. package/dist/cli/browser-cli-examples.js +29 -29
  146. package/dist/cli/browser-cli-extension.js +8 -8
  147. package/dist/cli/browser-cli-inspect.js +17 -23
  148. package/dist/cli/browser-cli-manage.js +56 -106
  149. package/dist/cli/browser-cli-shared.js +1 -34
  150. package/dist/cli/browser-cli-state.cookies-storage.js +39 -53
  151. package/dist/cli/browser-cli-state.js +64 -90
  152. package/dist/cli/browser-cli.js +5 -4
  153. package/dist/cli/channels-cli.js +1 -1
  154. package/dist/cli/command-format.js +7 -11
  155. package/dist/cli/config-cli.js +2 -2
  156. package/dist/cli/cron-cli/register.js +1 -1
  157. package/dist/cli/daemon-cli/install.js +1 -1
  158. package/dist/cli/daemon-cli/register.js +1 -1
  159. package/dist/cli/daemon-cli/shared.js +3 -5
  160. package/dist/cli/daemon-cli/status.print.js +6 -6
  161. package/dist/cli/directory-cli.js +1 -1
  162. package/dist/cli/dns-cli.js +7 -7
  163. package/dist/cli/docs-cli.js +2 -2
  164. package/dist/cli/exec-approvals-cli.js +2 -2
  165. package/dist/cli/gateway-cli/dev.js +4 -4
  166. package/dist/cli/gateway-cli/register.js +1 -1
  167. package/dist/cli/gateway-cli/run.js +8 -11
  168. package/dist/cli/gateway-cli/shared.js +4 -4
  169. package/dist/cli/hooks-cli.js +3 -3
  170. package/dist/cli/logs-cli.js +3 -3
  171. package/dist/cli/memory-cli.js +1 -1
  172. package/dist/cli/models-cli.js +2 -2
  173. package/dist/cli/node-cli/daemon.js +2 -2
  174. package/dist/cli/node-cli/register.js +1 -1
  175. package/dist/cli/nodes-camera.js +1 -3
  176. package/dist/cli/nodes-canvas.js +1 -3
  177. package/dist/cli/nodes-cli/register.canvas.js +1 -1
  178. package/dist/cli/nodes-cli/register.js +1 -1
  179. package/dist/cli/nodes-screen.js +1 -1
  180. package/dist/cli/pairing-cli.js +3 -3
  181. package/dist/cli/plugin-registry.js +2 -2
  182. package/dist/cli/plugins-cli.js +3 -3
  183. package/dist/cli/profile.js +1 -1
  184. package/dist/cli/program/config-guard.js +1 -1
  185. package/dist/cli/program/help.js +14 -13
  186. package/dist/cli/program/message/register.send.js +1 -2
  187. package/dist/cli/program/preaction.js +2 -4
  188. package/dist/cli/program/register.agent.js +12 -12
  189. package/dist/cli/program/register.configure.js +1 -1
  190. package/dist/cli/program/register.maintenance.js +4 -4
  191. package/dist/cli/program/register.message.js +5 -5
  192. package/dist/cli/program/register.onboard.js +3 -5
  193. package/dist/cli/program/register.setup.js +2 -2
  194. package/dist/cli/program/register.status-health-sessions.js +13 -13
  195. package/dist/cli/run-main.js +4 -11
  196. package/dist/cli/sandbox-cli.js +19 -19
  197. package/dist/cli/security-cli.js +8 -18
  198. package/dist/cli/skills-cli.js +3 -3
  199. package/dist/cli/system-cli.js +1 -1
  200. package/dist/cli/tagline.js +1 -1
  201. package/dist/cli/tui-cli.js +1 -1
  202. package/dist/cli/update-cli.js +42 -58
  203. package/dist/cli/webhooks-cli.js +6 -6
  204. package/dist/commands/agent-via-gateway.js +1 -1
  205. package/dist/commands/agent.js +1 -2
  206. package/dist/commands/agents.command-shared.js +1 -1
  207. package/dist/commands/agents.commands.add.js +3 -2
  208. package/dist/commands/agents.commands.list.js +1 -1
  209. package/dist/commands/auth-choice-options.js +54 -4
  210. package/dist/commands/auth-choice.apply.anthropic.js +109 -6
  211. package/dist/commands/auth-choice.apply.openai.js +33 -1
  212. package/dist/commands/auth-choice.apply.plugin-provider.js +2 -2
  213. package/dist/commands/channels/list.js +2 -2
  214. package/dist/commands/channels/shared.js +1 -1
  215. package/dist/commands/channels/status.js +1 -1
  216. package/dist/commands/chutes-oauth.js +1 -1
  217. package/dist/commands/configure.channels.js +4 -4
  218. package/dist/commands/configure.gateway-auth.js +8 -1
  219. package/dist/commands/configure.gateway.js +10 -1
  220. package/dist/commands/configure.wizard.js +11 -11
  221. package/dist/commands/daemon-install-helpers.js +1 -1
  222. package/dist/commands/dashboard.js +1 -1
  223. package/dist/commands/docs.js +5 -5
  224. package/dist/commands/doctor-auth.js +3 -122
  225. package/dist/commands/doctor-config-flow.js +7 -7
  226. package/dist/commands/doctor-format.js +2 -2
  227. package/dist/commands/doctor-gateway-daemon-flow.js +1 -1
  228. package/dist/commands/doctor-gateway-services.js +3 -3
  229. package/dist/commands/doctor-security.js +1 -48
  230. package/dist/commands/doctor-ui.js +2 -2
  231. package/dist/commands/doctor-update.js +4 -4
  232. package/dist/commands/doctor-workspace-status.js +2 -2
  233. package/dist/commands/doctor-workspace.js +4 -4
  234. package/dist/commands/doctor.js +12 -13
  235. package/dist/commands/gateway-status.js +2 -2
  236. package/dist/commands/models/auth.js +22 -23
  237. package/dist/commands/models/list.probe.js +2 -2
  238. package/dist/commands/models/list.registry.js +4 -4
  239. package/dist/commands/models/list.status-command.js +9 -8
  240. package/dist/commands/onboard-auth.credentials.js +2 -2
  241. package/dist/commands/onboard-channels.js +3 -3
  242. package/dist/commands/onboard-helpers.js +4 -4
  243. package/dist/commands/onboard-hooks.js +4 -4
  244. package/dist/commands/onboard-non-interactive/local/auth-choice.js +34 -38
  245. package/dist/commands/onboard-non-interactive/local/gateway-config.js +4 -7
  246. package/dist/commands/onboard-non-interactive/local.js +1 -1
  247. package/dist/commands/onboard-non-interactive/remote.js +1 -1
  248. package/dist/commands/onboard-non-interactive.js +1 -1
  249. package/dist/commands/onboard-remote.js +2 -2
  250. package/dist/commands/onboard-skills.js +2 -2
  251. package/dist/commands/onboard.js +4 -25
  252. package/dist/commands/onboarding/plugin-install.js +2 -2
  253. package/dist/commands/reset.js +3 -3
  254. package/dist/commands/sandbox-display.js +1 -1
  255. package/dist/commands/sandbox-explain.js +2 -2
  256. package/dist/commands/setup.js +2 -2
  257. package/dist/commands/signal-install.js +2 -2
  258. package/dist/commands/status-all/diagnosis.js +1 -1
  259. package/dist/commands/status-all/report-lines.js +1 -1
  260. package/dist/commands/status-all.js +3 -3
  261. package/dist/commands/status.command.js +9 -9
  262. package/dist/commands/status.update.js +3 -3
  263. package/dist/commands/uninstall.js +3 -3
  264. package/dist/config/config.js +1 -1
  265. package/dist/config/group-policy.js +0 -69
  266. package/dist/config/io.js +5 -17
  267. package/dist/config/legacy.migrations.part-3.js +0 -3
  268. package/dist/config/logging.js +3 -3
  269. package/dist/config/paths.js +13 -43
  270. package/dist/config/schema.js +9 -21
  271. package/dist/config/sessions/transcript.js +1 -1
  272. package/dist/config/validation.js +2 -2
  273. package/dist/config/version.js +4 -4
  274. package/dist/config/zod-schema.agent-defaults.js +0 -1
  275. package/dist/config/zod-schema.agent-runtime.js +7 -39
  276. package/dist/config/zod-schema.hooks.js +0 -2
  277. package/dist/config/zod-schema.js +3 -9
  278. package/dist/config/zod-schema.providers-core.js +0 -23
  279. package/dist/config/zod-schema.providers-whatsapp.js +0 -3
  280. package/dist/control-ui/assets/{index-HlBhZmfj.js → index-Cl-Y9zqE.js} +578 -620
  281. package/dist/control-ui/assets/index-Cl-Y9zqE.js.map +1 -0
  282. package/dist/control-ui/assets/index-DEPfFcOb.css +1 -0
  283. package/dist/control-ui/index.html +4 -4
  284. package/dist/cron/isolated-agent/run.js +3 -38
  285. package/dist/daemon/constants.js +12 -12
  286. package/dist/daemon/inspect.js +11 -11
  287. package/dist/daemon/program-args.js +1 -1
  288. package/dist/daemon/systemd-hints.js +1 -1
  289. package/dist/daemon/systemd-unit.js +1 -1
  290. package/dist/discord/monitor/listeners.js +1 -25
  291. package/dist/discord/monitor/native-command.js +5 -7
  292. package/dist/discord/monitor/provider.js +7 -21
  293. package/dist/entry.js +4 -4
  294. package/dist/gateway/auth.js +19 -52
  295. package/dist/gateway/hooks-mapping.js +4 -18
  296. package/dist/gateway/hooks.js +7 -5
  297. package/dist/gateway/http-utils.js +5 -3
  298. package/dist/gateway/net.js +1 -1
  299. package/dist/gateway/openai-http.js +3 -3
  300. package/dist/gateway/openresponses-http.js +4 -4
  301. package/dist/gateway/protocol/client-info.js +5 -5
  302. package/dist/gateway/protocol/schema/logs-chat.js +1 -1
  303. package/dist/gateway/server/health-state.js +3 -3
  304. package/dist/gateway/server/hooks.js +0 -1
  305. package/dist/gateway/server/ws-connection/message-handler.js +35 -44
  306. package/dist/gateway/server-browser.js +3 -14
  307. package/dist/gateway/server-chat.js +2 -28
  308. package/dist/gateway/server-discovery-runtime.js +17 -25
  309. package/dist/gateway/server-discovery.js +5 -5
  310. package/dist/gateway/server-http.js +3 -9
  311. package/dist/gateway/server-methods/agent.js +0 -2
  312. package/dist/gateway/server-methods/chat.js +0 -5
  313. package/dist/gateway/server-methods/config.js +8 -8
  314. package/dist/gateway/server-methods/logs.js +1 -1
  315. package/dist/gateway/server-methods/skills.js +3 -3
  316. package/dist/gateway/server-methods/update.js +2 -2
  317. package/dist/gateway/server-methods-list.js +0 -1
  318. package/dist/gateway/server-methods.js +0 -3
  319. package/dist/gateway/server-plugins.js +2 -2
  320. package/dist/gateway/server-restart-sentinel.js +5 -10
  321. package/dist/gateway/server-runtime-config.js +2 -5
  322. package/dist/gateway/server.impl.js +6 -7
  323. package/dist/gateway/session-utils.js +11 -31
  324. package/dist/gateway/test-helpers.mocks.js +5 -5
  325. package/dist/gateway/test-helpers.server.js +9 -28
  326. package/dist/gateway/tools-invoke-http.js +8 -15
  327. package/dist/hooks/bundled/boot-md/HOOK.md +3 -3
  328. package/dist/hooks/bundled/command-logger/HOOK.md +5 -5
  329. package/dist/hooks/bundled/session-memory/HOOK.md +4 -4
  330. package/dist/hooks/bundled/session-memory/handler.js +2 -2
  331. package/dist/hooks/bundled/soul-evil/HOOK.md +5 -5
  332. package/dist/hooks/bundled-dir.js +1 -1
  333. package/dist/hooks/config.js +7 -8
  334. package/dist/hooks/frontmatter.js +15 -16
  335. package/dist/hooks/gmail-ops.js +4 -4
  336. package/dist/hooks/hooks-status.js +13 -13
  337. package/dist/hooks/install.js +7 -8
  338. package/dist/hooks/internal-hooks.js +1 -1
  339. package/dist/hooks/llm-slug-generator.js +1 -1
  340. package/dist/hooks/loader.js +3 -3
  341. package/dist/hooks/plugin-hooks.js +8 -8
  342. package/dist/hooks/workspace.js +9 -10
  343. package/dist/imessage/monitor/monitor-provider.js +2 -2
  344. package/dist/index.js +4 -4
  345. package/dist/infra/agent-events.js +0 -3
  346. package/dist/infra/bonjour-discovery.js +9 -9
  347. package/dist/infra/bonjour.js +12 -19
  348. package/dist/infra/gateway-lock.js +1 -1
  349. package/dist/infra/heartbeat-visibility.js +0 -14
  350. package/dist/infra/heartbeat-wake.js +2 -2
  351. package/dist/infra/machine-name.js +1 -1
  352. package/dist/infra/net/ssrf.js +1 -77
  353. package/dist/infra/outbound/message-action-spec.js +0 -1
  354. package/dist/infra/outbound/targets.js +1 -1
  355. package/dist/infra/path-env.js +7 -7
  356. package/dist/infra/ports-format.js +2 -2
  357. package/dist/infra/ports.js +2 -2
  358. package/dist/infra/provider-usage.auth.js +4 -2
  359. package/dist/infra/provider-usage.fetch.claude.js +1 -1
  360. package/dist/infra/provider-usage.fetch.minimax.js +1 -1
  361. package/dist/infra/restart-sentinel.js +1 -1
  362. package/dist/infra/restart.js +1 -1
  363. package/dist/infra/retry-policy.js +1 -4
  364. package/dist/infra/runtime-guard.js +2 -2
  365. package/dist/infra/shell-env.js +1 -1
  366. package/dist/infra/skills-remote.js +3 -3
  367. package/dist/infra/tailscale.js +1 -63
  368. package/dist/infra/tls/gateway.js +1 -1
  369. package/dist/infra/unhandled-rejections.js +2 -89
  370. package/dist/infra/update-check.js +4 -2
  371. package/dist/infra/update-global.js +5 -5
  372. package/dist/infra/update-runner.js +8 -32
  373. package/dist/infra/update-startup.js +3 -3
  374. package/dist/infra/warnings.js +1 -1
  375. package/dist/infra/widearea-dns.js +10 -10
  376. package/dist/line/monitor.js +5 -1
  377. package/dist/line/webhook.js +6 -2
  378. package/dist/logging/logger.js +4 -4
  379. package/dist/macos/gateway-daemon.js +2 -2
  380. package/dist/macos/relay.js +4 -4
  381. package/dist/media/host.js +1 -1
  382. package/dist/media/image-ops.js +1 -1
  383. package/dist/media/input-files.js +32 -40
  384. package/dist/media/server.js +15 -39
  385. package/dist/media/store.js +52 -72
  386. package/dist/media-understanding/attachments.js +1 -1
  387. package/dist/media-understanding/providers/image.js +2 -2
  388. package/dist/media-understanding/runner.js +1 -33
  389. package/dist/memory/batch-gemini.js +1 -1
  390. package/dist/memory/batch-openai.js +1 -1
  391. package/dist/memory/embeddings.js +1 -1
  392. package/dist/node-host/runner.js +56 -60
  393. package/dist/pairing/pairing-messages.js +2 -2
  394. package/dist/plugin-sdk/index.js +0 -1
  395. package/dist/plugins/cli.js +2 -2
  396. package/dist/plugins/discovery.js +4 -5
  397. package/dist/plugins/install.js +7 -8
  398. package/dist/plugins/loader.js +4 -11
  399. package/dist/plugins/manifest-registry.js +2 -2
  400. package/dist/plugins/manifest.js +1 -16
  401. package/dist/plugins/providers.js +2 -2
  402. package/dist/plugins/registry.js +5 -5
  403. package/dist/plugins/runtime.js +1 -1
  404. package/dist/plugins/services.js +3 -3
  405. package/dist/plugins/status.js +2 -2
  406. package/dist/plugins/tools.js +2 -2
  407. package/dist/plugins/update.js +3 -3
  408. package/dist/providers/qwen-portal-oauth.js +1 -1
  409. package/dist/routing/session-key.js +12 -17
  410. package/dist/security/audit-extra.js +69 -116
  411. package/dist/security/audit-fs.js +0 -78
  412. package/dist/security/audit.js +88 -121
  413. package/dist/security/fix.js +8 -93
  414. package/dist/slack/monitor/media.js +4 -32
  415. package/dist/slack/monitor/message-handler/dispatch.js +1 -2
  416. package/dist/slack/monitor/slash.js +3 -3
  417. package/dist/slack/monitor.test-helpers.js +1 -1
  418. package/dist/telegram/bot/delivery.js +22 -139
  419. package/dist/telegram/bot-handlers.js +8 -70
  420. package/dist/telegram/bot-message-context.js +21 -79
  421. package/dist/telegram/bot-message-dispatch.js +0 -64
  422. package/dist/telegram/bot-native-commands.js +94 -244
  423. package/dist/telegram/bot.js +2 -18
  424. package/dist/telegram/fetch.js +1 -25
  425. package/dist/telegram/monitor.js +3 -11
  426. package/dist/telegram/send.js +4 -148
  427. package/dist/telegram/webhook-set.js +6 -13
  428. package/dist/telegram/webhook.js +3 -8
  429. package/dist/terminal/links.js +1 -1
  430. package/dist/tts/tts.js +22 -27
  431. package/dist/tui/components/filterable-select-list.js +1 -1
  432. package/dist/tui/components/searchable-select-list.js +1 -2
  433. package/dist/tui/gateway-chat.js +1 -1
  434. package/dist/tui/tui.js +1 -1
  435. package/dist/version.js +1 -1
  436. package/dist/web/active-listener.js +1 -1
  437. package/dist/web/auth-store.js +1 -1
  438. package/dist/web/auto-reply/monitor/process-message.js +1 -1
  439. package/dist/web/auto-reply/monitor.js +1 -1
  440. package/dist/web/login.js +1 -1
  441. package/dist/web/session.js +2 -2
  442. package/dist/wizard/onboarding.finalize.js +14 -14
  443. package/dist/wizard/onboarding.gateway-config.js +11 -1
  444. package/dist/wizard/onboarding.js +10 -21
  445. package/docs/CNAME +1 -1
  446. package/docs/POOL-BOT.md +119 -0
  447. package/docs/_config.yml +2 -2
  448. package/docs/_layouts/default.html +9 -9
  449. package/docs/assets/terminal.css +0 -3
  450. package/docs/assets/theme.js +1 -1
  451. package/docs/automation/auth-monitoring.md +7 -7
  452. package/docs/automation/cron-jobs.md +13 -13
  453. package/docs/automation/cron-vs-heartbeat.md +8 -8
  454. package/docs/automation/gmail-pubsub.md +21 -23
  455. package/docs/automation/poll.md +6 -6
  456. package/docs/automation/webhook.md +8 -13
  457. package/docs/bedrock.md +10 -10
  458. package/docs/brave-search.md +1 -1
  459. package/docs/broadcast-groups.md +3 -3
  460. package/docs/channels/bluebubbles.md +12 -13
  461. package/docs/channels/discord.md +16 -21
  462. package/docs/channels/googlechat.md +15 -15
  463. package/docs/channels/imessage.md +10 -10
  464. package/docs/channels/index.md +4 -6
  465. package/docs/channels/location.md +1 -1
  466. package/docs/channels/matrix.md +13 -13
  467. package/docs/channels/mattermost.md +8 -8
  468. package/docs/channels/msteams.md +25 -29
  469. package/docs/channels/nextcloud-talk.md +7 -7
  470. package/docs/channels/nostr.md +9 -9
  471. package/docs/channels/signal.md +9 -9
  472. package/docs/channels/slack.md +13 -15
  473. package/docs/channels/telegram.md +20 -149
  474. package/docs/channels/tlon.md +5 -5
  475. package/docs/channels/troubleshooting.md +2 -2
  476. package/docs/channels/whatsapp.md +23 -23
  477. package/docs/channels/zalo.md +8 -8
  478. package/docs/channels/zalouser.md +12 -12
  479. package/docs/cli/acp.md +24 -24
  480. package/docs/cli/agent.md +6 -6
  481. package/docs/cli/agents.md +9 -9
  482. package/docs/cli/approvals.md +13 -13
  483. package/docs/cli/browser.md +35 -33
  484. package/docs/cli/channels.md +21 -21
  485. package/docs/cli/config.md +15 -15
  486. package/docs/cli/configure.md +6 -6
  487. package/docs/cli/cron.md +5 -5
  488. package/docs/cli/dashboard.md +4 -4
  489. package/docs/cli/devices.md +13 -13
  490. package/docs/cli/directory.md +12 -12
  491. package/docs/cli/dns.md +5 -5
  492. package/docs/cli/docs.md +5 -5
  493. package/docs/cli/doctor.md +6 -6
  494. package/docs/cli/gateway.md +24 -24
  495. package/docs/cli/health.md +5 -5
  496. package/docs/cli/hooks.md +28 -28
  497. package/docs/cli/index.md +50 -44
  498. package/docs/cli/logs.md +6 -6
  499. package/docs/cli/memory.md +11 -11
  500. package/docs/cli/message.md +11 -11
  501. package/docs/cli/models.md +17 -17
  502. package/docs/cli/node.md +12 -12
  503. package/docs/cli/nodes.md +14 -14
  504. package/docs/cli/onboard.md +6 -7
  505. package/docs/cli/pairing.md +4 -4
  506. package/docs/cli/plugins.md +16 -16
  507. package/docs/cli/reset.md +5 -5
  508. package/docs/cli/sandbox.md +28 -28
  509. package/docs/cli/security.md +5 -5
  510. package/docs/cli/sessions.md +5 -5
  511. package/docs/cli/setup.md +6 -6
  512. package/docs/cli/skills.md +6 -6
  513. package/docs/cli/status.md +7 -7
  514. package/docs/cli/system.md +6 -6
  515. package/docs/cli/tui.md +5 -5
  516. package/docs/cli/uninstall.md +5 -5
  517. package/docs/cli/update.md +20 -20
  518. package/docs/cli/voicecall.md +9 -9
  519. package/docs/cli/webhooks.md +5 -5
  520. package/docs/concepts/agent-loop.md +5 -5
  521. package/docs/concepts/agent-workspace.md +11 -11
  522. package/docs/concepts/agent.md +10 -10
  523. package/docs/concepts/architecture.md +1 -1
  524. package/docs/concepts/channel-routing.md +2 -2
  525. package/docs/concepts/compaction.md +5 -5
  526. package/docs/concepts/context.md +6 -6
  527. package/docs/concepts/group-messages.md +5 -5
  528. package/docs/concepts/groups.md +5 -41
  529. package/docs/concepts/markdown-formatting.md +3 -3
  530. package/docs/concepts/memory.md +12 -12
  531. package/docs/concepts/messages.md +4 -4
  532. package/docs/concepts/model-failover.md +11 -11
  533. package/docs/concepts/model-providers.md +22 -22
  534. package/docs/concepts/models.md +26 -26
  535. package/docs/concepts/multi-agent.md +5 -5
  536. package/docs/concepts/oauth.md +55 -28
  537. package/docs/concepts/presence.md +2 -2
  538. package/docs/concepts/retry.md +1 -1
  539. package/docs/concepts/session-pruning.md +1 -1
  540. package/docs/concepts/session-tool.md +4 -4
  541. package/docs/concepts/session.md +11 -11
  542. package/docs/concepts/streaming.md +3 -3
  543. package/docs/concepts/system-prompt.md +11 -11
  544. package/docs/concepts/timezone.md +2 -2
  545. package/docs/concepts/typebox.md +2 -2
  546. package/docs/concepts/typing-indicators.md +2 -2
  547. package/docs/concepts/usage-tracking.md +3 -3
  548. package/docs/date-time.md +2 -2
  549. package/docs/debug/node-issue.md +4 -4
  550. package/docs/debugging.md +9 -9
  551. package/docs/diagnostics/flags.md +5 -5
  552. package/docs/docs.json +7 -37
  553. package/docs/environment.md +3 -3
  554. package/docs/experiments/plans/cron-add-hardening.md +1 -1
  555. package/docs/experiments/plans/openresponses-gateway.md +2 -2
  556. package/docs/experiments/research/memory.md +6 -6
  557. package/docs/gateway/authentication.md +54 -30
  558. package/docs/gateway/background-process.md +1 -1
  559. package/docs/gateway/bonjour.md +21 -21
  560. package/docs/gateway/bridge-protocol.md +2 -2
  561. package/docs/gateway/cli-backends.md +12 -13
  562. package/docs/gateway/configuration-examples.md +10 -10
  563. package/docs/gateway/configuration.md +107 -120
  564. package/docs/gateway/discovery.md +6 -6
  565. package/docs/gateway/doctor.md +21 -21
  566. package/docs/gateway/gateway-lock.md +1 -1
  567. package/docs/gateway/health.md +9 -9
  568. package/docs/gateway/heartbeat.md +5 -5
  569. package/docs/gateway/index.md +51 -51
  570. package/docs/gateway/local-models.md +2 -2
  571. package/docs/gateway/logging.md +8 -8
  572. package/docs/gateway/multiple-gateways.md +19 -19
  573. package/docs/gateway/openai-http-api.md +10 -10
  574. package/docs/gateway/openresponses-http-api.md +10 -10
  575. package/docs/gateway/pairing.md +5 -5
  576. package/docs/gateway/protocol.md +4 -5
  577. package/docs/gateway/remote-gateway-readme.md +8 -8
  578. package/docs/gateway/remote.md +4 -4
  579. package/docs/gateway/sandbox-vs-tool-policy-vs-elevated.md +7 -10
  580. package/docs/gateway/sandboxing.md +5 -7
  581. package/docs/gateway/{security/index.md → security.md} +63 -143
  582. package/docs/gateway/tailscale.md +35 -16
  583. package/docs/gateway/tools-invoke-http-api.md +3 -3
  584. package/docs/gateway/troubleshooting.md +106 -101
  585. package/docs/help/faq.md +312 -303
  586. package/docs/help/troubleshooting.md +15 -15
  587. package/docs/hooks/soul-evil.md +2 -2
  588. package/docs/hooks.md +44 -44
  589. package/docs/index.md +33 -33
  590. package/docs/install/ansible.md +35 -35
  591. package/docs/install/development-channels.md +10 -10
  592. package/docs/install/docker.md +27 -27
  593. package/docs/install/index.md +27 -28
  594. package/docs/install/installer.md +21 -21
  595. package/docs/install/nix.md +16 -16
  596. package/docs/install/node.md +6 -7
  597. package/docs/install/uninstall.md +21 -21
  598. package/docs/install/updating.md +47 -48
  599. package/docs/logging.md +58 -58
  600. package/docs/multi-agent-sandbox-tools.md +5 -5
  601. package/docs/network.md +1 -1
  602. package/docs/nodes/audio.md +2 -2
  603. package/docs/nodes/camera.md +18 -18
  604. package/docs/nodes/images.md +4 -4
  605. package/docs/nodes/index.md +50 -50
  606. package/docs/nodes/location-command.md +2 -2
  607. package/docs/nodes/media-understanding.md +5 -5
  608. package/docs/nodes/talk.md +1 -1
  609. package/docs/nodes/voicewake.md +1 -1
  610. package/docs/perplexity.md +2 -2
  611. package/docs/platforms/android.md +13 -13
  612. package/docs/platforms/exe-dev.md +23 -23
  613. package/docs/platforms/fly.md +18 -129
  614. package/docs/platforms/hetzner.md +20 -20
  615. package/docs/platforms/index.md +8 -8
  616. package/docs/platforms/ios.md +13 -13
  617. package/docs/platforms/linux.md +11 -11
  618. package/docs/platforms/mac/bundled-gateway.md +11 -11
  619. package/docs/platforms/mac/canvas.md +14 -14
  620. package/docs/platforms/mac/child-process.md +1 -1
  621. package/docs/platforms/mac/dev-setup.md +10 -10
  622. package/docs/platforms/mac/health.md +2 -2
  623. package/docs/platforms/mac/icon.md +1 -1
  624. package/docs/platforms/mac/logging.md +4 -4
  625. package/docs/platforms/mac/menu-bar.md +1 -1
  626. package/docs/platforms/mac/peekaboo.md +9 -9
  627. package/docs/platforms/mac/permissions.md +1 -1
  628. package/docs/platforms/mac/release.md +18 -18
  629. package/docs/platforms/mac/remote.md +14 -14
  630. package/docs/platforms/mac/signing.md +6 -6
  631. package/docs/platforms/mac/skills.md +2 -2
  632. package/docs/platforms/mac/webchat.md +1 -1
  633. package/docs/platforms/mac/xpc.md +4 -4
  634. package/docs/platforms/macos-vm.md +27 -27
  635. package/docs/platforms/macos.md +14 -14
  636. package/docs/platforms/windows.md +11 -11
  637. package/docs/plugin.md +57 -57
  638. package/docs/plugins/agent-tools.md +1 -1
  639. package/docs/plugins/manifest.md +4 -4
  640. package/docs/plugins/voice-call.md +12 -15
  641. package/docs/plugins/zalouser.md +9 -9
  642. package/docs/prose.md +9 -9
  643. package/docs/providers/anthropic.md +27 -23
  644. package/docs/providers/deepgram.md +2 -2
  645. package/docs/providers/github-copilot.md +11 -11
  646. package/docs/providers/glm.md +4 -4
  647. package/docs/providers/index.md +3 -7
  648. package/docs/providers/minimax.md +9 -9
  649. package/docs/providers/models.md +3 -3
  650. package/docs/providers/moonshot.md +2 -2
  651. package/docs/providers/ollama.md +11 -11
  652. package/docs/providers/openai.md +13 -9
  653. package/docs/providers/opencode.md +3 -3
  654. package/docs/providers/openrouter.md +3 -3
  655. package/docs/providers/qwen.md +6 -6
  656. package/docs/providers/synthetic.md +4 -4
  657. package/docs/providers/venice.md +21 -21
  658. package/docs/providers/vercel-ai-gateway.md +3 -4
  659. package/docs/providers/zai.md +5 -5
  660. package/docs/railway.mdx +5 -5
  661. package/docs/refactor/plugin-sdk.md +10 -10
  662. package/docs/refactor/strict-config.md +11 -11
  663. package/docs/reference/AGENTS.default.md +10 -10
  664. package/docs/reference/RELEASING.md +27 -27
  665. package/docs/reference/api-usage-costs.md +6 -6
  666. package/docs/reference/device-models.md +7 -7
  667. package/docs/reference/rpc.md +3 -3
  668. package/docs/reference/session-management-compaction.md +17 -17
  669. package/docs/reference/templates/AGENTS.dev.md +1 -1
  670. package/docs/reference/templates/BOOT.md +1 -1
  671. package/docs/reference/templates/TOOLS.dev.md +1 -1
  672. package/docs/reference/templates/USER.dev.md +2 -2
  673. package/docs/reference/test.md +2 -2
  674. package/docs/reference/transcript-hygiene.md +1 -1
  675. package/docs/scripts.md +1 -1
  676. package/docs/start/clawd.md +27 -27
  677. package/docs/start/getting-started.md +23 -29
  678. package/docs/start/hubs.md +2 -2
  679. package/docs/start/lore.md +38 -74
  680. package/docs/start/onboarding.md +4 -4
  681. package/docs/start/pairing.md +8 -8
  682. package/docs/start/setup.md +15 -28
  683. package/docs/start/showcase.md +32 -32
  684. package/docs/start/wizard.md +21 -24
  685. package/docs/testing.md +10 -10
  686. package/docs/token-use.md +7 -7
  687. package/docs/tools/agent-send.md +10 -10
  688. package/docs/tools/browser-linux-troubleshooting.md +8 -8
  689. package/docs/tools/browser-login.md +4 -4
  690. package/docs/tools/browser.md +241 -135
  691. package/docs/tools/chrome-extension.md +48 -31
  692. package/docs/tools/clawdhub.md +7 -7
  693. package/docs/tools/creating-skills.md +4 -4
  694. package/docs/tools/elevated.md +0 -1
  695. package/docs/tools/exec-approvals.md +2 -5
  696. package/docs/tools/exec.md +3 -14
  697. package/docs/tools/firecrawl.md +2 -2
  698. package/docs/tools/index.md +15 -18
  699. package/docs/tools/llm-task.md +1 -1
  700. package/docs/tools/lobster.md +11 -23
  701. package/docs/tools/skills-config.md +1 -1
  702. package/docs/tools/skills.md +21 -29
  703. package/docs/tools/slash-commands.md +8 -10
  704. package/docs/tools/web.md +6 -6
  705. package/docs/tts.md +9 -9
  706. package/docs/tui.md +7 -7
  707. package/docs/vps.md +1 -6
  708. package/docs/web/control-ui.md +12 -13
  709. package/docs/web/dashboard.md +4 -8
  710. package/docs/web/index.md +5 -6
  711. package/docs/web/webchat.md +1 -1
  712. package/extensions/bluebubbles/index.ts +2 -2
  713. package/extensions/bluebubbles/package.json +5 -5
  714. package/extensions/bluebubbles/src/accounts.ts +8 -8
  715. package/extensions/bluebubbles/src/actions.test.ts +22 -22
  716. package/extensions/bluebubbles/src/actions.ts +5 -5
  717. package/extensions/bluebubbles/src/attachments.ts +2 -2
  718. package/extensions/bluebubbles/src/channel.ts +16 -16
  719. package/extensions/bluebubbles/src/chat.ts +2 -2
  720. package/extensions/bluebubbles/src/media-send.ts +2 -2
  721. package/extensions/bluebubbles/src/monitor.test.ts +49 -55
  722. package/extensions/bluebubbles/src/monitor.ts +5 -180
  723. package/extensions/bluebubbles/src/onboarding.ts +7 -7
  724. package/extensions/bluebubbles/src/reactions.ts +2 -2
  725. package/extensions/bluebubbles/src/send.ts +2 -2
  726. package/extensions/copilot-proxy/package.json +4 -4
  727. package/extensions/diagnostics-otel/index.ts +2 -2
  728. package/extensions/diagnostics-otel/package.json +4 -4
  729. package/extensions/diagnostics-otel/src/service.test.ts +12 -12
  730. package/extensions/diagnostics-otel/src/service.ts +84 -84
  731. package/extensions/discord/index.ts +2 -2
  732. package/extensions/discord/package.json +4 -4
  733. package/extensions/google-antigravity-auth/index.ts +1 -8
  734. package/extensions/google-antigravity-auth/package.json +4 -4
  735. package/extensions/google-gemini-cli-auth/oauth.ts +2 -2
  736. package/extensions/google-gemini-cli-auth/package.json +4 -4
  737. package/extensions/googlechat/index.ts +3 -3
  738. package/extensions/googlechat/package.json +7 -7
  739. package/extensions/googlechat/src/accounts.ts +8 -8
  740. package/extensions/googlechat/src/actions.ts +6 -6
  741. package/extensions/googlechat/src/api.ts +1 -1
  742. package/extensions/googlechat/src/channel.ts +21 -21
  743. package/extensions/googlechat/src/monitor.ts +8 -8
  744. package/extensions/googlechat/src/onboarding.ts +10 -10
  745. package/extensions/imessage/index.ts +2 -2
  746. package/extensions/imessage/package.json +4 -4
  747. package/extensions/line/index.ts +2 -2
  748. package/extensions/line/package.json +6 -6
  749. package/extensions/line/src/card-command.ts +2 -2
  750. package/extensions/line/src/channel.logout.test.ts +4 -4
  751. package/extensions/line/src/channel.sendPayload.test.ts +8 -8
  752. package/extensions/line/src/channel.ts +4 -4
  753. package/extensions/llm-task/index.ts +2 -2
  754. package/extensions/llm-task/package.json +4 -4
  755. package/extensions/llm-task/src/llm-task-tool.ts +5 -5
  756. package/extensions/lobster/index.ts +2 -2
  757. package/extensions/lobster/package.json +3 -3
  758. package/extensions/lobster/src/lobster-tool.test.ts +6 -26
  759. package/extensions/lobster/src/lobster-tool.ts +6 -24
  760. package/extensions/matrix/CHANGELOG.md +9 -9
  761. package/extensions/matrix/index.ts +2 -2
  762. package/extensions/matrix/package.json +7 -7
  763. package/extensions/matrix/src/matrix/actions/messages.ts +1 -1
  764. package/extensions/matrix/src/matrix/actions/reactions.ts +1 -1
  765. package/extensions/matrix/src/matrix/actions/room.ts +3 -3
  766. package/extensions/matrix/src/matrix/actions/summary.ts +1 -1
  767. package/extensions/matrix/src/matrix/actions/types.ts +1 -1
  768. package/extensions/matrix/src/matrix/active-client.ts +1 -1
  769. package/extensions/matrix/src/matrix/client/config.ts +2 -2
  770. package/extensions/matrix/src/matrix/client/create-client.ts +2 -2
  771. package/extensions/matrix/src/matrix/client/logging.ts +1 -1
  772. package/extensions/matrix/src/matrix/client/shared.ts +3 -3
  773. package/extensions/matrix/src/matrix/deps.ts +4 -4
  774. package/extensions/matrix/src/matrix/monitor/auto-join.ts +2 -2
  775. package/extensions/matrix/src/matrix/monitor/direct.ts +1 -1
  776. package/extensions/matrix/src/matrix/monitor/events.ts +1 -1
  777. package/extensions/matrix/src/matrix/monitor/handler.ts +5 -5
  778. package/extensions/matrix/src/matrix/monitor/index.ts +1 -1
  779. package/extensions/matrix/src/matrix/monitor/location.ts +1 -1
  780. package/extensions/matrix/src/matrix/monitor/media.test.ts +2 -2
  781. package/extensions/matrix/src/matrix/monitor/media.ts +3 -3
  782. package/extensions/matrix/src/matrix/monitor/replies.ts +1 -1
  783. package/extensions/matrix/src/matrix/monitor/room-info.ts +1 -1
  784. package/extensions/matrix/src/matrix/monitor/threads.ts +1 -1
  785. package/extensions/matrix/src/matrix/monitor/types.ts +1 -1
  786. package/extensions/matrix/src/matrix/probe.ts +1 -1
  787. package/extensions/matrix/src/matrix/send/client.ts +2 -2
  788. package/extensions/matrix/src/matrix/send/media.ts +1 -1
  789. package/extensions/matrix/src/matrix/send/targets.test.ts +1 -1
  790. package/extensions/matrix/src/matrix/send/targets.ts +1 -1
  791. package/extensions/matrix/src/matrix/send/types.ts +2 -2
  792. package/extensions/matrix/src/matrix/send.test.ts +2 -2
  793. package/extensions/matrix/src/matrix/send.ts +3 -3
  794. package/extensions/matrix/src/onboarding.ts +2 -2
  795. package/extensions/matrix/src/types.ts +1 -1
  796. package/extensions/mattermost/index.ts +2 -2
  797. package/extensions/mattermost/package.json +5 -5
  798. package/extensions/mattermost/src/mattermost/accounts.ts +8 -8
  799. package/extensions/mattermost/src/mattermost/monitor-helpers.ts +5 -5
  800. package/extensions/mattermost/src/mattermost/monitor.ts +2 -2
  801. package/extensions/mattermost/src/onboarding-helpers.ts +3 -3
  802. package/extensions/mattermost/src/onboarding.ts +3 -3
  803. package/extensions/memory-core/index.ts +2 -2
  804. package/extensions/memory-core/package.json +5 -5
  805. package/extensions/memory-lancedb/index.test.ts +2 -2
  806. package/extensions/memory-lancedb/index.ts +3 -3
  807. package/extensions/memory-lancedb/package.json +4 -4
  808. package/extensions/msteams/CHANGELOG.md +7 -7
  809. package/extensions/msteams/index.ts +2 -2
  810. package/extensions/msteams/package.json +6 -6
  811. package/extensions/msteams/src/channel.directory.test.ts +2 -2
  812. package/extensions/msteams/src/channel.ts +2 -2
  813. package/extensions/msteams/src/conversation-store-fs.test.ts +1 -1
  814. package/extensions/msteams/src/graph-upload.ts +4 -4
  815. package/extensions/msteams/src/monitor-handler.ts +2 -2
  816. package/extensions/msteams/src/monitor.ts +2 -2
  817. package/extensions/msteams/src/onboarding.ts +9 -9
  818. package/extensions/msteams/src/policy.ts +3 -48
  819. package/extensions/msteams/src/polls-store.test.ts +1 -1
  820. package/extensions/msteams/src/polls.test.ts +2 -2
  821. package/extensions/msteams/src/polls.ts +8 -8
  822. package/extensions/msteams/src/reply-dispatcher.ts +35 -35
  823. package/extensions/msteams/src/send-context.ts +2 -2
  824. package/extensions/msteams/src/send.ts +4 -4
  825. package/extensions/nextcloud-talk/index.ts +2 -2
  826. package/extensions/nextcloud-talk/package.json +5 -5
  827. package/extensions/nextcloud-talk/src/channel.ts +7 -7
  828. package/extensions/nextcloud-talk/src/inbound.ts +7 -7
  829. package/extensions/nextcloud-talk/src/onboarding.ts +1 -1
  830. package/extensions/nostr/CHANGELOG.md +4 -4
  831. package/extensions/nostr/index.ts +5 -5
  832. package/extensions/nostr/package.json +6 -6
  833. package/extensions/nostr/src/channel.ts +1 -1
  834. package/extensions/nostr/src/nostr-state-store.test.ts +1 -1
  835. package/extensions/nostr/src/types.ts +4 -4
  836. package/extensions/open-prose/index.ts +2 -2
  837. package/extensions/open-prose/package.json +3 -3
  838. package/extensions/open-prose/skills/prose/SKILL.md +5 -5
  839. package/extensions/open-prose/skills/prose/prose.md +4 -4
  840. package/extensions/signal/index.ts +2 -2
  841. package/extensions/signal/package.json +4 -4
  842. package/extensions/slack/index.ts +2 -2
  843. package/extensions/slack/package.json +4 -4
  844. package/extensions/telegram/index.ts +2 -2
  845. package/extensions/telegram/package.json +4 -4
  846. package/extensions/telegram/src/channel.ts +2 -2
  847. package/extensions/tlon/README.md +1 -1
  848. package/extensions/tlon/index.ts +2 -2
  849. package/extensions/tlon/package.json +5 -5
  850. package/extensions/tlon/src/channel.ts +13 -13
  851. package/extensions/tlon/src/monitor/index.ts +3 -3
  852. package/extensions/tlon/src/onboarding.ts +3 -3
  853. package/extensions/tlon/src/types.ts +3 -3
  854. package/extensions/tlon/src/urbit/send.ts +6 -19
  855. package/extensions/voice-call/CHANGELOG.md +12 -13
  856. package/extensions/voice-call/README.md +2 -3
  857. package/extensions/voice-call/clawdbot.plugin.json +3 -3
  858. package/extensions/voice-call/index.ts +9 -11
  859. package/extensions/voice-call/package.json +4 -4
  860. package/extensions/voice-call/src/cli.ts +1 -1
  861. package/extensions/voice-call/src/config.ts +4 -61
  862. package/extensions/voice-call/src/core-bridge.ts +8 -10
  863. package/extensions/voice-call/src/manager.test.ts +2 -2
  864. package/extensions/voice-call/src/providers/twilio/webhook.ts +1 -2
  865. package/extensions/voice-call/src/providers/twilio.ts +2 -2
  866. package/extensions/voice-call/src/response-generator.ts +1 -1
  867. package/extensions/voice-call/src/runtime.ts +15 -26
  868. package/extensions/voice-call/src/types.ts +0 -1
  869. package/extensions/voice-call/src/webhook-security.test.ts +0 -52
  870. package/extensions/voice-call/src/webhook-security.ts +5 -16
  871. package/extensions/voice-call/src/webhook.ts +0 -1
  872. package/extensions/whatsapp/index.ts +2 -2
  873. package/extensions/whatsapp/package.json +4 -4
  874. package/extensions/zalo/CHANGELOG.md +9 -9
  875. package/extensions/zalo/index.ts +2 -2
  876. package/extensions/zalo/package.json +6 -6
  877. package/extensions/zalo/src/accounts.ts +8 -8
  878. package/extensions/zalo/src/actions.ts +4 -4
  879. package/extensions/zalo/src/channel.directory.test.ts +2 -2
  880. package/extensions/zalo/src/channel.ts +18 -18
  881. package/extensions/zalo/src/monitor.ts +9 -9
  882. package/extensions/zalo/src/monitor.webhook.test.ts +2 -2
  883. package/extensions/zalo/src/onboarding.ts +25 -25
  884. package/extensions/zalo/src/send.ts +2 -2
  885. package/extensions/zalouser/CHANGELOG.md +4 -4
  886. package/extensions/zalouser/index.ts +2 -2
  887. package/extensions/zalouser/package.json +6 -6
  888. package/extensions/zalouser/src/accounts.ts +9 -9
  889. package/extensions/zalouser/src/channel.ts +25 -25
  890. package/extensions/zalouser/src/monitor.ts +4 -4
  891. package/extensions/zalouser/src/onboarding.ts +30 -30
  892. package/extensions/zalouser/src/status-issues.ts +1 -1
  893. package/package.json +18 -17
  894. package/skills/1password/SKILL.md +3 -3
  895. package/skills/apple-notes/SKILL.md +2 -2
  896. package/skills/apple-reminders/SKILL.md +1 -1
  897. package/skills/bear-notes/SKILL.md +1 -1
  898. package/skills/bird/SKILL.md +1 -1
  899. package/skills/blogwatcher/SKILL.md +1 -1
  900. package/skills/blucli/SKILL.md +1 -1
  901. package/skills/bluebubbles/SKILL.md +1 -1
  902. package/skills/camsnap/SKILL.md +1 -1
  903. package/skills/canvas/SKILL.md +15 -15
  904. package/skills/clawdhub/SKILL.md +2 -2
  905. package/skills/coding-agent/SKILL.md +6 -6
  906. package/skills/discord/SKILL.md +5 -6
  907. package/skills/eightctl/SKILL.md +1 -1
  908. package/skills/food-order/SKILL.md +1 -1
  909. package/skills/gemini/SKILL.md +1 -1
  910. package/skills/gifgrep/SKILL.md +1 -1
  911. package/skills/github/SKILL.md +0 -1
  912. package/skills/gog/SKILL.md +1 -1
  913. package/skills/goplaces/SKILL.md +1 -1
  914. package/skills/himalaya/SKILL.md +1 -1
  915. package/skills/imsg/SKILL.md +1 -1
  916. package/skills/local-places/SKILL.md +1 -1
  917. package/skills/mcporter/SKILL.md +1 -1
  918. package/skills/model-usage/SKILL.md +1 -1
  919. package/skills/nano-banana-pro/SKILL.md +5 -10
  920. package/skills/nano-banana-pro/scripts/generate_image.py +27 -42
  921. package/skills/nano-pdf/SKILL.md +1 -1
  922. package/skills/notion/SKILL.md +1 -1
  923. package/skills/obsidian/SKILL.md +1 -1
  924. package/skills/openai-image-gen/SKILL.md +1 -1
  925. package/skills/openai-whisper/SKILL.md +1 -1
  926. package/skills/openai-whisper-api/SKILL.md +2 -2
  927. package/skills/openhue/SKILL.md +1 -1
  928. package/skills/oracle/SKILL.md +1 -1
  929. package/skills/ordercli/SKILL.md +1 -1
  930. package/skills/peekaboo/SKILL.md +1 -1
  931. package/skills/sag/SKILL.md +1 -1
  932. package/skills/session-logs/SKILL.md +1 -1
  933. package/skills/sherpa-onnx-tts/SKILL.md +2 -2
  934. package/skills/slack/SKILL.md +3 -4
  935. package/skills/songsee/SKILL.md +1 -1
  936. package/skills/sonoscli/SKILL.md +1 -1
  937. package/skills/spotify-player/SKILL.md +1 -1
  938. package/skills/summarize/SKILL.md +1 -1
  939. package/skills/things-mac/SKILL.md +3 -3
  940. package/skills/tmux/SKILL.md +7 -7
  941. package/skills/tmux/scripts/find-sessions.sh +1 -1
  942. package/skills/trello/SKILL.md +2 -2
  943. package/skills/video-frames/SKILL.md +1 -1
  944. package/skills/voice-call/SKILL.md +4 -4
  945. package/skills/wacli/SKILL.md +2 -2
  946. package/skills/weather/SKILL.md +1 -1
  947. package/LICENSE +0 -21
  948. package/dist/agents/moltbot-tools.js +0 -121
  949. package/dist/agents/pi-extensions/compaction-safeguard-runtime.js +0 -20
  950. package/dist/browser/control-service.js +0 -72
  951. package/dist/browser/routes/dispatcher.js +0 -86
  952. package/dist/browser/routes/types.js +0 -1
  953. package/dist/cli/cli-name.js +0 -26
  954. package/dist/compat/legacy-names.js +0 -5
  955. package/dist/control-ui/assets/index-CIRDm-Lu.css +0 -1
  956. package/dist/control-ui/assets/index-HlBhZmfj.js.map +0 -1
  957. package/dist/discord/monitor/presence-cache.js +0 -38
  958. package/dist/gateway/server-methods/browser.js +0 -204
  959. package/dist/infra/fs-safe.js +0 -76
  960. package/dist/infra/moltbot-root.js +0 -57
  961. package/dist/line/signature.js +0 -11
  962. package/dist/security/external-content.js +0 -143
  963. package/dist/security/windows-acl.js +0 -162
  964. package/dist/telegram/api-logging.js +0 -24
  965. package/dist/telegram/network-config.js +0 -23
  966. package/dist/telegram/network-errors.js +0 -103
  967. package/dist/telegram/sticker-cache.js +0 -202
  968. package/docs/channels/line.md +0 -183
  969. package/docs/channels/twitch.md +0 -366
  970. package/docs/gateway/security/formal-verification.md +0 -107
  971. package/docs/install/migrating.md +0 -190
  972. package/docs/northflank.mdx +0 -53
  973. package/docs/platforms/digitalocean.md +0 -243
  974. package/docs/platforms/gcp.md +0 -498
  975. package/docs/platforms/oracle.md +0 -291
  976. package/docs/platforms/raspberry-pi.md +0 -354
  977. package/docs/providers/claude-max-api-proxy.md +0 -145
  978. package/docs/render.mdx +0 -158
  979. package/docs/security/formal-verification.md +0 -107
  980. package/extensions/googlechat/node_modules/.bin/poolbot +0 -21
  981. package/extensions/line/node_modules/.bin/poolbot +0 -21
  982. package/extensions/matrix/node_modules/.bin/poolbot +0 -21
  983. package/extensions/memory-core/node_modules/.bin/poolbot +0 -21
  984. package/extensions/msteams/node_modules/.bin/poolbot +0 -21
  985. package/extensions/nostr/node_modules/.bin/poolbot +0 -21
  986. package/extensions/twitch/CHANGELOG.md +0 -21
  987. package/extensions/twitch/README.md +0 -89
  988. package/extensions/twitch/clawdbot.plugin.json +0 -9
  989. package/extensions/twitch/index.ts +0 -20
  990. package/extensions/twitch/node_modules/.bin/poolbot +0 -21
  991. package/extensions/twitch/package.json +0 -20
  992. package/extensions/twitch/src/access-control.test.ts +0 -489
  993. package/extensions/twitch/src/access-control.ts +0 -154
  994. package/extensions/twitch/src/actions.ts +0 -173
  995. package/extensions/twitch/src/client-manager-registry.ts +0 -115
  996. package/extensions/twitch/src/config-schema.ts +0 -82
  997. package/extensions/twitch/src/config.test.ts +0 -88
  998. package/extensions/twitch/src/config.ts +0 -116
  999. package/extensions/twitch/src/monitor.ts +0 -257
  1000. package/extensions/twitch/src/onboarding.test.ts +0 -311
  1001. package/extensions/twitch/src/onboarding.ts +0 -411
  1002. package/extensions/twitch/src/outbound.test.ts +0 -373
  1003. package/extensions/twitch/src/outbound.ts +0 -186
  1004. package/extensions/twitch/src/plugin.test.ts +0 -39
  1005. package/extensions/twitch/src/plugin.ts +0 -274
  1006. package/extensions/twitch/src/probe.test.ts +0 -198
  1007. package/extensions/twitch/src/probe.ts +0 -118
  1008. package/extensions/twitch/src/resolver.ts +0 -137
  1009. package/extensions/twitch/src/runtime.ts +0 -14
  1010. package/extensions/twitch/src/send.test.ts +0 -289
  1011. package/extensions/twitch/src/send.ts +0 -136
  1012. package/extensions/twitch/src/status.test.ts +0 -270
  1013. package/extensions/twitch/src/status.ts +0 -176
  1014. package/extensions/twitch/src/token.test.ts +0 -171
  1015. package/extensions/twitch/src/token.ts +0 -87
  1016. package/extensions/twitch/src/twitch-client.test.ts +0 -574
  1017. package/extensions/twitch/src/twitch-client.ts +0 -277
  1018. package/extensions/twitch/src/types.ts +0 -141
  1019. package/extensions/twitch/src/utils/markdown.ts +0 -92
  1020. package/extensions/twitch/src/utils/twitch.ts +0 -78
  1021. package/extensions/twitch/test/setup.ts +0 -7
  1022. package/extensions/voice-call/src/config.test.ts +0 -204
  1023. package/extensions/zalo/node_modules/.bin/poolbot +0 -21
  1024. package/extensions/zalouser/node_modules/.bin/poolbot +0 -21
@@ -6,7 +6,7 @@ export function resolveChannelDefaultAccountId(params) {
6
6
  return params.plugin.config.defaultAccountId?.(params.cfg) ?? accountIds[0] ?? DEFAULT_ACCOUNT_ID;
7
7
  }
8
8
  export function formatPairingApproveHint(channelId) {
9
- const listCmd = formatCliCommand(`moltbot pairing list ${channelId}`);
10
- const approveCmd = formatCliCommand(`moltbot pairing approve ${channelId} <code>`);
9
+ const listCmd = formatCliCommand(`clawdbot pairing list ${channelId}`);
10
+ const approveCmd = formatCliCommand(`clawdbot pairing approve ${channelId} <code>`);
11
11
  return `Approve via: ${listCmd} / ${approveCmd}`;
12
12
  }
@@ -25,7 +25,6 @@ export const CHANNEL_MESSAGE_ACTION_NAMES = [
25
25
  "thread-reply",
26
26
  "search",
27
27
  "sticker",
28
- "sticker-search",
29
28
  "member-info",
30
29
  "role-info",
31
30
  "emoji-list",
@@ -213,7 +213,7 @@ export const imessageOnboardingAdapter = {
213
213
  }
214
214
  await prompter.note([
215
215
  "This is still a work in progress.",
216
- "Ensure Moltbot has Full Disk Access to Messages DB.",
216
+ "Ensure Clawdbot has Full Disk Access to Messages DB.",
217
217
  "Grant Automation permission for Messages when prompted.",
218
218
  "List chats with: imsg chats --limit 20",
219
219
  `Docs: ${formatDocsLink("/imessage", "imessage")}`,
@@ -244,9 +244,9 @@ export const signalOnboardingAdapter = {
244
244
  }
245
245
  }
246
246
  await prompter.note([
247
- 'Link device with: signal-cli link -n "Moltbot"',
247
+ 'Link device with: signal-cli link -n "Clawdbot"',
248
248
  "Scan QR in Signal → Linked Devices",
249
- `Then run: ${formatCliCommand("moltbot gateway call channels.status --params '{\"probe\":true}'")}`,
249
+ `Then run: ${formatCliCommand("clawdbot gateway call channels.status --params '{\"probe\":true}'")}`,
250
250
  `Docs: ${formatDocsLink("/signal", "signal")}`,
251
251
  ].join("\n"), "Signal next steps");
252
252
  return { cfg: next, accountId: signalAccountId };
@@ -25,11 +25,11 @@ function setSlackDmPolicy(cfg, dmPolicy) {
25
25
  };
26
26
  }
27
27
  function buildSlackManifest(botName) {
28
- const safeName = botName.trim() || "Moltbot";
28
+ const safeName = botName.trim() || "Clawdbot";
29
29
  const manifest = {
30
30
  display_information: {
31
31
  name: safeName,
32
- description: `${safeName} connector for Moltbot`,
32
+ description: `${safeName} connector for Clawdbot`,
33
33
  },
34
34
  features: {
35
35
  bot_user: {
@@ -43,7 +43,7 @@ function buildSlackManifest(botName) {
43
43
  slash_commands: [
44
44
  {
45
45
  command: "/clawd",
46
- description: "Send a message to Moltbot",
46
+ description: "Send a message to Clawdbot",
47
47
  should_escape: false,
48
48
  },
49
49
  ],
@@ -312,7 +312,7 @@ export const slackOnboardingAdapter = {
312
312
  let appToken = null;
313
313
  const slackBotName = String(await prompter.text({
314
314
  message: "Slack bot display name (used for manifest)",
315
- initialValue: "Moltbot",
315
+ initialValue: "Clawdbot",
316
316
  })).trim();
317
317
  if (!accountConfigured) {
318
318
  await noteSlackTokenHelp(prompter, slackBotName);
@@ -25,16 +25,16 @@ async function noteTelegramTokenHelp(prompter) {
25
25
  "3) Copy the token (looks like 123456:ABC...)",
26
26
  "Tip: you can also set TELEGRAM_BOT_TOKEN in your env.",
27
27
  `Docs: ${formatDocsLink("/telegram")}`,
28
- "Website: https://molt.bot",
28
+ "Website: https://clawd.bot",
29
29
  ].join("\n"), "Telegram bot token");
30
30
  }
31
31
  async function noteTelegramUserIdHelp(prompter) {
32
32
  await prompter.note([
33
- `1) DM your bot, then read from.id in \`${formatCliCommand("moltbot logs --follow")}\` (safest)`,
33
+ `1) DM your bot, then read from.id in \`${formatCliCommand("clawdbot logs --follow")}\` (safest)`,
34
34
  "2) Or call https://api.telegram.org/bot<bot_token>/getUpdates and read message.from.id",
35
35
  "3) Third-party: DM @userinfobot or @getidsbot",
36
36
  `Docs: ${formatDocsLink("/telegram")}`,
37
- "Website: https://molt.bot",
37
+ "Website: https://clawd.bot",
38
38
  ].join("\n"), "Telegram user id");
39
39
  }
40
40
  async function promptTelegramAllowFrom(params) {
@@ -57,20 +57,12 @@ async function promptTelegramAllowFrom(params) {
57
57
  return null;
58
58
  const username = stripped.startsWith("@") ? stripped : `@${stripped}`;
59
59
  const url = `https://api.telegram.org/bot${token}/getChat?chat_id=${encodeURIComponent(username)}`;
60
- try {
61
- const res = await fetch(url);
62
- if (!res.ok)
63
- return null;
64
- const data = (await res.json().catch(() => null));
65
- const id = data?.ok ? data?.result?.id : undefined;
66
- if (typeof id === "number" || typeof id === "string")
67
- return String(id);
68
- return null;
69
- }
70
- catch {
71
- // Network error during username lookup - return null to prompt user for numeric ID
72
- return null;
73
- }
60
+ const res = await fetch(url);
61
+ const data = (await res.json().catch(() => null));
62
+ const id = data?.ok ? data?.result?.id : undefined;
63
+ if (typeof id === "number" || typeof id === "string")
64
+ return String(id);
65
+ return null;
74
66
  };
75
67
  const parseInput = (value) => value
76
68
  .split(/[\n,;]+/g)
@@ -37,7 +37,7 @@ async function promptWhatsAppAllowFrom(cfg, _runtime, prompter, options) {
37
37
  const existingAllowFrom = cfg.channels?.whatsapp?.allowFrom ?? [];
38
38
  const existingLabel = existingAllowFrom.length > 0 ? existingAllowFrom.join(", ") : "unset";
39
39
  if (options?.forceAllowlist) {
40
- await prompter.note("We need the sender/owner number so Moltbot can allowlist you.", "WhatsApp number");
40
+ await prompter.note("We need the sender/owner number so Clawdbot can allowlist you.", "WhatsApp number");
41
41
  const entry = await prompter.text({
42
42
  message: "Your personal WhatsApp number (the phone you will message from)",
43
43
  placeholder: "+15555550123",
@@ -81,11 +81,11 @@ async function promptWhatsAppAllowFrom(cfg, _runtime, prompter, options) {
81
81
  message: "WhatsApp phone setup",
82
82
  options: [
83
83
  { value: "personal", label: "This is my personal phone number" },
84
- { value: "separate", label: "Separate phone just for Moltbot" },
84
+ { value: "separate", label: "Separate phone just for Clawdbot" },
85
85
  ],
86
86
  }));
87
87
  if (phoneMode === "personal") {
88
- await prompter.note("We need the sender/owner number so Moltbot can allowlist you.", "WhatsApp number");
88
+ await prompter.note("We need the sender/owner number so Clawdbot can allowlist you.", "WhatsApp number");
89
89
  const entry = await prompter.text({
90
90
  message: "Your personal WhatsApp number (the phone you will message from)",
91
91
  placeholder: "+15555550123",
@@ -273,7 +273,7 @@ export const whatsappOnboardingAdapter = {
273
273
  }
274
274
  }
275
275
  else if (!linked) {
276
- await prompter.note(`Run \`${formatCliCommand("moltbot channels login")}\` later to link WhatsApp.`, "WhatsApp");
276
+ await prompter.note(`Run \`${formatCliCommand("clawdbot channels login")}\` later to link WhatsApp.`, "WhatsApp");
277
277
  }
278
278
  next = await promptWhatsAppAllowFrom(next, runtime, prompter, {
279
279
  forceAllowlist: forceAllowFrom,
@@ -50,42 +50,4 @@ export const telegramOutbound = {
50
50
  });
51
51
  return { channel: "telegram", ...result };
52
52
  },
53
- sendPayload: async ({ to, payload, accountId, deps, replyToId, threadId }) => {
54
- const send = deps?.sendTelegram ?? sendMessageTelegram;
55
- const replyToMessageId = parseReplyToMessageId(replyToId);
56
- const messageThreadId = parseThreadId(threadId);
57
- const telegramData = payload.channelData?.telegram;
58
- const text = payload.text ?? "";
59
- const mediaUrls = payload.mediaUrls?.length
60
- ? payload.mediaUrls
61
- : payload.mediaUrl
62
- ? [payload.mediaUrl]
63
- : [];
64
- const baseOpts = {
65
- verbose: false,
66
- textMode: "html",
67
- messageThreadId,
68
- replyToMessageId,
69
- accountId: accountId ?? undefined,
70
- };
71
- if (mediaUrls.length === 0) {
72
- const result = await send(to, text, {
73
- ...baseOpts,
74
- buttons: telegramData?.buttons,
75
- });
76
- return { channel: "telegram", ...result };
77
- }
78
- // Telegram allows reply_markup on media; attach buttons only to first send.
79
- let finalResult;
80
- for (let i = 0; i < mediaUrls.length; i += 1) {
81
- const mediaUrl = mediaUrls[i];
82
- const isFirst = i === 0;
83
- finalResult = await send(to, isFirst ? text : "", {
84
- ...baseOpts,
85
- mediaUrl,
86
- ...(isFirst ? { buttons: telegramData?.buttons } : {}),
87
- });
88
- }
89
- return { channel: "telegram", ...(finalResult ?? { messageId: "unknown", chatId: to }) };
90
- },
91
53
  };
@@ -1 +1 @@
1
- export const PAIRING_APPROVED_MESSAGE = "✅ Moltbot access approved. Send a message to start chatting.";
1
+ export const PAIRING_APPROVED_MESSAGE = "✅ Clawdbot access approved. Send a message to start chatting.";
@@ -42,7 +42,7 @@ export function collectBlueBubblesStatusIssues(accounts) {
42
42
  accountId,
43
43
  kind: "config",
44
44
  message: "Not configured (missing serverUrl or password).",
45
- fix: "Run: moltbot channels add bluebubbles --http-url <server-url> --password <password>",
45
+ fix: "Run: clawdbot channels add bluebubbles --http-url <server-url> --password <password>",
46
46
  });
47
47
  continue;
48
48
  }
@@ -34,7 +34,7 @@ export function collectWhatsAppStatusIssues(accounts) {
34
34
  accountId,
35
35
  kind: "auth",
36
36
  message: "Not linked (no WhatsApp Web session).",
37
- fix: `Run: ${formatCliCommand("moltbot channels login")} (scan QR on the gateway host).`,
37
+ fix: `Run: ${formatCliCommand("clawdbot channels login")} (scan QR on the gateway host).`,
38
38
  });
39
39
  continue;
40
40
  }
@@ -44,7 +44,7 @@ export function collectWhatsAppStatusIssues(accounts) {
44
44
  accountId,
45
45
  kind: "runtime",
46
46
  message: `Linked but disconnected${reconnectAttempts != null ? ` (reconnectAttempts=${reconnectAttempts})` : ""}${lastError ? `: ${lastError}` : "."}`,
47
- fix: `Run: ${formatCliCommand("moltbot doctor")} (or restart the gateway). If it persists, relink via channels login and check logs.`,
47
+ fix: `Run: ${formatCliCommand("clawdbot doctor")} (or restart the gateway). If it persists, relink via channels login and check logs.`,
48
48
  });
49
49
  }
50
50
  }
@@ -12,7 +12,7 @@ export const CHAT_CHANNEL_ORDER = [
12
12
  ];
13
13
  export const CHANNEL_IDS = [...CHAT_CHANNEL_ORDER];
14
14
  export const DEFAULT_CHAT_CHANNEL = "whatsapp";
15
- const WEBSITE_URL = "https://molt.bot";
15
+ const WEBSITE_URL = "https://clawd.bot";
16
16
  const CHAT_CHANNEL_META = {
17
17
  telegram: {
18
18
  id: "telegram",
@@ -15,7 +15,7 @@ export function registerAcpCli(program) {
15
15
  .option("--reset-session", "Reset the session key before first use", false)
16
16
  .option("--no-prefix-cwd", "Do not prefix prompts with the working directory", false)
17
17
  .option("--verbose, -v", "Verbose logging to stderr", false)
18
- .addHelpText("after", () => `\n${theme.muted("Docs:")} ${formatDocsLink("/cli/acp", "docs.molt.bot/cli/acp")}\n`)
18
+ .addHelpText("after", () => `\n${theme.muted("Docs:")} ${formatDocsLink("/cli/acp", "docs.clawd.bot/cli/acp")}\n`)
19
19
  .action((opts) => {
20
20
  try {
21
21
  serveAcpGateway({
@@ -39,7 +39,7 @@ export function registerAcpCli(program) {
39
39
  .command("client")
40
40
  .description("Run an interactive ACP client against the local ACP bridge")
41
41
  .option("--cwd <dir>", "Working directory for the ACP session")
42
- .option("--server <command>", "ACP server command (default: moltbot)")
42
+ .option("--server <command>", "ACP server command (default: clawdbot)")
43
43
  .option("--server-args <args...>", "Extra arguments for the ACP server")
44
44
  .option("--server-verbose", "Enable verbose logging on the ACP server", false)
45
45
  .option("--verbose, -v", "Verbose client logging", false)
package/dist/cli/argv.js CHANGED
@@ -89,25 +89,18 @@ export function buildParseArgv(params) {
89
89
  const programName = params.programName ?? "";
90
90
  const normalizedArgv = programName && baseArgv[0] === programName
91
91
  ? baseArgv.slice(1)
92
- : baseArgv[0]?.endsWith("moltbot")
92
+ : baseArgv[0]?.endsWith("clawdbot")
93
93
  ? baseArgv.slice(1)
94
94
  : baseArgv;
95
95
  const executable = (normalizedArgv[0]?.split(/[/\\]/).pop() ?? "").toLowerCase();
96
- const looksLikeNode = normalizedArgv.length >= 2 && (isNodeExecutable(executable) || isBunExecutable(executable));
96
+ const looksLikeNode = normalizedArgv.length >= 2 &&
97
+ (executable === "node" ||
98
+ executable === "node.exe" ||
99
+ executable === "bun" ||
100
+ executable === "bun.exe");
97
101
  if (looksLikeNode)
98
102
  return normalizedArgv;
99
- return ["node", programName || "moltbot", ...normalizedArgv];
100
- }
101
- const nodeExecutablePattern = /^node-\d+(?:\.\d+)*(?:\.exe)?$/;
102
- function isNodeExecutable(executable) {
103
- return (executable === "node" ||
104
- executable === "node.exe" ||
105
- executable === "nodejs" ||
106
- executable === "nodejs.exe" ||
107
- nodeExecutablePattern.test(executable));
108
- }
109
- function isBunExecutable(executable) {
110
- return executable === "bun" || executable === "bun.exe";
103
+ return ["node", programName || "clawdbot", ...normalizedArgv];
111
104
  }
112
105
  export function shouldMigrateStateFromPath(path) {
113
106
  if (path.length === 0)
@@ -2,7 +2,6 @@ import { resolveCommitHash } from "../infra/git-commit.js";
2
2
  import { visibleWidth } from "../terminal/ansi.js";
3
3
  import { isRich, theme } from "../terminal/theme.js";
4
4
  import { pickTagline } from "./tagline.js";
5
- import { resolveCliName } from "./cli-name.js";
6
5
  let bannerEmitted = false;
7
6
  const graphemeSegmenter = typeof Intl !== "undefined" && "Segmenter" in Intl
8
7
  ? new Intl.Segmenter(undefined, { granularity: "grapheme" })
@@ -24,8 +23,7 @@ export function formatCliBannerLine(version, options = {}) {
24
23
  const commitLabel = commit ?? "unknown";
25
24
  const tagline = pickTagline(options);
26
25
  const rich = options.richTty ?? isRich();
27
- const cliName = resolveCliName(options.argv ?? process.argv, options.env);
28
- const title = cliName === "moltbot" ? "🎱 Pool Bot" : "🎱 Pool Bot";
26
+ const title = "🦞 Clawdbot";
29
27
  const prefix = "🦞 ";
30
28
  const columns = options.columns ?? process.stdout.columns ?? 120;
31
29
  const plainFullLine = `${title} ${version} (${commitLabel}) — ${tagline}`;
@@ -1,6 +1,7 @@
1
+ import { browserAct } from "../../browser/client-actions.js";
1
2
  import { danger } from "../../globals.js";
2
3
  import { defaultRuntime } from "../../runtime.js";
3
- import { callBrowserAct, requireRef, resolveBrowserActionContext } from "./shared.js";
4
+ import { requireRef, resolveBrowserActionContext } from "./shared.js";
4
5
  export function registerBrowserElementCommands(browser, parentOpts) {
5
6
  browser
6
7
  .command("click")
@@ -11,7 +12,7 @@ export function registerBrowserElementCommands(browser, parentOpts) {
11
12
  .option("--button <left|right|middle>", "Mouse button to use")
12
13
  .option("--modifiers <list>", "Comma-separated modifiers (Shift,Alt,Meta)")
13
14
  .action(async (ref, opts, cmd) => {
14
- const { parent, profile } = resolveBrowserActionContext(cmd, parentOpts);
15
+ const { parent, baseUrl, profile } = resolveBrowserActionContext(cmd, parentOpts);
15
16
  const refValue = requireRef(ref);
16
17
  if (!refValue)
17
18
  return;
@@ -22,18 +23,14 @@ export function registerBrowserElementCommands(browser, parentOpts) {
22
23
  .filter(Boolean)
23
24
  : undefined;
24
25
  try {
25
- const result = await callBrowserAct({
26
- parent,
27
- profile,
28
- body: {
29
- kind: "click",
30
- ref: refValue,
31
- targetId: opts.targetId?.trim() || undefined,
32
- doubleClick: Boolean(opts.double),
33
- button: opts.button?.trim() || undefined,
34
- modifiers,
35
- },
36
- });
26
+ const result = await browserAct(baseUrl, {
27
+ kind: "click",
28
+ ref: refValue,
29
+ targetId: opts.targetId?.trim() || undefined,
30
+ doubleClick: Boolean(opts.double),
31
+ button: opts.button?.trim() || undefined,
32
+ modifiers,
33
+ }, { profile });
37
34
  if (parent?.json) {
38
35
  defaultRuntime.log(JSON.stringify(result, null, 2));
39
36
  return;
@@ -55,23 +52,19 @@ export function registerBrowserElementCommands(browser, parentOpts) {
55
52
  .option("--slowly", "Type slowly (human-like)", false)
56
53
  .option("--target-id <id>", "CDP target id (or unique prefix)")
57
54
  .action(async (ref, text, opts, cmd) => {
58
- const { parent, profile } = resolveBrowserActionContext(cmd, parentOpts);
55
+ const { parent, baseUrl, profile } = resolveBrowserActionContext(cmd, parentOpts);
59
56
  const refValue = requireRef(ref);
60
57
  if (!refValue)
61
58
  return;
62
59
  try {
63
- const result = await callBrowserAct({
64
- parent,
65
- profile,
66
- body: {
67
- kind: "type",
68
- ref: refValue,
69
- text,
70
- submit: Boolean(opts.submit),
71
- slowly: Boolean(opts.slowly),
72
- targetId: opts.targetId?.trim() || undefined,
73
- },
74
- });
60
+ const result = await browserAct(baseUrl, {
61
+ kind: "type",
62
+ ref: refValue,
63
+ text,
64
+ submit: Boolean(opts.submit),
65
+ slowly: Boolean(opts.slowly),
66
+ targetId: opts.targetId?.trim() || undefined,
67
+ }, { profile });
75
68
  if (parent?.json) {
76
69
  defaultRuntime.log(JSON.stringify(result, null, 2));
77
70
  return;
@@ -89,13 +82,9 @@ export function registerBrowserElementCommands(browser, parentOpts) {
89
82
  .argument("<key>", "Key to press (e.g. Enter)")
90
83
  .option("--target-id <id>", "CDP target id (or unique prefix)")
91
84
  .action(async (key, opts, cmd) => {
92
- const { parent, profile } = resolveBrowserActionContext(cmd, parentOpts);
85
+ const { parent, baseUrl, profile } = resolveBrowserActionContext(cmd, parentOpts);
93
86
  try {
94
- const result = await callBrowserAct({
95
- parent,
96
- profile,
97
- body: { kind: "press", key, targetId: opts.targetId?.trim() || undefined },
98
- });
87
+ const result = await browserAct(baseUrl, { kind: "press", key, targetId: opts.targetId?.trim() || undefined }, { profile });
99
88
  if (parent?.json) {
100
89
  defaultRuntime.log(JSON.stringify(result, null, 2));
101
90
  return;
@@ -113,13 +102,9 @@ export function registerBrowserElementCommands(browser, parentOpts) {
113
102
  .argument("<ref>", "Ref id from snapshot")
114
103
  .option("--target-id <id>", "CDP target id (or unique prefix)")
115
104
  .action(async (ref, opts, cmd) => {
116
- const { parent, profile } = resolveBrowserActionContext(cmd, parentOpts);
105
+ const { parent, baseUrl, profile } = resolveBrowserActionContext(cmd, parentOpts);
117
106
  try {
118
- const result = await callBrowserAct({
119
- parent,
120
- profile,
121
- body: { kind: "hover", ref, targetId: opts.targetId?.trim() || undefined },
122
- });
107
+ const result = await browserAct(baseUrl, { kind: "hover", ref, targetId: opts.targetId?.trim() || undefined }, { profile });
123
108
  if (parent?.json) {
124
109
  defaultRuntime.log(JSON.stringify(result, null, 2));
125
110
  return;
@@ -138,22 +123,17 @@ export function registerBrowserElementCommands(browser, parentOpts) {
138
123
  .option("--target-id <id>", "CDP target id (or unique prefix)")
139
124
  .option("--timeout-ms <ms>", "How long to wait for scroll (default: 20000)", (v) => Number(v))
140
125
  .action(async (ref, opts, cmd) => {
141
- const { parent, profile } = resolveBrowserActionContext(cmd, parentOpts);
126
+ const { parent, baseUrl, profile } = resolveBrowserActionContext(cmd, parentOpts);
142
127
  const refValue = requireRef(ref);
143
128
  if (!refValue)
144
129
  return;
145
130
  try {
146
- const result = await callBrowserAct({
147
- parent,
148
- profile,
149
- body: {
150
- kind: "scrollIntoView",
151
- ref: refValue,
152
- targetId: opts.targetId?.trim() || undefined,
153
- timeoutMs: Number.isFinite(opts.timeoutMs) ? opts.timeoutMs : undefined,
154
- },
131
+ const result = await browserAct(baseUrl, {
132
+ kind: "scrollIntoView",
133
+ ref: refValue,
134
+ targetId: opts.targetId?.trim() || undefined,
155
135
  timeoutMs: Number.isFinite(opts.timeoutMs) ? opts.timeoutMs : undefined,
156
- });
136
+ }, { profile });
157
137
  if (parent?.json) {
158
138
  defaultRuntime.log(JSON.stringify(result, null, 2));
159
139
  return;
@@ -172,18 +152,14 @@ export function registerBrowserElementCommands(browser, parentOpts) {
172
152
  .argument("<endRef>", "End ref id")
173
153
  .option("--target-id <id>", "CDP target id (or unique prefix)")
174
154
  .action(async (startRef, endRef, opts, cmd) => {
175
- const { parent, profile } = resolveBrowserActionContext(cmd, parentOpts);
155
+ const { parent, baseUrl, profile } = resolveBrowserActionContext(cmd, parentOpts);
176
156
  try {
177
- const result = await callBrowserAct({
178
- parent,
179
- profile,
180
- body: {
181
- kind: "drag",
182
- startRef,
183
- endRef,
184
- targetId: opts.targetId?.trim() || undefined,
185
- },
186
- });
157
+ const result = await browserAct(baseUrl, {
158
+ kind: "drag",
159
+ startRef,
160
+ endRef,
161
+ targetId: opts.targetId?.trim() || undefined,
162
+ }, { profile });
187
163
  if (parent?.json) {
188
164
  defaultRuntime.log(JSON.stringify(result, null, 2));
189
165
  return;
@@ -202,18 +178,14 @@ export function registerBrowserElementCommands(browser, parentOpts) {
202
178
  .argument("<values...>", "Option values to select")
203
179
  .option("--target-id <id>", "CDP target id (or unique prefix)")
204
180
  .action(async (ref, values, opts, cmd) => {
205
- const { parent, profile } = resolveBrowserActionContext(cmd, parentOpts);
181
+ const { parent, baseUrl, profile } = resolveBrowserActionContext(cmd, parentOpts);
206
182
  try {
207
- const result = await callBrowserAct({
208
- parent,
209
- profile,
210
- body: {
211
- kind: "select",
212
- ref,
213
- values,
214
- targetId: opts.targetId?.trim() || undefined,
215
- },
216
- });
183
+ const result = await browserAct(baseUrl, {
184
+ kind: "select",
185
+ ref,
186
+ values,
187
+ targetId: opts.targetId?.trim() || undefined,
188
+ }, { profile });
217
189
  if (parent?.json) {
218
190
  defaultRuntime.log(JSON.stringify(result, null, 2));
219
191
  return;
@@ -1,6 +1,6 @@
1
+ import { browserArmDialog, browserArmFileChooser, browserDownload, browserWaitForDownload, } from "../../browser/client-actions.js";
1
2
  import { danger } from "../../globals.js";
2
3
  import { defaultRuntime } from "../../runtime.js";
3
- import { callBrowserRequest } from "../browser-cli-shared.js";
4
4
  import { resolveBrowserActionContext } from "./shared.js";
5
5
  import { shortenHomePath } from "../../utils.js";
6
6
  export function registerBrowserFilesAndDownloadsCommands(browser, parentOpts) {
@@ -14,22 +14,17 @@ export function registerBrowserFilesAndDownloadsCommands(browser, parentOpts) {
14
14
  .option("--target-id <id>", "CDP target id (or unique prefix)")
15
15
  .option("--timeout-ms <ms>", "How long to wait for the next file chooser (default: 120000)", (v) => Number(v))
16
16
  .action(async (paths, opts, cmd) => {
17
- const { parent, profile } = resolveBrowserActionContext(cmd, parentOpts);
17
+ const { parent, baseUrl, profile } = resolveBrowserActionContext(cmd, parentOpts);
18
18
  try {
19
- const timeoutMs = Number.isFinite(opts.timeoutMs) ? opts.timeoutMs : undefined;
20
- const result = await callBrowserRequest(parent, {
21
- method: "POST",
22
- path: "/hooks/file-chooser",
23
- query: profile ? { profile } : undefined,
24
- body: {
25
- paths,
26
- ref: opts.ref?.trim() || undefined,
27
- inputRef: opts.inputRef?.trim() || undefined,
28
- element: opts.element?.trim() || undefined,
29
- targetId: opts.targetId?.trim() || undefined,
30
- timeoutMs,
31
- },
32
- }, { timeoutMs: timeoutMs ?? 20000 });
19
+ const result = await browserArmFileChooser(baseUrl, {
20
+ paths,
21
+ ref: opts.ref?.trim() || undefined,
22
+ inputRef: opts.inputRef?.trim() || undefined,
23
+ element: opts.element?.trim() || undefined,
24
+ targetId: opts.targetId?.trim() || undefined,
25
+ timeoutMs: Number.isFinite(opts.timeoutMs) ? opts.timeoutMs : undefined,
26
+ profile,
27
+ });
33
28
  if (parent?.json) {
34
29
  defaultRuntime.log(JSON.stringify(result, null, 2));
35
30
  return;
@@ -44,23 +39,18 @@ export function registerBrowserFilesAndDownloadsCommands(browser, parentOpts) {
44
39
  browser
45
40
  .command("waitfordownload")
46
41
  .description("Wait for the next download (and save it)")
47
- .argument("[path]", "Save path (default: /tmp/moltbot/downloads/...)")
42
+ .argument("[path]", "Save path (default: /tmp/clawdbot/downloads/...)")
48
43
  .option("--target-id <id>", "CDP target id (or unique prefix)")
49
44
  .option("--timeout-ms <ms>", "How long to wait for the next download (default: 120000)", (v) => Number(v))
50
45
  .action(async (outPath, opts, cmd) => {
51
- const { parent, profile } = resolveBrowserActionContext(cmd, parentOpts);
46
+ const { parent, baseUrl, profile } = resolveBrowserActionContext(cmd, parentOpts);
52
47
  try {
53
- const timeoutMs = Number.isFinite(opts.timeoutMs) ? opts.timeoutMs : undefined;
54
- const result = await callBrowserRequest(parent, {
55
- method: "POST",
56
- path: "/wait/download",
57
- query: profile ? { profile } : undefined,
58
- body: {
59
- path: outPath?.trim() || undefined,
60
- targetId: opts.targetId?.trim() || undefined,
61
- timeoutMs,
62
- },
63
- }, { timeoutMs: timeoutMs ?? 20000 });
48
+ const result = await browserWaitForDownload(baseUrl, {
49
+ path: outPath?.trim() || undefined,
50
+ targetId: opts.targetId?.trim() || undefined,
51
+ timeoutMs: Number.isFinite(opts.timeoutMs) ? opts.timeoutMs : undefined,
52
+ profile,
53
+ });
64
54
  if (parent?.json) {
65
55
  defaultRuntime.log(JSON.stringify(result, null, 2));
66
56
  return;
@@ -80,20 +70,15 @@ export function registerBrowserFilesAndDownloadsCommands(browser, parentOpts) {
80
70
  .option("--target-id <id>", "CDP target id (or unique prefix)")
81
71
  .option("--timeout-ms <ms>", "How long to wait for the download to start (default: 120000)", (v) => Number(v))
82
72
  .action(async (ref, outPath, opts, cmd) => {
83
- const { parent, profile } = resolveBrowserActionContext(cmd, parentOpts);
73
+ const { parent, baseUrl, profile } = resolveBrowserActionContext(cmd, parentOpts);
84
74
  try {
85
- const timeoutMs = Number.isFinite(opts.timeoutMs) ? opts.timeoutMs : undefined;
86
- const result = await callBrowserRequest(parent, {
87
- method: "POST",
88
- path: "/download",
89
- query: profile ? { profile } : undefined,
90
- body: {
91
- ref,
92
- path: outPath,
93
- targetId: opts.targetId?.trim() || undefined,
94
- timeoutMs,
95
- },
96
- }, { timeoutMs: timeoutMs ?? 20000 });
75
+ const result = await browserDownload(baseUrl, {
76
+ ref,
77
+ path: outPath,
78
+ targetId: opts.targetId?.trim() || undefined,
79
+ timeoutMs: Number.isFinite(opts.timeoutMs) ? opts.timeoutMs : undefined,
80
+ profile,
81
+ });
97
82
  if (parent?.json) {
98
83
  defaultRuntime.log(JSON.stringify(result, null, 2));
99
84
  return;
@@ -114,7 +99,7 @@ export function registerBrowserFilesAndDownloadsCommands(browser, parentOpts) {
114
99
  .option("--target-id <id>", "CDP target id (or unique prefix)")
115
100
  .option("--timeout-ms <ms>", "How long to wait for the next dialog (default: 120000)", (v) => Number(v))
116
101
  .action(async (opts, cmd) => {
117
- const { parent, profile } = resolveBrowserActionContext(cmd, parentOpts);
102
+ const { parent, baseUrl, profile } = resolveBrowserActionContext(cmd, parentOpts);
118
103
  const accept = opts.accept ? true : opts.dismiss ? false : undefined;
119
104
  if (accept === undefined) {
120
105
  defaultRuntime.error(danger("Specify --accept or --dismiss"));
@@ -122,18 +107,13 @@ export function registerBrowserFilesAndDownloadsCommands(browser, parentOpts) {
122
107
  return;
123
108
  }
124
109
  try {
125
- const timeoutMs = Number.isFinite(opts.timeoutMs) ? opts.timeoutMs : undefined;
126
- const result = await callBrowserRequest(parent, {
127
- method: "POST",
128
- path: "/hooks/dialog",
129
- query: profile ? { profile } : undefined,
130
- body: {
131
- accept,
132
- promptText: opts.prompt?.trim() || undefined,
133
- targetId: opts.targetId?.trim() || undefined,
134
- timeoutMs,
135
- },
136
- }, { timeoutMs: timeoutMs ?? 20000 });
110
+ const result = await browserArmDialog(baseUrl, {
111
+ accept,
112
+ promptText: opts.prompt?.trim() || undefined,
113
+ targetId: opts.targetId?.trim() || undefined,
114
+ timeoutMs: Number.isFinite(opts.timeoutMs) ? opts.timeoutMs : undefined,
115
+ profile,
116
+ });
137
117
  if (parent?.json) {
138
118
  defaultRuntime.log(JSON.stringify(result, null, 2));
139
119
  return;