@gguf/pigbot 0.0.1 → 0.0.2

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 (1301) hide show
  1. package/CHANGELOG.md +300 -166
  2. package/README-header.png +0 -0
  3. package/assets/chrome-extension/README.md +5 -5
  4. package/assets/chrome-extension/background.js +5 -5
  5. package/assets/chrome-extension/manifest.json +3 -3
  6. package/assets/chrome-extension/options.html +5 -6
  7. package/assets/chrome-extension/options.js +1 -1
  8. package/dist/acp/client.js +5 -5
  9. package/dist/acp/server.js +3 -3
  10. package/dist/acp/types.js +2 -2
  11. package/dist/agents/agent-paths.js +6 -6
  12. package/dist/agents/anthropic-payload-log.js +2 -2
  13. package/dist/agents/auth-health.js +2 -6
  14. package/dist/agents/auth-profiles/doctor.js +1 -1
  15. package/dist/agents/auth-profiles/external-cli-sync.js +5 -150
  16. package/dist/agents/auth-profiles/oauth.js +26 -7
  17. package/dist/agents/auth-profiles/paths.js +3 -3
  18. package/dist/agents/auth-profiles/store.js +5 -13
  19. package/dist/agents/bash-tools.exec.js +77 -26
  20. package/dist/agents/bash-tools.shared.js +8 -1
  21. package/dist/agents/cache-trace.js +5 -5
  22. package/dist/agents/cli-backends.js +8 -0
  23. package/dist/agents/cli-runner/helpers.js +3 -3
  24. package/dist/agents/cli-runner.js +3 -3
  25. package/dist/agents/compaction.js +3 -0
  26. package/dist/agents/context.js +4 -4
  27. package/dist/agents/docs-path.js +3 -3
  28. package/dist/agents/identity.js +1 -1
  29. package/dist/agents/live-auth-keys.js +2 -2
  30. package/dist/agents/memory-search.js +7 -2
  31. package/dist/agents/minimax-vlm.js +1 -1
  32. package/dist/agents/model-auth.js +1 -1
  33. package/dist/agents/model-catalog.js +23 -5
  34. package/dist/agents/model-fallback.js +22 -0
  35. package/dist/agents/model-selection.js +9 -2
  36. package/dist/agents/models-config.js +3 -3
  37. package/dist/agents/models-config.providers.js +4 -4
  38. package/dist/agents/{pigbot-tools.js → moltbot-tools.js} +7 -6
  39. package/dist/agents/pi-embedded-helpers/errors.js +23 -1
  40. package/dist/agents/pi-embedded-helpers/openai.js +1 -1
  41. package/dist/agents/pi-embedded-runner/cache-ttl.js +1 -1
  42. package/dist/agents/pi-embedded-runner/compact.js +8 -8
  43. package/dist/agents/pi-embedded-runner/extensions.js +5 -0
  44. package/dist/agents/pi-embedded-runner/model.js +9 -3
  45. package/dist/agents/pi-embedded-runner/run/attempt.js +10 -6
  46. package/dist/agents/pi-embedded-runner/run.js +5 -5
  47. package/dist/agents/pi-embedded-runner/sandbox-info.js +1 -4
  48. package/dist/agents/pi-embedded-runner/session-manager-cache.js +1 -1
  49. package/dist/agents/pi-embedded-runner/utils.js +1 -1
  50. package/dist/agents/pi-embedded-subscribe.raw-stream.js +2 -2
  51. package/dist/agents/pi-embedded-utils.js +7 -1
  52. package/dist/agents/pi-extensions/compaction-safeguard-runtime.js +20 -0
  53. package/dist/agents/pi-extensions/compaction-safeguard.js +32 -3
  54. package/dist/agents/pi-tools.js +26 -15
  55. package/dist/agents/pi-tools.policy.js +34 -1
  56. package/dist/agents/pi-tools.read.js +2 -2
  57. package/dist/agents/sandbox/browser.js +10 -12
  58. package/dist/agents/sandbox/config.js +0 -12
  59. package/dist/agents/sandbox/constants.js +8 -8
  60. package/dist/agents/sandbox/context.js +3 -3
  61. package/dist/agents/sandbox/docker.js +8 -8
  62. package/dist/agents/sandbox/runtime-status.js +1 -1
  63. package/dist/agents/session-transcript-repair.js +1 -1
  64. package/dist/agents/session-write-lock.js +68 -0
  65. package/dist/agents/skills/bundled-dir.js +1 -1
  66. package/dist/agents/skills/config.js +9 -8
  67. package/dist/agents/skills/env-overrides.js +1 -1
  68. package/dist/agents/skills/frontmatter.js +15 -14
  69. package/dist/agents/skills/workspace.js +7 -7
  70. package/dist/agents/skills-install.js +1 -1
  71. package/dist/agents/skills-status.js +12 -12
  72. package/dist/agents/subagent-registry.store.js +2 -2
  73. package/dist/agents/system-prompt.js +21 -32
  74. package/dist/agents/tool-images.js +1 -1
  75. package/dist/agents/tool-policy.js +8 -2
  76. package/dist/agents/tools/agents-list-tool.js +3 -1
  77. package/dist/agents/tools/browser-tool.js +19 -79
  78. package/dist/agents/tools/browser-tool.schema.js +1 -2
  79. package/dist/agents/tools/cron-tool.js +44 -1
  80. package/dist/agents/tools/discord-actions-guild.js +5 -1
  81. package/dist/agents/tools/image-tool.js +2 -2
  82. package/dist/agents/tools/message-tool.js +13 -1
  83. package/dist/agents/tools/sessions-send-helpers.js +17 -2
  84. package/dist/agents/tools/sessions-spawn-tool.js +1 -1
  85. package/dist/agents/tools/telegram-actions.js +95 -1
  86. package/dist/agents/tools/web-fetch.js +123 -103
  87. package/dist/agents/tools/web-search.js +7 -7
  88. package/dist/agents/workspace.js +37 -1
  89. package/dist/auto-reply/chunk.js +71 -26
  90. package/dist/auto-reply/commands-registry.data.js +73 -22
  91. package/dist/auto-reply/commands-registry.js +14 -11
  92. package/dist/auto-reply/heartbeat.js +3 -0
  93. package/dist/auto-reply/model.js +1 -1
  94. package/dist/auto-reply/reply/agent-runner-execution.js +21 -3
  95. package/dist/auto-reply/reply/agent-runner-memory.js +5 -0
  96. package/dist/auto-reply/reply/bash-command.js +2 -2
  97. package/dist/auto-reply/reply/block-streaming.js +8 -15
  98. package/dist/auto-reply/reply/commands-context-report.js +2 -2
  99. package/dist/auto-reply/reply/commands-info.js +50 -5
  100. package/dist/auto-reply/reply/commands-plugin.js +4 -2
  101. package/dist/auto-reply/reply/commands-session.js +4 -4
  102. package/dist/auto-reply/reply/commands-tts.js +61 -63
  103. package/dist/auto-reply/reply/directive-handling.shared.js +1 -1
  104. package/dist/auto-reply/reply/directives.js +12 -1
  105. package/dist/auto-reply/reply/dispatch-from-config.js +68 -22
  106. package/dist/auto-reply/reply/followup-runner.js +5 -0
  107. package/dist/auto-reply/reply/get-reply-inline-actions.js +2 -2
  108. package/dist/auto-reply/reply/get-reply-run.js +4 -0
  109. package/dist/auto-reply/reply/get-reply.js +1 -1
  110. package/dist/auto-reply/reply/groups.js +1 -1
  111. package/dist/auto-reply/reply/history.js +23 -0
  112. package/dist/auto-reply/reply/line-directives.js +294 -0
  113. package/dist/auto-reply/reply/normalize-reply.js +13 -5
  114. package/dist/auto-reply/reply/reply-elevated.js +1 -1
  115. package/dist/auto-reply/reply/reply-payloads.js +2 -1
  116. package/dist/auto-reply/reply/route-reply.js +1 -1
  117. package/dist/auto-reply/reply/session-updates.js +6 -1
  118. package/dist/auto-reply/reply/stage-sandbox-media.js +1 -1
  119. package/dist/auto-reply/status.js +144 -42
  120. package/dist/auto-reply/thinking.js +13 -0
  121. package/dist/browser/bridge-server.js +1 -3
  122. package/dist/browser/client-actions-core.js +13 -7
  123. package/dist/browser/client-actions-observe.js +14 -8
  124. package/dist/browser/client-actions-state.js +21 -15
  125. package/dist/browser/client-fetch.js +74 -61
  126. package/dist/browser/client.js +19 -21
  127. package/dist/browser/config.js +13 -26
  128. package/dist/browser/constants.js +1 -1
  129. package/dist/browser/control-service.js +72 -0
  130. package/dist/browser/extension-relay.js +3 -3
  131. package/dist/browser/pw-session.js +41 -4
  132. package/dist/browser/pw-tools-core.downloads.js +1 -1
  133. package/dist/browser/pw-tools-core.interactions.js +5 -5
  134. package/dist/browser/pw-tools-core.responses.js +1 -1
  135. package/dist/browser/routes/agent.act.js +13 -0
  136. package/dist/browser/routes/agent.debug.js +1 -1
  137. package/dist/browser/routes/basic.js +0 -1
  138. package/dist/browser/routes/dispatcher.js +86 -0
  139. package/dist/browser/server-context.js +3 -3
  140. package/dist/browser/server.js +7 -9
  141. package/dist/build-info.json +2 -2
  142. package/dist/canvas-host/a2ui/.bundle.hash +1 -0
  143. package/dist/canvas-host/a2ui/a2ui.bundle.js +1620 -1618
  144. package/dist/canvas-host/a2ui/index.html +28 -28
  145. package/dist/canvas-host/a2ui.js +27 -21
  146. package/dist/canvas-host/server.js +67 -33
  147. package/dist/channels/plugins/actions/discord/handle-action.guild-admin.js +5 -1
  148. package/dist/channels/plugins/actions/telegram.js +62 -7
  149. package/dist/channels/plugins/catalog.js +7 -5
  150. package/dist/channels/plugins/group-mentions.js +48 -1
  151. package/dist/channels/plugins/helpers.js +2 -2
  152. package/dist/channels/plugins/message-action-names.js +1 -0
  153. package/dist/channels/plugins/normalize/imessage.js +36 -0
  154. package/dist/channels/plugins/onboarding/imessage.js +1 -1
  155. package/dist/channels/plugins/onboarding/signal.js +2 -2
  156. package/dist/channels/plugins/onboarding/slack.js +4 -4
  157. package/dist/channels/plugins/onboarding/telegram.js +17 -9
  158. package/dist/channels/plugins/onboarding/whatsapp.js +4 -4
  159. package/dist/channels/plugins/outbound/telegram.js +40 -0
  160. package/dist/channels/plugins/pairing-message.js +1 -1
  161. package/dist/channels/plugins/status-issues/bluebubbles.js +1 -1
  162. package/dist/channels/plugins/status-issues/whatsapp.js +2 -2
  163. package/dist/channels/registry.js +1 -1
  164. package/dist/cli/acp-cli.js +2 -2
  165. package/dist/cli/argv.js +14 -7
  166. package/dist/cli/banner.js +3 -1
  167. package/dist/cli/browser-cli-actions-input/register.element.js +72 -44
  168. package/dist/cli/browser-cli-actions-input/register.files-downloads.js +55 -35
  169. package/dist/cli/browser-cli-actions-input/register.form-wait-eval.js +41 -28
  170. package/dist/cli/browser-cli-actions-input/register.navigation.js +23 -14
  171. package/dist/cli/browser-cli-actions-input/shared.js +10 -3
  172. package/dist/cli/browser-cli-actions-observe.js +29 -21
  173. package/dist/cli/browser-cli-debug.js +49 -35
  174. package/dist/cli/browser-cli-examples.js +29 -29
  175. package/dist/cli/browser-cli-extension.js +8 -8
  176. package/dist/cli/browser-cli-inspect.js +23 -17
  177. package/dist/cli/browser-cli-manage.js +106 -56
  178. package/dist/cli/browser-cli-shared.js +34 -1
  179. package/dist/cli/browser-cli-state.cookies-storage.js +53 -39
  180. package/dist/cli/browser-cli-state.js +90 -64
  181. package/dist/cli/browser-cli.js +4 -5
  182. package/dist/cli/channel-options.js +1 -1
  183. package/dist/cli/channels-cli.js +1 -1
  184. package/dist/cli/cli-name.js +26 -0
  185. package/dist/cli/command-format.js +12 -8
  186. package/dist/cli/config-cli.js +2 -2
  187. package/dist/cli/cron-cli/register.js +1 -1
  188. package/dist/cli/daemon-cli/install.js +3 -2
  189. package/dist/cli/daemon-cli/register.js +1 -1
  190. package/dist/cli/daemon-cli/shared.js +13 -11
  191. package/dist/cli/daemon-cli/status.gather.js +2 -2
  192. package/dist/cli/daemon-cli/status.print.js +8 -8
  193. package/dist/cli/directory-cli.js +1 -1
  194. package/dist/cli/dns-cli.js +7 -7
  195. package/dist/cli/docs-cli.js +2 -2
  196. package/dist/cli/exec-approvals-cli.js +2 -2
  197. package/dist/cli/gateway-cli/dev.js +5 -5
  198. package/dist/cli/gateway-cli/register.js +1 -1
  199. package/dist/cli/gateway-cli/run.js +19 -16
  200. package/dist/cli/gateway-cli/shared.js +5 -5
  201. package/dist/cli/hooks-cli.js +3 -3
  202. package/dist/cli/logs-cli.js +3 -3
  203. package/dist/cli/memory-cli.js +1 -1
  204. package/dist/cli/models-cli.js +2 -2
  205. package/dist/cli/node-cli/daemon.js +3 -3
  206. package/dist/cli/node-cli/register.js +1 -1
  207. package/dist/cli/nodes-camera.js +3 -1
  208. package/dist/cli/nodes-canvas.js +3 -1
  209. package/dist/cli/nodes-cli/register.canvas.js +1 -1
  210. package/dist/cli/nodes-cli/register.js +1 -1
  211. package/dist/cli/nodes-screen.js +1 -1
  212. package/dist/cli/pairing-cli.js +3 -3
  213. package/dist/cli/plugin-registry.js +2 -2
  214. package/dist/cli/plugins-cli.js +3 -3
  215. package/dist/cli/profile.js +9 -9
  216. package/dist/cli/program/config-guard.js +1 -1
  217. package/dist/cli/program/help.js +15 -16
  218. package/dist/cli/program/message/register.send.js +2 -1
  219. package/dist/cli/program/preaction.js +5 -3
  220. package/dist/cli/program/register.agent.js +12 -12
  221. package/dist/cli/program/register.configure.js +1 -1
  222. package/dist/cli/program/register.maintenance.js +4 -4
  223. package/dist/cli/program/register.message.js +5 -5
  224. package/dist/cli/program/register.onboard.js +5 -3
  225. package/dist/cli/program/register.setup.js +2 -2
  226. package/dist/cli/program/register.status-health-sessions.js +13 -13
  227. package/dist/cli/program/register.subclis.js +2 -2
  228. package/dist/cli/route.js +1 -1
  229. package/dist/cli/run-main.js +11 -4
  230. package/dist/cli/sandbox-cli.js +19 -19
  231. package/dist/cli/security-cli.js +18 -8
  232. package/dist/cli/skills-cli.js +3 -3
  233. package/dist/cli/system-cli.js +1 -1
  234. package/dist/cli/tagline.js +2 -2
  235. package/dist/cli/tui-cli.js +1 -1
  236. package/dist/cli/update-cli.js +64 -48
  237. package/dist/cli/webhooks-cli.js +6 -6
  238. package/dist/commands/agent-via-gateway.js +1 -1
  239. package/dist/commands/agent.js +2 -1
  240. package/dist/commands/agents.command-shared.js +1 -1
  241. package/dist/commands/agents.commands.add.js +2 -3
  242. package/dist/commands/agents.commands.list.js +1 -1
  243. package/dist/commands/auth-choice-options.js +4 -54
  244. package/dist/commands/auth-choice.apply.anthropic.js +6 -109
  245. package/dist/commands/auth-choice.apply.openai.js +1 -33
  246. package/dist/commands/auth-choice.apply.plugin-provider.js +2 -2
  247. package/dist/commands/channels/list.js +2 -2
  248. package/dist/commands/channels/shared.js +1 -1
  249. package/dist/commands/channels/status.js +1 -1
  250. package/dist/commands/chutes-oauth.js +1 -1
  251. package/dist/commands/configure.channels.js +4 -4
  252. package/dist/commands/configure.daemon.js +10 -2
  253. package/dist/commands/configure.gateway-auth.js +1 -8
  254. package/dist/commands/configure.gateway.js +1 -10
  255. package/dist/commands/configure.wizard.js +21 -21
  256. package/dist/commands/daemon-install-helpers.js +10 -3
  257. package/dist/commands/dashboard.js +2 -2
  258. package/dist/commands/docs.js +5 -5
  259. package/dist/commands/doctor-auth.js +122 -3
  260. package/dist/commands/doctor-config-flow.js +7 -7
  261. package/dist/commands/doctor-format.js +5 -5
  262. package/dist/commands/doctor-gateway-daemon-flow.js +5 -4
  263. package/dist/commands/doctor-gateway-services.js +7 -5
  264. package/dist/commands/doctor-platform-notes.js +7 -7
  265. package/dist/commands/doctor-security.js +48 -1
  266. package/dist/commands/doctor-state-integrity.js +3 -3
  267. package/dist/commands/doctor-ui.js +2 -2
  268. package/dist/commands/doctor-update.js +5 -5
  269. package/dist/commands/doctor-workspace-status.js +2 -2
  270. package/dist/commands/doctor-workspace.js +4 -4
  271. package/dist/commands/doctor.js +13 -12
  272. package/dist/commands/gateway-status/helpers.js +2 -2
  273. package/dist/commands/gateway-status.js +2 -2
  274. package/dist/commands/health.js +2 -2
  275. package/dist/commands/models/auth.js +23 -22
  276. package/dist/commands/models/list.probe.js +2 -2
  277. package/dist/commands/models/list.registry.js +4 -4
  278. package/dist/commands/models/list.status-command.js +8 -9
  279. package/dist/commands/node-daemon-install-helpers.js +1 -1
  280. package/dist/commands/onboard-auth.credentials.js +2 -2
  281. package/dist/commands/onboard-channels.js +3 -3
  282. package/dist/commands/onboard-helpers.js +4 -4
  283. package/dist/commands/onboard-hooks.js +4 -4
  284. package/dist/commands/onboard-non-interactive/local/auth-choice.js +38 -34
  285. package/dist/commands/onboard-non-interactive/local/daemon-install.js +1 -0
  286. package/dist/commands/onboard-non-interactive/local/gateway-config.js +7 -4
  287. package/dist/commands/onboard-non-interactive/local.js +1 -1
  288. package/dist/commands/onboard-non-interactive/remote.js +1 -1
  289. package/dist/commands/onboard-non-interactive.js +1 -1
  290. package/dist/commands/onboard-remote.js +2 -2
  291. package/dist/commands/onboard-skills.js +2 -2
  292. package/dist/commands/onboard.js +25 -4
  293. package/dist/commands/onboarding/plugin-install.js +2 -2
  294. package/dist/commands/reset.js +3 -3
  295. package/dist/commands/sandbox-display.js +1 -1
  296. package/dist/commands/sandbox-explain.js +2 -2
  297. package/dist/commands/setup.js +2 -2
  298. package/dist/commands/signal-install.js +2 -2
  299. package/dist/commands/status-all/diagnosis.js +1 -1
  300. package/dist/commands/status-all/report-lines.js +1 -1
  301. package/dist/commands/status-all.js +5 -5
  302. package/dist/commands/status.command.js +9 -9
  303. package/dist/commands/status.gateway-probe.js +2 -2
  304. package/dist/commands/status.scan.js +2 -2
  305. package/dist/commands/status.update.js +3 -3
  306. package/dist/commands/uninstall.js +4 -4
  307. package/dist/compat/legacy-names.js +6 -0
  308. package/dist/config/config.js +1 -1
  309. package/dist/config/env-vars.js +21 -0
  310. package/dist/config/group-policy.js +69 -0
  311. package/dist/config/io.js +24 -28
  312. package/dist/config/legacy.migrations.part-3.js +3 -0
  313. package/dist/config/logging.js +3 -3
  314. package/dist/config/paths.js +57 -17
  315. package/dist/config/schema.js +26 -12
  316. package/dist/config/sessions/store.js +1 -1
  317. package/dist/config/sessions/transcript.js +1 -1
  318. package/dist/config/types.clawdbot.js +1 -0
  319. package/dist/config/types.js +1 -1
  320. package/dist/config/validation.js +2 -2
  321. package/dist/config/version.js +4 -4
  322. package/dist/config/zod-schema.agent-defaults.js +1 -0
  323. package/dist/config/zod-schema.agent-runtime.js +39 -7
  324. package/dist/config/zod-schema.hooks.js +2 -0
  325. package/dist/config/zod-schema.js +10 -3
  326. package/dist/config/zod-schema.providers-core.js +24 -0
  327. package/dist/config/zod-schema.providers-whatsapp.js +3 -0
  328. package/dist/control-ui/assets/index-BAFzd9IE.css +1 -0
  329. package/dist/control-ui/assets/index-CxUFDXFX.js +3162 -0
  330. package/dist/control-ui/assets/index-CxUFDXFX.js.map +1 -0
  331. package/dist/control-ui/index.html +4 -4
  332. package/dist/cron/isolated-agent/run.js +38 -3
  333. package/dist/daemon/constants.js +26 -16
  334. package/dist/daemon/inspect.js +16 -15
  335. package/dist/daemon/launchd.js +8 -8
  336. package/dist/daemon/node-service.js +14 -14
  337. package/dist/daemon/paths.js +3 -3
  338. package/dist/daemon/program-args.js +1 -1
  339. package/dist/daemon/schtasks.js +6 -6
  340. package/dist/daemon/service-env.js +21 -21
  341. package/dist/daemon/systemd-hints.js +1 -1
  342. package/dist/daemon/systemd-unit.js +1 -1
  343. package/dist/daemon/systemd.js +6 -6
  344. package/dist/discord/monitor/listeners.js +25 -1
  345. package/dist/discord/monitor/native-command.js +7 -5
  346. package/dist/discord/monitor/presence-cache.js +38 -0
  347. package/dist/discord/monitor/provider.js +21 -7
  348. package/dist/entry.js +7 -7
  349. package/dist/gateway/auth.js +55 -22
  350. package/dist/gateway/call.js +2 -2
  351. package/dist/gateway/control-ui.js +4 -4
  352. package/dist/gateway/hooks-mapping.js +18 -4
  353. package/dist/gateway/hooks.js +5 -7
  354. package/dist/gateway/http-utils.js +3 -5
  355. package/dist/gateway/net.js +1 -1
  356. package/dist/gateway/openai-http.js +3 -3
  357. package/dist/gateway/openresponses-http.js +4 -4
  358. package/dist/gateway/protocol/client-info.js +5 -5
  359. package/dist/gateway/protocol/schema/logs-chat.js +1 -1
  360. package/dist/gateway/server/__tests__/test-utils.js +2 -0
  361. package/dist/gateway/server/health-state.js +3 -3
  362. package/dist/gateway/server/hooks.js +1 -0
  363. package/dist/gateway/server/plugins-http.js +23 -2
  364. package/dist/gateway/server/ws-connection/message-handler.js +66 -19
  365. package/dist/gateway/server-browser.js +16 -5
  366. package/dist/gateway/server-chat.js +28 -2
  367. package/dist/gateway/server-constants.js +2 -2
  368. package/dist/gateway/server-cron.js +1 -1
  369. package/dist/gateway/server-discovery-runtime.js +25 -17
  370. package/dist/gateway/server-discovery.js +7 -7
  371. package/dist/gateway/server-http.js +13 -7
  372. package/dist/gateway/server-methods/agent.js +2 -0
  373. package/dist/gateway/server-methods/browser.js +204 -0
  374. package/dist/gateway/server-methods/chat.js +5 -0
  375. package/dist/gateway/server-methods/config.js +8 -8
  376. package/dist/gateway/server-methods/logs.js +1 -1
  377. package/dist/gateway/server-methods/skills.js +3 -3
  378. package/dist/gateway/server-methods/update.js +2 -2
  379. package/dist/gateway/server-methods-list.js +1 -0
  380. package/dist/gateway/server-methods.js +3 -0
  381. package/dist/gateway/server-plugins.js +2 -2
  382. package/dist/gateway/server-reload-handlers.js +5 -5
  383. package/dist/gateway/server-restart-sentinel.js +10 -5
  384. package/dist/gateway/server-runtime-config.js +7 -4
  385. package/dist/gateway/server-startup.js +5 -5
  386. package/dist/gateway/server.impl.js +17 -7
  387. package/dist/gateway/session-utils.fs.js +1 -1
  388. package/dist/gateway/session-utils.js +31 -11
  389. package/dist/gateway/test-helpers.mocks.js +8 -7
  390. package/dist/gateway/test-helpers.server.js +51 -32
  391. package/dist/gateway/tools-invoke-http.js +15 -8
  392. package/dist/hooks/bundled/boot-md/HOOK.md +3 -3
  393. package/dist/hooks/bundled/command-logger/HOOK.md +12 -12
  394. package/dist/hooks/bundled/command-logger/handler.js +1 -1
  395. package/dist/hooks/bundled/session-memory/HOOK.md +4 -4
  396. package/dist/hooks/bundled/session-memory/handler.js +2 -2
  397. package/dist/hooks/bundled/soul-evil/HOOK.md +5 -5
  398. package/dist/hooks/bundled-dir.js +2 -2
  399. package/dist/hooks/config.js +8 -7
  400. package/dist/hooks/frontmatter.js +16 -15
  401. package/dist/hooks/gmail-ops.js +4 -4
  402. package/dist/hooks/gmail-watcher.js +1 -1
  403. package/dist/hooks/hooks-status.js +13 -13
  404. package/dist/hooks/install.js +8 -7
  405. package/dist/hooks/internal-hooks.js +1 -1
  406. package/dist/hooks/llm-slug-generator.js +1 -1
  407. package/dist/hooks/loader.js +3 -3
  408. package/dist/hooks/plugin-hooks.js +8 -8
  409. package/dist/hooks/workspace.js +10 -9
  410. package/dist/imessage/monitor/monitor-provider.js +2 -2
  411. package/dist/imessage/targets.js +19 -0
  412. package/dist/index.js +4 -4
  413. package/dist/infra/agent-events.js +3 -0
  414. package/dist/infra/bonjour-discovery.js +9 -9
  415. package/dist/infra/bonjour.js +20 -13
  416. package/dist/infra/device-identity.js +1 -1
  417. package/dist/infra/diagnostic-flags.js +66 -0
  418. package/dist/infra/dotenv.js +1 -1
  419. package/dist/infra/env.js +22 -0
  420. package/dist/infra/exec-approvals.js +2 -2
  421. package/dist/infra/fs-safe.js +76 -0
  422. package/dist/infra/gateway-lock.js +5 -4
  423. package/dist/infra/heartbeat-visibility.js +14 -0
  424. package/dist/infra/heartbeat-wake.js +2 -2
  425. package/dist/infra/machine-name.js +1 -1
  426. package/dist/infra/{pigbot-root.js → moltbot-root.js} +3 -2
  427. package/dist/infra/net/ssrf.js +77 -1
  428. package/dist/infra/node-shell.js +1 -1
  429. package/dist/infra/outbound/deliver.js +41 -18
  430. package/dist/infra/outbound/message-action-runner.js +24 -3
  431. package/dist/infra/outbound/message-action-spec.js +1 -0
  432. package/dist/infra/outbound/message.js +1 -0
  433. package/dist/infra/outbound/outbound-policy.js +4 -1
  434. package/dist/infra/outbound/outbound-send-service.js +10 -0
  435. package/dist/infra/outbound/payloads.js +15 -5
  436. package/dist/infra/outbound/target-resolver.js +53 -14
  437. package/dist/infra/outbound/targets.js +1 -1
  438. package/dist/infra/path-env.js +9 -9
  439. package/dist/infra/ports-format.js +2 -2
  440. package/dist/infra/ports.js +2 -2
  441. package/dist/infra/provider-usage.auth.js +2 -4
  442. package/dist/infra/provider-usage.fetch.claude.js +1 -1
  443. package/dist/infra/provider-usage.fetch.minimax.js +1 -1
  444. package/dist/infra/restart-sentinel.js +1 -1
  445. package/dist/infra/restart.js +4 -4
  446. package/dist/infra/retry-policy.js +4 -1
  447. package/dist/infra/runtime-guard.js +2 -2
  448. package/dist/infra/shell-env.js +4 -4
  449. package/dist/infra/skills-remote.js +3 -3
  450. package/dist/infra/state-migrations.js +1 -1
  451. package/dist/infra/system-presence.js +1 -1
  452. package/dist/infra/tailscale.js +63 -1
  453. package/dist/infra/tls/gateway.js +1 -1
  454. package/dist/infra/unhandled-rejections.js +89 -2
  455. package/dist/infra/update-check.js +2 -4
  456. package/dist/infra/update-global.js +5 -5
  457. package/dist/infra/update-runner.js +32 -8
  458. package/dist/infra/update-startup.js +3 -3
  459. package/dist/infra/warnings.js +1 -1
  460. package/dist/infra/widearea-dns.js +10 -10
  461. package/dist/line/accounts.js +130 -0
  462. package/dist/line/auto-reply-delivery.js +102 -0
  463. package/dist/line/bot-access.js +38 -0
  464. package/dist/line/bot-handlers.js +258 -0
  465. package/dist/line/bot-message-context.js +374 -0
  466. package/dist/line/bot.js +48 -0
  467. package/dist/line/config-schema.js +47 -0
  468. package/dist/line/download.js +95 -0
  469. package/dist/line/flex-templates.js +1264 -0
  470. package/dist/line/http-registry.js +27 -0
  471. package/dist/line/index.js +19 -0
  472. package/dist/line/markdown-to-line.js +346 -0
  473. package/dist/line/monitor.js +266 -0
  474. package/dist/line/probe.js +37 -0
  475. package/dist/line/reply-chunks.js +53 -0
  476. package/dist/line/rich-menu.js +320 -0
  477. package/dist/line/send.js +451 -0
  478. package/dist/line/signature.js +11 -0
  479. package/dist/line/template-messages.js +258 -0
  480. package/dist/line/types.js +1 -0
  481. package/dist/line/webhook.js +71 -0
  482. package/dist/link-understanding/apply.js +22 -0
  483. package/dist/link-understanding/defaults.js +2 -0
  484. package/dist/link-understanding/detect.js +49 -0
  485. package/dist/link-understanding/format.js +10 -0
  486. package/dist/link-understanding/index.js +4 -0
  487. package/dist/link-understanding/runner.js +99 -0
  488. package/dist/logging/logger.js +4 -4
  489. package/dist/macos/gateway-daemon.js +7 -7
  490. package/dist/macos/relay-smoke.js +1 -1
  491. package/dist/macos/relay.js +6 -6
  492. package/dist/media/host.js +1 -1
  493. package/dist/media/image-ops.js +3 -3
  494. package/dist/media/input-files.js +40 -32
  495. package/dist/media/server.js +39 -15
  496. package/dist/media/store.js +72 -52
  497. package/dist/media-understanding/attachments.js +1 -1
  498. package/dist/media-understanding/providers/image.js +2 -2
  499. package/dist/media-understanding/runner.js +69 -1
  500. package/dist/memory/batch-gemini.js +2 -2
  501. package/dist/memory/batch-openai.js +1 -1
  502. package/dist/memory/embeddings-gemini.js +1 -1
  503. package/dist/memory/embeddings.js +1 -1
  504. package/dist/node-host/runner.js +64 -60
  505. package/dist/pairing/pairing-messages.js +2 -2
  506. package/dist/plugin-sdk/index.js +12 -2
  507. package/dist/plugins/bundled-dir.js +1 -1
  508. package/dist/plugins/cli.js +2 -2
  509. package/dist/plugins/commands.js +1 -1
  510. package/dist/plugins/discovery.js +6 -5
  511. package/dist/plugins/http-path.js +10 -0
  512. package/dist/plugins/http-registry.js +31 -0
  513. package/dist/plugins/install.js +8 -7
  514. package/dist/plugins/loader.js +11 -4
  515. package/dist/plugins/manifest-registry.js +4 -4
  516. package/dist/plugins/manifest.js +16 -1
  517. package/dist/plugins/providers.js +2 -2
  518. package/dist/plugins/registry.js +36 -5
  519. package/dist/plugins/runtime/index.js +26 -0
  520. package/dist/plugins/runtime.js +2 -1
  521. package/dist/plugins/services.js +3 -3
  522. package/dist/plugins/status.js +2 -2
  523. package/dist/plugins/tools.js +2 -2
  524. package/dist/plugins/update.js +3 -3
  525. package/dist/process/exec.js +11 -7
  526. package/dist/process/spawn-utils.js +95 -0
  527. package/dist/providers/qwen-portal-oauth.js +1 -1
  528. package/dist/routing/session-key.js +17 -12
  529. package/dist/security/audit-extra.js +120 -70
  530. package/dist/security/audit-fs.js +78 -0
  531. package/dist/security/audit.js +145 -87
  532. package/dist/security/external-content.js +143 -0
  533. package/dist/security/fix.js +93 -8
  534. package/dist/security/windows-acl.js +162 -0
  535. package/dist/shared/text/reasoning-tags.js +48 -0
  536. package/dist/slack/monitor/media.js +32 -4
  537. package/dist/slack/monitor/message-handler/dispatch.js +2 -1
  538. package/dist/slack/monitor/slash.js +3 -3
  539. package/dist/slack/monitor.test-helpers.js +1 -1
  540. package/dist/telegram/accounts.js +1 -1
  541. package/dist/telegram/api-logging.js +24 -0
  542. package/dist/telegram/bot/delivery.js +218 -28
  543. package/dist/telegram/bot/helpers.js +29 -19
  544. package/dist/telegram/bot-handlers.js +70 -8
  545. package/dist/telegram/bot-message-context.js +83 -22
  546. package/dist/telegram/bot-message-dispatch.js +69 -0
  547. package/dist/telegram/bot-native-commands.js +245 -94
  548. package/dist/telegram/bot.js +18 -2
  549. package/dist/telegram/fetch.js +25 -1
  550. package/dist/telegram/monitor.js +11 -3
  551. package/dist/telegram/network-config.js +23 -0
  552. package/dist/telegram/network-errors.js +103 -0
  553. package/dist/telegram/send.js +229 -41
  554. package/dist/telegram/sticker-cache.js +202 -0
  555. package/dist/telegram/webhook-set.js +13 -6
  556. package/dist/telegram/webhook.js +8 -3
  557. package/dist/terminal/links.js +1 -1
  558. package/dist/tts/tts.js +128 -25
  559. package/dist/tui/components/filterable-select-list.js +1 -1
  560. package/dist/tui/components/searchable-select-list.js +2 -1
  561. package/dist/tui/gateway-chat.js +3 -3
  562. package/dist/tui/tui.js +1 -1
  563. package/dist/utils.js +3 -3
  564. package/dist/version.js +3 -3
  565. package/dist/web/active-listener.js +1 -1
  566. package/dist/web/auth-store.js +1 -1
  567. package/dist/web/auto-reply/monitor/process-message.js +1 -1
  568. package/dist/web/auto-reply/monitor.js +1 -1
  569. package/dist/web/login.js +1 -1
  570. package/dist/web/session.js +2 -2
  571. package/dist/wizard/onboarding.finalize.js +22 -21
  572. package/dist/wizard/onboarding.gateway-config.js +1 -11
  573. package/dist/wizard/onboarding.js +24 -13
  574. package/docs/CNAME +1 -1
  575. package/docs/_config.yml +2 -2
  576. package/docs/_layouts/default.html +9 -9
  577. package/docs/assets/terminal.css +3 -0
  578. package/docs/assets/theme.js +1 -1
  579. package/docs/automation/auth-monitoring.md +7 -7
  580. package/docs/automation/cron-jobs.md +19 -19
  581. package/docs/automation/cron-vs-heartbeat.md +8 -8
  582. package/docs/automation/gmail-pubsub.md +27 -25
  583. package/docs/automation/poll.md +7 -7
  584. package/docs/automation/webhook.md +13 -8
  585. package/docs/bedrock.md +10 -10
  586. package/docs/brave-search.md +1 -1
  587. package/docs/broadcast-groups.md +4 -4
  588. package/docs/channels/bluebubbles.md +14 -12
  589. package/docs/channels/discord.md +23 -18
  590. package/docs/channels/googlechat.md +16 -16
  591. package/docs/channels/grammy.md +1 -1
  592. package/docs/channels/imessage.md +14 -14
  593. package/docs/channels/index.md +6 -4
  594. package/docs/channels/line.md +183 -0
  595. package/docs/channels/location.md +1 -1
  596. package/docs/channels/matrix.md +16 -16
  597. package/docs/channels/mattermost.md +8 -8
  598. package/docs/channels/msteams.md +31 -27
  599. package/docs/channels/nextcloud-talk.md +8 -8
  600. package/docs/channels/nostr.md +9 -9
  601. package/docs/channels/signal.md +11 -11
  602. package/docs/channels/slack.md +31 -29
  603. package/docs/channels/telegram.md +152 -22
  604. package/docs/channels/tlon.md +5 -5
  605. package/docs/channels/troubleshooting.md +2 -2
  606. package/docs/channels/twitch.md +366 -0
  607. package/docs/channels/whatsapp.md +26 -26
  608. package/docs/channels/zalo.md +8 -8
  609. package/docs/channels/zalouser.md +12 -12
  610. package/docs/cli/acp.md +24 -24
  611. package/docs/cli/agent.md +6 -6
  612. package/docs/cli/agents.md +9 -9
  613. package/docs/cli/approvals.md +14 -14
  614. package/docs/cli/browser.md +33 -35
  615. package/docs/cli/channels.md +21 -21
  616. package/docs/cli/config.md +15 -15
  617. package/docs/cli/configure.md +6 -6
  618. package/docs/cli/cron.md +5 -5
  619. package/docs/cli/dashboard.md +4 -4
  620. package/docs/cli/devices.md +13 -13
  621. package/docs/cli/directory.md +12 -12
  622. package/docs/cli/dns.md +5 -5
  623. package/docs/cli/docs.md +5 -5
  624. package/docs/cli/doctor.md +11 -11
  625. package/docs/cli/gateway.md +26 -26
  626. package/docs/cli/health.md +5 -5
  627. package/docs/cli/hooks.md +34 -34
  628. package/docs/cli/index.md +46 -52
  629. package/docs/cli/logs.md +6 -6
  630. package/docs/cli/memory.md +11 -11
  631. package/docs/cli/message.md +11 -11
  632. package/docs/cli/models.md +17 -17
  633. package/docs/cli/node.md +14 -14
  634. package/docs/cli/nodes.md +14 -14
  635. package/docs/cli/onboard.md +7 -6
  636. package/docs/cli/pairing.md +4 -4
  637. package/docs/cli/plugins.md +16 -16
  638. package/docs/cli/reset.md +5 -5
  639. package/docs/cli/sandbox.md +28 -28
  640. package/docs/cli/security.md +5 -5
  641. package/docs/cli/sessions.md +5 -5
  642. package/docs/cli/setup.md +6 -6
  643. package/docs/cli/skills.md +6 -6
  644. package/docs/cli/status.md +7 -7
  645. package/docs/cli/system.md +6 -6
  646. package/docs/cli/tui.md +5 -5
  647. package/docs/cli/uninstall.md +5 -5
  648. package/docs/cli/update.md +20 -20
  649. package/docs/cli/voicecall.md +9 -9
  650. package/docs/cli/webhooks.md +5 -5
  651. package/docs/concepts/agent-loop.md +5 -5
  652. package/docs/concepts/agent-workspace.md +21 -21
  653. package/docs/concepts/agent.md +12 -12
  654. package/docs/concepts/architecture.md +2 -2
  655. package/docs/concepts/channel-routing.md +4 -4
  656. package/docs/concepts/compaction.md +5 -5
  657. package/docs/concepts/context.md +6 -6
  658. package/docs/concepts/group-messages.md +6 -6
  659. package/docs/concepts/groups.md +41 -5
  660. package/docs/concepts/markdown-formatting.md +3 -3
  661. package/docs/concepts/memory.md +14 -14
  662. package/docs/concepts/messages.md +4 -4
  663. package/docs/concepts/model-failover.md +14 -14
  664. package/docs/concepts/model-providers.md +22 -22
  665. package/docs/concepts/models.md +27 -27
  666. package/docs/concepts/multi-agent.md +19 -19
  667. package/docs/concepts/oauth.md +32 -59
  668. package/docs/concepts/presence.md +2 -2
  669. package/docs/concepts/retry.md +1 -1
  670. package/docs/concepts/session-pruning.md +1 -1
  671. package/docs/concepts/session-tool.md +4 -4
  672. package/docs/concepts/session.md +14 -14
  673. package/docs/concepts/streaming.md +4 -4
  674. package/docs/concepts/system-prompt.md +11 -11
  675. package/docs/concepts/timezone.md +2 -2
  676. package/docs/concepts/typebox.md +3 -3
  677. package/docs/concepts/typing-indicators.md +2 -2
  678. package/docs/concepts/usage-tracking.md +3 -3
  679. package/docs/date-time.md +2 -2
  680. package/docs/debug/node-issue.md +4 -4
  681. package/docs/debugging.md +18 -18
  682. package/docs/diagnostics/flags.md +89 -0
  683. package/docs/docs.json +37 -7
  684. package/docs/environment.md +7 -7
  685. package/docs/experiments/plans/cron-add-hardening.md +1 -1
  686. package/docs/experiments/plans/openresponses-gateway.md +2 -2
  687. package/docs/experiments/research/memory.md +6 -6
  688. package/docs/gateway/authentication.md +33 -57
  689. package/docs/gateway/background-process.md +2 -2
  690. package/docs/gateway/bonjour.md +25 -25
  691. package/docs/gateway/bridge-protocol.md +2 -2
  692. package/docs/gateway/cli-backends.md +13 -12
  693. package/docs/gateway/configuration-examples.md +14 -14
  694. package/docs/gateway/configuration.md +160 -145
  695. package/docs/gateway/discovery.md +10 -10
  696. package/docs/gateway/doctor.md +27 -27
  697. package/docs/gateway/gateway-lock.md +1 -1
  698. package/docs/gateway/health.md +11 -11
  699. package/docs/gateway/heartbeat.md +5 -5
  700. package/docs/gateway/index.md +65 -65
  701. package/docs/gateway/local-models.md +2 -2
  702. package/docs/gateway/logging.md +8 -8
  703. package/docs/gateway/multiple-gateways.md +27 -27
  704. package/docs/gateway/openai-http-api.md +12 -12
  705. package/docs/gateway/openresponses-http-api.md +12 -12
  706. package/docs/gateway/pairing.md +9 -9
  707. package/docs/gateway/protocol.md +6 -5
  708. package/docs/gateway/remote-gateway-readme.md +16 -14
  709. package/docs/gateway/remote.md +5 -5
  710. package/docs/gateway/sandbox-vs-tool-policy-vs-elevated.md +10 -7
  711. package/docs/gateway/sandboxing.md +8 -6
  712. package/docs/gateway/security/formal-verification.md +107 -0
  713. package/docs/gateway/{security.md → security/index.md} +172 -75
  714. package/docs/gateway/tailscale.md +19 -38
  715. package/docs/gateway/tools-invoke-http-api.md +5 -5
  716. package/docs/gateway/troubleshooting.md +114 -119
  717. package/docs/help/faq.md +369 -355
  718. package/docs/help/troubleshooting.md +16 -16
  719. package/docs/hooks/soul-evil.md +2 -2
  720. package/docs/hooks.md +60 -60
  721. package/docs/index.md +35 -35
  722. package/docs/install/ansible.md +35 -35
  723. package/docs/install/development-channels.md +10 -10
  724. package/docs/install/docker.md +44 -44
  725. package/docs/install/index.md +34 -33
  726. package/docs/install/installer.md +24 -24
  727. package/docs/install/migrating.md +190 -0
  728. package/docs/install/nix.md +18 -18
  729. package/docs/install/node.md +7 -6
  730. package/docs/install/uninstall.md +30 -30
  731. package/docs/install/updating.md +50 -49
  732. package/docs/logging.md +82 -58
  733. package/docs/multi-agent-sandbox-tools.md +7 -7
  734. package/docs/network.md +1 -1
  735. package/docs/nodes/audio.md +2 -2
  736. package/docs/nodes/camera.md +18 -18
  737. package/docs/nodes/images.md +4 -4
  738. package/docs/nodes/index.md +57 -57
  739. package/docs/nodes/location-command.md +2 -2
  740. package/docs/nodes/media-understanding.md +5 -5
  741. package/docs/nodes/talk.md +1 -1
  742. package/docs/nodes/voicewake.md +2 -2
  743. package/docs/northflank.mdx +53 -0
  744. package/docs/perplexity.md +2 -2
  745. package/docs/platforms/android.md +13 -13
  746. package/docs/platforms/digitalocean.md +243 -0
  747. package/docs/platforms/exe-dev.md +25 -25
  748. package/docs/platforms/fly.md +149 -24
  749. package/docs/platforms/gcp.md +498 -0
  750. package/docs/platforms/hetzner.md +42 -42
  751. package/docs/platforms/index.md +9 -9
  752. package/docs/platforms/ios.md +13 -13
  753. package/docs/platforms/linux.md +11 -11
  754. package/docs/platforms/mac/bundled-gateway.md +16 -16
  755. package/docs/platforms/mac/canvas.md +14 -14
  756. package/docs/platforms/mac/child-process.md +9 -9
  757. package/docs/platforms/mac/dev-setup.md +11 -11
  758. package/docs/platforms/mac/health.md +2 -2
  759. package/docs/platforms/mac/icon.md +1 -1
  760. package/docs/platforms/mac/logging.md +7 -7
  761. package/docs/platforms/mac/menu-bar.md +1 -1
  762. package/docs/platforms/mac/peekaboo.md +9 -9
  763. package/docs/platforms/mac/permissions.md +3 -3
  764. package/docs/platforms/mac/release.md +20 -20
  765. package/docs/platforms/mac/remote.md +14 -14
  766. package/docs/platforms/mac/signing.md +7 -7
  767. package/docs/platforms/mac/skills.md +4 -4
  768. package/docs/platforms/mac/voice-overlay.md +2 -2
  769. package/docs/platforms/mac/webchat.md +2 -2
  770. package/docs/platforms/mac/xpc.md +4 -4
  771. package/docs/platforms/macos-vm.md +27 -27
  772. package/docs/platforms/macos.md +20 -20
  773. package/docs/platforms/oracle.md +291 -0
  774. package/docs/platforms/raspberry-pi.md +354 -0
  775. package/docs/platforms/windows.md +11 -11
  776. package/docs/plugin.md +80 -64
  777. package/docs/plugins/agent-tools.md +1 -1
  778. package/docs/plugins/manifest.md +4 -4
  779. package/docs/plugins/voice-call.md +96 -12
  780. package/docs/plugins/zalouser.md +9 -9
  781. package/docs/prose.md +9 -9
  782. package/docs/providers/anthropic.md +23 -27
  783. package/docs/providers/claude-max-api-proxy.md +145 -0
  784. package/docs/providers/deepgram.md +2 -2
  785. package/docs/providers/github-copilot.md +11 -11
  786. package/docs/providers/glm.md +4 -4
  787. package/docs/providers/index.md +7 -3
  788. package/docs/providers/minimax.md +9 -9
  789. package/docs/providers/models.md +3 -3
  790. package/docs/providers/moonshot.md +2 -2
  791. package/docs/providers/ollama.md +11 -11
  792. package/docs/providers/openai.md +9 -13
  793. package/docs/providers/opencode.md +3 -3
  794. package/docs/providers/openrouter.md +3 -3
  795. package/docs/providers/qwen.md +6 -6
  796. package/docs/providers/synthetic.md +4 -4
  797. package/docs/providers/venice.md +21 -21
  798. package/docs/providers/vercel-ai-gateway.md +5 -4
  799. package/docs/providers/zai.md +5 -5
  800. package/docs/railway.mdx +9 -7
  801. package/docs/refactor/exec-host.md +5 -5
  802. package/docs/refactor/plugin-sdk.md +12 -12
  803. package/docs/refactor/strict-config.md +11 -11
  804. package/docs/reference/AGENTS.default.md +10 -10
  805. package/docs/reference/RELEASING.md +29 -29
  806. package/docs/reference/api-usage-costs.md +6 -6
  807. package/docs/reference/device-models.md +7 -7
  808. package/docs/reference/rpc.md +3 -3
  809. package/docs/reference/session-management-compaction.md +19 -19
  810. package/docs/reference/templates/AGENTS.dev.md +1 -1
  811. package/docs/reference/templates/BOOT.md +1 -1
  812. package/docs/reference/templates/IDENTITY.md +27 -0
  813. package/docs/reference/templates/TOOLS.dev.md +1 -1
  814. package/docs/reference/templates/USER.dev.md +2 -2
  815. package/docs/reference/templates/USER.md +22 -0
  816. package/docs/reference/test.md +2 -2
  817. package/docs/reference/transcript-hygiene.md +1 -1
  818. package/docs/render.mdx +158 -0
  819. package/docs/scripts.md +1 -1
  820. package/docs/security/formal-verification.md +107 -0
  821. package/docs/start/clawd.md +29 -29
  822. package/docs/start/getting-started.md +31 -25
  823. package/docs/start/hubs.md +2 -2
  824. package/docs/start/lore.md +74 -38
  825. package/docs/start/onboarding.md +7 -7
  826. package/docs/start/pairing.md +10 -10
  827. package/docs/start/setup.md +30 -17
  828. package/docs/start/showcase.md +32 -32
  829. package/docs/start/wizard.md +29 -26
  830. package/docs/testing.md +56 -56
  831. package/docs/token-use.md +7 -7
  832. package/docs/tools/agent-send.md +10 -10
  833. package/docs/tools/browser-linux-troubleshooting.md +10 -10
  834. package/docs/tools/browser-login.md +4 -4
  835. package/docs/tools/browser.md +136 -242
  836. package/docs/tools/chrome-extension.md +31 -48
  837. package/docs/tools/clawdhub.md +7 -7
  838. package/docs/tools/creating-skills.md +41 -0
  839. package/docs/tools/elevated.md +1 -0
  840. package/docs/tools/exec-approvals.md +8 -5
  841. package/docs/tools/exec.md +15 -4
  842. package/docs/tools/firecrawl.md +2 -2
  843. package/docs/tools/index.md +18 -15
  844. package/docs/tools/llm-task.md +1 -1
  845. package/docs/tools/lobster.md +23 -11
  846. package/docs/tools/skills-config.md +2 -2
  847. package/docs/tools/skills.md +39 -31
  848. package/docs/tools/slash-commands.md +10 -8
  849. package/docs/tools/web.md +8 -8
  850. package/docs/tts.md +11 -11
  851. package/docs/tui.md +7 -7
  852. package/docs/vps.md +6 -1
  853. package/docs/web/control-ui.md +15 -14
  854. package/docs/web/dashboard.md +10 -6
  855. package/docs/web/index.md +7 -6
  856. package/docs/web/webchat.md +1 -1
  857. package/extensions/bluebubbles/index.ts +3 -3
  858. package/extensions/bluebubbles/package.json +5 -5
  859. package/extensions/bluebubbles/src/accounts.ts +9 -9
  860. package/extensions/bluebubbles/src/actions.test.ts +22 -22
  861. package/extensions/bluebubbles/src/actions.ts +6 -6
  862. package/extensions/bluebubbles/src/attachments.ts +2 -2
  863. package/extensions/bluebubbles/src/channel.ts +71 -17
  864. package/extensions/bluebubbles/src/chat.ts +2 -2
  865. package/extensions/bluebubbles/src/config-schema.ts +1 -1
  866. package/extensions/bluebubbles/src/media-send.ts +2 -2
  867. package/extensions/bluebubbles/src/monitor.test.ts +56 -50
  868. package/extensions/bluebubbles/src/monitor.ts +181 -6
  869. package/extensions/bluebubbles/src/onboarding.ts +9 -9
  870. package/extensions/bluebubbles/src/reactions.ts +2 -2
  871. package/extensions/bluebubbles/src/runtime.ts +1 -1
  872. package/extensions/bluebubbles/src/send.test.ts +94 -2
  873. package/extensions/bluebubbles/src/send.ts +73 -7
  874. package/extensions/copilot-proxy/README.md +3 -3
  875. package/extensions/copilot-proxy/index.ts +1 -1
  876. package/extensions/copilot-proxy/package.json +4 -4
  877. package/extensions/diagnostics-otel/index.ts +3 -3
  878. package/extensions/diagnostics-otel/package.json +4 -4
  879. package/extensions/diagnostics-otel/src/service.test.ts +15 -15
  880. package/extensions/diagnostics-otel/src/service.ts +85 -85
  881. package/extensions/discord/index.ts +3 -3
  882. package/extensions/discord/package.json +4 -4
  883. package/extensions/discord/src/channel.ts +1 -1
  884. package/extensions/discord/src/runtime.ts +1 -1
  885. package/extensions/google-antigravity-auth/README.md +3 -3
  886. package/extensions/google-antigravity-auth/index.ts +9 -2
  887. package/extensions/google-antigravity-auth/package.json +4 -4
  888. package/extensions/google-gemini-cli-auth/README.md +17 -6
  889. package/extensions/google-gemini-cli-auth/index.ts +3 -3
  890. package/extensions/google-gemini-cli-auth/oauth.test.ts +228 -0
  891. package/extensions/google-gemini-cli-auth/oauth.ts +96 -12
  892. package/extensions/google-gemini-cli-auth/package.json +4 -4
  893. package/extensions/googlechat/index.ts +4 -4
  894. package/extensions/googlechat/package.json +7 -7
  895. package/extensions/googlechat/src/accounts.ts +9 -9
  896. package/extensions/googlechat/src/actions.ts +8 -8
  897. package/extensions/googlechat/src/api.ts +1 -1
  898. package/extensions/googlechat/src/channel.ts +23 -23
  899. package/extensions/googlechat/src/monitor.ts +9 -9
  900. package/extensions/googlechat/src/onboarding.ts +11 -11
  901. package/extensions/googlechat/src/runtime.ts +1 -1
  902. package/extensions/googlechat/src/types.config.ts +1 -1
  903. package/extensions/imessage/index.ts +3 -3
  904. package/extensions/imessage/package.json +4 -4
  905. package/extensions/imessage/src/channel.ts +5 -8
  906. package/extensions/imessage/src/runtime.ts +1 -1
  907. package/extensions/line/clawdbot.plugin.json +11 -0
  908. package/extensions/line/index.ts +20 -0
  909. package/extensions/line/package.json +29 -0
  910. package/extensions/line/src/card-command.ts +338 -0
  911. package/extensions/line/src/channel.logout.test.ts +96 -0
  912. package/extensions/line/src/channel.sendPayload.test.ts +308 -0
  913. package/extensions/line/src/channel.ts +773 -0
  914. package/extensions/line/src/runtime.ts +14 -0
  915. package/extensions/llm-task/README.md +4 -4
  916. package/extensions/llm-task/index.ts +2 -2
  917. package/extensions/llm-task/package.json +4 -4
  918. package/extensions/llm-task/src/llm-task-tool.ts +5 -5
  919. package/extensions/lobster/README.md +6 -6
  920. package/extensions/lobster/index.ts +2 -2
  921. package/extensions/lobster/package.json +3 -3
  922. package/extensions/lobster/src/lobster-tool.test.ts +26 -6
  923. package/extensions/lobster/src/lobster-tool.ts +24 -6
  924. package/extensions/matrix/CHANGELOG.md +9 -9
  925. package/extensions/matrix/index.ts +3 -3
  926. package/extensions/matrix/node_modules/.bin/markdown-it +2 -2
  927. package/extensions/matrix/node_modules/.bin/markdown-it.CMD +2 -2
  928. package/extensions/matrix/node_modules/.bin/markdown-it.ps1 +2 -2
  929. package/extensions/matrix/package.json +7 -7
  930. package/extensions/matrix/src/actions.ts +1 -1
  931. package/extensions/matrix/src/channel.directory.test.ts +1 -1
  932. package/extensions/matrix/src/channel.ts +1 -1
  933. package/extensions/matrix/src/config-schema.ts +1 -1
  934. package/extensions/matrix/src/directory-live.ts +1 -1
  935. package/extensions/matrix/src/group-mentions.ts +1 -1
  936. package/extensions/matrix/src/matrix/accounts.ts +1 -1
  937. package/extensions/matrix/src/matrix/actions/client.ts +1 -1
  938. package/extensions/matrix/src/matrix/actions/messages.ts +1 -1
  939. package/extensions/matrix/src/matrix/actions/reactions.ts +1 -1
  940. package/extensions/matrix/src/matrix/actions/room.ts +3 -3
  941. package/extensions/matrix/src/matrix/actions/summary.ts +1 -1
  942. package/extensions/matrix/src/matrix/actions/types.ts +1 -1
  943. package/extensions/matrix/src/matrix/active-client.ts +1 -1
  944. package/extensions/matrix/src/matrix/client/config.ts +2 -2
  945. package/extensions/matrix/src/matrix/client/create-client.ts +2 -2
  946. package/extensions/matrix/src/matrix/client/logging.ts +1 -1
  947. package/extensions/matrix/src/matrix/client/shared.ts +3 -3
  948. package/extensions/matrix/src/matrix/deps.ts +5 -5
  949. package/extensions/matrix/src/matrix/monitor/allowlist.ts +1 -1
  950. package/extensions/matrix/src/matrix/monitor/auto-join.ts +4 -4
  951. package/extensions/matrix/src/matrix/monitor/direct.ts +1 -1
  952. package/extensions/matrix/src/matrix/monitor/events.ts +2 -2
  953. package/extensions/matrix/src/matrix/monitor/handler.ts +15 -11
  954. package/extensions/matrix/src/matrix/monitor/index.ts +2 -2
  955. package/extensions/matrix/src/matrix/monitor/location.ts +2 -2
  956. package/extensions/matrix/src/matrix/monitor/media.test.ts +41 -5
  957. package/extensions/matrix/src/matrix/monitor/media.ts +17 -14
  958. package/extensions/matrix/src/matrix/monitor/replies.ts +2 -2
  959. package/extensions/matrix/src/matrix/monitor/room-info.ts +1 -1
  960. package/extensions/matrix/src/matrix/monitor/rooms.ts +1 -1
  961. package/extensions/matrix/src/matrix/monitor/threads.ts +1 -1
  962. package/extensions/matrix/src/matrix/monitor/types.ts +2 -1
  963. package/extensions/matrix/src/matrix/poll-types.ts +1 -1
  964. package/extensions/matrix/src/matrix/probe.ts +1 -1
  965. package/extensions/matrix/src/matrix/send/client.ts +3 -3
  966. package/extensions/matrix/src/matrix/send/media.ts +1 -1
  967. package/extensions/matrix/src/matrix/send/targets.test.ts +1 -1
  968. package/extensions/matrix/src/matrix/send/targets.ts +1 -1
  969. package/extensions/matrix/src/matrix/send/types.ts +2 -2
  970. package/extensions/matrix/src/matrix/send.test.ts +3 -3
  971. package/extensions/matrix/src/matrix/send.ts +4 -4
  972. package/extensions/matrix/src/onboarding.ts +3 -3
  973. package/extensions/matrix/src/outbound.ts +1 -1
  974. package/extensions/matrix/src/resolve-targets.ts +1 -1
  975. package/extensions/matrix/src/runtime.ts +1 -1
  976. package/extensions/matrix/src/tool-actions.ts +1 -1
  977. package/extensions/matrix/src/types.ts +1 -1
  978. package/extensions/mattermost/index.ts +3 -3
  979. package/extensions/mattermost/package.json +5 -5
  980. package/extensions/mattermost/src/channel.ts +1 -1
  981. package/extensions/mattermost/src/config-schema.ts +1 -1
  982. package/extensions/mattermost/src/group-mentions.ts +2 -2
  983. package/extensions/mattermost/src/mattermost/accounts.ts +10 -10
  984. package/extensions/mattermost/src/mattermost/client.ts +1 -1
  985. package/extensions/mattermost/src/mattermost/monitor-helpers.ts +6 -6
  986. package/extensions/mattermost/src/mattermost/monitor.ts +4 -4
  987. package/extensions/mattermost/src/mattermost/probe.ts +1 -1
  988. package/extensions/mattermost/src/onboarding-helpers.ts +5 -5
  989. package/extensions/mattermost/src/onboarding.ts +5 -5
  990. package/extensions/mattermost/src/runtime.ts +1 -1
  991. package/extensions/mattermost/src/types.ts +1 -1
  992. package/extensions/memory-core/index.ts +3 -3
  993. package/extensions/memory-core/package.json +9 -6
  994. package/extensions/memory-lancedb/{pigbot.plugin.json → clawdbot.plugin.json} +1 -1
  995. package/extensions/memory-lancedb/config.ts +2 -2
  996. package/extensions/memory-lancedb/index.test.ts +3 -3
  997. package/extensions/memory-lancedb/index.ts +4 -4
  998. package/extensions/memory-lancedb/node_modules/.bin/openai +2 -2
  999. package/extensions/memory-lancedb/node_modules/.bin/openai.CMD +2 -2
  1000. package/extensions/memory-lancedb/node_modules/.bin/openai.ps1 +2 -2
  1001. package/extensions/memory-lancedb/package.json +4 -4
  1002. package/extensions/msteams/CHANGELOG.md +7 -7
  1003. package/extensions/msteams/index.ts +3 -3
  1004. package/extensions/msteams/package.json +6 -6
  1005. package/extensions/msteams/src/attachments.test.ts +1 -1
  1006. package/extensions/msteams/src/channel.directory.test.ts +2 -2
  1007. package/extensions/msteams/src/channel.ts +3 -3
  1008. package/extensions/msteams/src/conversation-store-fs.test.ts +5 -5
  1009. package/extensions/msteams/src/directory-live.ts +1 -1
  1010. package/extensions/msteams/src/graph-upload.ts +4 -4
  1011. package/extensions/msteams/src/media-helpers.ts +1 -1
  1012. package/extensions/msteams/src/messenger.test.ts +1 -1
  1013. package/extensions/msteams/src/messenger.ts +1 -1
  1014. package/extensions/msteams/src/monitor-handler/message-handler.ts +1 -1
  1015. package/extensions/msteams/src/monitor-handler.ts +2 -2
  1016. package/extensions/msteams/src/monitor.ts +3 -3
  1017. package/extensions/msteams/src/onboarding.ts +11 -11
  1018. package/extensions/msteams/src/outbound.ts +1 -1
  1019. package/extensions/msteams/src/policy.test.ts +1 -1
  1020. package/extensions/msteams/src/policy.ts +50 -5
  1021. package/extensions/msteams/src/polls-store.test.ts +1 -1
  1022. package/extensions/msteams/src/polls.test.ts +5 -5
  1023. package/extensions/msteams/src/polls.ts +8 -8
  1024. package/extensions/msteams/src/probe.test.ts +1 -1
  1025. package/extensions/msteams/src/probe.ts +1 -1
  1026. package/extensions/msteams/src/reply-dispatcher.ts +36 -36
  1027. package/extensions/msteams/src/runtime.ts +1 -1
  1028. package/extensions/msteams/src/send-context.ts +2 -2
  1029. package/extensions/msteams/src/send.ts +5 -5
  1030. package/extensions/msteams/src/token.ts +1 -1
  1031. package/extensions/nextcloud-talk/index.ts +3 -3
  1032. package/extensions/nextcloud-talk/package.json +5 -5
  1033. package/extensions/nextcloud-talk/src/accounts.ts +2 -2
  1034. package/extensions/nextcloud-talk/src/channel.ts +8 -8
  1035. package/extensions/nextcloud-talk/src/config-schema.ts +1 -1
  1036. package/extensions/nextcloud-talk/src/inbound.ts +8 -8
  1037. package/extensions/nextcloud-talk/src/monitor.ts +1 -1
  1038. package/extensions/nextcloud-talk/src/onboarding.ts +2 -2
  1039. package/extensions/nextcloud-talk/src/policy.ts +2 -2
  1040. package/extensions/nextcloud-talk/src/room-info.ts +1 -1
  1041. package/extensions/nextcloud-talk/src/runtime.ts +1 -1
  1042. package/extensions/nextcloud-talk/src/types.ts +1 -1
  1043. package/extensions/nostr/CHANGELOG.md +4 -4
  1044. package/extensions/nostr/README.md +5 -5
  1045. package/extensions/nostr/index.ts +6 -6
  1046. package/extensions/nostr/package.json +6 -6
  1047. package/extensions/nostr/src/channel.ts +2 -2
  1048. package/extensions/nostr/src/config-schema.ts +1 -1
  1049. package/extensions/nostr/src/nostr-state-store.test.ts +8 -8
  1050. package/extensions/nostr/src/runtime.ts +1 -1
  1051. package/extensions/nostr/src/types.ts +4 -4
  1052. package/extensions/open-prose/index.ts +2 -2
  1053. package/extensions/open-prose/package.json +3 -3
  1054. package/extensions/open-prose/skills/prose/SKILL.md +5 -5
  1055. package/extensions/open-prose/skills/prose/examples/28-automated-pr-review.prose +2 -2
  1056. package/extensions/open-prose/skills/prose/prose.md +4 -4
  1057. package/extensions/qwen-portal-auth/README.md +3 -3
  1058. package/extensions/qwen-portal-auth/index.ts +1 -1
  1059. package/extensions/signal/index.ts +3 -3
  1060. package/extensions/signal/package.json +4 -4
  1061. package/extensions/signal/src/channel.ts +1 -1
  1062. package/extensions/signal/src/runtime.ts +1 -1
  1063. package/extensions/slack/index.ts +3 -3
  1064. package/extensions/slack/package.json +4 -4
  1065. package/extensions/slack/src/channel.ts +1 -1
  1066. package/extensions/slack/src/runtime.ts +1 -1
  1067. package/extensions/telegram/index.ts +3 -3
  1068. package/extensions/telegram/package.json +4 -4
  1069. package/extensions/telegram/src/channel.ts +3 -3
  1070. package/extensions/telegram/src/runtime.ts +1 -1
  1071. package/extensions/tlon/README.md +3 -3
  1072. package/extensions/tlon/index.ts +3 -3
  1073. package/extensions/tlon/package.json +5 -5
  1074. package/extensions/tlon/src/channel.ts +15 -15
  1075. package/extensions/tlon/src/config-schema.ts +1 -1
  1076. package/extensions/tlon/src/monitor/discovery.ts +1 -1
  1077. package/extensions/tlon/src/monitor/history.ts +1 -1
  1078. package/extensions/tlon/src/monitor/index.ts +3 -3
  1079. package/extensions/tlon/src/onboarding.ts +4 -4
  1080. package/extensions/tlon/src/runtime.ts +1 -1
  1081. package/extensions/tlon/src/types.ts +3 -3
  1082. package/extensions/tlon/src/urbit/send.ts +19 -6
  1083. package/extensions/twitch/CHANGELOG.md +21 -0
  1084. package/extensions/twitch/README.md +89 -0
  1085. package/extensions/twitch/clawdbot.plugin.json +9 -0
  1086. package/extensions/twitch/index.ts +20 -0
  1087. package/extensions/twitch/package.json +20 -0
  1088. package/extensions/twitch/src/access-control.test.ts +489 -0
  1089. package/extensions/twitch/src/access-control.ts +154 -0
  1090. package/extensions/twitch/src/actions.ts +173 -0
  1091. package/extensions/twitch/src/client-manager-registry.ts +115 -0
  1092. package/extensions/twitch/src/config-schema.ts +82 -0
  1093. package/extensions/twitch/src/config.test.ts +88 -0
  1094. package/extensions/twitch/src/config.ts +116 -0
  1095. package/extensions/twitch/src/monitor.ts +257 -0
  1096. package/extensions/twitch/src/onboarding.test.ts +311 -0
  1097. package/extensions/twitch/src/onboarding.ts +411 -0
  1098. package/extensions/twitch/src/outbound.test.ts +373 -0
  1099. package/extensions/twitch/src/outbound.ts +186 -0
  1100. package/extensions/twitch/src/plugin.test.ts +39 -0
  1101. package/extensions/twitch/src/plugin.ts +274 -0
  1102. package/extensions/twitch/src/probe.test.ts +198 -0
  1103. package/extensions/twitch/src/probe.ts +118 -0
  1104. package/extensions/twitch/src/resolver.ts +137 -0
  1105. package/extensions/twitch/src/runtime.ts +14 -0
  1106. package/extensions/twitch/src/send.test.ts +289 -0
  1107. package/extensions/twitch/src/send.ts +136 -0
  1108. package/extensions/twitch/src/status.test.ts +270 -0
  1109. package/extensions/twitch/src/status.ts +176 -0
  1110. package/extensions/twitch/src/token.test.ts +171 -0
  1111. package/extensions/twitch/src/token.ts +87 -0
  1112. package/extensions/twitch/src/twitch-client.test.ts +574 -0
  1113. package/extensions/twitch/src/twitch-client.ts +277 -0
  1114. package/extensions/twitch/src/types.ts +141 -0
  1115. package/extensions/twitch/src/utils/markdown.ts +92 -0
  1116. package/extensions/twitch/src/utils/twitch.ts +78 -0
  1117. package/extensions/twitch/test/setup.ts +7 -0
  1118. package/extensions/voice-call/CHANGELOG.md +19 -11
  1119. package/extensions/voice-call/README.md +38 -16
  1120. package/extensions/voice-call/{pigbot.plugin.json → clawdbot.plugin.json} +210 -14
  1121. package/extensions/voice-call/index.ts +32 -12
  1122. package/extensions/voice-call/package.json +4 -4
  1123. package/extensions/voice-call/src/cli.ts +1 -1
  1124. package/extensions/voice-call/src/config.test.ts +204 -0
  1125. package/extensions/voice-call/src/config.ts +134 -26
  1126. package/extensions/voice-call/src/core-bridge.ts +16 -8
  1127. package/extensions/voice-call/src/manager/context.ts +0 -1
  1128. package/extensions/voice-call/src/manager/events.ts +0 -1
  1129. package/extensions/voice-call/src/manager/lookup.ts +0 -1
  1130. package/extensions/voice-call/src/manager/outbound.ts +4 -3
  1131. package/extensions/voice-call/src/manager/state.ts +0 -1
  1132. package/extensions/voice-call/src/manager/store.ts +0 -1
  1133. package/extensions/voice-call/src/manager/timers.ts +0 -1
  1134. package/extensions/voice-call/src/manager/twiml.ts +0 -1
  1135. package/extensions/voice-call/src/manager.test.ts +2 -2
  1136. package/extensions/voice-call/src/manager.ts +4 -2
  1137. package/extensions/voice-call/src/media-stream.test.ts +97 -0
  1138. package/extensions/voice-call/src/media-stream.ts +114 -0
  1139. package/extensions/voice-call/src/providers/plivo.test.ts +0 -1
  1140. package/extensions/voice-call/src/providers/stt-openai-realtime.ts +8 -0
  1141. package/extensions/voice-call/src/providers/twilio/webhook.ts +2 -2
  1142. package/extensions/voice-call/src/providers/twilio.ts +44 -26
  1143. package/extensions/voice-call/src/response-generator.ts +1 -1
  1144. package/extensions/voice-call/src/runtime.ts +37 -27
  1145. package/extensions/voice-call/src/telephony-audio.ts +88 -0
  1146. package/extensions/voice-call/src/telephony-tts.ts +95 -0
  1147. package/extensions/voice-call/src/types.ts +1 -0
  1148. package/extensions/voice-call/src/webhook-security.test.ts +52 -0
  1149. package/extensions/voice-call/src/webhook-security.ts +16 -5
  1150. package/extensions/voice-call/src/webhook.ts +11 -0
  1151. package/extensions/whatsapp/index.ts +3 -3
  1152. package/extensions/whatsapp/package.json +4 -4
  1153. package/extensions/whatsapp/src/channel.ts +1 -1
  1154. package/extensions/whatsapp/src/runtime.ts +1 -1
  1155. package/extensions/zalo/CHANGELOG.md +9 -9
  1156. package/extensions/zalo/README.md +4 -4
  1157. package/extensions/zalo/index.ts +3 -3
  1158. package/extensions/zalo/package.json +6 -6
  1159. package/extensions/zalo/src/accounts.ts +9 -9
  1160. package/extensions/zalo/src/actions.ts +6 -6
  1161. package/extensions/zalo/src/channel.directory.test.ts +2 -2
  1162. package/extensions/zalo/src/channel.ts +20 -20
  1163. package/extensions/zalo/src/config-schema.ts +1 -1
  1164. package/extensions/zalo/src/monitor.ts +9 -9
  1165. package/extensions/zalo/src/monitor.webhook.test.ts +2 -2
  1166. package/extensions/zalo/src/onboarding.ts +27 -27
  1167. package/extensions/zalo/src/runtime.ts +1 -1
  1168. package/extensions/zalo/src/send.ts +2 -2
  1169. package/extensions/zalo/src/status-issues.ts +1 -1
  1170. package/extensions/zalo/src/token.ts +1 -1
  1171. package/extensions/zalouser/CHANGELOG.md +4 -4
  1172. package/extensions/zalouser/README.md +18 -18
  1173. package/extensions/zalouser/index.ts +3 -3
  1174. package/extensions/zalouser/package.json +6 -6
  1175. package/extensions/zalouser/src/accounts.ts +10 -10
  1176. package/extensions/zalouser/src/channel.test.ts +0 -1
  1177. package/extensions/zalouser/src/channel.ts +27 -27
  1178. package/extensions/zalouser/src/config-schema.ts +1 -1
  1179. package/extensions/zalouser/src/monitor.ts +5 -5
  1180. package/extensions/zalouser/src/onboarding.ts +32 -32
  1181. package/extensions/zalouser/src/runtime.ts +1 -1
  1182. package/extensions/zalouser/src/status-issues.ts +2 -2
  1183. package/package.json +34 -22
  1184. package/scripts/postinstall.js +1 -1
  1185. package/skills/1password/SKILL.md +3 -3
  1186. package/skills/apple-notes/SKILL.md +2 -2
  1187. package/skills/apple-reminders/SKILL.md +1 -1
  1188. package/skills/bear-notes/SKILL.md +1 -1
  1189. package/skills/bird/SKILL.md +1 -1
  1190. package/skills/blogwatcher/SKILL.md +1 -1
  1191. package/skills/blucli/SKILL.md +1 -1
  1192. package/skills/bluebubbles/SKILL.md +2 -2
  1193. package/skills/camsnap/SKILL.md +1 -1
  1194. package/skills/canvas/SKILL.md +15 -15
  1195. package/skills/clawdhub/SKILL.md +2 -2
  1196. package/skills/coding-agent/SKILL.md +6 -6
  1197. package/skills/discord/SKILL.md +6 -5
  1198. package/skills/eightctl/SKILL.md +1 -1
  1199. package/skills/food-order/SKILL.md +1 -1
  1200. package/skills/gemini/SKILL.md +1 -1
  1201. package/skills/gifgrep/SKILL.md +1 -1
  1202. package/skills/github/SKILL.md +1 -0
  1203. package/skills/gog/SKILL.md +1 -1
  1204. package/skills/goplaces/SKILL.md +1 -1
  1205. package/skills/himalaya/SKILL.md +1 -1
  1206. package/skills/imsg/SKILL.md +1 -1
  1207. package/skills/local-places/SKILL.md +2 -2
  1208. package/skills/mcporter/SKILL.md +1 -1
  1209. package/skills/model-usage/SKILL.md +1 -1
  1210. package/skills/nano-banana-pro/SKILL.md +10 -5
  1211. package/skills/nano-banana-pro/scripts/generate_image.py +42 -27
  1212. package/skills/nano-pdf/SKILL.md +1 -1
  1213. package/skills/notion/SKILL.md +1 -1
  1214. package/skills/obsidian/SKILL.md +1 -1
  1215. package/skills/openai-image-gen/SKILL.md +1 -1
  1216. package/skills/openai-whisper/SKILL.md +1 -1
  1217. package/skills/openai-whisper-api/SKILL.md +2 -2
  1218. package/skills/openhue/SKILL.md +1 -1
  1219. package/skills/oracle/SKILL.md +1 -1
  1220. package/skills/ordercli/SKILL.md +1 -1
  1221. package/skills/peekaboo/SKILL.md +1 -1
  1222. package/skills/sag/SKILL.md +1 -1
  1223. package/skills/session-logs/SKILL.md +7 -7
  1224. package/skills/sherpa-onnx-tts/SKILL.md +6 -6
  1225. package/skills/sherpa-onnx-tts/bin/sherpa-onnx-tts +178 -0
  1226. package/skills/slack/SKILL.md +4 -3
  1227. package/skills/songsee/SKILL.md +1 -1
  1228. package/skills/sonoscli/SKILL.md +1 -1
  1229. package/skills/spotify-player/SKILL.md +1 -1
  1230. package/skills/summarize/SKILL.md +1 -1
  1231. package/skills/things-mac/SKILL.md +3 -3
  1232. package/skills/tmux/SKILL.md +8 -8
  1233. package/skills/tmux/scripts/find-sessions.sh +2 -2
  1234. package/skills/trello/SKILL.md +2 -2
  1235. package/skills/video-frames/SKILL.md +1 -1
  1236. package/skills/voice-call/SKILL.md +4 -4
  1237. package/skills/wacli/SKILL.md +2 -2
  1238. package/skills/weather/SKILL.md +1 -1
  1239. package/dist/cli/browser-cli-serve.js +0 -91
  1240. package/dist/control-ui/assets/index--6ilUi7V.css +0 -1
  1241. package/dist/control-ui/assets/index-DrGg77je.js +0 -3111
  1242. package/dist/control-ui/assets/index-DrGg77je.js.map +0 -1
  1243. package/extensions/diagnostics-otel/node_modules/.bin/acorn +0 -21
  1244. package/extensions/diagnostics-otel/node_modules/.bin/acorn.CMD +0 -12
  1245. package/extensions/diagnostics-otel/node_modules/.bin/acorn.ps1 +0 -41
  1246. package/extensions/googlechat/node_modules/.bin/pigbot +0 -21
  1247. package/extensions/googlechat/node_modules/.bin/pigbot.CMD +0 -12
  1248. package/extensions/googlechat/node_modules/.bin/pigbot.ps1 +0 -41
  1249. package/extensions/matrix/node_modules/.bin/pigbot +0 -21
  1250. package/extensions/matrix/node_modules/.bin/pigbot.CMD +0 -12
  1251. package/extensions/matrix/node_modules/.bin/pigbot.ps1 +0 -41
  1252. package/extensions/memory-core/node_modules/.bin/pigbot +0 -21
  1253. package/extensions/memory-core/node_modules/.bin/pigbot.CMD +0 -12
  1254. package/extensions/memory-core/node_modules/.bin/pigbot.ps1 +0 -41
  1255. package/extensions/memory-lancedb/node_modules/.bin/arrow2csv +0 -21
  1256. package/extensions/memory-lancedb/node_modules/.bin/arrow2csv.CMD +0 -12
  1257. package/extensions/memory-lancedb/node_modules/.bin/arrow2csv.ps1 +0 -41
  1258. package/extensions/msteams/node_modules/.bin/pigbot +0 -21
  1259. package/extensions/msteams/node_modules/.bin/pigbot.CMD +0 -12
  1260. package/extensions/msteams/node_modules/.bin/pigbot.ps1 +0 -41
  1261. package/extensions/nostr/node_modules/.bin/pigbot +0 -21
  1262. package/extensions/nostr/node_modules/.bin/pigbot.CMD +0 -12
  1263. package/extensions/nostr/node_modules/.bin/pigbot.ps1 +0 -41
  1264. package/extensions/nostr/node_modules/.bin/tsc +0 -21
  1265. package/extensions/nostr/node_modules/.bin/tsc.CMD +0 -12
  1266. package/extensions/nostr/node_modules/.bin/tsc.ps1 +0 -41
  1267. package/extensions/nostr/node_modules/.bin/tsserver +0 -21
  1268. package/extensions/nostr/node_modules/.bin/tsserver.CMD +0 -12
  1269. package/extensions/nostr/node_modules/.bin/tsserver.ps1 +0 -41
  1270. package/extensions/zalo/node_modules/.bin/pigbot +0 -21
  1271. package/extensions/zalo/node_modules/.bin/pigbot.CMD +0 -12
  1272. package/extensions/zalo/node_modules/.bin/pigbot.ps1 +0 -41
  1273. package/extensions/zalouser/node_modules/.bin/pigbot +0 -21
  1274. package/extensions/zalouser/node_modules/.bin/pigbot.CMD +0 -12
  1275. package/extensions/zalouser/node_modules/.bin/pigbot.ps1 +0 -41
  1276. /package/dist/{config/types.pigbot.js → browser/routes/types.js} +0 -0
  1277. /package/extensions/bluebubbles/{pigbot.plugin.json → clawdbot.plugin.json} +0 -0
  1278. /package/extensions/copilot-proxy/{pigbot.plugin.json → clawdbot.plugin.json} +0 -0
  1279. /package/extensions/diagnostics-otel/{pigbot.plugin.json → clawdbot.plugin.json} +0 -0
  1280. /package/extensions/discord/{pigbot.plugin.json → clawdbot.plugin.json} +0 -0
  1281. /package/extensions/google-antigravity-auth/{pigbot.plugin.json → clawdbot.plugin.json} +0 -0
  1282. /package/extensions/google-gemini-cli-auth/{pigbot.plugin.json → clawdbot.plugin.json} +0 -0
  1283. /package/extensions/googlechat/{pigbot.plugin.json → clawdbot.plugin.json} +0 -0
  1284. /package/extensions/imessage/{pigbot.plugin.json → clawdbot.plugin.json} +0 -0
  1285. /package/extensions/llm-task/{pigbot.plugin.json → clawdbot.plugin.json} +0 -0
  1286. /package/extensions/lobster/{pigbot.plugin.json → clawdbot.plugin.json} +0 -0
  1287. /package/extensions/matrix/{pigbot.plugin.json → clawdbot.plugin.json} +0 -0
  1288. /package/extensions/mattermost/{pigbot.plugin.json → clawdbot.plugin.json} +0 -0
  1289. /package/extensions/memory-core/{pigbot.plugin.json → clawdbot.plugin.json} +0 -0
  1290. /package/extensions/msteams/{pigbot.plugin.json → clawdbot.plugin.json} +0 -0
  1291. /package/extensions/nextcloud-talk/{pigbot.plugin.json → clawdbot.plugin.json} +0 -0
  1292. /package/extensions/nostr/{pigbot.plugin.json → clawdbot.plugin.json} +0 -0
  1293. /package/extensions/open-prose/{pigbot.plugin.json → clawdbot.plugin.json} +0 -0
  1294. /package/extensions/qwen-portal-auth/{pigbot.plugin.json → clawdbot.plugin.json} +0 -0
  1295. /package/extensions/signal/{pigbot.plugin.json → clawdbot.plugin.json} +0 -0
  1296. /package/extensions/slack/{pigbot.plugin.json → clawdbot.plugin.json} +0 -0
  1297. /package/extensions/telegram/{pigbot.plugin.json → clawdbot.plugin.json} +0 -0
  1298. /package/extensions/tlon/{pigbot.plugin.json → clawdbot.plugin.json} +0 -0
  1299. /package/extensions/whatsapp/{pigbot.plugin.json → clawdbot.plugin.json} +0 -0
  1300. /package/extensions/zalo/{pigbot.plugin.json → clawdbot.plugin.json} +0 -0
  1301. /package/extensions/zalouser/{pigbot.plugin.json → clawdbot.plugin.json} +0 -0
