@gguf/pigbot 0.0.6 → 0.0.7

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 (1096) hide show
  1. package/CHANGELOG.md +1206 -12
  2. package/LICENSE +2 -2
  3. package/README.md +347 -37
  4. package/assets/chrome-extension/README.md +5 -5
  5. package/assets/chrome-extension/background.js +5 -5
  6. package/assets/chrome-extension/manifest.json +3 -3
  7. package/assets/chrome-extension/options.html +5 -5
  8. package/assets/chrome-extension/options.js +1 -1
  9. package/dist/acp/client.js +5 -5
  10. package/dist/acp/server.js +3 -3
  11. package/dist/acp/types.js +2 -2
  12. package/dist/agents/agent-paths.js +6 -6
  13. package/dist/agents/agent-scope.js +1 -1
  14. package/dist/agents/anthropic-payload-log.js +2 -2
  15. package/dist/agents/auth-profiles/doctor.js +1 -1
  16. package/dist/agents/auth-profiles/paths.js +3 -3
  17. package/dist/agents/bash-tools.exec.js +1 -1
  18. package/dist/agents/bash-tools.shared.js +2 -2
  19. package/dist/agents/cache-trace.js +5 -5
  20. package/dist/agents/channel-tools.js +31 -2
  21. package/dist/agents/cli-runner/helpers.js +3 -3
  22. package/dist/agents/cli-runner.js +3 -3
  23. package/dist/agents/context.js +4 -4
  24. package/dist/agents/docs-path.js +3 -3
  25. package/dist/agents/identity.js +1 -1
  26. package/dist/agents/live-auth-keys.js +2 -2
  27. package/dist/agents/memory-search.js +5 -0
  28. package/dist/agents/minimax-vlm.js +1 -1
  29. package/dist/agents/model-auth.js +2 -1
  30. package/dist/agents/model-catalog.js +4 -4
  31. package/dist/agents/model-selection.js +1 -1
  32. package/dist/agents/models-config.js +3 -3
  33. package/dist/agents/models-config.providers.js +40 -8
  34. package/dist/agents/{moltbot-tools.js → openclaw-tools.js} +1 -1
  35. package/dist/agents/pi-embedded-helpers/errors.js +20 -0
  36. package/dist/agents/pi-embedded-helpers/openai.js +1 -1
  37. package/dist/agents/pi-embedded-helpers.js +1 -1
  38. package/dist/agents/pi-embedded-runner/cache-ttl.js +1 -1
  39. package/dist/agents/pi-embedded-runner/compact.js +8 -8
  40. package/dist/agents/pi-embedded-runner/model.js +2 -2
  41. package/dist/agents/pi-embedded-runner/run/attempt.js +6 -6
  42. package/dist/agents/pi-embedded-runner/run.js +31 -5
  43. package/dist/agents/pi-embedded-runner/session-manager-cache.js +1 -1
  44. package/dist/agents/pi-embedded-runner/utils.js +1 -1
  45. package/dist/agents/pi-embedded-subscribe.raw-stream.js +2 -2
  46. package/dist/agents/pi-tools.js +5 -5
  47. package/dist/agents/pi-tools.read.js +2 -2
  48. package/dist/agents/sandbox/browser.js +16 -11
  49. package/dist/agents/sandbox/constants.js +7 -7
  50. package/dist/agents/sandbox/docker.js +17 -14
  51. package/dist/agents/sandbox/runtime-status.js +1 -1
  52. package/dist/agents/session-transcript-repair.js +1 -1
  53. package/dist/agents/session-write-lock.js +2 -2
  54. package/dist/agents/skills/bundled-dir.js +1 -1
  55. package/dist/agents/skills/config.js +2 -1
  56. package/dist/agents/skills/frontmatter.js +11 -3
  57. package/dist/agents/skills/workspace.js +6 -6
  58. package/dist/agents/synthetic-models.js +8 -0
  59. package/dist/agents/system-prompt.js +21 -21
  60. package/dist/agents/tool-images.js +1 -1
  61. package/dist/agents/tool-policy.js +2 -2
  62. package/dist/agents/tools/browser-tool.js +5 -5
  63. package/dist/agents/tools/image-tool.js +2 -2
  64. package/dist/agents/tools/memory-tool.js +1 -1
  65. package/dist/agents/tools/sessions-send-tool.js +2 -2
  66. package/dist/agents/tools/web-search.js +7 -7
  67. package/dist/agents/transcript-policy.js +2 -1
  68. package/dist/agents/workspace.js +3 -3
  69. package/dist/auto-reply/commands-registry.data.js +1 -1
  70. package/dist/auto-reply/reply/agent-runner-execution.js +1 -1
  71. package/dist/auto-reply/reply/bash-command.js +2 -2
  72. package/dist/auto-reply/reply/commands-context-report.js +2 -2
  73. package/dist/auto-reply/reply/commands-session.js +4 -4
  74. package/dist/auto-reply/reply/directive-handling.shared.js +1 -1
  75. package/dist/auto-reply/reply/dispatch-from-config.js +21 -0
  76. package/dist/auto-reply/reply/get-reply-inline-actions.js +2 -2
  77. package/dist/auto-reply/reply/get-reply.js +1 -1
  78. package/dist/auto-reply/reply/groups.js +1 -1
  79. package/dist/auto-reply/reply/mentions.js +3 -2
  80. package/dist/auto-reply/reply/normalize-reply.js +12 -4
  81. package/dist/auto-reply/reply/reply-dispatcher.js +8 -1
  82. package/dist/auto-reply/reply/reply-elevated.js +1 -1
  83. package/dist/auto-reply/reply/stage-sandbox-media.js +1 -1
  84. package/dist/auto-reply/status.js +2 -2
  85. package/dist/browser/chrome.js +13 -13
  86. package/dist/browser/chrome.profile-decoration.js +5 -5
  87. package/dist/browser/client-fetch.js +3 -3
  88. package/dist/browser/config.js +11 -11
  89. package/dist/browser/constants.js +3 -3
  90. package/dist/browser/control-service.js +1 -1
  91. package/dist/browser/extension-relay.js +3 -3
  92. package/dist/browser/profiles-service.js +2 -2
  93. package/dist/browser/profiles.js +1 -1
  94. package/dist/browser/pw-tools-core.downloads.js +1 -1
  95. package/dist/browser/pw-tools-core.interactions.js +5 -5
  96. package/dist/browser/pw-tools-core.responses.js +1 -1
  97. package/dist/browser/routes/agent.act.js +2 -2
  98. package/dist/browser/routes/agent.debug.js +1 -1
  99. package/dist/browser/server-context.js +9 -9
  100. package/dist/browser/server.js +2 -2
  101. package/dist/build-info.json +2 -2
  102. package/dist/canvas-host/a2ui/.bundle.hash +1 -1
  103. package/dist/canvas-host/a2ui/a2ui.bundle.js +24 -19
  104. package/dist/canvas-host/a2ui/index.html +28 -28
  105. package/dist/canvas-host/a2ui.js +14 -18
  106. package/dist/canvas-host/server.js +33 -35
  107. package/dist/channels/plugins/catalog.js +7 -7
  108. package/dist/channels/plugins/helpers.js +2 -2
  109. package/dist/channels/plugins/onboarding/imessage.js +1 -1
  110. package/dist/channels/plugins/onboarding/signal.js +2 -2
  111. package/dist/channels/plugins/onboarding/slack.js +5 -5
  112. package/dist/channels/plugins/onboarding/telegram.js +3 -3
  113. package/dist/channels/plugins/onboarding/whatsapp.js +4 -4
  114. package/dist/channels/plugins/pairing-message.js +1 -1
  115. package/dist/channels/plugins/status-issues/bluebubbles.js +1 -1
  116. package/dist/channels/plugins/status-issues/whatsapp.js +2 -2
  117. package/dist/channels/registry.js +1 -1
  118. package/dist/cli/acp-cli.js +2 -2
  119. package/dist/cli/argv.js +2 -2
  120. package/dist/cli/banner.js +10 -11
  121. package/dist/cli/browser-cli-actions-input/register.files-downloads.js +1 -1
  122. package/dist/cli/browser-cli-examples.js +29 -29
  123. package/dist/cli/browser-cli-extension.js +5 -5
  124. package/dist/cli/browser-cli-manage.js +4 -4
  125. package/dist/cli/browser-cli.js +3 -3
  126. package/dist/cli/channel-options.js +1 -1
  127. package/dist/cli/channels-cli.js +1 -1
  128. package/dist/cli/cli-name.js +4 -8
  129. package/dist/cli/command-format.js +3 -3
  130. package/dist/cli/config-cli.js +2 -2
  131. package/dist/cli/cron-cli/register.js +1 -1
  132. package/dist/cli/daemon-cli/install.js +2 -2
  133. package/dist/cli/daemon-cli/register.js +1 -1
  134. package/dist/cli/daemon-cli/shared.js +11 -13
  135. package/dist/cli/daemon-cli/status.gather.js +2 -5
  136. package/dist/cli/daemon-cli/status.print.js +9 -17
  137. package/dist/cli/directory-cli.js +1 -1
  138. package/dist/cli/dns-cli.js +20 -13
  139. package/dist/cli/docs-cli.js +2 -2
  140. package/dist/cli/exec-approvals-cli.js +2 -2
  141. package/dist/cli/gateway-cli/dev.js +7 -5
  142. package/dist/cli/gateway-cli/register.js +12 -6
  143. package/dist/cli/gateway-cli/run.js +15 -14
  144. package/dist/cli/gateway-cli/shared.js +5 -5
  145. package/dist/cli/hooks-cli.js +3 -3
  146. package/dist/cli/logs-cli.js +3 -3
  147. package/dist/cli/memory-cli.js +36 -5
  148. package/dist/cli/models-cli.js +1 -1
  149. package/dist/cli/node-cli/daemon.js +3 -3
  150. package/dist/cli/node-cli/register.js +1 -1
  151. package/dist/cli/nodes-cli/register.canvas.js +1 -1
  152. package/dist/cli/nodes-cli/register.js +1 -1
  153. package/dist/cli/nodes-screen.js +1 -1
  154. package/dist/cli/pairing-cli.js +3 -3
  155. package/dist/cli/plugin-registry.js +2 -2
  156. package/dist/cli/plugins-cli.js +3 -3
  157. package/dist/cli/profile.js +9 -9
  158. package/dist/cli/program/config-guard.js +1 -1
  159. package/dist/cli/program/help.js +14 -11
  160. package/dist/cli/program/preaction.js +1 -1
  161. package/dist/cli/program/register.agent.js +15 -12
  162. package/dist/cli/program/register.configure.js +1 -1
  163. package/dist/cli/program/register.maintenance.js +4 -4
  164. package/dist/cli/program/register.message.js +5 -5
  165. package/dist/cli/program/register.onboard.js +5 -3
  166. package/dist/cli/program/register.setup.js +3 -3
  167. package/dist/cli/program/register.status-health-sessions.js +13 -13
  168. package/dist/cli/program/register.subclis.js +7 -2
  169. package/dist/cli/route.js +1 -1
  170. package/dist/cli/run-main.js +3 -3
  171. package/dist/cli/sandbox-cli.js +19 -19
  172. package/dist/cli/security-cli.js +4 -4
  173. package/dist/cli/skills-cli.js +3 -3
  174. package/dist/cli/system-cli.js +1 -1
  175. package/dist/cli/tagline.js +11 -9
  176. package/dist/cli/tui-cli.js +1 -1
  177. package/dist/cli/update-cli.js +48 -45
  178. package/dist/cli/webhooks-cli.js +6 -6
  179. package/dist/commands/agent-via-gateway.js +1 -1
  180. package/dist/commands/agent.js +1 -1
  181. package/dist/commands/agents.command-shared.js +1 -1
  182. package/dist/commands/agents.commands.add.js +2 -2
  183. package/dist/commands/agents.commands.list.js +1 -1
  184. package/dist/commands/auth-choice-options.js +10 -0
  185. package/dist/commands/auth-choice.apply.api-providers.js +49 -1
  186. package/dist/commands/auth-choice.apply.openai.js +1 -1
  187. package/dist/commands/auth-choice.apply.plugin-provider.js +2 -2
  188. package/dist/commands/auth-choice.preferred-provider.js +1 -0
  189. package/dist/commands/channels/shared.js +1 -1
  190. package/dist/commands/channels/status.js +1 -1
  191. package/dist/commands/chutes-oauth.js +1 -1
  192. package/dist/commands/configure.channels.js +2 -2
  193. package/dist/commands/configure.gateway.js +1 -1
  194. package/dist/commands/configure.wizard.js +21 -21
  195. package/dist/commands/daemon-install-helpers.js +2 -2
  196. package/dist/commands/dashboard.js +2 -2
  197. package/dist/commands/docs.js +5 -5
  198. package/dist/commands/doctor-auth.js +5 -5
  199. package/dist/commands/doctor-config-flow.js +64 -7
  200. package/dist/commands/doctor-format.js +5 -5
  201. package/dist/commands/doctor-gateway-daemon-flow.js +7 -4
  202. package/dist/commands/doctor-gateway-services.js +72 -65
  203. package/dist/commands/doctor-platform-notes.js +51 -9
  204. package/dist/commands/doctor-sandbox.js +4 -4
  205. package/dist/commands/doctor-security.js +7 -7
  206. package/dist/commands/doctor-state-integrity.js +9 -7
  207. package/dist/commands/doctor-state-migrations.js +1 -1
  208. package/dist/commands/doctor-ui.js +2 -2
  209. package/dist/commands/doctor-update.js +5 -5
  210. package/dist/commands/doctor-workspace-status.js +2 -2
  211. package/dist/commands/doctor-workspace.js +5 -27
  212. package/dist/commands/doctor.js +11 -11
  213. package/dist/commands/gateway-status/helpers.js +2 -2
  214. package/dist/commands/gateway-status.js +9 -3
  215. package/dist/commands/health.js +2 -2
  216. package/dist/commands/models/auth.js +1 -1
  217. package/dist/commands/models/list.probe.js +2 -2
  218. package/dist/commands/models/list.registry.js +4 -4
  219. package/dist/commands/models/list.status-command.js +4 -4
  220. package/dist/commands/node-daemon-install-helpers.js +1 -1
  221. package/dist/commands/onboard-auth.config-core.js +65 -1
  222. package/dist/commands/onboard-auth.credentials.js +14 -2
  223. package/dist/commands/onboard-auth.js +2 -2
  224. package/dist/commands/onboard-channels.js +5 -5
  225. package/dist/commands/onboard-helpers.js +9 -8
  226. package/dist/commands/onboard-hooks.js +4 -4
  227. package/dist/commands/onboard-non-interactive/local/auth-choice.js +21 -1
  228. package/dist/commands/onboard-non-interactive/local.js +1 -1
  229. package/dist/commands/onboard-non-interactive/remote.js +1 -1
  230. package/dist/commands/onboard-non-interactive.js +1 -1
  231. package/dist/commands/onboard-remote.js +7 -3
  232. package/dist/commands/onboard-skills.js +2 -2
  233. package/dist/commands/onboard.js +3 -3
  234. package/dist/commands/onboarding/plugin-install.js +2 -2
  235. package/dist/commands/reset.js +3 -3
  236. package/dist/commands/sandbox-display.js +1 -1
  237. package/dist/commands/sandbox-explain.js +2 -2
  238. package/dist/commands/setup.js +9 -7
  239. package/dist/commands/signal-install.js +2 -2
  240. package/dist/commands/status-all/diagnosis.js +1 -1
  241. package/dist/commands/status-all/report-lines.js +1 -1
  242. package/dist/commands/status-all.js +5 -5
  243. package/dist/commands/status.command.js +9 -9
  244. package/dist/commands/status.gateway-probe.js +2 -2
  245. package/dist/commands/status.scan.js +2 -2
  246. package/dist/commands/status.update.js +3 -3
  247. package/dist/commands/uninstall.js +4 -4
  248. package/dist/compat/legacy-names.js +8 -6
  249. package/dist/config/config.js +1 -1
  250. package/dist/config/io.js +13 -14
  251. package/dist/config/paths.js +107 -33
  252. package/dist/config/schema.js +14 -12
  253. package/dist/config/sessions/store.js +1 -1
  254. package/dist/config/sessions/transcript.js +1 -1
  255. package/dist/config/types.js +1 -1
  256. package/dist/config/validation.js +2 -2
  257. package/dist/config/version.js +4 -4
  258. package/dist/config/zod-schema.agent-runtime.js +1 -0
  259. package/dist/config/zod-schema.js +3 -2
  260. package/dist/config/zod-schema.session.js +6 -1
  261. package/dist/control-ui/apple-touch-icon.png +0 -0
  262. package/dist/control-ui/assets/index-BKPyesll.css +1 -0
  263. package/dist/control-ui/assets/{index-CxLFx0Ae.js → index-DFDgq9AK.js} +397 -366
  264. package/dist/control-ui/assets/index-DFDgq9AK.js.map +1 -0
  265. package/dist/control-ui/favicon-32.png +0 -0
  266. package/dist/control-ui/favicon.svg +22 -0
  267. package/dist/control-ui/index.html +7 -5
  268. package/dist/daemon/constants.js +19 -25
  269. package/dist/daemon/inspect.js +64 -28
  270. package/dist/daemon/launchd.js +7 -7
  271. package/dist/daemon/node-service.js +14 -14
  272. package/dist/daemon/paths.js +3 -3
  273. package/dist/daemon/program-args.js +1 -1
  274. package/dist/daemon/schtasks.js +6 -6
  275. package/dist/daemon/service-env.js +25 -21
  276. package/dist/daemon/systemd-hints.js +1 -1
  277. package/dist/daemon/systemd-unit.js +1 -1
  278. package/dist/daemon/systemd.js +6 -6
  279. package/dist/discord/send.outbound.js +4 -4
  280. package/dist/discord/send.shared.js +32 -1
  281. package/dist/discord/targets.js +79 -0
  282. package/dist/entry.js +9 -8
  283. package/dist/gateway/auth.js +6 -3
  284. package/dist/gateway/call.js +3 -1
  285. package/dist/gateway/control-ui.js +4 -4
  286. package/dist/gateway/hooks.js +3 -1
  287. package/dist/gateway/http-utils.js +5 -3
  288. package/dist/gateway/openai-http.js +3 -3
  289. package/dist/gateway/openresponses-http.js +4 -4
  290. package/dist/gateway/protocol/client-info.js +5 -5
  291. package/dist/gateway/server/ws-connection/message-handler.js +1 -1
  292. package/dist/gateway/server-browser.js +2 -2
  293. package/dist/gateway/server-constants.js +2 -2
  294. package/dist/gateway/server-cron.js +1 -1
  295. package/dist/gateway/server-discovery-runtime.js +12 -4
  296. package/dist/gateway/server-discovery.js +7 -7
  297. package/dist/gateway/server-http.js +1 -1
  298. package/dist/gateway/server-methods/config.js +2 -2
  299. package/dist/gateway/server-methods/logs.js +1 -1
  300. package/dist/gateway/server-methods/update.js +2 -2
  301. package/dist/gateway/server-plugins.js +2 -2
  302. package/dist/gateway/server-reload-handlers.js +5 -5
  303. package/dist/gateway/server-runtime-config.js +3 -3
  304. package/dist/gateway/server-startup.js +6 -6
  305. package/dist/gateway/server.impl.js +8 -7
  306. package/dist/gateway/session-utils.fs.js +2 -1
  307. package/dist/gateway/test-helpers.mocks.js +8 -6
  308. package/dist/gateway/test-helpers.server.js +28 -28
  309. package/dist/gateway/tools-invoke-http.js +40 -4
  310. package/dist/hooks/bundled/boot-md/HOOK.md +3 -3
  311. package/dist/hooks/bundled/command-logger/HOOK.md +12 -12
  312. package/dist/hooks/bundled/command-logger/handler.js +2 -1
  313. package/dist/hooks/bundled/session-memory/HOOK.md +30 -7
  314. package/dist/hooks/bundled/session-memory/handler.js +19 -12
  315. package/dist/hooks/bundled/soul-evil/HOOK.md +5 -5
  316. package/dist/hooks/bundled-dir.js +2 -2
  317. package/dist/hooks/config.js +1 -1
  318. package/dist/hooks/frontmatter.js +11 -3
  319. package/dist/hooks/gmail-ops.js +1 -1
  320. package/dist/hooks/gmail-watcher.js +1 -1
  321. package/dist/hooks/hooks-status.js +2 -2
  322. package/dist/hooks/install.js +8 -8
  323. package/dist/hooks/internal-hooks.js +1 -1
  324. package/dist/hooks/llm-slug-generator.js +1 -1
  325. package/dist/hooks/loader.js +1 -1
  326. package/dist/hooks/plugin-hooks.js +2 -2
  327. package/dist/hooks/workspace.js +9 -9
  328. package/dist/imessage/monitor/monitor-provider.js +2 -2
  329. package/dist/index.js +4 -4
  330. package/dist/infra/bonjour-discovery.js +21 -17
  331. package/dist/infra/bonjour.js +10 -9
  332. package/dist/infra/device-identity.js +1 -1
  333. package/dist/infra/diagnostic-flags.js +1 -1
  334. package/dist/infra/dotenv.js +1 -1
  335. package/dist/infra/exec-approvals.js +2 -2
  336. package/dist/infra/gateway-lock.js +3 -2
  337. package/dist/infra/machine-name.js +1 -1
  338. package/dist/infra/{moltbot-root.js → openclaw-root.js} +2 -2
  339. package/dist/infra/outbound/outbound-session.js +18 -0
  340. package/dist/infra/outbound/targets.js +1 -1
  341. package/dist/infra/path-env.js +10 -9
  342. package/dist/infra/ports-format.js +3 -2
  343. package/dist/infra/ports.js +2 -2
  344. package/dist/infra/provider-usage.auth.js +33 -0
  345. package/dist/infra/provider-usage.fetch.claude.js +1 -1
  346. package/dist/infra/provider-usage.fetch.minimax.js +1 -1
  347. package/dist/infra/provider-usage.load.js +6 -0
  348. package/dist/infra/provider-usage.shared.js +2 -0
  349. package/dist/infra/restart-sentinel.js +1 -1
  350. package/dist/infra/restart.js +4 -4
  351. package/dist/infra/runtime-guard.js +2 -2
  352. package/dist/infra/shell-env.js +4 -4
  353. package/dist/infra/ssh-config.js +2 -1
  354. package/dist/infra/ssh-tunnel.js +8 -1
  355. package/dist/infra/state-migrations.js +165 -6
  356. package/dist/infra/system-presence.js +1 -1
  357. package/dist/infra/tailscale.js +1 -1
  358. package/dist/infra/tls/gateway.js +1 -1
  359. package/dist/infra/unhandled-rejections.js +56 -33
  360. package/dist/infra/update-check.js +1 -1
  361. package/dist/infra/update-global.js +21 -11
  362. package/dist/infra/update-runner.js +7 -7
  363. package/dist/infra/update-startup.js +3 -3
  364. package/dist/infra/voicewake.js +1 -1
  365. package/dist/infra/warnings.js +1 -1
  366. package/dist/infra/widearea-dns.js +31 -14
  367. package/dist/logging/logger.js +4 -4
  368. package/dist/macos/gateway-daemon.js +9 -6
  369. package/dist/macos/relay-smoke.js +1 -1
  370. package/dist/macos/relay.js +6 -6
  371. package/dist/media/host.js +1 -1
  372. package/dist/media/image-ops.js +3 -3
  373. package/dist/media/input-files.js +1 -1
  374. package/dist/media/mime.js +3 -0
  375. package/dist/media-understanding/apply.js +278 -1
  376. package/dist/media-understanding/attachments.js +1 -1
  377. package/dist/media-understanding/providers/image.js +2 -2
  378. package/dist/media-understanding/runner.js +1 -1
  379. package/dist/memory/batch-gemini.js +2 -2
  380. package/dist/memory/batch-openai.js +1 -1
  381. package/dist/memory/embeddings-gemini.js +1 -1
  382. package/dist/memory/embeddings.js +1 -1
  383. package/dist/memory/internal.js +49 -16
  384. package/dist/memory/manager-cache-key.js +1 -0
  385. package/dist/memory/manager.js +62 -10
  386. package/dist/memory/sync-memory-files.js +1 -1
  387. package/dist/node-host/runner.js +6 -6
  388. package/dist/pairing/pairing-messages.js +2 -2
  389. package/dist/plugins/bundled-dir.js +1 -1
  390. package/dist/plugins/cli.js +2 -2
  391. package/dist/plugins/config-state.js +60 -0
  392. package/dist/plugins/discovery.js +14 -12
  393. package/dist/plugins/install.js +8 -8
  394. package/dist/plugins/loader.js +4 -7
  395. package/dist/plugins/manifest-registry.js +4 -4
  396. package/dist/plugins/manifest.js +4 -7
  397. package/dist/plugins/providers.js +2 -2
  398. package/dist/plugins/registry.js +2 -2
  399. package/dist/plugins/runtime.js +1 -1
  400. package/dist/plugins/status.js +2 -2
  401. package/dist/plugins/tools.js +2 -2
  402. package/dist/plugins/update.js +3 -3
  403. package/dist/providers/qwen-portal-oauth.js +1 -1
  404. package/dist/routing/resolve-route.js +2 -0
  405. package/dist/routing/session-key.js +5 -0
  406. package/dist/security/audit-extra.js +2 -2
  407. package/dist/security/audit.js +7 -7
  408. package/dist/shared/text/reasoning-tags.js +44 -3
  409. package/dist/slack/monitor/commands.js +4 -3
  410. package/dist/slack/monitor/slash.js +62 -59
  411. package/dist/slack/monitor.test-helpers.js +1 -1
  412. package/dist/telegram/accounts.js +1 -1
  413. package/dist/telegram/bot/delivery.js +26 -3
  414. package/dist/telegram/bot/helpers.js +13 -2
  415. package/dist/telegram/bot-message-context.js +8 -4
  416. package/dist/telegram/bot-message-dispatch.js +36 -5
  417. package/dist/telegram/bot-native-commands.js +50 -11
  418. package/dist/telegram/bot.js +7 -5
  419. package/dist/telegram/download.js +1 -1
  420. package/dist/telegram/monitor.js +19 -1
  421. package/dist/telegram/network-config.js +2 -2
  422. package/dist/telegram/network-errors.js +4 -0
  423. package/dist/terminal/links.js +1 -1
  424. package/dist/tts/tts.js +12 -6
  425. package/dist/tui/gateway-chat.js +3 -3
  426. package/dist/tui/tui.js +1 -1
  427. package/dist/utils.js +12 -3
  428. package/dist/version.js +3 -3
  429. package/dist/web/active-listener.js +1 -1
  430. package/dist/web/auth-store.js +1 -1
  431. package/dist/web/auto-reply/monitor/broadcast.js +2 -0
  432. package/dist/web/auto-reply/monitor/process-message.js +1 -1
  433. package/dist/web/auto-reply/monitor.js +1 -1
  434. package/dist/web/login.js +1 -1
  435. package/dist/web/session.js +2 -2
  436. package/dist/wizard/onboarding.finalize.js +24 -21
  437. package/dist/wizard/onboarding.gateway-config.js +1 -1
  438. package/dist/wizard/onboarding.js +11 -11
  439. package/docs/CNAME +1 -1
  440. package/docs/_config.yml +3 -3
  441. package/docs/_layouts/default.html +9 -9
  442. package/docs/assets/openclaw-logo-text-dark.png +0 -0
  443. package/docs/assets/openclaw-logo-text.png +0 -0
  444. package/docs/assets/theme.js +1 -1
  445. package/docs/automation/auth-monitoring.md +7 -7
  446. package/docs/automation/cron-jobs.md +19 -19
  447. package/docs/automation/cron-vs-heartbeat.md +7 -7
  448. package/docs/automation/gmail-pubsub.md +25 -25
  449. package/docs/automation/poll.md +7 -7
  450. package/docs/automation/webhook.md +5 -5
  451. package/docs/bedrock.md +10 -10
  452. package/docs/brave-search.md +1 -1
  453. package/docs/broadcast-groups.md +6 -6
  454. package/docs/channels/bluebubbles.md +12 -12
  455. package/docs/channels/discord.md +15 -15
  456. package/docs/channels/googlechat.md +16 -16
  457. package/docs/channels/imessage.md +13 -13
  458. package/docs/channels/index.md +4 -4
  459. package/docs/channels/line.md +6 -6
  460. package/docs/channels/location.md +1 -1
  461. package/docs/channels/matrix.md +14 -14
  462. package/docs/channels/mattermost.md +8 -8
  463. package/docs/channels/msteams.md +26 -26
  464. package/docs/channels/nextcloud-talk.md +7 -7
  465. package/docs/channels/nostr.md +9 -9
  466. package/docs/channels/signal.md +9 -9
  467. package/docs/channels/slack.md +16 -16
  468. package/docs/channels/telegram.md +23 -23
  469. package/docs/channels/tlon.md +5 -5
  470. package/docs/channels/troubleshooting.md +2 -2
  471. package/docs/channels/twitch.md +14 -14
  472. package/docs/channels/whatsapp.md +26 -26
  473. package/docs/channels/zalo.md +8 -8
  474. package/docs/channels/zalouser.md +12 -12
  475. package/docs/cli/acp.md +24 -24
  476. package/docs/cli/agent.md +6 -6
  477. package/docs/cli/agents.md +12 -12
  478. package/docs/cli/approvals.md +14 -14
  479. package/docs/cli/browser.md +24 -24
  480. package/docs/cli/channels.md +21 -21
  481. package/docs/cli/config.md +15 -15
  482. package/docs/cli/configure.md +6 -6
  483. package/docs/cli/cron.md +5 -5
  484. package/docs/cli/dashboard.md +4 -4
  485. package/docs/cli/devices.md +13 -13
  486. package/docs/cli/directory.md +12 -12
  487. package/docs/cli/dns.md +5 -6
  488. package/docs/cli/docs.md +5 -5
  489. package/docs/cli/doctor.md +11 -11
  490. package/docs/cli/gateway.md +26 -26
  491. package/docs/cli/health.md +5 -5
  492. package/docs/cli/hooks.md +35 -35
  493. package/docs/cli/index.md +42 -42
  494. package/docs/cli/logs.md +6 -6
  495. package/docs/cli/memory.md +12 -11
  496. package/docs/cli/message.md +11 -11
  497. package/docs/cli/models.md +15 -15
  498. package/docs/cli/node.md +14 -14
  499. package/docs/cli/nodes.md +14 -14
  500. package/docs/cli/onboard.md +7 -7
  501. package/docs/cli/pairing.md +4 -4
  502. package/docs/cli/plugins.md +16 -16
  503. package/docs/cli/reset.md +5 -5
  504. package/docs/cli/sandbox.md +28 -28
  505. package/docs/cli/security.md +6 -6
  506. package/docs/cli/sessions.md +5 -5
  507. package/docs/cli/setup.md +6 -6
  508. package/docs/cli/skills.md +6 -6
  509. package/docs/cli/status.md +7 -7
  510. package/docs/cli/system.md +6 -6
  511. package/docs/cli/tui.md +5 -5
  512. package/docs/cli/uninstall.md +5 -5
  513. package/docs/cli/update.md +20 -20
  514. package/docs/cli/voicecall.md +9 -9
  515. package/docs/cli/webhooks.md +5 -5
  516. package/docs/concepts/agent-loop.md +5 -5
  517. package/docs/concepts/agent-workspace.md +27 -27
  518. package/docs/concepts/agent.md +12 -12
  519. package/docs/concepts/architecture.md +2 -2
  520. package/docs/concepts/channel-routing.md +5 -5
  521. package/docs/concepts/compaction.md +5 -5
  522. package/docs/concepts/context.md +6 -6
  523. package/docs/concepts/group-messages.md +7 -7
  524. package/docs/concepts/groups.md +5 -5
  525. package/docs/concepts/markdown-formatting.md +3 -3
  526. package/docs/concepts/memory.md +41 -19
  527. package/docs/concepts/messages.md +4 -4
  528. package/docs/concepts/model-failover.md +14 -14
  529. package/docs/concepts/model-providers.md +25 -24
  530. package/docs/concepts/models.md +27 -27
  531. package/docs/concepts/multi-agent.md +31 -31
  532. package/docs/concepts/oauth.md +22 -22
  533. package/docs/concepts/presence.md +2 -2
  534. package/docs/concepts/retry.md +1 -1
  535. package/docs/concepts/session-pruning.md +1 -1
  536. package/docs/concepts/session-tool.md +4 -4
  537. package/docs/concepts/session.md +18 -16
  538. package/docs/concepts/streaming.md +3 -3
  539. package/docs/concepts/system-prompt.md +11 -11
  540. package/docs/concepts/timezone.md +2 -2
  541. package/docs/concepts/typebox.md +3 -3
  542. package/docs/concepts/typing-indicators.md +2 -2
  543. package/docs/concepts/usage-tracking.md +3 -3
  544. package/docs/date-time.md +2 -2
  545. package/docs/debug/node-issue.md +6 -6
  546. package/docs/debugging.md +18 -18
  547. package/docs/diagnostics/flags.md +7 -7
  548. package/docs/docs.json +21 -5
  549. package/docs/environment.md +7 -7
  550. package/docs/experiments/plans/cron-add-hardening.md +1 -1
  551. package/docs/experiments/plans/openresponses-gateway.md +2 -2
  552. package/docs/experiments/research/memory.md +12 -12
  553. package/docs/gateway/authentication.md +22 -22
  554. package/docs/gateway/background-process.md +2 -2
  555. package/docs/gateway/bonjour.md +25 -25
  556. package/docs/gateway/bridge-protocol.md +2 -2
  557. package/docs/gateway/cli-backends.md +12 -12
  558. package/docs/gateway/configuration-examples.md +26 -25
  559. package/docs/gateway/configuration.md +155 -153
  560. package/docs/gateway/discovery.md +10 -10
  561. package/docs/gateway/doctor.md +27 -27
  562. package/docs/gateway/gateway-lock.md +1 -1
  563. package/docs/gateway/health.md +11 -11
  564. package/docs/gateway/heartbeat.md +5 -5
  565. package/docs/gateway/index.md +63 -63
  566. package/docs/gateway/local-models.md +2 -2
  567. package/docs/gateway/logging.md +8 -8
  568. package/docs/gateway/multiple-gateways.md +24 -24
  569. package/docs/gateway/openai-http-api.md +12 -12
  570. package/docs/gateway/openresponses-http-api.md +12 -12
  571. package/docs/gateway/pairing.md +9 -9
  572. package/docs/gateway/protocol.md +4 -4
  573. package/docs/gateway/remote-gateway-readme.md +10 -10
  574. package/docs/gateway/remote.md +4 -4
  575. package/docs/gateway/sandbox-vs-tool-policy-vs-elevated.md +7 -7
  576. package/docs/gateway/sandboxing.md +6 -6
  577. package/docs/gateway/security/formal-verification.md +67 -14
  578. package/docs/gateway/security/index.md +56 -59
  579. package/docs/gateway/tailscale.md +10 -10
  580. package/docs/gateway/tools-invoke-http-api.md +5 -5
  581. package/docs/gateway/troubleshooting.md +112 -112
  582. package/docs/help/faq.md +338 -338
  583. package/docs/help/troubleshooting.md +16 -16
  584. package/docs/hooks/soul-evil.md +2 -2
  585. package/docs/hooks.md +62 -62
  586. package/docs/index.md +45 -36
  587. package/docs/install/ansible.md +35 -35
  588. package/docs/install/development-channels.md +10 -10
  589. package/docs/install/docker.md +45 -45
  590. package/docs/install/index.md +33 -33
  591. package/docs/install/installer.md +24 -24
  592. package/docs/install/migrating.md +36 -36
  593. package/docs/install/nix.md +18 -18
  594. package/docs/install/node.md +4 -4
  595. package/docs/install/uninstall.md +29 -29
  596. package/docs/install/updating.md +51 -51
  597. package/docs/logging.md +59 -59
  598. package/docs/multi-agent-sandbox-tools.md +15 -15
  599. package/docs/network.md +1 -1
  600. package/docs/nodes/audio.md +2 -2
  601. package/docs/nodes/camera.md +18 -18
  602. package/docs/nodes/images.md +4 -4
  603. package/docs/nodes/index.md +57 -57
  604. package/docs/nodes/location-command.md +2 -2
  605. package/docs/nodes/media-understanding.md +5 -5
  606. package/docs/nodes/talk.md +1 -1
  607. package/docs/nodes/voicewake.md +3 -3
  608. package/docs/northflank.mdx +9 -9
  609. package/docs/perplexity.md +2 -2
  610. package/docs/platforms/android.md +14 -14
  611. package/docs/platforms/digitalocean.md +26 -26
  612. package/docs/platforms/exe-dev.md +68 -130
  613. package/docs/platforms/fly.md +33 -33
  614. package/docs/platforms/gcp.md +58 -58
  615. package/docs/platforms/hetzner.md +45 -45
  616. package/docs/platforms/index.md +8 -8
  617. package/docs/platforms/ios.md +13 -13
  618. package/docs/platforms/linux.md +11 -11
  619. package/docs/platforms/mac/bundled-gateway.md +14 -14
  620. package/docs/platforms/mac/canvas.md +14 -14
  621. package/docs/platforms/mac/child-process.md +5 -5
  622. package/docs/platforms/mac/dev-setup.md +10 -10
  623. package/docs/platforms/mac/health.md +2 -2
  624. package/docs/platforms/mac/icon.md +1 -1
  625. package/docs/platforms/mac/logging.md +4 -4
  626. package/docs/platforms/mac/menu-bar.md +1 -1
  627. package/docs/platforms/mac/peekaboo.md +9 -9
  628. package/docs/platforms/mac/permissions.md +1 -1
  629. package/docs/platforms/mac/release.md +18 -18
  630. package/docs/platforms/mac/remote.md +14 -14
  631. package/docs/platforms/mac/signing.md +7 -7
  632. package/docs/platforms/mac/skills.md +4 -4
  633. package/docs/platforms/mac/webchat.md +1 -1
  634. package/docs/platforms/mac/xpc.md +4 -4
  635. package/docs/platforms/macos-vm.md +27 -27
  636. package/docs/platforms/macos.md +16 -16
  637. package/docs/platforms/oracle.md +35 -35
  638. package/docs/platforms/raspberry-pi.md +22 -22
  639. package/docs/platforms/windows.md +11 -11
  640. package/docs/plugin.md +65 -65
  641. package/docs/plugins/agent-tools.md +1 -1
  642. package/docs/plugins/manifest.md +4 -4
  643. package/docs/plugins/voice-call.md +12 -12
  644. package/docs/plugins/zalouser.md +9 -9
  645. package/docs/prose.md +9 -9
  646. package/docs/providers/anthropic.md +16 -16
  647. package/docs/providers/claude-max-api-proxy.md +4 -4
  648. package/docs/providers/deepgram.md +2 -2
  649. package/docs/providers/github-copilot.md +11 -11
  650. package/docs/providers/glm.md +4 -4
  651. package/docs/providers/index.md +4 -3
  652. package/docs/providers/minimax.md +9 -9
  653. package/docs/providers/models.md +3 -3
  654. package/docs/providers/moonshot.md +15 -4
  655. package/docs/providers/ollama.md +11 -11
  656. package/docs/providers/openai.md +6 -6
  657. package/docs/providers/opencode.md +3 -3
  658. package/docs/providers/openrouter.md +3 -3
  659. package/docs/providers/qwen.md +6 -6
  660. package/docs/providers/synthetic.md +4 -4
  661. package/docs/providers/venice.md +23 -23
  662. package/docs/providers/vercel-ai-gateway.md +4 -4
  663. package/docs/providers/xiaomi.md +62 -0
  664. package/docs/providers/zai.md +5 -5
  665. package/docs/railway.mdx +8 -8
  666. package/docs/refactor/exec-host.md +5 -5
  667. package/docs/refactor/plugin-sdk.md +12 -12
  668. package/docs/refactor/strict-config.md +11 -11
  669. package/docs/reference/AGENTS.default.md +17 -17
  670. package/docs/reference/RELEASING.md +29 -29
  671. package/docs/reference/api-usage-costs.md +6 -6
  672. package/docs/reference/device-models.md +7 -7
  673. package/docs/reference/rpc.md +3 -3
  674. package/docs/reference/session-management-compaction.md +19 -19
  675. package/docs/reference/templates/AGENTS.dev.md +1 -1
  676. package/docs/reference/templates/BOOT.md +1 -1
  677. package/docs/reference/templates/IDENTITY.md +1 -1
  678. package/docs/reference/templates/TOOLS.dev.md +1 -1
  679. package/docs/reference/templates/USER.dev.md +2 -2
  680. package/docs/reference/test.md +2 -2
  681. package/docs/reference/transcript-hygiene.md +1 -1
  682. package/docs/render.mdx +13 -13
  683. package/docs/scripts.md +1 -1
  684. package/docs/security/formal-verification.md +66 -13
  685. package/docs/start/getting-started.md +29 -29
  686. package/docs/start/hubs.md +2 -2
  687. package/docs/start/lore.md +14 -14
  688. package/docs/start/onboarding.md +7 -7
  689. package/docs/start/{clawd.md → openclaw.md} +35 -35
  690. package/docs/start/pairing.md +10 -10
  691. package/docs/start/setup.md +22 -22
  692. package/docs/start/showcase.md +32 -32
  693. package/docs/start/wizard.md +30 -30
  694. package/docs/testing.md +56 -56
  695. package/docs/token-use.md +7 -7
  696. package/docs/tools/agent-send.md +10 -10
  697. package/docs/tools/browser-linux-troubleshooting.md +16 -16
  698. package/docs/tools/browser-login.md +6 -6
  699. package/docs/tools/browser.md +126 -126
  700. package/docs/tools/chrome-extension.md +17 -17
  701. package/docs/tools/clawdhub.md +7 -7
  702. package/docs/tools/creating-skills.md +6 -6
  703. package/docs/tools/exec-approvals.md +5 -5
  704. package/docs/tools/exec.md +4 -4
  705. package/docs/tools/firecrawl.md +2 -2
  706. package/docs/tools/index.md +13 -13
  707. package/docs/tools/llm-task.md +2 -2
  708. package/docs/tools/lobster.md +13 -13
  709. package/docs/tools/skills-config.md +2 -2
  710. package/docs/tools/skills.md +31 -31
  711. package/docs/tools/slash-commands.md +8 -8
  712. package/docs/tools/web.md +8 -8
  713. package/docs/tts.md +11 -11
  714. package/docs/tui.md +7 -7
  715. package/docs/vps.md +1 -1
  716. package/docs/web/control-ui.md +8 -8
  717. package/docs/web/dashboard.md +6 -6
  718. package/docs/web/index.md +5 -5
  719. package/extensions/bluebubbles/index.ts +3 -3
  720. package/extensions/bluebubbles/package.json +5 -5
  721. package/extensions/bluebubbles/src/accounts.ts +9 -9
  722. package/extensions/bluebubbles/src/actions.test.ts +22 -22
  723. package/extensions/bluebubbles/src/actions.ts +6 -6
  724. package/extensions/bluebubbles/src/attachments.ts +2 -2
  725. package/extensions/bluebubbles/src/channel.ts +17 -17
  726. package/extensions/bluebubbles/src/chat.ts +2 -2
  727. package/extensions/bluebubbles/src/config-schema.ts +1 -1
  728. package/extensions/bluebubbles/src/media-send.ts +2 -2
  729. package/extensions/bluebubbles/src/monitor.test.ts +48 -48
  730. package/extensions/bluebubbles/src/monitor.ts +6 -6
  731. package/extensions/bluebubbles/src/onboarding.ts +9 -9
  732. package/extensions/bluebubbles/src/reactions.ts +2 -2
  733. package/extensions/bluebubbles/src/runtime.ts +1 -1
  734. package/extensions/bluebubbles/src/send.ts +2 -2
  735. package/extensions/copilot-proxy/README.md +3 -3
  736. package/extensions/copilot-proxy/index.ts +1 -1
  737. package/extensions/copilot-proxy/package.json +4 -4
  738. package/extensions/diagnostics-otel/index.ts +3 -3
  739. package/extensions/diagnostics-otel/package.json +4 -4
  740. package/extensions/diagnostics-otel/src/service.test.ts +15 -15
  741. package/extensions/diagnostics-otel/src/service.ts +85 -85
  742. package/extensions/discord/index.ts +3 -3
  743. package/extensions/discord/package.json +4 -4
  744. package/extensions/discord/src/channel.ts +1 -1
  745. package/extensions/discord/src/runtime.ts +1 -1
  746. package/extensions/google-antigravity-auth/README.md +3 -3
  747. package/extensions/google-antigravity-auth/index.ts +2 -2
  748. package/extensions/google-antigravity-auth/package.json +4 -4
  749. package/extensions/google-gemini-cli-auth/README.md +5 -5
  750. package/extensions/google-gemini-cli-auth/index.ts +3 -3
  751. package/extensions/google-gemini-cli-auth/oauth.ts +4 -4
  752. package/extensions/google-gemini-cli-auth/package.json +4 -4
  753. package/extensions/googlechat/index.ts +4 -4
  754. package/extensions/googlechat/node_modules/.bin/openclaw +16 -0
  755. package/extensions/googlechat/node_modules/.bin/openclaw.CMD +7 -0
  756. package/extensions/googlechat/node_modules/.bin/openclaw.ps1 +28 -0
  757. package/extensions/googlechat/package.json +7 -7
  758. package/extensions/googlechat/src/accounts.ts +9 -9
  759. package/extensions/googlechat/src/actions.ts +8 -8
  760. package/extensions/googlechat/src/api.ts +1 -1
  761. package/extensions/googlechat/src/channel.ts +23 -23
  762. package/extensions/googlechat/src/monitor.ts +9 -9
  763. package/extensions/googlechat/src/onboarding.ts +11 -11
  764. package/extensions/googlechat/src/runtime.ts +1 -1
  765. package/extensions/googlechat/src/types.config.ts +1 -1
  766. package/extensions/imessage/index.ts +3 -3
  767. package/extensions/imessage/package.json +4 -4
  768. package/extensions/imessage/src/channel.ts +1 -1
  769. package/extensions/imessage/src/runtime.ts +1 -1
  770. package/extensions/line/index.ts +3 -3
  771. package/extensions/line/node_modules/.bin/openclaw +16 -0
  772. package/extensions/line/node_modules/.bin/openclaw.CMD +7 -0
  773. package/extensions/line/node_modules/.bin/openclaw.ps1 +28 -0
  774. package/extensions/line/package.json +6 -6
  775. package/extensions/line/src/card-command.ts +3 -3
  776. package/extensions/line/src/channel.logout.test.ts +4 -4
  777. package/extensions/line/src/channel.sendPayload.test.ts +8 -8
  778. package/extensions/line/src/channel.ts +5 -5
  779. package/extensions/line/src/runtime.ts +1 -1
  780. package/extensions/llm-task/README.md +4 -4
  781. package/extensions/llm-task/index.ts +2 -2
  782. package/extensions/llm-task/package.json +4 -4
  783. package/extensions/llm-task/src/llm-task-tool.ts +6 -6
  784. package/extensions/lobster/README.md +7 -7
  785. package/extensions/lobster/index.ts +2 -2
  786. package/extensions/lobster/package.json +3 -3
  787. package/extensions/lobster/src/lobster-tool.test.ts +7 -7
  788. package/extensions/lobster/src/lobster-tool.ts +2 -2
  789. package/extensions/matrix/CHANGELOG.md +14 -9
  790. package/extensions/matrix/index.ts +3 -3
  791. package/extensions/matrix/node_modules/.bin/markdown-it +0 -5
  792. package/extensions/matrix/node_modules/.bin/markdown-it.CMD +0 -5
  793. package/extensions/matrix/node_modules/.bin/markdown-it.ps1 +0 -13
  794. package/extensions/matrix/node_modules/.bin/openclaw +16 -0
  795. package/extensions/matrix/node_modules/.bin/openclaw.CMD +7 -0
  796. package/extensions/matrix/node_modules/.bin/openclaw.ps1 +28 -0
  797. package/extensions/matrix/package.json +6 -6
  798. package/extensions/matrix/src/actions.ts +1 -1
  799. package/extensions/matrix/src/channel.directory.test.ts +1 -1
  800. package/extensions/matrix/src/channel.ts +1 -1
  801. package/extensions/matrix/src/config-schema.ts +1 -1
  802. package/extensions/matrix/src/directory-live.ts +1 -1
  803. package/extensions/matrix/src/group-mentions.ts +1 -1
  804. package/extensions/matrix/src/matrix/accounts.ts +1 -1
  805. package/extensions/matrix/src/matrix/actions/client.ts +1 -1
  806. package/extensions/matrix/src/matrix/client/config.ts +1 -1
  807. package/extensions/matrix/src/matrix/deps.ts +1 -1
  808. package/extensions/matrix/src/matrix/monitor/allowlist.ts +1 -1
  809. package/extensions/matrix/src/matrix/monitor/auto-join.ts +1 -1
  810. package/extensions/matrix/src/matrix/monitor/events.ts +1 -1
  811. package/extensions/matrix/src/matrix/monitor/handler.ts +5 -5
  812. package/extensions/matrix/src/matrix/monitor/index.ts +1 -1
  813. package/extensions/matrix/src/matrix/monitor/location.ts +1 -1
  814. package/extensions/matrix/src/matrix/monitor/media.test.ts +1 -1
  815. package/extensions/matrix/src/matrix/monitor/replies.ts +1 -1
  816. package/extensions/matrix/src/matrix/monitor/rooms.ts +1 -1
  817. package/extensions/matrix/src/matrix/poll-types.ts +1 -1
  818. package/extensions/matrix/src/matrix/send/client.ts +1 -1
  819. package/extensions/matrix/src/matrix/send.test.ts +1 -1
  820. package/extensions/matrix/src/matrix/send.ts +1 -1
  821. package/extensions/matrix/src/onboarding.ts +2 -2
  822. package/extensions/matrix/src/outbound.ts +1 -1
  823. package/extensions/matrix/src/resolve-targets.ts +1 -1
  824. package/extensions/matrix/src/runtime.ts +1 -1
  825. package/extensions/matrix/src/tool-actions.ts +1 -1
  826. package/extensions/mattermost/index.ts +3 -3
  827. package/extensions/mattermost/package.json +5 -5
  828. package/extensions/mattermost/src/channel.ts +1 -1
  829. package/extensions/mattermost/src/config-schema.ts +1 -1
  830. package/extensions/mattermost/src/group-mentions.ts +1 -1
  831. package/extensions/mattermost/src/mattermost/accounts.ts +9 -9
  832. package/extensions/mattermost/src/mattermost/monitor-helpers.ts +5 -5
  833. package/extensions/mattermost/src/mattermost/monitor.ts +4 -4
  834. package/extensions/mattermost/src/onboarding-helpers.ts +4 -4
  835. package/extensions/mattermost/src/onboarding.ts +4 -4
  836. package/extensions/mattermost/src/runtime.ts +1 -1
  837. package/extensions/mattermost/src/types.ts +1 -1
  838. package/extensions/memory-core/index.ts +3 -3
  839. package/extensions/memory-core/node_modules/.bin/openclaw +16 -0
  840. package/extensions/memory-core/node_modules/.bin/openclaw.CMD +7 -0
  841. package/extensions/memory-core/node_modules/.bin/openclaw.ps1 +28 -0
  842. package/extensions/memory-core/package.json +6 -6
  843. package/extensions/memory-lancedb/config.ts +26 -2
  844. package/extensions/memory-lancedb/index.test.ts +3 -3
  845. package/extensions/memory-lancedb/index.ts +4 -4
  846. package/extensions/memory-lancedb/node_modules/.bin/openai +0 -5
  847. package/extensions/memory-lancedb/node_modules/.bin/openai.CMD +0 -5
  848. package/extensions/memory-lancedb/node_modules/.bin/openai.ps1 +0 -13
  849. package/extensions/memory-lancedb/{clawdbot.plugin.json → openclaw.plugin.json} +1 -1
  850. package/extensions/memory-lancedb/package.json +4 -4
  851. package/extensions/msteams/CHANGELOG.md +12 -7
  852. package/extensions/msteams/index.ts +3 -3
  853. package/extensions/msteams/node_modules/.bin/openclaw +16 -0
  854. package/extensions/msteams/node_modules/.bin/openclaw.CMD +7 -0
  855. package/extensions/msteams/node_modules/.bin/openclaw.ps1 +28 -0
  856. package/extensions/msteams/package.json +6 -6
  857. package/extensions/msteams/src/attachments.test.ts +1 -1
  858. package/extensions/msteams/src/channel.directory.test.ts +2 -2
  859. package/extensions/msteams/src/channel.ts +3 -3
  860. package/extensions/msteams/src/conversation-store-fs.test.ts +6 -5
  861. package/extensions/msteams/src/directory-live.ts +1 -1
  862. package/extensions/msteams/src/graph-upload.ts +4 -4
  863. package/extensions/msteams/src/media-helpers.ts +1 -1
  864. package/extensions/msteams/src/messenger.test.ts +1 -1
  865. package/extensions/msteams/src/messenger.ts +1 -1
  866. package/extensions/msteams/src/monitor-handler/message-handler.ts +1 -1
  867. package/extensions/msteams/src/monitor-handler.ts +2 -2
  868. package/extensions/msteams/src/monitor.ts +3 -3
  869. package/extensions/msteams/src/onboarding.ts +11 -11
  870. package/extensions/msteams/src/outbound.ts +1 -1
  871. package/extensions/msteams/src/policy.test.ts +1 -1
  872. package/extensions/msteams/src/policy.ts +2 -2
  873. package/extensions/msteams/src/polls-store.test.ts +1 -1
  874. package/extensions/msteams/src/polls.test.ts +6 -5
  875. package/extensions/msteams/src/polls.ts +9 -8
  876. package/extensions/msteams/src/probe.test.ts +1 -1
  877. package/extensions/msteams/src/probe.ts +1 -1
  878. package/extensions/msteams/src/reply-dispatcher.ts +3 -3
  879. package/extensions/msteams/src/runtime.ts +1 -1
  880. package/extensions/msteams/src/send-context.ts +2 -2
  881. package/extensions/msteams/src/send.ts +5 -5
  882. package/extensions/msteams/src/token.ts +1 -1
  883. package/extensions/nextcloud-talk/index.ts +3 -3
  884. package/extensions/nextcloud-talk/package.json +5 -5
  885. package/extensions/nextcloud-talk/src/accounts.ts +2 -2
  886. package/extensions/nextcloud-talk/src/channel.ts +8 -8
  887. package/extensions/nextcloud-talk/src/config-schema.ts +1 -1
  888. package/extensions/nextcloud-talk/src/inbound.ts +8 -8
  889. package/extensions/nextcloud-talk/src/monitor.ts +1 -1
  890. package/extensions/nextcloud-talk/src/onboarding.ts +2 -2
  891. package/extensions/nextcloud-talk/src/policy.ts +2 -2
  892. package/extensions/nextcloud-talk/src/room-info.ts +1 -1
  893. package/extensions/nextcloud-talk/src/runtime.ts +1 -1
  894. package/extensions/nextcloud-talk/src/types.ts +1 -1
  895. package/extensions/nostr/CHANGELOG.md +9 -4
  896. package/extensions/nostr/README.md +5 -5
  897. package/extensions/nostr/index.ts +6 -6
  898. package/extensions/nostr/node_modules/.bin/openclaw +16 -0
  899. package/extensions/nostr/node_modules/.bin/openclaw.CMD +7 -0
  900. package/extensions/nostr/node_modules/.bin/openclaw.ps1 +28 -0
  901. package/extensions/nostr/package.json +6 -6
  902. package/extensions/nostr/src/channel.ts +2 -2
  903. package/extensions/nostr/src/config-schema.ts +1 -1
  904. package/extensions/nostr/src/nostr-state-store.test.ts +9 -8
  905. package/extensions/nostr/src/runtime.ts +1 -1
  906. package/extensions/nostr/src/types.ts +4 -4
  907. package/extensions/open-prose/index.ts +2 -2
  908. package/extensions/open-prose/package.json +3 -3
  909. package/extensions/open-prose/skills/prose/SKILL.md +5 -5
  910. package/extensions/open-prose/skills/prose/prose.md +4 -4
  911. package/extensions/qwen-portal-auth/README.md +3 -3
  912. package/extensions/qwen-portal-auth/index.ts +1 -1
  913. package/extensions/signal/index.ts +3 -3
  914. package/extensions/signal/package.json +4 -4
  915. package/extensions/signal/src/channel.ts +1 -1
  916. package/extensions/signal/src/runtime.ts +1 -1
  917. package/extensions/slack/index.ts +3 -3
  918. package/extensions/slack/package.json +4 -4
  919. package/extensions/slack/src/channel.ts +1 -1
  920. package/extensions/slack/src/runtime.ts +1 -1
  921. package/extensions/telegram/index.ts +3 -3
  922. package/extensions/telegram/package.json +4 -4
  923. package/extensions/telegram/src/channel.ts +3 -3
  924. package/extensions/telegram/src/runtime.ts +1 -1
  925. package/extensions/tlon/README.md +3 -3
  926. package/extensions/tlon/index.ts +3 -3
  927. package/extensions/tlon/package.json +5 -5
  928. package/extensions/tlon/src/channel.ts +15 -15
  929. package/extensions/tlon/src/config-schema.ts +1 -1
  930. package/extensions/tlon/src/monitor/discovery.ts +1 -1
  931. package/extensions/tlon/src/monitor/history.ts +1 -1
  932. package/extensions/tlon/src/monitor/index.ts +3 -3
  933. package/extensions/tlon/src/onboarding.ts +4 -4
  934. package/extensions/tlon/src/runtime.ts +1 -1
  935. package/extensions/tlon/src/types.ts +3 -3
  936. package/extensions/twitch/CHANGELOG.md +6 -1
  937. package/extensions/twitch/README.md +8 -8
  938. package/extensions/twitch/index.ts +3 -3
  939. package/extensions/twitch/node_modules/.bin/openclaw +16 -0
  940. package/extensions/twitch/node_modules/.bin/openclaw.CMD +7 -0
  941. package/extensions/twitch/node_modules/.bin/openclaw.ps1 +28 -0
  942. package/extensions/twitch/package.json +5 -5
  943. package/extensions/twitch/src/actions.ts +1 -1
  944. package/extensions/twitch/src/config-schema.ts +1 -1
  945. package/extensions/twitch/src/config.ts +3 -3
  946. package/extensions/twitch/src/monitor.ts +3 -3
  947. package/extensions/twitch/src/onboarding.test.ts +1 -1
  948. package/extensions/twitch/src/onboarding.ts +13 -13
  949. package/extensions/twitch/src/outbound.test.ts +2 -2
  950. package/extensions/twitch/src/outbound.ts +2 -2
  951. package/extensions/twitch/src/plugin.test.ts +2 -2
  952. package/extensions/twitch/src/plugin.ts +9 -9
  953. package/extensions/twitch/src/runtime.ts +1 -1
  954. package/extensions/twitch/src/send.test.ts +2 -2
  955. package/extensions/twitch/src/send.ts +5 -5
  956. package/extensions/twitch/src/token.test.ts +12 -12
  957. package/extensions/twitch/src/token.ts +7 -7
  958. package/extensions/twitch/src/twitch-client.ts +4 -4
  959. package/extensions/twitch/src/types.ts +3 -3
  960. package/extensions/twitch/src/utils/markdown.ts +1 -1
  961. package/extensions/voice-call/CHANGELOG.md +16 -11
  962. package/extensions/voice-call/README.md +16 -16
  963. package/extensions/voice-call/package.json +4 -4
  964. package/extensions/voice-call/src/cli.ts +16 -4
  965. package/extensions/voice-call/src/core-bridge.ts +5 -5
  966. package/extensions/voice-call/src/manager.test.ts +2 -2
  967. package/extensions/voice-call/src/manager.ts +17 -5
  968. package/extensions/voice-call/src/response-generator.ts +1 -1
  969. package/extensions/whatsapp/index.ts +3 -3
  970. package/extensions/whatsapp/package.json +4 -4
  971. package/extensions/whatsapp/src/channel.ts +1 -1
  972. package/extensions/whatsapp/src/runtime.ts +1 -1
  973. package/extensions/zalo/CHANGELOG.md +14 -9
  974. package/extensions/zalo/README.md +4 -4
  975. package/extensions/zalo/index.ts +3 -3
  976. package/extensions/zalo/node_modules/.bin/openclaw +16 -0
  977. package/extensions/zalo/node_modules/.bin/openclaw.CMD +7 -0
  978. package/extensions/zalo/node_modules/.bin/openclaw.ps1 +28 -0
  979. package/extensions/zalo/package.json +6 -6
  980. package/extensions/zalo/src/accounts.ts +9 -9
  981. package/extensions/zalo/src/actions.ts +6 -6
  982. package/extensions/zalo/src/channel.directory.test.ts +2 -2
  983. package/extensions/zalo/src/channel.ts +20 -20
  984. package/extensions/zalo/src/config-schema.ts +1 -1
  985. package/extensions/zalo/src/monitor.ts +9 -9
  986. package/extensions/zalo/src/monitor.webhook.test.ts +2 -2
  987. package/extensions/zalo/src/onboarding.ts +27 -27
  988. package/extensions/zalo/src/runtime.ts +1 -1
  989. package/extensions/zalo/src/send.ts +2 -2
  990. package/extensions/zalo/src/status-issues.ts +1 -1
  991. package/extensions/zalo/src/token.ts +1 -1
  992. package/extensions/zalouser/CHANGELOG.md +9 -4
  993. package/extensions/zalouser/README.md +18 -18
  994. package/extensions/zalouser/index.ts +3 -3
  995. package/extensions/zalouser/node_modules/.bin/openclaw +16 -0
  996. package/extensions/zalouser/node_modules/.bin/openclaw.CMD +7 -0
  997. package/extensions/zalouser/node_modules/.bin/openclaw.ps1 +28 -0
  998. package/extensions/zalouser/package.json +6 -6
  999. package/extensions/zalouser/src/accounts.ts +10 -10
  1000. package/extensions/zalouser/src/channel.ts +27 -27
  1001. package/extensions/zalouser/src/config-schema.ts +1 -1
  1002. package/extensions/zalouser/src/monitor.ts +5 -5
  1003. package/extensions/zalouser/src/onboarding.ts +32 -32
  1004. package/extensions/zalouser/src/runtime.ts +1 -1
  1005. package/extensions/zalouser/src/status-issues.ts +2 -2
  1006. package/openclaw.mjs +14 -0
  1007. package/package.json +35 -25
  1008. package/scripts/postinstall.js +1 -0
  1009. package/skills/1password/SKILL.md +3 -3
  1010. package/skills/apple-notes/SKILL.md +2 -2
  1011. package/skills/apple-reminders/SKILL.md +1 -1
  1012. package/skills/bear-notes/SKILL.md +1 -1
  1013. package/skills/bird/SKILL.md +1 -1
  1014. package/skills/blogwatcher/SKILL.md +1 -1
  1015. package/skills/blucli/SKILL.md +1 -1
  1016. package/skills/bluebubbles/SKILL.md +1 -1
  1017. package/skills/camsnap/SKILL.md +1 -1
  1018. package/skills/canvas/SKILL.md +6 -6
  1019. package/skills/clawdhub/SKILL.md +2 -2
  1020. package/skills/coding-agent/SKILL.md +6 -6
  1021. package/skills/discord/SKILL.md +5 -5
  1022. package/skills/eightctl/SKILL.md +1 -1
  1023. package/skills/food-order/SKILL.md +1 -1
  1024. package/skills/gemini/SKILL.md +1 -1
  1025. package/skills/gifgrep/SKILL.md +1 -1
  1026. package/skills/github/SKILL.md +1 -1
  1027. package/skills/gog/SKILL.md +1 -1
  1028. package/skills/goplaces/SKILL.md +1 -1
  1029. package/skills/himalaya/SKILL.md +1 -1
  1030. package/skills/imsg/SKILL.md +1 -1
  1031. package/skills/local-places/SKILL.md +1 -1
  1032. package/skills/mcporter/SKILL.md +1 -1
  1033. package/skills/model-usage/SKILL.md +1 -1
  1034. package/skills/nano-banana-pro/SKILL.md +3 -3
  1035. package/skills/nano-banana-pro/scripts/generate_image.py +1 -1
  1036. package/skills/nano-pdf/SKILL.md +1 -1
  1037. package/skills/notion/SKILL.md +1 -1
  1038. package/skills/obsidian/SKILL.md +1 -1
  1039. package/skills/openai-image-gen/SKILL.md +1 -1
  1040. package/skills/openai-whisper/SKILL.md +1 -1
  1041. package/skills/openai-whisper-api/SKILL.md +2 -2
  1042. package/skills/openhue/SKILL.md +1 -1
  1043. package/skills/oracle/SKILL.md +1 -1
  1044. package/skills/ordercli/SKILL.md +1 -1
  1045. package/skills/peekaboo/SKILL.md +1 -1
  1046. package/skills/sag/SKILL.md +1 -1
  1047. package/skills/session-logs/SKILL.md +1 -1
  1048. package/skills/sherpa-onnx-tts/SKILL.md +2 -2
  1049. package/skills/slack/SKILL.md +4 -4
  1050. package/skills/songsee/SKILL.md +1 -1
  1051. package/skills/sonoscli/SKILL.md +1 -1
  1052. package/skills/spotify-player/SKILL.md +1 -1
  1053. package/skills/summarize/SKILL.md +1 -1
  1054. package/skills/things-mac/SKILL.md +3 -3
  1055. package/skills/tmux/SKILL.md +7 -7
  1056. package/skills/trello/SKILL.md +2 -2
  1057. package/skills/video-frames/SKILL.md +1 -1
  1058. package/skills/voice-call/SKILL.md +4 -4
  1059. package/skills/wacli/SKILL.md +2 -2
  1060. package/skills/weather/SKILL.md +1 -1
  1061. package/assets/images/icon.png +0 -0
  1062. package/dist/control-ui/assets/index-BAFzd9IE.css +0 -1
  1063. package/dist/control-ui/assets/index-CxLFx0Ae.js.map +0 -1
  1064. package/dist/control-ui/pixel_pig_icon.png +0 -0
  1065. package/dist/daemon/legacy.js +0 -44
  1066. package/dist/extension.js +0 -70
  1067. /package/dist/config/{types.clawdbot.js → types.openclaw.js} +0 -0
  1068. /package/docs/{whatsapp-clawd.jpg → whatsapp-openclaw.jpg} +0 -0
  1069. /package/extensions/bluebubbles/{clawdbot.plugin.json → openclaw.plugin.json} +0 -0
  1070. /package/extensions/copilot-proxy/{clawdbot.plugin.json → openclaw.plugin.json} +0 -0
  1071. /package/extensions/diagnostics-otel/{clawdbot.plugin.json → openclaw.plugin.json} +0 -0
  1072. /package/extensions/discord/{clawdbot.plugin.json → openclaw.plugin.json} +0 -0
  1073. /package/extensions/google-antigravity-auth/{clawdbot.plugin.json → openclaw.plugin.json} +0 -0
  1074. /package/extensions/google-gemini-cli-auth/{clawdbot.plugin.json → openclaw.plugin.json} +0 -0
  1075. /package/extensions/googlechat/{clawdbot.plugin.json → openclaw.plugin.json} +0 -0
  1076. /package/extensions/imessage/{clawdbot.plugin.json → openclaw.plugin.json} +0 -0
  1077. /package/extensions/line/{clawdbot.plugin.json → openclaw.plugin.json} +0 -0
  1078. /package/extensions/llm-task/{clawdbot.plugin.json → openclaw.plugin.json} +0 -0
  1079. /package/extensions/lobster/{clawdbot.plugin.json → openclaw.plugin.json} +0 -0
  1080. /package/extensions/matrix/{clawdbot.plugin.json → openclaw.plugin.json} +0 -0
  1081. /package/extensions/mattermost/{clawdbot.plugin.json → openclaw.plugin.json} +0 -0
  1082. /package/extensions/memory-core/{clawdbot.plugin.json → openclaw.plugin.json} +0 -0
  1083. /package/extensions/msteams/{clawdbot.plugin.json → openclaw.plugin.json} +0 -0
  1084. /package/extensions/nextcloud-talk/{clawdbot.plugin.json → openclaw.plugin.json} +0 -0
  1085. /package/extensions/nostr/{clawdbot.plugin.json → openclaw.plugin.json} +0 -0
  1086. /package/extensions/open-prose/{clawdbot.plugin.json → openclaw.plugin.json} +0 -0
  1087. /package/extensions/qwen-portal-auth/{clawdbot.plugin.json → openclaw.plugin.json} +0 -0
  1088. /package/extensions/signal/{clawdbot.plugin.json → openclaw.plugin.json} +0 -0
  1089. /package/extensions/slack/{clawdbot.plugin.json → openclaw.plugin.json} +0 -0
  1090. /package/extensions/telegram/{clawdbot.plugin.json → openclaw.plugin.json} +0 -0
  1091. /package/extensions/tlon/{clawdbot.plugin.json → openclaw.plugin.json} +0 -0
  1092. /package/extensions/twitch/{clawdbot.plugin.json → openclaw.plugin.json} +0 -0
  1093. /package/extensions/voice-call/{clawdbot.plugin.json → openclaw.plugin.json} +0 -0
  1094. /package/extensions/whatsapp/{clawdbot.plugin.json → openclaw.plugin.json} +0 -0
  1095. /package/extensions/zalo/{clawdbot.plugin.json → openclaw.plugin.json} +0 -0
  1096. /package/extensions/zalouser/{clawdbot.plugin.json → openclaw.plugin.json} +0 -0
