@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.
- package/CHANGELOG.md +1206 -12
- package/LICENSE +2 -2
- package/README.md +347 -37
- package/assets/chrome-extension/README.md +5 -5
- package/assets/chrome-extension/background.js +5 -5
- package/assets/chrome-extension/manifest.json +3 -3
- package/assets/chrome-extension/options.html +5 -5
- package/assets/chrome-extension/options.js +1 -1
- package/dist/acp/client.js +5 -5
- package/dist/acp/server.js +3 -3
- package/dist/acp/types.js +2 -2
- package/dist/agents/agent-paths.js +6 -6
- package/dist/agents/agent-scope.js +1 -1
- package/dist/agents/anthropic-payload-log.js +2 -2
- package/dist/agents/auth-profiles/doctor.js +1 -1
- package/dist/agents/auth-profiles/paths.js +3 -3
- package/dist/agents/bash-tools.exec.js +1 -1
- package/dist/agents/bash-tools.shared.js +2 -2
- package/dist/agents/cache-trace.js +5 -5
- package/dist/agents/channel-tools.js +31 -2
- package/dist/agents/cli-runner/helpers.js +3 -3
- package/dist/agents/cli-runner.js +3 -3
- package/dist/agents/context.js +4 -4
- package/dist/agents/docs-path.js +3 -3
- package/dist/agents/identity.js +1 -1
- package/dist/agents/live-auth-keys.js +2 -2
- package/dist/agents/memory-search.js +5 -0
- package/dist/agents/minimax-vlm.js +1 -1
- package/dist/agents/model-auth.js +2 -1
- package/dist/agents/model-catalog.js +4 -4
- package/dist/agents/model-selection.js +1 -1
- package/dist/agents/models-config.js +3 -3
- package/dist/agents/models-config.providers.js +40 -8
- package/dist/agents/{moltbot-tools.js → openclaw-tools.js} +1 -1
- package/dist/agents/pi-embedded-helpers/errors.js +20 -0
- package/dist/agents/pi-embedded-helpers/openai.js +1 -1
- package/dist/agents/pi-embedded-helpers.js +1 -1
- package/dist/agents/pi-embedded-runner/cache-ttl.js +1 -1
- package/dist/agents/pi-embedded-runner/compact.js +8 -8
- package/dist/agents/pi-embedded-runner/model.js +2 -2
- package/dist/agents/pi-embedded-runner/run/attempt.js +6 -6
- package/dist/agents/pi-embedded-runner/run.js +31 -5
- package/dist/agents/pi-embedded-runner/session-manager-cache.js +1 -1
- package/dist/agents/pi-embedded-runner/utils.js +1 -1
- package/dist/agents/pi-embedded-subscribe.raw-stream.js +2 -2
- package/dist/agents/pi-tools.js +5 -5
- package/dist/agents/pi-tools.read.js +2 -2
- package/dist/agents/sandbox/browser.js +16 -11
- package/dist/agents/sandbox/constants.js +7 -7
- package/dist/agents/sandbox/docker.js +17 -14
- package/dist/agents/sandbox/runtime-status.js +1 -1
- package/dist/agents/session-transcript-repair.js +1 -1
- package/dist/agents/session-write-lock.js +2 -2
- package/dist/agents/skills/bundled-dir.js +1 -1
- package/dist/agents/skills/config.js +2 -1
- package/dist/agents/skills/frontmatter.js +11 -3
- package/dist/agents/skills/workspace.js +6 -6
- package/dist/agents/synthetic-models.js +8 -0
- package/dist/agents/system-prompt.js +21 -21
- package/dist/agents/tool-images.js +1 -1
- package/dist/agents/tool-policy.js +2 -2
- package/dist/agents/tools/browser-tool.js +5 -5
- package/dist/agents/tools/image-tool.js +2 -2
- package/dist/agents/tools/memory-tool.js +1 -1
- package/dist/agents/tools/sessions-send-tool.js +2 -2
- package/dist/agents/tools/web-search.js +7 -7
- package/dist/agents/transcript-policy.js +2 -1
- package/dist/agents/workspace.js +3 -3
- package/dist/auto-reply/commands-registry.data.js +1 -1
- package/dist/auto-reply/reply/agent-runner-execution.js +1 -1
- package/dist/auto-reply/reply/bash-command.js +2 -2
- package/dist/auto-reply/reply/commands-context-report.js +2 -2
- package/dist/auto-reply/reply/commands-session.js +4 -4
- package/dist/auto-reply/reply/directive-handling.shared.js +1 -1
- package/dist/auto-reply/reply/dispatch-from-config.js +21 -0
- package/dist/auto-reply/reply/get-reply-inline-actions.js +2 -2
- package/dist/auto-reply/reply/get-reply.js +1 -1
- package/dist/auto-reply/reply/groups.js +1 -1
- package/dist/auto-reply/reply/mentions.js +3 -2
- package/dist/auto-reply/reply/normalize-reply.js +12 -4
- package/dist/auto-reply/reply/reply-dispatcher.js +8 -1
- package/dist/auto-reply/reply/reply-elevated.js +1 -1
- package/dist/auto-reply/reply/stage-sandbox-media.js +1 -1
- package/dist/auto-reply/status.js +2 -2
- package/dist/browser/chrome.js +13 -13
- package/dist/browser/chrome.profile-decoration.js +5 -5
- package/dist/browser/client-fetch.js +3 -3
- package/dist/browser/config.js +11 -11
- package/dist/browser/constants.js +3 -3
- package/dist/browser/control-service.js +1 -1
- package/dist/browser/extension-relay.js +3 -3
- package/dist/browser/profiles-service.js +2 -2
- package/dist/browser/profiles.js +1 -1
- package/dist/browser/pw-tools-core.downloads.js +1 -1
- package/dist/browser/pw-tools-core.interactions.js +5 -5
- package/dist/browser/pw-tools-core.responses.js +1 -1
- package/dist/browser/routes/agent.act.js +2 -2
- package/dist/browser/routes/agent.debug.js +1 -1
- package/dist/browser/server-context.js +9 -9
- package/dist/browser/server.js +2 -2
- package/dist/build-info.json +2 -2
- package/dist/canvas-host/a2ui/.bundle.hash +1 -1
- package/dist/canvas-host/a2ui/a2ui.bundle.js +24 -19
- package/dist/canvas-host/a2ui/index.html +28 -28
- package/dist/canvas-host/a2ui.js +14 -18
- package/dist/canvas-host/server.js +33 -35
- package/dist/channels/plugins/catalog.js +7 -7
- package/dist/channels/plugins/helpers.js +2 -2
- package/dist/channels/plugins/onboarding/imessage.js +1 -1
- package/dist/channels/plugins/onboarding/signal.js +2 -2
- package/dist/channels/plugins/onboarding/slack.js +5 -5
- package/dist/channels/plugins/onboarding/telegram.js +3 -3
- package/dist/channels/plugins/onboarding/whatsapp.js +4 -4
- package/dist/channels/plugins/pairing-message.js +1 -1
- package/dist/channels/plugins/status-issues/bluebubbles.js +1 -1
- package/dist/channels/plugins/status-issues/whatsapp.js +2 -2
- package/dist/channels/registry.js +1 -1
- package/dist/cli/acp-cli.js +2 -2
- package/dist/cli/argv.js +2 -2
- package/dist/cli/banner.js +10 -11
- package/dist/cli/browser-cli-actions-input/register.files-downloads.js +1 -1
- package/dist/cli/browser-cli-examples.js +29 -29
- package/dist/cli/browser-cli-extension.js +5 -5
- package/dist/cli/browser-cli-manage.js +4 -4
- package/dist/cli/browser-cli.js +3 -3
- package/dist/cli/channel-options.js +1 -1
- package/dist/cli/channels-cli.js +1 -1
- package/dist/cli/cli-name.js +4 -8
- package/dist/cli/command-format.js +3 -3
- package/dist/cli/config-cli.js +2 -2
- package/dist/cli/cron-cli/register.js +1 -1
- package/dist/cli/daemon-cli/install.js +2 -2
- package/dist/cli/daemon-cli/register.js +1 -1
- package/dist/cli/daemon-cli/shared.js +11 -13
- package/dist/cli/daemon-cli/status.gather.js +2 -5
- package/dist/cli/daemon-cli/status.print.js +9 -17
- package/dist/cli/directory-cli.js +1 -1
- package/dist/cli/dns-cli.js +20 -13
- package/dist/cli/docs-cli.js +2 -2
- package/dist/cli/exec-approvals-cli.js +2 -2
- package/dist/cli/gateway-cli/dev.js +7 -5
- package/dist/cli/gateway-cli/register.js +12 -6
- package/dist/cli/gateway-cli/run.js +15 -14
- package/dist/cli/gateway-cli/shared.js +5 -5
- package/dist/cli/hooks-cli.js +3 -3
- package/dist/cli/logs-cli.js +3 -3
- package/dist/cli/memory-cli.js +36 -5
- package/dist/cli/models-cli.js +1 -1
- package/dist/cli/node-cli/daemon.js +3 -3
- package/dist/cli/node-cli/register.js +1 -1
- package/dist/cli/nodes-cli/register.canvas.js +1 -1
- package/dist/cli/nodes-cli/register.js +1 -1
- package/dist/cli/nodes-screen.js +1 -1
- package/dist/cli/pairing-cli.js +3 -3
- package/dist/cli/plugin-registry.js +2 -2
- package/dist/cli/plugins-cli.js +3 -3
- package/dist/cli/profile.js +9 -9
- package/dist/cli/program/config-guard.js +1 -1
- package/dist/cli/program/help.js +14 -11
- package/dist/cli/program/preaction.js +1 -1
- package/dist/cli/program/register.agent.js +15 -12
- package/dist/cli/program/register.configure.js +1 -1
- package/dist/cli/program/register.maintenance.js +4 -4
- package/dist/cli/program/register.message.js +5 -5
- package/dist/cli/program/register.onboard.js +5 -3
- package/dist/cli/program/register.setup.js +3 -3
- package/dist/cli/program/register.status-health-sessions.js +13 -13
- package/dist/cli/program/register.subclis.js +7 -2
- package/dist/cli/route.js +1 -1
- package/dist/cli/run-main.js +3 -3
- package/dist/cli/sandbox-cli.js +19 -19
- package/dist/cli/security-cli.js +4 -4
- package/dist/cli/skills-cli.js +3 -3
- package/dist/cli/system-cli.js +1 -1
- package/dist/cli/tagline.js +11 -9
- package/dist/cli/tui-cli.js +1 -1
- package/dist/cli/update-cli.js +48 -45
- package/dist/cli/webhooks-cli.js +6 -6
- package/dist/commands/agent-via-gateway.js +1 -1
- package/dist/commands/agent.js +1 -1
- package/dist/commands/agents.command-shared.js +1 -1
- package/dist/commands/agents.commands.add.js +2 -2
- package/dist/commands/agents.commands.list.js +1 -1
- package/dist/commands/auth-choice-options.js +10 -0
- package/dist/commands/auth-choice.apply.api-providers.js +49 -1
- package/dist/commands/auth-choice.apply.openai.js +1 -1
- package/dist/commands/auth-choice.apply.plugin-provider.js +2 -2
- package/dist/commands/auth-choice.preferred-provider.js +1 -0
- package/dist/commands/channels/shared.js +1 -1
- package/dist/commands/channels/status.js +1 -1
- package/dist/commands/chutes-oauth.js +1 -1
- package/dist/commands/configure.channels.js +2 -2
- package/dist/commands/configure.gateway.js +1 -1
- package/dist/commands/configure.wizard.js +21 -21
- package/dist/commands/daemon-install-helpers.js +2 -2
- package/dist/commands/dashboard.js +2 -2
- package/dist/commands/docs.js +5 -5
- package/dist/commands/doctor-auth.js +5 -5
- package/dist/commands/doctor-config-flow.js +64 -7
- package/dist/commands/doctor-format.js +5 -5
- package/dist/commands/doctor-gateway-daemon-flow.js +7 -4
- package/dist/commands/doctor-gateway-services.js +72 -65
- package/dist/commands/doctor-platform-notes.js +51 -9
- package/dist/commands/doctor-sandbox.js +4 -4
- package/dist/commands/doctor-security.js +7 -7
- package/dist/commands/doctor-state-integrity.js +9 -7
- package/dist/commands/doctor-state-migrations.js +1 -1
- package/dist/commands/doctor-ui.js +2 -2
- package/dist/commands/doctor-update.js +5 -5
- package/dist/commands/doctor-workspace-status.js +2 -2
- package/dist/commands/doctor-workspace.js +5 -27
- package/dist/commands/doctor.js +11 -11
- package/dist/commands/gateway-status/helpers.js +2 -2
- package/dist/commands/gateway-status.js +9 -3
- package/dist/commands/health.js +2 -2
- package/dist/commands/models/auth.js +1 -1
- package/dist/commands/models/list.probe.js +2 -2
- package/dist/commands/models/list.registry.js +4 -4
- package/dist/commands/models/list.status-command.js +4 -4
- package/dist/commands/node-daemon-install-helpers.js +1 -1
- package/dist/commands/onboard-auth.config-core.js +65 -1
- package/dist/commands/onboard-auth.credentials.js +14 -2
- package/dist/commands/onboard-auth.js +2 -2
- package/dist/commands/onboard-channels.js +5 -5
- package/dist/commands/onboard-helpers.js +9 -8
- package/dist/commands/onboard-hooks.js +4 -4
- package/dist/commands/onboard-non-interactive/local/auth-choice.js +21 -1
- package/dist/commands/onboard-non-interactive/local.js +1 -1
- package/dist/commands/onboard-non-interactive/remote.js +1 -1
- package/dist/commands/onboard-non-interactive.js +1 -1
- package/dist/commands/onboard-remote.js +7 -3
- package/dist/commands/onboard-skills.js +2 -2
- package/dist/commands/onboard.js +3 -3
- package/dist/commands/onboarding/plugin-install.js +2 -2
- package/dist/commands/reset.js +3 -3
- package/dist/commands/sandbox-display.js +1 -1
- package/dist/commands/sandbox-explain.js +2 -2
- package/dist/commands/setup.js +9 -7
- package/dist/commands/signal-install.js +2 -2
- package/dist/commands/status-all/diagnosis.js +1 -1
- package/dist/commands/status-all/report-lines.js +1 -1
- package/dist/commands/status-all.js +5 -5
- package/dist/commands/status.command.js +9 -9
- package/dist/commands/status.gateway-probe.js +2 -2
- package/dist/commands/status.scan.js +2 -2
- package/dist/commands/status.update.js +3 -3
- package/dist/commands/uninstall.js +4 -4
- package/dist/compat/legacy-names.js +8 -6
- package/dist/config/config.js +1 -1
- package/dist/config/io.js +13 -14
- package/dist/config/paths.js +107 -33
- package/dist/config/schema.js +14 -12
- package/dist/config/sessions/store.js +1 -1
- package/dist/config/sessions/transcript.js +1 -1
- package/dist/config/types.js +1 -1
- package/dist/config/validation.js +2 -2
- package/dist/config/version.js +4 -4
- package/dist/config/zod-schema.agent-runtime.js +1 -0
- package/dist/config/zod-schema.js +3 -2
- package/dist/config/zod-schema.session.js +6 -1
- package/dist/control-ui/apple-touch-icon.png +0 -0
- package/dist/control-ui/assets/index-BKPyesll.css +1 -0
- package/dist/control-ui/assets/{index-CxLFx0Ae.js → index-DFDgq9AK.js} +397 -366
- package/dist/control-ui/assets/index-DFDgq9AK.js.map +1 -0
- package/dist/control-ui/favicon-32.png +0 -0
- package/dist/control-ui/favicon.svg +22 -0
- package/dist/control-ui/index.html +7 -5
- package/dist/daemon/constants.js +19 -25
- package/dist/daemon/inspect.js +64 -28
- package/dist/daemon/launchd.js +7 -7
- package/dist/daemon/node-service.js +14 -14
- package/dist/daemon/paths.js +3 -3
- package/dist/daemon/program-args.js +1 -1
- package/dist/daemon/schtasks.js +6 -6
- package/dist/daemon/service-env.js +25 -21
- package/dist/daemon/systemd-hints.js +1 -1
- package/dist/daemon/systemd-unit.js +1 -1
- package/dist/daemon/systemd.js +6 -6
- package/dist/discord/send.outbound.js +4 -4
- package/dist/discord/send.shared.js +32 -1
- package/dist/discord/targets.js +79 -0
- package/dist/entry.js +9 -8
- package/dist/gateway/auth.js +6 -3
- package/dist/gateway/call.js +3 -1
- package/dist/gateway/control-ui.js +4 -4
- package/dist/gateway/hooks.js +3 -1
- package/dist/gateway/http-utils.js +5 -3
- package/dist/gateway/openai-http.js +3 -3
- package/dist/gateway/openresponses-http.js +4 -4
- package/dist/gateway/protocol/client-info.js +5 -5
- package/dist/gateway/server/ws-connection/message-handler.js +1 -1
- package/dist/gateway/server-browser.js +2 -2
- package/dist/gateway/server-constants.js +2 -2
- package/dist/gateway/server-cron.js +1 -1
- package/dist/gateway/server-discovery-runtime.js +12 -4
- package/dist/gateway/server-discovery.js +7 -7
- package/dist/gateway/server-http.js +1 -1
- package/dist/gateway/server-methods/config.js +2 -2
- package/dist/gateway/server-methods/logs.js +1 -1
- package/dist/gateway/server-methods/update.js +2 -2
- package/dist/gateway/server-plugins.js +2 -2
- package/dist/gateway/server-reload-handlers.js +5 -5
- package/dist/gateway/server-runtime-config.js +3 -3
- package/dist/gateway/server-startup.js +6 -6
- package/dist/gateway/server.impl.js +8 -7
- package/dist/gateway/session-utils.fs.js +2 -1
- package/dist/gateway/test-helpers.mocks.js +8 -6
- package/dist/gateway/test-helpers.server.js +28 -28
- package/dist/gateway/tools-invoke-http.js +40 -4
- package/dist/hooks/bundled/boot-md/HOOK.md +3 -3
- package/dist/hooks/bundled/command-logger/HOOK.md +12 -12
- package/dist/hooks/bundled/command-logger/handler.js +2 -1
- package/dist/hooks/bundled/session-memory/HOOK.md +30 -7
- package/dist/hooks/bundled/session-memory/handler.js +19 -12
- package/dist/hooks/bundled/soul-evil/HOOK.md +5 -5
- package/dist/hooks/bundled-dir.js +2 -2
- package/dist/hooks/config.js +1 -1
- package/dist/hooks/frontmatter.js +11 -3
- package/dist/hooks/gmail-ops.js +1 -1
- package/dist/hooks/gmail-watcher.js +1 -1
- package/dist/hooks/hooks-status.js +2 -2
- package/dist/hooks/install.js +8 -8
- package/dist/hooks/internal-hooks.js +1 -1
- package/dist/hooks/llm-slug-generator.js +1 -1
- package/dist/hooks/loader.js +1 -1
- package/dist/hooks/plugin-hooks.js +2 -2
- package/dist/hooks/workspace.js +9 -9
- package/dist/imessage/monitor/monitor-provider.js +2 -2
- package/dist/index.js +4 -4
- package/dist/infra/bonjour-discovery.js +21 -17
- package/dist/infra/bonjour.js +10 -9
- package/dist/infra/device-identity.js +1 -1
- package/dist/infra/diagnostic-flags.js +1 -1
- package/dist/infra/dotenv.js +1 -1
- package/dist/infra/exec-approvals.js +2 -2
- package/dist/infra/gateway-lock.js +3 -2
- package/dist/infra/machine-name.js +1 -1
- package/dist/infra/{moltbot-root.js → openclaw-root.js} +2 -2
- package/dist/infra/outbound/outbound-session.js +18 -0
- package/dist/infra/outbound/targets.js +1 -1
- package/dist/infra/path-env.js +10 -9
- package/dist/infra/ports-format.js +3 -2
- package/dist/infra/ports.js +2 -2
- package/dist/infra/provider-usage.auth.js +33 -0
- package/dist/infra/provider-usage.fetch.claude.js +1 -1
- package/dist/infra/provider-usage.fetch.minimax.js +1 -1
- package/dist/infra/provider-usage.load.js +6 -0
- package/dist/infra/provider-usage.shared.js +2 -0
- package/dist/infra/restart-sentinel.js +1 -1
- package/dist/infra/restart.js +4 -4
- package/dist/infra/runtime-guard.js +2 -2
- package/dist/infra/shell-env.js +4 -4
- package/dist/infra/ssh-config.js +2 -1
- package/dist/infra/ssh-tunnel.js +8 -1
- package/dist/infra/state-migrations.js +165 -6
- package/dist/infra/system-presence.js +1 -1
- package/dist/infra/tailscale.js +1 -1
- package/dist/infra/tls/gateway.js +1 -1
- package/dist/infra/unhandled-rejections.js +56 -33
- package/dist/infra/update-check.js +1 -1
- package/dist/infra/update-global.js +21 -11
- package/dist/infra/update-runner.js +7 -7
- package/dist/infra/update-startup.js +3 -3
- package/dist/infra/voicewake.js +1 -1
- package/dist/infra/warnings.js +1 -1
- package/dist/infra/widearea-dns.js +31 -14
- package/dist/logging/logger.js +4 -4
- package/dist/macos/gateway-daemon.js +9 -6
- package/dist/macos/relay-smoke.js +1 -1
- package/dist/macos/relay.js +6 -6
- package/dist/media/host.js +1 -1
- package/dist/media/image-ops.js +3 -3
- package/dist/media/input-files.js +1 -1
- package/dist/media/mime.js +3 -0
- package/dist/media-understanding/apply.js +278 -1
- package/dist/media-understanding/attachments.js +1 -1
- package/dist/media-understanding/providers/image.js +2 -2
- package/dist/media-understanding/runner.js +1 -1
- package/dist/memory/batch-gemini.js +2 -2
- package/dist/memory/batch-openai.js +1 -1
- package/dist/memory/embeddings-gemini.js +1 -1
- package/dist/memory/embeddings.js +1 -1
- package/dist/memory/internal.js +49 -16
- package/dist/memory/manager-cache-key.js +1 -0
- package/dist/memory/manager.js +62 -10
- package/dist/memory/sync-memory-files.js +1 -1
- package/dist/node-host/runner.js +6 -6
- package/dist/pairing/pairing-messages.js +2 -2
- package/dist/plugins/bundled-dir.js +1 -1
- package/dist/plugins/cli.js +2 -2
- package/dist/plugins/config-state.js +60 -0
- package/dist/plugins/discovery.js +14 -12
- package/dist/plugins/install.js +8 -8
- package/dist/plugins/loader.js +4 -7
- package/dist/plugins/manifest-registry.js +4 -4
- package/dist/plugins/manifest.js +4 -7
- package/dist/plugins/providers.js +2 -2
- package/dist/plugins/registry.js +2 -2
- package/dist/plugins/runtime.js +1 -1
- package/dist/plugins/status.js +2 -2
- package/dist/plugins/tools.js +2 -2
- package/dist/plugins/update.js +3 -3
- package/dist/providers/qwen-portal-oauth.js +1 -1
- package/dist/routing/resolve-route.js +2 -0
- package/dist/routing/session-key.js +5 -0
- package/dist/security/audit-extra.js +2 -2
- package/dist/security/audit.js +7 -7
- package/dist/shared/text/reasoning-tags.js +44 -3
- package/dist/slack/monitor/commands.js +4 -3
- package/dist/slack/monitor/slash.js +62 -59
- package/dist/slack/monitor.test-helpers.js +1 -1
- package/dist/telegram/accounts.js +1 -1
- package/dist/telegram/bot/delivery.js +26 -3
- package/dist/telegram/bot/helpers.js +13 -2
- package/dist/telegram/bot-message-context.js +8 -4
- package/dist/telegram/bot-message-dispatch.js +36 -5
- package/dist/telegram/bot-native-commands.js +50 -11
- package/dist/telegram/bot.js +7 -5
- package/dist/telegram/download.js +1 -1
- package/dist/telegram/monitor.js +19 -1
- package/dist/telegram/network-config.js +2 -2
- package/dist/telegram/network-errors.js +4 -0
- package/dist/terminal/links.js +1 -1
- package/dist/tts/tts.js +12 -6
- package/dist/tui/gateway-chat.js +3 -3
- package/dist/tui/tui.js +1 -1
- package/dist/utils.js +12 -3
- package/dist/version.js +3 -3
- package/dist/web/active-listener.js +1 -1
- package/dist/web/auth-store.js +1 -1
- package/dist/web/auto-reply/monitor/broadcast.js +2 -0
- package/dist/web/auto-reply/monitor/process-message.js +1 -1
- package/dist/web/auto-reply/monitor.js +1 -1
- package/dist/web/login.js +1 -1
- package/dist/web/session.js +2 -2
- package/dist/wizard/onboarding.finalize.js +24 -21
- package/dist/wizard/onboarding.gateway-config.js +1 -1
- package/dist/wizard/onboarding.js +11 -11
- package/docs/CNAME +1 -1
- package/docs/_config.yml +3 -3
- package/docs/_layouts/default.html +9 -9
- package/docs/assets/openclaw-logo-text-dark.png +0 -0
- package/docs/assets/openclaw-logo-text.png +0 -0
- package/docs/assets/theme.js +1 -1
- package/docs/automation/auth-monitoring.md +7 -7
- package/docs/automation/cron-jobs.md +19 -19
- package/docs/automation/cron-vs-heartbeat.md +7 -7
- package/docs/automation/gmail-pubsub.md +25 -25
- package/docs/automation/poll.md +7 -7
- package/docs/automation/webhook.md +5 -5
- package/docs/bedrock.md +10 -10
- package/docs/brave-search.md +1 -1
- package/docs/broadcast-groups.md +6 -6
- package/docs/channels/bluebubbles.md +12 -12
- package/docs/channels/discord.md +15 -15
- package/docs/channels/googlechat.md +16 -16
- package/docs/channels/imessage.md +13 -13
- package/docs/channels/index.md +4 -4
- package/docs/channels/line.md +6 -6
- package/docs/channels/location.md +1 -1
- package/docs/channels/matrix.md +14 -14
- package/docs/channels/mattermost.md +8 -8
- package/docs/channels/msteams.md +26 -26
- package/docs/channels/nextcloud-talk.md +7 -7
- package/docs/channels/nostr.md +9 -9
- package/docs/channels/signal.md +9 -9
- package/docs/channels/slack.md +16 -16
- package/docs/channels/telegram.md +23 -23
- package/docs/channels/tlon.md +5 -5
- package/docs/channels/troubleshooting.md +2 -2
- package/docs/channels/twitch.md +14 -14
- package/docs/channels/whatsapp.md +26 -26
- package/docs/channels/zalo.md +8 -8
- package/docs/channels/zalouser.md +12 -12
- package/docs/cli/acp.md +24 -24
- package/docs/cli/agent.md +6 -6
- package/docs/cli/agents.md +12 -12
- package/docs/cli/approvals.md +14 -14
- package/docs/cli/browser.md +24 -24
- package/docs/cli/channels.md +21 -21
- package/docs/cli/config.md +15 -15
- package/docs/cli/configure.md +6 -6
- package/docs/cli/cron.md +5 -5
- package/docs/cli/dashboard.md +4 -4
- package/docs/cli/devices.md +13 -13
- package/docs/cli/directory.md +12 -12
- package/docs/cli/dns.md +5 -6
- package/docs/cli/docs.md +5 -5
- package/docs/cli/doctor.md +11 -11
- package/docs/cli/gateway.md +26 -26
- package/docs/cli/health.md +5 -5
- package/docs/cli/hooks.md +35 -35
- package/docs/cli/index.md +42 -42
- package/docs/cli/logs.md +6 -6
- package/docs/cli/memory.md +12 -11
- package/docs/cli/message.md +11 -11
- package/docs/cli/models.md +15 -15
- package/docs/cli/node.md +14 -14
- package/docs/cli/nodes.md +14 -14
- package/docs/cli/onboard.md +7 -7
- package/docs/cli/pairing.md +4 -4
- package/docs/cli/plugins.md +16 -16
- package/docs/cli/reset.md +5 -5
- package/docs/cli/sandbox.md +28 -28
- package/docs/cli/security.md +6 -6
- package/docs/cli/sessions.md +5 -5
- package/docs/cli/setup.md +6 -6
- package/docs/cli/skills.md +6 -6
- package/docs/cli/status.md +7 -7
- package/docs/cli/system.md +6 -6
- package/docs/cli/tui.md +5 -5
- package/docs/cli/uninstall.md +5 -5
- package/docs/cli/update.md +20 -20
- package/docs/cli/voicecall.md +9 -9
- package/docs/cli/webhooks.md +5 -5
- package/docs/concepts/agent-loop.md +5 -5
- package/docs/concepts/agent-workspace.md +27 -27
- package/docs/concepts/agent.md +12 -12
- package/docs/concepts/architecture.md +2 -2
- package/docs/concepts/channel-routing.md +5 -5
- package/docs/concepts/compaction.md +5 -5
- package/docs/concepts/context.md +6 -6
- package/docs/concepts/group-messages.md +7 -7
- package/docs/concepts/groups.md +5 -5
- package/docs/concepts/markdown-formatting.md +3 -3
- package/docs/concepts/memory.md +41 -19
- package/docs/concepts/messages.md +4 -4
- package/docs/concepts/model-failover.md +14 -14
- package/docs/concepts/model-providers.md +25 -24
- package/docs/concepts/models.md +27 -27
- package/docs/concepts/multi-agent.md +31 -31
- package/docs/concepts/oauth.md +22 -22
- package/docs/concepts/presence.md +2 -2
- package/docs/concepts/retry.md +1 -1
- package/docs/concepts/session-pruning.md +1 -1
- package/docs/concepts/session-tool.md +4 -4
- package/docs/concepts/session.md +18 -16
- package/docs/concepts/streaming.md +3 -3
- package/docs/concepts/system-prompt.md +11 -11
- package/docs/concepts/timezone.md +2 -2
- package/docs/concepts/typebox.md +3 -3
- package/docs/concepts/typing-indicators.md +2 -2
- package/docs/concepts/usage-tracking.md +3 -3
- package/docs/date-time.md +2 -2
- package/docs/debug/node-issue.md +6 -6
- package/docs/debugging.md +18 -18
- package/docs/diagnostics/flags.md +7 -7
- package/docs/docs.json +21 -5
- package/docs/environment.md +7 -7
- package/docs/experiments/plans/cron-add-hardening.md +1 -1
- package/docs/experiments/plans/openresponses-gateway.md +2 -2
- package/docs/experiments/research/memory.md +12 -12
- package/docs/gateway/authentication.md +22 -22
- package/docs/gateway/background-process.md +2 -2
- package/docs/gateway/bonjour.md +25 -25
- package/docs/gateway/bridge-protocol.md +2 -2
- package/docs/gateway/cli-backends.md +12 -12
- package/docs/gateway/configuration-examples.md +26 -25
- package/docs/gateway/configuration.md +155 -153
- package/docs/gateway/discovery.md +10 -10
- package/docs/gateway/doctor.md +27 -27
- package/docs/gateway/gateway-lock.md +1 -1
- package/docs/gateway/health.md +11 -11
- package/docs/gateway/heartbeat.md +5 -5
- package/docs/gateway/index.md +63 -63
- package/docs/gateway/local-models.md +2 -2
- package/docs/gateway/logging.md +8 -8
- package/docs/gateway/multiple-gateways.md +24 -24
- package/docs/gateway/openai-http-api.md +12 -12
- package/docs/gateway/openresponses-http-api.md +12 -12
- package/docs/gateway/pairing.md +9 -9
- package/docs/gateway/protocol.md +4 -4
- package/docs/gateway/remote-gateway-readme.md +10 -10
- package/docs/gateway/remote.md +4 -4
- package/docs/gateway/sandbox-vs-tool-policy-vs-elevated.md +7 -7
- package/docs/gateway/sandboxing.md +6 -6
- package/docs/gateway/security/formal-verification.md +67 -14
- package/docs/gateway/security/index.md +56 -59
- package/docs/gateway/tailscale.md +10 -10
- package/docs/gateway/tools-invoke-http-api.md +5 -5
- package/docs/gateway/troubleshooting.md +112 -112
- package/docs/help/faq.md +338 -338
- package/docs/help/troubleshooting.md +16 -16
- package/docs/hooks/soul-evil.md +2 -2
- package/docs/hooks.md +62 -62
- package/docs/index.md +45 -36
- package/docs/install/ansible.md +35 -35
- package/docs/install/development-channels.md +10 -10
- package/docs/install/docker.md +45 -45
- package/docs/install/index.md +33 -33
- package/docs/install/installer.md +24 -24
- package/docs/install/migrating.md +36 -36
- package/docs/install/nix.md +18 -18
- package/docs/install/node.md +4 -4
- package/docs/install/uninstall.md +29 -29
- package/docs/install/updating.md +51 -51
- package/docs/logging.md +59 -59
- package/docs/multi-agent-sandbox-tools.md +15 -15
- package/docs/network.md +1 -1
- package/docs/nodes/audio.md +2 -2
- package/docs/nodes/camera.md +18 -18
- package/docs/nodes/images.md +4 -4
- package/docs/nodes/index.md +57 -57
- package/docs/nodes/location-command.md +2 -2
- package/docs/nodes/media-understanding.md +5 -5
- package/docs/nodes/talk.md +1 -1
- package/docs/nodes/voicewake.md +3 -3
- package/docs/northflank.mdx +9 -9
- package/docs/perplexity.md +2 -2
- package/docs/platforms/android.md +14 -14
- package/docs/platforms/digitalocean.md +26 -26
- package/docs/platforms/exe-dev.md +68 -130
- package/docs/platforms/fly.md +33 -33
- package/docs/platforms/gcp.md +58 -58
- package/docs/platforms/hetzner.md +45 -45
- package/docs/platforms/index.md +8 -8
- package/docs/platforms/ios.md +13 -13
- package/docs/platforms/linux.md +11 -11
- package/docs/platforms/mac/bundled-gateway.md +14 -14
- package/docs/platforms/mac/canvas.md +14 -14
- package/docs/platforms/mac/child-process.md +5 -5
- package/docs/platforms/mac/dev-setup.md +10 -10
- package/docs/platforms/mac/health.md +2 -2
- package/docs/platforms/mac/icon.md +1 -1
- package/docs/platforms/mac/logging.md +4 -4
- package/docs/platforms/mac/menu-bar.md +1 -1
- package/docs/platforms/mac/peekaboo.md +9 -9
- package/docs/platforms/mac/permissions.md +1 -1
- package/docs/platforms/mac/release.md +18 -18
- package/docs/platforms/mac/remote.md +14 -14
- package/docs/platforms/mac/signing.md +7 -7
- package/docs/platforms/mac/skills.md +4 -4
- package/docs/platforms/mac/webchat.md +1 -1
- package/docs/platforms/mac/xpc.md +4 -4
- package/docs/platforms/macos-vm.md +27 -27
- package/docs/platforms/macos.md +16 -16
- package/docs/platforms/oracle.md +35 -35
- package/docs/platforms/raspberry-pi.md +22 -22
- package/docs/platforms/windows.md +11 -11
- package/docs/plugin.md +65 -65
- package/docs/plugins/agent-tools.md +1 -1
- package/docs/plugins/manifest.md +4 -4
- package/docs/plugins/voice-call.md +12 -12
- package/docs/plugins/zalouser.md +9 -9
- package/docs/prose.md +9 -9
- package/docs/providers/anthropic.md +16 -16
- package/docs/providers/claude-max-api-proxy.md +4 -4
- package/docs/providers/deepgram.md +2 -2
- package/docs/providers/github-copilot.md +11 -11
- package/docs/providers/glm.md +4 -4
- package/docs/providers/index.md +4 -3
- package/docs/providers/minimax.md +9 -9
- package/docs/providers/models.md +3 -3
- package/docs/providers/moonshot.md +15 -4
- package/docs/providers/ollama.md +11 -11
- package/docs/providers/openai.md +6 -6
- package/docs/providers/opencode.md +3 -3
- package/docs/providers/openrouter.md +3 -3
- package/docs/providers/qwen.md +6 -6
- package/docs/providers/synthetic.md +4 -4
- package/docs/providers/venice.md +23 -23
- package/docs/providers/vercel-ai-gateway.md +4 -4
- package/docs/providers/xiaomi.md +62 -0
- package/docs/providers/zai.md +5 -5
- package/docs/railway.mdx +8 -8
- package/docs/refactor/exec-host.md +5 -5
- package/docs/refactor/plugin-sdk.md +12 -12
- package/docs/refactor/strict-config.md +11 -11
- package/docs/reference/AGENTS.default.md +17 -17
- package/docs/reference/RELEASING.md +29 -29
- package/docs/reference/api-usage-costs.md +6 -6
- package/docs/reference/device-models.md +7 -7
- package/docs/reference/rpc.md +3 -3
- package/docs/reference/session-management-compaction.md +19 -19
- package/docs/reference/templates/AGENTS.dev.md +1 -1
- package/docs/reference/templates/BOOT.md +1 -1
- package/docs/reference/templates/IDENTITY.md +1 -1
- package/docs/reference/templates/TOOLS.dev.md +1 -1
- package/docs/reference/templates/USER.dev.md +2 -2
- package/docs/reference/test.md +2 -2
- package/docs/reference/transcript-hygiene.md +1 -1
- package/docs/render.mdx +13 -13
- package/docs/scripts.md +1 -1
- package/docs/security/formal-verification.md +66 -13
- package/docs/start/getting-started.md +29 -29
- package/docs/start/hubs.md +2 -2
- package/docs/start/lore.md +14 -14
- package/docs/start/onboarding.md +7 -7
- package/docs/start/{clawd.md → openclaw.md} +35 -35
- package/docs/start/pairing.md +10 -10
- package/docs/start/setup.md +22 -22
- package/docs/start/showcase.md +32 -32
- package/docs/start/wizard.md +30 -30
- package/docs/testing.md +56 -56
- package/docs/token-use.md +7 -7
- package/docs/tools/agent-send.md +10 -10
- package/docs/tools/browser-linux-troubleshooting.md +16 -16
- package/docs/tools/browser-login.md +6 -6
- package/docs/tools/browser.md +126 -126
- package/docs/tools/chrome-extension.md +17 -17
- package/docs/tools/clawdhub.md +7 -7
- package/docs/tools/creating-skills.md +6 -6
- package/docs/tools/exec-approvals.md +5 -5
- package/docs/tools/exec.md +4 -4
- package/docs/tools/firecrawl.md +2 -2
- package/docs/tools/index.md +13 -13
- package/docs/tools/llm-task.md +2 -2
- package/docs/tools/lobster.md +13 -13
- package/docs/tools/skills-config.md +2 -2
- package/docs/tools/skills.md +31 -31
- package/docs/tools/slash-commands.md +8 -8
- package/docs/tools/web.md +8 -8
- package/docs/tts.md +11 -11
- package/docs/tui.md +7 -7
- package/docs/vps.md +1 -1
- package/docs/web/control-ui.md +8 -8
- package/docs/web/dashboard.md +6 -6
- package/docs/web/index.md +5 -5
- package/extensions/bluebubbles/index.ts +3 -3
- package/extensions/bluebubbles/package.json +5 -5
- package/extensions/bluebubbles/src/accounts.ts +9 -9
- package/extensions/bluebubbles/src/actions.test.ts +22 -22
- package/extensions/bluebubbles/src/actions.ts +6 -6
- package/extensions/bluebubbles/src/attachments.ts +2 -2
- package/extensions/bluebubbles/src/channel.ts +17 -17
- package/extensions/bluebubbles/src/chat.ts +2 -2
- package/extensions/bluebubbles/src/config-schema.ts +1 -1
- package/extensions/bluebubbles/src/media-send.ts +2 -2
- package/extensions/bluebubbles/src/monitor.test.ts +48 -48
- package/extensions/bluebubbles/src/monitor.ts +6 -6
- package/extensions/bluebubbles/src/onboarding.ts +9 -9
- package/extensions/bluebubbles/src/reactions.ts +2 -2
- package/extensions/bluebubbles/src/runtime.ts +1 -1
- package/extensions/bluebubbles/src/send.ts +2 -2
- package/extensions/copilot-proxy/README.md +3 -3
- package/extensions/copilot-proxy/index.ts +1 -1
- package/extensions/copilot-proxy/package.json +4 -4
- package/extensions/diagnostics-otel/index.ts +3 -3
- package/extensions/diagnostics-otel/package.json +4 -4
- package/extensions/diagnostics-otel/src/service.test.ts +15 -15
- package/extensions/diagnostics-otel/src/service.ts +85 -85
- package/extensions/discord/index.ts +3 -3
- package/extensions/discord/package.json +4 -4
- package/extensions/discord/src/channel.ts +1 -1
- package/extensions/discord/src/runtime.ts +1 -1
- package/extensions/google-antigravity-auth/README.md +3 -3
- package/extensions/google-antigravity-auth/index.ts +2 -2
- package/extensions/google-antigravity-auth/package.json +4 -4
- package/extensions/google-gemini-cli-auth/README.md +5 -5
- package/extensions/google-gemini-cli-auth/index.ts +3 -3
- package/extensions/google-gemini-cli-auth/oauth.ts +4 -4
- package/extensions/google-gemini-cli-auth/package.json +4 -4
- package/extensions/googlechat/index.ts +4 -4
- package/extensions/googlechat/node_modules/.bin/openclaw +16 -0
- package/extensions/googlechat/node_modules/.bin/openclaw.CMD +7 -0
- package/extensions/googlechat/node_modules/.bin/openclaw.ps1 +28 -0
- package/extensions/googlechat/package.json +7 -7
- package/extensions/googlechat/src/accounts.ts +9 -9
- package/extensions/googlechat/src/actions.ts +8 -8
- package/extensions/googlechat/src/api.ts +1 -1
- package/extensions/googlechat/src/channel.ts +23 -23
- package/extensions/googlechat/src/monitor.ts +9 -9
- package/extensions/googlechat/src/onboarding.ts +11 -11
- package/extensions/googlechat/src/runtime.ts +1 -1
- package/extensions/googlechat/src/types.config.ts +1 -1
- package/extensions/imessage/index.ts +3 -3
- package/extensions/imessage/package.json +4 -4
- package/extensions/imessage/src/channel.ts +1 -1
- package/extensions/imessage/src/runtime.ts +1 -1
- package/extensions/line/index.ts +3 -3
- package/extensions/line/node_modules/.bin/openclaw +16 -0
- package/extensions/line/node_modules/.bin/openclaw.CMD +7 -0
- package/extensions/line/node_modules/.bin/openclaw.ps1 +28 -0
- package/extensions/line/package.json +6 -6
- package/extensions/line/src/card-command.ts +3 -3
- package/extensions/line/src/channel.logout.test.ts +4 -4
- package/extensions/line/src/channel.sendPayload.test.ts +8 -8
- package/extensions/line/src/channel.ts +5 -5
- package/extensions/line/src/runtime.ts +1 -1
- package/extensions/llm-task/README.md +4 -4
- package/extensions/llm-task/index.ts +2 -2
- package/extensions/llm-task/package.json +4 -4
- package/extensions/llm-task/src/llm-task-tool.ts +6 -6
- package/extensions/lobster/README.md +7 -7
- package/extensions/lobster/index.ts +2 -2
- package/extensions/lobster/package.json +3 -3
- package/extensions/lobster/src/lobster-tool.test.ts +7 -7
- package/extensions/lobster/src/lobster-tool.ts +2 -2
- package/extensions/matrix/CHANGELOG.md +14 -9
- package/extensions/matrix/index.ts +3 -3
- package/extensions/matrix/node_modules/.bin/markdown-it +0 -5
- package/extensions/matrix/node_modules/.bin/markdown-it.CMD +0 -5
- package/extensions/matrix/node_modules/.bin/markdown-it.ps1 +0 -13
- package/extensions/matrix/node_modules/.bin/openclaw +16 -0
- package/extensions/matrix/node_modules/.bin/openclaw.CMD +7 -0
- package/extensions/matrix/node_modules/.bin/openclaw.ps1 +28 -0
- package/extensions/matrix/package.json +6 -6
- package/extensions/matrix/src/actions.ts +1 -1
- package/extensions/matrix/src/channel.directory.test.ts +1 -1
- package/extensions/matrix/src/channel.ts +1 -1
- package/extensions/matrix/src/config-schema.ts +1 -1
- package/extensions/matrix/src/directory-live.ts +1 -1
- package/extensions/matrix/src/group-mentions.ts +1 -1
- package/extensions/matrix/src/matrix/accounts.ts +1 -1
- package/extensions/matrix/src/matrix/actions/client.ts +1 -1
- package/extensions/matrix/src/matrix/client/config.ts +1 -1
- package/extensions/matrix/src/matrix/deps.ts +1 -1
- package/extensions/matrix/src/matrix/monitor/allowlist.ts +1 -1
- package/extensions/matrix/src/matrix/monitor/auto-join.ts +1 -1
- package/extensions/matrix/src/matrix/monitor/events.ts +1 -1
- package/extensions/matrix/src/matrix/monitor/handler.ts +5 -5
- package/extensions/matrix/src/matrix/monitor/index.ts +1 -1
- package/extensions/matrix/src/matrix/monitor/location.ts +1 -1
- package/extensions/matrix/src/matrix/monitor/media.test.ts +1 -1
- package/extensions/matrix/src/matrix/monitor/replies.ts +1 -1
- package/extensions/matrix/src/matrix/monitor/rooms.ts +1 -1
- package/extensions/matrix/src/matrix/poll-types.ts +1 -1
- package/extensions/matrix/src/matrix/send/client.ts +1 -1
- package/extensions/matrix/src/matrix/send.test.ts +1 -1
- package/extensions/matrix/src/matrix/send.ts +1 -1
- package/extensions/matrix/src/onboarding.ts +2 -2
- package/extensions/matrix/src/outbound.ts +1 -1
- package/extensions/matrix/src/resolve-targets.ts +1 -1
- package/extensions/matrix/src/runtime.ts +1 -1
- package/extensions/matrix/src/tool-actions.ts +1 -1
- package/extensions/mattermost/index.ts +3 -3
- package/extensions/mattermost/package.json +5 -5
- package/extensions/mattermost/src/channel.ts +1 -1
- package/extensions/mattermost/src/config-schema.ts +1 -1
- package/extensions/mattermost/src/group-mentions.ts +1 -1
- package/extensions/mattermost/src/mattermost/accounts.ts +9 -9
- package/extensions/mattermost/src/mattermost/monitor-helpers.ts +5 -5
- package/extensions/mattermost/src/mattermost/monitor.ts +4 -4
- package/extensions/mattermost/src/onboarding-helpers.ts +4 -4
- package/extensions/mattermost/src/onboarding.ts +4 -4
- package/extensions/mattermost/src/runtime.ts +1 -1
- package/extensions/mattermost/src/types.ts +1 -1
- package/extensions/memory-core/index.ts +3 -3
- package/extensions/memory-core/node_modules/.bin/openclaw +16 -0
- package/extensions/memory-core/node_modules/.bin/openclaw.CMD +7 -0
- package/extensions/memory-core/node_modules/.bin/openclaw.ps1 +28 -0
- package/extensions/memory-core/package.json +6 -6
- package/extensions/memory-lancedb/config.ts +26 -2
- package/extensions/memory-lancedb/index.test.ts +3 -3
- package/extensions/memory-lancedb/index.ts +4 -4
- package/extensions/memory-lancedb/node_modules/.bin/openai +0 -5
- package/extensions/memory-lancedb/node_modules/.bin/openai.CMD +0 -5
- package/extensions/memory-lancedb/node_modules/.bin/openai.ps1 +0 -13
- package/extensions/memory-lancedb/{clawdbot.plugin.json → openclaw.plugin.json} +1 -1
- package/extensions/memory-lancedb/package.json +4 -4
- package/extensions/msteams/CHANGELOG.md +12 -7
- package/extensions/msteams/index.ts +3 -3
- package/extensions/msteams/node_modules/.bin/openclaw +16 -0
- package/extensions/msteams/node_modules/.bin/openclaw.CMD +7 -0
- package/extensions/msteams/node_modules/.bin/openclaw.ps1 +28 -0
- package/extensions/msteams/package.json +6 -6
- package/extensions/msteams/src/attachments.test.ts +1 -1
- package/extensions/msteams/src/channel.directory.test.ts +2 -2
- package/extensions/msteams/src/channel.ts +3 -3
- package/extensions/msteams/src/conversation-store-fs.test.ts +6 -5
- package/extensions/msteams/src/directory-live.ts +1 -1
- package/extensions/msteams/src/graph-upload.ts +4 -4
- package/extensions/msteams/src/media-helpers.ts +1 -1
- package/extensions/msteams/src/messenger.test.ts +1 -1
- package/extensions/msteams/src/messenger.ts +1 -1
- package/extensions/msteams/src/monitor-handler/message-handler.ts +1 -1
- package/extensions/msteams/src/monitor-handler.ts +2 -2
- package/extensions/msteams/src/monitor.ts +3 -3
- package/extensions/msteams/src/onboarding.ts +11 -11
- package/extensions/msteams/src/outbound.ts +1 -1
- package/extensions/msteams/src/policy.test.ts +1 -1
- package/extensions/msteams/src/policy.ts +2 -2
- package/extensions/msteams/src/polls-store.test.ts +1 -1
- package/extensions/msteams/src/polls.test.ts +6 -5
- package/extensions/msteams/src/polls.ts +9 -8
- package/extensions/msteams/src/probe.test.ts +1 -1
- package/extensions/msteams/src/probe.ts +1 -1
- package/extensions/msteams/src/reply-dispatcher.ts +3 -3
- package/extensions/msteams/src/runtime.ts +1 -1
- package/extensions/msteams/src/send-context.ts +2 -2
- package/extensions/msteams/src/send.ts +5 -5
- package/extensions/msteams/src/token.ts +1 -1
- package/extensions/nextcloud-talk/index.ts +3 -3
- package/extensions/nextcloud-talk/package.json +5 -5
- package/extensions/nextcloud-talk/src/accounts.ts +2 -2
- package/extensions/nextcloud-talk/src/channel.ts +8 -8
- package/extensions/nextcloud-talk/src/config-schema.ts +1 -1
- package/extensions/nextcloud-talk/src/inbound.ts +8 -8
- package/extensions/nextcloud-talk/src/monitor.ts +1 -1
- package/extensions/nextcloud-talk/src/onboarding.ts +2 -2
- package/extensions/nextcloud-talk/src/policy.ts +2 -2
- package/extensions/nextcloud-talk/src/room-info.ts +1 -1
- package/extensions/nextcloud-talk/src/runtime.ts +1 -1
- package/extensions/nextcloud-talk/src/types.ts +1 -1
- package/extensions/nostr/CHANGELOG.md +9 -4
- package/extensions/nostr/README.md +5 -5
- package/extensions/nostr/index.ts +6 -6
- package/extensions/nostr/node_modules/.bin/openclaw +16 -0
- package/extensions/nostr/node_modules/.bin/openclaw.CMD +7 -0
- package/extensions/nostr/node_modules/.bin/openclaw.ps1 +28 -0
- package/extensions/nostr/package.json +6 -6
- package/extensions/nostr/src/channel.ts +2 -2
- package/extensions/nostr/src/config-schema.ts +1 -1
- package/extensions/nostr/src/nostr-state-store.test.ts +9 -8
- package/extensions/nostr/src/runtime.ts +1 -1
- package/extensions/nostr/src/types.ts +4 -4
- package/extensions/open-prose/index.ts +2 -2
- package/extensions/open-prose/package.json +3 -3
- package/extensions/open-prose/skills/prose/SKILL.md +5 -5
- package/extensions/open-prose/skills/prose/prose.md +4 -4
- package/extensions/qwen-portal-auth/README.md +3 -3
- package/extensions/qwen-portal-auth/index.ts +1 -1
- package/extensions/signal/index.ts +3 -3
- package/extensions/signal/package.json +4 -4
- package/extensions/signal/src/channel.ts +1 -1
- package/extensions/signal/src/runtime.ts +1 -1
- package/extensions/slack/index.ts +3 -3
- package/extensions/slack/package.json +4 -4
- package/extensions/slack/src/channel.ts +1 -1
- package/extensions/slack/src/runtime.ts +1 -1
- package/extensions/telegram/index.ts +3 -3
- package/extensions/telegram/package.json +4 -4
- package/extensions/telegram/src/channel.ts +3 -3
- package/extensions/telegram/src/runtime.ts +1 -1
- package/extensions/tlon/README.md +3 -3
- package/extensions/tlon/index.ts +3 -3
- package/extensions/tlon/package.json +5 -5
- package/extensions/tlon/src/channel.ts +15 -15
- package/extensions/tlon/src/config-schema.ts +1 -1
- package/extensions/tlon/src/monitor/discovery.ts +1 -1
- package/extensions/tlon/src/monitor/history.ts +1 -1
- package/extensions/tlon/src/monitor/index.ts +3 -3
- package/extensions/tlon/src/onboarding.ts +4 -4
- package/extensions/tlon/src/runtime.ts +1 -1
- package/extensions/tlon/src/types.ts +3 -3
- package/extensions/twitch/CHANGELOG.md +6 -1
- package/extensions/twitch/README.md +8 -8
- package/extensions/twitch/index.ts +3 -3
- package/extensions/twitch/node_modules/.bin/openclaw +16 -0
- package/extensions/twitch/node_modules/.bin/openclaw.CMD +7 -0
- package/extensions/twitch/node_modules/.bin/openclaw.ps1 +28 -0
- package/extensions/twitch/package.json +5 -5
- package/extensions/twitch/src/actions.ts +1 -1
- package/extensions/twitch/src/config-schema.ts +1 -1
- package/extensions/twitch/src/config.ts +3 -3
- package/extensions/twitch/src/monitor.ts +3 -3
- package/extensions/twitch/src/onboarding.test.ts +1 -1
- package/extensions/twitch/src/onboarding.ts +13 -13
- package/extensions/twitch/src/outbound.test.ts +2 -2
- package/extensions/twitch/src/outbound.ts +2 -2
- package/extensions/twitch/src/plugin.test.ts +2 -2
- package/extensions/twitch/src/plugin.ts +9 -9
- package/extensions/twitch/src/runtime.ts +1 -1
- package/extensions/twitch/src/send.test.ts +2 -2
- package/extensions/twitch/src/send.ts +5 -5
- package/extensions/twitch/src/token.test.ts +12 -12
- package/extensions/twitch/src/token.ts +7 -7
- package/extensions/twitch/src/twitch-client.ts +4 -4
- package/extensions/twitch/src/types.ts +3 -3
- package/extensions/twitch/src/utils/markdown.ts +1 -1
- package/extensions/voice-call/CHANGELOG.md +16 -11
- package/extensions/voice-call/README.md +16 -16
- package/extensions/voice-call/package.json +4 -4
- package/extensions/voice-call/src/cli.ts +16 -4
- package/extensions/voice-call/src/core-bridge.ts +5 -5
- package/extensions/voice-call/src/manager.test.ts +2 -2
- package/extensions/voice-call/src/manager.ts +17 -5
- package/extensions/voice-call/src/response-generator.ts +1 -1
- package/extensions/whatsapp/index.ts +3 -3
- package/extensions/whatsapp/package.json +4 -4
- package/extensions/whatsapp/src/channel.ts +1 -1
- package/extensions/whatsapp/src/runtime.ts +1 -1
- package/extensions/zalo/CHANGELOG.md +14 -9
- package/extensions/zalo/README.md +4 -4
- package/extensions/zalo/index.ts +3 -3
- package/extensions/zalo/node_modules/.bin/openclaw +16 -0
- package/extensions/zalo/node_modules/.bin/openclaw.CMD +7 -0
- package/extensions/zalo/node_modules/.bin/openclaw.ps1 +28 -0
- package/extensions/zalo/package.json +6 -6
- package/extensions/zalo/src/accounts.ts +9 -9
- package/extensions/zalo/src/actions.ts +6 -6
- package/extensions/zalo/src/channel.directory.test.ts +2 -2
- package/extensions/zalo/src/channel.ts +20 -20
- package/extensions/zalo/src/config-schema.ts +1 -1
- package/extensions/zalo/src/monitor.ts +9 -9
- package/extensions/zalo/src/monitor.webhook.test.ts +2 -2
- package/extensions/zalo/src/onboarding.ts +27 -27
- package/extensions/zalo/src/runtime.ts +1 -1
- package/extensions/zalo/src/send.ts +2 -2
- package/extensions/zalo/src/status-issues.ts +1 -1
- package/extensions/zalo/src/token.ts +1 -1
- package/extensions/zalouser/CHANGELOG.md +9 -4
- package/extensions/zalouser/README.md +18 -18
- package/extensions/zalouser/index.ts +3 -3
- package/extensions/zalouser/node_modules/.bin/openclaw +16 -0
- package/extensions/zalouser/node_modules/.bin/openclaw.CMD +7 -0
- package/extensions/zalouser/node_modules/.bin/openclaw.ps1 +28 -0
- package/extensions/zalouser/package.json +6 -6
- package/extensions/zalouser/src/accounts.ts +10 -10
- package/extensions/zalouser/src/channel.ts +27 -27
- package/extensions/zalouser/src/config-schema.ts +1 -1
- package/extensions/zalouser/src/monitor.ts +5 -5
- package/extensions/zalouser/src/onboarding.ts +32 -32
- package/extensions/zalouser/src/runtime.ts +1 -1
- package/extensions/zalouser/src/status-issues.ts +2 -2
- package/openclaw.mjs +14 -0
- package/package.json +35 -25
- package/scripts/postinstall.js +1 -0
- package/skills/1password/SKILL.md +3 -3
- package/skills/apple-notes/SKILL.md +2 -2
- package/skills/apple-reminders/SKILL.md +1 -1
- package/skills/bear-notes/SKILL.md +1 -1
- package/skills/bird/SKILL.md +1 -1
- package/skills/blogwatcher/SKILL.md +1 -1
- package/skills/blucli/SKILL.md +1 -1
- package/skills/bluebubbles/SKILL.md +1 -1
- package/skills/camsnap/SKILL.md +1 -1
- package/skills/canvas/SKILL.md +6 -6
- package/skills/clawdhub/SKILL.md +2 -2
- package/skills/coding-agent/SKILL.md +6 -6
- package/skills/discord/SKILL.md +5 -5
- package/skills/eightctl/SKILL.md +1 -1
- package/skills/food-order/SKILL.md +1 -1
- package/skills/gemini/SKILL.md +1 -1
- package/skills/gifgrep/SKILL.md +1 -1
- package/skills/github/SKILL.md +1 -1
- package/skills/gog/SKILL.md +1 -1
- package/skills/goplaces/SKILL.md +1 -1
- package/skills/himalaya/SKILL.md +1 -1
- package/skills/imsg/SKILL.md +1 -1
- package/skills/local-places/SKILL.md +1 -1
- package/skills/mcporter/SKILL.md +1 -1
- package/skills/model-usage/SKILL.md +1 -1
- package/skills/nano-banana-pro/SKILL.md +3 -3
- package/skills/nano-banana-pro/scripts/generate_image.py +1 -1
- package/skills/nano-pdf/SKILL.md +1 -1
- package/skills/notion/SKILL.md +1 -1
- package/skills/obsidian/SKILL.md +1 -1
- package/skills/openai-image-gen/SKILL.md +1 -1
- package/skills/openai-whisper/SKILL.md +1 -1
- package/skills/openai-whisper-api/SKILL.md +2 -2
- package/skills/openhue/SKILL.md +1 -1
- package/skills/oracle/SKILL.md +1 -1
- package/skills/ordercli/SKILL.md +1 -1
- package/skills/peekaboo/SKILL.md +1 -1
- package/skills/sag/SKILL.md +1 -1
- package/skills/session-logs/SKILL.md +1 -1
- package/skills/sherpa-onnx-tts/SKILL.md +2 -2
- package/skills/slack/SKILL.md +4 -4
- package/skills/songsee/SKILL.md +1 -1
- package/skills/sonoscli/SKILL.md +1 -1
- package/skills/spotify-player/SKILL.md +1 -1
- package/skills/summarize/SKILL.md +1 -1
- package/skills/things-mac/SKILL.md +3 -3
- package/skills/tmux/SKILL.md +7 -7
- package/skills/trello/SKILL.md +2 -2
- package/skills/video-frames/SKILL.md +1 -1
- package/skills/voice-call/SKILL.md +4 -4
- package/skills/wacli/SKILL.md +2 -2
- package/skills/weather/SKILL.md +1 -1
- package/assets/images/icon.png +0 -0
- package/dist/control-ui/assets/index-BAFzd9IE.css +0 -1
- package/dist/control-ui/assets/index-CxLFx0Ae.js.map +0 -1
- package/dist/control-ui/pixel_pig_icon.png +0 -0
- package/dist/daemon/legacy.js +0 -44
- package/dist/extension.js +0 -70
- /package/dist/config/{types.clawdbot.js → types.openclaw.js} +0 -0
- /package/docs/{whatsapp-clawd.jpg → whatsapp-openclaw.jpg} +0 -0
- /package/extensions/bluebubbles/{clawdbot.plugin.json → openclaw.plugin.json} +0 -0
- /package/extensions/copilot-proxy/{clawdbot.plugin.json → openclaw.plugin.json} +0 -0
- /package/extensions/diagnostics-otel/{clawdbot.plugin.json → openclaw.plugin.json} +0 -0
- /package/extensions/discord/{clawdbot.plugin.json → openclaw.plugin.json} +0 -0
- /package/extensions/google-antigravity-auth/{clawdbot.plugin.json → openclaw.plugin.json} +0 -0
- /package/extensions/google-gemini-cli-auth/{clawdbot.plugin.json → openclaw.plugin.json} +0 -0
- /package/extensions/googlechat/{clawdbot.plugin.json → openclaw.plugin.json} +0 -0
- /package/extensions/imessage/{clawdbot.plugin.json → openclaw.plugin.json} +0 -0
- /package/extensions/line/{clawdbot.plugin.json → openclaw.plugin.json} +0 -0
- /package/extensions/llm-task/{clawdbot.plugin.json → openclaw.plugin.json} +0 -0
- /package/extensions/lobster/{clawdbot.plugin.json → openclaw.plugin.json} +0 -0
- /package/extensions/matrix/{clawdbot.plugin.json → openclaw.plugin.json} +0 -0
- /package/extensions/mattermost/{clawdbot.plugin.json → openclaw.plugin.json} +0 -0
- /package/extensions/memory-core/{clawdbot.plugin.json → openclaw.plugin.json} +0 -0
- /package/extensions/msteams/{clawdbot.plugin.json → openclaw.plugin.json} +0 -0
- /package/extensions/nextcloud-talk/{clawdbot.plugin.json → openclaw.plugin.json} +0 -0
- /package/extensions/nostr/{clawdbot.plugin.json → openclaw.plugin.json} +0 -0
- /package/extensions/open-prose/{clawdbot.plugin.json → openclaw.plugin.json} +0 -0
- /package/extensions/qwen-portal-auth/{clawdbot.plugin.json → openclaw.plugin.json} +0 -0
- /package/extensions/signal/{clawdbot.plugin.json → openclaw.plugin.json} +0 -0
- /package/extensions/slack/{clawdbot.plugin.json → openclaw.plugin.json} +0 -0
- /package/extensions/telegram/{clawdbot.plugin.json → openclaw.plugin.json} +0 -0
- /package/extensions/tlon/{clawdbot.plugin.json → openclaw.plugin.json} +0 -0
- /package/extensions/twitch/{clawdbot.plugin.json → openclaw.plugin.json} +0 -0
- /package/extensions/voice-call/{clawdbot.plugin.json → openclaw.plugin.json} +0 -0
- /package/extensions/whatsapp/{clawdbot.plugin.json → openclaw.plugin.json} +0 -0
- /package/extensions/zalo/{clawdbot.plugin.json → openclaw.plugin.json} +0 -0
- /package/extensions/zalouser/{clawdbot.plugin.json → openclaw.plugin.json} +0 -0
package/dist/cli/nodes-screen.js
CHANGED
|
@@ -28,7 +28,7 @@ export function screenRecordTempPath(opts) {
|
|
|
28
28
|
const tmpDir = opts.tmpDir ?? os.tmpdir();
|
|
29
29
|
const id = opts.id ?? randomUUID();
|
|
30
30
|
const ext = opts.ext.startsWith(".") ? opts.ext : `.${opts.ext}`;
|
|
31
|
-
return path.join(tmpDir, `
|
|
31
|
+
return path.join(tmpDir, `openclaw-screen-record-${id}${ext}`);
|
|
32
32
|
}
|
|
33
33
|
export async function writeScreenRecordToFile(filePath, base64) {
|
|
34
34
|
return writeBase64ToFile(filePath, base64);
|
package/dist/cli/pairing-cli.js
CHANGED
|
@@ -40,7 +40,7 @@ export function registerPairingCli(program) {
|
|
|
40
40
|
const pairing = program
|
|
41
41
|
.command("pairing")
|
|
42
42
|
.description("Secure DM pairing (approve inbound requests)")
|
|
43
|
-
.addHelpText("after", () => `\n${theme.muted("Docs:")} ${formatDocsLink("/cli/pairing", "docs.
|
|
43
|
+
.addHelpText("after", () => `\n${theme.muted("Docs:")} ${formatDocsLink("/cli/pairing", "docs.openclaw.ai/cli/pairing")}\n`);
|
|
44
44
|
pairing
|
|
45
45
|
.command("list")
|
|
46
46
|
.description("List pending pairing requests")
|
|
@@ -92,10 +92,10 @@ export function registerPairingCli(program) {
|
|
|
92
92
|
const channelRaw = opts.channel ?? codeOrChannel;
|
|
93
93
|
const resolvedCode = opts.channel ? codeOrChannel : code;
|
|
94
94
|
if (!opts.channel && !code) {
|
|
95
|
-
throw new Error(`Usage: ${formatCliCommand("
|
|
95
|
+
throw new Error(`Usage: ${formatCliCommand("openclaw pairing approve <channel> <code>")} (or: ${formatCliCommand("openclaw pairing approve --channel <channel> <code>")})`);
|
|
96
96
|
}
|
|
97
97
|
if (opts.channel && code != null) {
|
|
98
|
-
throw new Error(`Too many arguments. Use: ${formatCliCommand("
|
|
98
|
+
throw new Error(`Too many arguments. Use: ${formatCliCommand("openclaw pairing approve --channel <channel> <code>")}`);
|
|
99
99
|
}
|
|
100
100
|
const channel = parseChannel(channelRaw, channels);
|
|
101
101
|
const approved = await approveChannelPairingCode({
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { resolveAgentWorkspaceDir, resolveDefaultAgentId } from "../agents/agent-scope.js";
|
|
2
2
|
import { loadConfig } from "../config/config.js";
|
|
3
3
|
import { createSubsystemLogger } from "../logging.js";
|
|
4
|
-
import {
|
|
4
|
+
import { loadOpenClawPlugins } from "../plugins/loader.js";
|
|
5
5
|
const log = createSubsystemLogger("plugins");
|
|
6
6
|
let pluginRegistryLoaded = false;
|
|
7
7
|
export function ensurePluginRegistryLoaded() {
|
|
@@ -15,7 +15,7 @@ export function ensurePluginRegistryLoaded() {
|
|
|
15
15
|
error: (msg) => log.error(msg),
|
|
16
16
|
debug: (msg) => log.debug(msg),
|
|
17
17
|
};
|
|
18
|
-
|
|
18
|
+
loadOpenClawPlugins({
|
|
19
19
|
config,
|
|
20
20
|
workspaceDir,
|
|
21
21
|
logger,
|
package/dist/cli/plugins-cli.js
CHANGED
|
@@ -66,8 +66,8 @@ function logSlotWarnings(warnings) {
|
|
|
66
66
|
export function registerPluginsCli(program) {
|
|
67
67
|
const plugins = program
|
|
68
68
|
.command("plugins")
|
|
69
|
-
.description("Manage
|
|
70
|
-
.addHelpText("after", () => `\n${theme.muted("Docs:")} ${formatDocsLink("/cli/plugins", "docs.
|
|
69
|
+
.description("Manage OpenClaw plugins/extensions")
|
|
70
|
+
.addHelpText("after", () => `\n${theme.muted("Docs:")} ${formatDocsLink("/cli/plugins", "docs.openclaw.ai/cli/plugins")}\n`);
|
|
71
71
|
plugins
|
|
72
72
|
.command("list")
|
|
73
73
|
.description("List discovered plugins")
|
|
@@ -461,7 +461,7 @@ export function registerPluginsCli(program) {
|
|
|
461
461
|
lines.push(`- ${target}${diag.message}`);
|
|
462
462
|
}
|
|
463
463
|
}
|
|
464
|
-
const docs = formatDocsLink("/plugin", "docs.
|
|
464
|
+
const docs = formatDocsLink("/plugin", "docs.openclaw.ai/plugin");
|
|
465
465
|
lines.push("");
|
|
466
466
|
lines.push(`${theme.muted("Docs:")} ${docs}`);
|
|
467
467
|
defaultRuntime.log(lines.join("\n"));
|
package/dist/cli/profile.js
CHANGED
|
@@ -64,7 +64,7 @@ export function parseCliProfileArgs(argv) {
|
|
|
64
64
|
}
|
|
65
65
|
function resolveProfileStateDir(profile, homedir) {
|
|
66
66
|
const suffix = profile.toLowerCase() === "default" ? "" : `-${profile}`;
|
|
67
|
-
return path.join(homedir(), `.
|
|
67
|
+
return path.join(homedir(), `.openclaw${suffix}`);
|
|
68
68
|
}
|
|
69
69
|
export function applyCliProfileEnv(params) {
|
|
70
70
|
const env = params.env ?? process.env;
|
|
@@ -73,14 +73,14 @@ export function applyCliProfileEnv(params) {
|
|
|
73
73
|
if (!profile)
|
|
74
74
|
return;
|
|
75
75
|
// Convenience only: fill defaults, never override explicit env values.
|
|
76
|
-
env.
|
|
77
|
-
const stateDir = env.
|
|
78
|
-
if (!env.
|
|
79
|
-
env.
|
|
80
|
-
if (!env.
|
|
81
|
-
env.
|
|
76
|
+
env.OPENCLAW_PROFILE = profile;
|
|
77
|
+
const stateDir = env.OPENCLAW_STATE_DIR?.trim() || resolveProfileStateDir(profile, homedir);
|
|
78
|
+
if (!env.OPENCLAW_STATE_DIR?.trim())
|
|
79
|
+
env.OPENCLAW_STATE_DIR = stateDir;
|
|
80
|
+
if (!env.OPENCLAW_CONFIG_PATH?.trim()) {
|
|
81
|
+
env.OPENCLAW_CONFIG_PATH = path.join(stateDir, "openclaw.json");
|
|
82
82
|
}
|
|
83
|
-
if (profile === "dev" && !env.
|
|
84
|
-
env.
|
|
83
|
+
if (profile === "dev" && !env.OPENCLAW_GATEWAY_PORT?.trim()) {
|
|
84
|
+
env.OPENCLAW_GATEWAY_PORT = "19001";
|
|
85
85
|
}
|
|
86
86
|
}
|
|
@@ -60,7 +60,7 @@ export async function ensureConfigReady(params) {
|
|
|
60
60
|
params.runtime.error(legacyIssues.map((issue) => ` ${error(issue)}`).join("\n"));
|
|
61
61
|
}
|
|
62
62
|
params.runtime.error("");
|
|
63
|
-
params.runtime.error(`${muted("Run:")} ${commandText(formatCliCommand("
|
|
63
|
+
params.runtime.error(`${muted("Run:")} ${commandText(formatCliCommand("openclaw doctor --fix"))}`);
|
|
64
64
|
if (!allowInvalid) {
|
|
65
65
|
params.runtime.exit(1);
|
|
66
66
|
}
|
package/dist/cli/program/help.js
CHANGED
|
@@ -4,21 +4,24 @@ import { formatCliBannerLine, hasEmittedCliBanner } from "../banner.js";
|
|
|
4
4
|
import { replaceCliName, resolveCliName } from "../cli-name.js";
|
|
5
5
|
const CLI_NAME = resolveCliName();
|
|
6
6
|
const EXAMPLES = [
|
|
7
|
-
["moltbot channels login --verbose", "Link personal WhatsApp Web and show QR + connection logs."],
|
|
8
7
|
[
|
|
9
|
-
|
|
8
|
+
"openclaw channels login --verbose",
|
|
9
|
+
"Link personal WhatsApp Web and show QR + connection logs.",
|
|
10
|
+
],
|
|
11
|
+
[
|
|
12
|
+
'openclaw message send --target +15555550123 --message "Hi" --json',
|
|
10
13
|
"Send via your web session and print JSON result.",
|
|
11
14
|
],
|
|
12
|
-
["
|
|
13
|
-
["
|
|
14
|
-
["
|
|
15
|
-
["
|
|
15
|
+
["openclaw gateway --port 18789", "Run the WebSocket Gateway locally."],
|
|
16
|
+
["openclaw --dev gateway", "Run a dev Gateway (isolated state/config) on ws://127.0.0.1:19001."],
|
|
17
|
+
["openclaw gateway --force", "Kill anything bound to the default gateway port, then start it."],
|
|
18
|
+
["openclaw gateway ...", "Gateway control via WebSocket."],
|
|
16
19
|
[
|
|
17
|
-
'
|
|
20
|
+
'openclaw agent --to +15555550123 --message "Run summary" --deliver',
|
|
18
21
|
"Talk directly to the agent using the Gateway; optionally send the WhatsApp reply.",
|
|
19
22
|
],
|
|
20
23
|
[
|
|
21
|
-
'
|
|
24
|
+
'openclaw message send --channel telegram --target @mychat --message "Hi"',
|
|
22
25
|
"Send via your Telegram bot.",
|
|
23
26
|
],
|
|
24
27
|
];
|
|
@@ -27,8 +30,8 @@ export function configureProgramHelp(program, ctx) {
|
|
|
27
30
|
.name(CLI_NAME)
|
|
28
31
|
.description("")
|
|
29
32
|
.version(ctx.programVersion)
|
|
30
|
-
.option("--dev", "Dev profile: isolate state under ~/.
|
|
31
|
-
.option("--profile <name>", "Use a named profile (isolates
|
|
33
|
+
.option("--dev", "Dev profile: isolate state under ~/.openclaw-dev, default gateway port 19001, and shift derived ports (browser/canvas)")
|
|
34
|
+
.option("--profile <name>", "Use a named profile (isolates OPENCLAW_STATE_DIR/OPENCLAW_CONFIG_PATH under ~/.openclaw-<name>)");
|
|
32
35
|
program.option("--no-color", "Disable ANSI colors", false);
|
|
33
36
|
program.configureHelp({
|
|
34
37
|
optionTerm: (option) => theme.option(option.flags),
|
|
@@ -62,7 +65,7 @@ export function configureProgramHelp(program, ctx) {
|
|
|
62
65
|
program.addHelpText("afterAll", ({ command }) => {
|
|
63
66
|
if (command !== program)
|
|
64
67
|
return "";
|
|
65
|
-
const docs = formatDocsLink("/cli", "docs.
|
|
68
|
+
const docs = formatDocsLink("/cli", "docs.openclaw.ai/cli");
|
|
66
69
|
return `\n${theme.heading("Examples:")}\n${fmtExamples}\n\n${theme.muted("Docs:")} ${docs}\n`;
|
|
67
70
|
});
|
|
68
71
|
}
|
|
@@ -26,7 +26,7 @@ export function registerPreActionHooks(program, programVersion) {
|
|
|
26
26
|
if (hasHelpOrVersion(argv))
|
|
27
27
|
return;
|
|
28
28
|
const commandPath = getCommandPath(argv, 2);
|
|
29
|
-
const hideBanner = isTruthyEnvValue(process.env.
|
|
29
|
+
const hideBanner = isTruthyEnvValue(process.env.OPENCLAW_HIDE_BANNER) ||
|
|
30
30
|
commandPath[0] === "update" ||
|
|
31
31
|
(commandPath[0] === "plugins" && commandPath[1] === "update");
|
|
32
32
|
if (!hideBanner) {
|
|
@@ -31,24 +31,24 @@ export function registerAgentCommands(program, args) {
|
|
|
31
31
|
.addHelpText("after", () => `
|
|
32
32
|
${theme.heading("Examples:")}
|
|
33
33
|
${formatHelpExamples([
|
|
34
|
-
['
|
|
35
|
-
['
|
|
34
|
+
['openclaw agent --to +15555550123 --message "status update"', "Start a new session."],
|
|
35
|
+
['openclaw agent --agent ops --message "Summarize logs"', "Use a specific agent."],
|
|
36
36
|
[
|
|
37
|
-
'
|
|
37
|
+
'openclaw agent --session-id 1234 --message "Summarize inbox" --thinking medium',
|
|
38
38
|
"Target a session with explicit thinking level.",
|
|
39
39
|
],
|
|
40
40
|
[
|
|
41
|
-
'
|
|
41
|
+
'openclaw agent --to +15555550123 --message "Trace logs" --verbose on --json',
|
|
42
42
|
"Enable verbose logging and JSON output.",
|
|
43
43
|
],
|
|
44
|
-
['
|
|
44
|
+
['openclaw agent --to +15555550123 --message "Summon reply" --deliver', "Deliver reply."],
|
|
45
45
|
[
|
|
46
|
-
'
|
|
46
|
+
'openclaw agent --agent ops --message "Generate report" --deliver --reply-channel slack --reply-to "#reports"',
|
|
47
47
|
"Send reply to a different channel/target.",
|
|
48
48
|
],
|
|
49
49
|
])}
|
|
50
50
|
|
|
51
|
-
${theme.muted("Docs:")} ${formatDocsLink("/cli/agent", "docs.
|
|
51
|
+
${theme.muted("Docs:")} ${formatDocsLink("/cli/agent", "docs.openclaw.ai/cli/agent")}`)
|
|
52
52
|
.action(async (opts) => {
|
|
53
53
|
const verboseLevel = typeof opts.verbose === "string" ? opts.verbose.toLowerCase() : "";
|
|
54
54
|
setVerbose(verboseLevel === "on");
|
|
@@ -61,7 +61,7 @@ ${theme.muted("Docs:")} ${formatDocsLink("/cli/agent", "docs.molt.bot/cli/agent"
|
|
|
61
61
|
const agents = program
|
|
62
62
|
.command("agents")
|
|
63
63
|
.description("Manage isolated agents (workspaces + auth + routing)")
|
|
64
|
-
.addHelpText("after", () => `\n${theme.muted("Docs:")} ${formatDocsLink("/cli/agents", "docs.
|
|
64
|
+
.addHelpText("after", () => `\n${theme.muted("Docs:")} ${formatDocsLink("/cli/agents", "docs.openclaw.ai/cli/agents")}\n`);
|
|
65
65
|
agents
|
|
66
66
|
.command("list")
|
|
67
67
|
.description("List configured agents")
|
|
@@ -116,11 +116,14 @@ ${theme.muted("Docs:")} ${formatDocsLink("/cli/agent", "docs.molt.bot/cli/agent"
|
|
|
116
116
|
.addHelpText("after", () => `
|
|
117
117
|
${theme.heading("Examples:")}
|
|
118
118
|
${formatHelpExamples([
|
|
119
|
-
['
|
|
120
|
-
["
|
|
121
|
-
["moltbot agents set-identity --workspace ~/clawd --from-identity", "Load from IDENTITY.md."],
|
|
119
|
+
['openclaw agents set-identity --agent main --name "OpenClaw" --emoji "🦞"', "Set name + emoji."],
|
|
120
|
+
["openclaw agents set-identity --agent main --avatar avatars/openclaw.png", "Set avatar path."],
|
|
122
121
|
[
|
|
123
|
-
"
|
|
122
|
+
"openclaw agents set-identity --workspace ~/.openclaw/workspace --from-identity",
|
|
123
|
+
"Load from IDENTITY.md.",
|
|
124
|
+
],
|
|
125
|
+
[
|
|
126
|
+
"openclaw agents set-identity --identity-file ~/.openclaw/workspace/IDENTITY.md --agent main",
|
|
124
127
|
"Use a specific IDENTITY.md.",
|
|
125
128
|
],
|
|
126
129
|
])}
|
|
@@ -7,7 +7,7 @@ export function registerConfigureCommand(program) {
|
|
|
7
7
|
program
|
|
8
8
|
.command("configure")
|
|
9
9
|
.description("Interactive prompt to set up credentials, devices, and agent defaults")
|
|
10
|
-
.addHelpText("after", () => `\n${theme.muted("Docs:")} ${formatDocsLink("/cli/configure", "docs.
|
|
10
|
+
.addHelpText("after", () => `\n${theme.muted("Docs:")} ${formatDocsLink("/cli/configure", "docs.openclaw.ai/cli/configure")}\n`)
|
|
11
11
|
.option("--section <section>", `Configuration sections (repeatable). Options: ${CONFIGURE_WIZARD_SECTIONS.join(", ")}`, (value, previous) => [...previous, value], [])
|
|
12
12
|
.action(async (opts) => {
|
|
13
13
|
await runCommandWithRuntime(defaultRuntime, async () => {
|
|
@@ -10,7 +10,7 @@ export function registerMaintenanceCommands(program) {
|
|
|
10
10
|
program
|
|
11
11
|
.command("doctor")
|
|
12
12
|
.description("Health checks + quick fixes for the gateway and channels")
|
|
13
|
-
.addHelpText("after", () => `\n${theme.muted("Docs:")} ${formatDocsLink("/cli/doctor", "docs.
|
|
13
|
+
.addHelpText("after", () => `\n${theme.muted("Docs:")} ${formatDocsLink("/cli/doctor", "docs.openclaw.ai/cli/doctor")}\n`)
|
|
14
14
|
.option("--no-workspace-suggestions", "Disable workspace memory system suggestions", false)
|
|
15
15
|
.option("--yes", "Accept defaults without prompting", false)
|
|
16
16
|
.option("--repair", "Apply recommended repairs without prompting", false)
|
|
@@ -35,7 +35,7 @@ export function registerMaintenanceCommands(program) {
|
|
|
35
35
|
program
|
|
36
36
|
.command("dashboard")
|
|
37
37
|
.description("Open the Control UI with your current token")
|
|
38
|
-
.addHelpText("after", () => `\n${theme.muted("Docs:")} ${formatDocsLink("/cli/dashboard", "docs.
|
|
38
|
+
.addHelpText("after", () => `\n${theme.muted("Docs:")} ${formatDocsLink("/cli/dashboard", "docs.openclaw.ai/cli/dashboard")}\n`)
|
|
39
39
|
.option("--no-open", "Print URL but do not launch a browser", false)
|
|
40
40
|
.action(async (opts) => {
|
|
41
41
|
await runCommandWithRuntime(defaultRuntime, async () => {
|
|
@@ -47,7 +47,7 @@ export function registerMaintenanceCommands(program) {
|
|
|
47
47
|
program
|
|
48
48
|
.command("reset")
|
|
49
49
|
.description("Reset local config/state (keeps the CLI installed)")
|
|
50
|
-
.addHelpText("after", () => `\n${theme.muted("Docs:")} ${formatDocsLink("/cli/reset", "docs.
|
|
50
|
+
.addHelpText("after", () => `\n${theme.muted("Docs:")} ${formatDocsLink("/cli/reset", "docs.openclaw.ai/cli/reset")}\n`)
|
|
51
51
|
.option("--scope <scope>", "config|config+creds+sessions|full (default: interactive prompt)")
|
|
52
52
|
.option("--yes", "Skip confirmation prompts", false)
|
|
53
53
|
.option("--non-interactive", "Disable prompts (requires --scope + --yes)", false)
|
|
@@ -65,7 +65,7 @@ export function registerMaintenanceCommands(program) {
|
|
|
65
65
|
program
|
|
66
66
|
.command("uninstall")
|
|
67
67
|
.description("Uninstall the gateway service + local data (CLI remains)")
|
|
68
|
-
.addHelpText("after", () => `\n${theme.muted("Docs:")} ${formatDocsLink("/cli/uninstall", "docs.
|
|
68
|
+
.addHelpText("after", () => `\n${theme.muted("Docs:")} ${formatDocsLink("/cli/uninstall", "docs.openclaw.ai/cli/uninstall")}\n`)
|
|
69
69
|
.option("--service", "Remove the gateway service", false)
|
|
70
70
|
.option("--state", "Remove state + config", false)
|
|
71
71
|
.option("--workspace", "Remove workspace dirs", false)
|
|
@@ -19,22 +19,22 @@ export function registerMessageCommands(program, ctx) {
|
|
|
19
19
|
.addHelpText("after", () => `
|
|
20
20
|
${theme.heading("Examples:")}
|
|
21
21
|
${formatHelpExamples([
|
|
22
|
-
['
|
|
22
|
+
['openclaw message send --target +15555550123 --message "Hi"', "Send a text message."],
|
|
23
23
|
[
|
|
24
|
-
'
|
|
24
|
+
'openclaw message send --target +15555550123 --message "Hi" --media photo.jpg',
|
|
25
25
|
"Send a message with media.",
|
|
26
26
|
],
|
|
27
27
|
[
|
|
28
|
-
'
|
|
28
|
+
'openclaw message poll --channel discord --target channel:123 --poll-question "Snack?" --poll-option Pizza --poll-option Sushi',
|
|
29
29
|
"Create a Discord poll.",
|
|
30
30
|
],
|
|
31
31
|
[
|
|
32
|
-
'
|
|
32
|
+
'openclaw message react --channel discord --target 123 --message-id 456 --emoji "✅"',
|
|
33
33
|
"React to a message.",
|
|
34
34
|
],
|
|
35
35
|
])}
|
|
36
36
|
|
|
37
|
-
${theme.muted("Docs:")} ${formatDocsLink("/cli/message", "docs.
|
|
37
|
+
${theme.muted("Docs:")} ${formatDocsLink("/cli/message", "docs.openclaw.ai/cli/message")}`)
|
|
38
38
|
.action(() => {
|
|
39
39
|
message.help({ error: true });
|
|
40
40
|
});
|
|
@@ -22,14 +22,14 @@ export function registerOnboardCommand(program) {
|
|
|
22
22
|
program
|
|
23
23
|
.command("onboard")
|
|
24
24
|
.description("Interactive wizard to set up the gateway, workspace, and skills")
|
|
25
|
-
.addHelpText("after", () => `\n${theme.muted("Docs:")} ${formatDocsLink("/cli/onboard", "docs.
|
|
26
|
-
.option("--workspace <dir>", "Agent workspace directory (default:
|
|
25
|
+
.addHelpText("after", () => `\n${theme.muted("Docs:")} ${formatDocsLink("/cli/onboard", "docs.openclaw.ai/cli/onboard")}\n`)
|
|
26
|
+
.option("--workspace <dir>", "Agent workspace directory (default: ~/.openclaw/workspace)")
|
|
27
27
|
.option("--reset", "Reset config + credentials + sessions + workspace before running wizard")
|
|
28
28
|
.option("--non-interactive", "Run without prompts", false)
|
|
29
29
|
.option("--accept-risk", "Acknowledge that agents are powerful and full system access is risky (required for --non-interactive)", false)
|
|
30
30
|
.option("--flow <flow>", "Wizard flow: quickstart|advanced|manual")
|
|
31
31
|
.option("--mode <mode>", "Wizard mode: local|remote")
|
|
32
|
-
.option("--auth-choice <choice>", "Auth: setup-token|token|chutes|openai-codex|openai-api-key|openrouter-api-key|ai-gateway-api-key|moonshot-api-key|kimi-code-api-key|synthetic-api-key|venice-api-key|gemini-api-key|zai-api-key|apiKey|minimax-api|minimax-api-lightning|opencode-zen|skip")
|
|
32
|
+
.option("--auth-choice <choice>", "Auth: setup-token|token|chutes|openai-codex|openai-api-key|openrouter-api-key|ai-gateway-api-key|moonshot-api-key|kimi-code-api-key|synthetic-api-key|venice-api-key|gemini-api-key|zai-api-key|xiaomi-api-key|apiKey|minimax-api|minimax-api-lightning|opencode-zen|skip")
|
|
33
33
|
.option("--token-provider <id>", "Token provider id (non-interactive; used with --auth-choice token)")
|
|
34
34
|
.option("--token <token>", "Token value (non-interactive; used with --auth-choice token)")
|
|
35
35
|
.option("--token-profile-id <id>", "Auth profile id (non-interactive; default: <provider>:manual)")
|
|
@@ -42,6 +42,7 @@ export function registerOnboardCommand(program) {
|
|
|
42
42
|
.option("--kimi-code-api-key <key>", "Kimi Code API key")
|
|
43
43
|
.option("--gemini-api-key <key>", "Gemini API key")
|
|
44
44
|
.option("--zai-api-key <key>", "Z.AI API key")
|
|
45
|
+
.option("--xiaomi-api-key <key>", "Xiaomi API key")
|
|
45
46
|
.option("--minimax-api-key <key>", "MiniMax API key")
|
|
46
47
|
.option("--synthetic-api-key <key>", "Synthetic API key")
|
|
47
48
|
.option("--venice-api-key <key>", "Venice API key")
|
|
@@ -90,6 +91,7 @@ export function registerOnboardCommand(program) {
|
|
|
90
91
|
kimiCodeApiKey: opts.kimiCodeApiKey,
|
|
91
92
|
geminiApiKey: opts.geminiApiKey,
|
|
92
93
|
zaiApiKey: opts.zaiApiKey,
|
|
94
|
+
xiaomiApiKey: opts.xiaomiApiKey,
|
|
93
95
|
minimaxApiKey: opts.minimaxApiKey,
|
|
94
96
|
syntheticApiKey: opts.syntheticApiKey,
|
|
95
97
|
veniceApiKey: opts.veniceApiKey,
|
|
@@ -8,9 +8,9 @@ import { runCommandWithRuntime } from "../cli-utils.js";
|
|
|
8
8
|
export function registerSetupCommand(program) {
|
|
9
9
|
program
|
|
10
10
|
.command("setup")
|
|
11
|
-
.description("Initialize ~/.
|
|
12
|
-
.addHelpText("after", () => `\n${theme.muted("Docs:")} ${formatDocsLink("/cli/setup", "docs.
|
|
13
|
-
.option("--workspace <dir>", "Agent workspace directory (default:
|
|
11
|
+
.description("Initialize ~/.openclaw/openclaw.json and the agent workspace")
|
|
12
|
+
.addHelpText("after", () => `\n${theme.muted("Docs:")} ${formatDocsLink("/cli/setup", "docs.openclaw.ai/cli/setup")}\n`)
|
|
13
|
+
.option("--workspace <dir>", "Agent workspace directory (default: ~/.openclaw/workspace; stored as agents.defaults.workspace)")
|
|
14
14
|
.option("--wizard", "Run the interactive onboarding wizard", false)
|
|
15
15
|
.option("--non-interactive", "Run the wizard without prompts", false)
|
|
16
16
|
.option("--mode <mode>", "Wizard mode: local|remote")
|
|
@@ -32,17 +32,17 @@ export function registerStatusHealthSessionsCommands(program) {
|
|
|
32
32
|
.option("--verbose", "Verbose logging", false)
|
|
33
33
|
.option("--debug", "Alias for --verbose", false)
|
|
34
34
|
.addHelpText("after", () => `\n${theme.heading("Examples:")}\n${formatHelpExamples([
|
|
35
|
-
["
|
|
36
|
-
["
|
|
37
|
-
["
|
|
38
|
-
["
|
|
35
|
+
["openclaw status", "Show channel health + session summary."],
|
|
36
|
+
["openclaw status --all", "Full diagnosis (read-only)."],
|
|
37
|
+
["openclaw status --json", "Machine-readable output."],
|
|
38
|
+
["openclaw status --usage", "Show model provider usage/quota snapshots."],
|
|
39
39
|
[
|
|
40
|
-
"
|
|
40
|
+
"openclaw status --deep",
|
|
41
41
|
"Run channel probes (WA + Telegram + Discord + Slack + Signal).",
|
|
42
42
|
],
|
|
43
|
-
["
|
|
43
|
+
["openclaw status --deep --timeout 5000", "Tighten probe timeout."],
|
|
44
44
|
])}`)
|
|
45
|
-
.addHelpText("after", () => `\n${theme.muted("Docs:")} ${formatDocsLink("/cli/status", "docs.
|
|
45
|
+
.addHelpText("after", () => `\n${theme.muted("Docs:")} ${formatDocsLink("/cli/status", "docs.openclaw.ai/cli/status")}\n`)
|
|
46
46
|
.action(async (opts) => {
|
|
47
47
|
const verbose = resolveVerbose(opts);
|
|
48
48
|
setVerbose(verbose);
|
|
@@ -68,7 +68,7 @@ export function registerStatusHealthSessionsCommands(program) {
|
|
|
68
68
|
.option("--timeout <ms>", "Connection timeout in milliseconds", "10000")
|
|
69
69
|
.option("--verbose", "Verbose logging", false)
|
|
70
70
|
.option("--debug", "Alias for --verbose", false)
|
|
71
|
-
.addHelpText("after", () => `\n${theme.muted("Docs:")} ${formatDocsLink("/cli/health", "docs.
|
|
71
|
+
.addHelpText("after", () => `\n${theme.muted("Docs:")} ${formatDocsLink("/cli/health", "docs.openclaw.ai/cli/health")}\n`)
|
|
72
72
|
.action(async (opts) => {
|
|
73
73
|
const verbose = resolveVerbose(opts);
|
|
74
74
|
setVerbose(verbose);
|
|
@@ -92,12 +92,12 @@ export function registerStatusHealthSessionsCommands(program) {
|
|
|
92
92
|
.option("--store <path>", "Path to session store (default: resolved from config)")
|
|
93
93
|
.option("--active <minutes>", "Only show sessions updated within the past N minutes")
|
|
94
94
|
.addHelpText("after", () => `\n${theme.heading("Examples:")}\n${formatHelpExamples([
|
|
95
|
-
["
|
|
96
|
-
["
|
|
97
|
-
["
|
|
98
|
-
["
|
|
95
|
+
["openclaw sessions", "List all sessions."],
|
|
96
|
+
["openclaw sessions --active 120", "Only last 2 hours."],
|
|
97
|
+
["openclaw sessions --json", "Machine-readable output."],
|
|
98
|
+
["openclaw sessions --store ./tmp/sessions.json", "Use a specific session store."],
|
|
99
99
|
])}\n\n${theme.muted("Shows token usage per session when the agent reports it; set agents.defaults.contextTokens to see % of your model window.")}`)
|
|
100
|
-
.addHelpText("after", () => `\n${theme.muted("Docs:")} ${formatDocsLink("/cli/sessions", "docs.
|
|
100
|
+
.addHelpText("after", () => `\n${theme.muted("Docs:")} ${formatDocsLink("/cli/sessions", "docs.openclaw.ai/cli/sessions")}\n`)
|
|
101
101
|
.action(async (opts) => {
|
|
102
102
|
setVerbose(Boolean(opts.verbose));
|
|
103
103
|
await sessionsCommand({
|
|
@@ -2,14 +2,14 @@ import { isTruthyEnvValue } from "../../infra/env.js";
|
|
|
2
2
|
import { buildParseArgv, getPrimaryCommand, hasHelpOrVersion } from "../argv.js";
|
|
3
3
|
import { resolveActionArgs } from "./helpers.js";
|
|
4
4
|
const shouldRegisterPrimaryOnly = (argv) => {
|
|
5
|
-
if (isTruthyEnvValue(process.env.
|
|
5
|
+
if (isTruthyEnvValue(process.env.OPENCLAW_DISABLE_LAZY_SUBCOMMANDS))
|
|
6
6
|
return false;
|
|
7
7
|
if (hasHelpOrVersion(argv))
|
|
8
8
|
return false;
|
|
9
9
|
return true;
|
|
10
10
|
};
|
|
11
11
|
const shouldEagerRegisterSubcommands = (_argv) => {
|
|
12
|
-
return isTruthyEnvValue(process.env.
|
|
12
|
+
return isTruthyEnvValue(process.env.OPENCLAW_DISABLE_LAZY_SUBCOMMANDS);
|
|
13
13
|
};
|
|
14
14
|
const loadConfig = async () => {
|
|
15
15
|
const mod = await import("../../config/config.js");
|
|
@@ -156,6 +156,11 @@ const entries = [
|
|
|
156
156
|
name: "pairing",
|
|
157
157
|
description: "Pairing helpers",
|
|
158
158
|
register: async (program) => {
|
|
159
|
+
// Initialize plugins before registering pairing CLI.
|
|
160
|
+
// The pairing CLI calls listPairingChannels() at registration time,
|
|
161
|
+
// which requires the plugin registry to be populated with channel plugins.
|
|
162
|
+
const { registerPluginCliCommands } = await import("../../plugins/cli.js");
|
|
163
|
+
registerPluginCliCommands(program, await loadConfig());
|
|
159
164
|
const mod = await import("../pairing-cli.js");
|
|
160
165
|
mod.registerPairingCli(program);
|
|
161
166
|
},
|
package/dist/cli/route.js
CHANGED
|
@@ -14,7 +14,7 @@ async function prepareRoutedCommand(params) {
|
|
|
14
14
|
}
|
|
15
15
|
}
|
|
16
16
|
export async function tryRouteCli(argv) {
|
|
17
|
-
if (isTruthyEnvValue(process.env.
|
|
17
|
+
if (isTruthyEnvValue(process.env.OPENCLAW_DISABLE_ROUTE_FIRST))
|
|
18
18
|
return false;
|
|
19
19
|
if (hasHelpOrVersion(argv))
|
|
20
20
|
return false;
|
package/dist/cli/run-main.js
CHANGED
|
@@ -5,7 +5,7 @@ import { fileURLToPath } from "node:url";
|
|
|
5
5
|
import { loadDotEnv } from "../infra/dotenv.js";
|
|
6
6
|
import { normalizeEnv } from "../infra/env.js";
|
|
7
7
|
import { isMainModule } from "../infra/is-main.js";
|
|
8
|
-
import {
|
|
8
|
+
import { ensureOpenClawCliOnPath } from "../infra/path-env.js";
|
|
9
9
|
import { assertSupportedRuntime } from "../infra/runtime-guard.js";
|
|
10
10
|
import { formatUncaughtError } from "../infra/errors.js";
|
|
11
11
|
import { installUnhandledRejectionHandler } from "../infra/unhandled-rejections.js";
|
|
@@ -24,7 +24,7 @@ export async function runCli(argv = process.argv) {
|
|
|
24
24
|
const normalizedArgv = stripWindowsNodeExec(argv);
|
|
25
25
|
loadDotEnv({ quiet: true });
|
|
26
26
|
normalizeEnv();
|
|
27
|
-
|
|
27
|
+
ensureOpenClawCliOnPath();
|
|
28
28
|
// Enforce the minimum supported runtime before doing any work.
|
|
29
29
|
assertSupportedRuntime();
|
|
30
30
|
if (await tryRouteCli(normalizedArgv))
|
|
@@ -37,7 +37,7 @@ export async function runCli(argv = process.argv) {
|
|
|
37
37
|
// These log the error and exit gracefully instead of crashing without trace.
|
|
38
38
|
installUnhandledRejectionHandler();
|
|
39
39
|
process.on("uncaughtException", (error) => {
|
|
40
|
-
console.error("[
|
|
40
|
+
console.error("[openclaw] Uncaught exception:", formatUncaughtError(error));
|
|
41
41
|
process.exit(1);
|
|
42
42
|
});
|
|
43
43
|
const parseArgv = rewriteUpdateFlagArgv(normalizedArgv);
|
package/dist/cli/sandbox-cli.js
CHANGED
|
@@ -7,30 +7,30 @@ import { formatHelpExamples } from "./help-format.js";
|
|
|
7
7
|
// --- Helpers ---
|
|
8
8
|
const SANDBOX_EXAMPLES = {
|
|
9
9
|
main: [
|
|
10
|
-
["
|
|
11
|
-
["
|
|
12
|
-
["
|
|
13
|
-
["
|
|
14
|
-
["
|
|
15
|
-
["
|
|
10
|
+
["openclaw sandbox list", "List all sandbox containers."],
|
|
11
|
+
["openclaw sandbox list --browser", "List only browser containers."],
|
|
12
|
+
["openclaw sandbox recreate --all", "Recreate all containers."],
|
|
13
|
+
["openclaw sandbox recreate --session main", "Recreate a specific session."],
|
|
14
|
+
["openclaw sandbox recreate --agent mybot", "Recreate agent containers."],
|
|
15
|
+
["openclaw sandbox explain", "Explain effective sandbox config."],
|
|
16
16
|
],
|
|
17
17
|
list: [
|
|
18
|
-
["
|
|
19
|
-
["
|
|
20
|
-
["
|
|
18
|
+
["openclaw sandbox list", "List all sandbox containers."],
|
|
19
|
+
["openclaw sandbox list --browser", "List only browser containers."],
|
|
20
|
+
["openclaw sandbox list --json", "JSON output."],
|
|
21
21
|
],
|
|
22
22
|
recreate: [
|
|
23
|
-
["
|
|
24
|
-
["
|
|
25
|
-
["
|
|
26
|
-
["
|
|
27
|
-
["
|
|
23
|
+
["openclaw sandbox recreate --all", "Recreate all containers."],
|
|
24
|
+
["openclaw sandbox recreate --session main", "Recreate a specific session."],
|
|
25
|
+
["openclaw sandbox recreate --agent mybot", "Recreate a specific agent (includes sub-agents)."],
|
|
26
|
+
["openclaw sandbox recreate --browser --all", "Recreate only browser containers."],
|
|
27
|
+
["openclaw sandbox recreate --all --force", "Skip confirmation."],
|
|
28
28
|
],
|
|
29
29
|
explain: [
|
|
30
|
-
["
|
|
31
|
-
["
|
|
32
|
-
["
|
|
33
|
-
["
|
|
30
|
+
["openclaw sandbox explain", "Show effective sandbox config."],
|
|
31
|
+
["openclaw sandbox explain --session agent:main:main", "Explain a specific session."],
|
|
32
|
+
["openclaw sandbox explain --agent work", "Explain an agent sandbox."],
|
|
33
|
+
["openclaw sandbox explain --json", "JSON output."],
|
|
34
34
|
],
|
|
35
35
|
};
|
|
36
36
|
function createRunner(commandFn) {
|
|
@@ -50,7 +50,7 @@ export function registerSandboxCli(program) {
|
|
|
50
50
|
.command("sandbox")
|
|
51
51
|
.description("Manage sandbox containers (Docker-based agent isolation)")
|
|
52
52
|
.addHelpText("after", () => `\n${theme.heading("Examples:")}\n${formatHelpExamples(SANDBOX_EXAMPLES.main)}\n`)
|
|
53
|
-
.addHelpText("after", () => `\n${theme.muted("Docs:")} ${formatDocsLink("/cli/sandbox", "docs.
|
|
53
|
+
.addHelpText("after", () => `\n${theme.muted("Docs:")} ${formatDocsLink("/cli/sandbox", "docs.openclaw.ai/cli/sandbox")}\n`)
|
|
54
54
|
.action(() => {
|
|
55
55
|
sandbox.help({ error: true });
|
|
56
56
|
});
|
package/dist/cli/security-cli.js
CHANGED
|
@@ -21,7 +21,7 @@ export function registerSecurityCli(program) {
|
|
|
21
21
|
const security = program
|
|
22
22
|
.command("security")
|
|
23
23
|
.description("Security tools (audit)")
|
|
24
|
-
.addHelpText("after", () => `\n${theme.muted("Docs:")} ${formatDocsLink("/cli/security", "docs.
|
|
24
|
+
.addHelpText("after", () => `\n${theme.muted("Docs:")} ${formatDocsLink("/cli/security", "docs.openclaw.ai/cli/security")}\n`);
|
|
25
25
|
security
|
|
26
26
|
.command("audit")
|
|
27
27
|
.description("Audit config + local state for common security foot-guns")
|
|
@@ -45,11 +45,11 @@ export function registerSecurityCli(program) {
|
|
|
45
45
|
const heading = (text) => (rich ? theme.heading(text) : text);
|
|
46
46
|
const muted = (text) => (rich ? theme.muted(text) : text);
|
|
47
47
|
const lines = [];
|
|
48
|
-
lines.push(heading("
|
|
48
|
+
lines.push(heading("OpenClaw security audit"));
|
|
49
49
|
lines.push(muted(`Summary: ${formatSummary(report.summary)}`));
|
|
50
|
-
lines.push(muted(`Run deeper: ${formatCliCommand("
|
|
50
|
+
lines.push(muted(`Run deeper: ${formatCliCommand("openclaw security audit --deep")}`));
|
|
51
51
|
if (opts.fix) {
|
|
52
|
-
lines.push(muted(`Fix: ${formatCliCommand("
|
|
52
|
+
lines.push(muted(`Fix: ${formatCliCommand("openclaw security audit --fix")}`));
|
|
53
53
|
if (!fixResult) {
|
|
54
54
|
lines.push(muted("Fixes: failed to apply (unexpected error)"));
|
|
55
55
|
}
|
package/dist/cli/skills-cli.js
CHANGED
|
@@ -70,7 +70,7 @@ export function formatSkillsList(report, opts) {
|
|
|
70
70
|
}
|
|
71
71
|
if (skills.length === 0) {
|
|
72
72
|
const message = opts.eligible
|
|
73
|
-
? `No eligible skills found. Run \`${formatCliCommand("
|
|
73
|
+
? `No eligible skills found. Run \`${formatCliCommand("openclaw skills list")}\` to see all skills.`
|
|
74
74
|
: "No skills found.";
|
|
75
75
|
return appendClawdHubHint(message, opts.json);
|
|
76
76
|
}
|
|
@@ -113,7 +113,7 @@ export function formatSkillInfo(report, skillName, opts) {
|
|
|
113
113
|
if (opts.json) {
|
|
114
114
|
return JSON.stringify({ error: "not found", skill: skillName }, null, 2);
|
|
115
115
|
}
|
|
116
|
-
return appendClawdHubHint(`Skill "${skillName}" not found. Run \`${formatCliCommand("
|
|
116
|
+
return appendClawdHubHint(`Skill "${skillName}" not found. Run \`${formatCliCommand("openclaw skills list")}\` to see available skills.`, opts.json);
|
|
117
117
|
}
|
|
118
118
|
if (opts.json) {
|
|
119
119
|
return JSON.stringify(skill, null, 2);
|
|
@@ -273,7 +273,7 @@ export function registerSkillsCli(program) {
|
|
|
273
273
|
const skills = program
|
|
274
274
|
.command("skills")
|
|
275
275
|
.description("List and inspect available skills")
|
|
276
|
-
.addHelpText("after", () => `\n${theme.muted("Docs:")} ${formatDocsLink("/cli/skills", "docs.
|
|
276
|
+
.addHelpText("after", () => `\n${theme.muted("Docs:")} ${formatDocsLink("/cli/skills", "docs.openclaw.ai/cli/skills")}\n`);
|
|
277
277
|
skills
|
|
278
278
|
.command("list")
|
|
279
279
|
.description("List all available skills")
|
package/dist/cli/system-cli.js
CHANGED
|
@@ -15,7 +15,7 @@ export function registerSystemCli(program) {
|
|
|
15
15
|
const system = program
|
|
16
16
|
.command("system")
|
|
17
17
|
.description("System tools (events, heartbeat, presence)")
|
|
18
|
-
.addHelpText("after", () => `\n${theme.muted("Docs:")} ${formatDocsLink("/cli/system", "docs.
|
|
18
|
+
.addHelpText("after", () => `\n${theme.muted("Docs:")} ${formatDocsLink("/cli/system", "docs.openclaw.ai/cli/system")}\n`);
|
|
19
19
|
addGatewayClientOptions(system
|
|
20
20
|
.command("event")
|
|
21
21
|
.description("Enqueue a system event and optionally trigger a heartbeat")
|