From 2dfa4b082a41240bbee87a3e4098c85496740feb Mon Sep 17 00:00:00 2001 From: Peter Steinberger Date: Sat, 2 May 2026 21:44:45 +0100 Subject: [PATCH] docs: sync docs with source truth --- docs/.generated/config-baseline.sha256 | 6 +++--- docs/.generated/plugin-sdk-api-baseline.sha256 | 4 ++-- docs/concepts/dreaming.md | 4 ++++ docs/gateway/config-channels.md | 8 ++++---- docs/gateway/configuration-reference.md | 11 +++++++++++ docs/help/faq-first-run.md | 6 +++--- docs/help/faq.md | 2 +- docs/plugins/plugin-inventory.md | 2 +- docs/plugins/reference.md | 2 +- docs/plugins/reference/discord.md | 2 +- docs/plugins/sdk-provider-plugins.md | 6 ++++++ docs/reference/memory-config.md | 2 ++ docs/tools/exec.md | 2 +- docs/tools/tts.md | 3 +++ 14 files changed, 43 insertions(+), 17 deletions(-) diff --git a/docs/.generated/config-baseline.sha256 b/docs/.generated/config-baseline.sha256 index 6a4c29aa9b4..2d88569e5a2 100644 --- a/docs/.generated/config-baseline.sha256 +++ b/docs/.generated/config-baseline.sha256 @@ -1,4 +1,4 @@ -2f2463daef1ea612d58e6bf0148d928d884a331053ad1063f9d18b0f753f51a1 config-baseline.json -b95cc4a3b15e688afa58cf700dac425af4e50fd092209e75903e73d5d2988717 config-baseline.core.json -a2a949a99f5cc5960d4d7ae0159b6b48c4d6b1f813be67cda196457ab2f88034 config-baseline.channel.json +32a931b67bea0dda37c35a303e3de95e49b1bdbba10acaebfdb880c61b4e8342 config-baseline.json +6d477ca3b60982b770e85929ab8393a7923a6b31ce99f3b7c7dba13cdd4f9180 config-baseline.core.json +07005d122bda68081d530ae5cd455ffbc0817f7fb94bd462c4f25edc94a0546c config-baseline.channel.json fffe0e74eab92a88c3c57952a70bc932438ce3a7f5f9982688437f2cdaee0bcb config-baseline.plugin.json diff --git a/docs/.generated/plugin-sdk-api-baseline.sha256 b/docs/.generated/plugin-sdk-api-baseline.sha256 index 3a9b8726e5f..af404ea12e9 100644 --- a/docs/.generated/plugin-sdk-api-baseline.sha256 +++ b/docs/.generated/plugin-sdk-api-baseline.sha256 @@ -1,2 +1,2 @@ -dfdecb3918124ec7926ffe17220e498ffeef2fc7a7edfea528cc5a7f284cb8ef plugin-sdk-api-baseline.json -079c31016f34256af290f80f3e16d6f8154eb13513d36547ba41d3241d60e0e4 plugin-sdk-api-baseline.jsonl +5f5db635a11240bee5e6eec95d13ff5ab388f3a5477c2f17fd762b5ed5b3dbae plugin-sdk-api-baseline.json +463c3bc12bf78ec6fc9350909fb3076967d276944da14343015f0dfae6ea48ed plugin-sdk-api-baseline.jsonl diff --git a/docs/concepts/dreaming.md b/docs/concepts/dreaming.md index 3d8d7d1b1fa..2edef2c4d5f 100644 --- a/docs/concepts/dreaming.md +++ b/docs/concepts/dreaming.md @@ -237,6 +237,10 @@ When enabled, the Gateway **Dreams** tab shows: - a distinct grounded Scene lane for staged historical replay entries - an expandable Dream Diary reader backed by `doctor.memory.dreamDiary` +## Dreaming never runs: status shows blocked + +If `openclaw memory status` reports `Dreaming status: blocked`, the managed cron exists but the default agent heartbeat is not firing. Check that heartbeat is enabled for the default agent and that its target is not `none`, then run `openclaw memory status --deep` again after the next heartbeat interval. + ## Related - [Memory](/concepts/memory) diff --git a/docs/gateway/config-channels.md b/docs/gateway/config-channels.md index 66af032501e..c1add66c488 100644 --- a/docs/gateway/config-channels.md +++ b/docs/gateway/config-channels.md @@ -217,7 +217,7 @@ WhatsApp runs through the gateway's web channel (Baileys Web). It starts automat - Optional `channels.telegram.defaultAccount` overrides default account selection when it matches a configured account id. - In multi-account setups (2+ account ids), set an explicit default (`channels.telegram.defaultAccount` or `channels.telegram.accounts.default`) to avoid fallback routing; `openclaw doctor` warns when this is missing or invalid. - `configWrites: false` blocks Telegram-initiated config writes (supergroup ID migrations, `/config set|unset`). -- Top-level `bindings[]` entries with `type: "acp"` configure persistent ACP bindings for forum topics (use canonical `chatId:topic:topicId` in `match.peer.id`). Field semantics are shared in [ACP Agents](/tools/acp-agents#channel-specific-settings). +- Top-level `bindings[]` entries with `type: "acp"` configure persistent ACP bindings for forum topics (use canonical `chatId:topic:topicId` in `match.peer.id`). Field semantics are shared in [ACP Agents](/tools/acp-agents#persistent-channel-bindings). - Telegram stream previews use `sendMessage` + `editMessageText` (works in direct and group chats). - Retry policy: see [Retry policy](/concepts/retry). @@ -339,7 +339,7 @@ WhatsApp runs through the gateway's web channel (Baileys Web). It starts automat - `maxAgeHours`: Discord override for hard max age in hours (`0` disables) - `spawnSessions`: switch for `sessions_spawn({ thread: true })` and ACP thread-spawn auto thread creation/binding (default: `true`) - `defaultSpawnContext`: native subagent context for thread-bound spawns (`"fork"` by default) -- Top-level `bindings[]` entries with `type: "acp"` configure persistent ACP bindings for channels and threads (use channel/thread id in `match.peer.id`). Field semantics are shared in [ACP Agents](/tools/acp-agents#channel-specific-settings). +- Top-level `bindings[]` entries with `type: "acp"` configure persistent ACP bindings for channels and threads (use channel/thread id in `match.peer.id`). Field semantics are shared in [ACP Agents](/tools/acp-agents#persistent-channel-bindings). - `channels.discord.ui.components.accentColor` sets the accent color for Discord components v2 containers. - `channels.discord.voice` enables Discord voice channel conversations and optional auto-join + LLM + TTS overrides. Text-only Discord configs leave voice off by default; set `channels.discord.voice.enabled=true` to opt in. - `channels.discord.voice.model` optionally overrides the LLM model used for Discord voice channel responses. @@ -594,7 +594,7 @@ BlueBubbles is the recommended iMessage path (plugin-backed, configured under `c - Core key paths covered here: `channels.bluebubbles`, `channels.bluebubbles.dmPolicy`. - Optional `channels.bluebubbles.defaultAccount` overrides default account selection when it matches a configured account id. -- Top-level `bindings[]` entries with `type: "acp"` can bind BlueBubbles conversations to persistent ACP sessions. Use a BlueBubbles handle or target string (`chat_id:*`, `chat_guid:*`, `chat_identifier:*`) in `match.peer.id`. Shared field semantics: [ACP Agents](/tools/acp-agents#channel-specific-settings). +- Top-level `bindings[]` entries with `type: "acp"` can bind BlueBubbles conversations to persistent ACP sessions. Use a BlueBubbles handle or target string (`chat_id:*`, `chat_guid:*`, `chat_identifier:*`) in `match.peer.id`. Shared field semantics: [ACP Agents](/tools/acp-agents#persistent-channel-bindings). - Full BlueBubbles channel configuration is documented in [BlueBubbles](/channels/bluebubbles). ### iMessage @@ -631,7 +631,7 @@ OpenClaw spawns `imsg rpc` (JSON-RPC over stdio). No daemon or port required. - `attachmentRoots` and `remoteAttachmentRoots` restrict inbound attachment paths (default: `/Users/*/Library/Messages/Attachments`). - SCP uses strict host-key checking, so ensure the relay host key already exists in `~/.ssh/known_hosts`. - `channels.imessage.configWrites`: allow or deny iMessage-initiated config writes. -- Top-level `bindings[]` entries with `type: "acp"` can bind iMessage conversations to persistent ACP sessions. Use a normalized handle or explicit chat target (`chat_id:*`, `chat_guid:*`, `chat_identifier:*`) in `match.peer.id`. Shared field semantics: [ACP Agents](/tools/acp-agents#channel-specific-settings). +- Top-level `bindings[]` entries with `type: "acp"` can bind iMessage conversations to persistent ACP sessions. Use a normalized handle or explicit chat target (`chat_id:*`, `chat_guid:*`, `chat_identifier:*`) in `match.peer.id`. Shared field semantics: [ACP Agents](/tools/acp-agents#persistent-channel-bindings). diff --git a/docs/gateway/configuration-reference.md b/docs/gateway/configuration-reference.md index a1d2bf420f3..52e95d5d04b 100644 --- a/docs/gateway/configuration-reference.md +++ b/docs/gateway/configuration-reference.md @@ -223,6 +223,17 @@ See [Plugins](/tools/plugin). --- +## Commitments + +`commitments` controls inferred follow-up memory: OpenClaw can detect check-ins from conversation turns and deliver them through heartbeat runs. + +- `commitments.enabled`: enable hidden LLM extraction, storage, and heartbeat delivery for inferred follow-up commitments. Default: `false`. +- `commitments.maxPerDay`: maximum inferred follow-up commitments delivered per agent session in a rolling day. Default: `3`. + +See [Inferred commitments](/concepts/commitments). + +--- + ## Browser ```json5 diff --git a/docs/help/faq-first-run.md b/docs/help/faq-first-run.md index b39624f6dee..1dc95afef79 100644 --- a/docs/help/faq-first-run.md +++ b/docs/help/faq-first-run.md @@ -58,7 +58,7 @@ and troubleshooting see the main [FAQ](/help/faq). Other useful CLI checks: `openclaw status --all`, `openclaw logs --follow`, `openclaw gateway status`, `openclaw health --verbose`. - Quick debug loop: [First 60 seconds if something is broken](#first-60-seconds-if-something-is-broken). + Quick debug loop: [First 60 seconds if something is broken](/help/faq#first-60-seconds-if-something-is-broken). Install docs: [Install](/install), [Installer flags](/install/installer), [Updating](/install/updating). @@ -226,7 +226,7 @@ and troubleshooting see the main [FAQ](/help/faq). up **memory + bootstrap files**, but **not** session history or auth. Those live under `~/.openclaw/` (for example `~/.openclaw/agents//sessions/`). - Related: [Migrating](/install/migrating), [Where things live on disk](#where-things-live-on-disk), + Related: [Migrating](/install/migrating), [Where things live on disk](/help/faq#where-things-live-on-disk), [Agent workspace](/concepts/agent-workspace), [Doctor](/gateway/doctor), [Remote mode](/gateway/remote). @@ -796,7 +796,7 @@ and troubleshooting see the main [FAQ](/help/faq). curl -fsSL https://openclaw.ai/install.sh | bash -s -- --install-method npm ``` - Backup tips: see [Backup strategy](#where-things-live-on-disk). + Backup tips: see [Backup strategy](/help/faq#where-things-live-on-disk). diff --git a/docs/help/faq.md b/docs/help/faq.md index 52419b68fc7..10a61a11253 100644 --- a/docs/help/faq.md +++ b/docs/help/faq.md @@ -1874,7 +1874,7 @@ lives on the [Models FAQ](/help/faq-models). to **inherit**. Also confirm you are not using a bot profile with `verboseDefault` set to `on` in config. - Docs: [Thinking and verbose](/tools/thinking), [Security](/gateway/security#reasoning-verbose-output-in-groups). + Docs: [Thinking and verbose](/tools/thinking), [Security](/gateway/security/index#reasoning-and-verbose-output-in-groups). diff --git a/docs/plugins/plugin-inventory.md b/docs/plugins/plugin-inventory.md index 26c2df783c1..3b988d22b57 100644 --- a/docs/plugins/plugin-inventory.md +++ b/docs/plugins/plugin-inventory.md @@ -48,7 +48,6 @@ dependencies are available. | [deepgram](/plugins/reference/deepgram) | Adds media understanding provider support. Adds realtime transcription provider support. | `@openclaw/deepgram-provider`
included in OpenClaw | contracts: mediaUnderstandingProviders, realtimeTranscriptionProviders | | [deepinfra](/plugins/reference/deepinfra) | Adds DeepInfra model provider support to OpenClaw. | `@openclaw/deepinfra-provider`
included in OpenClaw | providers: deepinfra; contracts: imageGenerationProviders, mediaUnderstandingProviders, memoryEmbeddingProviders, speechProviders, videoGenerationProviders | | [deepseek](/plugins/reference/deepseek) | Adds DeepSeek model provider support to OpenClaw. | `@openclaw/deepseek-provider`
included in OpenClaw | providers: deepseek | -| [discord](/plugins/reference/discord) | Adds the Discord channel surface for sending and receiving OpenClaw messages. | `@openclaw/discord`
included in OpenClaw | channels: discord | | [document-extract](/plugins/reference/document-extract) | Extract text and fallback page images from local document attachments. | `@openclaw/document-extract-plugin`
included in OpenClaw | contracts: documentExtractors | | [duckduckgo](/plugins/reference/duckduckgo) | Adds web search provider support. | `@openclaw/duckduckgo-plugin`
included in OpenClaw | contracts: webSearchProviders | | [elevenlabs](/plugins/reference/elevenlabs) | Adds media understanding provider support. Adds realtime transcription provider support. Adds text-to-speech provider support. | `@openclaw/elevenlabs-speech`
included in OpenClaw | contracts: mediaUnderstandingProviders, realtimeTranscriptionProviders, speechProviders | @@ -128,6 +127,7 @@ dependencies are available. | [diagnostics-otel](/plugins/reference/diagnostics-otel) | OpenClaw diagnostics OpenTelemetry exporter. | `@openclaw/diagnostics-otel`
ClawHub: `clawhub:@openclaw/diagnostics-otel`; npm | plugin | | [diagnostics-prometheus](/plugins/reference/diagnostics-prometheus) | OpenClaw diagnostics Prometheus exporter. | `@openclaw/diagnostics-prometheus`
ClawHub: `clawhub:@openclaw/diagnostics-prometheus`; npm | plugin | | [diffs](/plugins/reference/diffs) | Read-only diff viewer and file renderer for agents. | `@openclaw/diffs`
ClawHub + npm | contracts: tools; skills | +| [discord](/plugins/reference/discord) | Adds the Discord channel surface for sending and receiving OpenClaw messages. | `@openclaw/discord`
ClawHub + npm | channels: discord | | [feishu](/plugins/reference/feishu) | Adds the Feishu channel surface for sending and receiving OpenClaw messages. | `@openclaw/feishu`
ClawHub + npm | channels: feishu; contracts: tools; skills | | [google-meet](/plugins/reference/google-meet) | Join Google Meet calls through Chrome or Twilio transports. | `@openclaw/google-meet`
ClawHub + npm | contracts: tools | | [googlechat](/plugins/reference/googlechat) | Adds the Google Chat channel surface for sending and receiving OpenClaw messages. | `@openclaw/googlechat`
ClawHub + npm | channels: googlechat | diff --git a/docs/plugins/reference.md b/docs/plugins/reference.md index fdb51d3edc0..b8e02cccbb0 100644 --- a/docs/plugins/reference.md +++ b/docs/plugins/reference.md @@ -42,7 +42,7 @@ pnpm plugins:inventory:gen | [diagnostics-otel](/plugins/reference/diagnostics-otel) | OpenClaw diagnostics OpenTelemetry exporter. | `@openclaw/diagnostics-otel`
ClawHub: `clawhub:@openclaw/diagnostics-otel`; npm | plugin | | [diagnostics-prometheus](/plugins/reference/diagnostics-prometheus) | OpenClaw diagnostics Prometheus exporter. | `@openclaw/diagnostics-prometheus`
ClawHub: `clawhub:@openclaw/diagnostics-prometheus`; npm | plugin | | [diffs](/plugins/reference/diffs) | Read-only diff viewer and file renderer for agents. | `@openclaw/diffs`
ClawHub + npm | contracts: tools; skills | -| [discord](/plugins/reference/discord) | Adds the Discord channel surface for sending and receiving OpenClaw messages. | `@openclaw/discord`
included in OpenClaw | channels: discord | +| [discord](/plugins/reference/discord) | Adds the Discord channel surface for sending and receiving OpenClaw messages. | `@openclaw/discord`
ClawHub + npm | channels: discord | | [document-extract](/plugins/reference/document-extract) | Extract text and fallback page images from local document attachments. | `@openclaw/document-extract-plugin`
included in OpenClaw | contracts: documentExtractors | | [duckduckgo](/plugins/reference/duckduckgo) | Adds web search provider support. | `@openclaw/duckduckgo-plugin`
included in OpenClaw | contracts: webSearchProviders | | [elevenlabs](/plugins/reference/elevenlabs) | Adds media understanding provider support. Adds realtime transcription provider support. Adds text-to-speech provider support. | `@openclaw/elevenlabs-speech`
included in OpenClaw | contracts: mediaUnderstandingProviders, realtimeTranscriptionProviders, speechProviders | diff --git a/docs/plugins/reference/discord.md b/docs/plugins/reference/discord.md index b9ab08828ad..89f1ea4e637 100644 --- a/docs/plugins/reference/discord.md +++ b/docs/plugins/reference/discord.md @@ -12,7 +12,7 @@ Adds the Discord channel surface for sending and receiving OpenClaw messages. ## Distribution - Package: `@openclaw/discord` -- Install route: included in OpenClaw +- Install route: ClawHub + npm ## Surface diff --git a/docs/plugins/sdk-provider-plugins.md b/docs/plugins/sdk-provider-plugins.md index b68efa2e9d2..cfe7cb2099c 100644 --- a/docs/plugins/sdk-provider-plugins.md +++ b/docs/plugins/sdk-provider-plugins.md @@ -29,6 +29,8 @@ API key auth, and dynamic model resolution. + ### Step 1: Package and manifest + ```json package.json { @@ -481,6 +483,8 @@ API key auth, and dynamic model resolution. + ### Step 5: Add extra capabilities + A provider plugin can register speech, realtime transcription, realtime voice, media understanding, image generation, video generation, web fetch, and web search alongside text inference. OpenClaw classifies this as a @@ -683,6 +687,8 @@ API key auth, and dynamic model resolution. + ### Step 6: Test + ```typescript src/provider.test.ts import { describe, it, expect } from "vitest"; // Export your provider config object from index.ts or a dedicated file diff --git a/docs/reference/memory-config.md b/docs/reference/memory-config.md index 64b40368fe1..0a289238768 100644 --- a/docs/reference/memory-config.md +++ b/docs/reference/memory-config.md @@ -213,6 +213,8 @@ For custom OpenAI-compatible endpoints or overriding provider defaults: + ### Bedrock embedding config + Bedrock uses the AWS SDK default credential chain — no API keys needed. If OpenClaw runs on EC2 with a Bedrock-enabled instance role, just set the provider and model: ```json5 diff --git a/docs/tools/exec.md b/docs/tools/exec.md index 6d449f69754..ef6985901e7 100644 --- a/docs/tools/exec.md +++ b/docs/tools/exec.md @@ -101,7 +101,7 @@ Notes: - `tools.exec.host` (default: `auto`; resolves to `sandbox` when sandbox runtime is active, `gateway` otherwise) - `tools.exec.security` (default: `deny` for sandbox, `full` for gateway + node when unset) - `tools.exec.ask` (default: `off`) -- No-approval host exec is the default for gateway + node. If you want approvals/allowlist behavior, tighten both `tools.exec.*` and the host `~/.openclaw/exec-approvals.json`; see [Exec approvals](/tools/exec-approvals#no-approval-yolo-mode). +- No-approval host exec is the default for gateway + node. If you want approvals/allowlist behavior, tighten both `tools.exec.*` and the host `~/.openclaw/exec-approvals.json`; see [Exec approvals](/tools/exec-approvals#yolo-mode-no-approval). - YOLO comes from the host-policy defaults (`security=full`, `ask=off`), not from `host=auto`. If you want to force gateway or node routing, set `tools.exec.host` or use `/exec host=...`. - In `security=full` plus `ask=off` mode, host exec follows the configured policy directly; there is no extra heuristic command-obfuscation prefilter or script-preflight rejection layer. - `tools.exec.node` (default: unset) diff --git a/docs/tools/tts.md b/docs/tools/tts.md index 45c66429793..78bfc10bb6d 100644 --- a/docs/tools/tts.md +++ b/docs/tools/tts.md @@ -852,11 +852,14 @@ OpenAI and ElevenLabs output formats are fixed per channel as listed above. + ### Inworld primary + Env: `INWORLD_API_KEY`. Default `https://api.inworld.ai`. Default `inworld-tts-1.5-max`. Also: `inworld-tts-1.5-mini`, `inworld-tts-1-max`, `inworld-tts-1`. Default `Sarah`. Sampling temperature `0..2`. +