Binary file
@@ -0,0 +1,22 @@
1
+ <svg viewBox="0 0 120 120" fill="none" xmlns="http://www.w3.org/2000/svg">
2
+ <defs>
3
+ <linearGradient id="lobster-gradient" x1="0%" y1="0%" x2="100%" y2="100%">
4
+ <stop offset="0%" stop-color="#ff4d4d"/>
5
+ <stop offset="100%" stop-color="#991b1b"/>
6
+ </linearGradient>
7
+ </defs>
8
+ <!-- Body -->
9
+ <path d="M60 10 C30 10 15 35 15 55 C15 75 30 95 45 100 L45 110 L55 110 L55 100 C55 100 60 102 65 100 L65 110 L75 110 L75 100 C90 95 105 75 105 55 C105 35 90 10 60 10Z" fill="url(#lobster-gradient)"/>
10
+ <!-- Left Claw -->
11
+ <path d="M20 45 C5 40 0 50 5 60 C10 70 20 65 25 55 C28 48 25 45 20 45Z" fill="url(#lobster-gradient)"/>
12
+ <!-- Right Claw -->
13
+ <path d="M100 45 C115 40 120 50 115 60 C110 70 100 65 95 55 C92 48 95 45 100 45Z" fill="url(#lobster-gradient)"/>
14
+ <!-- Antenna -->
15
+ <path d="M45 15 Q35 5 30 8" stroke="#ff4d4d" stroke-width="3" stroke-linecap="round"/>
16
+ <path d="M75 15 Q85 5 90 8" stroke="#ff4d4d" stroke-width="3" stroke-linecap="round"/>
17
+ <!-- Eyes -->
18
+ <circle cx="45" cy="35" r="6" fill="#050810"/>
19
+ <circle cx="75" cy="35" r="6" fill="#050810"/>
20
+ <circle cx="46" cy="34" r="2.5" fill="#00e5cc"/>
21
+ <circle cx="76" cy="34" r="2.5" fill="#00e5cc"/>
22
+ </svg>
@@ -3,13 +3,15 @@
3
3
  <head>
