@gguf/claw 2026.2.1 → 2026.2.3
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 +138 -1
- package/README.md +42 -39
- package/dist/acp/client.d.ts +1 -1
- package/dist/acp/client.js +1 -1
- package/dist/acp/server.js +1 -1
- package/dist/acp/translator.d.ts +1 -1
- package/dist/acp/translator.js +3 -3
- package/dist/agents/agent-scope.d.ts +2 -0
- package/dist/agents/agent-scope.js +9 -0
- package/dist/agents/anthropic-payload-log.js +2 -2
- package/dist/agents/apply-patch.js +1 -1
- package/dist/agents/auth-profiles/oauth.js +12 -3
- package/dist/agents/auth-profiles/session-override.js +1 -1
- package/dist/agents/bash-tools.exec.d.ts +1 -1
- package/dist/agents/bash-tools.exec.js +51 -9
- package/dist/agents/bootstrap-files.d.ts +1 -1
- package/dist/agents/bootstrap-files.js +1 -1
- package/dist/agents/cache-trace.js +1 -1
- package/dist/agents/cli-credentials.d.ts +1 -1
- package/dist/agents/cli-runner/helpers.js +2 -2
- package/dist/agents/cli-runner.js +2 -2
- package/dist/agents/context-window-guard.js +10 -11
- package/dist/agents/model-auth.js +2 -2
- package/dist/agents/model-fallback.js +1 -1
- package/dist/agents/model-selection.js +1 -1
- package/dist/agents/models-config.providers.js +1 -1
- package/dist/agents/openclaw-tools.js +2 -1
- package/dist/agents/pi-embedded-block-chunker.d.ts +2 -0
- package/dist/agents/pi-embedded-block-chunker.js +85 -26
- package/dist/agents/pi-embedded-helpers/errors.d.ts +1 -0
- package/dist/agents/pi-embedded-helpers/errors.js +13 -0
- package/dist/agents/pi-embedded-runner/compact.d.ts +2 -2
- package/dist/agents/pi-embedded-runner/compact.js +20 -24
- package/dist/agents/pi-embedded-runner/extensions.js +8 -0
- package/dist/agents/pi-embedded-runner/extra-params.d.ts +1 -0
- package/dist/agents/pi-embedded-runner/extra-params.js +50 -12
- package/dist/agents/pi-embedded-runner/google.d.ts +1 -1
- package/dist/agents/pi-embedded-runner/google.js +6 -5
- package/dist/agents/pi-embedded-runner/model.d.ts +1 -1
- package/dist/agents/pi-embedded-runner/model.js +1 -1
- package/dist/agents/pi-embedded-runner/run/attempt.js +34 -34
- package/dist/agents/pi-embedded-runner/run/images.js +3 -3
- package/dist/agents/pi-embedded-runner/run/params.d.ts +1 -1
- package/dist/agents/pi-embedded-runner/run/types.d.ts +3 -3
- package/dist/agents/pi-embedded-runner/system-prompt.d.ts +3 -1
- package/dist/agents/pi-embedded-runner/system-prompt.js +9 -2
- package/dist/agents/pi-embedded-runner/types.d.ts +1 -1
- package/dist/agents/pi-embedded-subscribe.handlers.messages.js +2 -2
- package/dist/agents/pi-embedded-subscribe.handlers.types.d.ts +1 -1
- package/dist/agents/pi-embedded-subscribe.tools.js +1 -1
- package/dist/agents/pi-extensions/compaction-safeguard-runtime.d.ts +1 -0
- package/dist/agents/pi-extensions/compaction-safeguard.js +3 -2
- package/dist/agents/pi-model-discovery.js +1 -1
- package/dist/agents/pi-tool-definition-adapter.d.ts +4 -1
- package/dist/agents/pi-tool-definition-adapter.js +48 -7
- package/dist/agents/pi-tools.abort.js +9 -1
- package/dist/agents/pi-tools.before-tool-call.d.ts +25 -0
- package/dist/agents/pi-tools.before-tool-call.js +69 -0
- package/dist/agents/pi-tools.d.ts +3 -3
- package/dist/agents/pi-tools.js +9 -4
- package/dist/agents/pi-tools.policy.js +2 -2
- package/dist/agents/pi-tools.read.js +1 -1
- package/dist/agents/sandbox/context.js +1 -1
- package/dist/agents/sandbox/docker.js +2 -2
- package/dist/agents/sandbox/runtime-status.js +1 -1
- package/dist/agents/session-file-repair.d.ts +11 -0
- package/dist/agents/session-file-repair.js +83 -0
- package/dist/agents/session-tool-result-guard-wrapper.js +15 -14
- package/dist/agents/session-tool-result-guard.js +20 -8
- package/dist/agents/session-transcript-repair.d.ts +7 -0
- package/dist/agents/session-transcript-repair.js +58 -0
- package/dist/agents/skills/refresh.js +1 -1
- package/dist/agents/skills/workspace.js +1 -1
- package/dist/agents/skills-install.js +6 -4
- package/dist/agents/subagent-announce.js +2 -2
- package/dist/agents/system-prompt-report.d.ts +1 -1
- package/dist/agents/system-prompt.js +6 -1
- package/dist/agents/timeout.js +11 -2
- package/dist/agents/tool-policy.conformance.d.ts +11 -0
- package/dist/agents/tool-policy.conformance.js +14 -0
- package/dist/agents/tool-policy.js +4 -0
- package/dist/agents/tools/browser-tool.js +3 -3
- package/dist/agents/tools/browser-tool.schema.d.ts +2 -2
- package/dist/agents/tools/canvas-tool.js +1 -1
- package/dist/agents/tools/cron-tool.js +2 -2
- package/dist/agents/tools/discord-actions-messaging.js +2 -2
- package/dist/agents/tools/gateway-tool.js +8 -3
- package/dist/agents/tools/image-tool.js +3 -3
- package/dist/agents/tools/message-tool.d.ts +1 -0
- package/dist/agents/tools/message-tool.js +16 -5
- package/dist/agents/tools/nodes-tool.js +33 -2
- package/dist/agents/tools/session-status-tool.js +2 -2
- package/dist/agents/tools/sessions-helpers.js +1 -1
- package/dist/agents/tools/sessions-list-tool.js +1 -1
- package/dist/agents/tools/sessions-send-tool.d.ts +1 -1
- package/dist/agents/tools/sessions-send-tool.js +1 -1
- package/dist/agents/tools/sessions-spawn-tool.js +7 -4
- package/dist/agents/tools/telegram-actions.js +1 -1
- package/dist/agents/tools/web-fetch.js +117 -101
- package/dist/agents/tools/web-search.js +15 -8
- package/dist/agents/transcript-policy.js +1 -1
- package/dist/agents/workspace.js +1 -1
- package/dist/auto-reply/commands-registry.d.ts +1 -1
- package/dist/auto-reply/commands-registry.data.js +1 -1
- package/dist/auto-reply/commands-registry.js +1 -1
- package/dist/auto-reply/dispatch.d.ts +1 -1
- package/dist/auto-reply/dispatch.js +1 -1
- package/dist/auto-reply/envelope.d.ts +1 -1
- package/dist/auto-reply/reply/abort.js +2 -2
- package/dist/auto-reply/reply/agent-runner-execution.d.ts +4 -3
- package/dist/auto-reply/reply/agent-runner-execution.js +71 -50
- package/dist/auto-reply/reply/agent-runner-helpers.d.ts +2 -2
- package/dist/auto-reply/reply/agent-runner-memory.d.ts +1 -1
- package/dist/auto-reply/reply/agent-runner.d.ts +4 -3
- package/dist/auto-reply/reply/agent-runner.js +2 -2
- package/dist/auto-reply/reply/block-reply-coalescer.js +14 -1
- package/dist/auto-reply/reply/block-streaming.d.ts +5 -0
- package/dist/auto-reply/reply/block-streaming.js +20 -12
- package/dist/auto-reply/reply/commands-allowlist.js +8 -8
- package/dist/auto-reply/reply/commands-approve.js +1 -1
- package/dist/auto-reply/reply/commands-config.js +3 -3
- package/dist/auto-reply/reply/commands-context-report.js +4 -4
- package/dist/auto-reply/reply/commands-core.js +35 -31
- package/dist/auto-reply/reply/commands-info.js +1 -1
- package/dist/auto-reply/reply/commands-models.js +1 -1
- package/dist/auto-reply/reply/commands-ptt.d.ts +2 -0
- package/dist/auto-reply/reply/commands-ptt.js +171 -0
- package/dist/auto-reply/reply/commands-session.js +2 -2
- package/dist/auto-reply/reply/commands-status.d.ts +1 -1
- package/dist/auto-reply/reply/commands-status.js +2 -2
- package/dist/auto-reply/reply/commands-subagents.js +2 -2
- package/dist/auto-reply/reply/commands-types.d.ts +1 -1
- package/dist/auto-reply/reply/directive-handling.impl.d.ts +1 -1
- package/dist/auto-reply/reply/directive-handling.model-picker.d.ts +1 -1
- package/dist/auto-reply/reply/directive-handling.model.d.ts +1 -1
- package/dist/auto-reply/reply/directive-handling.model.js +1 -1
- package/dist/auto-reply/reply/directive-handling.persist.d.ts +2 -2
- package/dist/auto-reply/reply/dispatch-from-config.d.ts +1 -1
- package/dist/auto-reply/reply/dispatch-from-config.js +1 -1
- package/dist/auto-reply/reply/followup-runner.d.ts +1 -1
- package/dist/auto-reply/reply/followup-runner.js +1 -1
- package/dist/auto-reply/reply/get-reply-directives-apply.d.ts +2 -2
- package/dist/auto-reply/reply/get-reply-directives.d.ts +2 -1
- package/dist/auto-reply/reply/get-reply-inline-actions.d.ts +1 -1
- package/dist/auto-reply/reply/get-reply-inline-actions.js +6 -4
- package/dist/auto-reply/reply/get-reply-run.d.ts +4 -3
- package/dist/auto-reply/reply/get-reply-run.js +4 -3
- package/dist/auto-reply/reply/get-reply.d.ts +1 -1
- package/dist/auto-reply/reply/get-reply.js +35 -9
- package/dist/auto-reply/reply/inbound-dedupe.d.ts +1 -1
- package/dist/auto-reply/reply/model-selection.d.ts +2 -2
- package/dist/auto-reply/reply/model-selection.js +1 -1
- package/dist/auto-reply/reply/normalize-reply.js +2 -2
- package/dist/auto-reply/reply/provider-dispatcher.d.ts +1 -1
- package/dist/auto-reply/reply/queue/types.d.ts +1 -1
- package/dist/auto-reply/reply/reply-dispatcher.d.ts +1 -1
- package/dist/auto-reply/reply/reply-dispatcher.js +1 -2
- package/dist/auto-reply/reply/reply-elevated.js +1 -1
- package/dist/auto-reply/reply/route-reply.d.ts +1 -1
- package/dist/auto-reply/reply/session-reset-model.d.ts +1 -1
- package/dist/auto-reply/reply/session-reset-model.js +1 -1
- package/dist/auto-reply/reply/session.d.ts +1 -1
- package/dist/auto-reply/reply/session.js +4 -4
- package/dist/auto-reply/skill-commands.js +1 -1
- package/dist/auto-reply/status.d.ts +3 -3
- package/dist/auto-reply/status.js +2 -2
- package/dist/auto-reply/templating.d.ts +1 -1
- package/dist/browser/cdp.helpers.d.ts +3 -1
- package/dist/browser/cdp.helpers.js +7 -4
- package/dist/browser/chrome.d.ts +1 -1
- package/dist/browser/chrome.js +1 -1
- package/dist/browser/config.js +1 -1
- package/dist/browser/extension-relay.d.ts +1 -0
- package/dist/browser/extension-relay.js +64 -0
- package/dist/browser/profiles-service.js +1 -1
- package/dist/browser/profiles.js +0 -1
- package/dist/browser/pw-session.js +2 -1
- package/dist/browser/routes/agent.shared.d.ts +1 -1
- package/dist/build-info.json +2 -2
- package/dist/canvas-host/a2ui/.bundle.hash +1 -1
- package/dist/canvas-host/server.d.ts +1 -1
- package/dist/canvas-host/server.js +1 -1
- package/dist/channels/dock.js +2 -2
- package/dist/channels/plugins/actions/discord/handle-action.js +1 -1
- package/dist/channels/plugins/directory-config.js +2 -2
- package/dist/channels/plugins/index.js +1 -1
- package/dist/channels/plugins/onboarding/discord.js +1 -1
- package/dist/channels/plugins/onboarding/signal.js +1 -1
- package/dist/channels/plugins/onboarding/telegram.js +1 -1
- package/dist/channels/plugins/onboarding/whatsapp.js +1 -1
- package/dist/channels/plugins/outbound/whatsapp.js +1 -1
- package/dist/channels/plugins/pairing.d.ts +1 -1
- package/dist/channels/plugins/types.adapters.d.ts +1 -1
- package/dist/channels/reply-prefix.d.ts +1 -1
- package/dist/cli/browser-cli-actions-input/register.files-downloads.js +1 -1
- package/dist/cli/browser-cli-actions-observe.js +1 -1
- package/dist/cli/browser-cli-debug.js +1 -1
- package/dist/cli/browser-cli-extension.js +1 -1
- package/dist/cli/browser-cli.js +2 -2
- package/dist/cli/channel-options.js +1 -1
- package/dist/cli/channels-cli.js +1 -1
- package/dist/cli/command-format.js +1 -1
- package/dist/cli/config-cli.js +1 -1
- package/dist/cli/cron-cli/register.cron-add.js +1 -1
- package/dist/cli/cron-cli/register.cron-edit.js +1 -1
- package/dist/cli/daemon-cli/install.js +1 -1
- package/dist/cli/daemon-cli/lifecycle.js +1 -1
- package/dist/cli/daemon-cli/status.gather.d.ts +1 -1
- package/dist/cli/daemon-cli/status.gather.js +1 -1
- package/dist/cli/deps.d.ts +1 -1
- package/dist/cli/devices-cli.js +1 -1
- package/dist/cli/directory-cli.js +2 -2
- package/dist/cli/exec-approvals-cli.js +3 -3
- package/dist/cli/gateway-cli/dev.js +1 -1
- package/dist/cli/gateway-cli/register.js +1 -1
- package/dist/cli/hooks-cli.js +12 -5
- package/dist/cli/memory-cli.js +3 -3
- package/dist/cli/node-cli/daemon.js +2 -2
- package/dist/cli/node-cli/register.js +3 -3
- package/dist/cli/nodes-cli/register.camera.js +2 -2
- package/dist/cli/nodes-cli/register.canvas.js +1 -1
- package/dist/cli/nodes-cli/register.invoke.js +4 -4
- package/dist/cli/nodes-cli/register.pairing.js +2 -2
- package/dist/cli/nodes-cli/register.screen.js +1 -1
- package/dist/cli/nodes-cli/register.status.js +4 -4
- package/dist/cli/pairing-cli.js +1 -1
- package/dist/cli/ports.js +1 -3
- package/dist/cli/program/build-program.js +1 -1
- package/dist/cli/program/config-guard.js +2 -2
- package/dist/cli/program/message/helpers.js +1 -1
- package/dist/cli/program/preaction.js +5 -5
- package/dist/cli/program/register.agent.js +2 -2
- package/dist/cli/program/register.message.js +1 -1
- package/dist/cli/program/register.setup.js +1 -1
- package/dist/cli/program/register.status-health-sessions.js +1 -1
- package/dist/cli/progress.js +1 -1
- package/dist/cli/route.js +4 -4
- package/dist/cli/run-main.js +1 -1
- package/dist/cli/sandbox-cli.js +1 -1
- package/dist/cli/update-cli.js +16 -10
- package/dist/cli/webhooks-cli.js +1 -1
- package/dist/commands/agent/delivery.d.ts +1 -1
- package/dist/commands/agent/delivery.js +1 -1
- package/dist/commands/agent/session.d.ts +1 -1
- package/dist/commands/agent-via-gateway.d.ts +1 -1
- package/dist/commands/agent-via-gateway.js +3 -3
- package/dist/commands/agent.d.ts +1 -1
- package/dist/commands/agent.js +8 -6
- package/dist/commands/agents.commands.add.js +1 -1
- package/dist/commands/agents.commands.list.js +1 -1
- package/dist/commands/auth-choice-options.js +1 -1
- package/dist/commands/auth-choice.apply.minimax.js +1 -1
- package/dist/commands/auth-choice.apply.oauth.js +1 -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/channels/capabilities.js +1 -1
- package/dist/commands/channels/logs.js +1 -1
- package/dist/commands/channels/resolve.js +1 -1
- package/dist/commands/channels/status.js +1 -1
- package/dist/commands/configure.daemon.js +3 -3
- package/dist/commands/configure.gateway-auth.js +1 -1
- package/dist/commands/configure.wizard.js +2 -2
- package/dist/commands/daemon-install-helpers.js +2 -2
- package/dist/commands/docs.js +1 -1
- package/dist/commands/doctor-auth.js +1 -1
- package/dist/commands/doctor-config-flow.js +2 -2
- package/dist/commands/doctor-format.js +1 -1
- package/dist/commands/doctor-gateway-daemon-flow.js +4 -4
- package/dist/commands/doctor-gateway-health.js +1 -1
- package/dist/commands/doctor-gateway-services.js +1 -1
- package/dist/commands/doctor-sandbox.js +3 -1
- package/dist/commands/doctor-security.js +2 -2
- package/dist/commands/doctor-update.js +2 -2
- package/dist/commands/doctor.js +2 -2
- package/dist/commands/gateway-status.js +1 -1
- package/dist/commands/health.d.ts +1 -1
- package/dist/commands/health.js +1 -1
- package/dist/commands/message.d.ts +1 -1
- package/dist/commands/models/auth.js +7 -7
- package/dist/commands/models/list.auth-overview.d.ts +1 -1
- package/dist/commands/models/list.probe.js +3 -3
- package/dist/commands/models/list.registry.js +1 -1
- package/dist/commands/models/list.status-command.js +4 -4
- package/dist/commands/models/shared.js +1 -1
- package/dist/commands/onboard-channels.js +4 -4
- package/dist/commands/onboard-helpers.js +2 -2
- package/dist/commands/onboard-hooks.js +1 -1
- package/dist/commands/onboard-interactive.js +4 -0
- package/dist/commands/onboard-non-interactive/local/auth-choice.js +1 -1
- package/dist/commands/onboard-non-interactive/local/daemon-install.js +1 -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.js +4 -3
- package/dist/commands/onboarding/plugin-install.js +2 -2
- package/dist/commands/reset.js +1 -1
- package/dist/commands/setup.js +1 -1
- package/dist/commands/status-all/diagnosis.js +4 -4
- package/dist/commands/status-all.js +4 -4
- package/dist/commands/status.command.js +5 -5
- package/dist/commands/status.daemon.js +1 -1
- package/dist/commands/status.scan.d.ts +3 -3
- package/dist/commands/status.scan.js +1 -1
- package/dist/commands/status.update.js +1 -1
- package/dist/commands/uninstall.js +1 -1
- package/dist/config/defaults.js +5 -5
- package/dist/config/includes.js +1 -1
- package/dist/config/io.d.ts +1 -1
- package/dist/config/io.js +2 -2
- package/dist/config/plugin-auto-enable.js +2 -2
- package/dist/config/schema.js +8 -0
- package/dist/config/sessions/main-session.d.ts +1 -1
- package/dist/config/sessions/reset.js +1 -1
- package/dist/config/sessions/store.d.ts +1 -1
- package/dist/config/sessions/store.js +2 -2
- package/dist/config/sessions/transcript.js +3 -3
- package/dist/config/types.agent-defaults.d.ts +4 -2
- package/dist/config/types.agents.d.ts +2 -0
- package/dist/config/types.channels.d.ts +1 -1
- package/dist/config/types.discord.d.ts +3 -0
- package/dist/config/types.msteams.d.ts +5 -0
- package/dist/config/zod-schema.agent-defaults.d.ts +1 -0
- package/dist/config/zod-schema.agent-defaults.js +1 -0
- package/dist/config/zod-schema.agent-runtime.d.ts +2 -0
- package/dist/config/zod-schema.agent-runtime.js +2 -0
- package/dist/config/zod-schema.agents.d.ts +3 -0
- package/dist/config/zod-schema.d.ts +12 -0
- package/dist/config/zod-schema.js +1 -1
- package/dist/config/zod-schema.providers-core.d.ts +13 -0
- package/dist/config/zod-schema.providers-core.js +42 -2
- package/dist/config/zod-schema.providers-whatsapp.js +1 -1
- package/dist/config/zod-schema.providers.d.ts +9 -0
- package/dist/config/zod-schema.providers.js +2 -2
- package/dist/control-ui/assets/index-B6zgZRLn.js +4586 -0
- package/dist/control-ui/assets/index-B6zgZRLn.js.map +1 -0
- package/dist/control-ui/assets/index-BVBLXya3.css +1 -0
- package/dist/control-ui/index.html +3 -3
- package/dist/cron/isolated-agent/run.d.ts +1 -1
- package/dist/cron/isolated-agent/run.js +3 -4
- package/dist/cron/service.d.ts +1 -1
- package/dist/cron/store.js +1 -1
- package/dist/daemon/launchd.js +2 -2
- package/dist/daemon/node-service.js +1 -1
- package/dist/daemon/schtasks.js +1 -1
- package/dist/daemon/systemd.js +2 -2
- package/dist/discord/directory-live.d.ts +1 -1
- package/dist/discord/monitor/allow-list.d.ts +1 -1
- package/dist/discord/monitor/allow-list.js +3 -3
- package/dist/discord/monitor/exec-approvals.d.ts +1 -1
- package/dist/discord/monitor/exec-approvals.js +1 -1
- package/dist/discord/monitor/listeners.js +2 -1
- package/dist/discord/monitor/message-handler.preflight.js +83 -48
- package/dist/discord/monitor/message-handler.preflight.types.d.ts +3 -0
- package/dist/discord/monitor/message-handler.process.js +21 -18
- package/dist/discord/monitor/native-command.js +19 -16
- package/dist/discord/monitor/provider.js +2 -2
- package/dist/discord/monitor/reply-context.d.ts +1 -1
- package/dist/discord/monitor/reply-context.js +11 -6
- package/dist/discord/monitor/sender-identity.d.ts +31 -0
- package/dist/discord/monitor/sender-identity.js +45 -0
- package/dist/discord/monitor/threading.d.ts +1 -1
- package/dist/discord/pluralkit.d.ts +26 -0
- package/dist/discord/pluralkit.js +27 -0
- package/dist/discord/send.shared.d.ts +2 -2
- package/dist/discord/targets.d.ts +1 -1
- package/dist/gateway/assistant-identity.d.ts +1 -0
- package/dist/gateway/assistant-identity.js +35 -1
- package/dist/gateway/boot.js +1 -1
- package/dist/gateway/call.js +2 -2
- package/dist/gateway/client.js +3 -2
- package/dist/gateway/config-reload.d.ts +1 -1
- package/dist/gateway/hooks-mapping.d.ts +1 -1
- package/dist/gateway/open-responses.schema.d.ts +6 -6
- package/dist/gateway/openresponses-http.d.ts +1 -1
- package/dist/gateway/openresponses-http.js +2 -2
- package/dist/gateway/protocol/index.d.ts +30 -16
- package/dist/gateway/protocol/index.js +5 -2
- package/dist/gateway/protocol/schema/agent.d.ts +1 -0
- package/dist/gateway/protocol/schema/agent.js +1 -0
- package/dist/gateway/protocol/schema/agents-models-skills.d.ts +60 -1
- package/dist/gateway/protocol/schema/agents-models-skills.js +39 -1
- package/dist/gateway/protocol/schema/frames.d.ts +2 -2
- package/dist/gateway/protocol/schema/primitives.d.ts +2 -2
- package/dist/gateway/protocol/schema/protocol-schemas.js +9 -2
- package/dist/gateway/protocol/schema/types.d.ts +9 -2
- package/dist/gateway/server/health-state.d.ts +1 -1
- package/dist/gateway/server/health-state.js +1 -1
- package/dist/gateway/server/ws-connection/message-handler.js +61 -44
- package/dist/gateway/server-channels.d.ts +1 -1
- package/dist/gateway/server-close.d.ts +1 -1
- package/dist/gateway/server-http.d.ts +1 -1
- package/dist/gateway/server-http.js +2 -2
- package/dist/gateway/server-maintenance.d.ts +1 -1
- package/dist/gateway/server-maintenance.js +1 -1
- package/dist/gateway/server-methods/agent.js +5 -5
- package/dist/gateway/server-methods/agents.js +179 -1
- package/dist/gateway/server-methods/channels.d.ts +1 -1
- package/dist/gateway/server-methods/channels.js +1 -1
- package/dist/gateway/server-methods/chat.js +3 -3
- package/dist/gateway/server-methods/config.js +2 -2
- package/dist/gateway/server-methods/nodes.js +3 -3
- package/dist/gateway/server-methods/send.js +3 -3
- package/dist/gateway/server-methods/skills.js +12 -2
- package/dist/gateway/server-methods/types.d.ts +1 -1
- package/dist/gateway/server-methods/update.js +1 -1
- package/dist/gateway/server-methods/usage.js +1 -1
- package/dist/gateway/server-methods-list.js +3 -0
- package/dist/gateway/server-reload-handlers.js +2 -2
- package/dist/gateway/server-runtime-state.d.ts +4 -4
- package/dist/gateway/server-runtime-state.js +3 -3
- package/dist/gateway/server-startup.js +1 -1
- package/dist/gateway/server-ws-runtime.d.ts +1 -1
- package/dist/gateway/server.impl.js +15 -15
- package/dist/gateway/session-utils.d.ts +1 -1
- package/dist/gateway/sessions-patch.js +1 -1
- package/dist/gateway/test-helpers.mocks.d.ts +4 -0
- package/dist/gateway/test-helpers.mocks.js +10 -1
- package/dist/gateway/test-helpers.server.d.ts +1 -1
- package/dist/gateway/test-helpers.server.js +3 -2
- package/dist/gateway/tools-invoke-http.js +5 -1
- package/dist/gateway/ws-log.js +2 -2
- package/dist/hooks/bundled/command-logger/handler.js +1 -1
- package/dist/hooks/bundled/session-memory/handler.js +3 -2
- package/dist/hooks/gmail-ops.js +2 -2
- package/dist/hooks/gmail-watcher.js +1 -1
- package/dist/hooks/install.js +54 -5
- package/dist/hooks/llm-slug-generator.js +1 -1
- package/dist/hooks/loader.js +3 -3
- package/dist/imessage/monitor/monitor-provider.js +3 -3
- package/dist/imessage/send.js +1 -1
- package/dist/index.js +1 -1
- package/dist/infra/archive.js +1 -1
- package/dist/infra/dotenv.js +1 -1
- package/dist/infra/exec-approvals.js +32 -0
- package/dist/infra/gateway-lock.js +1 -1
- package/dist/infra/heartbeat-runner.d.ts +1 -1
- package/dist/infra/heartbeat-runner.js +2 -2
- package/dist/infra/net/fetch-guard.d.ts +20 -0
- package/dist/infra/net/fetch-guard.js +122 -0
- package/dist/infra/net/ssrf.d.ts +10 -3
- package/dist/infra/net/ssrf.js +27 -10
- package/dist/infra/outbound/agent-delivery.d.ts +2 -2
- package/dist/infra/outbound/deliver.d.ts +1 -1
- package/dist/infra/outbound/deliver.js +1 -1
- package/dist/infra/outbound/message-action-runner.d.ts +1 -1
- package/dist/infra/outbound/message-action-runner.js +6 -6
- package/dist/infra/outbound/outbound-policy.js +1 -1
- package/dist/infra/outbound/outbound-session.d.ts +1 -1
- package/dist/infra/outbound/outbound-session.js +1 -1
- package/dist/infra/outbound/target-resolver.js +1 -1
- package/dist/infra/path-env.js +1 -1
- package/dist/infra/ports-inspect.js +1 -1
- package/dist/infra/provider-usage.load.d.ts +1 -1
- package/dist/infra/provider-usage.load.js +1 -1
- package/dist/infra/retry.js +1 -1
- package/dist/infra/skills-remote.js +3 -3
- package/dist/infra/state-migrations.fs.js +1 -1
- package/dist/infra/state-migrations.js +1 -1
- package/dist/infra/tailscale.js +1 -1
- package/dist/infra/tls/gateway.js +1 -1
- package/dist/infra/update-global.d.ts +6 -0
- package/dist/infra/update-global.js +35 -0
- package/dist/infra/update-runner.js +7 -3
- package/dist/infra/update-startup.js +3 -3
- package/dist/line/auto-reply-delivery.d.ts +1 -1
- package/dist/line/bot-handlers.d.ts +1 -1
- package/dist/line/bot-handlers.js +1 -1
- package/dist/line/download.js +2 -2
- package/dist/line/monitor.js +8 -8
- package/dist/line/webhook.d.ts +1 -1
- package/dist/link-understanding/apply.d.ts +1 -1
- package/dist/link-understanding/runner.d.ts +1 -1
- package/dist/link-understanding/runner.js +1 -1
- package/dist/logging/config.js +1 -1
- package/dist/logging/console.js +1 -1
- package/dist/logging/logger.js +2 -2
- package/dist/logging/subsystem.js +2 -2
- package/dist/media/fetch.d.ts +4 -0
- package/dist/media/fetch.js +67 -52
- package/dist/media/host.js +1 -1
- package/dist/media/input-files.js +24 -57
- package/dist/media/mime.js +1 -1
- package/dist/media/server.js +2 -2
- package/dist/media/store.js +1 -1
- package/dist/media-understanding/apply.d.ts +1 -1
- package/dist/media-understanding/apply.js +156 -41
- package/dist/media-understanding/attachments.js +2 -2
- package/dist/media-understanding/providers/deepgram/audio.js +18 -12
- package/dist/media-understanding/providers/google/audio.js +22 -16
- package/dist/media-understanding/providers/google/video.js +22 -16
- package/dist/media-understanding/providers/image.js +2 -2
- package/dist/media-understanding/providers/openai/audio.js +18 -12
- package/dist/media-understanding/providers/shared.d.ts +7 -0
- package/dist/media-understanding/providers/shared.js +12 -0
- package/dist/media-understanding/resolve.d.ts +1 -1
- package/dist/media-understanding/runner.d.ts +2 -2
- package/dist/media-understanding/runner.js +3 -3
- package/dist/memory/batch-gemini.js +1 -1
- package/dist/memory/embeddings.js +10 -2
- package/dist/memory/manager-cache-key.js +1 -1
- package/dist/memory/manager.js +6 -6
- package/dist/memory/provider-key.js +1 -1
- package/dist/node-host/runner.js +10 -10
- package/dist/plugins/discovery.d.ts +1 -1
- package/dist/plugins/hook-runner-global.d.ts +1 -1
- package/dist/plugins/hooks.js +2 -0
- package/dist/plugins/http-registry.js +1 -1
- package/dist/plugins/install.js +49 -4
- package/dist/plugins/loader.d.ts +1 -1
- package/dist/plugins/loader.js +5 -5
- package/dist/plugins/manifest-registry.d.ts +1 -1
- package/dist/plugins/manifest.d.ts +1 -1
- package/dist/plugins/providers.d.ts +1 -1
- package/dist/plugins/registry.d.ts +3 -3
- package/dist/plugins/registry.js +1 -1
- package/dist/plugins/runtime/index.js +22 -22
- package/dist/plugins/status.d.ts +1 -1
- package/dist/plugins/types.d.ts +6 -6
- package/dist/plugins/update.js +12 -1
- package/dist/process/exec.js +23 -2
- package/dist/routing/resolve-route.d.ts +3 -1
- package/dist/routing/resolve-route.js +10 -0
- package/dist/runtime.js +2 -0
- package/dist/security/audit-extra.js +8 -8
- package/dist/security/audit.d.ts +2 -2
- package/dist/security/audit.js +6 -5
- package/dist/security/external-content.d.ts +7 -2
- package/dist/security/external-content.js +81 -3
- package/dist/security/fix.js +4 -4
- package/dist/sessions/level-overrides.d.ts +1 -1
- package/dist/signal/monitor/event-handler.js +2 -2
- package/dist/signal/monitor.js +1 -1
- package/dist/slack/directory-live.d.ts +1 -1
- package/dist/slack/directory-live.js +1 -1
- package/dist/slack/monitor/context.d.ts +2 -2
- package/dist/slack/monitor/context.js +1 -1
- package/dist/slack/monitor/events/channels.js +2 -2
- package/dist/slack/monitor/media.d.ts +2 -2
- package/dist/slack/monitor/media.js +77 -11
- package/dist/slack/monitor/message-handler/dispatch.js +1 -1
- package/dist/slack/monitor/message-handler/prepare.d.ts +1 -1
- package/dist/slack/monitor/message-handler/prepare.js +8 -8
- package/dist/slack/monitor/message-handler/types.d.ts +1 -1
- package/dist/slack/monitor/provider.js +3 -3
- package/dist/slack/monitor/replies.js +1 -1
- package/dist/slack/monitor/slash.js +9 -7
- package/dist/slack/send.js +1 -1
- package/dist/telegram/bot/delivery.d.ts +3 -2
- package/dist/telegram/bot/delivery.js +13 -13
- package/dist/telegram/bot/helpers.d.ts +11 -2
- package/dist/telegram/bot/helpers.js +24 -5
- package/dist/telegram/bot-handlers.d.ts +2 -15
- package/dist/telegram/bot-handlers.js +10 -10
- package/dist/telegram/bot-message-context.d.ts +2 -1
- package/dist/telegram/bot-message-context.js +23 -17
- package/dist/telegram/bot-message-dispatch.d.ts +1 -12
- package/dist/telegram/bot-message-dispatch.js +11 -10
- package/dist/telegram/bot-native-commands.d.ts +29 -2
- package/dist/telegram/bot-native-commands.js +37 -22
- package/dist/telegram/bot.js +6 -4
- package/dist/telegram/download.d.ts +2 -2
- package/dist/telegram/download.js +4 -4
- package/dist/telegram/draft-stream.d.ts +2 -1
- package/dist/telegram/draft-stream.js +1 -1
- package/dist/telegram/monitor.js +105 -100
- package/dist/telegram/network-errors.js +10 -0
- package/dist/telegram/send.d.ts +1 -1
- package/dist/telegram/send.js +10 -8
- package/dist/telegram/sticker-cache.js +4 -4
- package/dist/telegram/webhook-set.js +1 -1
- package/dist/telegram/webhook.js +3 -3
- package/dist/terminal/restore.d.ts +1 -0
- package/dist/terminal/restore.js +45 -0
- package/dist/terminal/table.js +1 -1
- package/dist/tts/tts.js +5 -5
- package/dist/tui/components/filterable-select-list.d.ts +1 -1
- package/dist/tui/components/searchable-select-list.js +3 -3
- package/dist/tui/tui-formatters.js +1 -1
- package/dist/tui/tui.js +7 -1
- package/dist/web/accounts.js +2 -2
- package/dist/web/auth-store.d.ts +1 -1
- package/dist/web/auth-store.js +1 -1
- package/dist/web/auto-reply/deliver-reply.d.ts +2 -2
- package/dist/web/auto-reply/deliver-reply.js +2 -2
- package/dist/web/auto-reply/heartbeat-runner.js +1 -1
- package/dist/web/auto-reply/monitor/ack-reaction.js +1 -1
- package/dist/web/auto-reply/monitor/group-gating.js +2 -2
- package/dist/web/auto-reply/monitor/message-line.d.ts +1 -1
- package/dist/web/auto-reply/monitor/process-message.js +3 -3
- package/dist/web/auto-reply/monitor.d.ts +1 -1
- package/dist/web/auto-reply/monitor.js +3 -3
- package/dist/web/inbound/monitor.js +1 -1
- package/dist/web/login-qr.js +1 -1
- package/dist/web/login.js +1 -1
- package/dist/web/media.d.ts +7 -2
- package/dist/web/media.js +15 -5
- package/dist/web/outbound.js +3 -3
- package/dist/web/session.js +2 -2
- package/dist/wizard/onboarding.finalize.d.ts +3 -1
- package/dist/wizard/onboarding.finalize.js +9 -10
- package/dist/wizard/onboarding.js +8 -5
- package/docs/.i18n/README.md +31 -0
- package/docs/.i18n/glossary.zh-CN.json +134 -0
- package/docs/.i18n/zh-CN.tm.jsonl +1371 -0
- package/docs/channels/bluebubbles.md +2 -2
- package/docs/channels/discord.md +35 -0
- package/docs/channels/grammy.md +1 -1
- package/docs/channels/msteams.md +2 -0
- package/docs/channels/telegram.md +5 -5
- package/docs/channels/twitch.md +7 -5
- package/docs/concepts/model-providers.md +12 -9
- package/docs/concepts/session-pruning.md +6 -6
- package/docs/docs.json +628 -301
- package/docs/gateway/configuration.md +1 -1
- package/docs/gateway/security/index.md +2 -1
- package/docs/gateway/troubleshooting.md +2 -2
- package/docs/help/faq.md +24 -11
- package/docs/help/troubleshooting.md +2 -2
- package/docs/index.md +2 -2
- package/docs/install/docker.md +85 -0
- package/docs/install/index.md +11 -7
- package/docs/install/installer.md +6 -6
- package/docs/install/uninstall.md +1 -1
- package/docs/install/updating.md +4 -4
- package/docs/nodes/index.md +22 -0
- package/docs/pi.md +20 -8
- package/docs/platforms/digitalocean.md +1 -1
- package/docs/platforms/exe-dev.md +3 -3
- package/docs/platforms/mac/release.md +7 -7
- package/docs/platforms/oracle.md +1 -1
- package/docs/platforms/raspberry-pi.md +1 -1
- package/docs/platforms/windows.md +2 -1
- package/docs/providers/anthropic.md +24 -4
- package/docs/providers/index.md +3 -3
- package/docs/providers/minimax.md +4 -4
- package/docs/providers/models.md +3 -3
- package/docs/providers/moonshot.md +4 -3
- package/docs/reference/RELEASING.md +3 -3
- package/docs/reference/templates/BOOTSTRAP.md +7 -0
- package/docs/reference/transcript-hygiene.md +23 -1
- package/docs/start/getting-started.md +1 -1
- package/docs/start/onboarding.md +10 -6
- package/docs/testing.md +1 -1
- package/docs/token-use.md +1 -1
- package/docs/tools/browser.md +14 -0
- package/docs/tools/chrome-extension.md +1 -0
- package/docs/tools/clawhub.md +56 -1
- package/docs/tools/exec-approvals.md +2 -0
- package/docs/tools/exec.md +7 -5
- package/docs/tools/skills.md +1 -1
- package/docs/tools/subagents.md +1 -0
- package/docs/web/control-ui.md +30 -0
- package/docs/whatsapp-openclaw-ai-zh.jpg +0 -0
- package/docs/zh-CN/automation/auth-monitoring.md +47 -0
- package/docs/zh-CN/automation/cron-jobs.md +434 -0
- package/docs/zh-CN/automation/cron-vs-heartbeat.md +286 -0
- package/docs/zh-CN/automation/gmail-pubsub.md +249 -0
- package/docs/zh-CN/automation/poll.md +75 -0
- package/docs/zh-CN/automation/webhook.md +163 -0
- package/docs/zh-CN/bedrock.md +170 -0
- package/docs/zh-CN/brave-search.md +48 -0
- package/docs/zh-CN/broadcast-groups.md +449 -0
- package/docs/zh-CN/channels/bluebubbles.md +271 -0
- package/docs/zh-CN/channels/discord.md +463 -0
- package/docs/zh-CN/channels/googlechat.md +257 -0
- package/docs/zh-CN/channels/grammy.md +38 -0
- package/docs/zh-CN/channels/imessage.md +302 -0
- package/docs/zh-CN/channels/index.md +50 -0
- package/docs/zh-CN/channels/line.md +180 -0
- package/docs/zh-CN/channels/location.md +63 -0
- package/docs/zh-CN/channels/matrix.md +221 -0
- package/docs/zh-CN/channels/mattermost.md +142 -0
- package/docs/zh-CN/channels/msteams.md +770 -0
- package/docs/zh-CN/channels/nextcloud-talk.md +141 -0
- package/docs/zh-CN/channels/nostr.md +240 -0
- package/docs/zh-CN/channels/signal.md +209 -0
- package/docs/zh-CN/channels/slack.md +530 -0
- package/docs/zh-CN/channels/telegram.md +755 -0
- package/docs/zh-CN/channels/tlon.md +138 -0
- package/docs/zh-CN/channels/troubleshooting.md +36 -0
- package/docs/zh-CN/channels/twitch.md +384 -0
- package/docs/zh-CN/channels/whatsapp.md +410 -0
- package/docs/zh-CN/channels/zalo.md +196 -0
- package/docs/zh-CN/channels/zalouser.md +147 -0
- package/docs/zh-CN/cli/acp.md +173 -0
- package/docs/zh-CN/cli/agent.md +31 -0
- package/docs/zh-CN/cli/agents.md +82 -0
- package/docs/zh-CN/cli/approvals.md +57 -0
- package/docs/zh-CN/cli/browser.md +114 -0
- package/docs/zh-CN/cli/channels.md +86 -0
- package/docs/zh-CN/cli/config.md +56 -0
- package/docs/zh-CN/cli/configure.md +40 -0
- package/docs/zh-CN/cli/cron.md +38 -0
- package/docs/zh-CN/cli/dashboard.md +23 -0
- package/docs/zh-CN/cli/devices.md +74 -0
- package/docs/zh-CN/cli/directory.md +70 -0
- package/docs/zh-CN/cli/dns.md +30 -0
- package/docs/zh-CN/cli/docs.md +22 -0
- package/docs/zh-CN/cli/doctor.md +48 -0
- package/docs/zh-CN/cli/gateway.md +202 -0
- package/docs/zh-CN/cli/health.md +28 -0
- package/docs/zh-CN/cli/hooks.md +310 -0
- package/docs/zh-CN/cli/index.md +1033 -0
- package/docs/zh-CN/cli/logs.md +31 -0
- package/docs/zh-CN/cli/memory.md +52 -0
- package/docs/zh-CN/cli/message.md +246 -0
- package/docs/zh-CN/cli/models.md +85 -0
- package/docs/zh-CN/cli/node.md +115 -0
- package/docs/zh-CN/cli/nodes.md +79 -0
- package/docs/zh-CN/cli/onboard.md +36 -0
- package/docs/zh-CN/cli/pairing.md +28 -0
- package/docs/zh-CN/cli/plugins.md +66 -0
- package/docs/zh-CN/cli/reset.md +24 -0
- package/docs/zh-CN/cli/sandbox.md +158 -0
- package/docs/zh-CN/cli/security.md +33 -0
- package/docs/zh-CN/cli/sessions.md +23 -0
- package/docs/zh-CN/cli/setup.md +36 -0
- package/docs/zh-CN/cli/skills.md +33 -0
- package/docs/zh-CN/cli/status.md +33 -0
- package/docs/zh-CN/cli/system.md +63 -0
- package/docs/zh-CN/cli/tui.md +30 -0
- package/docs/zh-CN/cli/uninstall.md +24 -0
- package/docs/zh-CN/cli/update.md +101 -0
- package/docs/zh-CN/cli/voicecall.md +41 -0
- package/docs/zh-CN/cli/webhooks.md +32 -0
- package/docs/zh-CN/concepts/agent-loop.md +150 -0
- package/docs/zh-CN/concepts/agent-workspace.md +214 -0
- package/docs/zh-CN/concepts/agent.md +114 -0
- package/docs/zh-CN/concepts/architecture.md +123 -0
- package/docs/zh-CN/concepts/channel-routing.md +117 -0
- package/docs/zh-CN/concepts/compaction.md +67 -0
- package/docs/zh-CN/concepts/context.md +168 -0
- package/docs/zh-CN/concepts/group-messages.md +91 -0
- package/docs/zh-CN/concepts/groups.md +380 -0
- package/docs/zh-CN/concepts/markdown-formatting.md +117 -0
- package/docs/zh-CN/concepts/memory.md +409 -0
- package/docs/zh-CN/concepts/messages.md +141 -0
- package/docs/zh-CN/concepts/model-failover.md +156 -0
- package/docs/zh-CN/concepts/model-providers.md +317 -0
- package/docs/zh-CN/concepts/models.md +196 -0
- package/docs/zh-CN/concepts/multi-agent.md +369 -0
- package/docs/zh-CN/concepts/oauth.md +151 -0
- package/docs/zh-CN/concepts/presence.md +99 -0
- package/docs/zh-CN/concepts/queue.md +94 -0
- package/docs/zh-CN/concepts/retry.md +76 -0
- package/docs/zh-CN/concepts/session-pruning.md +129 -0
- package/docs/zh-CN/concepts/session-tool.md +200 -0
- package/docs/zh-CN/concepts/session.md +166 -0
- package/docs/zh-CN/concepts/sessions.md +17 -0
- package/docs/zh-CN/concepts/streaming.md +133 -0
- package/docs/zh-CN/concepts/system-prompt.md +101 -0
- package/docs/zh-CN/concepts/timezone.md +96 -0
- package/docs/zh-CN/concepts/typebox.md +284 -0
- package/docs/zh-CN/concepts/typing-indicators.md +74 -0
- package/docs/zh-CN/concepts/usage-tracking.md +42 -0
- package/docs/zh-CN/date-time.md +129 -0
- package/docs/zh-CN/debug/node-issue.md +90 -0
- package/docs/zh-CN/debugging.md +160 -0
- package/docs/zh-CN/diagnostics/flags.md +98 -0
- package/docs/zh-CN/environment.md +88 -0
- package/docs/zh-CN/experiments/onboarding-config-protocol.md +47 -0
- package/docs/zh-CN/experiments/plans/cron-add-hardening.md +70 -0
- package/docs/zh-CN/experiments/plans/group-policy-hardening.md +45 -0
- package/docs/zh-CN/experiments/plans/openresponses-gateway.md +121 -0
- package/docs/zh-CN/experiments/proposals/model-config.md +42 -0
- package/docs/zh-CN/experiments/research/memory.md +235 -0
- package/docs/zh-CN/gateway/authentication.md +142 -0
- package/docs/zh-CN/gateway/background-process.md +100 -0
- package/docs/zh-CN/gateway/bonjour.md +160 -0
- package/docs/zh-CN/gateway/bridge-protocol.md +84 -0
- package/docs/zh-CN/gateway/cli-backends.md +214 -0
- package/docs/zh-CN/gateway/configuration-examples.md +587 -0
- package/docs/zh-CN/gateway/configuration.md +3331 -0
- package/docs/zh-CN/gateway/discovery.md +123 -0
- package/docs/zh-CN/gateway/doctor.md +236 -0
- package/docs/zh-CN/gateway/gateway-lock.md +41 -0
- package/docs/zh-CN/gateway/health.md +42 -0
- package/docs/zh-CN/gateway/heartbeat.md +274 -0
- package/docs/zh-CN/gateway/index.md +328 -0
- package/docs/zh-CN/gateway/local-models.md +157 -0
- package/docs/zh-CN/gateway/logging.md +116 -0
- package/docs/zh-CN/gateway/multiple-gateways.md +119 -0
- package/docs/zh-CN/gateway/openai-http-api.md +125 -0
- package/docs/zh-CN/gateway/openresponses-http-api.md +319 -0
- package/docs/zh-CN/gateway/pairing.md +99 -0
- package/docs/zh-CN/gateway/protocol.md +211 -0
- package/docs/zh-CN/gateway/remote-gateway-readme.md +164 -0
- package/docs/zh-CN/gateway/remote.md +133 -0
- package/docs/zh-CN/gateway/sandbox-vs-tool-policy-vs-elevated.md +135 -0
- package/docs/zh-CN/gateway/sandboxing.md +196 -0
- package/docs/zh-CN/gateway/security/formal-verification.md +169 -0
- package/docs/zh-CN/gateway/security/index.md +777 -0
- package/docs/zh-CN/gateway/tailscale.md +120 -0
- package/docs/zh-CN/gateway/tools-invoke-http-api.md +92 -0
- package/docs/zh-CN/gateway/troubleshooting.md +773 -0
- package/docs/zh-CN/help/faq.md +2628 -0
- package/docs/zh-CN/help/index.md +28 -0
- package/docs/zh-CN/help/troubleshooting.md +104 -0
- package/docs/zh-CN/hooks/soul-evil.md +72 -0
- package/docs/zh-CN/hooks.md +919 -0
- package/docs/zh-CN/index.md +268 -0
- package/docs/zh-CN/install/ansible.md +215 -0
- package/docs/zh-CN/install/bun.md +65 -0
- package/docs/zh-CN/install/development-channels.md +79 -0
- package/docs/zh-CN/install/docker.md +461 -0
- package/docs/zh-CN/install/index.md +193 -0
- package/docs/zh-CN/install/installer.md +128 -0
- package/docs/zh-CN/install/migrating.md +199 -0
- package/docs/zh-CN/install/nix.md +103 -0
- package/docs/zh-CN/install/node.md +85 -0
- package/docs/zh-CN/install/uninstall.md +135 -0
- package/docs/zh-CN/install/updating.md +233 -0
- package/docs/zh-CN/logging.md +328 -0
- package/docs/zh-CN/multi-agent-sandbox-tools.md +399 -0
- package/docs/zh-CN/network.md +59 -0
- package/docs/zh-CN/nodes/audio.md +120 -0
- package/docs/zh-CN/nodes/camera.md +162 -0
- package/docs/zh-CN/nodes/images.md +79 -0
- package/docs/zh-CN/nodes/index.md +316 -0
- package/docs/zh-CN/nodes/location-command.md +120 -0
- package/docs/zh-CN/nodes/media-understanding.md +381 -0
- package/docs/zh-CN/nodes/talk.md +97 -0
- package/docs/zh-CN/nodes/voicewake.md +72 -0
- package/docs/zh-CN/northflank.mdx +60 -0
- package/docs/zh-CN/perplexity.md +84 -0
- package/docs/zh-CN/pi-dev.md +77 -0
- package/docs/zh-CN/pi.md +607 -0
- package/docs/zh-CN/platforms/android.md +155 -0
- package/docs/zh-CN/platforms/digitalocean.md +269 -0
- package/docs/zh-CN/platforms/exe-dev.md +127 -0
- package/docs/zh-CN/platforms/fly.md +490 -0
- package/docs/zh-CN/platforms/gcp.md +510 -0
- package/docs/zh-CN/platforms/hetzner.md +337 -0
- package/docs/zh-CN/platforms/index.md +60 -0
- package/docs/zh-CN/platforms/ios.md +114 -0
- package/docs/zh-CN/platforms/linux.md +99 -0
- package/docs/zh-CN/platforms/mac/bundled-gateway.md +77 -0
- package/docs/zh-CN/platforms/mac/canvas.md +127 -0
- package/docs/zh-CN/platforms/mac/child-process.md +62 -0
- package/docs/zh-CN/platforms/mac/dev-setup.md +109 -0
- package/docs/zh-CN/platforms/mac/health.md +41 -0
- package/docs/zh-CN/platforms/mac/icon.md +38 -0
- package/docs/zh-CN/platforms/mac/logging.md +64 -0
- package/docs/zh-CN/platforms/mac/menu-bar.md +88 -0
- package/docs/zh-CN/platforms/mac/peekaboo.md +62 -0
- package/docs/zh-CN/platforms/mac/permissions.md +46 -0
- package/docs/zh-CN/platforms/mac/release.md +92 -0
- package/docs/zh-CN/platforms/mac/remote.md +90 -0
- package/docs/zh-CN/platforms/mac/signing.md +54 -0
- package/docs/zh-CN/platforms/mac/skills.md +40 -0
- package/docs/zh-CN/platforms/mac/voice-overlay.md +67 -0
- package/docs/zh-CN/platforms/mac/voicewake.md +74 -0
- package/docs/zh-CN/platforms/mac/webchat.md +43 -0
- package/docs/zh-CN/platforms/mac/xpc.md +68 -0
- package/docs/zh-CN/platforms/macos-vm.md +288 -0
- package/docs/zh-CN/platforms/macos.md +194 -0
- package/docs/zh-CN/platforms/oracle.md +310 -0
- package/docs/zh-CN/platforms/raspberry-pi.md +365 -0
- package/docs/zh-CN/platforms/windows.md +156 -0
- package/docs/zh-CN/plugin.md +639 -0
- package/docs/zh-CN/plugins/agent-tools.md +99 -0
- package/docs/zh-CN/plugins/manifest.md +68 -0
- package/docs/zh-CN/plugins/voice-call.md +250 -0
- package/docs/zh-CN/plugins/zalouser.md +88 -0
- package/docs/zh-CN/prose.md +141 -0
- package/docs/zh-CN/providers/anthropic.md +158 -0
- package/docs/zh-CN/providers/claude-max-api-proxy.md +155 -0
- package/docs/zh-CN/providers/deepgram.md +97 -0
- package/docs/zh-CN/providers/github-copilot.md +67 -0
- package/docs/zh-CN/providers/glm.md +39 -0
- package/docs/zh-CN/providers/index.md +67 -0
- package/docs/zh-CN/providers/minimax.md +206 -0
- package/docs/zh-CN/providers/models.md +55 -0
- package/docs/zh-CN/providers/moonshot.md +145 -0
- package/docs/zh-CN/providers/ollama.md +230 -0
- package/docs/zh-CN/providers/openai.md +68 -0
- package/docs/zh-CN/providers/opencode.md +41 -0
- package/docs/zh-CN/providers/openrouter.md +43 -0
- package/docs/zh-CN/providers/qwen.md +55 -0
- package/docs/zh-CN/providers/synthetic.md +102 -0
- package/docs/zh-CN/providers/venice.md +274 -0
- package/docs/zh-CN/providers/vercel-ai-gateway.md +57 -0
- package/docs/zh-CN/providers/xiaomi.md +68 -0
- package/docs/zh-CN/providers/zai.md +41 -0
- package/docs/zh-CN/railway.mdx +106 -0
- package/docs/zh-CN/refactor/clawnet.md +424 -0
- package/docs/zh-CN/refactor/exec-host.md +323 -0
- package/docs/zh-CN/refactor/outbound-session-mirroring.md +92 -0
- package/docs/zh-CN/refactor/plugin-sdk.md +221 -0
- package/docs/zh-CN/refactor/strict-config.md +100 -0
- package/docs/zh-CN/reference/AGENTS.default.md +131 -0
- package/docs/zh-CN/reference/RELEASING.md +123 -0
- package/docs/zh-CN/reference/api-usage-costs.md +136 -0
- package/docs/zh-CN/reference/device-models.md +54 -0
- package/docs/zh-CN/reference/rpc.md +48 -0
- package/docs/zh-CN/reference/session-management-compaction.md +288 -0
- package/docs/zh-CN/reference/templates/AGENTS.dev.md +89 -0
- package/docs/zh-CN/reference/templates/AGENTS.md +225 -0
- package/docs/zh-CN/reference/templates/BOOT.md +17 -0
- package/docs/zh-CN/reference/templates/BOOTSTRAP.md +68 -0
- package/docs/zh-CN/reference/templates/HEARTBEAT.md +18 -0
- package/docs/zh-CN/reference/templates/IDENTITY.dev.md +54 -0
- package/docs/zh-CN/reference/templates/IDENTITY.md +35 -0
- package/docs/zh-CN/reference/templates/SOUL.dev.md +83 -0
- package/docs/zh-CN/reference/templates/SOUL.md +49 -0
- package/docs/zh-CN/reference/templates/TOOLS.dev.md +31 -0
- package/docs/zh-CN/reference/templates/TOOLS.md +53 -0
- package/docs/zh-CN/reference/templates/USER.dev.md +25 -0
- package/docs/zh-CN/reference/templates/USER.md +30 -0
- package/docs/zh-CN/reference/test.md +57 -0
- package/docs/zh-CN/reference/transcript-hygiene.md +109 -0
- package/docs/zh-CN/render.mdx +169 -0
- package/docs/zh-CN/scripts.md +40 -0
- package/docs/zh-CN/security/formal-verification.md +169 -0
- package/docs/zh-CN/start/getting-started.md +210 -0
- package/docs/zh-CN/start/hubs.md +191 -0
- package/docs/zh-CN/start/lore.md +226 -0
- package/docs/zh-CN/start/onboarding.md +105 -0
- package/docs/zh-CN/start/openclaw.md +248 -0
- package/docs/zh-CN/start/pairing.md +90 -0
- package/docs/zh-CN/start/setup.md +154 -0
- package/docs/zh-CN/start/showcase.md +423 -0
- package/docs/zh-CN/start/wizard.md +331 -0
- package/docs/zh-CN/testing.md +375 -0
- package/docs/zh-CN/token-use.md +105 -0
- package/docs/zh-CN/tools/agent-send.md +60 -0
- package/docs/zh-CN/tools/apply-patch.md +57 -0
- package/docs/zh-CN/tools/browser-linux-troubleshooting.md +146 -0
- package/docs/zh-CN/tools/browser-login.md +75 -0
- package/docs/zh-CN/tools/browser.md +542 -0
- package/docs/zh-CN/tools/chrome-extension.md +185 -0
- package/docs/zh-CN/tools/clawhub.md +209 -0
- package/docs/zh-CN/tools/creating-skills.md +61 -0
- package/docs/zh-CN/tools/elevated.md +64 -0
- package/docs/zh-CN/tools/exec-approvals.md +233 -0
- package/docs/zh-CN/tools/exec.md +168 -0
- package/docs/zh-CN/tools/firecrawl.md +65 -0
- package/docs/zh-CN/tools/index.md +513 -0
- package/docs/zh-CN/tools/llm-task.md +117 -0
- package/docs/zh-CN/tools/lobster.md +348 -0
- package/docs/zh-CN/tools/reactions.md +29 -0
- package/docs/zh-CN/tools/skills-config.md +78 -0
- package/docs/zh-CN/tools/skills.md +284 -0
- package/docs/zh-CN/tools/slash-commands.md +205 -0
- package/docs/zh-CN/tools/subagents.md +156 -0
- package/docs/zh-CN/tools/thinking.md +80 -0
- package/docs/zh-CN/tools/web.md +264 -0
- package/docs/zh-CN/tts.md +380 -0
- package/docs/zh-CN/tui.md +166 -0
- package/docs/zh-CN/vps.md +47 -0
- package/docs/zh-CN/web/control-ui.md +201 -0
- package/docs/zh-CN/web/dashboard.md +49 -0
- package/docs/zh-CN/web/index.md +118 -0
- package/docs/zh-CN/web/webchat.md +56 -0
- package/extensions/bluebubbles/index.ts +0 -1
- package/extensions/bluebubbles/node_modules/.bin/moltbot +21 -0
- package/extensions/bluebubbles/node_modules/.bin/moltbot.CMD +12 -0
- package/extensions/{discord/node_modules/.bin/claw.ps1 → bluebubbles/node_modules/.bin/moltbot.ps1} +2 -2
- package/extensions/bluebubbles/node_modules/.bin/openclaw +21 -0
- package/extensions/bluebubbles/node_modules/.bin/openclaw.CMD +12 -0
- package/extensions/{copilot-proxy/node_modules/.bin/claw.ps1 → bluebubbles/node_modules/.bin/openclaw.ps1} +2 -2
- package/extensions/bluebubbles/node_modules/.bin/pigbot +21 -0
- package/extensions/bluebubbles/node_modules/.bin/pigbot.CMD +12 -0
- package/extensions/bluebubbles/node_modules/.bin/{claw.ps1 → pigbot.ps1} +2 -2
- package/extensions/bluebubbles/package.json +1 -1
- package/extensions/bluebubbles/src/actions.test.ts +1 -2
- package/extensions/bluebubbles/src/actions.ts +6 -7
- package/extensions/bluebubbles/src/attachments.test.ts +1 -2
- package/extensions/bluebubbles/src/attachments.ts +1 -1
- package/extensions/bluebubbles/src/channel.ts +4 -5
- package/extensions/bluebubbles/src/chat.test.ts +0 -1
- package/extensions/bluebubbles/src/chat.ts +1 -1
- package/extensions/bluebubbles/src/media-send.ts +0 -2
- package/extensions/bluebubbles/src/monitor.test.ts +5 -4
- package/extensions/bluebubbles/src/monitor.ts +50 -30
- package/extensions/bluebubbles/src/onboarding.ts +1 -1
- package/extensions/bluebubbles/src/reactions.test.ts +0 -1
- package/extensions/bluebubbles/src/reactions.ts +1 -1
- package/extensions/bluebubbles/src/send.test.ts +1 -2
- package/extensions/bluebubbles/src/send.ts +1 -2
- package/extensions/bluebubbles/src/targets.test.ts +0 -1
- package/extensions/copilot-proxy/node_modules/.bin/moltbot +21 -0
- package/extensions/copilot-proxy/node_modules/.bin/moltbot.CMD +12 -0
- package/extensions/{diagnostics-otel/node_modules/.bin/claw.ps1 → copilot-proxy/node_modules/.bin/moltbot.ps1} +2 -2
- package/extensions/copilot-proxy/node_modules/.bin/openclaw +21 -0
- package/extensions/copilot-proxy/node_modules/.bin/openclaw.CMD +12 -0
- package/extensions/copilot-proxy/node_modules/.bin/openclaw.ps1 +41 -0
- package/extensions/copilot-proxy/node_modules/.bin/pigbot +21 -0
- package/extensions/copilot-proxy/node_modules/.bin/pigbot.CMD +12 -0
- package/extensions/copilot-proxy/node_modules/.bin/pigbot.ps1 +41 -0
- package/extensions/copilot-proxy/package.json +1 -1
- package/extensions/diagnostics-otel/index.ts +0 -1
- package/extensions/diagnostics-otel/node_modules/.bin/moltbot +21 -0
- package/extensions/diagnostics-otel/node_modules/.bin/moltbot.CMD +12 -0
- package/extensions/diagnostics-otel/node_modules/.bin/moltbot.ps1 +41 -0
- package/extensions/diagnostics-otel/node_modules/.bin/openclaw +21 -0
- package/extensions/diagnostics-otel/node_modules/.bin/openclaw.CMD +12 -0
- package/extensions/diagnostics-otel/node_modules/.bin/openclaw.ps1 +41 -0
- package/extensions/diagnostics-otel/node_modules/.bin/pigbot +21 -0
- package/extensions/diagnostics-otel/node_modules/.bin/pigbot.CMD +12 -0
- package/extensions/diagnostics-otel/node_modules/.bin/pigbot.ps1 +41 -0
- package/extensions/diagnostics-otel/package.json +1 -1
- package/extensions/diagnostics-otel/src/service.test.ts +1 -1
- package/extensions/diagnostics-otel/src/service.ts +2 -3
- package/extensions/discord/index.ts +0 -1
- package/extensions/discord/node_modules/.bin/moltbot +21 -0
- package/extensions/discord/node_modules/.bin/moltbot.CMD +12 -0
- package/extensions/discord/node_modules/.bin/moltbot.ps1 +41 -0
- package/extensions/discord/node_modules/.bin/openclaw +21 -0
- package/extensions/discord/node_modules/.bin/openclaw.CMD +12 -0
- package/extensions/discord/node_modules/.bin/openclaw.ps1 +41 -0
- package/extensions/discord/node_modules/.bin/pigbot +21 -0
- package/extensions/discord/node_modules/.bin/pigbot.CMD +12 -0
- package/extensions/discord/node_modules/.bin/pigbot.ps1 +41 -0
- package/extensions/discord/package.json +1 -1
- package/extensions/discord/src/channel.ts +0 -1
- package/extensions/google-antigravity-auth/node_modules/.bin/moltbot +21 -0
- package/extensions/google-antigravity-auth/node_modules/.bin/moltbot.CMD +12 -0
- package/extensions/google-antigravity-auth/node_modules/.bin/moltbot.ps1 +41 -0
- package/extensions/google-antigravity-auth/node_modules/.bin/openclaw +21 -0
- package/extensions/google-antigravity-auth/node_modules/.bin/openclaw.CMD +12 -0
- package/extensions/google-antigravity-auth/node_modules/.bin/openclaw.ps1 +41 -0
- package/extensions/google-antigravity-auth/node_modules/.bin/pigbot +21 -0
- package/extensions/google-antigravity-auth/node_modules/.bin/pigbot.CMD +12 -0
- package/extensions/google-antigravity-auth/node_modules/.bin/pigbot.ps1 +41 -0
- package/extensions/google-antigravity-auth/package.json +1 -1
- package/extensions/google-gemini-cli-auth/index.ts +0 -1
- package/extensions/google-gemini-cli-auth/node_modules/.bin/moltbot +21 -0
- package/extensions/google-gemini-cli-auth/node_modules/.bin/moltbot.CMD +12 -0
- package/extensions/google-gemini-cli-auth/node_modules/.bin/moltbot.ps1 +41 -0
- package/extensions/google-gemini-cli-auth/node_modules/.bin/openclaw +21 -0
- package/extensions/google-gemini-cli-auth/node_modules/.bin/openclaw.CMD +12 -0
- package/extensions/google-gemini-cli-auth/node_modules/.bin/openclaw.ps1 +41 -0
- package/extensions/google-gemini-cli-auth/node_modules/.bin/pigbot +21 -0
- package/extensions/google-gemini-cli-auth/node_modules/.bin/pigbot.CMD +12 -0
- package/extensions/google-gemini-cli-auth/node_modules/.bin/pigbot.ps1 +41 -0
- package/extensions/google-gemini-cli-auth/oauth.test.ts +1 -1
- package/extensions/google-gemini-cli-auth/package.json +1 -1
- package/extensions/googlechat/index.ts +0 -1
- package/extensions/googlechat/node_modules/.bin/moltbot +21 -0
- package/extensions/googlechat/node_modules/.bin/moltbot.CMD +12 -0
- package/extensions/googlechat/node_modules/.bin/moltbot.ps1 +41 -0
- package/extensions/googlechat/node_modules/.bin/openclaw +21 -0
- package/extensions/googlechat/node_modules/.bin/openclaw.CMD +12 -0
- package/extensions/googlechat/node_modules/.bin/openclaw.ps1 +41 -0
- package/extensions/googlechat/node_modules/.bin/pigbot +21 -0
- package/extensions/googlechat/node_modules/.bin/pigbot.CMD +12 -0
- package/extensions/googlechat/node_modules/.bin/pigbot.ps1 +41 -0
- package/extensions/googlechat/package.json +1 -1
- package/extensions/googlechat/src/accounts.ts +1 -2
- package/extensions/googlechat/src/actions.ts +0 -1
- package/extensions/googlechat/src/api.test.ts +0 -1
- package/extensions/googlechat/src/api.ts +1 -2
- package/extensions/googlechat/src/auth.ts +0 -1
- package/extensions/googlechat/src/channel.ts +1 -2
- package/extensions/googlechat/src/monitor.test.ts +0 -1
- package/extensions/googlechat/src/monitor.ts +8 -10
- package/extensions/googlechat/src/onboarding.ts +0 -1
- package/extensions/googlechat/src/targets.test.ts +0 -1
- package/extensions/imessage/index.ts +0 -1
- package/extensions/imessage/node_modules/.bin/moltbot +21 -0
- package/extensions/imessage/node_modules/.bin/moltbot.CMD +12 -0
- package/extensions/imessage/node_modules/.bin/moltbot.ps1 +41 -0
- package/extensions/imessage/node_modules/.bin/openclaw +21 -0
- package/extensions/imessage/node_modules/.bin/openclaw.CMD +12 -0
- package/extensions/imessage/node_modules/.bin/openclaw.ps1 +41 -0
- package/extensions/imessage/node_modules/.bin/pigbot +21 -0
- package/extensions/imessage/node_modules/.bin/pigbot.CMD +12 -0
- package/extensions/imessage/node_modules/.bin/pigbot.ps1 +41 -0
- package/extensions/imessage/package.json +1 -1
- package/extensions/imessage/src/channel.ts +0 -1
- package/extensions/line/index.ts +1 -2
- package/extensions/line/node_modules/.bin/moltbot +21 -0
- package/extensions/line/node_modules/.bin/moltbot.CMD +12 -0
- package/extensions/line/node_modules/.bin/moltbot.ps1 +41 -0
- package/extensions/line/node_modules/.bin/openclaw +21 -0
- package/extensions/line/node_modules/.bin/openclaw.CMD +12 -0
- package/extensions/line/node_modules/.bin/openclaw.ps1 +41 -0
- package/extensions/line/node_modules/.bin/pigbot +21 -0
- package/extensions/line/node_modules/.bin/pigbot.CMD +12 -0
- package/extensions/line/node_modules/.bin/pigbot.ps1 +41 -0
- package/extensions/line/package.json +1 -1
- package/extensions/line/src/channel.logout.test.ts +3 -1
- package/extensions/line/src/channel.sendPayload.test.ts +1 -1
- package/extensions/line/src/channel.ts +4 -6
- package/extensions/llm-task/index.ts +0 -1
- package/extensions/llm-task/node_modules/.bin/moltbot +21 -0
- package/extensions/llm-task/node_modules/.bin/moltbot.CMD +12 -0
- package/extensions/llm-task/node_modules/.bin/moltbot.ps1 +41 -0
- package/extensions/llm-task/node_modules/.bin/openclaw +21 -0
- package/extensions/llm-task/node_modules/.bin/openclaw.CMD +12 -0
- package/extensions/llm-task/node_modules/.bin/openclaw.ps1 +41 -0
- package/extensions/llm-task/node_modules/.bin/pigbot +21 -0
- package/extensions/llm-task/node_modules/.bin/pigbot.CMD +12 -0
- package/extensions/llm-task/node_modules/.bin/pigbot.ps1 +41 -0
- package/extensions/llm-task/package.json +1 -1
- package/extensions/llm-task/src/llm-task-tool.test.ts +14 -0
- package/extensions/llm-task/src/llm-task-tool.ts +11 -6
- package/extensions/lobster/index.ts +0 -1
- package/extensions/lobster/node_modules/.bin/moltbot +21 -0
- package/extensions/lobster/node_modules/.bin/moltbot.CMD +12 -0
- package/extensions/lobster/node_modules/.bin/moltbot.ps1 +41 -0
- package/extensions/lobster/node_modules/.bin/openclaw +21 -0
- package/extensions/lobster/node_modules/.bin/openclaw.CMD +12 -0
- package/extensions/lobster/node_modules/.bin/openclaw.ps1 +41 -0
- package/extensions/lobster/node_modules/.bin/pigbot +21 -0
- package/extensions/lobster/node_modules/.bin/pigbot.CMD +12 -0
- package/extensions/lobster/node_modules/.bin/pigbot.ps1 +41 -0
- package/extensions/lobster/package.json +1 -1
- package/extensions/lobster/src/lobster-tool.test.ts +3 -4
- package/extensions/lobster/src/lobster-tool.ts +0 -1
- package/extensions/matrix/CHANGELOG.md +12 -0
- package/extensions/matrix/index.ts +0 -1
- package/extensions/matrix/node_modules/.bin/markdown-it +2 -2
- package/extensions/matrix/node_modules/.bin/markdown-it.CMD +2 -2
- package/extensions/matrix/node_modules/.bin/markdown-it.ps1 +2 -2
- package/extensions/matrix/node_modules/.bin/moltbot +21 -0
- package/extensions/matrix/node_modules/.bin/moltbot.CMD +12 -0
- package/extensions/matrix/node_modules/.bin/moltbot.ps1 +41 -0
- package/extensions/matrix/node_modules/.bin/openclaw +21 -0
- package/extensions/matrix/node_modules/.bin/openclaw.CMD +12 -0
- package/extensions/matrix/node_modules/.bin/openclaw.ps1 +41 -0
- package/extensions/matrix/node_modules/.bin/pigbot +21 -0
- package/extensions/matrix/node_modules/.bin/pigbot.CMD +12 -0
- package/extensions/matrix/node_modules/.bin/pigbot.ps1 +41 -0
- package/extensions/matrix/package.json +2 -2
- package/extensions/matrix/src/actions.ts +1 -1
- package/extensions/matrix/src/channel.directory.test.ts +1 -3
- package/extensions/matrix/src/channel.ts +2 -3
- package/extensions/matrix/src/directory-live.ts +0 -1
- package/extensions/matrix/src/group-mentions.ts +1 -2
- package/extensions/matrix/src/matrix/accounts.test.ts +0 -1
- package/extensions/matrix/src/matrix/actions/client.ts +2 -2
- package/extensions/matrix/src/matrix/actions/messages.ts +3 -3
- package/extensions/matrix/src/matrix/actions/pins.ts +3 -3
- package/extensions/matrix/src/matrix/actions/reactions.ts +2 -2
- package/extensions/matrix/src/matrix/actions/room.ts +2 -2
- package/extensions/matrix/src/matrix/actions/summary.ts +0 -1
- package/extensions/matrix/src/matrix/client/config.ts +1 -2
- package/extensions/matrix/src/matrix/client/create-client.ts +2 -4
- package/extensions/matrix/src/matrix/client/shared.ts +3 -4
- package/extensions/matrix/src/matrix/client/storage.ts +1 -2
- package/extensions/matrix/src/matrix/client.test.ts +0 -1
- package/extensions/matrix/src/matrix/credentials.ts +0 -1
- package/extensions/matrix/src/matrix/deps.ts +2 -3
- package/extensions/matrix/src/matrix/format.test.ts +0 -1
- package/extensions/matrix/src/matrix/monitor/auto-join.ts +1 -2
- package/extensions/matrix/src/matrix/monitor/events.ts +0 -1
- package/extensions/matrix/src/matrix/monitor/handler.ts +2 -3
- package/extensions/matrix/src/matrix/monitor/index.ts +2 -3
- package/extensions/matrix/src/matrix/monitor/location.ts +0 -1
- package/extensions/matrix/src/matrix/monitor/media.test.ts +1 -2
- package/extensions/matrix/src/matrix/monitor/media.ts +0 -1
- package/extensions/matrix/src/matrix/monitor/replies.ts +1 -2
- package/extensions/matrix/src/matrix/monitor/rooms.ts +1 -1
- package/extensions/matrix/src/matrix/poll-types.test.ts +0 -1
- package/extensions/matrix/src/matrix/send/client.ts +1 -2
- package/extensions/matrix/src/matrix/send/formatting.ts +1 -1
- package/extensions/matrix/src/matrix/send/media.ts +1 -2
- package/extensions/matrix/src/matrix/send/targets.test.ts +1 -2
- package/extensions/matrix/src/matrix/send/targets.ts +0 -1
- package/extensions/matrix/src/matrix/send.test.ts +1 -2
- package/extensions/matrix/src/matrix/send.ts +0 -1
- package/extensions/matrix/src/onboarding.ts +1 -1
- package/extensions/matrix/src/outbound.ts +1 -2
- package/extensions/matrix/src/resolve-targets.ts +0 -1
- package/extensions/matrix/src/tool-actions.ts +7 -8
- package/extensions/mattermost/index.ts +0 -1
- package/extensions/mattermost/node_modules/.bin/moltbot +21 -0
- package/extensions/mattermost/node_modules/.bin/moltbot.CMD +12 -0
- package/extensions/mattermost/node_modules/.bin/moltbot.ps1 +41 -0
- package/extensions/mattermost/node_modules/.bin/openclaw +21 -0
- package/extensions/mattermost/node_modules/.bin/openclaw.CMD +12 -0
- package/extensions/mattermost/node_modules/.bin/openclaw.ps1 +41 -0
- package/extensions/mattermost/node_modules/.bin/pigbot +21 -0
- package/extensions/mattermost/node_modules/.bin/pigbot.CMD +12 -0
- package/extensions/mattermost/node_modules/.bin/pigbot.ps1 +41 -0
- package/extensions/mattermost/package.json +1 -1
- package/extensions/mattermost/src/channel.test.ts +0 -1
- package/extensions/mattermost/src/channel.ts +2 -3
- package/extensions/mattermost/src/config-schema.ts +1 -2
- package/extensions/mattermost/src/group-mentions.ts +0 -1
- package/extensions/mattermost/src/mattermost/accounts.ts +0 -1
- package/extensions/mattermost/src/mattermost/monitor-helpers.ts +2 -4
- package/extensions/mattermost/src/mattermost/monitor.ts +1 -3
- package/extensions/mattermost/src/onboarding.ts +0 -1
- package/extensions/memory-core/node_modules/.bin/moltbot +21 -0
- package/extensions/memory-core/node_modules/.bin/moltbot.CMD +12 -0
- package/extensions/memory-core/node_modules/.bin/moltbot.ps1 +41 -0
- package/extensions/memory-core/node_modules/.bin/openclaw +21 -0
- package/extensions/memory-core/node_modules/.bin/openclaw.CMD +12 -0
- package/extensions/memory-core/node_modules/.bin/openclaw.ps1 +41 -0
- package/extensions/memory-core/node_modules/.bin/pigbot +21 -0
- package/extensions/memory-core/node_modules/.bin/pigbot.CMD +12 -0
- package/extensions/memory-core/node_modules/.bin/pigbot.ps1 +41 -0
- package/extensions/memory-core/package.json +1 -1
- package/extensions/memory-lancedb/index.test.ts +11 -2
- package/extensions/memory-lancedb/index.ts +3 -4
- package/extensions/memory-lancedb/node_modules/.bin/moltbot +21 -0
- package/extensions/memory-lancedb/node_modules/.bin/moltbot.CMD +12 -0
- package/extensions/memory-lancedb/node_modules/.bin/moltbot.ps1 +41 -0
- package/extensions/memory-lancedb/node_modules/.bin/openai +2 -2
- package/extensions/memory-lancedb/node_modules/.bin/openai.CMD +2 -2
- package/extensions/memory-lancedb/node_modules/.bin/openai.ps1 +2 -2
- package/extensions/memory-lancedb/node_modules/.bin/openclaw +21 -0
- package/extensions/memory-lancedb/node_modules/.bin/openclaw.CMD +12 -0
- package/extensions/memory-lancedb/node_modules/.bin/openclaw.ps1 +41 -0
- package/extensions/memory-lancedb/node_modules/.bin/pigbot +21 -0
- package/extensions/memory-lancedb/node_modules/.bin/pigbot.CMD +12 -0
- package/extensions/memory-lancedb/node_modules/.bin/pigbot.ps1 +41 -0
- package/extensions/memory-lancedb/package.json +1 -1
- package/extensions/minimax-portal-auth/index.ts +1 -2
- package/extensions/minimax-portal-auth/node_modules/.bin/moltbot +21 -0
- package/extensions/minimax-portal-auth/node_modules/.bin/moltbot.CMD +12 -0
- package/extensions/minimax-portal-auth/node_modules/.bin/moltbot.ps1 +41 -0
- package/extensions/minimax-portal-auth/node_modules/.bin/openclaw +21 -0
- package/extensions/minimax-portal-auth/node_modules/.bin/openclaw.CMD +12 -0
- package/extensions/minimax-portal-auth/node_modules/.bin/openclaw.ps1 +41 -0
- package/extensions/minimax-portal-auth/node_modules/.bin/pigbot +21 -0
- package/extensions/minimax-portal-auth/node_modules/.bin/pigbot.CMD +12 -0
- package/extensions/minimax-portal-auth/node_modules/.bin/pigbot.ps1 +41 -0
- package/extensions/minimax-portal-auth/oauth.ts +1 -1
- package/extensions/minimax-portal-auth/package.json +1 -1
- package/extensions/msteams/CHANGELOG.md +12 -0
- package/extensions/msteams/index.ts +0 -1
- package/extensions/msteams/node_modules/.bin/moltbot +21 -0
- package/extensions/msteams/node_modules/.bin/moltbot.CMD +12 -0
- package/extensions/msteams/node_modules/.bin/moltbot.ps1 +41 -0
- package/extensions/msteams/node_modules/.bin/openclaw +21 -0
- package/extensions/msteams/node_modules/.bin/openclaw.CMD +12 -0
- package/extensions/msteams/node_modules/.bin/openclaw.ps1 +41 -0
- package/extensions/msteams/node_modules/.bin/pigbot +21 -0
- package/extensions/msteams/node_modules/.bin/pigbot.CMD +12 -0
- package/extensions/msteams/node_modules/.bin/pigbot.ps1 +41 -0
- package/extensions/msteams/package.json +1 -1
- package/extensions/msteams/src/attachments/download.ts +50 -5
- package/extensions/msteams/src/attachments/graph.ts +8 -6
- package/extensions/msteams/src/attachments/html.ts +1 -1
- package/extensions/msteams/src/attachments/shared.ts +20 -0
- package/extensions/msteams/src/attachments.test.ts +37 -2
- package/extensions/msteams/src/channel.directory.test.ts +1 -3
- package/extensions/msteams/src/channel.ts +2 -3
- package/extensions/msteams/src/conversation-store-fs.test.ts +1 -3
- package/extensions/msteams/src/directory-live.ts +0 -1
- package/extensions/msteams/src/errors.test.ts +0 -1
- package/extensions/msteams/src/inbound.test.ts +0 -1
- package/extensions/msteams/src/media-helpers.test.ts +0 -1
- package/extensions/msteams/src/media-helpers.ts +0 -1
- package/extensions/msteams/src/messenger.test.ts +1 -2
- package/extensions/msteams/src/monitor-handler/inbound-media.ts +4 -1
- package/extensions/msteams/src/monitor-handler/message-handler.ts +5 -5
- package/extensions/msteams/src/monitor-handler.ts +3 -3
- package/extensions/msteams/src/monitor.ts +2 -2
- package/extensions/msteams/src/onboarding.ts +1 -2
- package/extensions/msteams/src/outbound.ts +0 -1
- package/extensions/msteams/src/policy.test.ts +1 -2
- package/extensions/msteams/src/polls-store.test.ts +1 -3
- package/extensions/msteams/src/polls.test.ts +1 -3
- package/extensions/msteams/src/polls.ts +0 -1
- package/extensions/msteams/src/probe.test.ts +1 -2
- package/extensions/msteams/src/reply-dispatcher.ts +2 -2
- package/extensions/msteams/src/send-context.ts +1 -1
- package/extensions/msteams/src/send.ts +1 -1
- package/extensions/msteams/src/sent-message-cache.test.ts +0 -1
- package/extensions/msteams/src/storage.ts +0 -1
- package/extensions/msteams/src/store-fs.ts +0 -1
- package/extensions/nextcloud-talk/index.ts +0 -1
- package/extensions/nextcloud-talk/node_modules/.bin/moltbot +21 -0
- package/extensions/nextcloud-talk/node_modules/.bin/moltbot.CMD +12 -0
- package/extensions/nextcloud-talk/node_modules/.bin/moltbot.ps1 +41 -0
- package/extensions/nextcloud-talk/node_modules/.bin/openclaw +21 -0
- package/extensions/nextcloud-talk/node_modules/.bin/openclaw.CMD +12 -0
- package/extensions/nextcloud-talk/node_modules/.bin/openclaw.ps1 +41 -0
- package/extensions/nextcloud-talk/node_modules/.bin/pigbot +21 -0
- package/extensions/nextcloud-talk/node_modules/.bin/pigbot.CMD +12 -0
- package/extensions/nextcloud-talk/node_modules/.bin/pigbot.ps1 +41 -0
- package/extensions/nextcloud-talk/package.json +1 -1
- package/extensions/nextcloud-talk/src/accounts.ts +0 -2
- package/extensions/nextcloud-talk/src/channel.ts +2 -3
- package/extensions/nextcloud-talk/src/inbound.ts +2 -3
- package/extensions/nextcloud-talk/src/monitor.ts +5 -7
- package/extensions/nextcloud-talk/src/onboarding.ts +1 -2
- package/extensions/nextcloud-talk/src/policy.ts +0 -1
- package/extensions/nextcloud-talk/src/room-info.ts +1 -3
- package/extensions/nextcloud-talk/src/send.ts +1 -1
- package/extensions/nextcloud-talk/src/signature.ts +0 -1
- package/extensions/nostr/CHANGELOG.md +12 -0
- package/extensions/nostr/index.ts +2 -3
- package/extensions/nostr/node_modules/.bin/moltbot +21 -0
- package/extensions/nostr/node_modules/.bin/moltbot.CMD +12 -0
- package/extensions/nostr/node_modules/.bin/moltbot.ps1 +41 -0
- package/extensions/nostr/node_modules/.bin/openclaw +21 -0
- package/extensions/nostr/node_modules/.bin/openclaw.CMD +12 -0
- package/extensions/nostr/node_modules/.bin/openclaw.ps1 +41 -0
- package/extensions/nostr/node_modules/.bin/pigbot +21 -0
- package/extensions/nostr/node_modules/.bin/pigbot.CMD +12 -0
- package/extensions/nostr/node_modules/.bin/pigbot.ps1 +41 -0
- package/extensions/nostr/package.json +2 -2
- package/extensions/nostr/src/channel.ts +4 -5
- package/extensions/nostr/src/nostr-bus.fuzz.test.ts +1 -1
- package/extensions/nostr/src/nostr-bus.integration.test.ts +1 -1
- package/extensions/nostr/src/nostr-bus.ts +9 -10
- package/extensions/nostr/src/nostr-profile-http.test.ts +1 -2
- package/extensions/nostr/src/nostr-profile-http.ts +1 -2
- package/extensions/nostr/src/nostr-profile-import.test.ts +1 -2
- package/extensions/nostr/src/nostr-profile-import.ts +1 -2
- package/extensions/nostr/src/nostr-profile.fuzz.test.ts +1 -1
- package/extensions/nostr/src/nostr-profile.test.ts +2 -2
- package/extensions/nostr/src/nostr-state-store.test.ts +1 -3
- package/extensions/nostr/src/nostr-state-store.ts +0 -1
- package/extensions/nostr/src/types.ts +1 -1
- package/extensions/open-prose/node_modules/.bin/moltbot +21 -0
- package/extensions/open-prose/node_modules/.bin/moltbot.CMD +12 -0
- package/extensions/open-prose/node_modules/.bin/moltbot.ps1 +41 -0
- package/extensions/open-prose/node_modules/.bin/openclaw +21 -0
- package/extensions/open-prose/node_modules/.bin/openclaw.CMD +12 -0
- package/extensions/open-prose/node_modules/.bin/openclaw.ps1 +41 -0
- package/extensions/open-prose/node_modules/.bin/pigbot +21 -0
- package/extensions/open-prose/node_modules/.bin/pigbot.CMD +12 -0
- package/extensions/open-prose/node_modules/.bin/pigbot.ps1 +41 -0
- package/extensions/open-prose/package.json +1 -1
- package/extensions/qwen-portal-auth/index.ts +0 -1
- package/extensions/signal/index.ts +0 -1
- package/extensions/signal/node_modules/.bin/moltbot +21 -0
- package/extensions/signal/node_modules/.bin/moltbot.CMD +12 -0
- package/extensions/signal/node_modules/.bin/moltbot.ps1 +41 -0
- package/extensions/signal/node_modules/.bin/openclaw +21 -0
- package/extensions/signal/node_modules/.bin/openclaw.CMD +12 -0
- package/extensions/signal/node_modules/.bin/openclaw.ps1 +41 -0
- package/extensions/signal/node_modules/.bin/pigbot +21 -0
- package/extensions/signal/node_modules/.bin/pigbot.CMD +12 -0
- package/extensions/signal/node_modules/.bin/pigbot.ps1 +41 -0
- package/extensions/signal/package.json +1 -1
- package/extensions/signal/src/channel.ts +0 -1
- package/extensions/slack/index.ts +0 -1
- package/extensions/slack/node_modules/.bin/moltbot +21 -0
- package/extensions/slack/node_modules/.bin/moltbot.CMD +12 -0
- package/extensions/slack/node_modules/.bin/moltbot.ps1 +41 -0
- package/extensions/slack/node_modules/.bin/openclaw +21 -0
- package/extensions/slack/node_modules/.bin/openclaw.CMD +12 -0
- package/extensions/slack/node_modules/.bin/openclaw.ps1 +41 -0
- package/extensions/slack/node_modules/.bin/pigbot +21 -0
- package/extensions/slack/node_modules/.bin/pigbot.CMD +12 -0
- package/extensions/slack/node_modules/.bin/pigbot.ps1 +41 -0
- package/extensions/slack/package.json +1 -1
- package/extensions/slack/src/channel.ts +0 -1
- package/extensions/telegram/index.ts +0 -1
- package/extensions/telegram/node_modules/.bin/moltbot +21 -0
- package/extensions/telegram/node_modules/.bin/moltbot.CMD +12 -0
- package/extensions/telegram/node_modules/.bin/moltbot.ps1 +41 -0
- package/extensions/telegram/node_modules/.bin/openclaw +21 -0
- package/extensions/telegram/node_modules/.bin/openclaw.CMD +12 -0
- package/extensions/telegram/node_modules/.bin/openclaw.ps1 +41 -0
- package/extensions/telegram/node_modules/.bin/pigbot +21 -0
- package/extensions/telegram/node_modules/.bin/pigbot.CMD +12 -0
- package/extensions/telegram/node_modules/.bin/pigbot.ps1 +41 -0
- package/extensions/telegram/package.json +1 -1
- package/extensions/telegram/src/channel.ts +0 -1
- package/extensions/tlon/index.ts +0 -1
- package/extensions/tlon/node_modules/.bin/moltbot +21 -0
- package/extensions/tlon/node_modules/.bin/moltbot.CMD +12 -0
- package/extensions/tlon/node_modules/.bin/moltbot.ps1 +41 -0
- package/extensions/tlon/node_modules/.bin/openclaw +21 -0
- package/extensions/tlon/node_modules/.bin/openclaw.CMD +12 -0
- package/extensions/tlon/node_modules/.bin/openclaw.ps1 +41 -0
- package/extensions/tlon/node_modules/.bin/pigbot +21 -0
- package/extensions/tlon/node_modules/.bin/pigbot.CMD +12 -0
- package/extensions/tlon/node_modules/.bin/pigbot.ps1 +41 -0
- package/extensions/tlon/package.json +1 -1
- package/extensions/tlon/src/channel.ts +5 -6
- package/extensions/tlon/src/config-schema.test.ts +0 -1
- package/extensions/tlon/src/config-schema.ts +1 -1
- package/extensions/tlon/src/monitor/discovery.ts +4 -3
- package/extensions/tlon/src/monitor/history.ts +3 -2
- package/extensions/tlon/src/monitor/index.ts +16 -16
- package/extensions/tlon/src/monitor/processed-messages.test.ts +0 -1
- package/extensions/tlon/src/monitor/utils.ts +33 -27
- package/extensions/tlon/src/onboarding.ts +2 -3
- package/extensions/tlon/src/urbit/sse-client.test.ts +0 -1
- package/extensions/tlon/src/urbit/sse-client.ts +16 -0
- package/extensions/twitch/CHANGELOG.md +12 -0
- package/extensions/twitch/index.ts +1 -1
- package/extensions/twitch/node_modules/.bin/moltbot +21 -0
- package/extensions/twitch/node_modules/.bin/moltbot.CMD +12 -0
- package/extensions/twitch/node_modules/.bin/moltbot.ps1 +41 -0
- package/extensions/twitch/node_modules/.bin/openclaw +21 -0
- package/extensions/twitch/node_modules/.bin/openclaw.CMD +12 -0
- package/extensions/twitch/node_modules/.bin/openclaw.ps1 +41 -0
- package/extensions/twitch/node_modules/.bin/pigbot +21 -0
- package/extensions/twitch/node_modules/.bin/pigbot.CMD +12 -0
- package/extensions/twitch/node_modules/.bin/pigbot.ps1 +41 -0
- package/extensions/twitch/package.json +1 -1
- package/extensions/twitch/src/access-control.test.ts +9 -9
- package/extensions/twitch/src/access-control.ts +8 -4
- package/extensions/twitch/src/actions.ts +1 -1
- package/extensions/twitch/src/client-manager-registry.ts +1 -1
- package/extensions/twitch/src/config.test.ts +0 -1
- package/extensions/twitch/src/monitor.ts +1 -1
- package/extensions/twitch/src/onboarding.test.ts +1 -1
- package/extensions/twitch/src/onboarding.ts +2 -2
- package/extensions/twitch/src/outbound.test.ts +1 -1
- package/extensions/twitch/src/outbound.ts +2 -4
- package/extensions/twitch/src/plugin.test.ts +1 -1
- package/extensions/twitch/src/plugin.ts +11 -11
- package/extensions/twitch/src/probe.test.ts +1 -1
- package/extensions/twitch/src/send.test.ts +1 -1
- package/extensions/twitch/src/send.ts +2 -2
- package/extensions/twitch/src/status.test.ts +1 -1
- package/extensions/twitch/src/status.ts +1 -1
- package/extensions/twitch/src/token.test.ts +1 -1
- package/extensions/twitch/src/twitch-client.test.ts +10 -1
- package/extensions/twitch/src/twitch-client.ts +7 -7
- package/extensions/twitch/src/types.ts +9 -9
- package/extensions/voice-call/CHANGELOG.md +12 -0
- package/extensions/voice-call/index.ts +1 -1
- package/extensions/voice-call/node_modules/.bin/moltbot +21 -0
- package/extensions/voice-call/node_modules/.bin/moltbot.CMD +12 -0
- package/extensions/voice-call/node_modules/.bin/moltbot.ps1 +41 -0
- package/extensions/voice-call/node_modules/.bin/openclaw +21 -0
- package/extensions/voice-call/node_modules/.bin/openclaw.CMD +12 -0
- package/extensions/voice-call/node_modules/.bin/openclaw.ps1 +41 -0
- package/extensions/voice-call/node_modules/.bin/pigbot +21 -0
- package/extensions/voice-call/node_modules/.bin/pigbot.CMD +12 -0
- package/extensions/voice-call/node_modules/.bin/pigbot.ps1 +41 -0
- package/extensions/voice-call/package.json +1 -1
- package/extensions/voice-call/src/cli.ts +1 -3
- package/extensions/voice-call/src/config.test.ts +0 -1
- package/extensions/voice-call/src/core-bridge.ts +0 -1
- package/extensions/voice-call/src/manager/context.ts +1 -1
- package/extensions/voice-call/src/manager/events.ts +1 -2
- package/extensions/voice-call/src/manager/outbound.ts +3 -4
- package/extensions/voice-call/src/manager/store.ts +0 -1
- package/extensions/voice-call/src/manager/timers.ts +1 -1
- package/extensions/voice-call/src/manager.test.ts +3 -5
- package/extensions/voice-call/src/manager.ts +1 -2
- package/extensions/voice-call/src/media-stream.test.ts +0 -1
- package/extensions/voice-call/src/media-stream.ts +0 -2
- package/extensions/voice-call/src/providers/mock.ts +0 -1
- package/extensions/voice-call/src/providers/plivo.test.ts +0 -1
- package/extensions/voice-call/src/providers/plivo.ts +1 -2
- package/extensions/voice-call/src/providers/telnyx.ts +0 -1
- package/extensions/voice-call/src/providers/twilio/webhook.ts +1 -2
- package/extensions/voice-call/src/providers/twilio.test.ts +0 -1
- package/extensions/voice-call/src/providers/twilio.ts +3 -4
- package/extensions/voice-call/src/response-generator.ts +1 -3
- package/extensions/voice-call/src/runtime.ts +3 -3
- package/extensions/voice-call/src/telephony-tts.ts +1 -1
- package/extensions/voice-call/src/tunnel.ts +0 -1
- package/extensions/voice-call/src/types.ts +0 -1
- package/extensions/voice-call/src/webhook-security.test.ts +0 -2
- package/extensions/voice-call/src/webhook-security.ts +0 -1
- package/extensions/voice-call/src/webhook.ts +2 -3
- package/extensions/whatsapp/index.ts +0 -1
- package/extensions/whatsapp/node_modules/.bin/moltbot +21 -0
- package/extensions/whatsapp/node_modules/.bin/moltbot.CMD +12 -0
- package/extensions/whatsapp/node_modules/.bin/moltbot.ps1 +41 -0
- package/extensions/whatsapp/node_modules/.bin/openclaw +21 -0
- package/extensions/whatsapp/node_modules/.bin/openclaw.CMD +12 -0
- package/extensions/whatsapp/node_modules/.bin/openclaw.ps1 +41 -0
- package/extensions/whatsapp/node_modules/.bin/pigbot +21 -0
- package/extensions/whatsapp/node_modules/.bin/pigbot.CMD +12 -0
- package/extensions/whatsapp/node_modules/.bin/pigbot.ps1 +41 -0
- package/extensions/whatsapp/package.json +1 -1
- package/extensions/whatsapp/src/channel.ts +0 -1
- package/extensions/zalo/CHANGELOG.md +12 -0
- package/extensions/zalo/index.ts +0 -1
- package/extensions/zalo/node_modules/.bin/moltbot +21 -0
- package/extensions/zalo/node_modules/.bin/moltbot.CMD +12 -0
- package/extensions/zalo/node_modules/.bin/moltbot.ps1 +41 -0
- package/extensions/zalo/node_modules/.bin/openclaw +21 -0
- package/extensions/zalo/node_modules/.bin/openclaw.CMD +12 -0
- package/extensions/zalo/node_modules/.bin/openclaw.ps1 +41 -0
- package/extensions/zalo/node_modules/.bin/pigbot +21 -0
- package/extensions/zalo/node_modules/.bin/pigbot.CMD +12 -0
- package/extensions/zalo/node_modules/.bin/pigbot.ps1 +41 -0
- package/extensions/zalo/package.json +2 -2
- package/extensions/zalo/src/accounts.ts +0 -1
- package/extensions/zalo/src/actions.ts +0 -1
- package/extensions/zalo/src/channel.directory.test.ts +1 -3
- package/extensions/zalo/src/channel.ts +1 -2
- package/extensions/zalo/src/monitor.ts +0 -2
- package/extensions/zalo/src/monitor.webhook.test.ts +2 -4
- package/extensions/zalo/src/onboarding.ts +0 -1
- package/extensions/zalo/src/proxy.ts +1 -2
- package/extensions/zalo/src/send.ts +1 -2
- package/extensions/zalo/src/token.ts +0 -2
- package/extensions/zalouser/CHANGELOG.md +12 -0
- package/extensions/zalouser/index.ts +1 -2
- package/extensions/zalouser/node_modules/.bin/moltbot +21 -0
- package/extensions/zalouser/node_modules/.bin/moltbot.CMD +12 -0
- package/extensions/zalouser/node_modules/.bin/moltbot.ps1 +41 -0
- package/extensions/zalouser/node_modules/.bin/openclaw +21 -0
- package/extensions/zalouser/node_modules/.bin/openclaw.CMD +12 -0
- package/extensions/zalouser/node_modules/.bin/openclaw.ps1 +41 -0
- package/extensions/zalouser/node_modules/.bin/pigbot +21 -0
- package/extensions/zalouser/node_modules/.bin/pigbot.CMD +12 -0
- package/extensions/zalouser/node_modules/.bin/pigbot.ps1 +41 -0
- package/extensions/zalouser/package.json +1 -1
- package/extensions/zalouser/src/accounts.ts +1 -2
- package/extensions/zalouser/src/channel.test.ts +0 -1
- package/extensions/zalouser/src/channel.ts +4 -4
- package/extensions/zalouser/src/monitor.ts +1 -2
- package/extensions/zalouser/src/onboarding.ts +1 -2
- package/extensions/zalouser/src/probe.ts +1 -1
- package/extensions/zalouser/src/status-issues.test.ts +0 -1
- package/extensions/zalouser/src/tool.ts +0 -1
- package/extensions/zalouser/src/zca.ts +0 -1
- package/package.json +83 -55
- package/scripts/format-staged.js +1 -1
- package/scripts/postinstall.js +1 -1
- package/scripts/setup-git-hooks.js +1 -1
- package/skills/canvas/SKILL.md +9 -9
- package/skills/healthcheck/SKILL.md +231 -0
- package/skills/session-logs/SKILL.md +1 -1
- package/dist/control-ui/assets/index-BKPyesll.css +0 -1
- package/dist/control-ui/assets/index-CknqRMzC.js +0 -3898
- package/dist/control-ui/assets/index-CknqRMzC.js.map +0 -1
- package/dist/telegram/pairing-store.d.ts +0 -43
- package/dist/telegram/pairing-store.js +0 -78
- package/extensions/bluebubbles/node_modules/.bin/claw +0 -21
- package/extensions/bluebubbles/node_modules/.bin/claw.CMD +0 -12
- package/extensions/copilot-proxy/node_modules/.bin/claw +0 -21
- package/extensions/copilot-proxy/node_modules/.bin/claw.CMD +0 -12
- package/extensions/diagnostics-otel/node_modules/.bin/claw +0 -21
- package/extensions/diagnostics-otel/node_modules/.bin/claw.CMD +0 -12
- package/extensions/discord/node_modules/.bin/claw +0 -21
- package/extensions/discord/node_modules/.bin/claw.CMD +0 -12
- package/extensions/google-antigravity-auth/node_modules/.bin/claw +0 -21
- package/extensions/google-antigravity-auth/node_modules/.bin/claw.CMD +0 -12
- package/extensions/google-antigravity-auth/node_modules/.bin/claw.ps1 +0 -41
- package/extensions/google-gemini-cli-auth/node_modules/.bin/claw +0 -21
- package/extensions/google-gemini-cli-auth/node_modules/.bin/claw.CMD +0 -12
- package/extensions/google-gemini-cli-auth/node_modules/.bin/claw.ps1 +0 -41
- package/extensions/googlechat/node_modules/.bin/claw +0 -21
- package/extensions/googlechat/node_modules/.bin/claw.CMD +0 -12
- package/extensions/googlechat/node_modules/.bin/claw.ps1 +0 -41
- package/extensions/imessage/node_modules/.bin/claw +0 -21
- package/extensions/imessage/node_modules/.bin/claw.CMD +0 -12
- package/extensions/imessage/node_modules/.bin/claw.ps1 +0 -41
- package/extensions/line/node_modules/.bin/claw +0 -21
- package/extensions/line/node_modules/.bin/claw.CMD +0 -12
- package/extensions/line/node_modules/.bin/claw.ps1 +0 -41
- package/extensions/llm-task/node_modules/.bin/claw +0 -21
- package/extensions/llm-task/node_modules/.bin/claw.CMD +0 -12
- package/extensions/llm-task/node_modules/.bin/claw.ps1 +0 -41
- package/extensions/lobster/node_modules/.bin/claw +0 -21
- package/extensions/lobster/node_modules/.bin/claw.CMD +0 -12
- package/extensions/lobster/node_modules/.bin/claw.ps1 +0 -41
- package/extensions/matrix/node_modules/.bin/claw +0 -21
- package/extensions/matrix/node_modules/.bin/claw.CMD +0 -12
- package/extensions/matrix/node_modules/.bin/claw.ps1 +0 -41
- package/extensions/mattermost/node_modules/.bin/claw +0 -21
- package/extensions/mattermost/node_modules/.bin/claw.CMD +0 -12
- package/extensions/mattermost/node_modules/.bin/claw.ps1 +0 -41
- package/extensions/memory-core/node_modules/.bin/claw +0 -21
- package/extensions/memory-core/node_modules/.bin/claw.CMD +0 -12
- package/extensions/memory-core/node_modules/.bin/claw.ps1 +0 -41
- package/extensions/memory-lancedb/node_modules/.bin/claw +0 -21
- package/extensions/memory-lancedb/node_modules/.bin/claw.CMD +0 -12
- package/extensions/memory-lancedb/node_modules/.bin/claw.ps1 +0 -41
- package/extensions/minimax-portal-auth/node_modules/.bin/claw +0 -21
- package/extensions/minimax-portal-auth/node_modules/.bin/claw.CMD +0 -12
- package/extensions/minimax-portal-auth/node_modules/.bin/claw.ps1 +0 -41
- package/extensions/msteams/node_modules/.bin/claw +0 -21
- package/extensions/msteams/node_modules/.bin/claw.CMD +0 -12
- package/extensions/msteams/node_modules/.bin/claw.ps1 +0 -41
- package/extensions/nextcloud-talk/node_modules/.bin/claw +0 -21
- package/extensions/nextcloud-talk/node_modules/.bin/claw.CMD +0 -12
- package/extensions/nextcloud-talk/node_modules/.bin/claw.ps1 +0 -41
- package/extensions/nostr/node_modules/.bin/claw +0 -21
- package/extensions/nostr/node_modules/.bin/claw.CMD +0 -12
- package/extensions/nostr/node_modules/.bin/claw.ps1 +0 -41
- package/extensions/open-prose/node_modules/.bin/claw +0 -21
- package/extensions/open-prose/node_modules/.bin/claw.CMD +0 -12
- package/extensions/open-prose/node_modules/.bin/claw.ps1 +0 -41
- package/extensions/signal/node_modules/.bin/claw +0 -21
- package/extensions/signal/node_modules/.bin/claw.CMD +0 -12
- package/extensions/signal/node_modules/.bin/claw.ps1 +0 -41
- package/extensions/slack/node_modules/.bin/claw +0 -21
- package/extensions/slack/node_modules/.bin/claw.CMD +0 -12
- package/extensions/slack/node_modules/.bin/claw.ps1 +0 -41
- package/extensions/telegram/node_modules/.bin/claw +0 -21
- package/extensions/telegram/node_modules/.bin/claw.CMD +0 -12
- package/extensions/telegram/node_modules/.bin/claw.ps1 +0 -41
- package/extensions/tlon/node_modules/.bin/claw +0 -21
- package/extensions/tlon/node_modules/.bin/claw.CMD +0 -12
- package/extensions/tlon/node_modules/.bin/claw.ps1 +0 -41
- package/extensions/twitch/node_modules/.bin/claw +0 -21
- package/extensions/twitch/node_modules/.bin/claw.CMD +0 -12
- package/extensions/twitch/node_modules/.bin/claw.ps1 +0 -41
- package/extensions/voice-call/node_modules/.bin/claw +0 -21
- package/extensions/voice-call/node_modules/.bin/claw.CMD +0 -12
- package/extensions/voice-call/node_modules/.bin/claw.ps1 +0 -41
- package/extensions/whatsapp/node_modules/.bin/claw +0 -21
- package/extensions/whatsapp/node_modules/.bin/claw.CMD +0 -12
- package/extensions/whatsapp/node_modules/.bin/claw.ps1 +0 -41
- package/extensions/zalo/node_modules/.bin/claw +0 -21
- package/extensions/zalo/node_modules/.bin/claw.CMD +0 -12
- package/extensions/zalo/node_modules/.bin/claw.ps1 +0 -41
- package/extensions/zalouser/node_modules/.bin/claw +0 -21
- package/extensions/zalouser/node_modules/.bin/claw.CMD +0 -12
- package/extensions/zalouser/node_modules/.bin/claw.ps1 +0 -41
|
@@ -0,0 +1,410 @@
|
|
|
1
|
+
---
|
|
2
|
+
read_when:
|
|
3
|
+
- 处理 WhatsApp/网页渠道行为或收件箱路由时
|
|
4
|
+
summary: WhatsApp(网页渠道)集成:登录、收件箱、回复、媒体和运维
|
|
5
|
+
title: WhatsApp
|
|
6
|
+
x-i18n:
|
|
7
|
+
generated_at: "2026-02-01T20:00:02Z"
|
|
8
|
+
model: claude-opus-4-5
|
|
9
|
+
provider: pi
|
|
10
|
+
source_hash: 44fd88f8e269284999e5a5a52b230edae6e6f978528dd298d6a5603d03c0c38d
|
|
11
|
+
source_path: channels/whatsapp.md
|
|
12
|
+
workflow: 14
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
# WhatsApp(网页渠道)
|
|
16
|
+
|
|
17
|
+
状态:仅支持通过 Baileys 的 WhatsApp Web。Gateway网关拥有会话。
|
|
18
|
+
|
|
19
|
+
## 快速设置(入门)
|
|
20
|
+
|
|
21
|
+
1. 如果可能,使用**单独的手机号码**(推荐)。
|
|
22
|
+
2. 在 `~/.openclaw/openclaw.json` 中配置 WhatsApp。
|
|
23
|
+
3. 运行 `openclaw channels login` 扫描二维码(已关联设备)。
|
|
24
|
+
4. 启动 Gateway网关。
|
|
25
|
+
|
|
26
|
+
最小配置:
|
|
27
|
+
|
|
28
|
+
```json5
|
|
29
|
+
{
|
|
30
|
+
channels: {
|
|
31
|
+
whatsapp: {
|
|
32
|
+
dmPolicy: "allowlist",
|
|
33
|
+
allowFrom: ["+15551234567"],
|
|
34
|
+
},
|
|
35
|
+
},
|
|
36
|
+
}
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
## 目标
|
|
40
|
+
|
|
41
|
+
- 单个 Gateway网关进程中支持多个 WhatsApp 账号(多账号)。
|
|
42
|
+
- 确定性路由:回复返回到 WhatsApp,无模型路由。
|
|
43
|
+
- 模型获得足够的上下文以理解引用回复。
|
|
44
|
+
|
|
45
|
+
## 配置写入
|
|
46
|
+
|
|
47
|
+
默认情况下,WhatsApp 允许通过 `/config set|unset` 触发配置更新写入(需要 `commands.config: true`)。
|
|
48
|
+
|
|
49
|
+
禁用方式:
|
|
50
|
+
|
|
51
|
+
```json5
|
|
52
|
+
{
|
|
53
|
+
channels: { whatsapp: { configWrites: false } },
|
|
54
|
+
}
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
## 架构(职责划分)
|
|
58
|
+
|
|
59
|
+
- **Gateway网关** 拥有 Baileys socket 和收件箱循环。
|
|
60
|
+
- **CLI / macOS 应用** 与 Gateway网关通信;不直接使用 Baileys。
|
|
61
|
+
- **活跃监听器** 是出站发送的必要条件;否则发送会快速失败。
|
|
62
|
+
|
|
63
|
+
## 获取手机号码(两种模式)
|
|
64
|
+
|
|
65
|
+
WhatsApp 需要真实的手机号码进行验证。VoIP 和虚拟号码通常会被屏蔽。在 WhatsApp 上运行 OpenClaw 有两种支持的方式:
|
|
66
|
+
|
|
67
|
+
### 专用号码(推荐)
|
|
68
|
+
|
|
69
|
+
为 OpenClaw 使用**单独的手机号码**。最佳用户体验,干净的路由,无自聊天问题。理想设置:**备用/旧 Android 手机 + eSIM**。保持 Wi-Fi 和充电连接,通过二维码关联。
|
|
70
|
+
|
|
71
|
+
**WhatsApp Business:** 你可以在同一设备上使用不同号码的 WhatsApp Business。非常适合将个人 WhatsApp 分开 — 安装 WhatsApp Business 并在其中注册 OpenClaw 号码。
|
|
72
|
+
|
|
73
|
+
**示例配置(专用号码,单用户允许列表):**
|
|
74
|
+
|
|
75
|
+
```json5
|
|
76
|
+
{
|
|
77
|
+
channels: {
|
|
78
|
+
whatsapp: {
|
|
79
|
+
dmPolicy: "allowlist",
|
|
80
|
+
allowFrom: ["+15551234567"],
|
|
81
|
+
},
|
|
82
|
+
},
|
|
83
|
+
}
|
|
84
|
+
```
|
|
85
|
+
|
|
86
|
+
**配对模式(可选):**
|
|
87
|
+
如果你想使用配对而非允许列表,将 `channels.whatsapp.dmPolicy` 设置为 `pairing`。未知发送者会收到配对码;通过以下命令批准:
|
|
88
|
+
`openclaw pairing approve whatsapp <code>`
|
|
89
|
+
|
|
90
|
+
### 个人号码(备选方案)
|
|
91
|
+
|
|
92
|
+
快速备选方案:在**你自己的号码**上运行 OpenClaw。给自己发消息(WhatsApp "给自己发消息")进行测试,避免打扰联系人。在设置和实验期间,需要在主手机上读取验证码。**必须启用自聊天模式。**
|
|
93
|
+
当向导询问你的个人 WhatsApp 号码时,输入你将用来发消息的手机号(所有者/发送者),而不是助手号码。
|
|
94
|
+
|
|
95
|
+
**示例配置(个人号码,自聊天):**
|
|
96
|
+
|
|
97
|
+
```json
|
|
98
|
+
{
|
|
99
|
+
"whatsapp": {
|
|
100
|
+
"selfChatMode": true,
|
|
101
|
+
"dmPolicy": "allowlist",
|
|
102
|
+
"allowFrom": ["+15551234567"]
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
```
|
|
106
|
+
|
|
107
|
+
当设置了 `messages.responsePrefix` 时,自聊天回复默认使用 `[{identity.name}]`(否则为 `[openclaw]`)。
|
|
108
|
+
如果 `messages.responsePrefix` 未设置,则使用默认值。显式设置可自定义或禁用前缀(使用 `""` 来移除)。
|
|
109
|
+
|
|
110
|
+
### 号码获取技巧
|
|
111
|
+
|
|
112
|
+
- **本国 eSIM**,来自你所在国家的移动运营商(最可靠)
|
|
113
|
+
- 奥地利:[hot.at](https://www.hot.at)
|
|
114
|
+
- 英国:[giffgaff](https://www.giffgaff.com) — 免费 SIM 卡,无合约
|
|
115
|
+
- **预付费 SIM 卡** — 便宜,只需接收一条验证短信
|
|
116
|
+
|
|
117
|
+
**避免使用:** TextNow、Google Voice、大多数"免费短信"服务 — WhatsApp 会积极屏蔽这些号码。
|
|
118
|
+
|
|
119
|
+
**提示:** 该号码只需接收一条验证短信。之后,WhatsApp Web 会话通过 `creds.json` 持久保存。
|
|
120
|
+
|
|
121
|
+
## 为什么不用 Twilio?
|
|
122
|
+
|
|
123
|
+
- 早期 OpenClaw 版本支持 Twilio 的 WhatsApp Business 集成。
|
|
124
|
+
- WhatsApp Business 号码不适合个人助手。
|
|
125
|
+
- Meta 强制执行 24 小时回复窗口;如果你在过去 24 小时内没有回复,商业号码无法发起新消息。
|
|
126
|
+
- 高频或"频繁"使用会触发激进的封禁,因为商业账号不适合发送大量个人助手消息。
|
|
127
|
+
- 结果:投递不可靠且频繁被封禁,因此已移除支持。
|
|
128
|
+
|
|
129
|
+
## 登录 + 凭证
|
|
130
|
+
|
|
131
|
+
- 登录命令:`openclaw channels login`(通过已关联设备扫描二维码)。
|
|
132
|
+
- 多账号登录:`openclaw channels login --account <id>`(`<id>` = `accountId`)。
|
|
133
|
+
- 默认账号(省略 `--account` 时):如果存在则为 `default`,否则为第一个已配置的账号 ID(排序后)。
|
|
134
|
+
- 凭证存储在 `~/.openclaw/credentials/whatsapp/<accountId>/creds.json`。
|
|
135
|
+
- 备份副本位于 `creds.json.bak`(损坏时恢复)。
|
|
136
|
+
- 旧版兼容:早期安装将 Baileys 文件直接存储在 `~/.openclaw/credentials/`。
|
|
137
|
+
- 注销:`openclaw channels logout`(或 `--account <id>`)删除 WhatsApp 认证状态(但保留共享的 `oauth.json`)。
|
|
138
|
+
- 已注销的 socket => 错误提示重新关联。
|
|
139
|
+
|
|
140
|
+
## 入站流程(私聊 + 群聊)
|
|
141
|
+
|
|
142
|
+
- WhatsApp 事件来自 `messages.upsert`(Baileys)。
|
|
143
|
+
- 收件箱监听器在关闭时解除绑定,以避免在测试/重启中累积事件处理器。
|
|
144
|
+
- 状态/广播聊天被忽略。
|
|
145
|
+
- 私聊使用 E.164 格式;群聊使用群组 JID。
|
|
146
|
+
- **私聊策略**:`channels.whatsapp.dmPolicy` 控制私聊访问(默认:`pairing`)。
|
|
147
|
+
- 配对:未知发送者会收到配对码(通过 `openclaw pairing approve whatsapp <code>` 批准;码在 1 小时后过期)。
|
|
148
|
+
- 开放:需要 `channels.whatsapp.allowFrom` 包含 `"*"`。
|
|
149
|
+
- 你关联的 WhatsApp 号码被隐式信任,因此自消息跳过 `channels.whatsapp.dmPolicy` 和 `channels.whatsapp.allowFrom` 检查。
|
|
150
|
+
|
|
151
|
+
### 个人号码模式(备选方案)
|
|
152
|
+
|
|
153
|
+
如果你在**个人 WhatsApp 号码**上运行 OpenClaw,启用 `channels.whatsapp.selfChatMode`(参见上方示例配置)。
|
|
154
|
+
|
|
155
|
+
行为:
|
|
156
|
+
|
|
157
|
+
- 出站私聊消息不会触发配对回复(防止骚扰联系人)。
|
|
158
|
+
- 入站未知发送者仍遵循 `channels.whatsapp.dmPolicy`。
|
|
159
|
+
- 自聊天模式(allowFrom 包含你的号码)避免自动已读回执并忽略提及 JID。
|
|
160
|
+
- 非自聊天私聊会发送已读回执。
|
|
161
|
+
|
|
162
|
+
## 已读回执
|
|
163
|
+
|
|
164
|
+
默认情况下,Gateway网关会在接受入站 WhatsApp 消息后将其标记为已读(蓝色对勾)。
|
|
165
|
+
|
|
166
|
+
全局禁用:
|
|
167
|
+
|
|
168
|
+
```json5
|
|
169
|
+
{
|
|
170
|
+
channels: { whatsapp: { sendReadReceipts: false } },
|
|
171
|
+
}
|
|
172
|
+
```
|
|
173
|
+
|
|
174
|
+
按账号禁用:
|
|
175
|
+
|
|
176
|
+
```json5
|
|
177
|
+
{
|
|
178
|
+
channels: {
|
|
179
|
+
whatsapp: {
|
|
180
|
+
accounts: {
|
|
181
|
+
personal: { sendReadReceipts: false },
|
|
182
|
+
},
|
|
183
|
+
},
|
|
184
|
+
},
|
|
185
|
+
}
|
|
186
|
+
```
|
|
187
|
+
|
|
188
|
+
备注:
|
|
189
|
+
|
|
190
|
+
- 自聊天模式始终跳过已读回执。
|
|
191
|
+
|
|
192
|
+
## WhatsApp 常见问题:发送消息 + 配对
|
|
193
|
+
|
|
194
|
+
**关联 WhatsApp 后,OpenClaw 会给随机联系人发消息吗?**
|
|
195
|
+
不会。默认私聊策略是**配对**,因此未知发送者只会收到配对码,其消息**不会被处理**。OpenClaw 只回复收到的聊天,或你显式触发的发送(智能体/CLI)。
|
|
196
|
+
|
|
197
|
+
**WhatsApp 上的配对是如何工作的?**
|
|
198
|
+
配对是针对未知发送者的私聊门控:
|
|
199
|
+
|
|
200
|
+
- 新发送者的首条私聊消息会返回一个短码(消息不会被处理)。
|
|
201
|
+
- 通过以下命令批准:`openclaw pairing approve whatsapp <code>`(用 `openclaw pairing list whatsapp` 列出)。
|
|
202
|
+
- 码在 1 小时后过期;每个渠道的待处理请求上限为 3 个。
|
|
203
|
+
|
|
204
|
+
**多人可以在同一个 WhatsApp 号码上使用不同的 OpenClaw 实例吗?**
|
|
205
|
+
可以,通过 `bindings` 将每个发送者路由到不同的智能体(peer `kind: "dm"`,发送者 E.164 如 `+15551234567`)。回复仍然来自**同一个 WhatsApp 账号**,且私聊会折叠到每个智能体的主会话,因此请使用**每人一个智能体**。私聊访问控制(`dmPolicy`/`allowFrom`)在每个 WhatsApp 账号级别是全局的。参见[多智能体路由](/concepts/multi-agent)。
|
|
206
|
+
|
|
207
|
+
**为什么向导要询问我的手机号码?**
|
|
208
|
+
向导使用它来设置你的**允许列表/所有者**,以便允许你自己的私聊消息。它不用于自动发送。如果你在个人 WhatsApp 号码上运行,使用相同的号码并启用 `channels.whatsapp.selfChatMode`。
|
|
209
|
+
|
|
210
|
+
## 消息标准化(模型看到的内容)
|
|
211
|
+
|
|
212
|
+
- `Body` 是当前消息正文及其信封。
|
|
213
|
+
- 引用回复上下文**始终附加**:
|
|
214
|
+
```
|
|
215
|
+
[Replying to +1555 id:ABC123]
|
|
216
|
+
<quoted text or <media:...>>
|
|
217
|
+
[/Replying]
|
|
218
|
+
```
|
|
219
|
+
- 回复元数据也会设置:
|
|
220
|
+
- `ReplyToId` = stanzaId
|
|
221
|
+
- `ReplyToBody` = 引用正文或媒体占位符
|
|
222
|
+
- `ReplyToSender` = E.164(已知时)
|
|
223
|
+
- 纯媒体入站消息使用占位符:
|
|
224
|
+
- `<media:image|video|audio|document|sticker>`
|
|
225
|
+
|
|
226
|
+
## 群聊
|
|
227
|
+
|
|
228
|
+
- 群聊映射到 `agent:<agentId>:whatsapp:group:<jid>` 会话。
|
|
229
|
+
- 群聊策略:`channels.whatsapp.groupPolicy = open|disabled|allowlist`(默认 `allowlist`)。
|
|
230
|
+
- 激活模式:
|
|
231
|
+
- `mention`(默认):需要 @提及或正则匹配。
|
|
232
|
+
- `always`:始终触发。
|
|
233
|
+
- `/activation mention|always` 仅限所有者且必须作为独立消息发送。
|
|
234
|
+
- 所有者 = `channels.whatsapp.allowFrom`(未设置时为自身 E.164)。
|
|
235
|
+
- **历史注入**(仅待处理):
|
|
236
|
+
- 最近*未处理*的消息(默认 50 条)插入在:
|
|
237
|
+
`[Chat messages since your last reply - for context]`(已在会话中的消息不会被重复注入)
|
|
238
|
+
- 当前消息位于:
|
|
239
|
+
`[Current message - respond to this]`
|
|
240
|
+
- 发送者后缀附加:`[from: Name (+E164)]`
|
|
241
|
+
- 群聊元数据缓存 5 分钟(主题 + 参与者)。
|
|
242
|
+
|
|
243
|
+
## 回复投递(线程)
|
|
244
|
+
|
|
245
|
+
- WhatsApp Web 发送标准消息(当前 Gateway网关中无引用回复线程)。
|
|
246
|
+
- 此渠道忽略回复标签。
|
|
247
|
+
|
|
248
|
+
## 确认反应(收到消息时自动反应)
|
|
249
|
+
|
|
250
|
+
WhatsApp 可以在收到消息时立即自动发送表情反应,在机器人生成回复之前。这为用户提供即时反馈,表明其消息已收到。
|
|
251
|
+
|
|
252
|
+
**配置:**
|
|
253
|
+
|
|
254
|
+
```json
|
|
255
|
+
{
|
|
256
|
+
"whatsapp": {
|
|
257
|
+
"ackReaction": {
|
|
258
|
+
"emoji": "👀",
|
|
259
|
+
"direct": true,
|
|
260
|
+
"group": "mentions"
|
|
261
|
+
}
|
|
262
|
+
}
|
|
263
|
+
}
|
|
264
|
+
```
|
|
265
|
+
|
|
266
|
+
**选项:**
|
|
267
|
+
|
|
268
|
+
- `emoji`(字符串):用于确认的表情(例如 "👀"、"✅"、"📨")。为空或省略 = 功能禁用。
|
|
269
|
+
- `direct`(布尔值,默认:`true`):在私聊/私信 中发送反应。
|
|
270
|
+
- `group`(字符串,默认:`"mentions"`):群聊行为:
|
|
271
|
+
- `"always"`:对所有群聊消息做出反应(即使没有 @提及)
|
|
272
|
+
- `"mentions"`:仅在机器人被 @提及时做出反应
|
|
273
|
+
- `"never"`:从不在群聊中做出反应
|
|
274
|
+
|
|
275
|
+
**按账号覆盖:**
|
|
276
|
+
|
|
277
|
+
```json
|
|
278
|
+
{
|
|
279
|
+
"whatsapp": {
|
|
280
|
+
"accounts": {
|
|
281
|
+
"work": {
|
|
282
|
+
"ackReaction": {
|
|
283
|
+
"emoji": "✅",
|
|
284
|
+
"direct": false,
|
|
285
|
+
"group": "always"
|
|
286
|
+
}
|
|
287
|
+
}
|
|
288
|
+
}
|
|
289
|
+
}
|
|
290
|
+
}
|
|
291
|
+
```
|
|
292
|
+
|
|
293
|
+
**行为说明:**
|
|
294
|
+
|
|
295
|
+
- 反应在收到消息时**立即**发送,在输入指示器或机器人回复之前。
|
|
296
|
+
- 在 `requireMention: false`(激活模式:always)的群组中,`group: "mentions"` 会对所有消息做出反应(不仅仅是 @提及)。
|
|
297
|
+
- 即发即忘:反应失败会被记录但不会阻止机器人回复。
|
|
298
|
+
- 群聊反应会自动包含参与者 JID。
|
|
299
|
+
- WhatsApp 忽略 `messages.ackReaction`;请改用 `channels.whatsapp.ackReaction`。
|
|
300
|
+
|
|
301
|
+
## 智能体工具(反应)
|
|
302
|
+
|
|
303
|
+
- 工具:`whatsapp`,使用 `react` 动作(`chatJid`、`messageId`、`emoji`,可选 `remove`)。
|
|
304
|
+
- 可选:`participant`(群聊发送者)、`fromMe`(对自己的消息做出反应)、`accountId`(多账号)。
|
|
305
|
+
- 反应移除语义:参见 [/tools/reactions](/tools/reactions)。
|
|
306
|
+
- 工具门控:`channels.whatsapp.actions.reactions`(默认:启用)。
|
|
307
|
+
|
|
308
|
+
## 限制
|
|
309
|
+
|
|
310
|
+
- 出站文本按 `channels.whatsapp.textChunkLimit` 分块(默认 4000)。
|
|
311
|
+
- 可选换行分块:设置 `channels.whatsapp.chunkMode="newline"` 在空行(段落边界)处分割,再进行长度分块。
|
|
312
|
+
- 入站媒体保存受 `channels.whatsapp.mediaMaxMb` 限制(默认 50 MB)。
|
|
313
|
+
- 出站媒体项受 `agents.defaults.mediaMaxMb` 限制(默认 5 MB)。
|
|
314
|
+
|
|
315
|
+
## 出站发送(文本 + 媒体)
|
|
316
|
+
|
|
317
|
+
- 使用活跃的网页监听器;如果 Gateway网关未运行则报错。
|
|
318
|
+
- 文本分块:每条消息最大 4k(可通过 `channels.whatsapp.textChunkLimit` 配置,可选 `channels.whatsapp.chunkMode`)。
|
|
319
|
+
- 媒体:
|
|
320
|
+
- 支持图片/视频/音频/文档。
|
|
321
|
+
- 音频以 PTT 发送;`audio/ogg` => `audio/ogg; codecs=opus`。
|
|
322
|
+
- 仅第一个媒体项带字幕。
|
|
323
|
+
- 媒体获取支持 HTTP(S) 和本地路径。
|
|
324
|
+
- 动态 GIF:WhatsApp 期望带 `gifPlayback: true` 的 MP4 以实现内联循环播放。
|
|
325
|
+
- CLI:`openclaw message send --media <mp4> --gif-playback`
|
|
326
|
+
- Gateway网关:`send` 参数包含 `gifPlayback: true`
|
|
327
|
+
|
|
328
|
+
## 语音消息(PTT 音频)
|
|
329
|
+
|
|
330
|
+
WhatsApp 以**语音消息**(PTT 气泡)发送音频。
|
|
331
|
+
|
|
332
|
+
- 最佳效果:OGG/Opus。OpenClaw 将 `audio/ogg` 重写为 `audio/ogg; codecs=opus`。
|
|
333
|
+
- WhatsApp 忽略 `[[audio_as_voice]]`(音频已作为语音消息发送)。
|
|
334
|
+
|
|
335
|
+
## 媒体限制 + 优化
|
|
336
|
+
|
|
337
|
+
- 默认出站上限:5 MB(每个媒体项)。
|
|
338
|
+
- 覆盖:`agents.defaults.mediaMaxMb`。
|
|
339
|
+
- 图片会自动优化为 JPEG 以控制在上限内(缩放 + 质量扫描)。
|
|
340
|
+
- 超大媒体 => 错误;媒体回复回退为文本警告。
|
|
341
|
+
|
|
342
|
+
## 心跳
|
|
343
|
+
|
|
344
|
+
- **Gateway网关心跳** 记录连接健康状态(`web.heartbeatSeconds`,默认 60 秒)。
|
|
345
|
+
- **智能体心跳** 可按智能体配置(`agents.list[].heartbeat`)或通过
|
|
346
|
+
`agents.defaults.heartbeat` 全局配置(未设置每智能体条目时的回退)。
|
|
347
|
+
- 使用配置的心跳提示(默认:`Read HEARTBEAT.md if it exists (workspace context). Follow it strictly. Do not infer or repeat old tasks from prior chats. If nothing needs attention, reply HEARTBEAT_OK.`)+ `HEARTBEAT_OK` 跳过行为。
|
|
348
|
+
- 投递默认到最后使用的渠道(或已配置的目标)。
|
|
349
|
+
|
|
350
|
+
## 重连行为
|
|
351
|
+
|
|
352
|
+
- 退避策略:`web.reconnect`:
|
|
353
|
+
- `initialMs`、`maxMs`、`factor`、`jitter`、`maxAttempts`。
|
|
354
|
+
- 如果达到 maxAttempts,网页监控停止(降级)。
|
|
355
|
+
- 已注销 => 停止并要求重新关联。
|
|
356
|
+
|
|
357
|
+
## 配置速查表
|
|
358
|
+
|
|
359
|
+
- `channels.whatsapp.dmPolicy`(私聊策略:pairing/allowlist/open/disabled)。
|
|
360
|
+
- `channels.whatsapp.selfChatMode`(同号设置;机器人使用你的个人 WhatsApp 号码)。
|
|
361
|
+
- `channels.whatsapp.allowFrom`(私聊允许列表)。WhatsApp 使用 E.164 手机号码(无用户名)。
|
|
362
|
+
- `channels.whatsapp.mediaMaxMb`(入站媒体保存上限)。
|
|
363
|
+
- `channels.whatsapp.ackReaction`(消息收到时的自动反应:`{emoji, direct, group}`)。
|
|
364
|
+
- `channels.whatsapp.accounts.<accountId>.*`(按账号设置 + 可选 `authDir`)。
|
|
365
|
+
- `channels.whatsapp.accounts.<accountId>.mediaMaxMb`(按账号入站媒体上限)。
|
|
366
|
+
- `channels.whatsapp.accounts.<accountId>.ackReaction`(按账号确认反应覆盖)。
|
|
367
|
+
- `channels.whatsapp.groupAllowFrom`(群聊发送者允许列表)。
|
|
368
|
+
- `channels.whatsapp.groupPolicy`(群聊策略)。
|
|
369
|
+
- `channels.whatsapp.historyLimit` / `channels.whatsapp.accounts.<accountId>.historyLimit`(群聊历史上下文;`0` 禁用)。
|
|
370
|
+
- `channels.whatsapp.dmHistoryLimit`(私聊历史限制,按用户轮数)。按用户覆盖:`channels.whatsapp.dms["<phone>"].historyLimit`。
|
|
371
|
+
- `channels.whatsapp.groups`(群聊允许列表 + 提及门控默认值;使用 `"*"` 允许全部)
|
|
372
|
+
- `channels.whatsapp.actions.reactions`(WhatsApp 工具反应门控)。
|
|
373
|
+
- `agents.list[].groupChat.mentionPatterns`(或 `messages.groupChat.mentionPatterns`)
|
|
374
|
+
- `messages.groupChat.historyLimit`
|
|
375
|
+
- `channels.whatsapp.messagePrefix`(入站前缀;按账号:`channels.whatsapp.accounts.<accountId>.messagePrefix`;已弃用:`messages.messagePrefix`)
|
|
376
|
+
- `messages.responsePrefix`(出站前缀)
|
|
377
|
+
- `agents.defaults.mediaMaxMb`
|
|
378
|
+
- `agents.defaults.heartbeat.every`
|
|
379
|
+
- `agents.defaults.heartbeat.model`(可选覆盖)
|
|
380
|
+
- `agents.defaults.heartbeat.target`
|
|
381
|
+
- `agents.defaults.heartbeat.to`
|
|
382
|
+
- `agents.defaults.heartbeat.session`
|
|
383
|
+
- `agents.list[].heartbeat.*`(按智能体覆盖)
|
|
384
|
+
- `session.*`(scope、idle、store、mainKey)
|
|
385
|
+
- `web.enabled`(为 false 时禁用渠道启动)
|
|
386
|
+
- `web.heartbeatSeconds`
|
|
387
|
+
- `web.reconnect.*`
|
|
388
|
+
|
|
389
|
+
## 日志 + 故障排除
|
|
390
|
+
|
|
391
|
+
- 子系统:`whatsapp/inbound`、`whatsapp/outbound`、`web-heartbeat`、`web-reconnect`。
|
|
392
|
+
- 日志文件:`/tmp/openclaw/openclaw-YYYY-MM-DD.log`(可配置)。
|
|
393
|
+
- 故障排除指南:[Gateway网关故障排除](/gateway/troubleshooting)。
|
|
394
|
+
|
|
395
|
+
## 故障排除(快速)
|
|
396
|
+
|
|
397
|
+
**未关联 / 需要二维码登录**
|
|
398
|
+
|
|
399
|
+
- 症状:`channels status` 显示 `linked: false` 或警告"未关联"。
|
|
400
|
+
- 修复:在 Gateway网关主机上运行 `openclaw channels login` 并扫描二维码(WhatsApp → 设置 → 已关联设备)。
|
|
401
|
+
|
|
402
|
+
**已关联但断开连接 / 重连循环**
|
|
403
|
+
|
|
404
|
+
- 症状:`channels status` 显示 `running, disconnected` 或警告"已关联但断开连接"。
|
|
405
|
+
- 修复:`openclaw doctor`(或重启 Gateway网关)。如果问题持续,通过 `channels login` 重新关联并检查 `openclaw logs --follow`。
|
|
406
|
+
|
|
407
|
+
**Bun 运行时**
|
|
408
|
+
|
|
409
|
+
- **不推荐**使用 Bun。WhatsApp(Baileys)和 Telegram 在 Bun 上不稳定。
|
|
410
|
+
请使用 **Node** 运行 Gateway网关。(参见入门指南运行时说明。)
|
|
@@ -0,0 +1,196 @@
|
|
|
1
|
+
---
|
|
2
|
+
read_when:
|
|
3
|
+
- 处理 Zalo 功能或 webhook 时
|
|
4
|
+
summary: Zalo 机器人支持状态、功能和配置
|
|
5
|
+
title: Zalo
|
|
6
|
+
x-i18n:
|
|
7
|
+
generated_at: "2026-02-01T19:58:32Z"
|
|
8
|
+
model: claude-opus-4-5
|
|
9
|
+
provider: pi
|
|
10
|
+
source_hash: 0311d932349f96412b712970b5d37329b91929bf3020536edf3ca0ff464373c0
|
|
11
|
+
source_path: channels/zalo.md
|
|
12
|
+
workflow: 14
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
# Zalo (Bot API)
|
|
16
|
+
|
|
17
|
+
状态:实验性。仅支持私信;根据 Zalo 文档,群组功能即将推出。
|
|
18
|
+
|
|
19
|
+
## 需要插件
|
|
20
|
+
|
|
21
|
+
Zalo 以插件形式提供,不包含在核心安装中。
|
|
22
|
+
|
|
23
|
+
- 通过 CLI 安装:`openclaw plugins install @openclaw/zalo`
|
|
24
|
+
- 或在新手引导中选择 **Zalo** 并确认安装提示
|
|
25
|
+
- 详情:[插件](/plugin)
|
|
26
|
+
|
|
27
|
+
## 快速设置(新手)
|
|
28
|
+
|
|
29
|
+
1. 安装 Zalo 插件:
|
|
30
|
+
- 从源码检出安装:`openclaw plugins install ./extensions/zalo`
|
|
31
|
+
- 从 npm 安装(如已发布):`openclaw plugins install @openclaw/zalo`
|
|
32
|
+
- 或在新手引导中选择 **Zalo** 并确认安装提示
|
|
33
|
+
2. 设置令牌:
|
|
34
|
+
- 环境变量:`ZALO_BOT_TOKEN=...`
|
|
35
|
+
- 或配置:`channels.zalo.botToken: "..."`。
|
|
36
|
+
3. 重启 Gateway网关(或完成新手引导)。
|
|
37
|
+
4. 私信访问默认使用配对模式;首次联系时需批准配对码。
|
|
38
|
+
|
|
39
|
+
最小配置:
|
|
40
|
+
|
|
41
|
+
```json5
|
|
42
|
+
{
|
|
43
|
+
channels: {
|
|
44
|
+
zalo: {
|
|
45
|
+
enabled: true,
|
|
46
|
+
botToken: "12345689:abc-xyz",
|
|
47
|
+
dmPolicy: "pairing",
|
|
48
|
+
},
|
|
49
|
+
},
|
|
50
|
+
}
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
## 简介
|
|
54
|
+
|
|
55
|
+
Zalo 是一款面向越南市场的即时通讯应用;其 Bot API 允许 Gateway网关运行一个用于一对一对话的机器人。
|
|
56
|
+
它非常适合需要将消息确定性路由回 Zalo 的客服或通知场景。
|
|
57
|
+
|
|
58
|
+
- 由 Gateway网关管理的 Zalo Bot API 渠道。
|
|
59
|
+
- 确定性路由:回复始终返回 Zalo;模型不会选择渠道。
|
|
60
|
+
- 私信共享智能体的主会话。
|
|
61
|
+
- 群组尚不支持(Zalo 文档标注"即将推出")。
|
|
62
|
+
|
|
63
|
+
## 设置(快速路径)
|
|
64
|
+
|
|
65
|
+
### 1) 创建机器人令牌(Zalo Bot Platform)
|
|
66
|
+
|
|
67
|
+
1. 前往 **https://bot.zaloplatforms.com** 并登录。
|
|
68
|
+
2. 创建新机器人并配置其设置。
|
|
69
|
+
3. 复制机器人令牌(格式:`12345689:abc-xyz`)。
|
|
70
|
+
|
|
71
|
+
### 2) 配置令牌(环境变量或配置文件)
|
|
72
|
+
|
|
73
|
+
示例:
|
|
74
|
+
|
|
75
|
+
```json5
|
|
76
|
+
{
|
|
77
|
+
channels: {
|
|
78
|
+
zalo: {
|
|
79
|
+
enabled: true,
|
|
80
|
+
botToken: "12345689:abc-xyz",
|
|
81
|
+
dmPolicy: "pairing",
|
|
82
|
+
},
|
|
83
|
+
},
|
|
84
|
+
}
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
环境变量选项:`ZALO_BOT_TOKEN=...`(仅适用于默认账户)。
|
|
88
|
+
|
|
89
|
+
多账户支持:使用 `channels.zalo.accounts`,为每个账户配置令牌和可选的 `name`。
|
|
90
|
+
|
|
91
|
+
3. 重启 Gateway网关。当令牌被解析(通过环境变量或配置)时,Zalo 将启动。
|
|
92
|
+
4. 私信访问默认使用配对模式。机器人首次被联系时,请批准配对码。
|
|
93
|
+
|
|
94
|
+
## 工作原理(行为)
|
|
95
|
+
|
|
96
|
+
- 入站消息被标准化为共享渠道信封,并包含媒体占位符。
|
|
97
|
+
- 回复始终路由回同一个 Zalo 聊天。
|
|
98
|
+
- 默认使用长轮询;可通过 `channels.zalo.webhookUrl` 启用 webhook 模式。
|
|
99
|
+
|
|
100
|
+
## 限制
|
|
101
|
+
|
|
102
|
+
- 出站文本按 2000 字符分块(Zalo API 限制)。
|
|
103
|
+
- 媒体下载/上传受 `channels.zalo.mediaMaxMb` 限制(默认 5)。
|
|
104
|
+
- 由于 2000 字符限制导致流式传输意义不大,默认禁用流式传输。
|
|
105
|
+
|
|
106
|
+
## 访问控制(私信)
|
|
107
|
+
|
|
108
|
+
### 私信访问
|
|
109
|
+
|
|
110
|
+
- 默认:`channels.zalo.dmPolicy = "pairing"`。未知发送者会收到配对码;消息在批准前将被忽略(配对码 1 小时后过期)。
|
|
111
|
+
- 批准方式:
|
|
112
|
+
- `openclaw pairing list zalo`
|
|
113
|
+
- `openclaw pairing approve zalo <CODE>`
|
|
114
|
+
- 配对是默认的令牌交换方式。详情:[配对](/start/pairing)
|
|
115
|
+
- `channels.zalo.allowFrom` 接受数字用户 ID(不支持用户名查找)。
|
|
116
|
+
|
|
117
|
+
## 长轮询与 webhook
|
|
118
|
+
|
|
119
|
+
- 默认:长轮询(无需公网 URL)。
|
|
120
|
+
- Webhook 模式:设置 `channels.zalo.webhookUrl` 和 `channels.zalo.webhookSecret`。
|
|
121
|
+
- Webhook 密钥必须为 8-256 个字符。
|
|
122
|
+
- Webhook URL 必须使用 HTTPS。
|
|
123
|
+
- Zalo 通过 `X-Bot-Api-Secret-Token` 请求头发送事件以进行验证。
|
|
124
|
+
- Gateway网关 HTTP 在 `channels.zalo.webhookPath` 处理 webhook 请求(默认为 webhook URL 路径)。
|
|
125
|
+
|
|
126
|
+
**注意:** 根据 Zalo API 文档,getUpdates(轮询)和 webhook 互斥。
|
|
127
|
+
|
|
128
|
+
## 支持的消息类型
|
|
129
|
+
|
|
130
|
+
- **文本消息**:完全支持,按 2000 字符分块。
|
|
131
|
+
- **图片消息**:下载并处理入站图片;通过 `sendPhoto` 发送图片。
|
|
132
|
+
- **贴纸**:已记录但未完全处理(无智能体响应)。
|
|
133
|
+
- **不支持的类型**:已记录(例如来自受保护用户的消息)。
|
|
134
|
+
|
|
135
|
+
## 功能
|
|
136
|
+
|
|
137
|
+
| 功能 | 状态 |
|
|
138
|
+
| ------------ | ----------------------------- |
|
|
139
|
+
| 私信 | ✅ 支持 |
|
|
140
|
+
| 群组 | ❌ 即将推出(根据 Zalo 文档) |
|
|
141
|
+
| 媒体(图片) | ✅ 支持 |
|
|
142
|
+
| 表情回应 | ❌ 不支持 |
|
|
143
|
+
| 话题 | ❌ 不支持 |
|
|
144
|
+
| 投票 | ❌ 不支持 |
|
|
145
|
+
| 原生命令 | ❌ 不支持 |
|
|
146
|
+
| 流式传输 | ⚠️ 已禁用(2000 字符限制) |
|
|
147
|
+
|
|
148
|
+
## 投递目标(CLI/定时任务)
|
|
149
|
+
|
|
150
|
+
- 使用聊天 ID 作为目标。
|
|
151
|
+
- 示例:`openclaw message send --channel zalo --target 123456789 --message "hi"`。
|
|
152
|
+
|
|
153
|
+
## 故障排除
|
|
154
|
+
|
|
155
|
+
**机器人无响应:**
|
|
156
|
+
|
|
157
|
+
- 检查令牌是否有效:`openclaw channels status --probe`
|
|
158
|
+
- 验证发送者是否已批准(配对或 allowFrom)
|
|
159
|
+
- 检查 Gateway网关日志:`openclaw logs --follow`
|
|
160
|
+
|
|
161
|
+
**Webhook 未收到事件:**
|
|
162
|
+
|
|
163
|
+
- 确保 webhook URL 使用 HTTPS
|
|
164
|
+
- 验证密钥令牌为 8-256 个字符
|
|
165
|
+
- 确认 Gateway网关 HTTP 端点在配置的路径上可达
|
|
166
|
+
- 检查 getUpdates 轮询是否未在运行(两者互斥)
|
|
167
|
+
|
|
168
|
+
## 配置参考(Zalo)
|
|
169
|
+
|
|
170
|
+
完整配置:[配置](/gateway/configuration)
|
|
171
|
+
|
|
172
|
+
提供商选项:
|
|
173
|
+
|
|
174
|
+
- `channels.zalo.enabled`:启用/禁用渠道启动。
|
|
175
|
+
- `channels.zalo.botToken`:来自 Zalo Bot Platform 的机器人令牌。
|
|
176
|
+
- `channels.zalo.tokenFile`:从文件路径读取令牌。
|
|
177
|
+
- `channels.zalo.dmPolicy`:`pairing | allowlist | open | disabled`(默认:pairing)。
|
|
178
|
+
- `channels.zalo.allowFrom`:私信允许列表(用户 ID)。`open` 需要 `"*"`。向导会要求输入数字 ID。
|
|
179
|
+
- `channels.zalo.mediaMaxMb`:入站/出站媒体大小上限(MB,默认 5)。
|
|
180
|
+
- `channels.zalo.webhookUrl`:启用 webhook 模式(需要 HTTPS)。
|
|
181
|
+
- `channels.zalo.webhookSecret`:webhook 密钥(8-256 个字符)。
|
|
182
|
+
- `channels.zalo.webhookPath`:Gateway网关 HTTP 服务器上的 webhook 路径。
|
|
183
|
+
- `channels.zalo.proxy`:API 请求的代理 URL。
|
|
184
|
+
|
|
185
|
+
多账户选项:
|
|
186
|
+
|
|
187
|
+
- `channels.zalo.accounts.<id>.botToken`:每个账户的令牌。
|
|
188
|
+
- `channels.zalo.accounts.<id>.tokenFile`:每个账户的令牌文件。
|
|
189
|
+
- `channels.zalo.accounts.<id>.name`:显示名称。
|
|
190
|
+
- `channels.zalo.accounts.<id>.enabled`:启用/禁用账户。
|
|
191
|
+
- `channels.zalo.accounts.<id>.dmPolicy`:每个账户的私信策略。
|
|
192
|
+
- `channels.zalo.accounts.<id>.allowFrom`:每个账户的允许列表。
|
|
193
|
+
- `channels.zalo.accounts.<id>.webhookUrl`:每个账户的 webhook URL。
|
|
194
|
+
- `channels.zalo.accounts.<id>.webhookSecret`:每个账户的 webhook 密钥。
|
|
195
|
+
- `channels.zalo.accounts.<id>.webhookPath`:每个账户的 webhook 路径。
|
|
196
|
+
- `channels.zalo.accounts.<id>.proxy`:每个账户的代理 URL。
|