@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
@@ -1,15 +1,15 @@
1
1
  ---
2
2
  name: soul-evil
3
3
  description: "Swap SOUL.md with SOUL_EVIL.md during a purge window or by random chance"
4
- homepage: https://docs.molt.bot/hooks/soul-evil
4
+ homepage: https://docs.openclaw.ai/hooks/soul-evil
5
5
  metadata:
6
6
  {
7
- "moltbot":
7
+ "openclaw":
8
8
  {
9
9
  "emoji": "😈",
10
10
  "events": ["agent:bootstrap"],
11
11
  "requires": { "config": ["hooks.internal.entries.soul-evil.enabled"] },
12
- "install": [{ "id": "bundled", "kind": "bundled", "label": "Bundled with Moltbot" }],
12
+ "install": [{ "id": "bundled", "kind": "bundled", "label": "Bundled with OpenClaw" }],
13
13
  },
14
14
  }
15
15
  ---
@@ -31,7 +31,7 @@ You can change the filename via hook config.
31
31
 
32
32
  ## Configuration
33
33
 
34
- Add this to your config (`~/.clawdbot/moltbot.json`):
34
+ Add this to your config (`~/.openclaw/openclaw.json`):
35
35
 
36
36
  ```json
37
37
  {
@@ -67,5 +67,5 @@ Add this to your config (`~/.clawdbot/moltbot.json`):
67
67
  ## Enable
68
68
 
69
69
  ```bash