4
4
  <meta charset="UTF-8" />
5
5
  <meta name="viewport" content="width=device-width, initial-scale=1.0" />
6
- <title>Moltbot Control</title>
6
+ <title>OpenClaw Control</title>
7
7
  <meta name="color-scheme" content="dark light" />
8
- <link rel="icon" href="./favicon.ico" sizes="any" />
9
- <script type="module" crossorigin src="./assets/index-CxLFx0Ae.js"></script>
10
- <link rel="stylesheet" crossorigin href="./assets/index-BAFzd9IE.css">
8
+ <link rel="icon" type="image/svg+xml" href="./favicon.svg" />
9
+ <link rel="icon" type="image/png" sizes="32x32" href="./favicon-32.png" />
10
+ <link rel="apple-touch-icon" sizes="180x180" href="./apple-touch-icon.png" />
11
+ <script type="module" crossorigin src="./assets/index-DFDgq9AK.js"></script>
12
+ <link rel="stylesheet" crossorigin href="./assets/index-BKPyesll.css">
11
13
  </head>
12
14
  <body>
13
- <moltbot-app></moltbot-app>
15
+ <openclaw-app></openclaw-app>
14
16
  </body>
15
17
  </html>
@@ -1,19 +1,16 @@
1
- // Default service labels (for backward compatibility and when no profile specified)
2
- export const GATEWAY_LAUNCH_AGENT_LABEL = "bot.molt.gateway";
3
- export const GATEWAY_SYSTEMD_SERVICE_NAME = "moltbot-gateway";
4
- export const GATEWAY_WINDOWS_TASK_NAME = "Moltbot Gateway";
5
- export const GATEWAY_SERVICE_MARKER = "moltbot";
1
+ // Default service labels (canonical + legacy compatibility)
2
+ export const GATEWAY_LAUNCH_AGENT_LABEL = "ai.openclaw.gateway";
3
+ export const GATEWAY_SYSTEMD_SERVICE_NAME = "openclaw-gateway";
4
+ export const GATEWAY_WINDOWS_TASK_NAME = "OpenClaw Gateway";
5
+ export const GATEWAY_SERVICE_MARKER = "openclaw";
6
6
  export const GATEWAY_SERVICE_KIND = "gateway";
