@gguf/claw 2026.2.1 → 2026.2.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- 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
|
@@ -3,6 +3,7 @@ import os from "node:os";
|
|
|
3
3
|
import path from "node:path";
|
|
4
4
|
const PRIMARY_PACKAGE_NAME = "openclaw";
|
|
5
5
|
const ALL_PACKAGE_NAMES = [PRIMARY_PACKAGE_NAME];
|
|
6
|
+
const GLOBAL_RENAME_PREFIX = ".";
|
|
6
7
|
async function pathExists(targetPath) {
|
|
7
8
|
try {
|
|
8
9
|
await fs.access(targetPath);
|
|
@@ -105,3 +106,37 @@ export function globalInstallArgs(manager, spec) {
|
|
|
105
106
|
}
|
|
106
107
|
return ["npm", "i", "-g", spec];
|
|
107
108
|
}
|
|
109
|
+
export async function cleanupGlobalRenameDirs(params) {
|
|
110
|
+
const removed = [];
|
|
111
|
+
const root = params.globalRoot.trim();
|
|
112
|
+
const name = params.packageName.trim();
|
|
113
|
+
if (!root || !name) {
|
|
114
|
+
return { removed };
|
|
115
|
+
}
|
|
116
|
+
const prefix = `${GLOBAL_RENAME_PREFIX}${name}-`;
|
|
117
|
+
let entries = [];
|
|
118
|
+
try {
|
|
119
|
+
entries = await fs.readdir(root);
|
|
120
|
+
}
|
|
121
|
+
catch {
|
|
122
|
+
return { removed };
|
|
123
|
+
}
|
|
124
|
+
for (const entry of entries) {
|
|
125
|
+
if (!entry.startsWith(prefix)) {
|
|
126
|
+
continue;
|
|
127
|
+
}
|
|
128
|
+
const target = path.join(root, entry);
|
|
129
|
+
try {
|
|
130
|
+
const stat = await fs.lstat(target);
|
|
131
|
+
if (!stat.isDirectory()) {
|
|
132
|
+
continue;
|
|
133
|
+
}
|
|
134
|
+
await fs.rm(target, { recursive: true, force: true });
|
|
135
|
+
removed.push(entry);
|
|
136
|
+
}
|
|
137
|
+
catch {
|
|
138
|
+
// ignore cleanup failures
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
return { removed };
|
|
142
|
+
}
|
|
@@ -2,10 +2,10 @@ import fs from "node:fs/promises";
|
|
|
2
2
|
import os from "node:os";
|
|
3
3
|
import path from "node:path";
|
|
4
4
|
import { runCommandWithTimeout } from "../process/exec.js";
|
|
5
|
-
import { compareSemverStrings } from "./update-check.js";
|
|
6
|
-
import { DEV_BRANCH, isBetaTag, isStableTag } from "./update-channels.js";
|
|
7
|
-
import { detectGlobalInstallManagerForRoot, globalInstallArgs } from "./update-global.js";
|
|
8
5
|
import { trimLogTail } from "./restart-sentinel.js";
|
|
6
|
+
import { DEV_BRANCH, isBetaTag, isStableTag } from "./update-channels.js";
|
|
7
|
+
import { compareSemverStrings } from "./update-check.js";
|
|
8
|
+
import { cleanupGlobalRenameDirs, detectGlobalInstallManagerForRoot, globalInstallArgs, } from "./update-global.js";
|
|
9
9
|
const DEFAULT_TIMEOUT_MS = 20 * 60_000;
|
|
10
10
|
const MAX_LOG_CHARS = 8000;
|
|
11
11
|
const PREFLIGHT_MAX_COMMITS = 10;
|
|
@@ -571,6 +571,10 @@ export async function runGatewayUpdate(opts = {}) {
|
|
|
571
571
|
const globalManager = await detectGlobalInstallManagerForRoot(runCommand, pkgRoot, timeoutMs);
|
|
572
572
|
if (globalManager) {
|
|
573
573
|
const packageName = (await readPackageName(pkgRoot)) ?? DEFAULT_PACKAGE_NAME;
|
|
574
|
+
await cleanupGlobalRenameDirs({
|
|
575
|
+
globalRoot: path.dirname(pkgRoot),
|
|
576
|
+
packageName,
|
|
577
|
+
});
|
|
574
578
|
const spec = `${packageName}@${normalizeTag(opts.tag)}`;
|
|
575
579
|
const updateStep = await runStep({
|
|
576
580
|
runCommand,
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import fs from "node:fs/promises";
|
|
2
2
|
import path from "node:path";
|
|
3
|
+
import { formatCliCommand } from "../cli/command-format.js";
|
|
3
4
|
import { resolveStateDir } from "../config/paths.js";
|
|
5
|
+
import { VERSION } from "../version.js";
|
|
4
6
|
import { resolveOpenClawPackageRoot } from "./openclaw-root.js";
|
|
5
|
-
import { compareSemverStrings, resolveNpmChannelTag, checkUpdateStatus } from "./update-check.js";
|
|
6
7
|
import { normalizeUpdateChannel, DEFAULT_PACKAGE_CHANNEL } from "./update-channels.js";
|
|
7
|
-
import {
|
|
8
|
-
import { formatCliCommand } from "../cli/command-format.js";
|
|
8
|
+
import { compareSemverStrings, resolveNpmChannelTag, checkUpdateStatus } from "./update-check.js";
|
|
9
9
|
const UPDATE_CHECK_FILENAME = "update-check.json";
|
|
10
10
|
const UPDATE_CHECK_INTERVAL_MS = 24 * 60 * 60 * 1000;
|
|
11
11
|
function shouldSkipCheck(allowInTests) {
|
|
@@ -2,8 +2,8 @@ import type { messagingApi } from "@line/bot-sdk";
|
|
|
2
2
|
import type { ReplyPayload } from "../auto-reply/types.js";
|
|
3
3
|
import type { FlexContainer } from "./flex-templates.js";
|
|
4
4
|
import type { ProcessedLineMessage } from "./markdown-to-line.js";
|
|
5
|
-
import type { LineChannelData, LineTemplateMessagePayload } from "./types.js";
|
|
6
5
|
import type { LineReplyMessage, SendLineReplyChunksParams } from "./reply-chunks.js";
|
|
6
|
+
import type { LineChannelData, LineTemplateMessagePayload } from "./types.js";
|
|
7
7
|
export type LineAutoReplyDeps = {
|
|
8
8
|
buildTemplateMessageFromPayload: (payload: LineTemplateMessagePayload) => messagingApi.TemplateMessage | null;
|
|
9
9
|
processLineMessage: (text: string) => ProcessedLineMessage;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import type { WebhookEvent } from "@line/bot-sdk";
|
|
2
2
|
import type { OpenClawConfig } from "../config/config.js";
|
|
3
3
|
import type { RuntimeEnv } from "../runtime.js";
|
|
4
|
-
import { type LineInboundContext } from "./bot-message-context.js";
|
|
5
4
|
import type { ResolvedLineAccount } from "./types.js";
|
|
5
|
+
import { type LineInboundContext } from "./bot-message-context.js";
|
|
6
6
|
export interface LineHandlerContext {
|
|
7
7
|
cfg: OpenClawConfig;
|
|
8
8
|
account: ResolvedLineAccount;
|
|
@@ -2,8 +2,8 @@ import { danger, logVerbose } from "../globals.js";
|
|
|
2
2
|
import { resolvePairingIdLabel } from "../pairing/pairing-labels.js";
|
|
3
3
|
import { buildPairingReply } from "../pairing/pairing-messages.js";
|
|
4
4
|
import { readChannelAllowFromStore, upsertChannelPairingRequest, } from "../pairing/pairing-store.js";
|
|
5
|
-
import { buildLineMessageContext, buildLinePostbackContext, } from "./bot-message-context.js";
|
|
6
5
|
import { firstDefined, isSenderAllowed, normalizeAllowFromWithStore } from "./bot-access.js";
|
|
6
|
+
import { buildLineMessageContext, buildLinePostbackContext, } from "./bot-message-context.js";
|
|
7
7
|
import { downloadLineMedia } from "./download.js";
|
|
8
8
|
import { pushMessageLine, replyMessageLine } from "./send.js";
|
|
9
9
|
function getSourceInfo(source) {
|
package/dist/line/download.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
+
import { messagingApi } from "@line/bot-sdk";
|
|
1
2
|
import fs from "node:fs";
|
|
2
|
-
import path from "node:path";
|
|
3
3
|
import os from "node:os";
|
|
4
|
-
import
|
|
4
|
+
import path from "node:path";
|
|
5
5
|
import { logVerbose } from "../globals.js";
|
|
6
6
|
export async function downloadLineMedia(messageId, channelAccessToken, maxBytes = 10 * 1024 * 1024) {
|
|
7
7
|
const client = new messagingApi.MessagingApiBlobClient({
|
package/dist/line/monitor.js
CHANGED
|
@@ -1,16 +1,16 @@
|
|
|
1
|
+
import { resolveEffectiveMessagesConfig } from "../agents/identity.js";
|
|
2
|
+
import { chunkMarkdownText } from "../auto-reply/chunk.js";
|
|
3
|
+
import { dispatchReplyWithBufferedBlockDispatcher } from "../auto-reply/reply/provider-dispatcher.js";
|
|
1
4
|
import { danger, logVerbose } from "../globals.js";
|
|
2
|
-
import { createLineBot } from "./bot.js";
|
|
3
|
-
import { validateLineSignature } from "./signature.js";
|
|
4
5
|
import { normalizePluginHttpPath } from "../plugins/http-path.js";
|
|
5
6
|
import { registerPluginHttpRoute } from "../plugins/http-registry.js";
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
8
|
-
import { dispatchReplyWithBufferedBlockDispatcher } from "../auto-reply/reply/provider-dispatcher.js";
|
|
9
|
-
import { resolveEffectiveMessagesConfig } from "../agents/identity.js";
|
|
10
|
-
import { chunkMarkdownText } from "../auto-reply/chunk.js";
|
|
7
|
+
import { deliverLineAutoReply } from "./auto-reply-delivery.js";
|
|
8
|
+
import { createLineBot } from "./bot.js";
|
|
11
9
|
import { processLineMessage } from "./markdown-to-line.js";
|
|
12
10
|
import { sendLineReplyChunks } from "./reply-chunks.js";
|
|
13
|
-
import {
|
|
11
|
+
import { replyMessageLine, showLoadingAnimation, getUserDisplayName, createQuickReplyItems, createTextMessageWithQuickReplies, pushTextMessageWithQuickReplies, pushMessageLine, pushMessagesLine, createFlexMessage, createImageMessage, createLocationMessage, } from "./send.js";
|
|
12
|
+
import { validateLineSignature } from "./signature.js";
|
|
13
|
+
import { buildTemplateMessageFromPayload } from "./template-messages.js";
|
|
14
14
|
// Track runtime state in memory (simplified version)
|
|
15
15
|
const runtimeState = new Map();
|
|
16
16
|
function recordChannelRuntimeState(params) {
|
package/dist/line/webhook.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type { Request, Response, NextFunction } from "express";
|
|
2
1
|
import type { WebhookRequestBody } from "@line/bot-sdk";
|
|
2
|
+
import type { Request, Response, NextFunction } from "express";
|
|
3
3
|
import type { RuntimeEnv } from "../runtime.js";
|
|
4
4
|
export interface LineWebhookOptions {
|
|
5
5
|
channelSecret: string;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type { OpenClawConfig } from "../config/config.js";
|
|
2
1
|
import type { MsgContext } from "../auto-reply/templating.js";
|
|
2
|
+
import type { OpenClawConfig } from "../config/config.js";
|
|
3
3
|
export type ApplyLinkUnderstandingResult = {
|
|
4
4
|
outputs: string[];
|
|
5
5
|
urls: string[];
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { applyTemplate } from "../auto-reply/templating.js";
|
|
2
2
|
import { logVerbose, shouldLogVerbose } from "../globals.js";
|
|
3
|
-
import { runExec } from "../process/exec.js";
|
|
4
3
|
import { CLI_OUTPUT_MAX_BUFFER } from "../media-understanding/defaults.js";
|
|
5
4
|
import { resolveTimeoutMs } from "../media-understanding/resolve.js";
|
|
6
5
|
import { normalizeMediaUnderstandingChatType, resolveMediaUnderstandingScope, } from "../media-understanding/scope.js";
|
|
6
|
+
import { runExec } from "../process/exec.js";
|
|
7
7
|
import { DEFAULT_LINK_TIMEOUT_SECONDS } from "./defaults.js";
|
|
8
8
|
import { extractLinksFromMessage } from "./detect.js";
|
|
9
9
|
function resolveScopeDecision(params) {
|
package/dist/logging/config.js
CHANGED
package/dist/logging/console.js
CHANGED
|
@@ -2,9 +2,9 @@ import { createRequire } from "node:module";
|
|
|
2
2
|
import util from "node:util";
|
|
3
3
|
import { isVerbose } from "../globals.js";
|
|
4
4
|
import { stripAnsi } from "../terminal/ansi.js";
|
|
5
|
+
import { readLoggingConfig } from "./config.js";
|
|
5
6
|
import { normalizeLogLevel } from "./levels.js";
|
|
6
7
|
import { getLogger } from "./logger.js";
|
|
7
|
-
import { readLoggingConfig } from "./config.js";
|
|
8
8
|
import { loggingState } from "./state.js";
|
|
9
9
|
const requireConfig = createRequire(import.meta.url);
|
|
10
10
|
function normalizeConsoleLevel(level) {
|
package/dist/logging/logger.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { createRequire } from "node:module";
|
|
2
1
|
import fs from "node:fs";
|
|
2
|
+
import { createRequire } from "node:module";
|
|
3
3
|
import path from "node:path";
|
|
4
4
|
import { Logger as TsLogger } from "tslog";
|
|
5
|
-
import { levelToMinLevel, normalizeLogLevel } from "./levels.js";
|
|
6
5
|
import { readLoggingConfig } from "./config.js";
|
|
6
|
+
import { levelToMinLevel, normalizeLogLevel } from "./levels.js";
|
|
7
7
|
import { loggingState } from "./state.js";
|
|
8
8
|
// Pin to /tmp so mac Debug UI and docs match; os.tmpdir() can be a per-user
|
|
9
9
|
// randomized path on macOS which made the “Open log” button a no-op.
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { Chalk } from "chalk";
|
|
2
2
|
import { CHAT_CHANNEL_ORDER } from "../channels/registry.js";
|
|
3
|
+
import { isVerbose } from "../globals.js";
|
|
3
4
|
import { defaultRuntime } from "../runtime.js";
|
|
5
|
+
import { clearActiveProgressLine } from "../terminal/progress-line.js";
|
|
4
6
|
import { getConsoleSettings, shouldLogSubsystemToConsole } from "./console.js";
|
|
5
|
-
import { isVerbose } from "../globals.js";
|
|
6
7
|
import { levelToMinLevel } from "./levels.js";
|
|
7
8
|
import { getChildLogger } from "./logger.js";
|
|
8
9
|
import { loggingState } from "./state.js";
|
|
9
|
-
import { clearActiveProgressLine } from "../terminal/progress-line.js";
|
|
10
10
|
function shouldLogToConsole(level, settings) {
|
|
11
11
|
if (settings.level === "silent") {
|
|
12
12
|
return false;
|
package/dist/media/fetch.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { LookupFn, SsrFPolicy } from "../infra/net/ssrf.js";
|
|
1
2
|
type FetchMediaResult = {
|
|
2
3
|
buffer: Buffer;
|
|
3
4
|
contentType?: string;
|
|
@@ -14,6 +15,9 @@ type FetchMediaOptions = {
|
|
|
14
15
|
fetchImpl?: FetchLike;
|
|
15
16
|
filePathHint?: string;
|
|
16
17
|
maxBytes?: number;
|
|
18
|
+
maxRedirects?: number;
|
|
19
|
+
ssrfPolicy?: SsrFPolicy;
|
|
20
|
+
lookupFn?: LookupFn;
|
|
17
21
|
};
|
|
18
22
|
export declare function fetchRemoteMedia(options: FetchMediaOptions): Promise<FetchMediaResult>;
|
|
19
23
|
export {};
|
package/dist/media/fetch.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import path from "node:path";
|
|
2
|
+
import { fetchWithSsrFGuard } from "../infra/net/fetch-guard.js";
|
|
2
3
|
import { detectMime, extensionForMime } from "./mime.js";
|
|
3
4
|
export class MediaFetchError extends Error {
|
|
4
5
|
code;
|
|
@@ -52,71 +53,85 @@ async function readErrorBodySnippet(res, maxChars = 200) {
|
|
|
52
53
|
}
|
|
53
54
|
}
|
|
54
55
|
export async function fetchRemoteMedia(options) {
|
|
55
|
-
const { url, fetchImpl, filePathHint, maxBytes } = options;
|
|
56
|
-
const fetcher = fetchImpl ?? globalThis.fetch;
|
|
57
|
-
if (!fetcher) {
|
|
58
|
-
throw new Error("fetch is not available");
|
|
59
|
-
}
|
|
56
|
+
const { url, fetchImpl, filePathHint, maxBytes, maxRedirects, ssrfPolicy, lookupFn } = options;
|
|
60
57
|
let res;
|
|
58
|
+
let finalUrl = url;
|
|
59
|
+
let release = null;
|
|
61
60
|
try {
|
|
62
|
-
|
|
61
|
+
const result = await fetchWithSsrFGuard({
|
|
62
|
+
url,
|
|
63
|
+
fetchImpl,
|
|
64
|
+
maxRedirects,
|
|
65
|
+
policy: ssrfPolicy,
|
|
66
|
+
lookupFn,
|
|
67
|
+
});
|
|
68
|
+
res = result.response;
|
|
69
|
+
finalUrl = result.finalUrl;
|
|
70
|
+
release = result.release;
|
|
63
71
|
}
|
|
64
72
|
catch (err) {
|
|
65
73
|
throw new MediaFetchError("fetch_failed", `Failed to fetch media from ${url}: ${String(err)}`);
|
|
66
74
|
}
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
75
|
+
try {
|
|
76
|
+
if (!res.ok) {
|
|
77
|
+
const statusText = res.statusText ? ` ${res.statusText}` : "";
|
|
78
|
+
const redirected = finalUrl !== url ? ` (redirected to ${finalUrl})` : "";
|
|
79
|
+
let detail = `HTTP ${res.status}${statusText}`;
|
|
80
|
+
if (!res.body) {
|
|
81
|
+
detail = `HTTP ${res.status}${statusText}; empty response body`;
|
|
82
|
+
}
|
|
83
|
+
else {
|
|
84
|
+
const snippet = await readErrorBodySnippet(res);
|
|
85
|
+
if (snippet) {
|
|
86
|
+
detail += `; body: ${snippet}`;
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
throw new MediaFetchError("http_error", `Failed to fetch media from ${url}${redirected}: ${detail}`);
|
|
73
90
|
}
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
91
|
+
const contentLength = res.headers.get("content-length");
|
|
92
|
+
if (maxBytes && contentLength) {
|
|
93
|
+
const length = Number(contentLength);
|
|
94
|
+
if (Number.isFinite(length) && length > maxBytes) {
|
|
95
|
+
throw new MediaFetchError("max_bytes", `Failed to fetch media from ${url}: content length ${length} exceeds maxBytes ${maxBytes}`);
|
|
78
96
|
}
|
|
79
97
|
}
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
98
|
+
const buffer = maxBytes
|
|
99
|
+
? await readResponseWithLimit(res, maxBytes)
|
|
100
|
+
: Buffer.from(await res.arrayBuffer());
|
|
101
|
+
let fileNameFromUrl;
|
|
102
|
+
try {
|
|
103
|
+
const parsed = new URL(finalUrl);
|
|
104
|
+
const base = path.basename(parsed.pathname);
|
|
105
|
+
fileNameFromUrl = base || undefined;
|
|
87
106
|
}
|
|
107
|
+
catch {
|
|
108
|
+
// ignore parse errors; leave undefined
|
|
109
|
+
}
|
|
110
|
+
const headerFileName = parseContentDispositionFileName(res.headers.get("content-disposition"));
|
|
111
|
+
let fileName = headerFileName || fileNameFromUrl || (filePathHint ? path.basename(filePathHint) : undefined);
|
|
112
|
+
const filePathForMime = headerFileName && path.extname(headerFileName) ? headerFileName : (filePathHint ?? finalUrl);
|
|
113
|
+
const contentType = await detectMime({
|
|
114
|
+
buffer,
|
|
115
|
+
headerMime: res.headers.get("content-type"),
|
|
116
|
+
filePath: filePathForMime,
|
|
117
|
+
});
|
|
118
|
+
if (fileName && !path.extname(fileName) && contentType) {
|
|
119
|
+
const ext = extensionForMime(contentType);
|
|
120
|
+
if (ext) {
|
|
121
|
+
fileName = `${fileName}${ext}`;
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
return {
|
|
125
|
+
buffer,
|
|
126
|
+
contentType: contentType ?? undefined,
|
|
127
|
+
fileName,
|
|
128
|
+
};
|
|
88
129
|
}
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
let fileNameFromUrl;
|
|
93
|
-
try {
|
|
94
|
-
const parsed = new URL(url);
|
|
95
|
-
const base = path.basename(parsed.pathname);
|
|
96
|
-
fileNameFromUrl = base || undefined;
|
|
97
|
-
}
|
|
98
|
-
catch {
|
|
99
|
-
// ignore parse errors; leave undefined
|
|
100
|
-
}
|
|
101
|
-
const headerFileName = parseContentDispositionFileName(res.headers.get("content-disposition"));
|
|
102
|
-
let fileName = headerFileName || fileNameFromUrl || (filePathHint ? path.basename(filePathHint) : undefined);
|
|
103
|
-
const filePathForMime = headerFileName && path.extname(headerFileName) ? headerFileName : (filePathHint ?? url);
|
|
104
|
-
const contentType = await detectMime({
|
|
105
|
-
buffer,
|
|
106
|
-
headerMime: res.headers.get("content-type"),
|
|
107
|
-
filePath: filePathForMime,
|
|
108
|
-
});
|
|
109
|
-
if (fileName && !path.extname(fileName) && contentType) {
|
|
110
|
-
const ext = extensionForMime(contentType);
|
|
111
|
-
if (ext) {
|
|
112
|
-
fileName = `${fileName}${ext}`;
|
|
130
|
+
finally {
|
|
131
|
+
if (release) {
|
|
132
|
+
await release();
|
|
113
133
|
}
|
|
114
134
|
}
|
|
115
|
-
return {
|
|
116
|
-
buffer,
|
|
117
|
-
contentType: contentType ?? undefined,
|
|
118
|
-
fileName,
|
|
119
|
-
};
|
|
120
135
|
}
|
|
121
136
|
async function readResponseWithLimit(res, maxBytes) {
|
|
122
137
|
const body = res.body;
|
package/dist/media/host.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import fs from "node:fs/promises";
|
|
2
|
+
import { formatCliCommand } from "../cli/command-format.js";
|
|
2
3
|
import { ensurePortAvailable, PortInUseError } from "../infra/ports.js";
|
|
3
4
|
import { getTailnetHostname } from "../infra/tailscale.js";
|
|
4
5
|
import { logInfo } from "../logger.js";
|
|
5
6
|
import { defaultRuntime } from "../runtime.js";
|
|
6
|
-
import { formatCliCommand } from "../cli/command-format.js";
|
|
7
7
|
import { startMediaServer } from "./server.js";
|
|
8
8
|
import { saveMediaSource } from "./store.js";
|
|
9
9
|
const DEFAULT_PORT = 42873;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
+
import { fetchWithSsrFGuard } from "../infra/net/fetch-guard.js";
|
|
1
2
|
import { logWarn } from "../logger.js";
|
|
2
|
-
import { closeDispatcher, createPinnedDispatcher, resolvePinnedHostname, } from "../infra/net/ssrf.js";
|
|
3
3
|
let canvasModulePromise = null;
|
|
4
4
|
let pdfJsModulePromise = null;
|
|
5
5
|
// Lazy-load optional PDF/image deps so non-PDF paths don't require native installs.
|
|
@@ -38,9 +38,6 @@ export const DEFAULT_INPUT_TIMEOUT_MS = 10_000;
|
|
|
38
38
|
export const DEFAULT_INPUT_PDF_MAX_PAGES = 4;
|
|
39
39
|
export const DEFAULT_INPUT_PDF_MAX_PIXELS = 4_000_000;
|
|
40
40
|
export const DEFAULT_INPUT_PDF_MIN_TEXT_CHARS = 200;
|
|
41
|
-
function isRedirectStatus(status) {
|
|
42
|
-
return status === 301 || status === 302 || status === 303 || status === 307 || status === 308;
|
|
43
|
-
}
|
|
44
41
|
export function normalizeMimeType(value) {
|
|
45
42
|
if (!value) {
|
|
46
43
|
return undefined;
|
|
@@ -65,64 +62,34 @@ export function normalizeMimeList(values, fallback) {
|
|
|
65
62
|
return new Set(input.map((value) => normalizeMimeType(value)).filter(Boolean));
|
|
66
63
|
}
|
|
67
64
|
export async function fetchWithGuard(params) {
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
65
|
+
const { response, release } = await fetchWithSsrFGuard({
|
|
66
|
+
url: params.url,
|
|
67
|
+
maxRedirects: params.maxRedirects,
|
|
68
|
+
timeoutMs: params.timeoutMs,
|
|
69
|
+
init: { headers: { "User-Agent": "OpenClaw-Gateway/1.0" } },
|
|
70
|
+
});
|
|
72
71
|
try {
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
const
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
const response = await fetch(parsedUrl, {
|
|
82
|
-
signal: controller.signal,
|
|
83
|
-
headers: { "User-Agent": "OpenClaw-Gateway/1.0" },
|
|
84
|
-
redirect: "manual",
|
|
85
|
-
dispatcher,
|
|
86
|
-
});
|
|
87
|
-
if (isRedirectStatus(response.status)) {
|
|
88
|
-
const location = response.headers.get("location");
|
|
89
|
-
if (!location) {
|
|
90
|
-
throw new Error(`Redirect missing location header (${response.status})`);
|
|
91
|
-
}
|
|
92
|
-
redirectCount += 1;
|
|
93
|
-
if (redirectCount > params.maxRedirects) {
|
|
94
|
-
throw new Error(`Too many redirects (limit: ${params.maxRedirects})`);
|
|
95
|
-
}
|
|
96
|
-
void response.body?.cancel();
|
|
97
|
-
currentUrl = new URL(location, parsedUrl).toString();
|
|
98
|
-
continue;
|
|
99
|
-
}
|
|
100
|
-
if (!response.ok) {
|
|
101
|
-
throw new Error(`Failed to fetch: ${response.status} ${response.statusText}`);
|
|
102
|
-
}
|
|
103
|
-
const contentLength = response.headers.get("content-length");
|
|
104
|
-
if (contentLength) {
|
|
105
|
-
const size = parseInt(contentLength, 10);
|
|
106
|
-
if (size > params.maxBytes) {
|
|
107
|
-
throw new Error(`Content too large: ${size} bytes (limit: ${params.maxBytes} bytes)`);
|
|
108
|
-
}
|
|
109
|
-
}
|
|
110
|
-
const buffer = Buffer.from(await response.arrayBuffer());
|
|
111
|
-
if (buffer.byteLength > params.maxBytes) {
|
|
112
|
-
throw new Error(`Content too large: ${buffer.byteLength} bytes (limit: ${params.maxBytes} bytes)`);
|
|
113
|
-
}
|
|
114
|
-
const contentType = response.headers.get("content-type") || undefined;
|
|
115
|
-
const parsed = parseContentType(contentType);
|
|
116
|
-
const mimeType = parsed.mimeType ?? "application/octet-stream";
|
|
117
|
-
return { buffer, mimeType, contentType };
|
|
118
|
-
}
|
|
119
|
-
finally {
|
|
120
|
-
await closeDispatcher(dispatcher);
|
|
72
|
+
if (!response.ok) {
|
|
73
|
+
throw new Error(`Failed to fetch: ${response.status} ${response.statusText}`);
|
|
74
|
+
}
|
|
75
|
+
const contentLength = response.headers.get("content-length");
|
|
76
|
+
if (contentLength) {
|
|
77
|
+
const size = parseInt(contentLength, 10);
|
|
78
|
+
if (size > params.maxBytes) {
|
|
79
|
+
throw new Error(`Content too large: ${size} bytes (limit: ${params.maxBytes} bytes)`);
|
|
121
80
|
}
|
|
122
81
|
}
|
|
82
|
+
const buffer = Buffer.from(await response.arrayBuffer());
|
|
83
|
+
if (buffer.byteLength > params.maxBytes) {
|
|
84
|
+
throw new Error(`Content too large: ${buffer.byteLength} bytes (limit: ${params.maxBytes} bytes)`);
|
|
85
|
+
}
|
|
86
|
+
const contentType = response.headers.get("content-type") || undefined;
|
|
87
|
+
const parsed = parseContentType(contentType);
|
|
88
|
+
const mimeType = parsed.mimeType ?? "application/octet-stream";
|
|
89
|
+
return { buffer, mimeType, contentType };
|
|
123
90
|
}
|
|
124
91
|
finally {
|
|
125
|
-
|
|
92
|
+
await release();
|
|
126
93
|
}
|
|
127
94
|
}
|
|
128
95
|
function decodeTextContent(buffer, charset) {
|
package/dist/media/mime.js
CHANGED
package/dist/media/server.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import fs from "node:fs/promises";
|
|
2
1
|
import express from "express";
|
|
2
|
+
import fs from "node:fs/promises";
|
|
3
3
|
import { danger } from "../globals.js";
|
|
4
|
-
import { defaultRuntime } from "../runtime.js";
|
|
5
4
|
import { SafeOpenError, openFileWithinRoot } from "../infra/fs-safe.js";
|
|
5
|
+
import { defaultRuntime } from "../runtime.js";
|
|
6
6
|
import { detectMime } from "./mime.js";
|
|
7
7
|
import { cleanOldMedia, getMediaDir, MEDIA_MAX_BYTES } from "./store.js";
|
|
8
8
|
const DEFAULT_TTL_MS = 2 * 60 * 1000;
|
package/dist/media/store.js
CHANGED
|
@@ -5,8 +5,8 @@ import { request as httpRequest } from "node:http";
|
|
|
5
5
|
import { request as httpsRequest } from "node:https";
|
|
6
6
|
import path from "node:path";
|
|
7
7
|
import { pipeline } from "node:stream/promises";
|
|
8
|
-
import { resolveConfigDir } from "../utils.js";
|
|
9
8
|
import { resolvePinnedHostname } from "../infra/net/ssrf.js";
|
|
9
|
+
import { resolveConfigDir } from "../utils.js";
|
|
10
10
|
import { detectMime, extensionForMime } from "./mime.js";
|
|
11
11
|
const resolveMediaDir = () => path.join(resolveConfigDir(), "media");
|
|
12
12
|
export const MEDIA_MAX_BYTES = 5 * 1024 * 1024; // 5MB default
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type { OpenClawConfig } from "../config/config.js";
|
|
2
1
|
import type { MsgContext } from "../auto-reply/templating.js";
|
|
2
|
+
import type { OpenClawConfig } from "../config/config.js";
|
|
3
3
|
import type { MediaUnderstandingDecision, MediaUnderstandingOutput, MediaUnderstandingProvider } from "./types.js";
|
|
4
4
|
import { type ActiveMediaModel } from "./runner.js";
|
|
5
5
|
export type ApplyMediaUnderstandingResult = {
|