70
- moltbot hooks enable soul-evil
70
+ openclaw hooks enable soul-evil
71
71
  ```
@@ -2,7 +2,7 @@ import fs from "node:fs";
2
2
  import path from "node:path";
3
3
  import { fileURLToPath } from "node:url";
4
4
  export function resolveBundledHooksDir() {
5
- const override = process.env.CLAWDBOT_BUNDLED_HOOKS_DIR?.trim();
5
+ const override = process.env.OPENCLAW_BUNDLED_HOOKS_DIR?.trim();
6
6
  if (override)
7
7
  return override;
8
8
  // bun --compile: ship a sibling `hooks/bundled/` next to the executable.
@@ -16,7 +16,7 @@ export function resolveBundledHooksDir() {
16
16
  // ignore
17
17
  }
18
18
  // npm: resolve `<packageRoot>/dist/hooks/bundled` relative to this module (compiled hooks).
19
- // This path works when installed via npm: node_modules/moltbot/dist/hooks/bundled-dir.js
19
+ // This path works when installed via npm: node_modules/openclaw/dist/hooks/bundled-dir.js
20
20
  try {
21
21
  const moduleDir = path.dirname(fileURLToPath(import.meta.url));
22
22
  const distBundled = path.join(moduleDir, "bundled");
@@ -65,7 +65,7 @@ export function shouldIncludeHook(params) {
65
65
  const { entry, config, eligibility } = params;
66
66
  const hookKey = resolveHookKey(entry.hook.name, entry);
67
67
  const hookConfig = resolveHookConfig(config, hookKey);
68
- const pluginManaged = entry.hook.source === "moltbot-plugin";
68
+ const pluginManaged = entry.hook.source === "openclaw-plugin";
69
69
  const osList = entry.metadata?.os ?? [];
70
70
  const remotePlatforms = eligibility?.remote?.platforms ?? [];
71
71
  // Check if explicitly disabled
@@ -1,5 +1,5 @@
1
1
  import JSON5 from "json5";
2
- import { LEGACY_MANIFEST_KEY } from "../compat/legacy-names.js";
2
+ import { LEGACY_MANIFEST_KEYS, MANIFEST_KEY } from "../compat/legacy-names.js";
3
3
  import { parseFrontmatterBlock } from "../markdown/frontmatter.js";
4
4
  import { parseBooleanValue } from "../utils/boolean.js";
5
5
  export function parseFrontmatter(content) {
@@ -52,7 +52,7 @@ function parseFrontmatterBool(value, fallback) {
52
52
  const parsed = parseBooleanValue(value);
53
53
  return parsed === undefined ? fallback : parsed;
54
54
  }
55
- export function resolveMoltbotMetadata(frontmatter) {
55
+ export function resolveOpenClawMetadata(frontmatter) {
56
56
  const raw = getFrontmatterValue(frontmatter, "metadata");
57
57
  if (!raw)
58
58
  return undefined;
@@ -60,7 +60,15 @@ export function resolveMoltbotMetadata(frontmatter) {
60
60
  const parsed = JSON5.parse(raw);
61
61
  if (!parsed || typeof parsed !== "object")
62
62
  return undefined;
63
- const metadataRaw = parsed.moltbot ?? parsed[LEGACY_MANIFEST_KEY];
63
+ const metadataRawCandidates = [MANIFEST_KEY, ...LEGACY_MANIFEST_KEYS];
64
+ let metadataRaw;
65
+ for (const key of metadataRawCandidates) {
66
+ const candidate = parsed[key];
67
+ if (candidate && typeof candidate === "object") {
68
+ metadataRaw = candidate;
69
+ break;
70
+ }
71
+ }
64
72
  if (!metadataRaw || typeof metadataRaw !== "object")
65
73
  return undefined;
66
74
  const metadataObj = metadataRaw;
@@ -162,7 +162,7 @@ export async function runGmailSetup(opts) {
162
162
  defaultRuntime.log(`- push endpoint: ${pushEndpoint}`);
163
163
  defaultRuntime.log(`- hook url: ${hookUrl}`);
164
164
  defaultRuntime.log(`- config: ${displayPath(CONFIG_PATH)}`);
165
- defaultRuntime.log(`Next: ${formatCliCommand("moltbot webhooks gmail run")}`);
165
+ defaultRuntime.log(`Next: ${formatCliCommand("openclaw webhooks gmail run")}`);
166
166
  }
167
167
  export async function runGmailService(opts) {
168
168
  await ensureDependency("gog", ["gogcli"]);
@@ -78,7 +78,7 @@ function spawnGogServe(cfg) {
78
78
  return;
79
79
  if (addressInUse) {
80
80
  log.warn("gog serve failed to bind (address already in use); stopping restarts. " +
81
- "Another watcher is likely running. Set CLAWDBOT_SKIP_GMAIL_WATCHER=1 or stop the other process.");
81
+ "Another watcher is likely running. Set OPENCLAW_SKIP_GMAIL_WATCHER=1 or stop the other process.");
82
82
  watcherProcess = null;
83
83
  return;
84
84
  }
@@ -16,7 +16,7 @@ function normalizeInstallOptions(entry) {
16
16
  let label = (spec.label ?? "").trim();
17
17
  if (!label) {
18
18
  if (spec.kind === "bundled") {
19
- label = "Bundled with Moltbot";
19
+ label = "Bundled with OpenClaw";
20
20
  }
21
21
  else if (spec.kind === "npm" && spec.package) {
22
22
  label = `Install ${spec.package} (npm)`;
@@ -34,7 +34,7 @@ function normalizeInstallOptions(entry) {
34
34
  function buildHookStatus(entry, config, eligibility) {
35
35
  const hookKey = resolveHookKey(entry);
36
36
  const hookConfig = resolveHookConfig(config, hookKey);
37
- const managedByPlugin = entry.hook.source === "moltbot-plugin";
37
+ const managedByPlugin = entry.hook.source === "openclaw-plugin";
38
38
  const disabled = managedByPlugin ? false : hookConfig?.enabled === false;
39
39
  const always = entry.metadata?.always === true;
40
40
  const emoji = entry.metadata?.emoji ?? entry.frontmatter.emoji;
@@ -1,7 +1,7 @@
1
1
  import fs from "node:fs/promises";
2
2
  import os from "node:os";
3
3
  import path from "node:path";
4
- import { LEGACY_MANIFEST_KEY } from "../compat/legacy-names.js";
4
+ import { MANIFEST_KEY } from "../compat/legacy-names.js";
5
5
  import { runCommandWithTimeout } from "../process/exec.js";
6
6
  import { CONFIG_DIR, resolveUserPath } from "../utils.js";
7
7
  import { extractArchive, fileExists, readJsonFile, resolveArchiveKind, resolvePackedRootDir, } from "../infra/archive.js";
@@ -23,14 +23,14 @@ export function resolveHookInstallDir(hookId, hooksDir) {
23
23
  const hooksBase = hooksDir ? resolveUserPath(hooksDir) : path.join(CONFIG_DIR, "hooks");
24
24
  return path.join(hooksBase, safeDirName(hookId));
25
25
  }
26
- async function ensureMoltbotHooks(manifest) {
27
- const hooks = manifest.moltbot?.hooks ?? manifest[LEGACY_MANIFEST_KEY]?.hooks;
26
+ async function ensureOpenClawHooks(manifest) {
27
+ const hooks = manifest[MANIFEST_KEY]?.hooks;
28
28
  if (!Array.isArray(hooks)) {
29
- throw new Error("package.json missing moltbot.hooks");
29
+ throw new Error("package.json missing openclaw.hooks");
30
30
  }
31
31
  const list = hooks.map((e) => (typeof e === "string" ? e.trim() : "")).filter(Boolean);
32
32
  if (list.length === 0) {
33
- throw new Error("package.json moltbot.hooks is empty");
33
+ throw new Error("package.json openclaw.hooks is empty");
34
34
  }
35
35
  return list;
36
36
  }
@@ -72,7 +72,7 @@ async function installHookPackageFromDir(params) {
72
72
  }
73
73
  let hookEntries;
74
74
  try {
75
- hookEntries = await ensureMoltbotHooks(manifest);
75
+ hookEntries = await ensureOpenClawHooks(manifest);
76
76
  }
77
77
  catch (err) {
78
78
  return { ok: false, error: String(err) };
@@ -209,7 +209,7 @@ export async function installHooksFromArchive(params) {
209
209
  if (!resolveArchiveKind(archivePath)) {
210
210
  return { ok: false, error: `unsupported archive: ${archivePath}` };
211
211
  }
212
- const tmpDir = await fs.mkdtemp(path.join(os.tmpdir(), "moltbot-hook-"));
212
+ const tmpDir = await fs.mkdtemp(path.join(os.tmpdir(), "openclaw-hook-"));
213
213
  const extractDir = path.join(tmpDir, "extract");
214
214
  await fs.mkdir(extractDir, { recursive: true });
215
215
  logger.info?.(`Extracting ${archivePath}…`);
@@ -256,7 +256,7 @@ export async function installHooksFromNpmSpec(params) {
256
256
  const spec = params.spec.trim();
257
257
  if (!spec)
258
258
  return { ok: false, error: "missing npm spec" };
259
- const tmpDir = await fs.mkdtemp(path.join(os.tmpdir(), "moltbot-hook-pack-"));
259
+ const tmpDir = await fs.mkdtemp(path.join(os.tmpdir(), "openclaw-hook-pack-"));
260
260
  logger.info?.(`Downloading ${spec}…`);
261
261
  const res = await runCommandWithTimeout(["npm", "pack", spec], {
262
262
  timeoutMs: Math.max(timeoutMs, 300_000),
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Hook system for moltbot agent events
2
+ * Hook system for OpenClaw agent events
3
3
  *
4
4
  * Provides an extensible event-driven hook system for agent events
5
5
  * like command processing, session lifecycle, etc.
@@ -16,7 +16,7 @@ export async function generateSlugViaLLM(params) {
16
16
  const workspaceDir = resolveAgentWorkspaceDir(params.cfg, agentId);
17
17
  const agentDir = resolveAgentDir(params.cfg, agentId);
18
18
  // Create a temporary session file for this one-off LLM call
19
- const tempDir = await fs.mkdtemp(path.join(os.tmpdir(), "moltbot-slug-"));
19
+ const tempDir = await fs.mkdtemp(path.join(os.tmpdir(), "openclaw-slug-"));
20
20
  tempSessionFile = path.join(tempDir, "session.jsonl");
21
21
  const prompt = `Based on this conversation, generate a short 1-2 word filename slug (lowercase, hyphen-separated, no file extension).