7
- export const NODE_LAUNCH_AGENT_LABEL = "bot.molt.node";
8
- export const NODE_SYSTEMD_SERVICE_NAME = "moltbot-node";
9
- export const NODE_WINDOWS_TASK_NAME = "Moltbot Node";
10
- export const NODE_SERVICE_MARKER = "moltbot";
7
+ export const NODE_LAUNCH_AGENT_LABEL = "ai.openclaw.node";
8
+ export const NODE_SYSTEMD_SERVICE_NAME = "openclaw-node";
9
+ export const NODE_WINDOWS_TASK_NAME = "OpenClaw Node";
10
+ export const NODE_SERVICE_MARKER = "openclaw";
11
11
  export const NODE_SERVICE_KIND = "node";
12
12
  export const NODE_WINDOWS_TASK_SCRIPT_NAME = "node.cmd";
13
- export const LEGACY_GATEWAY_LAUNCH_AGENT_LABELS = [
14
- "com.clawdbot.gateway",
15
- "com.steipete.clawdbot.gateway",
16
- ];
13
+ export const LEGACY_GATEWAY_LAUNCH_AGENT_LABELS = [];
17
14
  export const LEGACY_GATEWAY_SYSTEMD_SERVICE_NAMES = [];
18
15
  export const LEGACY_GATEWAY_WINDOWS_TASK_NAMES = [];