@@ -59,7 +59,7 @@ function buildMessagingSection(params) {
59
59
  "## Messaging",
60
60
  "- Reply in current session → automatically routes to the source channel (Signal, Telegram, etc.)",
61
61
  "- Cross-session messaging → use sessions_send(sessionKey, message)",
62
- "- Never use exec/curl for provider messaging; Pigbot handles all routing internally.",
62
+ "- Never use exec/curl for provider messaging; Moltbot handles all routing internally.",
63
63
  params.availableTools.has("message")
64
64
  ? [
65
65
  "",
@@ -95,13 +95,13 @@ function buildDocsSection(params) {
95
95
  return [];
96
96
  return [
97
97
  "## Documentation",
98
- `Pigbot docs: ${docsPath}`,
99
- "Mirror: https://docs.clawd.bot",
100
- "Source: https://github.com/pigbot/pigbot",
98
+ `Moltbot docs: ${docsPath}`,
99
+ "Mirror: https://docs.molt.bot",
100
+ "Source: https://github.com/moltbot/moltbot",
101
101
  "Community: https://discord.com/invite/clawd",
102
102
  "Find new skills: https://clawdhub.com",
103
- "For Pigbot behavior, commands, config, or architecture: consult local docs first.",
104
- "When diagnosing issues, run `pigbot status` yourself when possible; only ask the user if you lack access (e.g., sandboxed).",
103
+ "For Moltbot behavior, commands, config, or architecture: consult local docs first.",
104
+ "When diagnosing issues, run `moltbot status` yourself when possible; only ask the user if you lack access (e.g., sandboxed).",
105
105
  "",
106
106
  ];
107
107
  }
@@ -124,7 +124,7 @@ export function buildAgentSystemPrompt(params) {
124
124
  nodes: "List/describe/notify/camera/screen on paired nodes",
125
125
  cron: "Manage cron jobs and wake events (use for reminders; when scheduling a reminder, write the systemEvent text as something that will read like a reminder when it fires, and mention that it is a reminder depending on the time gap between setting and firing; include recent context in reminder text if appropriate)",
126
126
  message: "Send messages and channel actions",
127
- gateway: "Restart, apply config, or run updates on the running Pigbot process",
127
+ gateway: "Restart, apply config, or run updates on the running Moltbot process",
128
128
  agents_list: "List agent ids allowed for sessions_spawn",
129
129
  sessions_list: "List other sessions (incl. sub-agents) with filters/last",
130
130
  sessions_history: "Fetch history for another session/sub-agent",
@@ -242,10 +242,10 @@ export function buildAgentSystemPrompt(params) {
242
242
  const workspaceNotes = (params.workspaceNotes ?? []).map((note) => note.trim()).filter(Boolean);
243
243
  // For "none" mode, return just the basic identity line
244
244
  if (promptMode === "none") {
245
- return "You are a personal assistant running inside Pigbot.";
245
+ return "You are a personal assistant running inside Moltbot.";
246
246
  }
247
247
  const lines = [
248
- "You are a personal assistant running inside Pigbot.",
248
+ "You are a personal assistant running inside Moltbot.",
249
249
  "",
250
250
  "## Tooling",
251
251
  "Tool availability (filtered by policy):",
@@ -277,25 +277,25 @@ export function buildAgentSystemPrompt(params) {
277
277
  "Keep narration brief and value-dense; avoid repeating obvious steps.",
278
278
  "Use plain human language for narration unless in a technical context.",
279
279
  "",
280
- "## Pigbot CLI Quick Reference",
281
- "Pigbot is controlled via subcommands. Do not invent commands.",
280
+ "## Moltbot CLI Quick Reference",
281
+ "Moltbot is controlled via subcommands. Do not invent commands.",
282
282
  "To manage the Gateway daemon service (start/stop/restart):",
283
- "- pigbot gateway status",
284
- "- pigbot gateway start",
285
- "- pigbot gateway stop",
286
- "- pigbot gateway restart",
287
- "If unsure, ask the user to run `pigbot help` (or `pigbot gateway --help`) and paste the output.",
283
+ "- moltbot gateway status",
284
+ "- moltbot gateway start",
285
+ "- moltbot gateway stop",
286
+ "- moltbot gateway restart",
287
+ "If unsure, ask the user to run `moltbot help` (or `moltbot gateway --help`) and paste the output.",
288
288
  "",
289
289
  ...skillsSection,
290
290
  ...memorySection,
291
291
  // Skip self-update for subagent/none modes
292
- hasGateway && !isMinimal ? "## Pigbot Self-Update" : "",
292
+ hasGateway && !isMinimal ? "## Moltbot Self-Update" : "",
293
293
  hasGateway && !isMinimal
294
294
  ? [
295
295
  "Get Updates (self-update) is ONLY allowed when the user explicitly asks for it.",
296
296
  "Do not run config.apply or update.run unless the user explicitly requests an update or config change; if it's not explicit, ask first.",
297
297
  "Actions: config.get, config.schema, config.apply (validate + write full config, then restart), update.run (update deps or git, then restart).",
298
- "After restart, Pigbot pings the last active session automatically.",
298
+ "After restart, Moltbot pings the last active session automatically.",
299
299
  ].join("\n")
300
300
  : "",
301
301
  hasGateway && !isMinimal ? "" : "",
@@ -331,9 +331,7 @@ export function buildAgentSystemPrompt(params) {
331
331
  ? ` (mounted at ${params.sandboxInfo.agentWorkspaceMount})`
332
332
  : ""}`
333
333
  : "",
334
- params.sandboxInfo.browserControlUrl
335
- ? `Sandbox browser control URL: ${params.sandboxInfo.browserControlUrl}`
336
- : "",
334
+ params.sandboxInfo.browserBridgeUrl ? "Sandbox browser: enabled." : "",
337
335
  params.sandboxInfo.browserNoVncUrl
338
336
  ? `Sandbox browser observer (noVNC): ${params.sandboxInfo.browserNoVncUrl}`
339
337
  : "",
@@ -342,15 +340,6 @@ export function buildAgentSystemPrompt(params) {
342
340
  : params.sandboxInfo.hostBrowserAllowed === false
343
341
  ? "Host browser control: blocked."
344
342
  : "",
345
- params.sandboxInfo.allowedControlUrls?.length
346
- ? `Browser control URL allowlist: ${params.sandboxInfo.allowedControlUrls.join(", ")}`
347
- : "",
348
- params.sandboxInfo.allowedControlHosts?.length
349
- ? `Browser control host allowlist: ${params.sandboxInfo.allowedControlHosts.join(", ")}`
350
- : "",
351
- params.sandboxInfo.allowedControlPorts?.length
352
- ? `Browser control port allowlist: ${params.sandboxInfo.allowedControlPorts.join(", ")}`
353
- : "",
354
343
  params.sandboxInfo.elevated?.allowed
355
344
  ? "Elevated exec is available for this session."
356
345
  : "",
@@ -373,7 +362,7 @@ export function buildAgentSystemPrompt(params) {
373
362
  userTimezone,
374
363
  }),
375
364
  "## Workspace Files (injected)",
376
- "These user-editable files are loaded by Pigbot and included below in Project Context.",
365
+ "These user-editable files are loaded by Moltbot and included below in Project Context.",
377
366
  "",
378
367
  ...buildReplyTagsSection(isMinimal),
379
368
  ...buildMessagingSection({
@@ -438,7 +427,7 @@ export function buildAgentSystemPrompt(params) {
438
427
  }
439
428
  // Skip heartbeats for subagent/none modes
440
429
  if (!isMinimal) {
441
- lines.push("## Heartbeats", heartbeatPromptLine, "If you receive a heartbeat poll (a user message matching the heartbeat prompt above), and there is nothing that needs attention, reply exactly:", "HEARTBEAT_OK", 'Pigbot treats a leading/trailing "HEARTBEAT_OK" as a heartbeat ack (and may discard it).', 'If something needs attention, do NOT include "HEARTBEAT_OK"; reply with the alert text instead.', "");
430
+ lines.push("## Heartbeats", heartbeatPromptLine, "If you receive a heartbeat poll (a user message matching the heartbeat prompt above), and there is nothing that needs attention, reply exactly:", "HEARTBEAT_OK", 'Moltbot treats a leading/trailing "HEARTBEAT_OK" as a heartbeat ack (and may discard it).', 'If something needs attention, do NOT include "HEARTBEAT_OK"; reply with the alert text instead.', "");
442
431
  }
443
432
  lines.push("## Runtime", buildRuntimeLine(runtimeInfo, runtimeChannel, runtimeCapabilities, params.defaultThinkLevel), `Reasoning: ${reasoningLevel} (hidden unless on/stream). Toggle /reasoning; /status shows Reasoning when enabled.`);
444
433
  return lines.filter(Boolean).join("\n");
@@ -1,6 +1,6 @@
1
1
  import { createSubsystemLogger } from "../logging/subsystem.js";
2
2
  import { getImageMetadata, resizeToJpeg } from "../media/image-ops.js";
3
- // Anthropic Messages API limitations (observed in Pigbot sessions):
3
+ // Anthropic Messages API limitations (observed in Moltbot sessions):
4
4
  // - Images over ~2000px per side can fail in multi-image requests.
5
5
  // - Images over 5MB are rejected by the API.
6
6
  //
@@ -26,8 +26,8 @@ export const TOOL_GROUPS = {
26
26
  "group:messaging": ["message"],
27
27
  // Nodes + device tools
28
28
  "group:nodes": ["nodes"],
29
- // All Pigbot native tools (excludes provider plugins).
30
- "group:pigbot": [
29
+ // All Moltbot native tools (excludes provider plugins).
30
+ "group:moltbot": [
31
31
  "browser",
32
32
  "canvas",
33
33
  "nodes",
@@ -172,6 +172,12 @@ export function stripPluginOnlyAllowlist(policy, groups, coreTools) {
172
172
  unknownAllowlist.push(entry);
173
173
  }
174
174
  const strippedAllowlist = !hasCoreEntry;
175
+ // When an allowlist contains only plugin tools, we strip it to avoid accidentally
176
+ // disabling core tools. Users who want additive behavior should prefer `tools.alsoAllow`.
177
+ if (strippedAllowlist) {
178
+ // Note: logging happens in the caller (pi-tools/tools-invoke) after this function returns.
179
+ // We keep this note here for future maintainers.
180
+ }
175
181
  return {
176
182
  policy: strippedAllowlist ? { ...policy, allow: undefined } : policy,
177
183
  unknownAllowlist: Array.from(new Set(unknownAllowlist)),
@@ -21,7 +21,9 @@ export function createAgentsListTool(opts) {
21
21
  mainKey,
22
22
  })
23
23
  : alias;
24
- const requesterAgentId = normalizeAgentId(parseAgentSessionKey(requesterInternalKey)?.agentId ?? DEFAULT_AGENT_ID);
24
+ const requesterAgentId = normalizeAgentId(opts?.requesterAgentIdOverride ??
25
+ parseAgentSessionKey(requesterInternalKey)?.agentId ??
26
+ DEFAULT_AGENT_ID);
25
27
  const allowAgents = resolveAgentConfig(cfg, requesterAgentId)?.subagents?.allowAgents ?? [];
26
28
  const allowAny = allowAgents.some((value) => value.trim() === "*");
27
29
  const allowSet = new Set(allowAgents
@@ -25,11 +25,9 @@ async function resolveBrowserNodeTarget(params) {
25
25
  }
26
26
  return null;
27
27
  }
28
- if (params.defaultControlUrl?.trim() && params.target !== "node" && !params.requestedNode) {
28
+ if (params.sandboxBridgeUrl?.trim() && params.target !== "node" && !params.requestedNode) {
29
29
  return null;
30
30
  }
31
- if (params.controlUrl?.trim())
32
- return null;
33
31
  if (params.target && params.target !== "node")
34
32
  return null;
35
33
  if (mode === "manual" && params.target !== "node" && !params.requestedNode) {
@@ -121,125 +119,67 @@ function applyProxyPaths(result, mapping) {
121
119
  }
122
120
  function resolveBrowserBaseUrl(params) {
123
121
  const cfg = loadConfig();
124
- const resolved = resolveBrowserConfig(cfg.browser);
125
- const normalizedControlUrl = params.controlUrl?.trim() ?? "";
126
- const normalizedDefault = params.defaultControlUrl?.trim() ?? "";
127
- const target = params.target ?? (normalizedControlUrl ? "custom" : normalizedDefault ? "sandbox" : "host");
128
- const assertAllowedControlUrl = (url) => {
129
- const allowedUrls = params.allowedControlUrls?.map((entry) => entry.trim().replace(/\/$/, ""));
130
- const allowedHosts = params.allowedControlHosts?.map((entry) => entry.trim().toLowerCase());
131
- const allowedPorts = params.allowedControlPorts;
132
- if (!allowedUrls?.length && !allowedHosts?.length && !allowedPorts?.length) {
133
- return;
134
- }
135
- let parsed;
136
- try {
137
- parsed = new URL(url);
138
- }
139
- catch {
140
- throw new Error(`Invalid browser controlUrl: ${url}`);
141
- }
142
- const normalizedUrl = parsed.toString().replace(/\/$/, "");
143
- if (allowedUrls?.length && !allowedUrls.includes(normalizedUrl)) {
144
- throw new Error("Browser controlUrl is not in the allowed URL list.");
145
- }
146
- if (allowedHosts?.length && !allowedHosts.includes(parsed.hostname)) {
147
- throw new Error("Browser controlUrl hostname is not in the allowed host list.");
148
- }
149
- if (allowedPorts?.length) {
150
- const port = parsed.port?.trim() !== "" ? Number(parsed.port) : parsed.protocol === "https:" ? 443 : 80;
151
- if (!Number.isFinite(port) || !allowedPorts.includes(port)) {
152
- throw new Error("Browser controlUrl port is not in the allowed port list.");
153
- }
154
- }
155
- };
156
- if (target !== "custom" && params.target && normalizedControlUrl) {
157
- throw new Error('controlUrl is only supported with target="custom".');
158
- }
159
- if (target === "custom") {
160
- if (!normalizedControlUrl) {
161
- throw new Error("Custom browser target requires controlUrl.");
162
- }
163
- const normalized = normalizedControlUrl.replace(/\/$/, "");
164
- assertAllowedControlUrl(normalized);
165
- return normalized;
166
- }
122
+ const resolved = resolveBrowserConfig(cfg.browser, cfg);
123
+ const normalizedSandbox = params.sandboxBridgeUrl?.trim() ?? "";
124
+ const target = params.target ?? (normalizedSandbox ? "sandbox" : "host");
167
125
  if (target === "sandbox") {
168
- if (!normalizedDefault) {
126
+ if (!normalizedSandbox) {
169
127
  throw new Error('Sandbox browser is unavailable. Enable agents.defaults.sandbox.browser.enabled or use target="host" if allowed.');
170
128
  }
171
- return normalizedDefault.replace(/\/$/, "");
129
+ return normalizedSandbox.replace(/\/$/, "");
172
130
  }
173
131
  if (params.allowHostControl === false) {
174
132
  throw new Error("Host browser control is disabled by sandbox policy.");
175
133
  }
176
134
  if (!resolved.enabled) {
177
- throw new Error("Browser control is disabled. Set browser.enabled=true in ~/.pigbot/pigbot.json.");
135
+ throw new Error("Browser control is disabled. Set browser.enabled=true in ~/.clawdbot/moltbot.json.");
178
136
  }
179
- const normalized = resolved.controlUrl.replace(/\/$/, "");
180
- assertAllowedControlUrl(normalized);
181
- return normalized;
137
+ return undefined;
182
138
  }
183
139
  export function createBrowserTool(opts) {
184
- const targetDefault = opts?.defaultControlUrl ? "sandbox" : "host";
140
+ const targetDefault = opts?.sandboxBridgeUrl ? "sandbox" : "host";
185
141
  const hostHint = opts?.allowHostControl === false ? "Host target blocked by policy." : "Host target allowed.";
186
- const allowlistHint = opts?.allowedControlUrls?.length ||
187
- opts?.allowedControlHosts?.length ||
188
- opts?.allowedControlPorts?.length
189
- ? "Custom targets are restricted by sandbox allowlists."
190
- : "Custom targets are unrestricted.";
191
142
  return {
192
143
  label: "Browser",
193
144
  name: "browser",
194
145
  description: [
195
- "Control the browser via Pigbot's browser control server (status/start/stop/profiles/tabs/open/snapshot/screenshot/actions).",
146
+ "Control the browser via Moltbot's browser control server (status/start/stop/profiles/tabs/open/snapshot/screenshot/actions).",
196
147
  'Profiles: use profile="chrome" for Chrome extension relay takeover (your existing Chrome tabs). Use profile="clawd" for the isolated clawd-managed browser.',
197
148
  'If the user mentions the Chrome extension / Browser Relay / toolbar button / “attach tab”, ALWAYS use profile="chrome" (do not ask which profile).',
198
149
  'When a node-hosted browser proxy is available, the tool may auto-route to it. Pin a node with node=<id|name> or target="node".',
199
- "Chrome extension relay needs an attached tab: user must click the Pigbot Browser Relay toolbar icon on the tab (badge ON). If no tab is connected, ask them to attach it.",
150
+ "Chrome extension relay needs an attached tab: user must click the Moltbot Browser Relay toolbar icon on the tab (badge ON). If no tab is connected, ask them to attach it.",
200
151
  "When using refs from snapshot (e.g. e12), keep the same tab: prefer passing targetId from the snapshot response into subsequent actions (act/click/type/etc).",
201
152
  'For stable, self-resolving refs across calls, use snapshot with refs="aria" (Playwright aria-ref ids). Default refs="role" are role+name-based.',
202
153
  "Use snapshot+act for UI automation. Avoid act:wait by default; use only in exceptional cases when no reliable UI state exists.",
203
- `target selects browser location (sandbox|host|custom|node). Default: ${targetDefault}.`,
204
- "controlUrl implies target=custom (remote control server).",
154
+ `target selects browser location (sandbox|host|node). Default: ${targetDefault}.`,
205
155
  hostHint,
206
- allowlistHint,
207
156
  ].join(" "),
208
157
  parameters: BrowserToolSchema,
209
158
  execute: async (_toolCallId, args) => {
210
159
  const params = args;
211
160
  const action = readStringParam(params, "action", { required: true });
212
- const controlUrl = readStringParam(params, "controlUrl");
213
161
  const profile = readStringParam(params, "profile");
214
162
  const requestedNode = readStringParam(params, "node");
215
163
  let target = readStringParam(params, "target");
216
- if (controlUrl?.trim() && (target === "node" || requestedNode)) {
217
- throw new Error('controlUrl is not supported with target="node".');
218
- }
219
- if (target === "custom" && requestedNode) {
220
- throw new Error('node is not supported with target="custom".');
164
+ if (requestedNode && target && target !== "node") {
165
+ throw new Error('node is only supported with target="node".');
221
166
  }
222
- if (!target && !controlUrl?.trim() && !requestedNode && profile === "chrome") {
167
+ if (!target && !requestedNode && profile === "chrome") {
223
168
  // Chrome extension relay takeover is a host Chrome feature; prefer host unless explicitly targeting a node.
224
169
  target = "host";
225
170
  }
226
171
  const nodeTarget = await resolveBrowserNodeTarget({
227
172
  requestedNode: requestedNode ?? undefined,
228
173
  target,
229
- controlUrl,
230
- defaultControlUrl: opts?.defaultControlUrl,
174
+ sandboxBridgeUrl: opts?.sandboxBridgeUrl,
231
175
  });
232
176
  const resolvedTarget = target === "node" ? undefined : target;
233
177
  const baseUrl = nodeTarget
234
- ? ""
178
+ ? undefined
235
179
  : resolveBrowserBaseUrl({
236
180
  target: resolvedTarget,
237
- controlUrl,
238
- defaultControlUrl: opts?.defaultControlUrl,
181
+ sandboxBridgeUrl: opts?.sandboxBridgeUrl,
239
182
  allowHostControl: opts?.allowHostControl,
240
- allowedControlUrls: opts?.allowedControlUrls,
241
- allowedControlHosts: opts?.allowedControlHosts,
242
- allowedControlPorts: opts?.allowedControlPorts,
243
183
  });
244
184
  const proxyRequest = nodeTarget
245
185
  ? async (opts) => {
@@ -641,7 +581,7 @@ export function createBrowserTool(opts) {
641
581
  })).tabs ?? [])
642
582
  : await browserTabs(baseUrl, { profile }).catch(() => []);
643
583
  if (!tabs.length) {
644
- throw new Error("No Chrome tabs are attached via the Pigbot Browser Relay extension. Click the toolbar icon on the tab you want to control (badge ON), then retry.");
584
+ throw new Error("No Chrome tabs are attached via the Moltbot Browser Relay extension. Click the toolbar icon on the tab you want to control (badge ON), then retry.");
645
585
  }
646
586
  throw new Error(`Chrome tab not found (stale targetId?). Run action=tabs profile="chrome" and use one of the returned targetIds.`);
647
587
  }
@@ -31,7 +31,7 @@ const BROWSER_TOOL_ACTIONS = [
31
31
  "dialog",
32
32
  "act",
33
33
  ];
34
- const BROWSER_TARGETS = ["sandbox", "host", "custom", "node"];
34
+ const BROWSER_TARGETS = ["sandbox", "host", "node"];
35
35
  const BROWSER_SNAPSHOT_FORMATS = ["aria", "ai"];
36
36
  const BROWSER_SNAPSHOT_MODES = ["efficient"];
37
37
  const BROWSER_SNAPSHOT_REFS = ["role", "aria"];
@@ -78,7 +78,6 @@ export const BrowserToolSchema = Type.Object({
78
78
  target: optionalStringEnum(BROWSER_TARGETS),
79
79
  node: Type.Optional(Type.String()),
80
80
  profile: Type.Optional(Type.String()),
81
- controlUrl: Type.Optional(Type.String()),
82
81
  targetUrl: Type.Optional(Type.String()),
83
82
  targetId: Type.Optional(Type.String()),
84
83
  limit: Type.Optional(Type.Number()),
@@ -115,7 +115,50 @@ export function createCronTool(opts) {
115
115
  return {
116
116
  label: "Cron",
117
117
  name: "cron",
118
- description: "Manage Gateway cron jobs (status/list/add/update/remove/run/runs) and send wake events. Use `jobId` as the canonical identifier; `id` is accepted for compatibility. Use `contextMessages` (0-10) to add previous messages as context to the job text.",
118
+ description: `Manage Gateway cron jobs (status/list/add/update/remove/run/runs) and send wake events.
119
+
120
+ ACTIONS:
121
+ - status: Check cron scheduler status
122
+ - list: List jobs (use includeDisabled:true to include disabled)
123
+ - add: Create job (requires job object, see schema below)
124
+ - update: Modify job (requires jobId + patch object)
125
+ - remove: Delete job (requires jobId)
126
+ - run: Trigger job immediately (requires jobId)
127
+ - runs: Get job run history (requires jobId)
128
+ - wake: Send wake event (requires text, optional mode)
129
+
130
+ JOB SCHEMA (for add action):
131
+ {
132
+ "name": "string (optional)",
133
+ "schedule": { ... }, // Required: when to run
134
+ "payload": { ... }, // Required: what to execute
135
+ "sessionTarget": "main" | "isolated", // Required
136
+ "enabled": true | false // Optional, default true
137
+ }
138
+
139
+ SCHEDULE TYPES (schedule.kind):
140
+ - "at": One-shot at absolute time
141
+ { "kind": "at", "atMs": <unix-ms-timestamp> }
142
+ - "every": Recurring interval
143
+ { "kind": "every", "everyMs": <interval-ms>, "anchorMs": <optional-start-ms> }
144
+ - "cron": Cron expression
145
+ { "kind": "cron", "expr": "<cron-expression>", "tz": "<optional-timezone>" }
146
+
147
+ PAYLOAD TYPES (payload.kind):
148
+ - "systemEvent": Injects text as system event into session
149
+ { "kind": "systemEvent", "text": "<message>" }
150
+ - "agentTurn": Runs agent with message (isolated sessions only)
151
+ { "kind": "agentTurn", "message": "<prompt>", "model": "<optional>", "thinking": "<optional>", "timeoutSeconds": <optional>, "deliver": <optional-bool>, "channel": "<optional>", "to": "<optional>", "bestEffortDeliver": <optional-bool> }
152
+
153
+ CRITICAL CONSTRAINTS:
154
+ - sessionTarget="main" REQUIRES payload.kind="systemEvent"
155
+ - sessionTarget="isolated" REQUIRES payload.kind="agentTurn"
156
+
157
+ WAKE MODES (for wake action):
158
+ - "next-heartbeat" (default): Wake on next heartbeat
159
+ - "now": Wake immediately
160
+
161
+ Use jobId as the canonical identifier; id is accepted for compatibility. Use contextMessages (0-10) to add previous messages as context to the job text.`,
119
162
  parameters: CronToolSchema,
120
163
  execute: async (_toolCallId, args) => {
121
164
  const params = args;
@@ -1,3 +1,4 @@
1
+ import { getPresence } from "../../discord/monitor/presence-cache.js";
1
2
  import { addRoleDiscord, createChannelDiscord, createScheduledEventDiscord, deleteChannelDiscord, editChannelDiscord, fetchChannelInfoDiscord, fetchMemberInfoDiscord, fetchRoleInfoDiscord, fetchVoiceStatusDiscord, listGuildChannelsDiscord, listGuildEmojisDiscord, listScheduledEventsDiscord, moveChannelDiscord, removeChannelPermissionDiscord, removeRoleDiscord, setChannelPermissionDiscord, uploadEmojiDiscord, uploadStickerDiscord, } from "../../discord/send.js";
2
3
  import { jsonResult, readNumberParam, readStringArrayParam, readStringParam, } from "./common.js";
3
4
  function readParentIdParam(params) {
@@ -23,7 +24,10 @@ export async function handleDiscordGuildAction(action, params, isActionEnabled)
23
24
  const member = accountId
24
25
  ? await fetchMemberInfoDiscord(guildId, userId, { accountId })
25
26
  : await fetchMemberInfoDiscord(guildId, userId);
26
- return jsonResult({ ok: true, member });
27
+ const presence = getPresence(accountId, userId);
28
+ const activities = presence?.activities ?? undefined;
29
+ const status = presence?.status ?? undefined;
30
+ return jsonResult({ ok: true, member, ...(presence ? { status, activities } : {}) });
27
31
  }
28
32
  case "roleInfo": {
29
33
  if (!isActionEnabled("roleInfo")) {
@@ -11,7 +11,7 @@ import { minimaxUnderstandImage } from "../minimax-vlm.js";
11
11
  import { getApiKeyForModel, requireApiKey, resolveEnvApiKey } from "../model-auth.js";
12
12
  import { runWithImageModelFallback } from "../model-fallback.js";
13
13
  import { resolveConfiguredModelRef } from "../model-selection.js";
14
- import { ensurePigbotModelsJson } from "../models-config.js";
14
+ import { ensureMoltbotModelsJson } from "../models-config.js";
15
15
  import { assertSandboxPath } from "../sandbox-paths.js";
16
16
  import { coerceImageAssistantText, coerceImageModelConfig, decodeDataUrl, resolveProviderVisionModelFromConfig, } from "./image-tool.helpers.js";
17
17
  const DEFAULT_PROMPT = "Describe the image.";
@@ -187,7 +187,7 @@ async function runImagePrompt(params) {
187
187
  },
188
188
  }
189
189
  : undefined;
190
- await ensurePigbotModelsJson(effectiveCfg, params.agentDir);
190
+ await ensureMoltbotModelsJson(effectiveCfg, params.agentDir);
191
191
  const authStorage = discoverAuthStorage(params.agentDir);
192
192
  const modelRegistry = discoverModels(authStorage, params.agentDir);
193
193
  const result = await runWithImageModelFallback({
@@ -42,6 +42,8 @@ function buildSendSchema(options) {
42
42
  replyTo: Type.Optional(Type.String()),
43
43
  threadId: Type.Optional(Type.String()),
44
44
  asVoice: Type.Optional(Type.Boolean()),
45
+ silent: Type.Optional(Type.Boolean()),
46
+ quoteText: Type.Optional(Type.String({ description: "Quote text for Telegram reply_parameters" })),
45
47
  bestEffort: Type.Optional(Type.Boolean()),
46
48
  gifPlayback: Type.Optional(Type.Boolean()),
47
49
  buttons: Type.Optional(Type.Array(Type.Array(Type.Object({
@@ -258,7 +260,13 @@ export function createMessageTool(options) {
258
260
  name: "message",
259
261
  description,
260
262
  parameters: schema,
261
- execute: async (_toolCallId, args) => {
263
+ execute: async (_toolCallId, args, signal) => {
264
+ // Check if already aborted before doing any work
265
+ if (signal?.aborted) {
266
+ const err = new Error("Message send aborted");
267
+ err.name = "AbortError";
268
+ throw err;
269
+ }
262
270
  const params = args;
263
271
  const cfg = options?.config ?? loadConfig();
264
272
  const action = readStringParam(params, "action", {
@@ -287,6 +295,9 @@ export function createMessageTool(options) {
287
295
  currentThreadTs: options?.currentThreadTs,
288
296
  replyToMode: options?.replyToMode,
289
297
  hasRepliedRef: options?.hasRepliedRef,
298
+ // Direct tool invocations should not add cross-context decoration.
299
+ // The agent is composing a message, not forwarding from another chat.
300
+ skipCrossContextDecoration: true,
290
301
  }
291
302
  : undefined;
292
303
  const result = await runMessageAction({
@@ -299,6 +310,7 @@ export function createMessageTool(options) {
299
310
  agentId: options?.agentSessionKey
300
311
  ? resolveSessionAgentId({ sessionKey: options.agentSessionKey, config: cfg })
301
312
  : undefined,
313
+ abortSignal: signal,
302
314
  });
303
315
  const toolResult = getToolResult(result);
304
316
  if (toolResult)
@@ -12,7 +12,18 @@ export function resolveAnnounceTargetFromKey(sessionKey) {
12
12
  const [channelRaw, kind, ...rest] = parts;
13
13
  if (kind !== "group" && kind !== "channel")
14
14
  return null;
15
- const id = rest.join(":").trim();
15
+ // Extract topic/thread ID from rest (supports both :topic: and :thread:)
16
+ // Telegram uses :topic:, other platforms use :thread:
17
+ let threadId;
18
+ const restJoined = rest.join(":");
19
+ const topicMatch = restJoined.match(/:topic:(\d+)$/);
20
+ const threadMatch = restJoined.match(/:thread:(\d+)$/);
21
+ const match = topicMatch || threadMatch;
22
+ if (match) {
23
+ threadId = match[1]; // Keep as string to match AgentCommandOpts.threadId
24
+ }
25
+ // Remove :topic:N or :thread:N suffix from ID for target
26
+ const id = match ? restJoined.replace(/:(topic|thread):\d+$/, "") : restJoined.trim();
16
27
  if (!id)
17
28
  return null;
18
29
  if (!channelRaw)
@@ -30,7 +41,11 @@ export function resolveAnnounceTargetFromKey(sessionKey) {
30
41
  const normalized = normalizedChannel
31
42
  ? getChannelPlugin(normalizedChannel)?.messaging?.normalizeTarget?.(kindTarget)
32
43
  : undefined;
33
- return { channel, to: normalized ?? kindTarget };
44
+ return {
45
+ channel,
46
+ to: normalized ?? kindTarget,
47
+ threadId,
48
+ };
34
49
  }
35
50
  export function buildAgentToAgentMessageContext(params) {
36
51
  const lines = [
@@ -102,7 +102,7 @@ export function createSessionsSpawnTool(opts) {
102
102
  alias,
103
103
  mainKey,
104
104
  });
105
- const requesterAgentId = normalizeAgentId(parseAgentSessionKey(requesterInternalKey)?.agentId);
105
+ const requesterAgentId = normalizeAgentId(opts?.requesterAgentIdOverride ?? parseAgentSessionKey(requesterInternalKey)?.agentId);
106
106
  const targetAgentId = requestedAgentId
107
107
  ? normalizeAgentId(requestedAgentId)
108
108
  : requesterAgentId;