From 5cd48428bff1dcb8750a609dc5349bd7728babd9 Mon Sep 17 00:00:00 2001 From: "openclaw-docs-sync[bot]" Date: Mon, 6 Apr 2026 02:29:40 +0000 Subject: [PATCH] chore(sync): mirror docs from openclaw/openclaw@d8270ef1812a66e177cd5e73a235488ab214278a --- .openclaw-sync/source.json | 4 ++-- docs/.generated/config-baseline.sha256 | 6 +++--- docs/automation/tasks.md | 2 +- docs/gateway/configuration-reference.md | 9 +++++++++ 4 files changed, 15 insertions(+), 6 deletions(-) diff --git a/.openclaw-sync/source.json b/.openclaw-sync/source.json index 669c6fd93..1a9642f25 100644 --- a/.openclaw-sync/source.json +++ b/.openclaw-sync/source.json @@ -1,5 +1,5 @@ { "repository": "openclaw/openclaw", - "sha": "134d3095716e97ffbd9df95d789f21b9c42d781b", - "syncedAt": "2026-04-06T02:23:02.874Z" + "sha": "d8270ef1812a66e177cd5e73a235488ab214278a", + "syncedAt": "2026-04-06T02:29:40.103Z" } diff --git a/docs/.generated/config-baseline.sha256 b/docs/.generated/config-baseline.sha256 index 1b5863370..f537481fc 100644 --- a/docs/.generated/config-baseline.sha256 +++ b/docs/.generated/config-baseline.sha256 @@ -1,4 +1,4 @@ -fb2c88ef41657f1aa7237dcce655d16313dc849fd03991b221346367c569a482 config-baseline.json -ff8f64e1866748644776b229bdf334762875e3139b717a3adb8e5c587286ada3 config-baseline.core.json +4a326c6bec41805dc6f880d84a7bca07c0ddda0d26d86360804b155c63bcb8eb config-baseline.json +71414a189b62e3a362443068cb911372b2fe326a0bf43237a36d475533508499 config-baseline.core.json ba5f7e89aad95d3eae0bc4e3b590c8dbb87bd921bba0d8f12fe67545af5887c6 config-baseline.channel.json -dc19ac1c60544d87fe08944d1184e0ade7b469367cdf8d6ce61452f64f9e0a47 config-baseline.plugin.json +a2c4233e7884f8510f7bc3dc4587ddd9389bf36fd18450b6d1a63e33f906cfb3 config-baseline.plugin.json diff --git a/docs/automation/tasks.md b/docs/automation/tasks.md index fb8bb5645..c687f073d 100644 --- a/docs/automation/tasks.md +++ b/docs/automation/tasks.md @@ -81,7 +81,7 @@ openclaw tasks flow cancel Main-session cron tasks use `silent` notify policy by default — they create records for tracking but do not generate notifications. Isolated cron tasks also default to `silent` but are more visible because they run in their own session. -Session-backed `video_generate` runs also use `silent` notify policy. They still create task records, but completion is handed back to the original agent session as an internal wake so the agent can write the follow-up message and attach the finished video itself. +Session-backed `video_generate` runs also use `silent` notify policy. They still create task records, but completion is handed back to the original agent session as an internal wake so the agent can write the follow-up message and attach the finished video itself. If you opt into `tools.media.asyncCompletion.directSend`, async `music_generate` and `video_generate` completions try direct channel delivery first before falling back to the requester-session wake path. While a session-backed `video_generate` task is still active, the tool also acts as a guardrail: repeated `video_generate` calls in that same session return the active task status instead of starting a second concurrent generation. Use `action: "status"` when you want an explicit progress/status lookup from the agent side. diff --git a/docs/gateway/configuration-reference.md b/docs/gateway/configuration-reference.md index 1d752fb95..5123d0042 100644 --- a/docs/gateway/configuration-reference.md +++ b/docs/gateway/configuration-reference.md @@ -2075,6 +2075,9 @@ Configures inbound media understanding (image/audio/video): tools: { media: { concurrency: 2, + asyncCompletion: { + directSend: false, // opt-in: send finished async music/video directly to the channel + }, audio: { enabled: true, maxBytes: 20971520, @@ -2118,6 +2121,12 @@ Configures inbound media understanding (image/audio/video): Provider auth follows standard order: `auth-profiles.json` → env vars → `models.providers.*.apiKey`. +**Async completion fields:** + +- `asyncCompletion.directSend`: when `true`, completed async `music_generate` + and `video_generate` tasks try direct channel delivery first. Default: `false` + (legacy requester-session wake/model-delivery path). + ### `tools.agentToAgent`