19
16
  export function normalizeGatewayProfile(profile) {
@@ -31,26 +28,23 @@ export function resolveGatewayLaunchAgentLabel(profile) {
31
28
  if (!normalized) {
32
29
  return GATEWAY_LAUNCH_AGENT_LABEL;
33
30
  }
34
- return `bot.molt.${normalized}`;
31
+ return `ai.openclaw.${normalized}`;
35
32
  }
36
33
  export function resolveLegacyGatewayLaunchAgentLabels(profile) {
37
- const normalized = normalizeGatewayProfile(profile);
38
- if (!normalized) {
39
- return [...LEGACY_GATEWAY_LAUNCH_AGENT_LABELS];
40
- }
41
- return [...LEGACY_GATEWAY_LAUNCH_AGENT_LABELS, `com.clawdbot.${normalized}`];
34
+ void profile;
35
+ return [];
42
36
  }
43
37
  export function resolveGatewaySystemdServiceName(profile) {
44
38
  const suffix = resolveGatewayProfileSuffix(profile);
45
39
  if (!suffix)
46
40
  return GATEWAY_SYSTEMD_SERVICE_NAME;
47
- return `moltbot-gateway${suffix}`;
41
+ return `openclaw-gateway${suffix}`;
48
42
  }
49
43
  export function resolveGatewayWindowsTaskName(profile) {
50
44
  const normalized = normalizeGatewayProfile(profile);
51
45
  if (!normalized)
52
46
  return GATEWAY_WINDOWS_TASK_NAME;
53
- return `Moltbot Gateway (${normalized})`;
47
+ return `OpenClaw Gateway (${normalized})`;
54
48
  }
55
49
  export function formatGatewayServiceDescription(params) {
56
50
  const profile = normalizeGatewayProfile(params?.profile);
@@ -61,8 +55,8 @@ export function formatGatewayServiceDescription(params) {
61
55
  if (version)
62
56
  parts.push(`v${version}`);
63
57
  if (parts.length === 0)
64
- return "Moltbot Gateway";
65
- return `Moltbot Gateway (${parts.join(", ")})`;
58
+ return "OpenClaw Gateway";
59
+ return `OpenClaw Gateway (${parts.join(", ")})`;
66
60
  }
67
61
  export function resolveNodeLaunchAgentLabel() {
68
62
  return NODE_LAUNCH_AGENT_LABEL;
@@ -76,6 +70,6 @@ export function resolveNodeWindowsTaskName() {
76
70
  export function formatNodeServiceDescription(params) {
77
71
  const version = params?.version?.trim();
78
72
  if (!version)
79
- return "Moltbot Node Host";
80
- return `Moltbot Node Host (v${version})`;
73
+ return "OpenClaw Node Host";
74
+ return `OpenClaw Node Host (v${version})`;
81
75
  }
@@ -2,11 +2,11 @@ import { execFile } from "node:child_process";
2
2
  import fs from "node:fs/promises";
3
3
  import path from "node:path";
4
4
  import { promisify } from "node:util";
5
- import { GATEWAY_SERVICE_KIND, GATEWAY_SERVICE_MARKER, LEGACY_GATEWAY_SYSTEMD_SERVICE_NAMES, LEGACY_GATEWAY_WINDOWS_TASK_NAMES, resolveGatewayLaunchAgentLabel, resolveGatewaySystemdServiceName, resolveGatewayWindowsTaskName, resolveLegacyGatewayLaunchAgentLabels, } from "./constants.js";
6
- const EXTRA_MARKERS = ["moltbot"];
5
+ import { GATEWAY_SERVICE_KIND, GATEWAY_SERVICE_MARKER, resolveGatewayLaunchAgentLabel, resolveGatewaySystemdServiceName, resolveGatewayWindowsTaskName, } from "./constants.js";
6
+ const EXTRA_MARKERS = ["openclaw", "clawdbot", "moltbot"];
7
7
  const execFileAsync = promisify(execFile);
8
8
  export function renderGatewayServiceCleanupHints(env = process.env) {
9
- const profile = env.CLAWDBOT_PROFILE;
9
+ const profile = env.OPENCLAW_PROFILE;
10
10
  switch (process.platform) {
11
11
  case "darwin": {
12
12
  const label = resolveGatewayLaunchAgentLabel(profile);
@@ -33,38 +33,48 @@ function resolveHomeDir(env) {
33
33
  throw new Error("Missing HOME");
34
34
  return home;
35
35
  }
36
- function containsMarker(content) {
36
+ function detectMarker(content) {
37
37
  const lower = content.toLowerCase();
38
- return EXTRA_MARKERS.some((marker) => lower.includes(marker));
38
+ for (const marker of EXTRA_MARKERS) {
39
+ if (lower.includes(marker))
40
+ return marker;
41
+ }
42
+ return null;
39
43
  }
40
44
  function hasGatewayServiceMarker(content) {
41
45
  const lower = content.toLowerCase();
42
- return (lower.includes("moltbot_service_marker") &&
43
- lower.includes(GATEWAY_SERVICE_MARKER.toLowerCase()) &&
44
- lower.includes("moltbot_service_kind") &&
46
+ const markerKeys = ["openclaw_service_marker"];
47
+ const kindKeys = ["openclaw_service_kind"];
48
+ const markerValues = [GATEWAY_SERVICE_MARKER.toLowerCase()];
49
+ const hasMarkerKey = markerKeys.some((key) => lower.includes(key));
50
+ const hasKindKey = kindKeys.some((key) => lower.includes(key));
51
+ const hasMarkerValue = markerValues.some((value) => lower.includes(value));
52
+ return (hasMarkerKey &&
53
+ hasKindKey &&
54
+ hasMarkerValue &&
45
55
  lower.includes(GATEWAY_SERVICE_KIND.toLowerCase()));
46
56
  }
47
- function isMoltbotGatewayLaunchdService(label, contents) {
57
+ function isOpenClawGatewayLaunchdService(label, contents) {
48
58
  if (hasGatewayServiceMarker(contents))
49
59
  return true;
50
60
  const lowerContents = contents.toLowerCase();
51
61
  if (!lowerContents.includes("gateway"))
52
62
  return false;
53
- return label.startsWith("bot.molt.") || label.startsWith("com.clawdbot.");
63
+ return label.startsWith("ai.openclaw.");
54
64
  }
55
- function isMoltbotGatewaySystemdService(name, contents) {
65
+ function isOpenClawGatewaySystemdService(name, contents) {
56
66
  if (hasGatewayServiceMarker(contents))
57
67
  return true;
58
- if (!name.startsWith("moltbot-gateway"))
68
+ if (!name.startsWith("openclaw-gateway"))
59
69
  return false;
60
70
  return contents.toLowerCase().includes("gateway");
61
71
  }
62
- function isMoltbotGatewayTaskName(name) {
72
+ function isOpenClawGatewayTaskName(name) {
63
73
  const normalized = name.trim().toLowerCase();
64
74
  if (!normalized)
65
75
  return false;
66
76
  const defaultName = resolveGatewayWindowsTaskName().toLowerCase();
67
- return normalized === defaultName || normalized.startsWith("moltbot gateway");
77
+ return normalized === defaultName || normalized.startsWith("openclaw gateway");
68
78
  }
69
79
  function tryExtractPlistLabel(contents) {
70
80
  const match = contents.match(/<key>Label<\/key>\s*<string>([\s\S]*?)<\/string>/i);
@@ -73,12 +83,14 @@ function tryExtractPlistLabel(contents) {
73
83
  return match[1]?.trim() || null;
74
84
  }
75
85
  function isIgnoredLaunchdLabel(label) {
76
- return (label === resolveGatewayLaunchAgentLabel() ||
77
- resolveLegacyGatewayLaunchAgentLabels(process.env.CLAWDBOT_PROFILE).includes(label));
86
+ return label === resolveGatewayLaunchAgentLabel();
78
87
  }
79
88
  function isIgnoredSystemdName(name) {
80
- return (name === resolveGatewaySystemdServiceName() ||
81
- LEGACY_GATEWAY_SYSTEMD_SERVICE_NAMES.includes(name));
89
+ return name === resolveGatewaySystemdServiceName();
90
+ }
91
+ function isLegacyLabel(label) {
92
+ const lower = label.toLowerCase();
93
+ return lower.includes("clawdbot") || lower.includes("moltbot");
82
94
  }
83
95
  async function scanLaunchdDir(params) {
84
96
  const results = [];
@@ -103,18 +115,33 @@ async function scanLaunchdDir(params) {
103
115
  catch {
104
116
  continue;
105
117
  }
106
- if (!containsMarker(contents))
107
- continue;
118
+ const marker = detectMarker(contents);
108
119
  const label = tryExtractPlistLabel(contents) ?? labelFromName;
120
+ if (!marker) {
121
+ const legacyLabel = isLegacyLabel(labelFromName) || isLegacyLabel(label);
122
+ if (!legacyLabel)
123
+ continue;
124
+ results.push({
125
+ platform: "darwin",
126
+ label,
127
+ detail: `plist: ${fullPath}`,
128
+ scope: params.scope,
129
+ marker: isLegacyLabel(label) ? "clawdbot" : "moltbot",
130
+ legacy: true,
131
+ });
132
+ continue;
133
+ }
109
134
  if (isIgnoredLaunchdLabel(label))
110
135
  continue;
111
- if (isMoltbotGatewayLaunchdService(label, contents))
136
+ if (marker === "openclaw" && isOpenClawGatewayLaunchdService(label, contents))
112
137
  continue;
113
138
  results.push({
114
139
  platform: "darwin",
115
140
  label,
116
141
  detail: `plist: ${fullPath}`,
117
142
  scope: params.scope,
143
+ marker,
144
+ legacy: marker !== "openclaw" || isLegacyLabel(label),
118
145
  });
119
146
  }
120
147
  return results;
@@ -142,15 +169,18 @@ async function scanSystemdDir(params) {
142
169
  catch {
143
170
  continue;
144
171
  }
145
- if (!containsMarker(contents))
172
+ const marker = detectMarker(contents);
173
+ if (!marker)
146
174
  continue;
147
- if (isMoltbotGatewaySystemdService(name, contents))
175
+ if (marker === "openclaw" && isOpenClawGatewaySystemdService(name, contents))
148
176
  continue;
149
177
  results.push({
150
178
  platform: "linux",
151
179
  label: entry,
152
180
  detail: `unit: ${fullPath}`,
153
181
  scope: params.scope,
182
+ marker,
183
+ legacy: marker !== "openclaw",
154
184
  });
155
185
  }
156
186
  return results;
@@ -292,20 +322,26 @@ export async function findExtraGatewayServices(env, opts = {}) {
292
322
  const name = task.name.trim();
293
323
  if (!name)
294
324
  continue;
295
- if (isMoltbotGatewayTaskName(name))
296
- continue;
297
- if (LEGACY_GATEWAY_WINDOWS_TASK_NAMES.includes(name))
325
+ if (isOpenClawGatewayTaskName(name))
298
326
  continue;
299
327
  const lowerName = name.toLowerCase();
300
328
  const lowerCommand = task.taskToRun?.toLowerCase() ?? "";
301
- const matches = EXTRA_MARKERS.some((marker) => lowerName.includes(marker) || lowerCommand.includes(marker));
302
- if (!matches)
329
+ let marker = null;
330
+ for (const candidate of EXTRA_MARKERS) {
331
+ if (lowerName.includes(candidate) || lowerCommand.includes(candidate)) {
332
+ marker = candidate;
333
+ break;
334
+ }
335
+ }
336
+ if (!marker)
303
337
  continue;
304
338
  push({
305
339
  platform: "win32",
306
340
  label: name,
307
341
  detail: task.taskToRun ? `task: ${name}, run: ${task.taskToRun}` : name,
308
342
  scope: "system",
343
+ marker,
344
+ legacy: marker !== "openclaw",
309
345
  });
310
346
  }
311
347
  return results;
@@ -14,10 +14,10 @@ const formatLine = (label, value) => {
14
14
  return `${colorize(rich, theme.muted, `${label}:`)} ${colorize(rich, theme.command, value)}`;
15
15
  };
16
16
  function resolveLaunchAgentLabel(args) {
17
- const envLabel = args?.env?.CLAWDBOT_LAUNCHD_LABEL?.trim();
17
+ const envLabel = args?.env?.OPENCLAW_LAUNCHD_LABEL?.trim();
18
18
  if (envLabel)
19
19
  return envLabel;
20
- return resolveGatewayLaunchAgentLabel(args?.env?.CLAWDBOT_PROFILE);
20
+ return resolveGatewayLaunchAgentLabel(args?.env?.OPENCLAW_PROFILE);
21
21
  }
22
22
  function resolveLaunchAgentPlistPathForLabel(env, label) {
23
23
  const home = toPosixPath(resolveHomeDir(env));
@@ -30,7 +30,7 @@ export function resolveLaunchAgentPlistPath(env) {
30
30
  export function resolveGatewayLogPaths(env) {
31
31
  const stateDir = resolveGatewayStateDir(env);
32
32
  const logDir = path.join(stateDir, "logs");
33
- const prefix = env.CLAWDBOT_LOG_PREFIX?.trim() || "gateway";
33
+ const prefix = env.OPENCLAW_LOG_PREFIX?.trim() || "gateway";
34
34
  return {
35
35
  logDir,
36
36
  stdoutPath: path.join(logDir, `${prefix}.log`),
@@ -166,7 +166,7 @@ export async function repairLaunchAgentBootstrap(args) {
166
166
  export async function findLegacyLaunchAgents(env) {
167
167
  const domain = resolveGuiDomain();
168
168
  const results = [];
169
- for (const label of resolveLegacyGatewayLaunchAgentLabels(env.CLAWDBOT_PROFILE)) {
169
+ for (const label of resolveLegacyGatewayLaunchAgentLabels(env.OPENCLAW_PROFILE)) {
170
170
  const plistPath = resolveLaunchAgentPlistPathForLabel(env, label);
171
171
  const res = await execLaunchctl(["print", `${domain}/${label}`]);
172
172
  const loaded = res.code === 0;
@@ -262,7 +262,7 @@ export async function installLaunchAgent({ env, stdout, programArguments, workin
262
262
  await fs.mkdir(logDir, { recursive: true });
263
263
  const domain = resolveGuiDomain();
264
264
  const label = resolveLaunchAgentLabel({ env });
265
- for (const legacyLabel of resolveLegacyGatewayLaunchAgentLabels(env.CLAWDBOT_PROFILE)) {
265
+ for (const legacyLabel of resolveLegacyGatewayLaunchAgentLabels(env.OPENCLAW_PROFILE)) {
266
266
  const legacyPlistPath = resolveLaunchAgentPlistPathForLabel(env, legacyLabel);
267
267
  await execLaunchctl(["bootout", domain, legacyPlistPath]);
268
268
  await execLaunchctl(["unload", legacyPlistPath]);
@@ -277,8 +277,8 @@ export async function installLaunchAgent({ env, stdout, programArguments, workin
277
277
  await fs.mkdir(path.dirname(plistPath), { recursive: true });
278
278
  const serviceDescription = description ??
279
279
  formatGatewayServiceDescription({
280
- profile: env.CLAWDBOT_PROFILE,
281
- version: environment?.CLAWDBOT_SERVICE_VERSION ?? env.CLAWDBOT_SERVICE_VERSION,
280
+ profile: env.OPENCLAW_PROFILE,
281
+ version: environment?.OPENCLAW_SERVICE_VERSION ?? env.OPENCLAW_SERVICE_VERSION,
282
282
  });
283
283
  const plist = buildLaunchAgentPlist({
284
284
  label,
@@ -3,13 +3,13 @@ import { NODE_SERVICE_KIND, NODE_SERVICE_MARKER, NODE_WINDOWS_TASK_SCRIPT_NAME,
3
3
  function withNodeServiceEnv(env) {
4
4
  return {
5
5
  ...env,
6
- CLAWDBOT_LAUNCHD_LABEL: resolveNodeLaunchAgentLabel(),
7
- CLAWDBOT_SYSTEMD_UNIT: resolveNodeSystemdServiceName(),
8
- CLAWDBOT_WINDOWS_TASK_NAME: resolveNodeWindowsTaskName(),
9
- CLAWDBOT_TASK_SCRIPT_NAME: NODE_WINDOWS_TASK_SCRIPT_NAME,
10
- CLAWDBOT_LOG_PREFIX: "node",
11
- CLAWDBOT_SERVICE_MARKER: NODE_SERVICE_MARKER,
12
- CLAWDBOT_SERVICE_KIND: NODE_SERVICE_KIND,
6
+ OPENCLAW_LAUNCHD_LABEL: resolveNodeLaunchAgentLabel(),
7
+ OPENCLAW_SYSTEMD_UNIT: resolveNodeSystemdServiceName(),
8
+ OPENCLAW_WINDOWS_TASK_NAME: resolveNodeWindowsTaskName(),
9
+ OPENCLAW_TASK_SCRIPT_NAME: NODE_WINDOWS_TASK_SCRIPT_NAME,
10
+ OPENCLAW_LOG_PREFIX: "node",
11
+ OPENCLAW_SERVICE_MARKER: NODE_SERVICE_MARKER,
12
+ OPENCLAW_SERVICE_KIND: NODE_SERVICE_KIND,
13
13
  };
14
14
  }
15
15
  function withNodeInstallEnv(args) {
@@ -18,13 +18,13 @@ function withNodeInstallEnv(args) {
18
18
  env: withNodeServiceEnv(args.env),
19
19
  environment: {
20
20
  ...args.environment,
21
- CLAWDBOT_LAUNCHD_LABEL: resolveNodeLaunchAgentLabel(),
22
- CLAWDBOT_SYSTEMD_UNIT: resolveNodeSystemdServiceName(),
23
- CLAWDBOT_WINDOWS_TASK_NAME: resolveNodeWindowsTaskName(),
24
- CLAWDBOT_TASK_SCRIPT_NAME: NODE_WINDOWS_TASK_SCRIPT_NAME,
25
- CLAWDBOT_LOG_PREFIX: "node",
26
- CLAWDBOT_SERVICE_MARKER: NODE_SERVICE_MARKER,
27
- CLAWDBOT_SERVICE_KIND: NODE_SERVICE_KIND,
21
+ OPENCLAW_LAUNCHD_LABEL: resolveNodeLaunchAgentLabel(),
22
+ OPENCLAW_SYSTEMD_UNIT: resolveNodeSystemdServiceName(),
23
+ OPENCLAW_WINDOWS_TASK_NAME: resolveNodeWindowsTaskName(),
24
+ OPENCLAW_TASK_SCRIPT_NAME: NODE_WINDOWS_TASK_SCRIPT_NAME,
25
+ OPENCLAW_LOG_PREFIX: "node",
26
+ OPENCLAW_SERVICE_MARKER: NODE_SERVICE_MARKER,
27
+ OPENCLAW_SERVICE_KIND: NODE_SERVICE_KIND,
28
28
  },
29
29
  };
30
30
  }
@@ -24,12 +24,12 @@ export function resolveUserPathWithHome(input, home) {
24
24
  return path.resolve(trimmed);
25
25
  }
26
26
  export function resolveGatewayStateDir(env) {
27
- const override = env.CLAWDBOT_STATE_DIR?.trim();
27
+ const override = env.OPENCLAW_STATE_DIR?.trim();
28
28
  if (override) {
29
29
  const home = override.startsWith("~") ? resolveHomeDir(env) : undefined;
30
30
  return resolveUserPathWithHome(override, home);
31
31
  }
32
32
  const home = resolveHomeDir(env);
33
- const suffix = resolveGatewayProfileSuffix(env.CLAWDBOT_PROFILE);
34
- return path.join(home, `.clawdbot${suffix}`);
33
+ const suffix = resolveGatewayProfileSuffix(env.OPENCLAW_PROFILE);
34
+ return path.join(home, `.openclaw${suffix}`);
35
35
  }
@@ -19,7 +19,7 @@ async function resolveCliEntrypointPathForService() {
19
19
  await fs.access(resolvedPath);
20
20
  // Prefer the original (possibly symlinked) path over the resolved realpath.
21
21
  // This keeps LaunchAgent/systemd paths stable across package version updates,
22
- // since symlinks like node_modules/moltbot -> .pnpm/moltbot@X.Y.Z/...
22
+ // since symlinks like node_modules/openclaw -> .pnpm/openclaw@X.Y.Z/...
23
23
  // are automatically updated by pnpm, while the resolved path contains
24
24
  // version-specific directories that break after updates.
25
25
  const normalizedLooksLikeDist = /[/\\]dist[/\\].+\.(cjs|js|mjs)$/.test(normalized);
@@ -12,16 +12,16 @@ const formatLine = (label, value) => {
12
12
  return `${colorize(rich, theme.muted, `${label}:`)} ${colorize(rich, theme.command, value)}`;
13
13
  };
14
14
  function resolveTaskName(env) {
15
- const override = env.CLAWDBOT_WINDOWS_TASK_NAME?.trim();
15
+ const override = env.OPENCLAW_WINDOWS_TASK_NAME?.trim();
16
16
  if (override)
17
17
  return override;
18
- return resolveGatewayWindowsTaskName(env.CLAWDBOT_PROFILE);
18
+ return resolveGatewayWindowsTaskName(env.OPENCLAW_PROFILE);
19
19
  }
20
20
  export function resolveTaskScriptPath(env) {
21
- const override = env.CLAWDBOT_TASK_SCRIPT?.trim();
21
+ const override = env.OPENCLAW_TASK_SCRIPT?.trim();
22
22
  if (override)
23
23
  return override;
24
- const scriptName = env.CLAWDBOT_TASK_SCRIPT_NAME?.trim() || "gateway.cmd";
24
+ const scriptName = env.OPENCLAW_TASK_SCRIPT_NAME?.trim() || "gateway.cmd";
25
25
  const stateDir = resolveGatewayStateDir(env);
26
26
  return path.join(stateDir, scriptName);
27
27
  }
@@ -185,8 +185,8 @@ export async function installScheduledTask({ env, stdout, programArguments, work
185
185
  await fs.mkdir(path.dirname(scriptPath), { recursive: true });
186
186
  const taskDescription = description ??
187
187
  formatGatewayServiceDescription({
188
- profile: env.CLAWDBOT_PROFILE,
189
- version: environment?.CLAWDBOT_SERVICE_VERSION ?? env.CLAWDBOT_SERVICE_VERSION,
188
+ profile: env.OPENCLAW_PROFILE,
189
+ version: environment?.OPENCLAW_SERVICE_VERSION ?? env.OPENCLAW_SERVICE_VERSION,
190
190
  });
191
191
  const script = buildTaskScript({
192
192
  description: taskDescription,
@@ -90,39 +90,43 @@ export function buildMinimalServicePath(options = {}) {
90
90
  }
91
91
  export function buildServiceEnvironment(params) {
92
92
  const { env, port, token, launchdLabel } = params;
93
- const profile = env.CLAWDBOT_PROFILE;
93
+ const profile = env.OPENCLAW_PROFILE;
94
94
  const resolvedLaunchdLabel = launchdLabel ||
95
95
  (process.platform === "darwin" ? resolveGatewayLaunchAgentLabel(profile) : undefined);
96
96
  const systemdUnit = `${resolveGatewaySystemdServiceName(profile)}.service`;
97
+ const stateDir = env.OPENCLAW_STATE_DIR;
98
+ const configPath = env.OPENCLAW_CONFIG_PATH;
97
99
  return {
98
100
  HOME: env.HOME,
99
101
  PATH: buildMinimalServicePath({ env }),
100
- CLAWDBOT_PROFILE: profile,
101
- CLAWDBOT_STATE_DIR: env.CLAWDBOT_STATE_DIR,
102
- CLAWDBOT_CONFIG_PATH: env.CLAWDBOT_CONFIG_PATH,
103
- CLAWDBOT_GATEWAY_PORT: String(port),
104
- CLAWDBOT_GATEWAY_TOKEN: token,
105
- CLAWDBOT_LAUNCHD_LABEL: resolvedLaunchdLabel,
106
- CLAWDBOT_SYSTEMD_UNIT: systemdUnit,
107
- CLAWDBOT_SERVICE_MARKER: GATEWAY_SERVICE_MARKER,
108
- CLAWDBOT_SERVICE_KIND: GATEWAY_SERVICE_KIND,
109
- CLAWDBOT_SERVICE_VERSION: VERSION,
102
+ OPENCLAW_PROFILE: profile,
103
+ OPENCLAW_STATE_DIR: stateDir,
104
+ OPENCLAW_CONFIG_PATH: configPath,
105
+ OPENCLAW_GATEWAY_PORT: String(port),
106
+ OPENCLAW_GATEWAY_TOKEN: token,
107
+ OPENCLAW_LAUNCHD_LABEL: resolvedLaunchdLabel,
108
+ OPENCLAW_SYSTEMD_UNIT: systemdUnit,
109
+ OPENCLAW_SERVICE_MARKER: GATEWAY_SERVICE_MARKER,
110
+ OPENCLAW_SERVICE_KIND: GATEWAY_SERVICE_KIND,
111
+ OPENCLAW_SERVICE_VERSION: VERSION,
110
112
  };
111
113
  }
112
114
  export function buildNodeServiceEnvironment(params) {
113
115
  const { env } = params;
116
+ const stateDir = env.OPENCLAW_STATE_DIR;
117
+ const configPath = env.OPENCLAW_CONFIG_PATH;
114
118
  return {
115
119
  HOME: env.HOME,
116
120
  PATH: buildMinimalServicePath({ env }),
117
- CLAWDBOT_STATE_DIR: env.CLAWDBOT_STATE_DIR,
118
- CLAWDBOT_CONFIG_PATH: env.CLAWDBOT_CONFIG_PATH,
119
- CLAWDBOT_LAUNCHD_LABEL: resolveNodeLaunchAgentLabel(),
120
- CLAWDBOT_SYSTEMD_UNIT: resolveNodeSystemdServiceName(),
121
- CLAWDBOT_WINDOWS_TASK_NAME: resolveNodeWindowsTaskName(),
122
- CLAWDBOT_TASK_SCRIPT_NAME: NODE_WINDOWS_TASK_SCRIPT_NAME,
123
- CLAWDBOT_LOG_PREFIX: "node",
124
- CLAWDBOT_SERVICE_MARKER: NODE_SERVICE_MARKER,
125
- CLAWDBOT_SERVICE_KIND: NODE_SERVICE_KIND,
126
- CLAWDBOT_SERVICE_VERSION: VERSION,
121
+ OPENCLAW_STATE_DIR: stateDir,
122
+ OPENCLAW_CONFIG_PATH: configPath,
123
+ OPENCLAW_LAUNCHD_LABEL: resolveNodeLaunchAgentLabel(),
124
+ OPENCLAW_SYSTEMD_UNIT: resolveNodeSystemdServiceName(),
125
+ OPENCLAW_WINDOWS_TASK_NAME: resolveNodeWindowsTaskName(),
126
+ OPENCLAW_TASK_SCRIPT_NAME: NODE_WINDOWS_TASK_SCRIPT_NAME,
127
+ OPENCLAW_LOG_PREFIX: "node",
128
+ OPENCLAW_SERVICE_MARKER: NODE_SERVICE_MARKER,
129
+ OPENCLAW_SERVICE_KIND: NODE_SERVICE_KIND,
130
+ OPENCLAW_SERVICE_VERSION: VERSION,
127
131
  };
128
132
  }
@@ -19,6 +19,6 @@ export function renderSystemdUnavailableHints(options = {}) {
19
19
  }
20
20
  return [
21
21
  "systemd user services are unavailable; install/enable systemd or run the gateway under your supervisor.",
22
- `If you're in a container, run the gateway in the foreground instead of \`${formatCliCommand("moltbot gateway")}\`.`,
22
+ `If you're in a container, run the gateway in the foreground instead of \`${formatCliCommand("openclaw gateway")}\`.`,
23
23
  ];
24
24
  }
@@ -13,7 +13,7 @@ function renderEnvLines(env) {
13
13
  }
14
14
  export function buildSystemdUnit({ description, programArguments, workingDirectory, environment, }) {
15
15
  const execStart = programArguments.map(systemdEscapeArg).join(" ");
16
- const descriptionLine = `Description=${description?.trim() || "Moltbot Gateway"}`;
16
+ const descriptionLine = `Description=${description?.trim() || "OpenClaw Gateway"}`;
17
17
  const workingDirLine = workingDirectory
18
18
  ? `WorkingDirectory=${systemdEscapeArg(workingDirectory)}`
19
19
  : null;
@@ -19,11 +19,11 @@ function resolveSystemdUnitPathForName(env, name) {
19
19
  return path.posix.join(home, ".config", "systemd", "user", `${name}.service`);
20
20
  }
21
21
  function resolveSystemdServiceName(env) {
22
- const override = env.CLAWDBOT_SYSTEMD_UNIT?.trim();
22
+ const override = env.OPENCLAW_SYSTEMD_UNIT?.trim();
23
23
  if (override) {
24
24
  return override.endsWith(".service") ? override.slice(0, -".service".length) : override;
25
25
  }
26
- return resolveGatewaySystemdServiceName(env.CLAWDBOT_PROFILE);
26
+ return resolveGatewaySystemdServiceName(env.OPENCLAW_PROFILE);
27
27
  }
28
28
  function resolveSystemdUnitPath(env) {
29
29
  return resolveSystemdUnitPathForName(env, resolveSystemdServiceName(env));
@@ -152,8 +152,8 @@ export async function installSystemdService({ env, stdout, programArguments, wor
152
152
  await fs.mkdir(path.dirname(unitPath), { recursive: true });
153
153
  const serviceDescription = description ??
154
154
  formatGatewayServiceDescription({
155
- profile: env.CLAWDBOT_PROFILE,
156
- version: environment?.CLAWDBOT_SERVICE_VERSION ?? env.CLAWDBOT_SERVICE_VERSION,
155
+ profile: env.OPENCLAW_PROFILE,
156
+ version: environment?.OPENCLAW_SERVICE_VERSION ?? env.OPENCLAW_SERVICE_VERSION,
157
157
  });
158
158
  const unit = buildSystemdUnit({
159
159
  description: serviceDescription,
@@ -162,7 +162,7 @@ export async function installSystemdService({ env, stdout, programArguments, wor
162
162
  environment,
163
163
  });
164
164
  await fs.writeFile(unitPath, unit, "utf8");
165
- const serviceName = resolveGatewaySystemdServiceName(env.CLAWDBOT_PROFILE);
165
+ const serviceName = resolveGatewaySystemdServiceName(env.OPENCLAW_PROFILE);
166
166
  const unitName = `${serviceName}.service`;
167
167
  const reload = await execSystemctl(["--user", "daemon-reload"]);
168
168
  if (reload.code !== 0) {
@@ -183,7 +183,7 @@ export async function installSystemdService({ env, stdout, programArguments, wor
183
183
  }
184
184
  export async function uninstallSystemdService({ env, stdout, }) {
185
185
  await assertSystemdAvailable();
186
- const serviceName = resolveGatewaySystemdServiceName(env.CLAWDBOT_PROFILE);
186
+ const serviceName = resolveGatewaySystemdServiceName(env.OPENCLAW_PROFILE);
187
187
  const unitName = `${serviceName}.service`;
188
188
  await execSystemctl(["--user", "disable", "--now", unitName]);
189
189
  const unitPath = resolveSystemdUnitPath(env);
@@ -5,7 +5,7 @@ import { resolveMarkdownTableMode } from "../config/markdown-tables.js";
5
5
  import { recordChannelActivity } from "../infra/channel-activity.js";
6
6
  import { convertMarkdownTables } from "../markdown/tables.js";
7
7
  import { resolveDiscordAccount } from "./accounts.js";
8
- import { buildDiscordSendError, createDiscordClient, normalizeDiscordPollInput, normalizeStickerIds, parseRecipient, resolveChannelId, sendDiscordMedia, sendDiscordText, } from "./send.shared.js";
8
+ import { buildDiscordSendError, createDiscordClient, normalizeDiscordPollInput, normalizeStickerIds, parseAndResolveRecipient, resolveChannelId, sendDiscordMedia, sendDiscordText, } from "./send.shared.js";
9
9
  export async function sendMessageDiscord(to, text, opts = {}) {
10
10
  const cfg = loadConfig();
11
11
  const accountInfo = resolveDiscordAccount({
@@ -20,7 +20,7 @@ export async function sendMessageDiscord(to, text, opts = {}) {
20
20
  const chunkMode = resolveChunkMode(cfg, "discord", accountInfo.accountId);
21
21
  const textWithTables = convertMarkdownTables(text ?? "", tableMode);
22
22
  const { token, rest, request } = createDiscordClient(opts, cfg);
23
- const recipient = parseRecipient(to);
23
+ const recipient = await parseAndResolveRecipient(to, opts.accountId);
24
24
  const { channelId } = await resolveChannelId(rest, recipient, request);
25
25
  let result;
26
26
  try {
@@ -52,7 +52,7 @@ export async function sendMessageDiscord(to, text, opts = {}) {
52
52
  export async function sendStickerDiscord(to, stickerIds, opts = {}) {
53
53
  const cfg = loadConfig();
54
54
  const { rest, request } = createDiscordClient(opts, cfg);
55
- const recipient = parseRecipient(to);
55
+ const recipient = await parseAndResolveRecipient(to, opts.accountId);
56
56
  const { channelId } = await resolveChannelId(rest, recipient, request);
57
57
  const content = opts.content?.trim();
58
58
  const stickers = normalizeStickerIds(stickerIds);
@@ -70,7 +70,7 @@ export async function sendStickerDiscord(to, stickerIds, opts = {}) {
70
70
  export async function sendPollDiscord(to, poll, opts = {}) {
71
71
  const cfg = loadConfig();
72
72
  const { rest, request } = createDiscordClient(opts, cfg);
73
- const recipient = parseRecipient(to);
73
+ const recipient = await parseAndResolveRecipient(to, opts.accountId);
74
74
  const { channelId } = await resolveChannelId(rest, recipient, request);
75
75
  const content = opts.content?.trim();
76
76
  const payload = normalizeDiscordPollInput(poll);