@gguf/pigbot 0.0.6 → 0.0.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +1206 -12
- package/LICENSE +2 -2
- package/README.md +347 -37
- package/assets/chrome-extension/README.md +5 -5
- package/assets/chrome-extension/background.js +5 -5
- package/assets/chrome-extension/manifest.json +3 -3
- package/assets/chrome-extension/options.html +5 -5
- package/assets/chrome-extension/options.js +1 -1
- package/dist/acp/client.js +5 -5
- package/dist/acp/server.js +3 -3
- package/dist/acp/types.js +2 -2
- package/dist/agents/agent-paths.js +6 -6
- package/dist/agents/agent-scope.js +1 -1
- package/dist/agents/anthropic-payload-log.js +2 -2
- package/dist/agents/auth-profiles/doctor.js +1 -1
- package/dist/agents/auth-profiles/paths.js +3 -3
- package/dist/agents/bash-tools.exec.js +1 -1
- package/dist/agents/bash-tools.shared.js +2 -2
- package/dist/agents/cache-trace.js +5 -5
- package/dist/agents/channel-tools.js +31 -2
- package/dist/agents/cli-runner/helpers.js +3 -3
- package/dist/agents/cli-runner.js +3 -3
- package/dist/agents/context.js +4 -4
- package/dist/agents/docs-path.js +3 -3
- package/dist/agents/identity.js +1 -1
- package/dist/agents/live-auth-keys.js +2 -2
- package/dist/agents/memory-search.js +5 -0
- package/dist/agents/minimax-vlm.js +1 -1
- package/dist/agents/model-auth.js +2 -1
- package/dist/agents/model-catalog.js +4 -4
- package/dist/agents/model-selection.js +1 -1
- package/dist/agents/models-config.js +3 -3
- package/dist/agents/models-config.providers.js +40 -8
- package/dist/agents/{moltbot-tools.js → openclaw-tools.js} +1 -1
- package/dist/agents/pi-embedded-helpers/errors.js +20 -0
- package/dist/agents/pi-embedded-helpers/openai.js +1 -1
- package/dist/agents/pi-embedded-helpers.js +1 -1
- package/dist/agents/pi-embedded-runner/cache-ttl.js +1 -1
- package/dist/agents/pi-embedded-runner/compact.js +8 -8
- package/dist/agents/pi-embedded-runner/model.js +2 -2
- package/dist/agents/pi-embedded-runner/run/attempt.js +6 -6
- package/dist/agents/pi-embedded-runner/run.js +31 -5
- package/dist/agents/pi-embedded-runner/session-manager-cache.js +1 -1
- package/dist/agents/pi-embedded-runner/utils.js +1 -1
- package/dist/agents/pi-embedded-subscribe.raw-stream.js +2 -2
- package/dist/agents/pi-tools.js +5 -5
- package/dist/agents/pi-tools.read.js +2 -2
- package/dist/agents/sandbox/browser.js +16 -11
- package/dist/agents/sandbox/constants.js +7 -7
- package/dist/agents/sandbox/docker.js +17 -14
- package/dist/agents/sandbox/runtime-status.js +1 -1
- package/dist/agents/session-transcript-repair.js +1 -1
- package/dist/agents/session-write-lock.js +2 -2
- package/dist/agents/skills/bundled-dir.js +1 -1
- package/dist/agents/skills/config.js +2 -1
- package/dist/agents/skills/frontmatter.js +11 -3
- package/dist/agents/skills/workspace.js +6 -6
- package/dist/agents/synthetic-models.js +8 -0
- package/dist/agents/system-prompt.js +21 -21
- package/dist/agents/tool-images.js +1 -1
- package/dist/agents/tool-policy.js +2 -2
- package/dist/agents/tools/browser-tool.js +5 -5
- package/dist/agents/tools/image-tool.js +2 -2
- package/dist/agents/tools/memory-tool.js +1 -1
- package/dist/agents/tools/sessions-send-tool.js +2 -2
- package/dist/agents/tools/web-search.js +7 -7
- package/dist/agents/transcript-policy.js +2 -1
- package/dist/agents/workspace.js +3 -3
- package/dist/auto-reply/commands-registry.data.js +1 -1
- package/dist/auto-reply/reply/agent-runner-execution.js +1 -1
- package/dist/auto-reply/reply/bash-command.js +2 -2
- package/dist/auto-reply/reply/commands-context-report.js +2 -2
- package/dist/auto-reply/reply/commands-session.js +4 -4
- package/dist/auto-reply/reply/directive-handling.shared.js +1 -1
- package/dist/auto-reply/reply/dispatch-from-config.js +21 -0
- package/dist/auto-reply/reply/get-reply-inline-actions.js +2 -2
- package/dist/auto-reply/reply/get-reply.js +1 -1
- package/dist/auto-reply/reply/groups.js +1 -1
- package/dist/auto-reply/reply/mentions.js +3 -2
- package/dist/auto-reply/reply/normalize-reply.js +12 -4
- package/dist/auto-reply/reply/reply-dispatcher.js +8 -1
- package/dist/auto-reply/reply/reply-elevated.js +1 -1
- package/dist/auto-reply/reply/stage-sandbox-media.js +1 -1
- package/dist/auto-reply/status.js +2 -2
- package/dist/browser/chrome.js +13 -13
- package/dist/browser/chrome.profile-decoration.js +5 -5
- package/dist/browser/client-fetch.js +3 -3
- package/dist/browser/config.js +11 -11
- package/dist/browser/constants.js +3 -3
- package/dist/browser/control-service.js +1 -1
- package/dist/browser/extension-relay.js +3 -3
- package/dist/browser/profiles-service.js +2 -2
- package/dist/browser/profiles.js +1 -1
- package/dist/browser/pw-tools-core.downloads.js +1 -1
- package/dist/browser/pw-tools-core.interactions.js +5 -5
- package/dist/browser/pw-tools-core.responses.js +1 -1
- package/dist/browser/routes/agent.act.js +2 -2
- package/dist/browser/routes/agent.debug.js +1 -1
- package/dist/browser/server-context.js +9 -9
- package/dist/browser/server.js +2 -2
- package/dist/build-info.json +2 -2
- package/dist/canvas-host/a2ui/.bundle.hash +1 -1
- package/dist/canvas-host/a2ui/a2ui.bundle.js +24 -19
- package/dist/canvas-host/a2ui/index.html +28 -28
- package/dist/canvas-host/a2ui.js +14 -18
- package/dist/canvas-host/server.js +33 -35
- package/dist/channels/plugins/catalog.js +7 -7
- package/dist/channels/plugins/helpers.js +2 -2
- package/dist/channels/plugins/onboarding/imessage.js +1 -1
- package/dist/channels/plugins/onboarding/signal.js +2 -2
- package/dist/channels/plugins/onboarding/slack.js +5 -5
- package/dist/channels/plugins/onboarding/telegram.js +3 -3
- package/dist/channels/plugins/onboarding/whatsapp.js +4 -4
- package/dist/channels/plugins/pairing-message.js +1 -1
- package/dist/channels/plugins/status-issues/bluebubbles.js +1 -1
- package/dist/channels/plugins/status-issues/whatsapp.js +2 -2
- package/dist/channels/registry.js +1 -1
- package/dist/cli/acp-cli.js +2 -2
- package/dist/cli/argv.js +2 -2
- package/dist/cli/banner.js +10 -11
- package/dist/cli/browser-cli-actions-input/register.files-downloads.js +1 -1
- package/dist/cli/browser-cli-examples.js +29 -29
- package/dist/cli/browser-cli-extension.js +5 -5
- package/dist/cli/browser-cli-manage.js +4 -4
- package/dist/cli/browser-cli.js +3 -3
- package/dist/cli/channel-options.js +1 -1
- package/dist/cli/channels-cli.js +1 -1
- package/dist/cli/cli-name.js +4 -8
- package/dist/cli/command-format.js +3 -3
- package/dist/cli/config-cli.js +2 -2
- package/dist/cli/cron-cli/register.js +1 -1
- package/dist/cli/daemon-cli/install.js +2 -2
- package/dist/cli/daemon-cli/register.js +1 -1
- package/dist/cli/daemon-cli/shared.js +11 -13
- package/dist/cli/daemon-cli/status.gather.js +2 -5
- package/dist/cli/daemon-cli/status.print.js +9 -17
- package/dist/cli/directory-cli.js +1 -1
- package/dist/cli/dns-cli.js +20 -13
- package/dist/cli/docs-cli.js +2 -2
- package/dist/cli/exec-approvals-cli.js +2 -2
- package/dist/cli/gateway-cli/dev.js +7 -5
- package/dist/cli/gateway-cli/register.js +12 -6
- package/dist/cli/gateway-cli/run.js +15 -14
- package/dist/cli/gateway-cli/shared.js +5 -5
- package/dist/cli/hooks-cli.js +3 -3
- package/dist/cli/logs-cli.js +3 -3
- package/dist/cli/memory-cli.js +36 -5
- package/dist/cli/models-cli.js +1 -1
- package/dist/cli/node-cli/daemon.js +3 -3
- package/dist/cli/node-cli/register.js +1 -1
- package/dist/cli/nodes-cli/register.canvas.js +1 -1
- package/dist/cli/nodes-cli/register.js +1 -1
- package/dist/cli/nodes-screen.js +1 -1
- package/dist/cli/pairing-cli.js +3 -3
- package/dist/cli/plugin-registry.js +2 -2
- package/dist/cli/plugins-cli.js +3 -3
- package/dist/cli/profile.js +9 -9
- package/dist/cli/program/config-guard.js +1 -1
- package/dist/cli/program/help.js +14 -11
- package/dist/cli/program/preaction.js +1 -1
- package/dist/cli/program/register.agent.js +15 -12
- package/dist/cli/program/register.configure.js +1 -1
- package/dist/cli/program/register.maintenance.js +4 -4
- package/dist/cli/program/register.message.js +5 -5
- package/dist/cli/program/register.onboard.js +5 -3
- package/dist/cli/program/register.setup.js +3 -3
- package/dist/cli/program/register.status-health-sessions.js +13 -13
- package/dist/cli/program/register.subclis.js +7 -2
- package/dist/cli/route.js +1 -1
- package/dist/cli/run-main.js +3 -3
- package/dist/cli/sandbox-cli.js +19 -19
- package/dist/cli/security-cli.js +4 -4
- package/dist/cli/skills-cli.js +3 -3
- package/dist/cli/system-cli.js +1 -1
- package/dist/cli/tagline.js +11 -9
- package/dist/cli/tui-cli.js +1 -1
- package/dist/cli/update-cli.js +48 -45
- package/dist/cli/webhooks-cli.js +6 -6
- package/dist/commands/agent-via-gateway.js +1 -1
- package/dist/commands/agent.js +1 -1
- package/dist/commands/agents.command-shared.js +1 -1
- package/dist/commands/agents.commands.add.js +2 -2
- package/dist/commands/agents.commands.list.js +1 -1
- package/dist/commands/auth-choice-options.js +10 -0
- package/dist/commands/auth-choice.apply.api-providers.js +49 -1
- package/dist/commands/auth-choice.apply.openai.js +1 -1
- package/dist/commands/auth-choice.apply.plugin-provider.js +2 -2
- package/dist/commands/auth-choice.preferred-provider.js +1 -0
- package/dist/commands/channels/shared.js +1 -1
- package/dist/commands/channels/status.js +1 -1
- package/dist/commands/chutes-oauth.js +1 -1
- package/dist/commands/configure.channels.js +2 -2
- package/dist/commands/configure.gateway.js +1 -1
- package/dist/commands/configure.wizard.js +21 -21
- package/dist/commands/daemon-install-helpers.js +2 -2
- package/dist/commands/dashboard.js +2 -2
- package/dist/commands/docs.js +5 -5
- package/dist/commands/doctor-auth.js +5 -5
- package/dist/commands/doctor-config-flow.js +64 -7
- package/dist/commands/doctor-format.js +5 -5
- package/dist/commands/doctor-gateway-daemon-flow.js +7 -4
- package/dist/commands/doctor-gateway-services.js +72 -65
- package/dist/commands/doctor-platform-notes.js +51 -9
- package/dist/commands/doctor-sandbox.js +4 -4
- package/dist/commands/doctor-security.js +7 -7
- package/dist/commands/doctor-state-integrity.js +9 -7
- package/dist/commands/doctor-state-migrations.js +1 -1
- package/dist/commands/doctor-ui.js +2 -2
- package/dist/commands/doctor-update.js +5 -5
- package/dist/commands/doctor-workspace-status.js +2 -2
- package/dist/commands/doctor-workspace.js +5 -27
- package/dist/commands/doctor.js +11 -11
- package/dist/commands/gateway-status/helpers.js +2 -2
- package/dist/commands/gateway-status.js +9 -3
- package/dist/commands/health.js +2 -2
- package/dist/commands/models/auth.js +1 -1
- package/dist/commands/models/list.probe.js +2 -2
- package/dist/commands/models/list.registry.js +4 -4
- package/dist/commands/models/list.status-command.js +4 -4
- package/dist/commands/node-daemon-install-helpers.js +1 -1
- package/dist/commands/onboard-auth.config-core.js +65 -1
- package/dist/commands/onboard-auth.credentials.js +14 -2
- package/dist/commands/onboard-auth.js +2 -2
- package/dist/commands/onboard-channels.js +5 -5
- package/dist/commands/onboard-helpers.js +9 -8
- package/dist/commands/onboard-hooks.js +4 -4
- package/dist/commands/onboard-non-interactive/local/auth-choice.js +21 -1
- package/dist/commands/onboard-non-interactive/local.js +1 -1
- package/dist/commands/onboard-non-interactive/remote.js +1 -1
- package/dist/commands/onboard-non-interactive.js +1 -1
- package/dist/commands/onboard-remote.js +7 -3
- package/dist/commands/onboard-skills.js +2 -2
- package/dist/commands/onboard.js +3 -3
- package/dist/commands/onboarding/plugin-install.js +2 -2
- package/dist/commands/reset.js +3 -3
- package/dist/commands/sandbox-display.js +1 -1
- package/dist/commands/sandbox-explain.js +2 -2
- package/dist/commands/setup.js +9 -7
- package/dist/commands/signal-install.js +2 -2
- package/dist/commands/status-all/diagnosis.js +1 -1
- package/dist/commands/status-all/report-lines.js +1 -1
- package/dist/commands/status-all.js +5 -5
- package/dist/commands/status.command.js +9 -9
- package/dist/commands/status.gateway-probe.js +2 -2
- package/dist/commands/status.scan.js +2 -2
- package/dist/commands/status.update.js +3 -3
- package/dist/commands/uninstall.js +4 -4
- package/dist/compat/legacy-names.js +8 -6
- package/dist/config/config.js +1 -1
- package/dist/config/io.js +13 -14
- package/dist/config/paths.js +107 -33
- package/dist/config/schema.js +14 -12
- package/dist/config/sessions/store.js +1 -1
- package/dist/config/sessions/transcript.js +1 -1
- package/dist/config/types.js +1 -1
- package/dist/config/validation.js +2 -2
- package/dist/config/version.js +4 -4
- package/dist/config/zod-schema.agent-runtime.js +1 -0
- package/dist/config/zod-schema.js +3 -2
- package/dist/config/zod-schema.session.js +6 -1
- package/dist/control-ui/apple-touch-icon.png +0 -0
- package/dist/control-ui/assets/index-BKPyesll.css +1 -0
- package/dist/control-ui/assets/{index-CxLFx0Ae.js → index-DFDgq9AK.js} +397 -366
- package/dist/control-ui/assets/index-DFDgq9AK.js.map +1 -0
- package/dist/control-ui/favicon-32.png +0 -0
- package/dist/control-ui/favicon.svg +22 -0
- package/dist/control-ui/index.html +7 -5
- package/dist/daemon/constants.js +19 -25
- package/dist/daemon/inspect.js +64 -28
- package/dist/daemon/launchd.js +7 -7
- package/dist/daemon/node-service.js +14 -14
- package/dist/daemon/paths.js +3 -3
- package/dist/daemon/program-args.js +1 -1
- package/dist/daemon/schtasks.js +6 -6
- package/dist/daemon/service-env.js +25 -21
- package/dist/daemon/systemd-hints.js +1 -1
- package/dist/daemon/systemd-unit.js +1 -1
- package/dist/daemon/systemd.js +6 -6
- package/dist/discord/send.outbound.js +4 -4
- package/dist/discord/send.shared.js +32 -1
- package/dist/discord/targets.js +79 -0
- package/dist/entry.js +9 -8
- package/dist/gateway/auth.js +6 -3
- package/dist/gateway/call.js +3 -1
- package/dist/gateway/control-ui.js +4 -4
- package/dist/gateway/hooks.js +3 -1
- package/dist/gateway/http-utils.js +5 -3
- package/dist/gateway/openai-http.js +3 -3
- package/dist/gateway/openresponses-http.js +4 -4
- package/dist/gateway/protocol/client-info.js +5 -5
- package/dist/gateway/server/ws-connection/message-handler.js +1 -1
- package/dist/gateway/server-browser.js +2 -2
- package/dist/gateway/server-constants.js +2 -2
- package/dist/gateway/server-cron.js +1 -1
- package/dist/gateway/server-discovery-runtime.js +12 -4
- package/dist/gateway/server-discovery.js +7 -7
- package/dist/gateway/server-http.js +1 -1
- package/dist/gateway/server-methods/config.js +2 -2
- package/dist/gateway/server-methods/logs.js +1 -1
- package/dist/gateway/server-methods/update.js +2 -2
- package/dist/gateway/server-plugins.js +2 -2
- package/dist/gateway/server-reload-handlers.js +5 -5
- package/dist/gateway/server-runtime-config.js +3 -3
- package/dist/gateway/server-startup.js +6 -6
- package/dist/gateway/server.impl.js +8 -7
- package/dist/gateway/session-utils.fs.js +2 -1
- package/dist/gateway/test-helpers.mocks.js +8 -6
- package/dist/gateway/test-helpers.server.js +28 -28
- package/dist/gateway/tools-invoke-http.js +40 -4
- package/dist/hooks/bundled/boot-md/HOOK.md +3 -3
- package/dist/hooks/bundled/command-logger/HOOK.md +12 -12
- package/dist/hooks/bundled/command-logger/handler.js +2 -1
- package/dist/hooks/bundled/session-memory/HOOK.md +30 -7
- package/dist/hooks/bundled/session-memory/handler.js +19 -12
- package/dist/hooks/bundled/soul-evil/HOOK.md +5 -5
- package/dist/hooks/bundled-dir.js +2 -2
- package/dist/hooks/config.js +1 -1
- package/dist/hooks/frontmatter.js +11 -3
- package/dist/hooks/gmail-ops.js +1 -1
- package/dist/hooks/gmail-watcher.js +1 -1
- package/dist/hooks/hooks-status.js +2 -2
- package/dist/hooks/install.js +8 -8
- package/dist/hooks/internal-hooks.js +1 -1
- package/dist/hooks/llm-slug-generator.js +1 -1
- package/dist/hooks/loader.js +1 -1
- package/dist/hooks/plugin-hooks.js +2 -2
- package/dist/hooks/workspace.js +9 -9
- package/dist/imessage/monitor/monitor-provider.js +2 -2
- package/dist/index.js +4 -4
- package/dist/infra/bonjour-discovery.js +21 -17
- package/dist/infra/bonjour.js +10 -9
- package/dist/infra/device-identity.js +1 -1
- package/dist/infra/diagnostic-flags.js +1 -1
- package/dist/infra/dotenv.js +1 -1
- package/dist/infra/exec-approvals.js +2 -2
- package/dist/infra/gateway-lock.js +3 -2
- package/dist/infra/machine-name.js +1 -1
- package/dist/infra/{moltbot-root.js → openclaw-root.js} +2 -2
- package/dist/infra/outbound/outbound-session.js +18 -0
- package/dist/infra/outbound/targets.js +1 -1
- package/dist/infra/path-env.js +10 -9
- package/dist/infra/ports-format.js +3 -2
- package/dist/infra/ports.js +2 -2
- package/dist/infra/provider-usage.auth.js +33 -0
- package/dist/infra/provider-usage.fetch.claude.js +1 -1
- package/dist/infra/provider-usage.fetch.minimax.js +1 -1
- package/dist/infra/provider-usage.load.js +6 -0
- package/dist/infra/provider-usage.shared.js +2 -0
- package/dist/infra/restart-sentinel.js +1 -1
- package/dist/infra/restart.js +4 -4
- package/dist/infra/runtime-guard.js +2 -2
- package/dist/infra/shell-env.js +4 -4
- package/dist/infra/ssh-config.js +2 -1
- package/dist/infra/ssh-tunnel.js +8 -1
- package/dist/infra/state-migrations.js +165 -6
- package/dist/infra/system-presence.js +1 -1
- package/dist/infra/tailscale.js +1 -1
- package/dist/infra/tls/gateway.js +1 -1
- package/dist/infra/unhandled-rejections.js +56 -33
- package/dist/infra/update-check.js +1 -1
- package/dist/infra/update-global.js +21 -11
- package/dist/infra/update-runner.js +7 -7
- package/dist/infra/update-startup.js +3 -3
- package/dist/infra/voicewake.js +1 -1
- package/dist/infra/warnings.js +1 -1
- package/dist/infra/widearea-dns.js +31 -14
- package/dist/logging/logger.js +4 -4
- package/dist/macos/gateway-daemon.js +9 -6
- package/dist/macos/relay-smoke.js +1 -1
- package/dist/macos/relay.js +6 -6
- package/dist/media/host.js +1 -1
- package/dist/media/image-ops.js +3 -3
- package/dist/media/input-files.js +1 -1
- package/dist/media/mime.js +3 -0
- package/dist/media-understanding/apply.js +278 -1
- package/dist/media-understanding/attachments.js +1 -1
- package/dist/media-understanding/providers/image.js +2 -2
- package/dist/media-understanding/runner.js +1 -1
- package/dist/memory/batch-gemini.js +2 -2
- package/dist/memory/batch-openai.js +1 -1
- package/dist/memory/embeddings-gemini.js +1 -1
- package/dist/memory/embeddings.js +1 -1
- package/dist/memory/internal.js +49 -16
- package/dist/memory/manager-cache-key.js +1 -0
- package/dist/memory/manager.js +62 -10
- package/dist/memory/sync-memory-files.js +1 -1
- package/dist/node-host/runner.js +6 -6
- package/dist/pairing/pairing-messages.js +2 -2
- package/dist/plugins/bundled-dir.js +1 -1
- package/dist/plugins/cli.js +2 -2
- package/dist/plugins/config-state.js +60 -0
- package/dist/plugins/discovery.js +14 -12
- package/dist/plugins/install.js +8 -8
- package/dist/plugins/loader.js +4 -7
- package/dist/plugins/manifest-registry.js +4 -4
- package/dist/plugins/manifest.js +4 -7
- package/dist/plugins/providers.js +2 -2
- package/dist/plugins/registry.js +2 -2
- package/dist/plugins/runtime.js +1 -1
- package/dist/plugins/status.js +2 -2
- package/dist/plugins/tools.js +2 -2
- package/dist/plugins/update.js +3 -3
- package/dist/providers/qwen-portal-oauth.js +1 -1
- package/dist/routing/resolve-route.js +2 -0
- package/dist/routing/session-key.js +5 -0
- package/dist/security/audit-extra.js +2 -2
- package/dist/security/audit.js +7 -7
- package/dist/shared/text/reasoning-tags.js +44 -3
- package/dist/slack/monitor/commands.js +4 -3
- package/dist/slack/monitor/slash.js +62 -59
- package/dist/slack/monitor.test-helpers.js +1 -1
- package/dist/telegram/accounts.js +1 -1
- package/dist/telegram/bot/delivery.js +26 -3
- package/dist/telegram/bot/helpers.js +13 -2
- package/dist/telegram/bot-message-context.js +8 -4
- package/dist/telegram/bot-message-dispatch.js +36 -5
- package/dist/telegram/bot-native-commands.js +50 -11
- package/dist/telegram/bot.js +7 -5
- package/dist/telegram/download.js +1 -1
- package/dist/telegram/monitor.js +19 -1
- package/dist/telegram/network-config.js +2 -2
- package/dist/telegram/network-errors.js +4 -0
- package/dist/terminal/links.js +1 -1
- package/dist/tts/tts.js +12 -6
- package/dist/tui/gateway-chat.js +3 -3
- package/dist/tui/tui.js +1 -1
- package/dist/utils.js +12 -3
- package/dist/version.js +3 -3
- package/dist/web/active-listener.js +1 -1
- package/dist/web/auth-store.js +1 -1
- package/dist/web/auto-reply/monitor/broadcast.js +2 -0
- package/dist/web/auto-reply/monitor/process-message.js +1 -1
- package/dist/web/auto-reply/monitor.js +1 -1
- package/dist/web/login.js +1 -1
- package/dist/web/session.js +2 -2
- package/dist/wizard/onboarding.finalize.js +24 -21
- package/dist/wizard/onboarding.gateway-config.js +1 -1
- package/dist/wizard/onboarding.js +11 -11
- package/docs/CNAME +1 -1
- package/docs/_config.yml +3 -3
- package/docs/_layouts/default.html +9 -9
- package/docs/assets/openclaw-logo-text-dark.png +0 -0
- package/docs/assets/openclaw-logo-text.png +0 -0
- package/docs/assets/theme.js +1 -1
- package/docs/automation/auth-monitoring.md +7 -7
- package/docs/automation/cron-jobs.md +19 -19
- package/docs/automation/cron-vs-heartbeat.md +7 -7
- package/docs/automation/gmail-pubsub.md +25 -25
- package/docs/automation/poll.md +7 -7
- package/docs/automation/webhook.md +5 -5
- package/docs/bedrock.md +10 -10
- package/docs/brave-search.md +1 -1
- package/docs/broadcast-groups.md +6 -6
- package/docs/channels/bluebubbles.md +12 -12
- package/docs/channels/discord.md +15 -15
- package/docs/channels/googlechat.md +16 -16
- package/docs/channels/imessage.md +13 -13
- package/docs/channels/index.md +4 -4
- package/docs/channels/line.md +6 -6
- package/docs/channels/location.md +1 -1
- package/docs/channels/matrix.md +14 -14
- package/docs/channels/mattermost.md +8 -8
- package/docs/channels/msteams.md +26 -26
- package/docs/channels/nextcloud-talk.md +7 -7
- package/docs/channels/nostr.md +9 -9
- package/docs/channels/signal.md +9 -9
- package/docs/channels/slack.md +16 -16
- package/docs/channels/telegram.md +23 -23
- package/docs/channels/tlon.md +5 -5
- package/docs/channels/troubleshooting.md +2 -2
- package/docs/channels/twitch.md +14 -14
- package/docs/channels/whatsapp.md +26 -26
- package/docs/channels/zalo.md +8 -8
- package/docs/channels/zalouser.md +12 -12
- package/docs/cli/acp.md +24 -24
- package/docs/cli/agent.md +6 -6
- package/docs/cli/agents.md +12 -12
- package/docs/cli/approvals.md +14 -14
- package/docs/cli/browser.md +24 -24
- package/docs/cli/channels.md +21 -21
- package/docs/cli/config.md +15 -15
- package/docs/cli/configure.md +6 -6
- package/docs/cli/cron.md +5 -5
- package/docs/cli/dashboard.md +4 -4
- package/docs/cli/devices.md +13 -13
- package/docs/cli/directory.md +12 -12
- package/docs/cli/dns.md +5 -6
- package/docs/cli/docs.md +5 -5
- package/docs/cli/doctor.md +11 -11
- package/docs/cli/gateway.md +26 -26
- package/docs/cli/health.md +5 -5
- package/docs/cli/hooks.md +35 -35
- package/docs/cli/index.md +42 -42
- package/docs/cli/logs.md +6 -6
- package/docs/cli/memory.md +12 -11
- package/docs/cli/message.md +11 -11
- package/docs/cli/models.md +15 -15
- package/docs/cli/node.md +14 -14
- package/docs/cli/nodes.md +14 -14
- package/docs/cli/onboard.md +7 -7
- package/docs/cli/pairing.md +4 -4
- package/docs/cli/plugins.md +16 -16
- package/docs/cli/reset.md +5 -5
- package/docs/cli/sandbox.md +28 -28
- package/docs/cli/security.md +6 -6
- package/docs/cli/sessions.md +5 -5
- package/docs/cli/setup.md +6 -6
- package/docs/cli/skills.md +6 -6
- package/docs/cli/status.md +7 -7
- package/docs/cli/system.md +6 -6
- package/docs/cli/tui.md +5 -5
- package/docs/cli/uninstall.md +5 -5
- package/docs/cli/update.md +20 -20
- package/docs/cli/voicecall.md +9 -9
- package/docs/cli/webhooks.md +5 -5
- package/docs/concepts/agent-loop.md +5 -5
- package/docs/concepts/agent-workspace.md +27 -27
- package/docs/concepts/agent.md +12 -12
- package/docs/concepts/architecture.md +2 -2
- package/docs/concepts/channel-routing.md +5 -5
- package/docs/concepts/compaction.md +5 -5
- package/docs/concepts/context.md +6 -6
- package/docs/concepts/group-messages.md +7 -7
- package/docs/concepts/groups.md +5 -5
- package/docs/concepts/markdown-formatting.md +3 -3
- package/docs/concepts/memory.md +41 -19
- package/docs/concepts/messages.md +4 -4
- package/docs/concepts/model-failover.md +14 -14
- package/docs/concepts/model-providers.md +25 -24
- package/docs/concepts/models.md +27 -27
- package/docs/concepts/multi-agent.md +31 -31
- package/docs/concepts/oauth.md +22 -22
- package/docs/concepts/presence.md +2 -2
- package/docs/concepts/retry.md +1 -1
- package/docs/concepts/session-pruning.md +1 -1
- package/docs/concepts/session-tool.md +4 -4
- package/docs/concepts/session.md +18 -16
- package/docs/concepts/streaming.md +3 -3
- package/docs/concepts/system-prompt.md +11 -11
- package/docs/concepts/timezone.md +2 -2
- package/docs/concepts/typebox.md +3 -3
- package/docs/concepts/typing-indicators.md +2 -2
- package/docs/concepts/usage-tracking.md +3 -3
- package/docs/date-time.md +2 -2
- package/docs/debug/node-issue.md +6 -6
- package/docs/debugging.md +18 -18
- package/docs/diagnostics/flags.md +7 -7
- package/docs/docs.json +21 -5
- package/docs/environment.md +7 -7
- package/docs/experiments/plans/cron-add-hardening.md +1 -1
- package/docs/experiments/plans/openresponses-gateway.md +2 -2
- package/docs/experiments/research/memory.md +12 -12
- package/docs/gateway/authentication.md +22 -22
- package/docs/gateway/background-process.md +2 -2
- package/docs/gateway/bonjour.md +25 -25
- package/docs/gateway/bridge-protocol.md +2 -2
- package/docs/gateway/cli-backends.md +12 -12
- package/docs/gateway/configuration-examples.md +26 -25
- package/docs/gateway/configuration.md +155 -153
- package/docs/gateway/discovery.md +10 -10
- package/docs/gateway/doctor.md +27 -27
- package/docs/gateway/gateway-lock.md +1 -1
- package/docs/gateway/health.md +11 -11
- package/docs/gateway/heartbeat.md +5 -5
- package/docs/gateway/index.md +63 -63
- package/docs/gateway/local-models.md +2 -2
- package/docs/gateway/logging.md +8 -8
- package/docs/gateway/multiple-gateways.md +24 -24
- package/docs/gateway/openai-http-api.md +12 -12
- package/docs/gateway/openresponses-http-api.md +12 -12
- package/docs/gateway/pairing.md +9 -9
- package/docs/gateway/protocol.md +4 -4
- package/docs/gateway/remote-gateway-readme.md +10 -10
- package/docs/gateway/remote.md +4 -4
- package/docs/gateway/sandbox-vs-tool-policy-vs-elevated.md +7 -7
- package/docs/gateway/sandboxing.md +6 -6
- package/docs/gateway/security/formal-verification.md +67 -14
- package/docs/gateway/security/index.md +56 -59
- package/docs/gateway/tailscale.md +10 -10
- package/docs/gateway/tools-invoke-http-api.md +5 -5
- package/docs/gateway/troubleshooting.md +112 -112
- package/docs/help/faq.md +338 -338
- package/docs/help/troubleshooting.md +16 -16
- package/docs/hooks/soul-evil.md +2 -2
- package/docs/hooks.md +62 -62
- package/docs/index.md +45 -36
- package/docs/install/ansible.md +35 -35
- package/docs/install/development-channels.md +10 -10
- package/docs/install/docker.md +45 -45
- package/docs/install/index.md +33 -33
- package/docs/install/installer.md +24 -24
- package/docs/install/migrating.md +36 -36
- package/docs/install/nix.md +18 -18
- package/docs/install/node.md +4 -4
- package/docs/install/uninstall.md +29 -29
- package/docs/install/updating.md +51 -51
- package/docs/logging.md +59 -59
- package/docs/multi-agent-sandbox-tools.md +15 -15
- package/docs/network.md +1 -1
- package/docs/nodes/audio.md +2 -2
- package/docs/nodes/camera.md +18 -18
- package/docs/nodes/images.md +4 -4
- package/docs/nodes/index.md +57 -57
- package/docs/nodes/location-command.md +2 -2
- package/docs/nodes/media-understanding.md +5 -5
- package/docs/nodes/talk.md +1 -1
- package/docs/nodes/voicewake.md +3 -3
- package/docs/northflank.mdx +9 -9
- package/docs/perplexity.md +2 -2
- package/docs/platforms/android.md +14 -14
- package/docs/platforms/digitalocean.md +26 -26
- package/docs/platforms/exe-dev.md +68 -130
- package/docs/platforms/fly.md +33 -33
- package/docs/platforms/gcp.md +58 -58
- package/docs/platforms/hetzner.md +45 -45
- package/docs/platforms/index.md +8 -8
- package/docs/platforms/ios.md +13 -13
- package/docs/platforms/linux.md +11 -11
- package/docs/platforms/mac/bundled-gateway.md +14 -14
- package/docs/platforms/mac/canvas.md +14 -14
- package/docs/platforms/mac/child-process.md +5 -5
- package/docs/platforms/mac/dev-setup.md +10 -10
- package/docs/platforms/mac/health.md +2 -2
- package/docs/platforms/mac/icon.md +1 -1
- package/docs/platforms/mac/logging.md +4 -4
- package/docs/platforms/mac/menu-bar.md +1 -1
- package/docs/platforms/mac/peekaboo.md +9 -9
- package/docs/platforms/mac/permissions.md +1 -1
- package/docs/platforms/mac/release.md +18 -18
- package/docs/platforms/mac/remote.md +14 -14
- package/docs/platforms/mac/signing.md +7 -7
- package/docs/platforms/mac/skills.md +4 -4
- package/docs/platforms/mac/webchat.md +1 -1
- package/docs/platforms/mac/xpc.md +4 -4
- package/docs/platforms/macos-vm.md +27 -27
- package/docs/platforms/macos.md +16 -16
- package/docs/platforms/oracle.md +35 -35
- package/docs/platforms/raspberry-pi.md +22 -22
- package/docs/platforms/windows.md +11 -11
- package/docs/plugin.md +65 -65
- package/docs/plugins/agent-tools.md +1 -1
- package/docs/plugins/manifest.md +4 -4
- package/docs/plugins/voice-call.md +12 -12
- package/docs/plugins/zalouser.md +9 -9
- package/docs/prose.md +9 -9
- package/docs/providers/anthropic.md +16 -16
- package/docs/providers/claude-max-api-proxy.md +4 -4
- package/docs/providers/deepgram.md +2 -2
- package/docs/providers/github-copilot.md +11 -11
- package/docs/providers/glm.md +4 -4
- package/docs/providers/index.md +4 -3
- package/docs/providers/minimax.md +9 -9
- package/docs/providers/models.md +3 -3
- package/docs/providers/moonshot.md +15 -4
- package/docs/providers/ollama.md +11 -11
- package/docs/providers/openai.md +6 -6
- package/docs/providers/opencode.md +3 -3
- package/docs/providers/openrouter.md +3 -3
- package/docs/providers/qwen.md +6 -6
- package/docs/providers/synthetic.md +4 -4
- package/docs/providers/venice.md +23 -23
- package/docs/providers/vercel-ai-gateway.md +4 -4
- package/docs/providers/xiaomi.md +62 -0
- package/docs/providers/zai.md +5 -5
- package/docs/railway.mdx +8 -8
- package/docs/refactor/exec-host.md +5 -5
- package/docs/refactor/plugin-sdk.md +12 -12
- package/docs/refactor/strict-config.md +11 -11
- package/docs/reference/AGENTS.default.md +17 -17
- package/docs/reference/RELEASING.md +29 -29
- package/docs/reference/api-usage-costs.md +6 -6
- package/docs/reference/device-models.md +7 -7
- package/docs/reference/rpc.md +3 -3
- package/docs/reference/session-management-compaction.md +19 -19
- package/docs/reference/templates/AGENTS.dev.md +1 -1
- package/docs/reference/templates/BOOT.md +1 -1
- package/docs/reference/templates/IDENTITY.md +1 -1
- package/docs/reference/templates/TOOLS.dev.md +1 -1
- package/docs/reference/templates/USER.dev.md +2 -2
- package/docs/reference/test.md +2 -2
- package/docs/reference/transcript-hygiene.md +1 -1
- package/docs/render.mdx +13 -13
- package/docs/scripts.md +1 -1
- package/docs/security/formal-verification.md +66 -13
- package/docs/start/getting-started.md +29 -29
- package/docs/start/hubs.md +2 -2
- package/docs/start/lore.md +14 -14
- package/docs/start/onboarding.md +7 -7
- package/docs/start/{clawd.md → openclaw.md} +35 -35
- package/docs/start/pairing.md +10 -10
- package/docs/start/setup.md +22 -22
- package/docs/start/showcase.md +32 -32
- package/docs/start/wizard.md +30 -30
- package/docs/testing.md +56 -56
- package/docs/token-use.md +7 -7
- package/docs/tools/agent-send.md +10 -10
- package/docs/tools/browser-linux-troubleshooting.md +16 -16
- package/docs/tools/browser-login.md +6 -6
- package/docs/tools/browser.md +126 -126
- package/docs/tools/chrome-extension.md +17 -17
- package/docs/tools/clawdhub.md +7 -7
- package/docs/tools/creating-skills.md +6 -6
- package/docs/tools/exec-approvals.md +5 -5
- package/docs/tools/exec.md +4 -4
- package/docs/tools/firecrawl.md +2 -2
- package/docs/tools/index.md +13 -13
- package/docs/tools/llm-task.md +2 -2
- package/docs/tools/lobster.md +13 -13
- package/docs/tools/skills-config.md +2 -2
- package/docs/tools/skills.md +31 -31
- package/docs/tools/slash-commands.md +8 -8
- package/docs/tools/web.md +8 -8
- package/docs/tts.md +11 -11
- package/docs/tui.md +7 -7
- package/docs/vps.md +1 -1
- package/docs/web/control-ui.md +8 -8
- package/docs/web/dashboard.md +6 -6
- package/docs/web/index.md +5 -5
- package/extensions/bluebubbles/index.ts +3 -3
- package/extensions/bluebubbles/package.json +5 -5
- package/extensions/bluebubbles/src/accounts.ts +9 -9
- package/extensions/bluebubbles/src/actions.test.ts +22 -22
- package/extensions/bluebubbles/src/actions.ts +6 -6
- package/extensions/bluebubbles/src/attachments.ts +2 -2
- package/extensions/bluebubbles/src/channel.ts +17 -17
- package/extensions/bluebubbles/src/chat.ts +2 -2
- package/extensions/bluebubbles/src/config-schema.ts +1 -1
- package/extensions/bluebubbles/src/media-send.ts +2 -2
- package/extensions/bluebubbles/src/monitor.test.ts +48 -48
- package/extensions/bluebubbles/src/monitor.ts +6 -6
- package/extensions/bluebubbles/src/onboarding.ts +9 -9
- package/extensions/bluebubbles/src/reactions.ts +2 -2
- package/extensions/bluebubbles/src/runtime.ts +1 -1
- package/extensions/bluebubbles/src/send.ts +2 -2
- package/extensions/copilot-proxy/README.md +3 -3
- package/extensions/copilot-proxy/index.ts +1 -1
- package/extensions/copilot-proxy/package.json +4 -4
- package/extensions/diagnostics-otel/index.ts +3 -3
- package/extensions/diagnostics-otel/package.json +4 -4
- package/extensions/diagnostics-otel/src/service.test.ts +15 -15
- package/extensions/diagnostics-otel/src/service.ts +85 -85
- package/extensions/discord/index.ts +3 -3
- package/extensions/discord/package.json +4 -4
- package/extensions/discord/src/channel.ts +1 -1
- package/extensions/discord/src/runtime.ts +1 -1
- package/extensions/google-antigravity-auth/README.md +3 -3
- package/extensions/google-antigravity-auth/index.ts +2 -2
- package/extensions/google-antigravity-auth/package.json +4 -4
- package/extensions/google-gemini-cli-auth/README.md +5 -5
- package/extensions/google-gemini-cli-auth/index.ts +3 -3
- package/extensions/google-gemini-cli-auth/oauth.ts +4 -4
- package/extensions/google-gemini-cli-auth/package.json +4 -4
- package/extensions/googlechat/index.ts +4 -4
- package/extensions/googlechat/node_modules/.bin/openclaw +16 -0
- package/extensions/googlechat/node_modules/.bin/openclaw.CMD +7 -0
- package/extensions/googlechat/node_modules/.bin/openclaw.ps1 +28 -0
- package/extensions/googlechat/package.json +7 -7
- package/extensions/googlechat/src/accounts.ts +9 -9
- package/extensions/googlechat/src/actions.ts +8 -8
- package/extensions/googlechat/src/api.ts +1 -1
- package/extensions/googlechat/src/channel.ts +23 -23
- package/extensions/googlechat/src/monitor.ts +9 -9
- package/extensions/googlechat/src/onboarding.ts +11 -11
- package/extensions/googlechat/src/runtime.ts +1 -1
- package/extensions/googlechat/src/types.config.ts +1 -1
- package/extensions/imessage/index.ts +3 -3
- package/extensions/imessage/package.json +4 -4
- package/extensions/imessage/src/channel.ts +1 -1
- package/extensions/imessage/src/runtime.ts +1 -1
- package/extensions/line/index.ts +3 -3
- package/extensions/line/node_modules/.bin/openclaw +16 -0
- package/extensions/line/node_modules/.bin/openclaw.CMD +7 -0
- package/extensions/line/node_modules/.bin/openclaw.ps1 +28 -0
- package/extensions/line/package.json +6 -6
- package/extensions/line/src/card-command.ts +3 -3
- package/extensions/line/src/channel.logout.test.ts +4 -4
- package/extensions/line/src/channel.sendPayload.test.ts +8 -8
- package/extensions/line/src/channel.ts +5 -5
- package/extensions/line/src/runtime.ts +1 -1
- package/extensions/llm-task/README.md +4 -4
- package/extensions/llm-task/index.ts +2 -2
- package/extensions/llm-task/package.json +4 -4
- package/extensions/llm-task/src/llm-task-tool.ts +6 -6
- package/extensions/lobster/README.md +7 -7
- package/extensions/lobster/index.ts +2 -2
- package/extensions/lobster/package.json +3 -3
- package/extensions/lobster/src/lobster-tool.test.ts +7 -7
- package/extensions/lobster/src/lobster-tool.ts +2 -2
- package/extensions/matrix/CHANGELOG.md +14 -9
- package/extensions/matrix/index.ts +3 -3
- package/extensions/matrix/node_modules/.bin/markdown-it +0 -5
- package/extensions/matrix/node_modules/.bin/markdown-it.CMD +0 -5
- package/extensions/matrix/node_modules/.bin/markdown-it.ps1 +0 -13
- package/extensions/matrix/node_modules/.bin/openclaw +16 -0
- package/extensions/matrix/node_modules/.bin/openclaw.CMD +7 -0
- package/extensions/matrix/node_modules/.bin/openclaw.ps1 +28 -0
- package/extensions/matrix/package.json +6 -6
- package/extensions/matrix/src/actions.ts +1 -1
- package/extensions/matrix/src/channel.directory.test.ts +1 -1
- package/extensions/matrix/src/channel.ts +1 -1
- package/extensions/matrix/src/config-schema.ts +1 -1
- package/extensions/matrix/src/directory-live.ts +1 -1
- package/extensions/matrix/src/group-mentions.ts +1 -1
- package/extensions/matrix/src/matrix/accounts.ts +1 -1
- package/extensions/matrix/src/matrix/actions/client.ts +1 -1
- package/extensions/matrix/src/matrix/client/config.ts +1 -1
- package/extensions/matrix/src/matrix/deps.ts +1 -1
- package/extensions/matrix/src/matrix/monitor/allowlist.ts +1 -1
- package/extensions/matrix/src/matrix/monitor/auto-join.ts +1 -1
- package/extensions/matrix/src/matrix/monitor/events.ts +1 -1
- package/extensions/matrix/src/matrix/monitor/handler.ts +5 -5
- package/extensions/matrix/src/matrix/monitor/index.ts +1 -1
- package/extensions/matrix/src/matrix/monitor/location.ts +1 -1
- package/extensions/matrix/src/matrix/monitor/media.test.ts +1 -1
- package/extensions/matrix/src/matrix/monitor/replies.ts +1 -1
- package/extensions/matrix/src/matrix/monitor/rooms.ts +1 -1
- package/extensions/matrix/src/matrix/poll-types.ts +1 -1
- package/extensions/matrix/src/matrix/send/client.ts +1 -1
- package/extensions/matrix/src/matrix/send.test.ts +1 -1
- package/extensions/matrix/src/matrix/send.ts +1 -1
- package/extensions/matrix/src/onboarding.ts +2 -2
- package/extensions/matrix/src/outbound.ts +1 -1
- package/extensions/matrix/src/resolve-targets.ts +1 -1
- package/extensions/matrix/src/runtime.ts +1 -1
- package/extensions/matrix/src/tool-actions.ts +1 -1
- package/extensions/mattermost/index.ts +3 -3
- package/extensions/mattermost/package.json +5 -5
- package/extensions/mattermost/src/channel.ts +1 -1
- package/extensions/mattermost/src/config-schema.ts +1 -1
- package/extensions/mattermost/src/group-mentions.ts +1 -1
- package/extensions/mattermost/src/mattermost/accounts.ts +9 -9
- package/extensions/mattermost/src/mattermost/monitor-helpers.ts +5 -5
- package/extensions/mattermost/src/mattermost/monitor.ts +4 -4
- package/extensions/mattermost/src/onboarding-helpers.ts +4 -4
- package/extensions/mattermost/src/onboarding.ts +4 -4
- package/extensions/mattermost/src/runtime.ts +1 -1
- package/extensions/mattermost/src/types.ts +1 -1
- package/extensions/memory-core/index.ts +3 -3
- package/extensions/memory-core/node_modules/.bin/openclaw +16 -0
- package/extensions/memory-core/node_modules/.bin/openclaw.CMD +7 -0
- package/extensions/memory-core/node_modules/.bin/openclaw.ps1 +28 -0
- package/extensions/memory-core/package.json +6 -6
- package/extensions/memory-lancedb/config.ts +26 -2
- package/extensions/memory-lancedb/index.test.ts +3 -3
- package/extensions/memory-lancedb/index.ts +4 -4
- package/extensions/memory-lancedb/node_modules/.bin/openai +0 -5
- package/extensions/memory-lancedb/node_modules/.bin/openai.CMD +0 -5
- package/extensions/memory-lancedb/node_modules/.bin/openai.ps1 +0 -13
- package/extensions/memory-lancedb/{clawdbot.plugin.json → openclaw.plugin.json} +1 -1
- package/extensions/memory-lancedb/package.json +4 -4
- package/extensions/msteams/CHANGELOG.md +12 -7
- package/extensions/msteams/index.ts +3 -3
- package/extensions/msteams/node_modules/.bin/openclaw +16 -0
- package/extensions/msteams/node_modules/.bin/openclaw.CMD +7 -0
- package/extensions/msteams/node_modules/.bin/openclaw.ps1 +28 -0
- package/extensions/msteams/package.json +6 -6
- package/extensions/msteams/src/attachments.test.ts +1 -1
- package/extensions/msteams/src/channel.directory.test.ts +2 -2
- package/extensions/msteams/src/channel.ts +3 -3
- package/extensions/msteams/src/conversation-store-fs.test.ts +6 -5
- package/extensions/msteams/src/directory-live.ts +1 -1
- package/extensions/msteams/src/graph-upload.ts +4 -4
- package/extensions/msteams/src/media-helpers.ts +1 -1
- package/extensions/msteams/src/messenger.test.ts +1 -1
- package/extensions/msteams/src/messenger.ts +1 -1
- package/extensions/msteams/src/monitor-handler/message-handler.ts +1 -1
- package/extensions/msteams/src/monitor-handler.ts +2 -2
- package/extensions/msteams/src/monitor.ts +3 -3
- package/extensions/msteams/src/onboarding.ts +11 -11
- package/extensions/msteams/src/outbound.ts +1 -1
- package/extensions/msteams/src/policy.test.ts +1 -1
- package/extensions/msteams/src/policy.ts +2 -2
- package/extensions/msteams/src/polls-store.test.ts +1 -1
- package/extensions/msteams/src/polls.test.ts +6 -5
- package/extensions/msteams/src/polls.ts +9 -8
- package/extensions/msteams/src/probe.test.ts +1 -1
- package/extensions/msteams/src/probe.ts +1 -1
- package/extensions/msteams/src/reply-dispatcher.ts +3 -3
- package/extensions/msteams/src/runtime.ts +1 -1
- package/extensions/msteams/src/send-context.ts +2 -2
- package/extensions/msteams/src/send.ts +5 -5
- package/extensions/msteams/src/token.ts +1 -1
- package/extensions/nextcloud-talk/index.ts +3 -3
- package/extensions/nextcloud-talk/package.json +5 -5
- package/extensions/nextcloud-talk/src/accounts.ts +2 -2
- package/extensions/nextcloud-talk/src/channel.ts +8 -8
- package/extensions/nextcloud-talk/src/config-schema.ts +1 -1
- package/extensions/nextcloud-talk/src/inbound.ts +8 -8
- package/extensions/nextcloud-talk/src/monitor.ts +1 -1
- package/extensions/nextcloud-talk/src/onboarding.ts +2 -2
- package/extensions/nextcloud-talk/src/policy.ts +2 -2
- package/extensions/nextcloud-talk/src/room-info.ts +1 -1
- package/extensions/nextcloud-talk/src/runtime.ts +1 -1
- package/extensions/nextcloud-talk/src/types.ts +1 -1
- package/extensions/nostr/CHANGELOG.md +9 -4
- package/extensions/nostr/README.md +5 -5
- package/extensions/nostr/index.ts +6 -6
- package/extensions/nostr/node_modules/.bin/openclaw +16 -0
- package/extensions/nostr/node_modules/.bin/openclaw.CMD +7 -0
- package/extensions/nostr/node_modules/.bin/openclaw.ps1 +28 -0
- package/extensions/nostr/package.json +6 -6
- package/extensions/nostr/src/channel.ts +2 -2
- package/extensions/nostr/src/config-schema.ts +1 -1
- package/extensions/nostr/src/nostr-state-store.test.ts +9 -8
- package/extensions/nostr/src/runtime.ts +1 -1
- package/extensions/nostr/src/types.ts +4 -4
- package/extensions/open-prose/index.ts +2 -2
- package/extensions/open-prose/package.json +3 -3
- package/extensions/open-prose/skills/prose/SKILL.md +5 -5
- package/extensions/open-prose/skills/prose/prose.md +4 -4
- package/extensions/qwen-portal-auth/README.md +3 -3
- package/extensions/qwen-portal-auth/index.ts +1 -1
- package/extensions/signal/index.ts +3 -3
- package/extensions/signal/package.json +4 -4
- package/extensions/signal/src/channel.ts +1 -1
- package/extensions/signal/src/runtime.ts +1 -1
- package/extensions/slack/index.ts +3 -3
- package/extensions/slack/package.json +4 -4
- package/extensions/slack/src/channel.ts +1 -1
- package/extensions/slack/src/runtime.ts +1 -1
- package/extensions/telegram/index.ts +3 -3
- package/extensions/telegram/package.json +4 -4
- package/extensions/telegram/src/channel.ts +3 -3
- package/extensions/telegram/src/runtime.ts +1 -1
- package/extensions/tlon/README.md +3 -3
- package/extensions/tlon/index.ts +3 -3
- package/extensions/tlon/package.json +5 -5
- package/extensions/tlon/src/channel.ts +15 -15
- package/extensions/tlon/src/config-schema.ts +1 -1
- package/extensions/tlon/src/monitor/discovery.ts +1 -1
- package/extensions/tlon/src/monitor/history.ts +1 -1
- package/extensions/tlon/src/monitor/index.ts +3 -3
- package/extensions/tlon/src/onboarding.ts +4 -4
- package/extensions/tlon/src/runtime.ts +1 -1
- package/extensions/tlon/src/types.ts +3 -3
- package/extensions/twitch/CHANGELOG.md +6 -1
- package/extensions/twitch/README.md +8 -8
- package/extensions/twitch/index.ts +3 -3
- package/extensions/twitch/node_modules/.bin/openclaw +16 -0
- package/extensions/twitch/node_modules/.bin/openclaw.CMD +7 -0
- package/extensions/twitch/node_modules/.bin/openclaw.ps1 +28 -0
- package/extensions/twitch/package.json +5 -5
- package/extensions/twitch/src/actions.ts +1 -1
- package/extensions/twitch/src/config-schema.ts +1 -1
- package/extensions/twitch/src/config.ts +3 -3
- package/extensions/twitch/src/monitor.ts +3 -3
- package/extensions/twitch/src/onboarding.test.ts +1 -1
- package/extensions/twitch/src/onboarding.ts +13 -13
- package/extensions/twitch/src/outbound.test.ts +2 -2
- package/extensions/twitch/src/outbound.ts +2 -2
- package/extensions/twitch/src/plugin.test.ts +2 -2
- package/extensions/twitch/src/plugin.ts +9 -9
- package/extensions/twitch/src/runtime.ts +1 -1
- package/extensions/twitch/src/send.test.ts +2 -2
- package/extensions/twitch/src/send.ts +5 -5
- package/extensions/twitch/src/token.test.ts +12 -12
- package/extensions/twitch/src/token.ts +7 -7
- package/extensions/twitch/src/twitch-client.ts +4 -4
- package/extensions/twitch/src/types.ts +3 -3
- package/extensions/twitch/src/utils/markdown.ts +1 -1
- package/extensions/voice-call/CHANGELOG.md +16 -11
- package/extensions/voice-call/README.md +16 -16
- package/extensions/voice-call/package.json +4 -4
- package/extensions/voice-call/src/cli.ts +16 -4
- package/extensions/voice-call/src/core-bridge.ts +5 -5
- package/extensions/voice-call/src/manager.test.ts +2 -2
- package/extensions/voice-call/src/manager.ts +17 -5
- package/extensions/voice-call/src/response-generator.ts +1 -1
- package/extensions/whatsapp/index.ts +3 -3
- package/extensions/whatsapp/package.json +4 -4
- package/extensions/whatsapp/src/channel.ts +1 -1
- package/extensions/whatsapp/src/runtime.ts +1 -1
- package/extensions/zalo/CHANGELOG.md +14 -9
- package/extensions/zalo/README.md +4 -4
- package/extensions/zalo/index.ts +3 -3
- package/extensions/zalo/node_modules/.bin/openclaw +16 -0
- package/extensions/zalo/node_modules/.bin/openclaw.CMD +7 -0
- package/extensions/zalo/node_modules/.bin/openclaw.ps1 +28 -0
- package/extensions/zalo/package.json +6 -6
- package/extensions/zalo/src/accounts.ts +9 -9
- package/extensions/zalo/src/actions.ts +6 -6
- package/extensions/zalo/src/channel.directory.test.ts +2 -2
- package/extensions/zalo/src/channel.ts +20 -20
- package/extensions/zalo/src/config-schema.ts +1 -1
- package/extensions/zalo/src/monitor.ts +9 -9
- package/extensions/zalo/src/monitor.webhook.test.ts +2 -2
- package/extensions/zalo/src/onboarding.ts +27 -27
- package/extensions/zalo/src/runtime.ts +1 -1
- package/extensions/zalo/src/send.ts +2 -2
- package/extensions/zalo/src/status-issues.ts +1 -1
- package/extensions/zalo/src/token.ts +1 -1
- package/extensions/zalouser/CHANGELOG.md +9 -4
- package/extensions/zalouser/README.md +18 -18
- package/extensions/zalouser/index.ts +3 -3
- package/extensions/zalouser/node_modules/.bin/openclaw +16 -0
- package/extensions/zalouser/node_modules/.bin/openclaw.CMD +7 -0
- package/extensions/zalouser/node_modules/.bin/openclaw.ps1 +28 -0
- package/extensions/zalouser/package.json +6 -6
- package/extensions/zalouser/src/accounts.ts +10 -10
- package/extensions/zalouser/src/channel.ts +27 -27
- package/extensions/zalouser/src/config-schema.ts +1 -1
- package/extensions/zalouser/src/monitor.ts +5 -5
- package/extensions/zalouser/src/onboarding.ts +32 -32
- package/extensions/zalouser/src/runtime.ts +1 -1
- package/extensions/zalouser/src/status-issues.ts +2 -2
- package/openclaw.mjs +14 -0
- package/package.json +35 -25
- package/scripts/postinstall.js +1 -0
- package/skills/1password/SKILL.md +3 -3
- package/skills/apple-notes/SKILL.md +2 -2
- package/skills/apple-reminders/SKILL.md +1 -1
- package/skills/bear-notes/SKILL.md +1 -1
- package/skills/bird/SKILL.md +1 -1
- package/skills/blogwatcher/SKILL.md +1 -1
- package/skills/blucli/SKILL.md +1 -1
- package/skills/bluebubbles/SKILL.md +1 -1
- package/skills/camsnap/SKILL.md +1 -1
- package/skills/canvas/SKILL.md +6 -6
- package/skills/clawdhub/SKILL.md +2 -2
- package/skills/coding-agent/SKILL.md +6 -6
- package/skills/discord/SKILL.md +5 -5
- package/skills/eightctl/SKILL.md +1 -1
- package/skills/food-order/SKILL.md +1 -1
- package/skills/gemini/SKILL.md +1 -1
- package/skills/gifgrep/SKILL.md +1 -1
- package/skills/github/SKILL.md +1 -1
- package/skills/gog/SKILL.md +1 -1
- package/skills/goplaces/SKILL.md +1 -1
- package/skills/himalaya/SKILL.md +1 -1
- package/skills/imsg/SKILL.md +1 -1
- package/skills/local-places/SKILL.md +1 -1
- package/skills/mcporter/SKILL.md +1 -1
- package/skills/model-usage/SKILL.md +1 -1
- package/skills/nano-banana-pro/SKILL.md +3 -3
- package/skills/nano-banana-pro/scripts/generate_image.py +1 -1
- package/skills/nano-pdf/SKILL.md +1 -1
- package/skills/notion/SKILL.md +1 -1
- package/skills/obsidian/SKILL.md +1 -1
- package/skills/openai-image-gen/SKILL.md +1 -1
- package/skills/openai-whisper/SKILL.md +1 -1
- package/skills/openai-whisper-api/SKILL.md +2 -2
- package/skills/openhue/SKILL.md +1 -1
- package/skills/oracle/SKILL.md +1 -1
- package/skills/ordercli/SKILL.md +1 -1
- package/skills/peekaboo/SKILL.md +1 -1
- package/skills/sag/SKILL.md +1 -1
- package/skills/session-logs/SKILL.md +1 -1
- package/skills/sherpa-onnx-tts/SKILL.md +2 -2
- package/skills/slack/SKILL.md +4 -4
- package/skills/songsee/SKILL.md +1 -1
- package/skills/sonoscli/SKILL.md +1 -1
- package/skills/spotify-player/SKILL.md +1 -1
- package/skills/summarize/SKILL.md +1 -1
- package/skills/things-mac/SKILL.md +3 -3
- package/skills/tmux/SKILL.md +7 -7
- package/skills/trello/SKILL.md +2 -2
- package/skills/video-frames/SKILL.md +1 -1
- package/skills/voice-call/SKILL.md +4 -4
- package/skills/wacli/SKILL.md +2 -2
- package/skills/weather/SKILL.md +1 -1
- package/assets/images/icon.png +0 -0
- package/dist/control-ui/assets/index-BAFzd9IE.css +0 -1
- package/dist/control-ui/assets/index-CxLFx0Ae.js.map +0 -1
- package/dist/control-ui/pixel_pig_icon.png +0 -0
- package/dist/daemon/legacy.js +0 -44
- package/dist/extension.js +0 -70
- /package/dist/config/{types.clawdbot.js → types.openclaw.js} +0 -0
- /package/docs/{whatsapp-clawd.jpg → whatsapp-openclaw.jpg} +0 -0
- /package/extensions/bluebubbles/{clawdbot.plugin.json → openclaw.plugin.json} +0 -0
- /package/extensions/copilot-proxy/{clawdbot.plugin.json → openclaw.plugin.json} +0 -0
- /package/extensions/diagnostics-otel/{clawdbot.plugin.json → openclaw.plugin.json} +0 -0
- /package/extensions/discord/{clawdbot.plugin.json → openclaw.plugin.json} +0 -0
- /package/extensions/google-antigravity-auth/{clawdbot.plugin.json → openclaw.plugin.json} +0 -0
- /package/extensions/google-gemini-cli-auth/{clawdbot.plugin.json → openclaw.plugin.json} +0 -0
- /package/extensions/googlechat/{clawdbot.plugin.json → openclaw.plugin.json} +0 -0
- /package/extensions/imessage/{clawdbot.plugin.json → openclaw.plugin.json} +0 -0
- /package/extensions/line/{clawdbot.plugin.json → openclaw.plugin.json} +0 -0
- /package/extensions/llm-task/{clawdbot.plugin.json → openclaw.plugin.json} +0 -0
- /package/extensions/lobster/{clawdbot.plugin.json → openclaw.plugin.json} +0 -0
- /package/extensions/matrix/{clawdbot.plugin.json → openclaw.plugin.json} +0 -0
- /package/extensions/mattermost/{clawdbot.plugin.json → openclaw.plugin.json} +0 -0
- /package/extensions/memory-core/{clawdbot.plugin.json → openclaw.plugin.json} +0 -0
- /package/extensions/msteams/{clawdbot.plugin.json → openclaw.plugin.json} +0 -0
- /package/extensions/nextcloud-talk/{clawdbot.plugin.json → openclaw.plugin.json} +0 -0
- /package/extensions/nostr/{clawdbot.plugin.json → openclaw.plugin.json} +0 -0
- /package/extensions/open-prose/{clawdbot.plugin.json → openclaw.plugin.json} +0 -0
- /package/extensions/qwen-portal-auth/{clawdbot.plugin.json → openclaw.plugin.json} +0 -0
- /package/extensions/signal/{clawdbot.plugin.json → openclaw.plugin.json} +0 -0
- /package/extensions/slack/{clawdbot.plugin.json → openclaw.plugin.json} +0 -0
- /package/extensions/telegram/{clawdbot.plugin.json → openclaw.plugin.json} +0 -0
- /package/extensions/tlon/{clawdbot.plugin.json → openclaw.plugin.json} +0 -0
- /package/extensions/twitch/{clawdbot.plugin.json → openclaw.plugin.json} +0 -0
- /package/extensions/voice-call/{clawdbot.plugin.json → openclaw.plugin.json} +0 -0
- /package/extensions/whatsapp/{clawdbot.plugin.json → openclaw.plugin.json} +0 -0
- /package/extensions/zalo/{clawdbot.plugin.json → openclaw.plugin.json} +0 -0
- /package/extensions/zalouser/{clawdbot.plugin.json → openclaw.plugin.json} +0 -0
package/docs/concepts/context.md
CHANGED
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
---
|
|
2
2
|
summary: "Context: what the model sees, how it is built, and how to inspect it"
|
|
3
3
|
read_when:
|
|
4
|
-
- You want to understand what “context” means in
|
|
4
|
+
- You want to understand what “context” means in OpenClaw
|
|
5
5
|
- You are debugging why the model “knows” something (or forgot it)
|
|
6
6
|
- You want to reduce context overhead (/context, /status, /compact)
|
|
7
7
|
---
|
|
8
8
|
# Context
|
|
9
9
|
|
|
10
|
-
“Context” is **everything
|
|
10
|
+
“Context” is **everything OpenClaw sends to the model for a run**. It is bounded by the model’s **context window** (token limit).
|
|
11
11
|
|
|
12
12
|
Beginner mental model:
|
|
13
|
-
- **System prompt** (
|
|
13
|
+
- **System prompt** (OpenClaw-built): rules, tools, skills list, time/runtime, and injected workspace files.
|
|
14
14
|
- **Conversation history**: your messages + the assistant’s messages for this session.
|
|
15
15
|
- **Tool calls/results + attachments**: command output, file reads, images/audio, etc.
|
|
16
16
|
|
|
@@ -83,9 +83,9 @@ Everything the model receives counts, including:
|
|
|
83
83
|
- Compaction summaries and pruning artifacts.
|
|
84
84
|
- Provider “wrappers” or hidden headers (not visible, still counted).
|
|
85
85
|
|
|
86
|
-
## How
|
|
86
|
+
## How OpenClaw builds the system prompt
|
|
87
87
|
|
|
88
|
-
The system prompt is **
|
|
88
|
+
The system prompt is **OpenClaw-owned** and rebuilt each run. It includes:
|
|
89
89
|
- Tool list + short descriptions.
|
|
90
90
|
- Skills list (metadata only; see below).
|
|
91
91
|
- Workspace location.
|
|
@@ -97,7 +97,7 @@ Full breakdown: [System Prompt](/concepts/system-prompt).
|
|
|
97
97
|
|
|
98
98
|
## Injected workspace files (Project Context)
|
|
99
99
|
|
|
100
|
-
By default,
|
|
100
|
+
By default, OpenClaw injects a fixed set of workspace files (if present):
|
|
101
101
|
- `AGENTS.md`
|
|
102
102
|
- `SOUL.md`
|
|
103
103
|
- `TOOLS.md`
|
|
@@ -19,7 +19,7 @@ Note: `agents.list[].groupChat.mentionPatterns` is now used by Telegram/Discord/
|
|
|
19
19
|
- Group system prompt: on the first turn of a group session (and whenever `/activation` changes the mode) we inject a short blurb into the system prompt like `You are replying inside the WhatsApp group "<subject>". Group members: Alice (+44...), Bob (+43...), … Activation: trigger-only … Address the specific sender noted in the message context.` If metadata isn’t available we still tell the agent it’s a group chat.
|
|
20
20
|
|
|
21
21
|
## Config example (WhatsApp)
|
|
22
|
-
Add a `groupChat` block to `~/.
|
|
22
|
+
Add a `groupChat` block to `~/.openclaw/openclaw.json` so display-name pings work even when WhatsApp strips the visual `@` in the text body:
|
|
23
23
|
|
|
24
24
|
```json5
|
|
25
25
|
{
|
|
@@ -37,7 +37,7 @@ Add a `groupChat` block to `~/.clawdbot/moltbot.json` so display-name pings work
|
|
|
37
37
|
groupChat: {
|
|
38
38
|
historyLimit: 50,
|
|
39
39
|
mentionPatterns: [
|
|
40
|
-
"@?
|
|
40
|
+
"@?openclaw",
|
|
41
41
|
"\\+?15555550123"
|
|
42
42
|
]
|
|
43
43
|
}
|
|
@@ -48,7 +48,7 @@ Add a `groupChat` block to `~/.clawdbot/moltbot.json` so display-name pings work
|
|
|
48
48
|
```
|
|
49
49
|
|
|
50
50
|
Notes:
|
|
51
|
-
- The regexes are case-insensitive; they cover a display-name ping like `@
|
|
51
|
+
- The regexes are case-insensitive; they cover a display-name ping like `@openclaw` and the raw number with or without `+`/spaces.
|
|
52
52
|
- WhatsApp still sends canonical mentions via `mentionedJids` when someone taps the contact, so the number fallback is rarely needed but is a useful safety net.
|
|
53
53
|
|
|
54
54
|
### Activation command (owner-only)
|
|
@@ -60,19 +60,19 @@ Use the group chat command:
|
|
|
60
60
|
Only the owner number (from `channels.whatsapp.allowFrom`, or the bot’s own E.164 when unset) can change this. Send `/status` as a standalone message in the group to see the current activation mode.
|
|
61
61
|
|
|
62
62
|
## How to use
|
|
63
|
-
1) Add your WhatsApp account (the one running
|
|
64
|
-
2) Say `@
|
|
63
|
+
1) Add your WhatsApp account (the one running OpenClaw) to the group.
|
|
64
|
+
2) Say `@openclaw …` (or include the number). Only allowlisted senders can trigger it unless you set `groupPolicy: "open"`.
|
|
65
65
|
3) The agent prompt will include recent group context plus the trailing `[from: …]` marker so it can address the right person.
|
|
66
66
|
4) Session-level directives (`/verbose on`, `/think high`, `/new` or `/reset`, `/compact`) apply only to that group’s session; send them as standalone messages so they register. Your personal DM session remains independent.
|
|
67
67
|
|
|
68
68
|
## Testing / verification
|
|
69
69
|
- Manual smoke:
|
|
70
|
-
- Send an `@
|
|
70
|
+
- Send an `@openclaw` ping in the group and confirm a reply that references the sender name.
|
|
71
71
|
- Send a second ping and verify the history block is included then cleared on the next turn.
|
|
72
72
|
- Check gateway logs (run with `--verbose`) to see `inbound web message` entries showing `from: <groupJid>` and the `[from: …]` suffix.
|
|
73
73
|
|
|
74
74
|
## Known considerations
|
|
75
75
|
- Heartbeats are intentionally skipped for groups to avoid noisy broadcasts.
|
|
76
76
|
- Echo suppression uses the combined batch string; if you send identical text twice without mentions, only the first will get a response.
|
|
77
|
-
- Session store entries will appear as `agent:<agentId>:whatsapp:group:<jid>` in the session store (`~/.
|
|
77
|
+
- Session store entries will appear as `agent:<agentId>:whatsapp:group:<jid>` in the session store (`~/.openclaw/agents/<agentId>/sessions/sessions.json` by default); a missing entry just means the group hasn’t triggered a run yet.
|
|
78
78
|
- Typing indicators in groups follow `agents.defaults.typingMode` (default: `message` when unmentioned).
|
package/docs/concepts/groups.md
CHANGED
|
@@ -5,17 +5,17 @@ read_when:
|
|
|
5
5
|
---
|
|
6
6
|
# Groups
|
|
7
7
|
|
|
8
|
-
|
|
8
|
+
OpenClaw treats group chats consistently across surfaces: WhatsApp, Telegram, Discord, Slack, Signal, iMessage, Microsoft Teams.
|
|
9
9
|
|
|
10
10
|
## Beginner intro (2 minutes)
|
|
11
|
-
|
|
12
|
-
If **you** are in a group,
|
|
11
|
+
OpenClaw “lives” on your own messaging accounts. There is no separate WhatsApp bot user.
|
|
12
|
+
If **you** are in a group, OpenClaw can see that group and respond there.
|
|
13
13
|
|
|
14
14
|
Default behavior:
|
|
15
15
|
- Groups are restricted (`groupPolicy: "allowlist"`).
|
|
16
16
|
- Replies require a mention unless you explicitly disable mention gating.
|
|
17
17
|
|
|
18
|
-
Translation: allowlisted senders can trigger
|
|
18
|
+
Translation: allowlisted senders can trigger OpenClaw by mentioning it.
|
|
19
19
|
|
|
20
20
|
> TL;DR
|
|
21
21
|
> - **DM access** is controlled by `*.allowFrom`.
|
|
@@ -215,7 +215,7 @@ Replying to a bot message counts as an implicit mention (when the channel suppor
|
|
|
215
215
|
{
|
|
216
216
|
id: "main",
|
|
217
217
|
groupChat: {
|
|
218
|
-
mentionPatterns: ["@
|
|
218
|
+
mentionPatterns: ["@openclaw", "openclaw", "\\+15555550123"],
|
|
219
219
|
historyLimit: 50
|
|
220
220
|
}
|
|
221
221
|
}
|
|
@@ -7,7 +7,7 @@ read_when:
|
|
|
7
7
|
---
|
|
8
8
|
# Markdown formatting
|
|
9
9
|
|
|
10
|
-
|
|
10
|
+
OpenClaw formats outbound Markdown by converting it into a shared intermediate
|
|
11
11
|
representation (IR) before rendering channel-specific output. The IR keeps the
|
|
12
12
|
source text intact while carrying style/link spans so chunking and rendering can
|
|
13
13
|
stay consistent across channels.
|
|
@@ -39,7 +39,7 @@ stay consistent across channels.
|
|
|
39
39
|
Input Markdown:
|
|
40
40
|
|
|
41
41
|
```markdown
|
|
42
|
-
Hello **world** — see [docs](https://docs.
|
|
42
|
+
Hello **world** — see [docs](https://docs.openclaw.ai).
|
|
43
43
|
```
|
|
44
44
|
|
|
45
45
|
IR (schematic):
|
|
@@ -51,7 +51,7 @@ IR (schematic):
|
|
|
51
51
|
{ "start": 6, "end": 11, "style": "bold" }
|
|
52
52
|
],
|
|
53
53
|
"links": [
|
|
54
|
-
{ "start": 19, "end": 23, "href": "https://docs.
|
|
54
|
+
{ "start": 19, "end": 23, "href": "https://docs.openclaw.ai" }
|
|
55
55
|
]
|
|
56
56
|
}
|
|
57
57
|
```
|
package/docs/concepts/memory.md
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
---
|
|
2
|
-
summary: "How
|
|
2
|
+
summary: "How OpenClaw memory works (workspace files + automatic memory flush)"
|
|
3
3
|
read_when:
|
|
4
4
|
- You want the memory file layout and workflow
|
|
5
5
|
- You want to tune the automatic pre-compaction memory flush
|
|
6
6
|
---
|
|
7
7
|
# Memory
|
|
8
8
|
|
|
9
|
-
|
|
9
|
+
OpenClaw memory is **plain Markdown in the agent workspace**. The files are the
|
|
10
10
|
source of truth; the model only "remembers" what gets written to disk.
|
|
11
11
|
|
|
12
12
|
Memory search tools are provided by the active memory plugin (default:
|
|
@@ -24,7 +24,7 @@ The default workspace layout uses two memory layers:
|
|
|
24
24
|
- **Only load in the main, private session** (never in group contexts).
|
|
25
25
|
|
|
26
26
|
These files live under the workspace (`agents.defaults.workspace`, default
|
|
27
|
-
|
|
27
|
+
`~/.openclaw/workspace`). See [Agent workspace](/concepts/agent-workspace) for the full layout.
|
|
28
28
|
|
|
29
29
|
## When to write memory
|
|
30
30
|
|
|
@@ -36,7 +36,7 @@ These files live under the workspace (`agents.defaults.workspace`, default
|
|
|
36
36
|
|
|
37
37
|
## Automatic memory flush (pre-compaction ping)
|
|
38
38
|
|
|
39
|
-
When a session is **close to auto-compaction**,
|
|
39
|
+
When a session is **close to auto-compaction**, OpenClaw triggers a **silent,
|
|
40
40
|
agentic turn** that reminds the model to write durable memory **before** the
|
|
41
41
|
context is compacted. The default prompts explicitly say the model *may reply*,
|
|
42
42
|
but usually `NO_REPLY` is the correct response so the user never sees this turn.
|
|
@@ -75,13 +75,14 @@ For the full compaction lifecycle, see
|
|
|
75
75
|
|
|
76
76
|
## Vector memory search
|
|
77
77
|
|
|
78
|
-
|
|
79
|
-
semantic queries can find related
|
|
78
|
+
OpenClaw can build a small vector index over `MEMORY.md` and `memory/*.md` (plus
|
|
79
|
+
any extra directories or files you opt in) so semantic queries can find related
|
|
80
|
+
notes even when wording differs.
|
|
80
81
|
|
|
81
82
|
Defaults:
|
|
82
83
|
- Enabled by default.
|
|
83
84
|
- Watches memory files for changes (debounced).
|
|
84
|
-
- Uses remote embeddings by default. If `memorySearch.provider` is not set,
|
|
85
|
+
- Uses remote embeddings by default. If `memorySearch.provider` is not set, OpenClaw auto-selects:
|
|
85
86
|
1. `local` if a `memorySearch.local.modelPath` is configured and the file exists.
|
|
86
87
|
2. `openai` if an OpenAI key can be resolved.
|
|
87
88
|
3. `gemini` if a Gemini key can be resolved.
|
|
@@ -89,13 +90,34 @@ Defaults:
|
|
|
89
90
|
- Local mode uses node-llama-cpp and may require `pnpm approve-builds`.
|
|
90
91
|
- Uses sqlite-vec (when available) to accelerate vector search inside SQLite.
|
|
91
92
|
|
|
92
|
-
Remote embeddings **require** an API key for the embedding provider.
|
|
93
|
+
Remote embeddings **require** an API key for the embedding provider. OpenClaw
|
|
93
94
|
resolves keys from auth profiles, `models.providers.*.apiKey`, or environment
|
|
94
95
|
variables. Codex OAuth only covers chat/completions and does **not** satisfy
|
|
95
96
|
embeddings for memory search. For Gemini, use `GEMINI_API_KEY` or
|
|
96
97
|
`models.providers.google.apiKey`. When using a custom OpenAI-compatible endpoint,
|
|
97
98
|
set `memorySearch.remote.apiKey` (and optional `memorySearch.remote.headers`).
|
|
98
99
|
|
|
100
|
+
### Additional memory paths
|
|
101
|
+
|
|
102
|
+
If you want to index Markdown files outside the default workspace layout, add
|
|
103
|
+
explicit paths:
|
|
104
|
+
|
|
105
|
+
```json5
|
|
106
|
+
agents: {
|
|
107
|
+
defaults: {
|
|
108
|
+
memorySearch: {
|
|
109
|
+
extraPaths: ["../team-docs", "/srv/shared-notes/overview.md"]
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
```
|
|
114
|
+
|
|
115
|
+
Notes:
|
|
116
|
+
- Paths can be absolute or workspace-relative.
|
|
117
|
+
- Directories are scanned recursively for `.md` files.
|
|
118
|
+
- Only Markdown files are indexed.
|
|
119
|
+
- Symlinks are ignored (files or directories).
|
|
120
|
+
|
|
99
121
|
### Gemini embeddings (native)
|
|
100
122
|
|
|
101
123
|
Set the provider to `gemini` to use the Gemini embeddings API directly:
|
|
@@ -189,23 +211,23 @@ Local mode:
|
|
|
189
211
|
### How the memory tools work
|
|
190
212
|
|
|
191
213
|
- `memory_search` semantically searches Markdown chunks (~400 token target, 80-token overlap) from `MEMORY.md` + `memory/**/*.md`. It returns snippet text (capped ~700 chars), file path, line range, score, provider/model, and whether we fell back from local → remote embeddings. No full file payload is returned.
|
|
192
|
-
- `memory_get` reads a specific memory Markdown file (workspace-relative), optionally from a starting line and for N lines. Paths outside `MEMORY.md` / `memory/` are
|
|
214
|
+
- `memory_get` reads a specific memory Markdown file (workspace-relative), optionally from a starting line and for N lines. Paths outside `MEMORY.md` / `memory/` are allowed only when explicitly listed in `memorySearch.extraPaths`.
|
|
193
215
|
- Both tools are enabled only when `memorySearch.enabled` resolves true for the agent.
|
|
194
216
|
|
|
195
217
|
### What gets indexed (and when)
|
|
196
218
|
|
|
197
|
-
- File type: Markdown only (`MEMORY.md`, `memory/**/*.md`).
|
|
198
|
-
- Index storage: per-agent SQLite at `~/.
|
|
199
|
-
- Freshness: watcher on `MEMORY.md`
|
|
200
|
-
- Reindex triggers: the index stores the embedding **provider/model + endpoint fingerprint + chunking params**. If any of those change,
|
|
219
|
+
- File type: Markdown only (`MEMORY.md`, `memory/**/*.md`, plus any `.md` files under `memorySearch.extraPaths`).
|
|
220
|
+
- Index storage: per-agent SQLite at `~/.openclaw/memory/<agentId>.sqlite` (configurable via `agents.defaults.memorySearch.store.path`, supports `{agentId}` token).
|
|
221
|
+
- Freshness: watcher on `MEMORY.md`, `memory/`, and `memorySearch.extraPaths` marks the index dirty (debounce 1.5s). Sync is scheduled on session start, on search, or on an interval and runs asynchronously. Session transcripts use delta thresholds to trigger background sync.
|
|
222
|
+
- Reindex triggers: the index stores the embedding **provider/model + endpoint fingerprint + chunking params**. If any of those change, OpenClaw automatically resets and reindexes the entire store.
|
|
201
223
|
|
|
202
224
|
### Hybrid search (BM25 + vector)
|
|
203
225
|
|
|
204
|
-
When enabled,
|
|
226
|
+
When enabled, OpenClaw combines:
|
|
205
227
|
- **Vector similarity** (semantic match, wording can differ)
|
|
206
228
|
- **BM25 keyword relevance** (exact tokens like IDs, env vars, code symbols)
|
|
207
229
|
|
|
208
|
-
If full-text search is unavailable on your platform,
|
|
230
|
+
If full-text search is unavailable on your platform, OpenClaw falls back to vector-only search.
|
|
209
231
|
|
|
210
232
|
#### Why hybrid?
|
|
211
233
|
|
|
@@ -266,7 +288,7 @@ agents: {
|
|
|
266
288
|
|
|
267
289
|
### Embedding cache
|
|
268
290
|
|
|
269
|
-
|
|
291
|
+
OpenClaw can cache **chunk embeddings** in SQLite so reindexing and frequent updates (especially session transcripts) don't re-embed unchanged text.
|
|
270
292
|
|
|
271
293
|
Config:
|
|
272
294
|
|
|
@@ -305,7 +327,7 @@ Notes:
|
|
|
305
327
|
- `memory_search` never blocks on indexing; results can be slightly stale until background sync finishes.
|
|
306
328
|
- Results still include snippets only; `memory_get` remains limited to memory files.
|
|
307
329
|
- Session indexing is isolated per agent (only that agent’s session logs are indexed).
|
|
308
|
-
- Session logs live on disk (`~/.
|
|
330
|
+
- Session logs live on disk (`~/.openclaw/agents/<agentId>/sessions/*.jsonl`). Any process/user with filesystem access can read them, so treat disk access as the trust boundary. For stricter isolation, run agents under separate OS users or hosts.
|
|
309
331
|
|
|
310
332
|
Delta thresholds (defaults shown):
|
|
311
333
|
|
|
@@ -326,7 +348,7 @@ agents: {
|
|
|
326
348
|
|
|
327
349
|
### SQLite vector acceleration (sqlite-vec)
|
|
328
350
|
|
|
329
|
-
When the sqlite-vec extension is available,
|
|
351
|
+
When the sqlite-vec extension is available, OpenClaw stores embeddings in a
|
|
330
352
|
SQLite virtual table (`vec0`) and performs vector distance queries in the
|
|
331
353
|
database. This keeps search fast without loading every embedding into JS.
|
|
332
354
|
|
|
@@ -350,7 +372,7 @@ agents: {
|
|
|
350
372
|
Notes:
|
|
351
373
|
- `enabled` defaults to true; when disabled, search falls back to in-process
|
|
352
374
|
cosine similarity over stored embeddings.
|
|
353
|
-
- If the sqlite-vec extension is missing or fails to load,
|
|
375
|
+
- If the sqlite-vec extension is missing or fails to load, OpenClaw logs the
|
|
354
376
|
error and continues with the JS fallback (no vector table).
|
|
355
377
|
- `extensionPath` overrides the bundled sqlite-vec path (useful for custom builds
|
|
356
378
|
or non-standard install locations).
|
|
@@ -7,7 +7,7 @@ read_when:
|
|
|
7
7
|
---
|
|
8
8
|
# Messages
|
|
9
9
|
|
|
10
|
-
This page ties together how
|
|
10
|
+
This page ties together how OpenClaw handles inbound messages, sessions, queueing,
|
|
11
11
|
streaming, and reasoning visibility.
|
|
12
12
|
|
|
13
13
|
## Message flow (high level)
|
|
@@ -29,7 +29,7 @@ See [Configuration](/gateway/configuration) for full schema.
|
|
|
29
29
|
|
|
30
30
|
## Inbound dedupe
|
|
31
31
|
|
|
32
|
-
Channels can redeliver the same message after reconnects.
|
|
32
|
+
Channels can redeliver the same message after reconnects. OpenClaw keeps a
|
|
33
33
|
short-lived cache keyed by channel/account/peer/session/message id so duplicate
|
|
34
34
|
deliveries do not trigger another agent run.
|
|
35
35
|
|
|
@@ -75,7 +75,7 @@ Details: [Session management](/concepts/session).
|
|
|
75
75
|
|
|
76
76
|
## Inbound bodies and history context
|
|
77
77
|
|
|
78
|
-
|
|
78
|
+
OpenClaw separates the **prompt body** from the **command body**:
|
|
79
79
|
- `Body`: prompt text sent to the agent. This may include channel envelopes and
|
|
80
80
|
optional history wrappers.
|
|
81
81
|
- `CommandBody`: raw user text for directive/command parsing.
|
|
@@ -127,7 +127,7 @@ Details: [Streaming + chunking](/concepts/streaming).
|
|
|
127
127
|
|
|
128
128
|
## Reasoning visibility and tokens
|
|
129
129
|
|
|
130
|
-
|
|
130
|
+
OpenClaw can expose or hide model reasoning:
|
|
131
131
|
- `/reasoning on|off|stream` controls visibility.
|
|
132
132
|
- Reasoning content still counts toward token usage when produced by the model.
|
|
133
133
|
- Telegram supports reasoning stream into the draft bubble.
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
---
|
|
2
|
-
summary: "How
|
|
2
|
+
summary: "How OpenClaw rotates auth profiles and falls back across models"
|
|
3
3
|
read_when:
|
|
4
4
|
- Diagnosing auth profile rotation, cooldowns, or model fallback behavior
|
|
5
5
|
- Updating failover rules for auth profiles or models
|
|
@@ -7,7 +7,7 @@ read_when:
|
|
|
7
7
|
|
|
8
8
|
# Model failover
|
|
9
9
|
|
|
10
|
-
|
|
10
|
+
OpenClaw handles failures in two stages:
|
|
11
11
|
1) **Auth profile rotation** within the current provider.
|
|
12
12
|
2) **Model fallback** to the next model in `agents.defaults.model.fallbacks`.
|
|
13
13
|
|
|
@@ -15,11 +15,11 @@ This doc explains the runtime rules and the data that backs them.
|
|
|
15
15
|
|
|
16
16
|
## Auth storage (keys + OAuth)
|
|
17
17
|
|
|
18
|
-
|
|
18
|
+
OpenClaw uses **auth profiles** for both API keys and OAuth tokens.
|
|
19
19
|
|
|
20
|
-
- Secrets live in `~/.
|
|
20
|
+
- Secrets live in `~/.openclaw/agents/<agentId>/agent/auth-profiles.json` (legacy: `~/.openclaw/agent/auth-profiles.json`).
|
|
21
21
|
- Config `auth.profiles` / `auth.order` are **metadata + routing only** (no secrets).
|
|
22
|
-
- Legacy import-only OAuth file: `~/.
|
|
22
|
+
- Legacy import-only OAuth file: `~/.openclaw/credentials/oauth.json` (imported into `auth-profiles.json` on first use).
|
|
23
23
|
|
|
24
24
|
More detail: [/concepts/oauth](/concepts/oauth)
|
|
25
25
|
|
|
@@ -33,24 +33,24 @@ OAuth logins create distinct profiles so multiple accounts can coexist.
|
|
|
33
33
|
- Default: `provider:default` when no email is available.
|
|
34
34
|
- OAuth with email: `provider:<email>` (for example `google-antigravity:user@gmail.com`).
|
|
35
35
|
|
|
36
|
-
Profiles live in `~/.
|
|
36
|
+
Profiles live in `~/.openclaw/agents/<agentId>/agent/auth-profiles.json` under `profiles`.
|
|
37
37
|
|
|
38
38
|
## Rotation order
|
|
39
39
|
|
|
40
|
-
When a provider has multiple profiles,
|
|
40
|
+
When a provider has multiple profiles, OpenClaw chooses an order like this:
|
|
41
41
|
|
|
42
42
|
1) **Explicit config**: `auth.order[provider]` (if set).
|
|
43
43
|
2) **Configured profiles**: `auth.profiles` filtered by provider.
|
|
44
44
|
3) **Stored profiles**: entries in `auth-profiles.json` for the provider.
|
|
45
45
|
|
|
46
|
-
If no explicit order is configured,
|
|
46
|
+
If no explicit order is configured, OpenClaw uses a round‑robin order:
|
|
47
47
|
- **Primary key:** profile type (**OAuth before API keys**).
|
|
48
48
|
- **Secondary key:** `usageStats.lastUsed` (oldest first, within each type).
|
|
49
49
|
- **Cooldown/disabled profiles** are moved to the end, ordered by soonest expiry.
|
|
50
50
|
|
|
51
51
|
### Session stickiness (cache-friendly)
|
|
52
52
|
|
|
53
|
-
|
|
53
|
+
OpenClaw **pins the chosen auth profile per session** to keep provider caches warm.
|
|
54
54
|
It does **not** rotate on every request. The pinned profile is reused until:
|
|
55
55
|
- the session is reset (`/new` / `/reset`)
|
|
56
56
|
- a compaction completes (compaction count increments)
|
|
@@ -60,9 +60,9 @@ Manual selection via `/model …@<profileId>` sets a **user override** for that
|
|
|
60
60
|
and is not auto‑rotated until a new session starts.
|
|
61
61
|
|
|
62
62
|
Auto‑pinned profiles (selected by the session router) are treated as a **preference**:
|
|
63
|
-
they are tried first, but
|
|
63
|
+
they are tried first, but OpenClaw may rotate to another profile on rate limits/timeouts.
|
|
64
64
|
User‑pinned profiles stay locked to that profile; if it fails and model fallbacks
|
|
65
|
-
are configured,
|
|
65
|
+
are configured, OpenClaw moves to the next model instead of switching profiles.
|
|
66
66
|
|
|
67
67
|
### Why OAuth can “look lost”
|
|
68
68
|
|
|
@@ -73,7 +73,7 @@ If you have both an OAuth profile and an API key profile for the same provider,
|
|
|
73
73
|
## Cooldowns
|
|
74
74
|
|
|
75
75
|
When a profile fails due to auth/rate‑limit errors (or a timeout that looks
|
|
76
|
-
like rate limiting),
|
|
76
|
+
like rate limiting), OpenClaw marks it in cooldown and moves to the next profile.
|
|
77
77
|
Format/invalid‑request errors (for example Cloud Code Assist tool call ID
|
|
78
78
|
validation failures) are treated as failover‑worthy and use the same cooldowns.
|
|
79
79
|
|
|
@@ -99,7 +99,7 @@ State is stored in `auth-profiles.json` under `usageStats`:
|
|
|
99
99
|
|
|
100
100
|
## Billing disables
|
|
101
101
|
|
|
102
|
-
Billing/credit failures (for example “insufficient credits” / “credit balance too low”) are treated as failover‑worthy, but they’re usually not transient. Instead of a short cooldown,
|
|
102
|
+
Billing/credit failures (for example “insufficient credits” / “credit balance too low”) are treated as failover‑worthy, but they’re usually not transient. Instead of a short cooldown, OpenClaw marks the profile as **disabled** (with a longer backoff) and rotates to the next profile/provider.
|
|
103
103
|
|
|
104
104
|
State is stored in `auth-profiles.json`:
|
|
105
105
|
|
|
@@ -120,7 +120,7 @@ Defaults:
|
|
|
120
120
|
|
|
121
121
|
## Model fallback
|
|
122
122
|
|
|
123
|
-
If all profiles for a provider fail,
|
|
123
|
+
If all profiles for a provider fail, OpenClaw moves to the next model in
|
|
124
124
|
`agents.defaults.model.fallbacks`. This applies to auth failures, rate limits, and
|
|
125
125
|
timeouts that exhausted profile rotation (other errors do not advance fallback).
|
|
126
126
|
|
|
@@ -13,11 +13,11 @@ For model selection rules, see [/concepts/models](/concepts/models).
|
|
|
13
13
|
|
|
14
14
|
- Model refs use `provider/model` (example: `opencode/claude-opus-4-5`).
|
|
15
15
|
- If you set `agents.defaults.models`, it becomes the allowlist.
|
|
16
|
-
- CLI helpers: `
|
|
16
|
+
- CLI helpers: `openclaw onboard`, `openclaw models list`, `openclaw models set <provider/model>`.
|
|
17
17
|
|
|
18
18
|
## Built-in providers (pi-ai catalog)
|
|
19
19
|
|
|
20
|
-
|
|
20
|
+
OpenClaw ships with the pi‑ai catalog. These providers require **no**
|
|
21
21
|
`models.providers` config; just set auth + pick a model.
|
|
22
22
|
|
|
23
23
|
### OpenAI
|
|
@@ -25,7 +25,7 @@ Moltbot ships with the pi‑ai catalog. These providers require **no**
|
|
|
25
25
|
- Provider: `openai`
|
|
26
26
|
- Auth: `OPENAI_API_KEY`
|
|
27
27
|
- Example model: `openai/gpt-5.2`
|
|
28
|
-
- CLI: `
|
|
28
|
+
- CLI: `openclaw onboard --auth-choice openai-api-key`
|
|
29
29
|
|
|
30
30
|
```json5
|
|
31
31
|
{
|
|
@@ -38,7 +38,7 @@ Moltbot ships with the pi‑ai catalog. These providers require **no**
|
|
|
38
38
|
- Provider: `anthropic`
|
|
39
39
|
- Auth: `ANTHROPIC_API_KEY` or `claude setup-token`
|
|
40
40
|
- Example model: `anthropic/claude-opus-4-5`
|
|
41
|
-
- CLI: `
|
|
41
|
+
- CLI: `openclaw onboard --auth-choice token` (paste setup-token) or `openclaw models auth paste-token --provider anthropic`
|
|
42
42
|
|
|
43
43
|
```json5
|
|
44
44
|
{
|
|
@@ -51,7 +51,7 @@ Moltbot ships with the pi‑ai catalog. These providers require **no**
|
|
|
51
51
|
- Provider: `openai-codex`
|
|
52
52
|
- Auth: OAuth (ChatGPT)
|
|
53
53
|
- Example model: `openai-codex/gpt-5.2`
|
|
54
|
-
- CLI: `
|
|
54
|
+
- CLI: `openclaw onboard --auth-choice openai-codex` or `openclaw models auth login --provider openai-codex`
|
|
55
55
|
|
|
56
56
|
```json5
|
|
57
57
|
{
|
|
@@ -64,7 +64,7 @@ Moltbot ships with the pi‑ai catalog. These providers require **no**
|
|
|
64
64
|
- Provider: `opencode`
|
|
65
65
|
- Auth: `OPENCODE_API_KEY` (or `OPENCODE_ZEN_API_KEY`)
|
|
66
66
|
- Example model: `opencode/claude-opus-4-5`
|
|
67
|
-
- CLI: `
|
|
67
|
+
- CLI: `openclaw onboard --auth-choice opencode-zen`
|
|
68
68
|
|
|
69
69
|
```json5
|
|
70
70
|
{
|
|
@@ -77,19 +77,19 @@ Moltbot ships with the pi‑ai catalog. These providers require **no**
|
|
|
77
77
|
- Provider: `google`
|
|
78
78
|
- Auth: `GEMINI_API_KEY`
|
|
79
79
|
- Example model: `google/gemini-3-pro-preview`
|
|
80
|
-
- CLI: `
|
|
80
|
+
- CLI: `openclaw onboard --auth-choice gemini-api-key`
|
|
81
81
|
|
|
82
82
|
### Google Vertex / Antigravity / Gemini CLI
|
|
83
83
|
|
|
84
84
|
- Providers: `google-vertex`, `google-antigravity`, `google-gemini-cli`
|
|
85
85
|
- Auth: Vertex uses gcloud ADC; Antigravity/Gemini CLI use their respective auth flows
|
|
86
86
|
- Antigravity OAuth is shipped as a bundled plugin (`google-antigravity-auth`, disabled by default).
|
|
87
|
-
- Enable: `
|
|
88
|
-
- Login: `
|
|
87
|
+
- Enable: `openclaw plugins enable google-antigravity-auth`
|
|
88
|
+
- Login: `openclaw models auth login --provider google-antigravity --set-default`
|
|
89
89
|
- Gemini CLI OAuth is shipped as a bundled plugin (`google-gemini-cli-auth`, disabled by default).
|
|
90
|
-
- Enable: `
|
|
91
|
-
- Login: `
|
|
92
|
-
- Note: you do **not** paste a client id or secret into `
|
|
90
|
+
- Enable: `openclaw plugins enable google-gemini-cli-auth`
|
|
91
|
+
- Login: `openclaw models auth login --provider google-gemini-cli --set-default`
|
|
92
|
+
- Note: you do **not** paste a client id or secret into `openclaw.json`. The CLI login flow stores
|
|
93
93
|
tokens in auth profiles on the gateway host.
|
|
94
94
|
|
|
95
95
|
### Z.AI (GLM)
|
|
@@ -97,7 +97,7 @@ Moltbot ships with the pi‑ai catalog. These providers require **no**
|
|
|
97
97
|
- Provider: `zai`
|
|
98
98
|
- Auth: `ZAI_API_KEY`
|
|
99
99
|
- Example model: `zai/glm-4.7`
|
|
100
|
-
- CLI: `
|
|
100
|
+
- CLI: `openclaw onboard --auth-choice zai-api-key`
|
|
101
101
|
- Aliases: `z.ai/*` and `z-ai/*` normalize to `zai/*`
|
|
102
102
|
|
|
103
103
|
### Vercel AI Gateway
|
|
@@ -105,7 +105,7 @@ Moltbot ships with the pi‑ai catalog. These providers require **no**
|
|
|
105
105
|
- Provider: `vercel-ai-gateway`
|
|
106
106
|
- Auth: `AI_GATEWAY_API_KEY`
|
|
107
107
|
- Example model: `vercel-ai-gateway/anthropic/claude-opus-4.5`
|
|
108
|
-
- CLI: `
|
|
108
|
+
- CLI: `openclaw onboard --auth-choice ai-gateway-api-key`
|
|
109
109
|
|
|
110
110
|
### Other built-in providers
|
|
111
111
|
|
|
@@ -130,9 +130,10 @@ Moonshot uses OpenAI-compatible endpoints, so configure it as a custom provider:
|
|
|
130
130
|
|
|
131
131
|
- Provider: `moonshot`
|
|
132
132
|
- Auth: `MOONSHOT_API_KEY`
|
|
133
|
-
- Example model: `moonshot/kimi-k2
|
|
133
|
+
- Example model: `moonshot/kimi-k2.5`
|
|
134
134
|
- Kimi K2 model IDs:
|
|
135
135
|
{/* moonshot-kimi-k2-model-refs:start */}
|
|
136
|
+
- `moonshot/kimi-k2.5`
|
|
136
137
|
- `moonshot/kimi-k2-0905-preview`
|
|
137
138
|
- `moonshot/kimi-k2-turbo-preview`
|
|
138
139
|
- `moonshot/kimi-k2-thinking`
|
|
@@ -141,7 +142,7 @@ Moonshot uses OpenAI-compatible endpoints, so configure it as a custom provider:
|
|
|
141
142
|
```json5
|
|
142
143
|
{
|
|
143
144
|
agents: {
|
|
144
|
-
defaults: { model: { primary: "moonshot/kimi-k2
|
|
145
|
+
defaults: { model: { primary: "moonshot/kimi-k2.5" } }
|
|
145
146
|
},
|
|
146
147
|
models: {
|
|
147
148
|
mode: "merge",
|
|
@@ -150,7 +151,7 @@ Moonshot uses OpenAI-compatible endpoints, so configure it as a custom provider:
|
|
|
150
151
|
baseUrl: "https://api.moonshot.ai/v1",
|
|
151
152
|
apiKey: "${MOONSHOT_API_KEY}",
|
|
152
153
|
api: "openai-completions",
|
|
153
|
-
models: [{ id: "kimi-k2
|
|
154
|
+
models: [{ id: "kimi-k2.5", name: "Kimi K2.5" }]
|
|
154
155
|
}
|
|
155
156
|
}
|
|
156
157
|
}
|
|
@@ -191,8 +192,8 @@ Qwen provides OAuth access to Qwen Coder + Vision via a device-code flow.
|
|
|
191
192
|
Enable the bundled plugin, then log in:
|
|
192
193
|
|
|
193
194
|
```bash
|
|
194
|
-
|
|
195
|
-
|
|
195
|
+
openclaw plugins enable qwen-portal-auth
|
|
196
|
+
openclaw models auth login --provider qwen-portal --set-default
|
|
196
197
|
```
|
|
197
198
|
|
|
198
199
|
Model refs:
|
|
@@ -208,7 +209,7 @@ Synthetic provides Anthropic-compatible models behind the `synthetic` provider:
|
|
|
208
209
|
- Provider: `synthetic`
|
|
209
210
|
- Auth: `SYNTHETIC_API_KEY`
|
|
210
211
|
- Example model: `synthetic/hf:MiniMaxAI/MiniMax-M2.1`
|
|
211
|
-
- CLI: `
|
|
212
|
+
- CLI: `openclaw onboard --auth-choice synthetic-api-key`
|
|
212
213
|
|
|
213
214
|
```json5
|
|
214
215
|
{
|
|
@@ -299,7 +300,7 @@ Example (OpenAI‑compatible):
|
|
|
299
300
|
|
|
300
301
|
Notes:
|
|
301
302
|
- For custom providers, `reasoning`, `input`, `cost`, `contextWindow`, and `maxTokens` are optional.
|
|
302
|
-
When omitted,
|
|
303
|
+
When omitted, OpenClaw defaults to:
|
|
303
304
|
- `reasoning: false`
|
|
304
305
|
- `input: ["text"]`
|
|
305
306
|
- `cost: { input: 0, output: 0, cacheRead: 0, cacheWrite: 0 }`
|
|
@@ -310,9 +311,9 @@ Notes:
|
|
|
310
311
|
## CLI examples
|
|
311
312
|
|
|
312
313
|
```bash
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
314
|
+
openclaw onboard --auth-choice opencode-zen
|
|
315
|
+
openclaw models set opencode/claude-opus-4-5
|
|
316
|
+
openclaw models list
|
|
316
317
|
```
|
|
317
318
|
|
|
318
319
|
See also: [/gateway/configuration](/gateway/configuration) for full configuration examples.
|