22
22
 
@@ -17,7 +17,7 @@ import { shouldIncludeHook } from "./config.js";
17
17
  * 1. Directory-based discovery (bundled, managed, workspace)
18
18
  * 2. Legacy config handlers (backwards compatibility)
19
19
  *
20
- * @param cfg - Moltbot configuration
20
+ * @param cfg - OpenClaw configuration
21
21
  * @param workspaceDir - Workspace directory for hook discovery
22
22
  * @returns Number of handlers successfully loaded
23
23
  *
@@ -12,7 +12,7 @@ function normalizePluginHookEntry(api, entry) {
12
12
  ...entry,
13
13
  hook: {
14
14
  ...entry.hook,
15
- source: "moltbot-plugin",
15
+ source: "openclaw-plugin",
16
16
  pluginId: api.id,
17
17
  },
18
18
  metadata: {
@@ -44,7 +44,7 @@ export async function registerPluginHooksFromDir(api, dir) {
44
44
  const resolvedDir = resolveHookDir(api, dir);
45
45
  const hooks = loadHookEntriesFromDir({
46
46
  dir: resolvedDir,
47
- source: "moltbot-plugin",
47
+ source: "openclaw-plugin",
48
48
  pluginId: api.id,
49
49
  });
50
50
  const result = {
@@ -1,10 +1,10 @@
1
1
  import fs from "node:fs";
2
2
  import path from "node:path";
3
- import { LEGACY_MANIFEST_KEY } from "../compat/legacy-names.js";
3
+ import { MANIFEST_KEY } from "../compat/legacy-names.js";
4
4
  import { CONFIG_DIR, resolveUserPath } from "../utils.js";
5
5
  import { resolveBundledHooksDir } from "./bundled-dir.js";
6
6
  import { shouldIncludeHook } from "./config.js";
7
- import { parseFrontmatter, resolveMoltbotMetadata, resolveHookInvocationPolicy, } from "./frontmatter.js";
7
+ import { parseFrontmatter, resolveOpenClawMetadata, resolveHookInvocationPolicy, } from "./frontmatter.js";
8
8
  function filterHookEntries(entries, config, eligibility) {
9
9
  return entries.filter((entry) => shouldIncludeHook({ entry, config, eligibility }));
10
10
  }
@@ -21,7 +21,7 @@ function readHookPackageManifest(dir) {
21
21
  }
22
22
  }
23
23
  function resolvePackageHooks(manifest) {
24
- const raw = manifest.moltbot?.hooks ?? manifest[LEGACY_MANIFEST_KEY]?.hooks;
24
+ const raw = manifest[MANIFEST_KEY]?.hooks;
25
25
  if (!Array.isArray(raw))
26
26
  return [];
27
27
  return raw.map((entry) => (typeof entry === "string" ? entry.trim() : "")).filter(Boolean);
@@ -128,7 +128,7 @@ export function loadHookEntriesFromDir(params) {
128
128
  pluginId: params.pluginId,
129
129
  },
130
130
  frontmatter,
131
- metadata: resolveMoltbotMetadata(frontmatter),
131
+ metadata: resolveOpenClawMetadata(frontmatter),
132
132
  invocation: resolveHookInvocationPolicy(frontmatter),
133
133
  };
134
134
  return entry;
@@ -145,23 +145,23 @@ function loadHookEntries(workspaceDir, opts) {
145
145
  const bundledHooks = bundledHooksDir
146
146
  ? loadHooksFromDir({
147
147
  dir: bundledHooksDir,
148
- source: "moltbot-bundled",
148
+ source: "openclaw-bundled",
149
149
  })
150
150
  : [];
151
151
  const extraHooks = extraDirs.flatMap((dir) => {
152
152
  const resolved = resolveUserPath(dir);
153
153
  return loadHooksFromDir({
154
154
  dir: resolved,
155
- source: "moltbot-workspace", // Extra dirs treated as workspace
155
+ source: "openclaw-workspace", // Extra dirs treated as workspace
156
156
  });
157
157
  });
158
158
  const managedHooks = loadHooksFromDir({
159
159
  dir: managedHooksDir,
160
- source: "moltbot-managed",
160
+ source: "openclaw-managed",
161
161
  });
162
162
  const workspaceHooks = loadHooksFromDir({
163
163
  dir: workspaceHooksDir,
164
- source: "moltbot-workspace",
164
+ source: "openclaw-workspace",
165
165
  });
166
166
  const merged = new Map();
167
167
  // Precedence: extra < bundled < managed < workspace (workspace wins)
@@ -185,7 +185,7 @@ function loadHookEntries(workspaceDir, opts) {
185
185
  return {
186
186
  hook,
187
187
  frontmatter,
188
- metadata: resolveMoltbotMetadata(frontmatter),
188
+ metadata: resolveOpenClawMetadata(frontmatter),
189
189
  invocation: resolveHookInvocationPolicy(frontmatter),
190
190
  };
191
191
  });
@@ -32,7 +32,7 @@ import { deliverReplies } from "./deliver.js";
32
32
  import { normalizeAllowList, resolveRuntime } from "./runtime.js";
33
33
  /**
34
34
  * Try to detect remote host from an SSH wrapper script like:
35
- * exec ssh -T moltbot@192.168.64.3 /opt/homebrew/bin/imsg "$@"
35
+ * exec ssh -T openclaw@192.168.64.3 /opt/homebrew/bin/imsg "$@"
36
36
  * exec ssh -T mac-mini imsg "$@"
37
37
  * Returns the user@host or host portion if found, undefined otherwise.
38
38
  */
@@ -43,7 +43,7 @@ async function detectRemoteHostFromCliPath(cliPath) {
43
43
  ? cliPath.replace(/^~/, process.env.HOME ?? "")
44
44
  : cliPath;
45
45
  const content = await fs.readFile(expanded, "utf8");
46
- // Match user@host pattern first (e.g., moltbot@192.168.64.3)
46
+ // Match user@host pattern first (e.g., openclaw@192.168.64.3)
47
47
  const userHostMatch = content.match(/\bssh\b[^\n]*?\s+([a-zA-Z0-9._-]+@[a-zA-Z0-9._-]+)/);
48
48
  if (userHostMatch)
49
49
  return userHostMatch[1];
package/dist/index.js CHANGED
@@ -13,7 +13,7 @@ import { ensureBinary } from "./infra/binaries.js";
13
13
  import { loadDotEnv } from "./infra/dotenv.js";
14
14
  import { normalizeEnv } from "./infra/env.js";
15
15
  import { isMainModule } from "./infra/is-main.js";
16
- import { ensureMoltbotCliOnPath } from "./infra/path-env.js";
16
+ import { ensureOpenClawCliOnPath } from "./infra/path-env.js";
17
17
  import { describePortOwner, ensurePortAvailable, handlePortError, PortInUseError, } from "./infra/ports.js";
18
18
  import { assertSupportedRuntime } from "./infra/runtime-guard.js";
19
19
  import { formatUncaughtError } from "./infra/errors.js";
@@ -23,7 +23,7 @@ import { runCommandWithTimeout, runExec } from "./process/exec.js";
23
23
  import { assertWebChannel, normalizeE164, toWhatsappJid } from "./utils.js";
24
24
  loadDotEnv({ quiet: true });
25
25
  normalizeEnv();
26
- ensureMoltbotCliOnPath();
26
+ ensureOpenClawCliOnPath();
27
27
  // Capture all console output into structured logs while keeping stdout/stderr behavior.
28
28
  enableConsoleCapture();
29
29
  // Enforce the minimum supported runtime before doing any work.
@@ -39,11 +39,11 @@ if (isMain) {
39
39
  // These log the error and exit gracefully instead of crashing without trace.
40
40
  installUnhandledRejectionHandler();
41
41
  process.on("uncaughtException", (error) => {
42
- console.error("[moltbot] Uncaught exception:", formatUncaughtError(error));
42
+ console.error("[openclaw] Uncaught exception:", formatUncaughtError(error));
43
43
  process.exit(1);
44
44
  });
45
45
  void program.parseAsync(process.argv).catch((err) => {
46
- console.error("[moltbot] CLI failed:", formatUncaughtError(err));
46
+ console.error("[openclaw] CLI failed:", formatUncaughtError(err));
47
47
  process.exit(1);
48
48
  });
49
49
  }
@@ -1,7 +1,7 @@
1
1
  import { runCommandWithTimeout } from "../process/exec.js";
2
- import { WIDE_AREA_DISCOVERY_DOMAIN } from "./widearea-dns.js";
2
+ import { resolveWideAreaDiscoveryDomain } from "./widearea-dns.js";
3
3
  const DEFAULT_TIMEOUT_MS = 2000;
4
- const DEFAULT_DOMAINS = ["local.", WIDE_AREA_DISCOVERY_DOMAIN];
4
+ const GATEWAY_SERVICE_TYPE = "_openclaw-gw._tcp";
5
5
  function decodeDnsSdEscapes(value) {
6
6
  let decoded = false;
7
7
  const bytes = [];
@@ -139,11 +139,11 @@ function parseDnsSdBrowse(stdout) {
139
139
  const instances = new Set();
140
140
  for (const raw of stdout.split("\n")) {
141
141
  const line = raw.trim();
142
- if (!line || !line.includes("_moltbot-gw._tcp"))
142
+ if (!line || !line.includes(GATEWAY_SERVICE_TYPE))
143
143
  continue;
144
144
  if (!line.includes("Add"))
145
145
  continue;
146
- const match = line.match(/_moltbot-gw\._tcp\.?\s+(.+)$/);
146
+ const match = line.match(/_openclaw-gw\._tcp\.?\s+(.+)$/);
147
147
  if (match?.[1]) {
148
148
  instances.add(decodeDnsSdEscapes(match[1].trim()));
149
149
  }
@@ -199,13 +199,13 @@ function parseDnsSdResolve(stdout, instanceName) {
199
199
  return beacon;
200
200
  }
201
201
  async function discoverViaDnsSd(domain, timeoutMs, run) {
202
- const browse = await run(["dns-sd", "-B", "_moltbot-gw._tcp", domain], {
202
+ const browse = await run(["dns-sd", "-B", GATEWAY_SERVICE_TYPE, domain], {
203
203
  timeoutMs,
204
204
  });
205
205
  const instances = parseDnsSdBrowse(browse.stdout);
206
206
  const results = [];
207
207
  for (const instance of instances) {
208
- const resolved = await run(["dns-sd", "-L", instance, "_moltbot-gw._tcp", domain], {
208
+ const resolved = await run(["dns-sd", "-L", instance, GATEWAY_SERVICE_TYPE, domain], {
209
209
  timeoutMs,
210
210
  });
211
211
  const parsed = parseDnsSdResolve(resolved.stdout, instance);
@@ -215,7 +215,7 @@ async function discoverViaDnsSd(domain, timeoutMs, run) {
215
215
  return results;
216
216
  }
217
217
  async function discoverWideAreaViaTailnetDns(domain, timeoutMs, run) {
218
- if (domain !== WIDE_AREA_DISCOVERY_DOMAIN)
218
+ if (!domain || domain === "local.")
219
219
  return [];
220
220
  const startedAt = Date.now();
221
221
  const remainingMs = () => timeoutMs - (Date.now() - startedAt);
@@ -240,7 +240,7 @@ async function discoverWideAreaViaTailnetDns(domain, timeoutMs, run) {
240
240
  return [];
241
241
  // Keep scans bounded: this is a fallback and should not block long.
242
242
  ips = ips.slice(0, 40);
243
- const probeName = `_moltbot-gw._tcp.${domain.replace(/\.$/, "")}`;
243
+ const probeName = `${GATEWAY_SERVICE_TYPE}.${domain.replace(/\.$/, "")}`;
244
244
  const concurrency = 6;
245
245
  let nextIndex = 0;
246
246
  let nameserver = null;
@@ -285,7 +285,7 @@ async function discoverWideAreaViaTailnetDns(domain, timeoutMs, run) {
285
285
  const ptrName = ptr.trim().replace(/\.$/, "");
286
286
  if (!ptrName)
287
287
  continue;
288
- const instanceName = ptrName.replace(/\.?_moltbot-gw\._tcp\..*$/, "");
288
+ const instanceName = ptrName.replace(/\.?_openclaw-gw\._tcp\..*$/, "");
289
289
  const srv = await run(["dig", "+short", "+time=1", "+tries=1", nameserverArg, ptrName, "SRV"], {
290
290
  timeoutMs: Math.max(1, Math.min(350, budget)),
291
291
  }).catch(() => null);
@@ -341,10 +341,10 @@ function parseAvahiBrowse(stdout) {
341
341
  const line = raw.trimEnd();
342
342
  if (!line)
343
343
  continue;
344
- if (line.startsWith("=") && line.includes("_moltbot-gw._tcp")) {
344
+ if (line.startsWith("=") && line.includes(GATEWAY_SERVICE_TYPE)) {
345
345
  if (current)
346
346
  results.push(current);
347
- const marker = " _moltbot-gw._tcp";
347
+ const marker = ` ${GATEWAY_SERVICE_TYPE}`;
348
348
  const idx = line.indexOf(marker);
349
349
  const left = idx >= 0 ? line.slice(0, idx).trim() : line;
350
350
  const parts = left.split(/\s+/);
@@ -401,7 +401,7 @@ function parseAvahiBrowse(stdout) {
401
401
  return results;
402
402
  }
403
403
  async function discoverViaAvahi(domain, timeoutMs, run) {
404
- const args = ["avahi-browse", "-rt", "_moltbot-gw._tcp"];
404
+ const args = ["avahi-browse", "-rt", GATEWAY_SERVICE_TYPE];
405
405
  if (domain && domain !== "local.") {
406
406
  // avahi-browse wants a plain domain (no trailing dot)
407
407
  args.push("-d", domain.replace(/\.$/, ""));
@@ -416,8 +416,10 @@ export async function discoverGatewayBeacons(opts = {}) {
416
416
  const timeoutMs = opts.timeoutMs ?? DEFAULT_TIMEOUT_MS;
417
417
  const platform = opts.platform ?? process.platform;
418
418
  const run = opts.run ?? runCommandWithTimeout;
419
+ const wideAreaDomain = resolveWideAreaDiscoveryDomain({ configDomain: opts.wideAreaDomain });
419
420
  const domainsRaw = Array.isArray(opts.domains) ? opts.domains : [];
420
- const domains = (domainsRaw.length > 0 ? domainsRaw : [...DEFAULT_DOMAINS])
421
+ const defaultDomains = ["local.", ...(wideAreaDomain ? [wideAreaDomain] : [])];
422
+ const domains = (domainsRaw.length > 0 ? domainsRaw : defaultDomains)
421
423
  .map((d) => String(d).trim())
422
424
  .filter(Boolean)
423
425
  .map((d) => (d.endsWith(".") ? d : `${d}.`));
@@ -425,10 +427,12 @@ export async function discoverGatewayBeacons(opts = {}) {
425
427
  if (platform === "darwin") {
426
428
  const perDomain = await Promise.allSettled(domains.map(async (domain) => await discoverViaDnsSd(domain, timeoutMs, run)));
427
429
  const discovered = perDomain.flatMap((r) => (r.status === "fulfilled" ? r.value : []));
428
- const wantsWideArea = domains.includes(WIDE_AREA_DISCOVERY_DOMAIN);
429
- const hasWideArea = discovered.some((b) => b.domain === WIDE_AREA_DISCOVERY_DOMAIN);
430
- if (wantsWideArea && !hasWideArea) {
431
- const fallback = await discoverWideAreaViaTailnetDns(WIDE_AREA_DISCOVERY_DOMAIN, timeoutMs, run).catch(() => []);
430
+ const wantsWideArea = wideAreaDomain ? domains.includes(wideAreaDomain) : false;
431
+ const hasWideArea = wideAreaDomain
432
+ ? discovered.some((b) => b.domain === wideAreaDomain)
433
+ : false;
434
+ if (wantsWideArea && !hasWideArea && wideAreaDomain) {
435
+ const fallback = await discoverWideAreaViaTailnetDns(wideAreaDomain, timeoutMs, run).catch(() => []);
432
436
  return [...discovered, ...fallback];
433
437
  }
434
438
  return discovered;
@@ -1,4 +1,3 @@
1
- import os from "node:os";
2
1
  import { logDebug, logWarn } from "../logger.js";
3
2
  import { getLogger } from "../logging.js";
4
3
  import { ignoreCiaoCancellationRejection } from "./bonjour-ciao.js";
@@ -6,7 +5,7 @@ import { formatBonjourError } from "./bonjour-errors.js";
6
5
  import { isTruthyEnvValue } from "./env.js";
7
6
  import { registerUnhandledRejectionHandler } from "./unhandled-rejections.js";
8
7
  function isDisabledByEnv() {
9
- if (isTruthyEnvValue(process.env.CLAWDBOT_DISABLE_BONJOUR))
8
+ if (isTruthyEnvValue(process.env.OPENCLAW_DISABLE_BONJOUR))
10
9
  return true;
11
10
  if (process.env.NODE_ENV === "test")
12
11
  return true;
@@ -16,11 +15,11 @@ function isDisabledByEnv() {
16
15
  }
17
16
  function safeServiceName(name) {
18
17
  const trimmed = name.trim();
19
- return trimmed.length > 0 ? trimmed : "Moltbot";
18
+ return trimmed.length > 0 ? trimmed : "OpenClaw";
20
19
  }
21
20
  function prettifyInstanceName(name) {
22
21
  const normalized = name.trim().replace(/\s+/g, " ");
23
- return normalized.replace(/\s+\(Moltbot\)\s*$/i, "").trim() || normalized;
22
+ return normalized.replace(/\s+\(OpenClaw\)\s*$/i, "").trim() || normalized;
24
23
  }
25
24
  function serviceSummary(label, svc) {
26
25
  let fqdn = "unknown";
@@ -56,14 +55,16 @@ export async function startGatewayBonjourAdvertiser(opts) {
56
55
  // mDNS service instance names are single DNS labels; dots in hostnames (like
57
56
  // `Mac.localdomain`) can confuse some resolvers/browsers and break discovery.
58
57
  // Keep only the first label and normalize away a trailing `.local`.
59
- const hostname = os
60
- .hostname()
58
+ const hostnameRaw = process.env.OPENCLAW_MDNS_HOSTNAME?.trim() ||
59
+ process.env.CLAWDBOT_MDNS_HOSTNAME?.trim() ||
60
+ "openclaw";
61
+ const hostname = hostnameRaw
61
62
  .replace(/\.local$/i, "")
62
63
  .split(".")[0]
63
- .trim() || "moltbot";
64
+ .trim() || "openclaw";
64
65
  const instanceName = typeof opts.instanceName === "string" && opts.instanceName.trim()
65
66
  ? opts.instanceName.trim()
66
- : `${hostname} (Moltbot)`;
67
+ : `${hostname} (OpenClaw)`;
67
68
  const displayName = prettifyInstanceName(instanceName);
68
69
  const txtBase = {
69
70
  role: "gateway",
@@ -100,7 +101,7 @@ export async function startGatewayBonjourAdvertiser(opts) {
100
101
  }
101
102
  const gateway = responder.createService({
102
103
  name: safeServiceName(instanceName),
103
- type: "moltbot-gw",
104
+ type: "openclaw-gw",
104
105
  protocol: "tcp" /* Protocol.TCP */,
105
106
  port: opts.gatewayPort,
106
107
  domain: "local",
@@ -2,7 +2,7 @@ import crypto from "node:crypto";
2
2
  import fs from "node:fs";
3
3
  import os from "node:os";
4
4
  import path from "node:path";
5
- const DEFAULT_DIR = path.join(os.homedir(), ".clawdbot", "identity");
5
+ const DEFAULT_DIR = path.join(os.homedir(), ".openclaw", "identity");
6
6
  const DEFAULT_FILE = path.join(DEFAULT_DIR, "device.json");
7
7
  function ensureDir(filePath) {
8
8
  fs.mkdirSync(path.dirname(filePath), { recursive: true });
@@ -1,4 +1,4 @@
1
- const DIAGNOSTICS_ENV = "CLAWDBOT_DIAGNOSTICS";
1
+ const DIAGNOSTICS_ENV = "OPENCLAW_DIAGNOSTICS";
2
2
  function normalizeFlag(value) {
3
3
  return value.trim().toLowerCase();
4
4
  }
@@ -6,7 +6,7 @@ export function loadDotEnv(opts) {
6
6
  const quiet = opts?.quiet ?? true;
7
7
  // Load from process CWD first (dotenv default).
8
8
  dotenv.config({ quiet });
9
- // Then load global fallback: ~/.clawdbot/.env (or CLAWDBOT_STATE_DIR/.env),
9
+ // Then load global fallback: ~/.openclaw/.env (or OPENCLAW_STATE_DIR/.env),
10
10
  // without overriding any env vars already present.
11
11
  const globalEnvPath = path.join(resolveConfigDir(process.env), ".env");
12
12
  if (!fs.existsSync(globalEnvPath))
@@ -8,8 +8,8 @@ const DEFAULT_SECURITY = "deny";
8
8
  const DEFAULT_ASK = "on-miss";
9
9
  const DEFAULT_ASK_FALLBACK = "deny";
10
10
  const DEFAULT_AUTO_ALLOW_SKILLS = false;
11
- const DEFAULT_SOCKET = "~/.clawdbot/exec-approvals.sock";
12
- const DEFAULT_FILE = "~/.clawdbot/exec-approvals.json";
11
+ const DEFAULT_SOCKET = "~/.openclaw/exec-approvals.sock";
12
+ const DEFAULT_FILE = "~/.openclaw/exec-approvals.json";
13
13
  export const DEFAULT_SAFE_BINS = ["jq", "grep", "cut", "sort", "uniq", "head", "tail", "tr", "wc"];
14
14
  function hashExecApprovalsRaw(raw) {
15
15
  return crypto
@@ -42,6 +42,7 @@ function isGatewayArgv(args) {
42
42
  "dist/index.js",
43
43
  "dist/index.mjs",
44
44
  "dist/entry.js",
45
+ "openclaw.mjs",
45
46
  "dist/entry.mjs",
46
47
  "scripts/run-node.mjs",
47
48
  "src/index.ts",
@@ -50,7 +51,7 @@ function isGatewayArgv(args) {
50
51
  return true;
51
52
  }
52
53
  const exe = normalized[0] ?? "";
53
- return exe.endsWith("/moltbot") || exe === "moltbot";
54
+ return exe.endsWith("/openclaw") || exe === "openclaw";
54
55
  }
55
56
  function readLinuxCmdline(pid) {
56
57
  try {
@@ -126,7 +127,7 @@ function resolveGatewayLockPath(env) {
126
127
  export async function acquireGatewayLock(opts = {}) {
127
128
  const env = opts.env ?? process.env;
128
129
  const allowInTests = opts.allowInTests === true;
129
- if (env.CLAWDBOT_ALLOW_MULTI_GATEWAY === "1" ||
130
+ if (env.OPENCLAW_ALLOW_MULTI_GATEWAY === "1" ||
130
131
  (!allowInTests && (env.VITEST || env.NODE_ENV === "test"))) {
131
132
  return null;
132
133
  }
@@ -20,7 +20,7 @@ function fallbackHostName() {
20
20
  return (os
21
21
  .hostname()
22
22
  .replace(/\.local$/i, "")
23
- .trim() || "moltbot");
23
+ .trim() || "openclaw");
24
24
  }
25
25
  export async function getMachineDisplayName() {
26
26
  if (cachedPromise)
@@ -1,7 +1,7 @@
1
1
  import fs from "node:fs/promises";
2
2
  import path from "node:path";
3
3
  import { fileURLToPath } from "node:url";
4
- const CORE_PACKAGE_NAMES = new Set(["moltbot", "moltbot"]);
4
+ const CORE_PACKAGE_NAMES = new Set(["openclaw"]);
5
5
  async function readPackageName(dir) {
6
6
  try {
7
7
  const raw = await fs.readFile(path.join(dir, "package.json"), "utf-8");
@@ -37,7 +37,7 @@ function candidateDirsFromArgv1(argv1) {
37
37
  }
38
38
  return candidates;
39
39
  }
40
- export async function resolveMoltbotPackageRoot(opts) {
40
+ export async function resolveOpenClawPackageRoot(opts) {
41
41
  const candidates = [];
42
42
  if (opts.moduleUrl) {
43
43
  candidates.push(path.dirname(fileURLToPath(opts.moduleUrl)));