From 8988894ff7d5812cdf692df6acb5327fadef6122 Mon Sep 17 00:00:00 2001 From: Peter Steinberger Date: Wed, 1 Apr 2026 15:08:04 +0100 Subject: [PATCH] build: prepare 2026.4.1-beta.1 release --- CHANGELOG.md | 6 + apps/android/app/build.gradle.kts | 4 +- apps/ios/Config/Version.xcconfig | 4 +- .../Sources/OpenClaw/Resources/Info.plist | 4 +- docs/.generated/config-baseline.json | 454 +++++++++++++++++- docs/.generated/config-baseline.jsonl | 39 +- docs/.generated/plugin-sdk-api-baseline.json | 30 +- docs/.generated/plugin-sdk-api-baseline.jsonl | 26 +- extensions/acpx/package.json | 2 +- extensions/amazon-bedrock/package.json | 2 +- extensions/anthropic-vertex/package.json | 2 +- extensions/anthropic/package.json | 2 +- extensions/bluebubbles/package.json | 4 +- extensions/brave/package.json | 2 +- extensions/browser/package.json | 2 +- extensions/byteplus/package.json | 2 +- extensions/chutes/package.json | 2 +- extensions/cloudflare-ai-gateway/package.json | 2 +- extensions/copilot-proxy/package.json | 2 +- extensions/deepgram/package.json | 2 +- extensions/deepseek/package.json | 2 +- extensions/diagnostics-otel/package.json | 2 +- extensions/diffs/package.json | 2 +- extensions/discord/package.json | 4 +- extensions/duckduckgo/package.json | 2 +- extensions/elevenlabs/package.json | 2 +- extensions/exa/package.json | 2 +- extensions/fal/package.json | 2 +- extensions/firecrawl/package.json | 2 +- extensions/github-copilot/package.json | 2 +- extensions/google/package.json | 2 +- extensions/googlechat/package.json | 4 +- extensions/groq/package.json | 2 +- extensions/huggingface/package.json | 2 +- extensions/image-generation-core/package.json | 2 +- extensions/imessage/package.json | 2 +- extensions/irc/package.json | 2 +- extensions/kilocode/package.json | 2 +- extensions/kimi-coding/package.json | 2 +- extensions/line/package.json | 4 +- extensions/litellm/package.json | 2 +- extensions/llm-task/package.json | 2 +- extensions/lobster/package.json | 2 +- extensions/matrix/package.json | 4 +- extensions/mattermost/package.json | 4 +- .../media-understanding-core/package.json | 2 +- extensions/memory-core/package.json | 4 +- extensions/memory-lancedb/package.json | 2 +- extensions/microsoft-foundry/package.json | 2 +- extensions/microsoft/package.json | 2 +- extensions/minimax/package.json | 2 +- extensions/mistral/package.json | 2 +- extensions/modelstudio/package.json | 2 +- extensions/moonshot/package.json | 2 +- extensions/msteams/package.json | 4 +- extensions/nextcloud-talk/package.json | 4 +- extensions/nostr/package.json | 4 +- extensions/nvidia/package.json | 2 +- extensions/ollama/package.json | 2 +- extensions/open-prose/package.json | 2 +- extensions/openai/package.json | 2 +- extensions/opencode-go/package.json | 2 +- extensions/opencode/package.json | 2 +- extensions/openrouter/package.json | 2 +- extensions/openshell/package.json | 2 +- extensions/perplexity/package.json | 2 +- extensions/qianfan/package.json | 2 +- extensions/qqbot/package.json | 4 +- extensions/searxng/package.json | 2 +- extensions/sglang/package.json | 2 +- extensions/signal/package.json | 2 +- extensions/slack/package.json | 2 +- extensions/speech-core/package.json | 2 +- extensions/synology-chat/package.json | 2 +- extensions/synthetic/package.json | 2 +- extensions/tavily/package.json | 2 +- extensions/telegram/package.json | 2 +- extensions/tlon/package.json | 4 +- extensions/together/package.json | 2 +- extensions/twitch/package.json | 2 +- extensions/venice/package.json | 2 +- extensions/vercel-ai-gateway/package.json | 2 +- extensions/vllm/package.json | 2 +- extensions/voice-call/package.json | 4 +- extensions/volcengine/package.json | 2 +- extensions/whatsapp/package.json | 4 +- extensions/xai/package.json | 2 +- extensions/xiaomi/package.json | 2 +- extensions/zai/package.json | 2 +- extensions/zalo/package.json | 4 +- extensions/zalouser/package.json | 4 +- package.json | 2 +- ...ndled-channel-config-metadata.generated.ts | 90 ++++ src/config/schema.base.generated.ts | 2 +- 94 files changed, 721 insertions(+), 138 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index a0d88e88d27..173aea43d5e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,12 @@ Docs: https://docs.openclaw.ai ### Changes +### Fixes + +## 2026.4.1-beta.1 + +### Changes + - Tasks/chat: add `/tasks` as a chat-native background task board for the current session, with recent task details and agent-local fallback counts when no linked tasks are visible. Related #54226. Thanks @vincentkoc. - Web search/SearXNG: add the bundled SearXNG provider plugin for `web_search` with configurable host support. (#57317) Thanks @cgdusek. - Amazon Bedrock/Guardrails: add Bedrock Guardrails support to the bundled provider. (#58588) Thanks @MikeORed. diff --git a/apps/android/app/build.gradle.kts b/apps/android/app/build.gradle.kts index 360f995f2f4..36e095a0f6b 100644 --- a/apps/android/app/build.gradle.kts +++ b/apps/android/app/build.gradle.kts @@ -65,8 +65,8 @@ android { applicationId = "ai.openclaw.app" minSdk = 31 targetSdk = 36 - versionCode = 2026040100 - versionName = "2026.4.1" + versionCode = 2026040101 + versionName = "2026.4.1-beta.1" ndk { // Support all major ABIs — native libs are tiny (~47 KB per ABI) abiFilters += listOf("armeabi-v7a", "arm64-v8a", "x86", "x86_64") diff --git a/apps/ios/Config/Version.xcconfig b/apps/ios/Config/Version.xcconfig index bf5cb774a68..335a597f3c2 100644 --- a/apps/ios/Config/Version.xcconfig +++ b/apps/ios/Config/Version.xcconfig @@ -1,8 +1,8 @@ // Shared iOS version defaults. // Generated overrides live in build/Version.xcconfig (git-ignored). -OPENCLAW_GATEWAY_VERSION = 2026.4.1 +OPENCLAW_GATEWAY_VERSION = 2026.4.1-beta.1 OPENCLAW_MARKETING_VERSION = 2026.4.1 -OPENCLAW_BUILD_VERSION = 2026040100 +OPENCLAW_BUILD_VERSION = 2026040101 #include? "../build/Version.xcconfig" diff --git a/apps/macos/Sources/OpenClaw/Resources/Info.plist b/apps/macos/Sources/OpenClaw/Resources/Info.plist index a60077a981b..bbf938b5bf4 100644 --- a/apps/macos/Sources/OpenClaw/Resources/Info.plist +++ b/apps/macos/Sources/OpenClaw/Resources/Info.plist @@ -15,9 +15,9 @@ CFBundlePackageType APPL CFBundleShortVersionString - 2026.4.1 + 2026.4.1-beta.1 CFBundleVersion - 2026040100 + 2026040101 CFBundleIconFile OpenClaw CFBundleURLTypes diff --git a/docs/.generated/config-baseline.json b/docs/.generated/config-baseline.json index c42b45d1abf..749b2cc9fc7 100644 --- a/docs/.generated/config-baseline.json +++ b/docs/.generated/config-baseline.json @@ -31521,7 +31521,7 @@ "network" ], "label": "Slack Exec Approval Approvers", - "help": "Slack user IDs allowed to approve exec requests for this workspace account. Use Slack user IDs or user targets such as `U123`, `user:U123`, or `<@U123>`. If you leave this unset, OpenClaw falls back to owner IDs inferred from channels.slack.allowFrom, channels.slack.dm.allowFrom, and defaultTo when possible.", + "help": "Slack user IDs allowed to approve exec requests for this workspace account. Use Slack user IDs or user targets such as `U123`, `user:U123`, or `<@U123>`. If you leave this unset, OpenClaw falls back to commands.ownerAllowFrom when possible.", "hasChildren": true }, { @@ -32768,6 +32768,31 @@ "tags": [], "hasChildren": false }, + { + "path": "channels.telegram.accounts.*.direct.*.errorCooldownMs", + "kind": "channel", + "type": "integer", + "required": false, + "deprecated": false, + "sensitive": false, + "tags": [], + "hasChildren": false + }, + { + "path": "channels.telegram.accounts.*.direct.*.errorPolicy", + "kind": "channel", + "type": "string", + "required": false, + "enumValues": [ + "always", + "once", + "silent" + ], + "deprecated": false, + "sensitive": false, + "tags": [], + "hasChildren": false + }, { "path": "channels.telegram.accounts.*.direct.*.requireTopic", "kind": "channel", @@ -33031,6 +33056,31 @@ "tags": [], "hasChildren": false }, + { + "path": "channels.telegram.accounts.*.direct.*.topics.*.errorCooldownMs", + "kind": "channel", + "type": "integer", + "required": false, + "deprecated": false, + "sensitive": false, + "tags": [], + "hasChildren": false + }, + { + "path": "channels.telegram.accounts.*.direct.*.topics.*.errorPolicy", + "kind": "channel", + "type": "string", + "required": false, + "enumValues": [ + "always", + "once", + "silent" + ], + "deprecated": false, + "sensitive": false, + "tags": [], + "hasChildren": false + }, { "path": "channels.telegram.accounts.*.direct.*.topics.*.groupPolicy", "kind": "channel", @@ -33193,6 +33243,31 @@ "tags": [], "hasChildren": false }, + { + "path": "channels.telegram.accounts.*.errorCooldownMs", + "kind": "channel", + "type": "integer", + "required": false, + "deprecated": false, + "sensitive": false, + "tags": [], + "hasChildren": false + }, + { + "path": "channels.telegram.accounts.*.errorPolicy", + "kind": "channel", + "type": "string", + "required": false, + "enumValues": [ + "always", + "once", + "silent" + ], + "deprecated": false, + "sensitive": false, + "tags": [], + "hasChildren": false + }, { "path": "channels.telegram.accounts.*.execApprovals", "kind": "channel", @@ -33393,6 +33468,31 @@ "tags": [], "hasChildren": false }, + { + "path": "channels.telegram.accounts.*.groups.*.errorCooldownMs", + "kind": "channel", + "type": "integer", + "required": false, + "deprecated": false, + "sensitive": false, + "tags": [], + "hasChildren": false + }, + { + "path": "channels.telegram.accounts.*.groups.*.errorPolicy", + "kind": "channel", + "type": "string", + "required": false, + "enumValues": [ + "always", + "once", + "silent" + ], + "deprecated": false, + "sensitive": false, + "tags": [], + "hasChildren": false + }, { "path": "channels.telegram.accounts.*.groups.*.groupPolicy", "kind": "channel", @@ -33671,6 +33771,31 @@ "tags": [], "hasChildren": false }, + { + "path": "channels.telegram.accounts.*.groups.*.topics.*.errorCooldownMs", + "kind": "channel", + "type": "integer", + "required": false, + "deprecated": false, + "sensitive": false, + "tags": [], + "hasChildren": false + }, + { + "path": "channels.telegram.accounts.*.groups.*.topics.*.errorPolicy", + "kind": "channel", + "type": "string", + "required": false, + "enumValues": [ + "always", + "once", + "silent" + ], + "deprecated": false, + "sensitive": false, + "tags": [], + "hasChildren": false + }, { "path": "channels.telegram.accounts.*.groups.*.topics.*.groupPolicy", "kind": "channel", @@ -34805,6 +34930,31 @@ "tags": [], "hasChildren": false }, + { + "path": "channels.telegram.direct.*.errorCooldownMs", + "kind": "channel", + "type": "integer", + "required": false, + "deprecated": false, + "sensitive": false, + "tags": [], + "hasChildren": false + }, + { + "path": "channels.telegram.direct.*.errorPolicy", + "kind": "channel", + "type": "string", + "required": false, + "enumValues": [ + "always", + "once", + "silent" + ], + "deprecated": false, + "sensitive": false, + "tags": [], + "hasChildren": false + }, { "path": "channels.telegram.direct.*.requireTopic", "kind": "channel", @@ -35068,6 +35218,31 @@ "tags": [], "hasChildren": false }, + { + "path": "channels.telegram.direct.*.topics.*.errorCooldownMs", + "kind": "channel", + "type": "integer", + "required": false, + "deprecated": false, + "sensitive": false, + "tags": [], + "hasChildren": false + }, + { + "path": "channels.telegram.direct.*.topics.*.errorPolicy", + "kind": "channel", + "type": "string", + "required": false, + "enumValues": [ + "always", + "once", + "silent" + ], + "deprecated": false, + "sensitive": false, + "tags": [], + "hasChildren": false + }, { "path": "channels.telegram.direct.*.topics.*.groupPolicy", "kind": "channel", @@ -35236,6 +35411,31 @@ "tags": [], "hasChildren": false }, + { + "path": "channels.telegram.errorCooldownMs", + "kind": "channel", + "type": "integer", + "required": false, + "deprecated": false, + "sensitive": false, + "tags": [], + "hasChildren": false + }, + { + "path": "channels.telegram.errorPolicy", + "kind": "channel", + "type": "string", + "required": false, + "enumValues": [ + "always", + "once", + "silent" + ], + "deprecated": false, + "sensitive": false, + "tags": [], + "hasChildren": false + }, { "path": "channels.telegram.execApprovals", "kind": "channel", @@ -35467,6 +35667,31 @@ "tags": [], "hasChildren": false }, + { + "path": "channels.telegram.groups.*.errorCooldownMs", + "kind": "channel", + "type": "integer", + "required": false, + "deprecated": false, + "sensitive": false, + "tags": [], + "hasChildren": false + }, + { + "path": "channels.telegram.groups.*.errorPolicy", + "kind": "channel", + "type": "string", + "required": false, + "enumValues": [ + "always", + "once", + "silent" + ], + "deprecated": false, + "sensitive": false, + "tags": [], + "hasChildren": false + }, { "path": "channels.telegram.groups.*.groupPolicy", "kind": "channel", @@ -35745,6 +35970,31 @@ "tags": [], "hasChildren": false }, + { + "path": "channels.telegram.groups.*.topics.*.errorCooldownMs", + "kind": "channel", + "type": "integer", + "required": false, + "deprecated": false, + "sensitive": false, + "tags": [], + "hasChildren": false + }, + { + "path": "channels.telegram.groups.*.topics.*.errorPolicy", + "kind": "channel", + "type": "string", + "required": false, + "enumValues": [ + "always", + "once", + "silent" + ], + "deprecated": false, + "sensitive": false, + "tags": [], + "hasChildren": false + }, { "path": "channels.telegram.groups.*.topics.*.groupPolicy", "kind": "channel", @@ -42753,6 +43003,31 @@ "tags": [], "hasChildren": false }, + { + "path": "gateway.webchat", + "kind": "core", + "type": "object", + "required": false, + "deprecated": false, + "sensitive": false, + "tags": [], + "hasChildren": true + }, + { + "path": "gateway.webchat.chatHistoryMaxChars", + "kind": "core", + "type": "integer", + "required": false, + "deprecated": false, + "sensitive": false, + "tags": [ + "network", + "performance" + ], + "label": "WebChat History Max Chars", + "help": "Max characters per text field in chat.history responses before truncation (default: 12000).", + "hasChildren": false + }, { "path": "hooks", "kind": "core", @@ -55724,6 +55999,183 @@ "help": "Explicitly allows this plugin to request provider/model overrides in background subagent runs. Keep false unless the plugin is trusted to steer model selection.", "hasChildren": false }, + { + "path": "plugins.entries.searxng", + "kind": "plugin", + "type": "object", + "required": false, + "deprecated": false, + "sensitive": false, + "tags": [ + "advanced" + ], + "label": "@openclaw/searxng-plugin", + "help": "OpenClaw SearXNG plugin (plugin: searxng)", + "hasChildren": true + }, + { + "path": "plugins.entries.searxng.config", + "kind": "plugin", + "type": "object", + "required": false, + "deprecated": false, + "sensitive": false, + "tags": [ + "advanced" + ], + "label": "@openclaw/searxng-plugin Config", + "help": "Plugin-defined config payload for searxng.", + "hasChildren": true + }, + { + "path": "plugins.entries.searxng.config.webSearch", + "kind": "plugin", + "type": "object", + "required": false, + "deprecated": false, + "sensitive": false, + "tags": [], + "hasChildren": true + }, + { + "path": "plugins.entries.searxng.config.webSearch.baseUrl", + "kind": "plugin", + "type": [ + "object", + "string" + ], + "required": false, + "deprecated": false, + "sensitive": false, + "tags": [ + "advanced", + "url-secret" + ], + "label": "SearXNG Base URL", + "help": "Base URL of your SearXNG instance, such as http://localhost:8080 or https://search.example.com/searxng.", + "hasChildren": false + }, + { + "path": "plugins.entries.searxng.config.webSearch.categories", + "kind": "plugin", + "type": "string", + "required": false, + "deprecated": false, + "sensitive": false, + "tags": [ + "advanced" + ], + "label": "SearXNG Categories", + "help": "Optional comma-separated categories such as general, news, or science.", + "hasChildren": false + }, + { + "path": "plugins.entries.searxng.config.webSearch.language", + "kind": "plugin", + "type": "string", + "required": false, + "deprecated": false, + "sensitive": false, + "tags": [ + "advanced" + ], + "label": "SearXNG Language", + "help": "Optional language code for results such as en, de, or fr.", + "hasChildren": false + }, + { + "path": "plugins.entries.searxng.enabled", + "kind": "plugin", + "type": "boolean", + "required": false, + "deprecated": false, + "sensitive": false, + "tags": [ + "advanced" + ], + "label": "Enable @openclaw/searxng-plugin", + "hasChildren": false + }, + { + "path": "plugins.entries.searxng.hooks", + "kind": "plugin", + "type": "object", + "required": false, + "deprecated": false, + "sensitive": false, + "tags": [ + "advanced" + ], + "label": "Plugin Hook Policy", + "help": "Per-plugin typed hook policy controls for core-enforced safety gates. Use this to constrain high-impact hook categories without disabling the entire plugin.", + "hasChildren": true + }, + { + "path": "plugins.entries.searxng.hooks.allowPromptInjection", + "kind": "plugin", + "type": "boolean", + "required": false, + "deprecated": false, + "sensitive": false, + "tags": [ + "access" + ], + "label": "Allow Prompt Injection Hooks", + "help": "Controls whether this plugin may mutate prompts through typed hooks. Set false to block `before_prompt_build` and ignore prompt-mutating fields from legacy `before_agent_start`, while preserving legacy `modelOverride` and `providerOverride` behavior.", + "hasChildren": false + }, + { + "path": "plugins.entries.searxng.subagent", + "kind": "plugin", + "type": "object", + "required": false, + "deprecated": false, + "sensitive": false, + "tags": [ + "advanced" + ], + "label": "Plugin Subagent Policy", + "help": "Per-plugin subagent runtime controls for model override trust and allowlists. Keep this unset unless a plugin must explicitly steer subagent model selection.", + "hasChildren": true + }, + { + "path": "plugins.entries.searxng.subagent.allowedModels", + "kind": "plugin", + "type": "array", + "required": false, + "deprecated": false, + "sensitive": false, + "tags": [ + "access" + ], + "label": "Plugin Subagent Allowed Models", + "help": "Allowed override targets for trusted plugin subagent runs as canonical \"provider/model\" refs. Use \"*\" only when you intentionally allow any model.", + "hasChildren": true + }, + { + "path": "plugins.entries.searxng.subagent.allowedModels.*", + "kind": "plugin", + "type": "string", + "required": false, + "deprecated": false, + "sensitive": false, + "tags": [], + "hasChildren": false + }, + { + "path": "plugins.entries.searxng.subagent.allowModelOverride", + "kind": "plugin", + "type": "boolean", + "required": false, + "deprecated": false, + "sensitive": false, + "tags": [ + "access" + ], + "label": "Allow Plugin Subagent Model Override", + "help": "Explicitly allows this plugin to request provider/model overrides in background subagent runs. Keep false unless the plugin is trusted to steer model selection.", + "hasChildren": false + }, { "path": "plugins.entries.sglang", "kind": "plugin", diff --git a/docs/.generated/config-baseline.jsonl b/docs/.generated/config-baseline.jsonl index 33ea8f0d31d..d6474b05f61 100644 --- a/docs/.generated/config-baseline.jsonl +++ b/docs/.generated/config-baseline.jsonl @@ -1,4 +1,4 @@ -{"generatedBy":"scripts/generate-config-doc-baseline.ts","recordType":"meta","totalPaths":5730} +{"generatedBy":"scripts/generate-config-doc-baseline.ts","recordType":"meta","totalPaths":5765} {"recordType":"path","path":"acp","kind":"core","type":"object","required":false,"deprecated":false,"sensitive":false,"tags":["advanced"],"label":"ACP","help":"ACP runtime controls for enabling dispatch, selecting backends, constraining allowed agent targets, and tuning streamed turn projection behavior.","hasChildren":true} {"recordType":"path","path":"acp.allowedAgents","kind":"core","type":"array","required":false,"deprecated":false,"sensitive":false,"tags":["access"],"label":"ACP Allowed Agents","help":"Allowlist of ACP target agent ids permitted for ACP runtime sessions. Empty means no additional allowlist restriction.","hasChildren":true} {"recordType":"path","path":"acp.allowedAgents.*","kind":"core","type":"string","required":false,"deprecated":false,"sensitive":false,"tags":[],"hasChildren":false} @@ -2829,7 +2829,7 @@ {"recordType":"path","path":"channels.slack.execApprovals","kind":"channel","type":"object","required":false,"deprecated":false,"sensitive":false,"tags":["channels","network"],"label":"Slack Exec Approvals","help":"Slack-native exec approval routing and approver authorization. Enable this only when Slack should act as an explicit exec-approval client for the selected workspace account.","hasChildren":true} {"recordType":"path","path":"channels.slack.execApprovals.agentFilter","kind":"channel","type":"array","required":false,"deprecated":false,"sensitive":false,"tags":["channels","network"],"label":"Slack Exec Approval Agent Filter","help":"Optional allowlist of agent IDs eligible for Slack exec approvals, for example `[\"main\", \"ops-agent\"]`. Use this to keep approval prompts scoped to the agents you actually operate from Slack.","hasChildren":true} {"recordType":"path","path":"channels.slack.execApprovals.agentFilter.*","kind":"channel","type":"string","required":false,"deprecated":false,"sensitive":false,"tags":[],"hasChildren":false} -{"recordType":"path","path":"channels.slack.execApprovals.approvers","kind":"channel","type":"array","required":false,"deprecated":false,"sensitive":false,"tags":["channels","network"],"label":"Slack Exec Approval Approvers","help":"Slack user IDs allowed to approve exec requests for this workspace account. Use Slack user IDs or user targets such as `U123`, `user:U123`, or `<@U123>`. If you leave this unset, OpenClaw falls back to owner IDs inferred from channels.slack.allowFrom, channels.slack.dm.allowFrom, and defaultTo when possible.","hasChildren":true} +{"recordType":"path","path":"channels.slack.execApprovals.approvers","kind":"channel","type":"array","required":false,"deprecated":false,"sensitive":false,"tags":["channels","network"],"label":"Slack Exec Approval Approvers","help":"Slack user IDs allowed to approve exec requests for this workspace account. Use Slack user IDs or user targets such as `U123`, `user:U123`, or `<@U123>`. If you leave this unset, OpenClaw falls back to commands.ownerAllowFrom when possible.","hasChildren":true} {"recordType":"path","path":"channels.slack.execApprovals.approvers.*","kind":"channel","type":["number","string"],"required":false,"deprecated":false,"sensitive":false,"tags":[],"hasChildren":false} {"recordType":"path","path":"channels.slack.execApprovals.enabled","kind":"channel","type":"boolean","required":false,"deprecated":false,"sensitive":false,"tags":["channels","network"],"label":"Slack Exec Approvals Enabled","help":"Enable Slack exec approvals for this account. When false or unset, Slack messages/buttons cannot approve exec requests.","hasChildren":false} {"recordType":"path","path":"channels.slack.execApprovals.sessionFilter","kind":"channel","type":"array","required":false,"deprecated":false,"sensitive":false,"tags":["channels","network","storage"],"label":"Slack Exec Approval Session Filter","help":"Optional session-key filters matched as substring or regex-style patterns before Slack approval routing is used. Use narrow patterns so Slack approvals only appear for intended sessions.","hasChildren":true} @@ -2936,6 +2936,8 @@ {"recordType":"path","path":"channels.telegram.accounts.*.direct.*.autoTopicLabel.prompt","kind":"channel","type":"string","required":false,"deprecated":false,"sensitive":false,"tags":[],"hasChildren":false} {"recordType":"path","path":"channels.telegram.accounts.*.direct.*.dmPolicy","kind":"channel","type":"string","required":false,"enumValues":["pairing","allowlist","open","disabled"],"deprecated":false,"sensitive":false,"tags":[],"hasChildren":false} {"recordType":"path","path":"channels.telegram.accounts.*.direct.*.enabled","kind":"channel","type":"boolean","required":false,"deprecated":false,"sensitive":false,"tags":[],"hasChildren":false} +{"recordType":"path","path":"channels.telegram.accounts.*.direct.*.errorCooldownMs","kind":"channel","type":"integer","required":false,"deprecated":false,"sensitive":false,"tags":[],"hasChildren":false} +{"recordType":"path","path":"channels.telegram.accounts.*.direct.*.errorPolicy","kind":"channel","type":"string","required":false,"enumValues":["always","once","silent"],"deprecated":false,"sensitive":false,"tags":[],"hasChildren":false} {"recordType":"path","path":"channels.telegram.accounts.*.direct.*.requireTopic","kind":"channel","type":"boolean","required":false,"deprecated":false,"sensitive":false,"tags":[],"hasChildren":false} {"recordType":"path","path":"channels.telegram.accounts.*.direct.*.skills","kind":"channel","type":"array","required":false,"deprecated":false,"sensitive":false,"tags":[],"hasChildren":true} {"recordType":"path","path":"channels.telegram.accounts.*.direct.*.skills.*","kind":"channel","type":"string","required":false,"deprecated":false,"sensitive":false,"tags":[],"hasChildren":false} @@ -2962,6 +2964,8 @@ {"recordType":"path","path":"channels.telegram.accounts.*.direct.*.topics.*.allowFrom.*","kind":"channel","type":["number","string"],"required":false,"deprecated":false,"sensitive":false,"tags":[],"hasChildren":false} {"recordType":"path","path":"channels.telegram.accounts.*.direct.*.topics.*.disableAudioPreflight","kind":"channel","type":"boolean","required":false,"deprecated":false,"sensitive":false,"tags":[],"hasChildren":false} {"recordType":"path","path":"channels.telegram.accounts.*.direct.*.topics.*.enabled","kind":"channel","type":"boolean","required":false,"deprecated":false,"sensitive":false,"tags":[],"hasChildren":false} +{"recordType":"path","path":"channels.telegram.accounts.*.direct.*.topics.*.errorCooldownMs","kind":"channel","type":"integer","required":false,"deprecated":false,"sensitive":false,"tags":[],"hasChildren":false} +{"recordType":"path","path":"channels.telegram.accounts.*.direct.*.topics.*.errorPolicy","kind":"channel","type":"string","required":false,"enumValues":["always","once","silent"],"deprecated":false,"sensitive":false,"tags":[],"hasChildren":false} {"recordType":"path","path":"channels.telegram.accounts.*.direct.*.topics.*.groupPolicy","kind":"channel","type":"string","required":false,"enumValues":["open","disabled","allowlist"],"deprecated":false,"sensitive":false,"tags":[],"hasChildren":false} {"recordType":"path","path":"channels.telegram.accounts.*.direct.*.topics.*.requireMention","kind":"channel","type":"boolean","required":false,"deprecated":false,"sensitive":false,"tags":[],"hasChildren":false} {"recordType":"path","path":"channels.telegram.accounts.*.direct.*.topics.*.skills","kind":"channel","type":"array","required":false,"deprecated":false,"sensitive":false,"tags":[],"hasChildren":true} @@ -2977,6 +2981,8 @@ {"recordType":"path","path":"channels.telegram.accounts.*.draftChunk.maxChars","kind":"channel","type":"integer","required":false,"deprecated":false,"sensitive":false,"tags":[],"hasChildren":false} {"recordType":"path","path":"channels.telegram.accounts.*.draftChunk.minChars","kind":"channel","type":"integer","required":false,"deprecated":false,"sensitive":false,"tags":[],"hasChildren":false} {"recordType":"path","path":"channels.telegram.accounts.*.enabled","kind":"channel","type":"boolean","required":false,"deprecated":false,"sensitive":false,"tags":[],"hasChildren":false} +{"recordType":"path","path":"channels.telegram.accounts.*.errorCooldownMs","kind":"channel","type":"integer","required":false,"deprecated":false,"sensitive":false,"tags":[],"hasChildren":false} +{"recordType":"path","path":"channels.telegram.accounts.*.errorPolicy","kind":"channel","type":"string","required":false,"enumValues":["always","once","silent"],"deprecated":false,"sensitive":false,"tags":[],"hasChildren":false} {"recordType":"path","path":"channels.telegram.accounts.*.execApprovals","kind":"channel","type":"object","required":false,"deprecated":false,"sensitive":false,"tags":[],"hasChildren":true} {"recordType":"path","path":"channels.telegram.accounts.*.execApprovals.agentFilter","kind":"channel","type":"array","required":false,"deprecated":false,"sensitive":false,"tags":[],"hasChildren":true} {"recordType":"path","path":"channels.telegram.accounts.*.execApprovals.agentFilter.*","kind":"channel","type":"string","required":false,"deprecated":false,"sensitive":false,"tags":[],"hasChildren":false} @@ -2995,6 +3001,8 @@ {"recordType":"path","path":"channels.telegram.accounts.*.groups.*.allowFrom.*","kind":"channel","type":["number","string"],"required":false,"deprecated":false,"sensitive":false,"tags":[],"hasChildren":false} {"recordType":"path","path":"channels.telegram.accounts.*.groups.*.disableAudioPreflight","kind":"channel","type":"boolean","required":false,"deprecated":false,"sensitive":false,"tags":[],"hasChildren":false} {"recordType":"path","path":"channels.telegram.accounts.*.groups.*.enabled","kind":"channel","type":"boolean","required":false,"deprecated":false,"sensitive":false,"tags":[],"hasChildren":false} +{"recordType":"path","path":"channels.telegram.accounts.*.groups.*.errorCooldownMs","kind":"channel","type":"integer","required":false,"deprecated":false,"sensitive":false,"tags":[],"hasChildren":false} +{"recordType":"path","path":"channels.telegram.accounts.*.groups.*.errorPolicy","kind":"channel","type":"string","required":false,"enumValues":["always","once","silent"],"deprecated":false,"sensitive":false,"tags":[],"hasChildren":false} {"recordType":"path","path":"channels.telegram.accounts.*.groups.*.groupPolicy","kind":"channel","type":"string","required":false,"enumValues":["open","disabled","allowlist"],"deprecated":false,"sensitive":false,"tags":[],"hasChildren":false} {"recordType":"path","path":"channels.telegram.accounts.*.groups.*.requireMention","kind":"channel","type":"boolean","required":false,"deprecated":false,"sensitive":false,"tags":[],"hasChildren":false} {"recordType":"path","path":"channels.telegram.accounts.*.groups.*.skills","kind":"channel","type":"array","required":false,"deprecated":false,"sensitive":false,"tags":[],"hasChildren":true} @@ -3022,6 +3030,8 @@ {"recordType":"path","path":"channels.telegram.accounts.*.groups.*.topics.*.allowFrom.*","kind":"channel","type":["number","string"],"required":false,"deprecated":false,"sensitive":false,"tags":[],"hasChildren":false} {"recordType":"path","path":"channels.telegram.accounts.*.groups.*.topics.*.disableAudioPreflight","kind":"channel","type":"boolean","required":false,"deprecated":false,"sensitive":false,"tags":[],"hasChildren":false} {"recordType":"path","path":"channels.telegram.accounts.*.groups.*.topics.*.enabled","kind":"channel","type":"boolean","required":false,"deprecated":false,"sensitive":false,"tags":[],"hasChildren":false} +{"recordType":"path","path":"channels.telegram.accounts.*.groups.*.topics.*.errorCooldownMs","kind":"channel","type":"integer","required":false,"deprecated":false,"sensitive":false,"tags":[],"hasChildren":false} +{"recordType":"path","path":"channels.telegram.accounts.*.groups.*.topics.*.errorPolicy","kind":"channel","type":"string","required":false,"enumValues":["always","once","silent"],"deprecated":false,"sensitive":false,"tags":[],"hasChildren":false} {"recordType":"path","path":"channels.telegram.accounts.*.groups.*.topics.*.groupPolicy","kind":"channel","type":"string","required":false,"enumValues":["open","disabled","allowlist"],"deprecated":false,"sensitive":false,"tags":[],"hasChildren":false} {"recordType":"path","path":"channels.telegram.accounts.*.groups.*.topics.*.requireMention","kind":"channel","type":"boolean","required":false,"deprecated":false,"sensitive":false,"tags":[],"hasChildren":false} {"recordType":"path","path":"channels.telegram.accounts.*.groups.*.topics.*.skills","kind":"channel","type":"array","required":false,"deprecated":false,"sensitive":false,"tags":[],"hasChildren":true} @@ -3121,6 +3131,8 @@ {"recordType":"path","path":"channels.telegram.direct.*.autoTopicLabel.prompt","kind":"channel","type":"string","required":false,"deprecated":false,"sensitive":false,"tags":[],"hasChildren":false} {"recordType":"path","path":"channels.telegram.direct.*.dmPolicy","kind":"channel","type":"string","required":false,"enumValues":["pairing","allowlist","open","disabled"],"deprecated":false,"sensitive":false,"tags":[],"hasChildren":false} {"recordType":"path","path":"channels.telegram.direct.*.enabled","kind":"channel","type":"boolean","required":false,"deprecated":false,"sensitive":false,"tags":[],"hasChildren":false} +{"recordType":"path","path":"channels.telegram.direct.*.errorCooldownMs","kind":"channel","type":"integer","required":false,"deprecated":false,"sensitive":false,"tags":[],"hasChildren":false} +{"recordType":"path","path":"channels.telegram.direct.*.errorPolicy","kind":"channel","type":"string","required":false,"enumValues":["always","once","silent"],"deprecated":false,"sensitive":false,"tags":[],"hasChildren":false} {"recordType":"path","path":"channels.telegram.direct.*.requireTopic","kind":"channel","type":"boolean","required":false,"deprecated":false,"sensitive":false,"tags":[],"hasChildren":false} {"recordType":"path","path":"channels.telegram.direct.*.skills","kind":"channel","type":"array","required":false,"deprecated":false,"sensitive":false,"tags":[],"hasChildren":true} {"recordType":"path","path":"channels.telegram.direct.*.skills.*","kind":"channel","type":"string","required":false,"deprecated":false,"sensitive":false,"tags":[],"hasChildren":false} @@ -3147,6 +3159,8 @@ {"recordType":"path","path":"channels.telegram.direct.*.topics.*.allowFrom.*","kind":"channel","type":["number","string"],"required":false,"deprecated":false,"sensitive":false,"tags":[],"hasChildren":false} {"recordType":"path","path":"channels.telegram.direct.*.topics.*.disableAudioPreflight","kind":"channel","type":"boolean","required":false,"deprecated":false,"sensitive":false,"tags":[],"hasChildren":false} {"recordType":"path","path":"channels.telegram.direct.*.topics.*.enabled","kind":"channel","type":"boolean","required":false,"deprecated":false,"sensitive":false,"tags":[],"hasChildren":false} +{"recordType":"path","path":"channels.telegram.direct.*.topics.*.errorCooldownMs","kind":"channel","type":"integer","required":false,"deprecated":false,"sensitive":false,"tags":[],"hasChildren":false} +{"recordType":"path","path":"channels.telegram.direct.*.topics.*.errorPolicy","kind":"channel","type":"string","required":false,"enumValues":["always","once","silent"],"deprecated":false,"sensitive":false,"tags":[],"hasChildren":false} {"recordType":"path","path":"channels.telegram.direct.*.topics.*.groupPolicy","kind":"channel","type":"string","required":false,"enumValues":["open","disabled","allowlist"],"deprecated":false,"sensitive":false,"tags":[],"hasChildren":false} {"recordType":"path","path":"channels.telegram.direct.*.topics.*.requireMention","kind":"channel","type":"boolean","required":false,"deprecated":false,"sensitive":false,"tags":[],"hasChildren":false} {"recordType":"path","path":"channels.telegram.direct.*.topics.*.skills","kind":"channel","type":"array","required":false,"deprecated":false,"sensitive":false,"tags":[],"hasChildren":true} @@ -3162,6 +3176,8 @@ {"recordType":"path","path":"channels.telegram.draftChunk.maxChars","kind":"channel","type":"integer","required":false,"deprecated":false,"sensitive":false,"tags":[],"hasChildren":false} {"recordType":"path","path":"channels.telegram.draftChunk.minChars","kind":"channel","type":"integer","required":false,"deprecated":false,"sensitive":false,"tags":[],"hasChildren":false} {"recordType":"path","path":"channels.telegram.enabled","kind":"channel","type":"boolean","required":false,"deprecated":false,"sensitive":false,"tags":[],"hasChildren":false} +{"recordType":"path","path":"channels.telegram.errorCooldownMs","kind":"channel","type":"integer","required":false,"deprecated":false,"sensitive":false,"tags":[],"hasChildren":false} +{"recordType":"path","path":"channels.telegram.errorPolicy","kind":"channel","type":"string","required":false,"enumValues":["always","once","silent"],"deprecated":false,"sensitive":false,"tags":[],"hasChildren":false} {"recordType":"path","path":"channels.telegram.execApprovals","kind":"channel","type":"object","required":false,"deprecated":false,"sensitive":false,"tags":["channels","network"],"label":"Telegram Exec Approvals","help":"Telegram-native exec approval routing and approver authorization. Enable this only when Telegram should act as an explicit exec-approval client for the selected bot account.","hasChildren":true} {"recordType":"path","path":"channels.telegram.execApprovals.agentFilter","kind":"channel","type":"array","required":false,"deprecated":false,"sensitive":false,"tags":["channels","network"],"label":"Telegram Exec Approval Agent Filter","help":"Optional allowlist of agent IDs eligible for Telegram exec approvals, for example `[\"main\", \"ops-agent\"]`. Use this to keep approval prompts scoped to the agents you actually operate from Telegram.","hasChildren":true} {"recordType":"path","path":"channels.telegram.execApprovals.agentFilter.*","kind":"channel","type":"string","required":false,"deprecated":false,"sensitive":false,"tags":[],"hasChildren":false} @@ -3180,6 +3196,8 @@ {"recordType":"path","path":"channels.telegram.groups.*.allowFrom.*","kind":"channel","type":["number","string"],"required":false,"deprecated":false,"sensitive":false,"tags":[],"hasChildren":false} {"recordType":"path","path":"channels.telegram.groups.*.disableAudioPreflight","kind":"channel","type":"boolean","required":false,"deprecated":false,"sensitive":false,"tags":[],"hasChildren":false} {"recordType":"path","path":"channels.telegram.groups.*.enabled","kind":"channel","type":"boolean","required":false,"deprecated":false,"sensitive":false,"tags":[],"hasChildren":false} +{"recordType":"path","path":"channels.telegram.groups.*.errorCooldownMs","kind":"channel","type":"integer","required":false,"deprecated":false,"sensitive":false,"tags":[],"hasChildren":false} +{"recordType":"path","path":"channels.telegram.groups.*.errorPolicy","kind":"channel","type":"string","required":false,"enumValues":["always","once","silent"],"deprecated":false,"sensitive":false,"tags":[],"hasChildren":false} {"recordType":"path","path":"channels.telegram.groups.*.groupPolicy","kind":"channel","type":"string","required":false,"enumValues":["open","disabled","allowlist"],"deprecated":false,"sensitive":false,"tags":[],"hasChildren":false} {"recordType":"path","path":"channels.telegram.groups.*.requireMention","kind":"channel","type":"boolean","required":false,"deprecated":false,"sensitive":false,"tags":[],"hasChildren":false} {"recordType":"path","path":"channels.telegram.groups.*.skills","kind":"channel","type":"array","required":false,"deprecated":false,"sensitive":false,"tags":[],"hasChildren":true} @@ -3207,6 +3225,8 @@ {"recordType":"path","path":"channels.telegram.groups.*.topics.*.allowFrom.*","kind":"channel","type":["number","string"],"required":false,"deprecated":false,"sensitive":false,"tags":[],"hasChildren":false} {"recordType":"path","path":"channels.telegram.groups.*.topics.*.disableAudioPreflight","kind":"channel","type":"boolean","required":false,"deprecated":false,"sensitive":false,"tags":[],"hasChildren":false} {"recordType":"path","path":"channels.telegram.groups.*.topics.*.enabled","kind":"channel","type":"boolean","required":false,"deprecated":false,"sensitive":false,"tags":[],"hasChildren":false} +{"recordType":"path","path":"channels.telegram.groups.*.topics.*.errorCooldownMs","kind":"channel","type":"integer","required":false,"deprecated":false,"sensitive":false,"tags":[],"hasChildren":false} +{"recordType":"path","path":"channels.telegram.groups.*.topics.*.errorPolicy","kind":"channel","type":"string","required":false,"enumValues":["always","once","silent"],"deprecated":false,"sensitive":false,"tags":[],"hasChildren":false} {"recordType":"path","path":"channels.telegram.groups.*.topics.*.groupPolicy","kind":"channel","type":"string","required":false,"enumValues":["open","disabled","allowlist"],"deprecated":false,"sensitive":false,"tags":[],"hasChildren":false} {"recordType":"path","path":"channels.telegram.groups.*.topics.*.requireMention","kind":"channel","type":"boolean","required":false,"deprecated":false,"sensitive":false,"tags":[],"hasChildren":false} {"recordType":"path","path":"channels.telegram.groups.*.topics.*.skills","kind":"channel","type":"array","required":false,"deprecated":false,"sensitive":false,"tags":[],"hasChildren":true} @@ -3797,6 +3817,8 @@ {"recordType":"path","path":"gateway.tools.deny.*","kind":"core","type":"string","required":false,"deprecated":false,"sensitive":false,"tags":[],"hasChildren":false} {"recordType":"path","path":"gateway.trustedProxies","kind":"core","type":"array","required":false,"deprecated":false,"sensitive":false,"tags":["network"],"label":"Gateway Trusted Proxy CIDRs","help":"CIDR/IP allowlist of upstream proxies permitted to provide forwarded client identity headers. Keep this list narrow so untrusted hops cannot impersonate users.","hasChildren":true} {"recordType":"path","path":"gateway.trustedProxies.*","kind":"core","type":"string","required":false,"deprecated":false,"sensitive":false,"tags":[],"hasChildren":false} +{"recordType":"path","path":"gateway.webchat","kind":"core","type":"object","required":false,"deprecated":false,"sensitive":false,"tags":[],"hasChildren":true} +{"recordType":"path","path":"gateway.webchat.chatHistoryMaxChars","kind":"core","type":"integer","required":false,"deprecated":false,"sensitive":false,"tags":["network","performance"],"label":"WebChat History Max Chars","help":"Max characters per text field in chat.history responses before truncation (default: 12000).","hasChildren":false} {"recordType":"path","path":"hooks","kind":"core","type":"object","required":false,"deprecated":false,"sensitive":false,"tags":["advanced"],"label":"Hooks","help":"Inbound webhook automation surface for mapping external events into wake or agent actions in OpenClaw. Keep this locked down with explicit token/session/agent controls before exposing it beyond trusted networks.","hasChildren":true} {"recordType":"path","path":"hooks.allowedAgentIds","kind":"core","type":"array","required":false,"deprecated":false,"sensitive":false,"tags":["access"],"label":"Hooks Allowed Agent IDs","help":"Allowlist of agent IDs that hook mappings are allowed to target when selecting execution agents. Use this to constrain automation events to dedicated service agents and reduce blast radius if a hook token is exposed.","hasChildren":true} {"recordType":"path","path":"hooks.allowedAgentIds.*","kind":"core","type":"string","required":false,"deprecated":false,"sensitive":false,"tags":[],"hasChildren":false} @@ -4790,6 +4812,19 @@ {"recordType":"path","path":"plugins.entries.qqbot.subagent.allowedModels","kind":"plugin","type":"array","required":false,"deprecated":false,"sensitive":false,"tags":["access"],"label":"Plugin Subagent Allowed Models","help":"Allowed override targets for trusted plugin subagent runs as canonical \"provider/model\" refs. Use \"*\" only when you intentionally allow any model.","hasChildren":true} {"recordType":"path","path":"plugins.entries.qqbot.subagent.allowedModels.*","kind":"plugin","type":"string","required":false,"deprecated":false,"sensitive":false,"tags":[],"hasChildren":false} {"recordType":"path","path":"plugins.entries.qqbot.subagent.allowModelOverride","kind":"plugin","type":"boolean","required":false,"deprecated":false,"sensitive":false,"tags":["access"],"label":"Allow Plugin Subagent Model Override","help":"Explicitly allows this plugin to request provider/model overrides in background subagent runs. Keep false unless the plugin is trusted to steer model selection.","hasChildren":false} +{"recordType":"path","path":"plugins.entries.searxng","kind":"plugin","type":"object","required":false,"deprecated":false,"sensitive":false,"tags":["advanced"],"label":"@openclaw/searxng-plugin","help":"OpenClaw SearXNG plugin (plugin: searxng)","hasChildren":true} +{"recordType":"path","path":"plugins.entries.searxng.config","kind":"plugin","type":"object","required":false,"deprecated":false,"sensitive":false,"tags":["advanced"],"label":"@openclaw/searxng-plugin Config","help":"Plugin-defined config payload for searxng.","hasChildren":true} +{"recordType":"path","path":"plugins.entries.searxng.config.webSearch","kind":"plugin","type":"object","required":false,"deprecated":false,"sensitive":false,"tags":[],"hasChildren":true} +{"recordType":"path","path":"plugins.entries.searxng.config.webSearch.baseUrl","kind":"plugin","type":["object","string"],"required":false,"deprecated":false,"sensitive":false,"tags":["advanced","url-secret"],"label":"SearXNG Base URL","help":"Base URL of your SearXNG instance, such as http://localhost:8080 or https://search.example.com/searxng.","hasChildren":false} +{"recordType":"path","path":"plugins.entries.searxng.config.webSearch.categories","kind":"plugin","type":"string","required":false,"deprecated":false,"sensitive":false,"tags":["advanced"],"label":"SearXNG Categories","help":"Optional comma-separated categories such as general, news, or science.","hasChildren":false} +{"recordType":"path","path":"plugins.entries.searxng.config.webSearch.language","kind":"plugin","type":"string","required":false,"deprecated":false,"sensitive":false,"tags":["advanced"],"label":"SearXNG Language","help":"Optional language code for results such as en, de, or fr.","hasChildren":false} +{"recordType":"path","path":"plugins.entries.searxng.enabled","kind":"plugin","type":"boolean","required":false,"deprecated":false,"sensitive":false,"tags":["advanced"],"label":"Enable @openclaw/searxng-plugin","hasChildren":false} +{"recordType":"path","path":"plugins.entries.searxng.hooks","kind":"plugin","type":"object","required":false,"deprecated":false,"sensitive":false,"tags":["advanced"],"label":"Plugin Hook Policy","help":"Per-plugin typed hook policy controls for core-enforced safety gates. Use this to constrain high-impact hook categories without disabling the entire plugin.","hasChildren":true} +{"recordType":"path","path":"plugins.entries.searxng.hooks.allowPromptInjection","kind":"plugin","type":"boolean","required":false,"deprecated":false,"sensitive":false,"tags":["access"],"label":"Allow Prompt Injection Hooks","help":"Controls whether this plugin may mutate prompts through typed hooks. Set false to block `before_prompt_build` and ignore prompt-mutating fields from legacy `before_agent_start`, while preserving legacy `modelOverride` and `providerOverride` behavior.","hasChildren":false} +{"recordType":"path","path":"plugins.entries.searxng.subagent","kind":"plugin","type":"object","required":false,"deprecated":false,"sensitive":false,"tags":["advanced"],"label":"Plugin Subagent Policy","help":"Per-plugin subagent runtime controls for model override trust and allowlists. Keep this unset unless a plugin must explicitly steer subagent model selection.","hasChildren":true} +{"recordType":"path","path":"plugins.entries.searxng.subagent.allowedModels","kind":"plugin","type":"array","required":false,"deprecated":false,"sensitive":false,"tags":["access"],"label":"Plugin Subagent Allowed Models","help":"Allowed override targets for trusted plugin subagent runs as canonical \"provider/model\" refs. Use \"*\" only when you intentionally allow any model.","hasChildren":true} +{"recordType":"path","path":"plugins.entries.searxng.subagent.allowedModels.*","kind":"plugin","type":"string","required":false,"deprecated":false,"sensitive":false,"tags":[],"hasChildren":false} +{"recordType":"path","path":"plugins.entries.searxng.subagent.allowModelOverride","kind":"plugin","type":"boolean","required":false,"deprecated":false,"sensitive":false,"tags":["access"],"label":"Allow Plugin Subagent Model Override","help":"Explicitly allows this plugin to request provider/model overrides in background subagent runs. Keep false unless the plugin is trusted to steer model selection.","hasChildren":false} {"recordType":"path","path":"plugins.entries.sglang","kind":"plugin","type":"object","required":false,"deprecated":false,"sensitive":false,"tags":["advanced"],"label":"@openclaw/sglang-provider","help":"OpenClaw SGLang provider plugin (plugin: sglang)","hasChildren":true} {"recordType":"path","path":"plugins.entries.sglang.config","kind":"plugin","type":"object","required":false,"deprecated":false,"sensitive":false,"tags":["advanced"],"label":"@openclaw/sglang-provider Config","help":"Plugin-defined config payload for sglang.","hasChildren":false} {"recordType":"path","path":"plugins.entries.sglang.enabled","kind":"plugin","type":"boolean","required":false,"deprecated":false,"sensitive":false,"tags":["advanced"],"label":"Enable @openclaw/sglang-provider","hasChildren":false} diff --git a/docs/.generated/plugin-sdk-api-baseline.json b/docs/.generated/plugin-sdk-api-baseline.json index ce70f5a6de9..dc7fbf61382 100644 --- a/docs/.generated/plugin-sdk-api-baseline.json +++ b/docs/.generated/plugin-sdk-api-baseline.json @@ -1024,7 +1024,7 @@ "exportName": "DiscordConfigSchema", "kind": "const", "source": { - "line": 677, + "line": 686, "path": "src/config/zod-schema.providers-core.ts" } }, @@ -1051,7 +1051,7 @@ "exportName": "GoogleChatConfigSchema", "kind": "const", "source": { - "line": 816, + "line": 825, "path": "src/config/zod-schema.providers-core.ts" } }, @@ -1069,7 +1069,7 @@ "exportName": "IMessageConfigSchema", "kind": "const", "source": { - "line": 1324, + "line": 1333, "path": "src/config/zod-schema.providers-core.ts" } }, @@ -1087,7 +1087,7 @@ "exportName": "MSTeamsConfigSchema", "kind": "const", "source": { - "line": 1506, + "line": 1515, "path": "src/config/zod-schema.providers-core.ts" } }, @@ -1114,7 +1114,7 @@ "exportName": "SignalConfigSchema", "kind": "const", "source": { - "line": 1082, + "line": 1091, "path": "src/config/zod-schema.providers-core.ts" } }, @@ -1123,16 +1123,16 @@ "exportName": "SlackConfigSchema", "kind": "const", "source": { - "line": 950, + "line": 959, "path": "src/config/zod-schema.providers-core.ts" } }, { - "declaration": "export const TelegramConfigSchema: z.ZodObject<{ name: z.ZodOptional; capabilities: z.ZodOptional, z.ZodObject<{ inlineButtons: z.ZodOptional>; }, z.core.$strict>]>>; execApprovals: z.ZodOptional; approvers: z.ZodOptional>>; agentFilter: z.ZodOptional>; sessionFilter: z.ZodOptional>; target: z.ZodOptional>; }, z.core.$strict>>; markdown: z.ZodOptional>; }, z.core.$strict>>; enabled: z.ZodOptional; commands: z.ZodOptional]>>; nativeSkills: z.ZodOptional]>>; }, z.core.$strict>>; customCommands: z.ZodOptional>>; configWrites: z.ZodOptional; dmPolicy: z.ZodDefault>>; botToken: z.ZodOptional; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"file\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"exec\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>], \"source\">]>>; tokenFile: z.ZodOptional; replyToMode: z.ZodOptional, z.ZodLiteral<\"first\">, z.ZodLiteral<\"all\">]>>; groups: z.ZodOptional; disableAudioPreflight: z.ZodOptional; groupPolicy: z.ZodOptional>; tools: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>; toolsBySender: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>>>; skills: z.ZodOptional>; enabled: z.ZodOptional; allowFrom: z.ZodOptional>>; systemPrompt: z.ZodOptional; topics: z.ZodOptional; disableAudioPreflight: z.ZodOptional; groupPolicy: z.ZodOptional>; skills: z.ZodOptional>; enabled: z.ZodOptional; allowFrom: z.ZodOptional>>; systemPrompt: z.ZodOptional; agentId: z.ZodOptional; }, z.core.$strict>>>>; }, z.core.$strict>>>>; allowFrom: z.ZodOptional>>; defaultTo: z.ZodOptional>; groupAllowFrom: z.ZodOptional>>; groupPolicy: z.ZodDefault>>; historyLimit: z.ZodOptional; dmHistoryLimit: z.ZodOptional; dms: z.ZodOptional; }, z.core.$strict>>>>; direct: z.ZodOptional>; tools: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>; toolsBySender: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>>>; skills: z.ZodOptional>; enabled: z.ZodOptional; allowFrom: z.ZodOptional>>; systemPrompt: z.ZodOptional; topics: z.ZodOptional; disableAudioPreflight: z.ZodOptional; groupPolicy: z.ZodOptional>; skills: z.ZodOptional>; enabled: z.ZodOptional; allowFrom: z.ZodOptional>>; systemPrompt: z.ZodOptional; agentId: z.ZodOptional; }, z.core.$strict>>>>; requireTopic: z.ZodOptional; autoTopicLabel: z.ZodOptional; prompt: z.ZodOptional; }, z.core.$strict>]>>; }, z.core.$strict>>>>; textChunkLimit: z.ZodOptional; chunkMode: z.ZodOptional>; streaming: z.ZodOptional]>>; blockStreaming: z.ZodOptional; draftChunk: z.ZodOptional; maxChars: z.ZodOptional; breakPreference: z.ZodOptional, z.ZodLiteral<\"newline\">, z.ZodLiteral<\"sentence\">]>>; }, z.core.$strict>>; blockStreamingCoalesce: z.ZodOptional; maxChars: z.ZodOptional; idleMs: z.ZodOptional; }, z.core.$strict>>; streamMode: z.ZodOptional>; mediaMaxMb: z.ZodOptional; timeoutSeconds: z.ZodOptional; retry: z.ZodOptional; minDelayMs: z.ZodOptional; maxDelayMs: z.ZodOptional; jitter: z.ZodOptional; }, z.core.$strict>>; network: z.ZodOptional; dnsResultOrder: z.ZodOptional>; }, z.core.$strict>>; proxy: z.ZodOptional; webhookUrl: z.ZodOptional; webhookSecret: z.ZodOptional; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"file\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"exec\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>], \"source\">]>>; webhookPath: z.ZodOptional; webhookHost: z.ZodOptional; webhookPort: z.ZodOptional; webhookCertPath: z.ZodOptional; actions: z.ZodOptional; sendMessage: z.ZodOptional; poll: z.ZodOptional; deleteMessage: z.ZodOptional; editMessage: z.ZodOptional; sticker: z.ZodOptional; createForumTopic: z.ZodOptional; editForumTopic: z.ZodOptional; }, z.core.$strict>>; threadBindings: z.ZodOptional; idleHours: z.ZodOptional; maxAgeHours: z.ZodOptional; spawnSubagentSessions: z.ZodOptional; spawnAcpSessions: z.ZodOptional; }, z.core.$strict>>; reactionNotifications: z.ZodOptional>; reactionLevel: z.ZodOptional>; heartbeat: z.ZodOptional; showAlerts: z.ZodOptional; useIndicator: z.ZodOptional; }, z.core.$strict>>; healthMonitor: z.ZodOptional; }, z.core.$strict>>; linkPreview: z.ZodOptional; silentErrorReplies: z.ZodOptional; responsePrefix: z.ZodOptional; ackReaction: z.ZodOptional; apiRoot: z.ZodOptional; autoTopicLabel: z.ZodOptional; prompt: z.ZodOptional; }, z.core.$strict>]>>; accounts: z.ZodOptional; capabilities: z.ZodOptional, z.ZodObject<{ inlineButtons: z.ZodOptional>; }, z.core.$strict>]>>; execApprovals: z.ZodOptional; approvers: z.ZodOptional>>; agentFilter: z.ZodOptional>; sessionFilter: z.ZodOptional>; target: z.ZodOptional>; }, z.core.$strict>>; markdown: z.ZodOptional>; }, z.core.$strict>>; enabled: z.ZodOptional; commands: z.ZodOptional]>>; nativeSkills: z.ZodOptional]>>; }, z.core.$strict>>; customCommands: z.ZodOptional>>; configWrites: z.ZodOptional; dmPolicy: z.ZodDefault>>; botToken: z.ZodOptional; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"file\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"exec\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>], \"source\">]>>; tokenFile: z.ZodOptional; replyToMode: z.ZodOptional, z.ZodLiteral<\"first\">, z.ZodLiteral<\"all\">]>>; groups: z.ZodOptional; disableAudioPreflight: z.ZodOptional; groupPolicy: z.ZodOptional>; tools: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>; toolsBySender: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>>>; skills: z.ZodOptional>; enabled: z.ZodOptional; allowFrom: z.ZodOptional>>; systemPrompt: z.ZodOptional; topics: z.ZodOptional; disableAudioPreflight: z.ZodOptional; groupPolicy: z.ZodOptional>; skills: z.ZodOptional>; enabled: z.ZodOptional; allowFrom: z.ZodOptional>>; systemPrompt: z.ZodOptional; agentId: z.ZodOptional; }, z.core.$strict>>>>; }, z.core.$strict>>>>; allowFrom: z.ZodOptional>>; defaultTo: z.ZodOptional>; groupAllowFrom: z.ZodOptional>>; groupPolicy: z.ZodDefault>>; historyLimit: z.ZodOptional; dmHistoryLimit: z.ZodOptional; dms: z.ZodOptional; }, z.core.$strict>>>>; direct: z.ZodOptional>; tools: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>; toolsBySender: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>>>; skills: z.ZodOptional>; enabled: z.ZodOptional; allowFrom: z.ZodOptional>>; systemPrompt: z.ZodOptional; topics: z.ZodOptional; disableAudioPreflight: z.ZodOptional; groupPolicy: z.ZodOptional>; skills: z.ZodOptional>; enabled: z.ZodOptional; allowFrom: z.ZodOptional>>; systemPrompt: z.ZodOptional; agentId: z.ZodOptional; }, z.core.$strict>>>>; requireTopic: z.ZodOptional; autoTopicLabel: z.ZodOptional; prompt: z.ZodOptional; }, z.core.$strict>]>>; }, z.core.$strict>>>>; textChunkLimit: z.ZodOptional; chunkMode: z.ZodOptional>; streaming: z.ZodOptional]>>; blockStreaming: z.ZodOptional; draftChunk: z.ZodOptional; maxChars: z.ZodOptional; breakPreference: z.ZodOptional, z.ZodLiteral<\"newline\">, z.ZodLiteral<\"sentence\">]>>; }, z.core.$strict>>; blockStreamingCoalesce: z.ZodOptional; maxChars: z.ZodOptional; idleMs: z.ZodOptional; }, z.core.$strict>>; streamMode: z.ZodOptional>; mediaMaxMb: z.ZodOptional; timeoutSeconds: z.ZodOptional; retry: z.ZodOptional; minDelayMs: z.ZodOptional; maxDelayMs: z.ZodOptional; jitter: z.ZodOptional; }, z.core.$strict>>; network: z.ZodOptional; dnsResultOrder: z.ZodOptional>; }, z.core.$strict>>; proxy: z.ZodOptional; webhookUrl: z.ZodOptional; webhookSecret: z.ZodOptional; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"file\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"exec\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>], \"source\">]>>; webhookPath: z.ZodOptional; webhookHost: z.ZodOptional; webhookPort: z.ZodOptional; webhookCertPath: z.ZodOptional; actions: z.ZodOptional; sendMessage: z.ZodOptional; poll: z.ZodOptional; deleteMessage: z.ZodOptional; editMessage: z.ZodOptional; sticker: z.ZodOptional; createForumTopic: z.ZodOptional; editForumTopic: z.ZodOptional; }, z.core.$strict>>; threadBindings: z.ZodOptional; idleHours: z.ZodOptional; maxAgeHours: z.ZodOptional; spawnSubagentSessions: z.ZodOptional; spawnAcpSessions: z.ZodOptional; }, z.core.$strict>>; reactionNotifications: z.ZodOptional>; reactionLevel: z.ZodOptional>; heartbeat: z.ZodOptional; showAlerts: z.ZodOptional; useIndicator: z.ZodOptional; }, z.core.$strict>>; healthMonitor: z.ZodOptional; }, z.core.$strict>>; linkPreview: z.ZodOptional; silentErrorReplies: z.ZodOptional; responsePrefix: z.ZodOptional; ackReaction: z.ZodOptional; apiRoot: z.ZodOptional; autoTopicLabel: z.ZodOptional; prompt: z.ZodOptional; }, z.core.$strict>]>>; }, z.core.$strict>>>>; defaultAccount: z.ZodOptional; }, z.core.$strict>;", + "declaration": "export const TelegramConfigSchema: z.ZodObject<{ name: z.ZodOptional; capabilities: z.ZodOptional, z.ZodObject<{ inlineButtons: z.ZodOptional>; }, z.core.$strict>]>>; execApprovals: z.ZodOptional; approvers: z.ZodOptional>>; agentFilter: z.ZodOptional>; sessionFilter: z.ZodOptional>; target: z.ZodOptional>; }, z.core.$strict>>; markdown: z.ZodOptional>; }, z.core.$strict>>; enabled: z.ZodOptional; commands: z.ZodOptional]>>; nativeSkills: z.ZodOptional]>>; }, z.core.$strict>>; customCommands: z.ZodOptional>>; configWrites: z.ZodOptional; dmPolicy: z.ZodDefault>>; botToken: z.ZodOptional; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"file\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"exec\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>], \"source\">]>>; tokenFile: z.ZodOptional; replyToMode: z.ZodOptional, z.ZodLiteral<\"first\">, z.ZodLiteral<\"all\">]>>; groups: z.ZodOptional; disableAudioPreflight: z.ZodOptional; groupPolicy: z.ZodOptional>; tools: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>; toolsBySender: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>>>; skills: z.ZodOptional>; enabled: z.ZodOptional; allowFrom: z.ZodOptional>>; systemPrompt: z.ZodOptional; topics: z.ZodOptional; disableAudioPreflight: z.ZodOptional; groupPolicy: z.ZodOptional>; skills: z.ZodOptional>; enabled: z.ZodOptional; allowFrom: z.ZodOptional>>; systemPrompt: z.ZodOptional; agentId: z.ZodOptional; errorPolicy: z.ZodOptional>; errorCooldownMs: z.ZodOptional; }, z.core.$strict>>>>; errorPolicy: z.ZodOptional>; errorCooldownMs: z.ZodOptional; }, z.core.$strict>>>>; allowFrom: z.ZodOptional>>; defaultTo: z.ZodOptional>; groupAllowFrom: z.ZodOptional>>; groupPolicy: z.ZodDefault>>; historyLimit: z.ZodOptional; dmHistoryLimit: z.ZodOptional; dms: z.ZodOptional; }, z.core.$strict>>>>; direct: z.ZodOptional>; tools: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>; toolsBySender: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>>>; skills: z.ZodOptional>; enabled: z.ZodOptional; allowFrom: z.ZodOptional>>; systemPrompt: z.ZodOptional; topics: z.ZodOptional; disableAudioPreflight: z.ZodOptional; groupPolicy: z.ZodOptional>; skills: z.ZodOptional>; enabled: z.ZodOptional; allowFrom: z.ZodOptional>>; systemPrompt: z.ZodOptional; agentId: z.ZodOptional; errorPolicy: z.ZodOptional>; errorCooldownMs: z.ZodOptional; }, z.core.$strict>>>>; errorPolicy: z.ZodOptional>; errorCooldownMs: z.ZodOptional; requireTopic: z.ZodOptional; autoTopicLabel: z.ZodOptional; prompt: z.ZodOptional; }, z.core.$strict>]>>; }, z.core.$strict>>>>; textChunkLimit: z.ZodOptional; chunkMode: z.ZodOptional>; streaming: z.ZodOptional]>>; blockStreaming: z.ZodOptional; draftChunk: z.ZodOptional; maxChars: z.ZodOptional; breakPreference: z.ZodOptional, z.ZodLiteral<\"newline\">, z.ZodLiteral<\"sentence\">]>>; }, z.core.$strict>>; blockStreamingCoalesce: z.ZodOptional; maxChars: z.ZodOptional; idleMs: z.ZodOptional; }, z.core.$strict>>; streamMode: z.ZodOptional>; mediaMaxMb: z.ZodOptional; timeoutSeconds: z.ZodOptional; retry: z.ZodOptional; minDelayMs: z.ZodOptional; maxDelayMs: z.ZodOptional; jitter: z.ZodOptional; }, z.core.$strict>>; network: z.ZodOptional; dnsResultOrder: z.ZodOptional>; }, z.core.$strict>>; proxy: z.ZodOptional; webhookUrl: z.ZodOptional; webhookSecret: z.ZodOptional; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"file\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"exec\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>], \"source\">]>>; webhookPath: z.ZodOptional; webhookHost: z.ZodOptional; webhookPort: z.ZodOptional; webhookCertPath: z.ZodOptional; actions: z.ZodOptional; sendMessage: z.ZodOptional; poll: z.ZodOptional; deleteMessage: z.ZodOptional; editMessage: z.ZodOptional; sticker: z.ZodOptional; createForumTopic: z.ZodOptional; editForumTopic: z.ZodOptional; }, z.core.$strict>>; threadBindings: z.ZodOptional; idleHours: z.ZodOptional; maxAgeHours: z.ZodOptional; spawnSubagentSessions: z.ZodOptional; spawnAcpSessions: z.ZodOptional; }, z.core.$strict>>; reactionNotifications: z.ZodOptional>; reactionLevel: z.ZodOptional>; heartbeat: z.ZodOptional; showAlerts: z.ZodOptional; useIndicator: z.ZodOptional; }, z.core.$strict>>; healthMonitor: z.ZodOptional; }, z.core.$strict>>; linkPreview: z.ZodOptional; silentErrorReplies: z.ZodOptional; responsePrefix: z.ZodOptional; ackReaction: z.ZodOptional; errorPolicy: z.ZodOptional>; errorCooldownMs: z.ZodOptional; apiRoot: z.ZodOptional; autoTopicLabel: z.ZodOptional; prompt: z.ZodOptional; }, z.core.$strict>]>>; accounts: z.ZodOptional; capabilities: z.ZodOptional, z.ZodObject<{ inlineButtons: z.ZodOptional>; }, z.core.$strict>]>>; execApprovals: z.ZodOptional; approvers: z.ZodOptional>>; agentFilter: z.ZodOptional>; sessionFilter: z.ZodOptional>; target: z.ZodOptional>; }, z.core.$strict>>; markdown: z.ZodOptional>; }, z.core.$strict>>; enabled: z.ZodOptional; commands: z.ZodOptional]>>; nativeSkills: z.ZodOptional]>>; }, z.core.$strict>>; customCommands: z.ZodOptional>>; configWrites: z.ZodOptional; dmPolicy: z.ZodDefault>>; botToken: z.ZodOptional; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"file\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"exec\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>], \"source\">]>>; tokenFile: z.ZodOptional; replyToMode: z.ZodOptional, z.ZodLiteral<\"first\">, z.ZodLiteral<\"all\">]>>; groups: z.ZodOptional; disableAudioPreflight: z.ZodOptional; groupPolicy: z.ZodOptional>; tools: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>; toolsBySender: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>>>; skills: z.ZodOptional>; enabled: z.ZodOptional; allowFrom: z.ZodOptional>>; systemPrompt: z.ZodOptional; topics: z.ZodOptional; disableAudioPreflight: z.ZodOptional; groupPolicy: z.ZodOptional>; skills: z.ZodOptional>; enabled: z.ZodOptional; allowFrom: z.ZodOptional>>; systemPrompt: z.ZodOptional; agentId: z.ZodOptional; errorPolicy: z.ZodOptional>; errorCooldownMs: z.ZodOptional; }, z.core.$strict>>>>; errorPolicy: z.ZodOptional>; errorCooldownMs: z.ZodOptional; }, z.core.$strict>>>>; allowFrom: z.ZodOptional>>; defaultTo: z.ZodOptional>; groupAllowFrom: z.ZodOptional>>; groupPolicy: z.ZodDefault>>; historyLimit: z.ZodOptional; dmHistoryLimit: z.ZodOptional; dms: z.ZodOptional; }, z.core.$strict>>>>; direct: z.ZodOptional>; tools: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>; toolsBySender: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>>>; skills: z.ZodOptional>; enabled: z.ZodOptional; allowFrom: z.ZodOptional>>; systemPrompt: z.ZodOptional; topics: z.ZodOptional; disableAudioPreflight: z.ZodOptional; groupPolicy: z.ZodOptional>; skills: z.ZodOptional>; enabled: z.ZodOptional; allowFrom: z.ZodOptional>>; systemPrompt: z.ZodOptional; agentId: z.ZodOptional; errorPolicy: z.ZodOptional>; errorCooldownMs: z.ZodOptional; }, z.core.$strict>>>>; errorPolicy: z.ZodOptional>; errorCooldownMs: z.ZodOptional; requireTopic: z.ZodOptional; autoTopicLabel: z.ZodOptional; prompt: z.ZodOptional; }, z.core.$strict>]>>; }, z.core.$strict>>>>; textChunkLimit: z.ZodOptional; chunkMode: z.ZodOptional>; streaming: z.ZodOptional]>>; blockStreaming: z.ZodOptional; draftChunk: z.ZodOptional; maxChars: z.ZodOptional; breakPreference: z.ZodOptional, z.ZodLiteral<\"newline\">, z.ZodLiteral<\"sentence\">]>>; }, z.core.$strict>>; blockStreamingCoalesce: z.ZodOptional; maxChars: z.ZodOptional; idleMs: z.ZodOptional; }, z.core.$strict>>; streamMode: z.ZodOptional>; mediaMaxMb: z.ZodOptional; timeoutSeconds: z.ZodOptional; retry: z.ZodOptional; minDelayMs: z.ZodOptional; maxDelayMs: z.ZodOptional; jitter: z.ZodOptional; }, z.core.$strict>>; network: z.ZodOptional; dnsResultOrder: z.ZodOptional>; }, z.core.$strict>>; proxy: z.ZodOptional; webhookUrl: z.ZodOptional; webhookSecret: z.ZodOptional; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"file\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"exec\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>], \"source\">]>>; webhookPath: z.ZodOptional; webhookHost: z.ZodOptional; webhookPort: z.ZodOptional; webhookCertPath: z.ZodOptional; actions: z.ZodOptional; sendMessage: z.ZodOptional; poll: z.ZodOptional; deleteMessage: z.ZodOptional; editMessage: z.ZodOptional; sticker: z.ZodOptional; createForumTopic: z.ZodOptional; editForumTopic: z.ZodOptional; }, z.core.$strict>>; threadBindings: z.ZodOptional; idleHours: z.ZodOptional; maxAgeHours: z.ZodOptional; spawnSubagentSessions: z.ZodOptional; spawnAcpSessions: z.ZodOptional; }, z.core.$strict>>; reactionNotifications: z.ZodOptional>; reactionLevel: z.ZodOptional>; heartbeat: z.ZodOptional; showAlerts: z.ZodOptional; useIndicator: z.ZodOptional; }, z.core.$strict>>; healthMonitor: z.ZodOptional; }, z.core.$strict>>; linkPreview: z.ZodOptional; silentErrorReplies: z.ZodOptional; responsePrefix: z.ZodOptional; ackReaction: z.ZodOptional; errorPolicy: z.ZodOptional>; errorCooldownMs: z.ZodOptional; apiRoot: z.ZodOptional; autoTopicLabel: z.ZodOptional; prompt: z.ZodOptional; }, z.core.$strict>]>>; }, z.core.$strict>>>>; defaultAccount: z.ZodOptional; }, z.core.$strict>;", "exportName": "TelegramConfigSchema", "kind": "const", "source": { - "line": 310, + "line": 319, "path": "src/config/zod-schema.providers-core.ts" } }, @@ -1146,11 +1146,11 @@ } }, { - "declaration": "export const WhatsAppConfigSchema: z.ZodObject<{ enabled: z.ZodOptional; capabilities: z.ZodOptional>; markdown: z.ZodOptional>; }, z.core.$strict>>; configWrites: z.ZodOptional; sendReadReceipts: z.ZodOptional; messagePrefix: z.ZodOptional; responsePrefix: z.ZodOptional; dmPolicy: z.ZodDefault>>; selfChatMode: z.ZodOptional; allowFrom: z.ZodOptional>; defaultTo: z.ZodOptional; groupAllowFrom: z.ZodOptional>; groupPolicy: z.ZodDefault>>; historyLimit: z.ZodOptional; dmHistoryLimit: z.ZodOptional; dms: z.ZodOptional; }, z.core.$strict>>>>; textChunkLimit: z.ZodOptional; chunkMode: z.ZodOptional>; blockStreaming: z.ZodOptional; blockStreamingCoalesce: z.ZodOptional; maxChars: z.ZodOptional; idleMs: z.ZodOptional; }, z.core.$strict>>; groups: z.ZodOptional; tools: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>; toolsBySender: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>>>; }, z.core.$strict>>>>; ackReaction: z.ZodOptional; direct: z.ZodDefault>; group: z.ZodDefault>>; }, z.core.$strict>>; debounceMs: z.ZodDefault>; heartbeat: z.ZodOptional; showAlerts: z.ZodOptional; useIndicator: z.ZodOptional; }, z.core.$strict>>; healthMonitor: z.ZodOptional; }, z.core.$strict>>; accounts: z.ZodOptional>; markdown: z.ZodOptional>; }, z.core.$strict>>; configWrites: z.ZodOptional; sendReadReceipts: z.ZodOptional; messagePrefix: z.ZodOptional; responsePrefix: z.ZodOptional; dmPolicy: z.ZodDefault>>; selfChatMode: z.ZodOptional; allowFrom: z.ZodOptional>; defaultTo: z.ZodOptional; groupAllowFrom: z.ZodOptional>; groupPolicy: z.ZodDefault>>; historyLimit: z.ZodOptional; dmHistoryLimit: z.ZodOptional; dms: z.ZodOptional; }, z.core.$strict>>>>; textChunkLimit: z.ZodOptional; chunkMode: z.ZodOptional>; blockStreaming: z.ZodOptional; blockStreamingCoalesce: z.ZodOptional; maxChars: z.ZodOptional; idleMs: z.ZodOptional; }, z.core.$strict>>; groups: z.ZodOptional; tools: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>; toolsBySender: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>>>; }, z.core.$strict>>>>; ackReaction: z.ZodOptional; direct: z.ZodDefault>; group: z.ZodDefault>>; }, z.core.$strict>>; debounceMs: z.ZodDefault>; heartbeat: z.ZodOptional; showAlerts: z.ZodOptional; useIndicator: z.ZodOptional; }, z.core.$strict>>; healthMonitor: z.ZodOptional; }, z.core.$strict>>; name: z.ZodOptional; enabled: z.ZodOptional; authDir: z.ZodOptional; mediaMaxMb: z.ZodOptional; }, z.core.$strict>>>>; defaultAccount: z.ZodOptional; mediaMaxMb: z.ZodDefault>; actions: z.ZodOptional; sendMessage: z.ZodOptional; polls: z.ZodOptional; }, z.core.$strict>>; }, z.core.$strict>;", + "declaration": "export const WhatsAppConfigSchema: z.ZodObject<{ enabled: z.ZodOptional; capabilities: z.ZodOptional>; markdown: z.ZodOptional>; }, z.core.$strict>>; configWrites: z.ZodOptional; sendReadReceipts: z.ZodOptional; messagePrefix: z.ZodOptional; responsePrefix: z.ZodOptional; dmPolicy: z.ZodDefault>>; selfChatMode: z.ZodOptional; allowFrom: z.ZodOptional>; defaultTo: z.ZodOptional; groupAllowFrom: z.ZodOptional>; groupPolicy: z.ZodDefault>>; historyLimit: z.ZodOptional; dmHistoryLimit: z.ZodOptional; dms: z.ZodOptional; }, z.core.$strict>>>>; textChunkLimit: z.ZodOptional; chunkMode: z.ZodOptional>; blockStreaming: z.ZodOptional; blockStreamingCoalesce: z.ZodOptional; maxChars: z.ZodOptional; idleMs: z.ZodOptional; }, z.core.$strict>>; groups: z.ZodOptional; tools: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>; toolsBySender: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>>>; }, z.core.$strict>>>>; ackReaction: z.ZodOptional; direct: z.ZodDefault>; group: z.ZodDefault>>; }, z.core.$strict>>; reactionLevel: z.ZodOptional>; debounceMs: z.ZodDefault>; heartbeat: z.ZodOptional; showAlerts: z.ZodOptional; useIndicator: z.ZodOptional; }, z.core.$strict>>; healthMonitor: z.ZodOptional; }, z.core.$strict>>; accounts: z.ZodOptional>; markdown: z.ZodOptional>; }, z.core.$strict>>; configWrites: z.ZodOptional; sendReadReceipts: z.ZodOptional; messagePrefix: z.ZodOptional; responsePrefix: z.ZodOptional; dmPolicy: z.ZodDefault>>; selfChatMode: z.ZodOptional; allowFrom: z.ZodOptional>; defaultTo: z.ZodOptional; groupAllowFrom: z.ZodOptional>; groupPolicy: z.ZodDefault>>; historyLimit: z.ZodOptional; dmHistoryLimit: z.ZodOptional; dms: z.ZodOptional; }, z.core.$strict>>>>; textChunkLimit: z.ZodOptional; chunkMode: z.ZodOptional>; blockStreaming: z.ZodOptional; blockStreamingCoalesce: z.ZodOptional; maxChars: z.ZodOptional; idleMs: z.ZodOptional; }, z.core.$strict>>; groups: z.ZodOptional; tools: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>; toolsBySender: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>>>; }, z.core.$strict>>>>; ackReaction: z.ZodOptional; direct: z.ZodDefault>; group: z.ZodDefault>>; }, z.core.$strict>>; reactionLevel: z.ZodOptional>; debounceMs: z.ZodDefault>; heartbeat: z.ZodOptional; showAlerts: z.ZodOptional; useIndicator: z.ZodOptional; }, z.core.$strict>>; healthMonitor: z.ZodOptional; }, z.core.$strict>>; name: z.ZodOptional; enabled: z.ZodOptional; authDir: z.ZodOptional; mediaMaxMb: z.ZodOptional; }, z.core.$strict>>>>; defaultAccount: z.ZodOptional; mediaMaxMb: z.ZodDefault>; actions: z.ZodOptional; sendMessage: z.ZodOptional; polls: z.ZodOptional; }, z.core.$strict>>; }, z.core.$strict>;", "exportName": "WhatsAppConfigSchema", "kind": "const", "source": { - "line": 119, + "line": 120, "path": "src/config/zod-schema.providers-whatsapp.ts" } } @@ -2782,7 +2782,7 @@ "exportName": "hasControlCommand", "kind": "function", "source": { - "line": 10, + "line": 11, "path": "src/auto-reply/command-detection.ts" } }, @@ -2791,7 +2791,7 @@ "exportName": "hasInlineCommandTokens", "kind": "function", "source": { - "line": 74, + "line": 80, "path": "src/auto-reply/command-detection.ts" } }, @@ -2818,7 +2818,7 @@ "exportName": "isControlCommandMessage", "kind": "function", "source": { - "line": 48, + "line": 53, "path": "src/auto-reply/command-detection.ts" } }, @@ -3070,7 +3070,7 @@ "exportName": "shouldComputeCommandAuthorized", "kind": "function", "source": { - "line": 82, + "line": 88, "path": "src/auto-reply/command-detection.ts" } }, @@ -3333,7 +3333,7 @@ "exportName": "buildAgentSessionKey", "kind": "function", "source": { - "line": 91, + "line": 92, "path": "src/routing/resolve-route.ts" } }, diff --git a/docs/.generated/plugin-sdk-api-baseline.jsonl b/docs/.generated/plugin-sdk-api-baseline.jsonl index 6f0dbbe4559..2955fff8a14 100644 --- a/docs/.generated/plugin-sdk-api-baseline.jsonl +++ b/docs/.generated/plugin-sdk-api-baseline.jsonl @@ -111,21 +111,21 @@ {"declaration":"export function buildNestedDmConfigSchema(extraShape?: TExtraShape | undefined): ZodOptional; policy: ZodOptional>; allowFrom: ZodOptional<...>; }, $strip>>;","entrypoint":"channel-config-schema","exportName":"buildNestedDmConfigSchema","importSpecifier":"openclaw/plugin-sdk/channel-config-schema","kind":"function","recordType":"export","sourceLine":21,"sourcePath":"src/channels/plugins/config-schema.ts"} {"declaration":"export const AllowFromListSchema: z.ZodOptional>>;","entrypoint":"channel-config-schema","exportName":"AllowFromListSchema","importSpecifier":"openclaw/plugin-sdk/channel-config-schema","kind":"const","recordType":"export","sourceLine":19,"sourcePath":"src/channels/plugins/config-schema.ts"} {"declaration":"export const BlockStreamingCoalesceSchema: z.ZodObject<{ minChars: z.ZodOptional; maxChars: z.ZodOptional; idleMs: z.ZodOptional; }, z.core.$strict>;","entrypoint":"channel-config-schema","exportName":"BlockStreamingCoalesceSchema","importSpecifier":"openclaw/plugin-sdk/channel-config-schema","kind":"const","recordType":"export","sourceLine":340,"sourcePath":"src/config/zod-schema.core.ts"} -{"declaration":"export const DiscordConfigSchema: z.ZodObject<{ name: z.ZodOptional; capabilities: z.ZodOptional>; markdown: z.ZodOptional>; }, z.core.$strict>>; enabled: z.ZodOptional; commands: z.ZodOptional]>>; nativeSkills: z.ZodOptional]>>; }, z.core.$strict>>; configWrites: z.ZodOptional; token: z.ZodOptional; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"file\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"exec\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>], \"source\">]>>; proxy: z.ZodOptional; allowBots: z.ZodOptional]>>; dangerouslyAllowNameMatching: z.ZodOptional; groupPolicy: z.ZodDefault>>; historyLimit: z.ZodOptional; dmHistoryLimit: z.ZodOptional; dms: z.ZodOptional; }, z.core.$strict>>>>; textChunkLimit: z.ZodOptional; chunkMode: z.ZodOptional>; blockStreaming: z.ZodOptional; blockStreamingCoalesce: z.ZodOptional; maxChars: z.ZodOptional; idleMs: z.ZodOptional; }, z.core.$strict>>; streaming: z.ZodOptional]>>; streamMode: z.ZodOptional>; draftChunk: z.ZodOptional; maxChars: z.ZodOptional; breakPreference: z.ZodOptional, z.ZodLiteral<\"newline\">, z.ZodLiteral<\"sentence\">]>>; }, z.core.$strict>>; maxLinesPerMessage: z.ZodOptional; mediaMaxMb: z.ZodOptional; retry: z.ZodOptional; minDelayMs: z.ZodOptional; maxDelayMs: z.ZodOptional; jitter: z.ZodOptional; }, z.core.$strict>>; actions: z.ZodOptional; stickers: z.ZodOptional; emojiUploads: z.ZodOptional; stickerUploads: z.ZodOptional; polls: z.ZodOptional; permissions: z.ZodOptional; messages: z.ZodOptional; threads: z.ZodOptional; pins: z.ZodOptional; search: z.ZodOptional; memberInfo: z.ZodOptional; roleInfo: z.ZodOptional; roles: z.ZodOptional; channelInfo: z.ZodOptional; voiceStatus: z.ZodOptional; events: z.ZodOptional; moderation: z.ZodOptional; channels: z.ZodOptional; presence: z.ZodOptional; }, z.core.$strict>>; replyToMode: z.ZodOptional, z.ZodLiteral<\"first\">, z.ZodLiteral<\"all\">]>>; dmPolicy: z.ZodOptional>; allowFrom: z.ZodOptional & z.ZodType>>>; defaultTo: z.ZodOptional; dm: z.ZodOptional; policy: z.ZodOptional>; allowFrom: z.ZodOptional & z.ZodType>>>; groupEnabled: z.ZodOptional; groupChannels: z.ZodOptional & z.ZodType>>>; }, z.core.$strict>>; guilds: z.ZodOptional; requireMention: z.ZodOptional; ignoreOtherMentions: z.ZodOptional; tools: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>; toolsBySender: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>>>; reactionNotifications: z.ZodOptional>; users: z.ZodOptional & z.ZodType>>>; roles: z.ZodOptional & z.ZodType>>>; channels: z.ZodOptional; requireMention: z.ZodOptional; ignoreOtherMentions: z.ZodOptional; tools: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>; toolsBySender: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>>>; skills: z.ZodOptional>; enabled: z.ZodOptional; users: z.ZodOptional & z.ZodType>>>; roles: z.ZodOptional & z.ZodType>>>; systemPrompt: z.ZodOptional; includeThreadStarter: z.ZodOptional; autoThread: z.ZodOptional; autoThreadName: z.ZodOptional>; autoArchiveDuration: z.ZodOptional, z.ZodLiteral<60>, z.ZodLiteral<1440>, z.ZodLiteral<4320>, z.ZodLiteral<10080>]>>; }, z.core.$strict>>>>; }, z.core.$strict>>>>; heartbeat: z.ZodOptional; showAlerts: z.ZodOptional; useIndicator: z.ZodOptional; }, z.core.$strict>>; healthMonitor: z.ZodOptional; }, z.core.$strict>>; execApprovals: z.ZodOptional; approvers: z.ZodOptional & z.ZodType>>>; agentFilter: z.ZodOptional>; sessionFilter: z.ZodOptional>; cleanupAfterResolve: z.ZodOptional; target: z.ZodOptional>; }, z.core.$strict>>; agentComponents: z.ZodOptional; }, z.core.$strict>>; ui: z.ZodOptional; }, z.core.$strict>>; }, z.core.$strict>>; slashCommand: z.ZodOptional; }, z.core.$strict>>; threadBindings: z.ZodOptional; idleHours: z.ZodOptional; maxAgeHours: z.ZodOptional; spawnSubagentSessions: z.ZodOptional; spawnAcpSessions: z.ZodOptional; }, z.core.$strict>>; intents: z.ZodOptional; guildMembers: z.ZodOptional; }, z.core.$strict>>; voice: z.ZodOptional; autoJoin: z.ZodOptional>>; daveEncryption: z.ZodOptional; decryptionFailureTolerance: z.ZodOptional; tts: z.ZodOptional>; enabled: z.ZodOptional; mode: z.ZodOptional>; provider: z.ZodOptional; summaryModel: z.ZodOptional; modelOverrides: z.ZodOptional; allowText: z.ZodOptional; allowProvider: z.ZodOptional; allowVoice: z.ZodOptional; allowModelId: z.ZodOptional; allowVoiceSettings: z.ZodOptional; allowNormalization: z.ZodOptional; allowSeed: z.ZodOptional; }, z.core.$strict>>; providers: z.ZodOptional; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"file\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"exec\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>], \"source\">]>>; }, z.core.$catchall, z.ZodRecord]>>>>>; prefsPath: z.ZodOptional; maxTextLength: z.ZodOptional; timeoutMs: z.ZodOptional; }, z.core.$strict>>>; }, z.core.$strict>>; pluralkit: z.ZodOptional; token: z.ZodOptional; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"file\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"exec\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>], \"source\">]>>; }, z.core.$strict>>; responsePrefix: z.ZodOptional; ackReaction: z.ZodOptional; ackReactionScope: z.ZodOptional>; activity: z.ZodOptional; status: z.ZodOptional>; autoPresence: z.ZodOptional; intervalMs: z.ZodOptional; minUpdateIntervalMs: z.ZodOptional; healthyText: z.ZodOptional; degradedText: z.ZodOptional; exhaustedText: z.ZodOptional; }, z.core.$strict>>; activityType: z.ZodOptional, z.ZodLiteral<1>, z.ZodLiteral<2>, z.ZodLiteral<3>, z.ZodLiteral<4>, z.ZodLiteral<5>]>>; activityUrl: z.ZodOptional; inboundWorker: z.ZodOptional; }, z.core.$strict>>; eventQueue: z.ZodOptional; maxQueueSize: z.ZodOptional; maxConcurrency: z.ZodOptional; }, z.core.$strict>>; accounts: z.ZodOptional; capabilities: z.ZodOptional>; markdown: z.ZodOptional>; }, z.core.$strict>>; enabled: z.ZodOptional; commands: z.ZodOptional]>>; nativeSkills: z.ZodOptional]>>; }, z.core.$strict>>; configWrites: z.ZodOptional; token: z.ZodOptional; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"file\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"exec\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>], \"source\">]>>; proxy: z.ZodOptional; allowBots: z.ZodOptional]>>; dangerouslyAllowNameMatching: z.ZodOptional; groupPolicy: z.ZodDefault>>; historyLimit: z.ZodOptional; dmHistoryLimit: z.ZodOptional; dms: z.ZodOptional; }, z.core.$strict>>>>; textChunkLimit: z.ZodOptional; chunkMode: z.ZodOptional>; blockStreaming: z.ZodOptional; blockStreamingCoalesce: z.ZodOptional; maxChars: z.ZodOptional; idleMs: z.ZodOptional; }, z.core.$strict>>; streaming: z.ZodOptional]>>; streamMode: z.ZodOptional>; draftChunk: z.ZodOptional; maxChars: z.ZodOptional; breakPreference: z.ZodOptional, z.ZodLiteral<\"newline\">, z.ZodLiteral<\"sentence\">]>>; }, z.core.$strict>>; maxLinesPerMessage: z.ZodOptional; mediaMaxMb: z.ZodOptional; retry: z.ZodOptional; minDelayMs: z.ZodOptional; maxDelayMs: z.ZodOptional; jitter: z.ZodOptional; }, z.core.$strict>>; actions: z.ZodOptional; stickers: z.ZodOptional; emojiUploads: z.ZodOptional; stickerUploads: z.ZodOptional; polls: z.ZodOptional; permissions: z.ZodOptional; messages: z.ZodOptional; threads: z.ZodOptional; pins: z.ZodOptional; search: z.ZodOptional; memberInfo: z.ZodOptional; roleInfo: z.ZodOptional; roles: z.ZodOptional; channelInfo: z.ZodOptional; voiceStatus: z.ZodOptional; events: z.ZodOptional; moderation: z.ZodOptional; channels: z.ZodOptional; presence: z.ZodOptional; }, z.core.$strict>>; replyToMode: z.ZodOptional, z.ZodLiteral<\"first\">, z.ZodLiteral<\"all\">]>>; dmPolicy: z.ZodOptional>; allowFrom: z.ZodOptional & z.ZodType>>>; defaultTo: z.ZodOptional; dm: z.ZodOptional; policy: z.ZodOptional>; allowFrom: z.ZodOptional & z.ZodType>>>; groupEnabled: z.ZodOptional; groupChannels: z.ZodOptional & z.ZodType>>>; }, z.core.$strict>>; guilds: z.ZodOptional; requireMention: z.ZodOptional; ignoreOtherMentions: z.ZodOptional; tools: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>; toolsBySender: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>>>; reactionNotifications: z.ZodOptional>; users: z.ZodOptional & z.ZodType>>>; roles: z.ZodOptional & z.ZodType>>>; channels: z.ZodOptional; requireMention: z.ZodOptional; ignoreOtherMentions: z.ZodOptional; tools: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>; toolsBySender: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>>>; skills: z.ZodOptional>; enabled: z.ZodOptional; users: z.ZodOptional & z.ZodType>>>; roles: z.ZodOptional & z.ZodType>>>; systemPrompt: z.ZodOptional; includeThreadStarter: z.ZodOptional; autoThread: z.ZodOptional; autoThreadName: z.ZodOptional>; autoArchiveDuration: z.ZodOptional, z.ZodLiteral<60>, z.ZodLiteral<1440>, z.ZodLiteral<4320>, z.ZodLiteral<10080>]>>; }, z.core.$strict>>>>; }, z.core.$strict>>>>; heartbeat: z.ZodOptional; showAlerts: z.ZodOptional; useIndicator: z.ZodOptional; }, z.core.$strict>>; healthMonitor: z.ZodOptional; }, z.core.$strict>>; execApprovals: z.ZodOptional; approvers: z.ZodOptional & z.ZodType>>>; agentFilter: z.ZodOptional>; sessionFilter: z.ZodOptional>; cleanupAfterResolve: z.ZodOptional; target: z.ZodOptional>; }, z.core.$strict>>; agentComponents: z.ZodOptional; }, z.core.$strict>>; ui: z.ZodOptional; }, z.core.$strict>>; }, z.core.$strict>>; slashCommand: z.ZodOptional; }, z.core.$strict>>; threadBindings: z.ZodOptional; idleHours: z.ZodOptional; maxAgeHours: z.ZodOptional; spawnSubagentSessions: z.ZodOptional; spawnAcpSessions: z.ZodOptional; }, z.core.$strict>>; intents: z.ZodOptional; guildMembers: z.ZodOptional; }, z.core.$strict>>; voice: z.ZodOptional; autoJoin: z.ZodOptional>>; daveEncryption: z.ZodOptional; decryptionFailureTolerance: z.ZodOptional; tts: z.ZodOptional>; enabled: z.ZodOptional; mode: z.ZodOptional>; provider: z.ZodOptional; summaryModel: z.ZodOptional; modelOverrides: z.ZodOptional; allowText: z.ZodOptional; allowProvider: z.ZodOptional; allowVoice: z.ZodOptional; allowModelId: z.ZodOptional; allowVoiceSettings: z.ZodOptional; allowNormalization: z.ZodOptional; allowSeed: z.ZodOptional; }, z.core.$strict>>; providers: z.ZodOptional; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"file\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"exec\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>], \"source\">]>>; }, z.core.$catchall, z.ZodRecord]>>>>>; prefsPath: z.ZodOptional; maxTextLength: z.ZodOptional; timeoutMs: z.ZodOptional; }, z.core.$strict>>>; }, z.core.$strict>>; pluralkit: z.ZodOptional; token: z.ZodOptional; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"file\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"exec\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>], \"source\">]>>; }, z.core.$strict>>; responsePrefix: z.ZodOptional; ackReaction: z.ZodOptional; ackReactionScope: z.ZodOptional>; activity: z.ZodOptional; status: z.ZodOptional>; autoPresence: z.ZodOptional; intervalMs: z.ZodOptional; minUpdateIntervalMs: z.ZodOptional; healthyText: z.ZodOptional; degradedText: z.ZodOptional; exhaustedText: z.ZodOptional; }, z.core.$strict>>; activityType: z.ZodOptional, z.ZodLiteral<1>, z.ZodLiteral<2>, z.ZodLiteral<3>, z.ZodLiteral<4>, z.ZodLiteral<5>]>>; activityUrl: z.ZodOptional; inboundWorker: z.ZodOptional; }, z.core.$strict>>; eventQueue: z.ZodOptional; maxQueueSize: z.ZodOptional; maxConcurrency: z.ZodOptional; }, z.core.$strict>>; }, z.core.$strict>>>>; defaultAccount: z.ZodOptional; }, z.core.$strict>;","entrypoint":"channel-config-schema","exportName":"DiscordConfigSchema","importSpecifier":"openclaw/plugin-sdk/channel-config-schema","kind":"const","recordType":"export","sourceLine":677,"sourcePath":"src/config/zod-schema.providers-core.ts"} +{"declaration":"export const DiscordConfigSchema: z.ZodObject<{ name: z.ZodOptional; capabilities: z.ZodOptional>; markdown: z.ZodOptional>; }, z.core.$strict>>; enabled: z.ZodOptional; commands: z.ZodOptional]>>; nativeSkills: z.ZodOptional]>>; }, z.core.$strict>>; configWrites: z.ZodOptional; token: z.ZodOptional; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"file\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"exec\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>], \"source\">]>>; proxy: z.ZodOptional; allowBots: z.ZodOptional]>>; dangerouslyAllowNameMatching: z.ZodOptional; groupPolicy: z.ZodDefault>>; historyLimit: z.ZodOptional; dmHistoryLimit: z.ZodOptional; dms: z.ZodOptional; }, z.core.$strict>>>>; textChunkLimit: z.ZodOptional; chunkMode: z.ZodOptional>; blockStreaming: z.ZodOptional; blockStreamingCoalesce: z.ZodOptional; maxChars: z.ZodOptional; idleMs: z.ZodOptional; }, z.core.$strict>>; streaming: z.ZodOptional]>>; streamMode: z.ZodOptional>; draftChunk: z.ZodOptional; maxChars: z.ZodOptional; breakPreference: z.ZodOptional, z.ZodLiteral<\"newline\">, z.ZodLiteral<\"sentence\">]>>; }, z.core.$strict>>; maxLinesPerMessage: z.ZodOptional; mediaMaxMb: z.ZodOptional; retry: z.ZodOptional; minDelayMs: z.ZodOptional; maxDelayMs: z.ZodOptional; jitter: z.ZodOptional; }, z.core.$strict>>; actions: z.ZodOptional; stickers: z.ZodOptional; emojiUploads: z.ZodOptional; stickerUploads: z.ZodOptional; polls: z.ZodOptional; permissions: z.ZodOptional; messages: z.ZodOptional; threads: z.ZodOptional; pins: z.ZodOptional; search: z.ZodOptional; memberInfo: z.ZodOptional; roleInfo: z.ZodOptional; roles: z.ZodOptional; channelInfo: z.ZodOptional; voiceStatus: z.ZodOptional; events: z.ZodOptional; moderation: z.ZodOptional; channels: z.ZodOptional; presence: z.ZodOptional; }, z.core.$strict>>; replyToMode: z.ZodOptional, z.ZodLiteral<\"first\">, z.ZodLiteral<\"all\">]>>; dmPolicy: z.ZodOptional>; allowFrom: z.ZodOptional & z.ZodType>>>; defaultTo: z.ZodOptional; dm: z.ZodOptional; policy: z.ZodOptional>; allowFrom: z.ZodOptional & z.ZodType>>>; groupEnabled: z.ZodOptional; groupChannels: z.ZodOptional & z.ZodType>>>; }, z.core.$strict>>; guilds: z.ZodOptional; requireMention: z.ZodOptional; ignoreOtherMentions: z.ZodOptional; tools: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>; toolsBySender: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>>>; reactionNotifications: z.ZodOptional>; users: z.ZodOptional & z.ZodType>>>; roles: z.ZodOptional & z.ZodType>>>; channels: z.ZodOptional; requireMention: z.ZodOptional; ignoreOtherMentions: z.ZodOptional; tools: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>; toolsBySender: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>>>; skills: z.ZodOptional>; enabled: z.ZodOptional; users: z.ZodOptional & z.ZodType>>>; roles: z.ZodOptional & z.ZodType>>>; systemPrompt: z.ZodOptional; includeThreadStarter: z.ZodOptional; autoThread: z.ZodOptional; autoThreadName: z.ZodOptional>; autoArchiveDuration: z.ZodOptional, z.ZodLiteral<60>, z.ZodLiteral<1440>, z.ZodLiteral<4320>, z.ZodLiteral<10080>]>>; }, z.core.$strict>>>>; }, z.core.$strict>>>>; heartbeat: z.ZodOptional; showAlerts: z.ZodOptional; useIndicator: z.ZodOptional; }, z.core.$strict>>; healthMonitor: z.ZodOptional; }, z.core.$strict>>; execApprovals: z.ZodOptional; approvers: z.ZodOptional & z.ZodType>>>; agentFilter: z.ZodOptional>; sessionFilter: z.ZodOptional>; cleanupAfterResolve: z.ZodOptional; target: z.ZodOptional>; }, z.core.$strict>>; agentComponents: z.ZodOptional; }, z.core.$strict>>; ui: z.ZodOptional; }, z.core.$strict>>; }, z.core.$strict>>; slashCommand: z.ZodOptional; }, z.core.$strict>>; threadBindings: z.ZodOptional; idleHours: z.ZodOptional; maxAgeHours: z.ZodOptional; spawnSubagentSessions: z.ZodOptional; spawnAcpSessions: z.ZodOptional; }, z.core.$strict>>; intents: z.ZodOptional; guildMembers: z.ZodOptional; }, z.core.$strict>>; voice: z.ZodOptional; autoJoin: z.ZodOptional>>; daveEncryption: z.ZodOptional; decryptionFailureTolerance: z.ZodOptional; tts: z.ZodOptional>; enabled: z.ZodOptional; mode: z.ZodOptional>; provider: z.ZodOptional; summaryModel: z.ZodOptional; modelOverrides: z.ZodOptional; allowText: z.ZodOptional; allowProvider: z.ZodOptional; allowVoice: z.ZodOptional; allowModelId: z.ZodOptional; allowVoiceSettings: z.ZodOptional; allowNormalization: z.ZodOptional; allowSeed: z.ZodOptional; }, z.core.$strict>>; providers: z.ZodOptional; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"file\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"exec\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>], \"source\">]>>; }, z.core.$catchall, z.ZodRecord]>>>>>; prefsPath: z.ZodOptional; maxTextLength: z.ZodOptional; timeoutMs: z.ZodOptional; }, z.core.$strict>>>; }, z.core.$strict>>; pluralkit: z.ZodOptional; token: z.ZodOptional; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"file\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"exec\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>], \"source\">]>>; }, z.core.$strict>>; responsePrefix: z.ZodOptional; ackReaction: z.ZodOptional; ackReactionScope: z.ZodOptional>; activity: z.ZodOptional; status: z.ZodOptional>; autoPresence: z.ZodOptional; intervalMs: z.ZodOptional; minUpdateIntervalMs: z.ZodOptional; healthyText: z.ZodOptional; degradedText: z.ZodOptional; exhaustedText: z.ZodOptional; }, z.core.$strict>>; activityType: z.ZodOptional, z.ZodLiteral<1>, z.ZodLiteral<2>, z.ZodLiteral<3>, z.ZodLiteral<4>, z.ZodLiteral<5>]>>; activityUrl: z.ZodOptional; inboundWorker: z.ZodOptional; }, z.core.$strict>>; eventQueue: z.ZodOptional; maxQueueSize: z.ZodOptional; maxConcurrency: z.ZodOptional; }, z.core.$strict>>; accounts: z.ZodOptional; capabilities: z.ZodOptional>; markdown: z.ZodOptional>; }, z.core.$strict>>; enabled: z.ZodOptional; commands: z.ZodOptional]>>; nativeSkills: z.ZodOptional]>>; }, z.core.$strict>>; configWrites: z.ZodOptional; token: z.ZodOptional; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"file\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"exec\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>], \"source\">]>>; proxy: z.ZodOptional; allowBots: z.ZodOptional]>>; dangerouslyAllowNameMatching: z.ZodOptional; groupPolicy: z.ZodDefault>>; historyLimit: z.ZodOptional; dmHistoryLimit: z.ZodOptional; dms: z.ZodOptional; }, z.core.$strict>>>>; textChunkLimit: z.ZodOptional; chunkMode: z.ZodOptional>; blockStreaming: z.ZodOptional; blockStreamingCoalesce: z.ZodOptional; maxChars: z.ZodOptional; idleMs: z.ZodOptional; }, z.core.$strict>>; streaming: z.ZodOptional]>>; streamMode: z.ZodOptional>; draftChunk: z.ZodOptional; maxChars: z.ZodOptional; breakPreference: z.ZodOptional, z.ZodLiteral<\"newline\">, z.ZodLiteral<\"sentence\">]>>; }, z.core.$strict>>; maxLinesPerMessage: z.ZodOptional; mediaMaxMb: z.ZodOptional; retry: z.ZodOptional; minDelayMs: z.ZodOptional; maxDelayMs: z.ZodOptional; jitter: z.ZodOptional; }, z.core.$strict>>; actions: z.ZodOptional; stickers: z.ZodOptional; emojiUploads: z.ZodOptional; stickerUploads: z.ZodOptional; polls: z.ZodOptional; permissions: z.ZodOptional; messages: z.ZodOptional; threads: z.ZodOptional; pins: z.ZodOptional; search: z.ZodOptional; memberInfo: z.ZodOptional; roleInfo: z.ZodOptional; roles: z.ZodOptional; channelInfo: z.ZodOptional; voiceStatus: z.ZodOptional; events: z.ZodOptional; moderation: z.ZodOptional; channels: z.ZodOptional; presence: z.ZodOptional; }, z.core.$strict>>; replyToMode: z.ZodOptional, z.ZodLiteral<\"first\">, z.ZodLiteral<\"all\">]>>; dmPolicy: z.ZodOptional>; allowFrom: z.ZodOptional & z.ZodType>>>; defaultTo: z.ZodOptional; dm: z.ZodOptional; policy: z.ZodOptional>; allowFrom: z.ZodOptional & z.ZodType>>>; groupEnabled: z.ZodOptional; groupChannels: z.ZodOptional & z.ZodType>>>; }, z.core.$strict>>; guilds: z.ZodOptional; requireMention: z.ZodOptional; ignoreOtherMentions: z.ZodOptional; tools: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>; toolsBySender: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>>>; reactionNotifications: z.ZodOptional>; users: z.ZodOptional & z.ZodType>>>; roles: z.ZodOptional & z.ZodType>>>; channels: z.ZodOptional; requireMention: z.ZodOptional; ignoreOtherMentions: z.ZodOptional; tools: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>; toolsBySender: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>>>; skills: z.ZodOptional>; enabled: z.ZodOptional; users: z.ZodOptional & z.ZodType>>>; roles: z.ZodOptional & z.ZodType>>>; systemPrompt: z.ZodOptional; includeThreadStarter: z.ZodOptional; autoThread: z.ZodOptional; autoThreadName: z.ZodOptional>; autoArchiveDuration: z.ZodOptional, z.ZodLiteral<60>, z.ZodLiteral<1440>, z.ZodLiteral<4320>, z.ZodLiteral<10080>]>>; }, z.core.$strict>>>>; }, z.core.$strict>>>>; heartbeat: z.ZodOptional; showAlerts: z.ZodOptional; useIndicator: z.ZodOptional; }, z.core.$strict>>; healthMonitor: z.ZodOptional; }, z.core.$strict>>; execApprovals: z.ZodOptional; approvers: z.ZodOptional & z.ZodType>>>; agentFilter: z.ZodOptional>; sessionFilter: z.ZodOptional>; cleanupAfterResolve: z.ZodOptional; target: z.ZodOptional>; }, z.core.$strict>>; agentComponents: z.ZodOptional; }, z.core.$strict>>; ui: z.ZodOptional; }, z.core.$strict>>; }, z.core.$strict>>; slashCommand: z.ZodOptional; }, z.core.$strict>>; threadBindings: z.ZodOptional; idleHours: z.ZodOptional; maxAgeHours: z.ZodOptional; spawnSubagentSessions: z.ZodOptional; spawnAcpSessions: z.ZodOptional; }, z.core.$strict>>; intents: z.ZodOptional; guildMembers: z.ZodOptional; }, z.core.$strict>>; voice: z.ZodOptional; autoJoin: z.ZodOptional>>; daveEncryption: z.ZodOptional; decryptionFailureTolerance: z.ZodOptional; tts: z.ZodOptional>; enabled: z.ZodOptional; mode: z.ZodOptional>; provider: z.ZodOptional; summaryModel: z.ZodOptional; modelOverrides: z.ZodOptional; allowText: z.ZodOptional; allowProvider: z.ZodOptional; allowVoice: z.ZodOptional; allowModelId: z.ZodOptional; allowVoiceSettings: z.ZodOptional; allowNormalization: z.ZodOptional; allowSeed: z.ZodOptional; }, z.core.$strict>>; providers: z.ZodOptional; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"file\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"exec\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>], \"source\">]>>; }, z.core.$catchall, z.ZodRecord]>>>>>; prefsPath: z.ZodOptional; maxTextLength: z.ZodOptional; timeoutMs: z.ZodOptional; }, z.core.$strict>>>; }, z.core.$strict>>; pluralkit: z.ZodOptional; token: z.ZodOptional; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"file\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"exec\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>], \"source\">]>>; }, z.core.$strict>>; responsePrefix: z.ZodOptional; ackReaction: z.ZodOptional; ackReactionScope: z.ZodOptional>; activity: z.ZodOptional; status: z.ZodOptional>; autoPresence: z.ZodOptional; intervalMs: z.ZodOptional; minUpdateIntervalMs: z.ZodOptional; healthyText: z.ZodOptional; degradedText: z.ZodOptional; exhaustedText: z.ZodOptional; }, z.core.$strict>>; activityType: z.ZodOptional, z.ZodLiteral<1>, z.ZodLiteral<2>, z.ZodLiteral<3>, z.ZodLiteral<4>, z.ZodLiteral<5>]>>; activityUrl: z.ZodOptional; inboundWorker: z.ZodOptional; }, z.core.$strict>>; eventQueue: z.ZodOptional; maxQueueSize: z.ZodOptional; maxConcurrency: z.ZodOptional; }, z.core.$strict>>; }, z.core.$strict>>>>; defaultAccount: z.ZodOptional; }, z.core.$strict>;","entrypoint":"channel-config-schema","exportName":"DiscordConfigSchema","importSpecifier":"openclaw/plugin-sdk/channel-config-schema","kind":"const","recordType":"export","sourceLine":686,"sourcePath":"src/config/zod-schema.providers-core.ts"} {"declaration":"export const DmConfigSchema: z.ZodObject<{ historyLimit: z.ZodOptional; }, z.core.$strict>;","entrypoint":"channel-config-schema","exportName":"DmConfigSchema","importSpecifier":"openclaw/plugin-sdk/channel-config-schema","kind":"const","recordType":"export","sourceLine":294,"sourcePath":"src/config/zod-schema.core.ts"} {"declaration":"export const DmPolicySchema: z.ZodEnum<{ disabled: \"disabled\"; pairing: \"pairing\"; allowlist: \"allowlist\"; open: \"open\"; }>;","entrypoint":"channel-config-schema","exportName":"DmPolicySchema","importSpecifier":"openclaw/plugin-sdk/channel-config-schema","kind":"const","recordType":"export","sourceLine":338,"sourcePath":"src/config/zod-schema.core.ts"} -{"declaration":"export const GoogleChatConfigSchema: z.ZodObject<{ name: z.ZodOptional; capabilities: z.ZodOptional>; enabled: z.ZodOptional; configWrites: z.ZodOptional; allowBots: z.ZodOptional; dangerouslyAllowNameMatching: z.ZodOptional; requireMention: z.ZodOptional; groupPolicy: z.ZodDefault>>; groupAllowFrom: z.ZodOptional>>; groups: z.ZodOptional; allow: z.ZodOptional; requireMention: z.ZodOptional; users: z.ZodOptional>>; systemPrompt: z.ZodOptional; }, z.core.$strict>>>>; defaultTo: z.ZodOptional; serviceAccount: z.ZodOptional, z.ZodDiscriminatedUnion<[z.ZodObject<{ source: z.ZodLiteral<\"env\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"file\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"exec\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>], \"source\">]>>; serviceAccountRef: z.ZodOptional; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"file\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"exec\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>], \"source\">>; serviceAccountFile: z.ZodOptional; audienceType: z.ZodOptional>; audience: z.ZodOptional; appPrincipal: z.ZodOptional; webhookPath: z.ZodOptional; webhookUrl: z.ZodOptional; botUser: z.ZodOptional; historyLimit: z.ZodOptional; dmHistoryLimit: z.ZodOptional; dms: z.ZodOptional; }, z.core.$strict>>>>; textChunkLimit: z.ZodOptional; chunkMode: z.ZodOptional>; blockStreaming: z.ZodOptional; blockStreamingCoalesce: z.ZodOptional; maxChars: z.ZodOptional; idleMs: z.ZodOptional; }, z.core.$strict>>; streamMode: z.ZodDefault>>; mediaMaxMb: z.ZodOptional; replyToMode: z.ZodOptional, z.ZodLiteral<\"first\">, z.ZodLiteral<\"all\">]>>; actions: z.ZodOptional; }, z.core.$strict>>; dm: z.ZodOptional; policy: z.ZodDefault>>; allowFrom: z.ZodOptional>>; }, z.core.$strict>>; healthMonitor: z.ZodOptional; }, z.core.$strict>>; typingIndicator: z.ZodOptional>; responsePrefix: z.ZodOptional; accounts: z.ZodOptional; capabilities: z.ZodOptional>; enabled: z.ZodOptional; configWrites: z.ZodOptional; allowBots: z.ZodOptional; dangerouslyAllowNameMatching: z.ZodOptional; requireMention: z.ZodOptional; groupPolicy: z.ZodDefault>>; groupAllowFrom: z.ZodOptional>>; groups: z.ZodOptional; allow: z.ZodOptional; requireMention: z.ZodOptional; users: z.ZodOptional>>; systemPrompt: z.ZodOptional; }, z.core.$strict>>>>; defaultTo: z.ZodOptional; serviceAccount: z.ZodOptional, z.ZodDiscriminatedUnion<[z.ZodObject<{ source: z.ZodLiteral<\"env\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"file\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"exec\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>], \"source\">]>>; serviceAccountRef: z.ZodOptional; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"file\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"exec\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>], \"source\">>; serviceAccountFile: z.ZodOptional; audienceType: z.ZodOptional>; audience: z.ZodOptional; appPrincipal: z.ZodOptional; webhookPath: z.ZodOptional; webhookUrl: z.ZodOptional; botUser: z.ZodOptional; historyLimit: z.ZodOptional; dmHistoryLimit: z.ZodOptional; dms: z.ZodOptional; }, z.core.$strict>>>>; textChunkLimit: z.ZodOptional; chunkMode: z.ZodOptional>; blockStreaming: z.ZodOptional; blockStreamingCoalesce: z.ZodOptional; maxChars: z.ZodOptional; idleMs: z.ZodOptional; }, z.core.$strict>>; streamMode: z.ZodDefault>>; mediaMaxMb: z.ZodOptional; replyToMode: z.ZodOptional, z.ZodLiteral<\"first\">, z.ZodLiteral<\"all\">]>>; actions: z.ZodOptional; }, z.core.$strict>>; dm: z.ZodOptional; policy: z.ZodDefault>>; allowFrom: z.ZodOptional>>; }, z.core.$strict>>; healthMonitor: z.ZodOptional; }, z.core.$strict>>; typingIndicator: z.ZodOptional>; responsePrefix: z.ZodOptional; }, z.core.$strict>>>>; defaultAccount: z.ZodOptional; }, z.core.$strict>;","entrypoint":"channel-config-schema","exportName":"GoogleChatConfigSchema","importSpecifier":"openclaw/plugin-sdk/channel-config-schema","kind":"const","recordType":"export","sourceLine":816,"sourcePath":"src/config/zod-schema.providers-core.ts"} +{"declaration":"export const GoogleChatConfigSchema: z.ZodObject<{ name: z.ZodOptional; capabilities: z.ZodOptional>; enabled: z.ZodOptional; configWrites: z.ZodOptional; allowBots: z.ZodOptional; dangerouslyAllowNameMatching: z.ZodOptional; requireMention: z.ZodOptional; groupPolicy: z.ZodDefault>>; groupAllowFrom: z.ZodOptional>>; groups: z.ZodOptional; allow: z.ZodOptional; requireMention: z.ZodOptional; users: z.ZodOptional>>; systemPrompt: z.ZodOptional; }, z.core.$strict>>>>; defaultTo: z.ZodOptional; serviceAccount: z.ZodOptional, z.ZodDiscriminatedUnion<[z.ZodObject<{ source: z.ZodLiteral<\"env\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"file\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"exec\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>], \"source\">]>>; serviceAccountRef: z.ZodOptional; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"file\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"exec\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>], \"source\">>; serviceAccountFile: z.ZodOptional; audienceType: z.ZodOptional>; audience: z.ZodOptional; appPrincipal: z.ZodOptional; webhookPath: z.ZodOptional; webhookUrl: z.ZodOptional; botUser: z.ZodOptional; historyLimit: z.ZodOptional; dmHistoryLimit: z.ZodOptional; dms: z.ZodOptional; }, z.core.$strict>>>>; textChunkLimit: z.ZodOptional; chunkMode: z.ZodOptional>; blockStreaming: z.ZodOptional; blockStreamingCoalesce: z.ZodOptional; maxChars: z.ZodOptional; idleMs: z.ZodOptional; }, z.core.$strict>>; streamMode: z.ZodDefault>>; mediaMaxMb: z.ZodOptional; replyToMode: z.ZodOptional, z.ZodLiteral<\"first\">, z.ZodLiteral<\"all\">]>>; actions: z.ZodOptional; }, z.core.$strict>>; dm: z.ZodOptional; policy: z.ZodDefault>>; allowFrom: z.ZodOptional>>; }, z.core.$strict>>; healthMonitor: z.ZodOptional; }, z.core.$strict>>; typingIndicator: z.ZodOptional>; responsePrefix: z.ZodOptional; accounts: z.ZodOptional; capabilities: z.ZodOptional>; enabled: z.ZodOptional; configWrites: z.ZodOptional; allowBots: z.ZodOptional; dangerouslyAllowNameMatching: z.ZodOptional; requireMention: z.ZodOptional; groupPolicy: z.ZodDefault>>; groupAllowFrom: z.ZodOptional>>; groups: z.ZodOptional; allow: z.ZodOptional; requireMention: z.ZodOptional; users: z.ZodOptional>>; systemPrompt: z.ZodOptional; }, z.core.$strict>>>>; defaultTo: z.ZodOptional; serviceAccount: z.ZodOptional, z.ZodDiscriminatedUnion<[z.ZodObject<{ source: z.ZodLiteral<\"env\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"file\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"exec\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>], \"source\">]>>; serviceAccountRef: z.ZodOptional; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"file\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"exec\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>], \"source\">>; serviceAccountFile: z.ZodOptional; audienceType: z.ZodOptional>; audience: z.ZodOptional; appPrincipal: z.ZodOptional; webhookPath: z.ZodOptional; webhookUrl: z.ZodOptional; botUser: z.ZodOptional; historyLimit: z.ZodOptional; dmHistoryLimit: z.ZodOptional; dms: z.ZodOptional; }, z.core.$strict>>>>; textChunkLimit: z.ZodOptional; chunkMode: z.ZodOptional>; blockStreaming: z.ZodOptional; blockStreamingCoalesce: z.ZodOptional; maxChars: z.ZodOptional; idleMs: z.ZodOptional; }, z.core.$strict>>; streamMode: z.ZodDefault>>; mediaMaxMb: z.ZodOptional; replyToMode: z.ZodOptional, z.ZodLiteral<\"first\">, z.ZodLiteral<\"all\">]>>; actions: z.ZodOptional; }, z.core.$strict>>; dm: z.ZodOptional; policy: z.ZodDefault>>; allowFrom: z.ZodOptional>>; }, z.core.$strict>>; healthMonitor: z.ZodOptional; }, z.core.$strict>>; typingIndicator: z.ZodOptional>; responsePrefix: z.ZodOptional; }, z.core.$strict>>>>; defaultAccount: z.ZodOptional; }, z.core.$strict>;","entrypoint":"channel-config-schema","exportName":"GoogleChatConfigSchema","importSpecifier":"openclaw/plugin-sdk/channel-config-schema","kind":"const","recordType":"export","sourceLine":825,"sourcePath":"src/config/zod-schema.providers-core.ts"} {"declaration":"export const GroupPolicySchema: z.ZodEnum<{ disabled: \"disabled\"; allowlist: \"allowlist\"; open: \"open\"; }>;","entrypoint":"channel-config-schema","exportName":"GroupPolicySchema","importSpecifier":"openclaw/plugin-sdk/channel-config-schema","kind":"const","recordType":"export","sourceLine":336,"sourcePath":"src/config/zod-schema.core.ts"} -{"declaration":"export const IMessageConfigSchema: z.ZodObject<{ name: z.ZodOptional; capabilities: z.ZodOptional>; markdown: z.ZodOptional>; }, z.core.$strict>>; enabled: z.ZodOptional; configWrites: z.ZodOptional; cliPath: z.ZodOptional; dbPath: z.ZodOptional; remoteHost: z.ZodOptional; service: z.ZodOptional, z.ZodLiteral<\"sms\">, z.ZodLiteral<\"auto\">]>>; region: z.ZodOptional; dmPolicy: z.ZodDefault>>; allowFrom: z.ZodOptional>>; defaultTo: z.ZodOptional; groupAllowFrom: z.ZodOptional>>; groupPolicy: z.ZodDefault>>; historyLimit: z.ZodOptional; dmHistoryLimit: z.ZodOptional; dms: z.ZodOptional; }, z.core.$strict>>>>; includeAttachments: z.ZodOptional; attachmentRoots: z.ZodOptional>; remoteAttachmentRoots: z.ZodOptional>; mediaMaxMb: z.ZodOptional; textChunkLimit: z.ZodOptional; chunkMode: z.ZodOptional>; blockStreaming: z.ZodOptional; blockStreamingCoalesce: z.ZodOptional; maxChars: z.ZodOptional; idleMs: z.ZodOptional; }, z.core.$strict>>; groups: z.ZodOptional; tools: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>; toolsBySender: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>>>; }, z.core.$strict>>>>; heartbeat: z.ZodOptional; showAlerts: z.ZodOptional; useIndicator: z.ZodOptional; }, z.core.$strict>>; healthMonitor: z.ZodOptional; }, z.core.$strict>>; responsePrefix: z.ZodOptional; accounts: z.ZodOptional; capabilities: z.ZodOptional>; markdown: z.ZodOptional>; }, z.core.$strict>>; enabled: z.ZodOptional; configWrites: z.ZodOptional; cliPath: z.ZodOptional; dbPath: z.ZodOptional; remoteHost: z.ZodOptional; service: z.ZodOptional, z.ZodLiteral<\"sms\">, z.ZodLiteral<\"auto\">]>>; region: z.ZodOptional; dmPolicy: z.ZodDefault>>; allowFrom: z.ZodOptional>>; defaultTo: z.ZodOptional; groupAllowFrom: z.ZodOptional>>; groupPolicy: z.ZodDefault>>; historyLimit: z.ZodOptional; dmHistoryLimit: z.ZodOptional; dms: z.ZodOptional; }, z.core.$strict>>>>; includeAttachments: z.ZodOptional; attachmentRoots: z.ZodOptional>; remoteAttachmentRoots: z.ZodOptional>; mediaMaxMb: z.ZodOptional; textChunkLimit: z.ZodOptional; chunkMode: z.ZodOptional>; blockStreaming: z.ZodOptional; blockStreamingCoalesce: z.ZodOptional; maxChars: z.ZodOptional; idleMs: z.ZodOptional; }, z.core.$strict>>; groups: z.ZodOptional; tools: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>; toolsBySender: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>>>; }, z.core.$strict>>>>; heartbeat: z.ZodOptional; showAlerts: z.ZodOptional; useIndicator: z.ZodOptional; }, z.core.$strict>>; healthMonitor: z.ZodOptional; }, z.core.$strict>>; responsePrefix: z.ZodOptional; }, z.core.$strict>>>>; defaultAccount: z.ZodOptional; }, z.core.$strict>;","entrypoint":"channel-config-schema","exportName":"IMessageConfigSchema","importSpecifier":"openclaw/plugin-sdk/channel-config-schema","kind":"const","recordType":"export","sourceLine":1324,"sourcePath":"src/config/zod-schema.providers-core.ts"} +{"declaration":"export const IMessageConfigSchema: z.ZodObject<{ name: z.ZodOptional; capabilities: z.ZodOptional>; markdown: z.ZodOptional>; }, z.core.$strict>>; enabled: z.ZodOptional; configWrites: z.ZodOptional; cliPath: z.ZodOptional; dbPath: z.ZodOptional; remoteHost: z.ZodOptional; service: z.ZodOptional, z.ZodLiteral<\"sms\">, z.ZodLiteral<\"auto\">]>>; region: z.ZodOptional; dmPolicy: z.ZodDefault>>; allowFrom: z.ZodOptional>>; defaultTo: z.ZodOptional; groupAllowFrom: z.ZodOptional>>; groupPolicy: z.ZodDefault>>; historyLimit: z.ZodOptional; dmHistoryLimit: z.ZodOptional; dms: z.ZodOptional; }, z.core.$strict>>>>; includeAttachments: z.ZodOptional; attachmentRoots: z.ZodOptional>; remoteAttachmentRoots: z.ZodOptional>; mediaMaxMb: z.ZodOptional; textChunkLimit: z.ZodOptional; chunkMode: z.ZodOptional>; blockStreaming: z.ZodOptional; blockStreamingCoalesce: z.ZodOptional; maxChars: z.ZodOptional; idleMs: z.ZodOptional; }, z.core.$strict>>; groups: z.ZodOptional; tools: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>; toolsBySender: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>>>; }, z.core.$strict>>>>; heartbeat: z.ZodOptional; showAlerts: z.ZodOptional; useIndicator: z.ZodOptional; }, z.core.$strict>>; healthMonitor: z.ZodOptional; }, z.core.$strict>>; responsePrefix: z.ZodOptional; accounts: z.ZodOptional; capabilities: z.ZodOptional>; markdown: z.ZodOptional>; }, z.core.$strict>>; enabled: z.ZodOptional; configWrites: z.ZodOptional; cliPath: z.ZodOptional; dbPath: z.ZodOptional; remoteHost: z.ZodOptional; service: z.ZodOptional, z.ZodLiteral<\"sms\">, z.ZodLiteral<\"auto\">]>>; region: z.ZodOptional; dmPolicy: z.ZodDefault>>; allowFrom: z.ZodOptional>>; defaultTo: z.ZodOptional; groupAllowFrom: z.ZodOptional>>; groupPolicy: z.ZodDefault>>; historyLimit: z.ZodOptional; dmHistoryLimit: z.ZodOptional; dms: z.ZodOptional; }, z.core.$strict>>>>; includeAttachments: z.ZodOptional; attachmentRoots: z.ZodOptional>; remoteAttachmentRoots: z.ZodOptional>; mediaMaxMb: z.ZodOptional; textChunkLimit: z.ZodOptional; chunkMode: z.ZodOptional>; blockStreaming: z.ZodOptional; blockStreamingCoalesce: z.ZodOptional; maxChars: z.ZodOptional; idleMs: z.ZodOptional; }, z.core.$strict>>; groups: z.ZodOptional; tools: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>; toolsBySender: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>>>; }, z.core.$strict>>>>; heartbeat: z.ZodOptional; showAlerts: z.ZodOptional; useIndicator: z.ZodOptional; }, z.core.$strict>>; healthMonitor: z.ZodOptional; }, z.core.$strict>>; responsePrefix: z.ZodOptional; }, z.core.$strict>>>>; defaultAccount: z.ZodOptional; }, z.core.$strict>;","entrypoint":"channel-config-schema","exportName":"IMessageConfigSchema","importSpecifier":"openclaw/plugin-sdk/channel-config-schema","kind":"const","recordType":"export","sourceLine":1333,"sourcePath":"src/config/zod-schema.providers-core.ts"} {"declaration":"export const MarkdownConfigSchema: z.ZodOptional>; }, z.core.$strict>>;","entrypoint":"channel-config-schema","exportName":"MarkdownConfigSchema","importSpecifier":"openclaw/plugin-sdk/channel-config-schema","kind":"const","recordType":"export","sourceLine":372,"sourcePath":"src/config/zod-schema.core.ts"} -{"declaration":"export const MSTeamsConfigSchema: z.ZodObject<{ enabled: z.ZodOptional; capabilities: z.ZodOptional>; dangerouslyAllowNameMatching: z.ZodOptional; markdown: z.ZodOptional>; }, z.core.$strict>>; configWrites: z.ZodOptional; appId: z.ZodOptional; appPassword: z.ZodOptional; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"file\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"exec\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>], \"source\">]>>; tenantId: z.ZodOptional; webhook: z.ZodOptional; path: z.ZodOptional; }, z.core.$strict>>; dmPolicy: z.ZodDefault>>; allowFrom: z.ZodOptional>; defaultTo: z.ZodOptional; groupAllowFrom: z.ZodOptional>; groupPolicy: z.ZodDefault>>; textChunkLimit: z.ZodOptional; chunkMode: z.ZodOptional>; blockStreaming: z.ZodOptional; blockStreamingCoalesce: z.ZodOptional; maxChars: z.ZodOptional; idleMs: z.ZodOptional; }, z.core.$strict>>; mediaAllowHosts: z.ZodOptional>; mediaAuthAllowHosts: z.ZodOptional>; requireMention: z.ZodOptional; historyLimit: z.ZodOptional; dmHistoryLimit: z.ZodOptional; dms: z.ZodOptional; }, z.core.$strict>>>>; replyStyle: z.ZodOptional>; teams: z.ZodOptional; tools: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>; toolsBySender: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>>>; replyStyle: z.ZodOptional>; channels: z.ZodOptional; tools: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>; toolsBySender: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>>>; replyStyle: z.ZodOptional>; }, z.core.$strict>>>>; }, z.core.$strict>>>>; mediaMaxMb: z.ZodOptional; sharePointSiteId: z.ZodOptional; heartbeat: z.ZodOptional; showAlerts: z.ZodOptional; useIndicator: z.ZodOptional; }, z.core.$strict>>; healthMonitor: z.ZodOptional; }, z.core.$strict>>; responsePrefix: z.ZodOptional; welcomeCard: z.ZodOptional; promptStarters: z.ZodOptional>; groupWelcomeCard: z.ZodOptional; feedbackEnabled: z.ZodOptional; feedbackReflection: z.ZodOptional; feedbackReflectionCooldownMs: z.ZodOptional; }, z.core.$strict>;","entrypoint":"channel-config-schema","exportName":"MSTeamsConfigSchema","importSpecifier":"openclaw/plugin-sdk/channel-config-schema","kind":"const","recordType":"export","sourceLine":1506,"sourcePath":"src/config/zod-schema.providers-core.ts"} +{"declaration":"export const MSTeamsConfigSchema: z.ZodObject<{ enabled: z.ZodOptional; capabilities: z.ZodOptional>; dangerouslyAllowNameMatching: z.ZodOptional; markdown: z.ZodOptional>; }, z.core.$strict>>; configWrites: z.ZodOptional; appId: z.ZodOptional; appPassword: z.ZodOptional; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"file\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"exec\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>], \"source\">]>>; tenantId: z.ZodOptional; webhook: z.ZodOptional; path: z.ZodOptional; }, z.core.$strict>>; dmPolicy: z.ZodDefault>>; allowFrom: z.ZodOptional>; defaultTo: z.ZodOptional; groupAllowFrom: z.ZodOptional>; groupPolicy: z.ZodDefault>>; textChunkLimit: z.ZodOptional; chunkMode: z.ZodOptional>; blockStreaming: z.ZodOptional; blockStreamingCoalesce: z.ZodOptional; maxChars: z.ZodOptional; idleMs: z.ZodOptional; }, z.core.$strict>>; mediaAllowHosts: z.ZodOptional>; mediaAuthAllowHosts: z.ZodOptional>; requireMention: z.ZodOptional; historyLimit: z.ZodOptional; dmHistoryLimit: z.ZodOptional; dms: z.ZodOptional; }, z.core.$strict>>>>; replyStyle: z.ZodOptional>; teams: z.ZodOptional; tools: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>; toolsBySender: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>>>; replyStyle: z.ZodOptional>; channels: z.ZodOptional; tools: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>; toolsBySender: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>>>; replyStyle: z.ZodOptional>; }, z.core.$strict>>>>; }, z.core.$strict>>>>; mediaMaxMb: z.ZodOptional; sharePointSiteId: z.ZodOptional; heartbeat: z.ZodOptional; showAlerts: z.ZodOptional; useIndicator: z.ZodOptional; }, z.core.$strict>>; healthMonitor: z.ZodOptional; }, z.core.$strict>>; responsePrefix: z.ZodOptional; welcomeCard: z.ZodOptional; promptStarters: z.ZodOptional>; groupWelcomeCard: z.ZodOptional; feedbackEnabled: z.ZodOptional; feedbackReflection: z.ZodOptional; feedbackReflectionCooldownMs: z.ZodOptional; }, z.core.$strict>;","entrypoint":"channel-config-schema","exportName":"MSTeamsConfigSchema","importSpecifier":"openclaw/plugin-sdk/channel-config-schema","kind":"const","recordType":"export","sourceLine":1515,"sourcePath":"src/config/zod-schema.providers-core.ts"} {"declaration":"export const ReplyRuntimeConfigSchemaShape: { historyLimit: z.ZodOptional; dmHistoryLimit: z.ZodOptional; dms: z.ZodOptional; }, z.core.$strict>>>>; textChunkLimit: z.ZodOptional; chunkMode: z.ZodOptional>; blockStreaming: z.ZodOptional; blockStreamingCoalesce: z.ZodOptional; maxChars: z.ZodOptional; idleMs: z.ZodOptional; }, z.core.$strict>>; responsePrefix: z.ZodOptional; mediaMaxMb: z.ZodOptional; };","entrypoint":"channel-config-schema","exportName":"ReplyRuntimeConfigSchemaShape","importSpecifier":"openclaw/plugin-sdk/channel-config-schema","kind":"const","recordType":"export","sourceLine":348,"sourcePath":"src/config/zod-schema.core.ts"} {"declaration":"export const requireOpenAllowFrom: (params: { policy?: string; allowFrom?: Array; ctx: z.RefinementCtx; path: Array; message: string; }) => void;","entrypoint":"channel-config-schema","exportName":"requireOpenAllowFrom","importSpecifier":"openclaw/plugin-sdk/channel-config-schema","kind":"const","recordType":"export","sourceLine":487,"sourcePath":"src/config/zod-schema.core.ts"} -{"declaration":"export const SignalConfigSchema: z.ZodObject<{ name: z.ZodOptional; capabilities: z.ZodOptional>; markdown: z.ZodOptional>; }, z.core.$strict>>; enabled: z.ZodOptional; configWrites: z.ZodOptional; account: z.ZodOptional; accountUuid: z.ZodOptional; httpUrl: z.ZodOptional; httpHost: z.ZodOptional; httpPort: z.ZodOptional; cliPath: z.ZodOptional; autoStart: z.ZodOptional; startupTimeoutMs: z.ZodOptional; receiveMode: z.ZodOptional, z.ZodLiteral<\"manual\">]>>; ignoreAttachments: z.ZodOptional; ignoreStories: z.ZodOptional; sendReadReceipts: z.ZodOptional; dmPolicy: z.ZodDefault>>; allowFrom: z.ZodOptional>>; defaultTo: z.ZodOptional; groupAllowFrom: z.ZodOptional>>; groupPolicy: z.ZodDefault>>; groups: z.ZodOptional; tools: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>; toolsBySender: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>>>; }, z.core.$strict>>>>; historyLimit: z.ZodOptional; dmHistoryLimit: z.ZodOptional; dms: z.ZodOptional; }, z.core.$strict>>>>; textChunkLimit: z.ZodOptional; chunkMode: z.ZodOptional>; blockStreaming: z.ZodOptional; blockStreamingCoalesce: z.ZodOptional; maxChars: z.ZodOptional; idleMs: z.ZodOptional; }, z.core.$strict>>; mediaMaxMb: z.ZodOptional; reactionNotifications: z.ZodOptional>; reactionAllowlist: z.ZodOptional>>; actions: z.ZodOptional; }, z.core.$strict>>; reactionLevel: z.ZodOptional>; heartbeat: z.ZodOptional; showAlerts: z.ZodOptional; useIndicator: z.ZodOptional; }, z.core.$strict>>; healthMonitor: z.ZodOptional; }, z.core.$strict>>; responsePrefix: z.ZodOptional; accounts: z.ZodOptional; capabilities: z.ZodOptional>; markdown: z.ZodOptional>; }, z.core.$strict>>; enabled: z.ZodOptional; configWrites: z.ZodOptional; account: z.ZodOptional; accountUuid: z.ZodOptional; httpUrl: z.ZodOptional; httpHost: z.ZodOptional; httpPort: z.ZodOptional; cliPath: z.ZodOptional; autoStart: z.ZodOptional; startupTimeoutMs: z.ZodOptional; receiveMode: z.ZodOptional, z.ZodLiteral<\"manual\">]>>; ignoreAttachments: z.ZodOptional; ignoreStories: z.ZodOptional; sendReadReceipts: z.ZodOptional; dmPolicy: z.ZodDefault>>; allowFrom: z.ZodOptional>>; defaultTo: z.ZodOptional; groupAllowFrom: z.ZodOptional>>; groupPolicy: z.ZodDefault>>; groups: z.ZodOptional; tools: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>; toolsBySender: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>>>; }, z.core.$strict>>>>; historyLimit: z.ZodOptional; dmHistoryLimit: z.ZodOptional; dms: z.ZodOptional; }, z.core.$strict>>>>; textChunkLimit: z.ZodOptional; chunkMode: z.ZodOptional>; blockStreaming: z.ZodOptional; blockStreamingCoalesce: z.ZodOptional; maxChars: z.ZodOptional; idleMs: z.ZodOptional; }, z.core.$strict>>; mediaMaxMb: z.ZodOptional; reactionNotifications: z.ZodOptional>; reactionAllowlist: z.ZodOptional>>; actions: z.ZodOptional; }, z.core.$strict>>; reactionLevel: z.ZodOptional>; heartbeat: z.ZodOptional; showAlerts: z.ZodOptional; useIndicator: z.ZodOptional; }, z.core.$strict>>; healthMonitor: z.ZodOptional; }, z.core.$strict>>; responsePrefix: z.ZodOptional; }, z.core.$strict>>>>; defaultAccount: z.ZodOptional; }, z.core.$strict>;","entrypoint":"channel-config-schema","exportName":"SignalConfigSchema","importSpecifier":"openclaw/plugin-sdk/channel-config-schema","kind":"const","recordType":"export","sourceLine":1082,"sourcePath":"src/config/zod-schema.providers-core.ts"} -{"declaration":"export const SlackConfigSchema: z.ZodObject<{ name: z.ZodOptional; capabilities: z.ZodOptional, z.ZodObject<{ interactiveReplies: z.ZodOptional; }, z.core.$strict>]>>; execApprovals: z.ZodOptional; approvers: z.ZodOptional>>; agentFilter: z.ZodOptional>; sessionFilter: z.ZodOptional>; target: z.ZodOptional>; }, z.core.$strict>>; markdown: z.ZodOptional>; }, z.core.$strict>>; enabled: z.ZodOptional; commands: z.ZodOptional]>>; nativeSkills: z.ZodOptional]>>; }, z.core.$strict>>; configWrites: z.ZodOptional; botToken: z.ZodOptional; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"file\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"exec\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>], \"source\">]>>; appToken: z.ZodOptional; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"file\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"exec\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>], \"source\">]>>; userToken: z.ZodOptional; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"file\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"exec\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>], \"source\">]>>; userTokenReadOnly: z.ZodDefault>; allowBots: z.ZodOptional; dangerouslyAllowNameMatching: z.ZodOptional; requireMention: z.ZodOptional; historyLimit: z.ZodOptional; dmHistoryLimit: z.ZodOptional; dms: z.ZodOptional; }, z.core.$strict>>>>; textChunkLimit: z.ZodOptional; chunkMode: z.ZodOptional>; blockStreaming: z.ZodOptional; blockStreamingCoalesce: z.ZodOptional; maxChars: z.ZodOptional; idleMs: z.ZodOptional; }, z.core.$strict>>; streaming: z.ZodOptional]>>; nativeStreaming: z.ZodOptional; streamMode: z.ZodOptional>; mediaMaxMb: z.ZodOptional; reactionNotifications: z.ZodOptional>; reactionAllowlist: z.ZodOptional>>; replyToMode: z.ZodOptional, z.ZodLiteral<\"first\">, z.ZodLiteral<\"all\">]>>; replyToModeByChatType: z.ZodOptional, z.ZodLiteral<\"first\">, z.ZodLiteral<\"all\">]>>; group: z.ZodOptional, z.ZodLiteral<\"first\">, z.ZodLiteral<\"all\">]>>; channel: z.ZodOptional, z.ZodLiteral<\"first\">, z.ZodLiteral<\"all\">]>>; }, z.core.$strict>>; thread: z.ZodOptional>; inheritParent: z.ZodOptional; initialHistoryLimit: z.ZodOptional; }, z.core.$strict>>; actions: z.ZodOptional; messages: z.ZodOptional; pins: z.ZodOptional; search: z.ZodOptional; permissions: z.ZodOptional; memberInfo: z.ZodOptional; channelInfo: z.ZodOptional; emojiList: z.ZodOptional; }, z.core.$strict>>; slashCommand: z.ZodOptional; name: z.ZodOptional; sessionPrefix: z.ZodOptional; ephemeral: z.ZodOptional; }, z.core.$strict>>; dmPolicy: z.ZodOptional>; allowFrom: z.ZodOptional>>; defaultTo: z.ZodOptional; dm: z.ZodOptional; policy: z.ZodOptional>; allowFrom: z.ZodOptional>>; groupEnabled: z.ZodOptional; groupChannels: z.ZodOptional>>; replyToMode: z.ZodOptional, z.ZodLiteral<\"first\">, z.ZodLiteral<\"all\">]>>; }, z.core.$strict>>; channels: z.ZodOptional; allow: z.ZodOptional; requireMention: z.ZodOptional; tools: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>; toolsBySender: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>>>; allowBots: z.ZodOptional; users: z.ZodOptional>>; skills: z.ZodOptional>; systemPrompt: z.ZodOptional; }, z.core.$strict>>>>; heartbeat: z.ZodOptional; showAlerts: z.ZodOptional; useIndicator: z.ZodOptional; }, z.core.$strict>>; healthMonitor: z.ZodOptional; }, z.core.$strict>>; responsePrefix: z.ZodOptional; ackReaction: z.ZodOptional; typingReaction: z.ZodOptional; mode: z.ZodDefault>>; signingSecret: z.ZodOptional; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"file\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"exec\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>], \"source\">]>>; webhookPath: z.ZodDefault>; groupPolicy: z.ZodDefault>>; accounts: z.ZodOptional; mode: z.ZodOptional>; signingSecret: z.ZodOptional; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"file\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"exec\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>], \"source\">]>>; webhookPath: z.ZodOptional; capabilities: z.ZodOptional, z.ZodObject<{ interactiveReplies: z.ZodOptional; }, z.core.$strict>]>>; execApprovals: z.ZodOptional; approvers: z.ZodOptional>>; agentFilter: z.ZodOptional>; sessionFilter: z.ZodOptional>; target: z.ZodOptional>; }, z.core.$strict>>; markdown: z.ZodOptional>; }, z.core.$strict>>; enabled: z.ZodOptional; commands: z.ZodOptional]>>; nativeSkills: z.ZodOptional]>>; }, z.core.$strict>>; configWrites: z.ZodOptional; botToken: z.ZodOptional; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"file\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"exec\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>], \"source\">]>>; appToken: z.ZodOptional; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"file\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"exec\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>], \"source\">]>>; userToken: z.ZodOptional; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"file\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"exec\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>], \"source\">]>>; userTokenReadOnly: z.ZodDefault>; allowBots: z.ZodOptional; dangerouslyAllowNameMatching: z.ZodOptional; requireMention: z.ZodOptional; groupPolicy: z.ZodOptional>; historyLimit: z.ZodOptional; dmHistoryLimit: z.ZodOptional; dms: z.ZodOptional; }, z.core.$strict>>>>; textChunkLimit: z.ZodOptional; chunkMode: z.ZodOptional>; blockStreaming: z.ZodOptional; blockStreamingCoalesce: z.ZodOptional; maxChars: z.ZodOptional; idleMs: z.ZodOptional; }, z.core.$strict>>; streaming: z.ZodOptional]>>; nativeStreaming: z.ZodOptional; streamMode: z.ZodOptional>; mediaMaxMb: z.ZodOptional; reactionNotifications: z.ZodOptional>; reactionAllowlist: z.ZodOptional>>; replyToMode: z.ZodOptional, z.ZodLiteral<\"first\">, z.ZodLiteral<\"all\">]>>; replyToModeByChatType: z.ZodOptional, z.ZodLiteral<\"first\">, z.ZodLiteral<\"all\">]>>; group: z.ZodOptional, z.ZodLiteral<\"first\">, z.ZodLiteral<\"all\">]>>; channel: z.ZodOptional, z.ZodLiteral<\"first\">, z.ZodLiteral<\"all\">]>>; }, z.core.$strict>>; thread: z.ZodOptional>; inheritParent: z.ZodOptional; initialHistoryLimit: z.ZodOptional; }, z.core.$strict>>; actions: z.ZodOptional; messages: z.ZodOptional; pins: z.ZodOptional; search: z.ZodOptional; permissions: z.ZodOptional; memberInfo: z.ZodOptional; channelInfo: z.ZodOptional; emojiList: z.ZodOptional; }, z.core.$strict>>; slashCommand: z.ZodOptional; name: z.ZodOptional; sessionPrefix: z.ZodOptional; ephemeral: z.ZodOptional; }, z.core.$strict>>; dmPolicy: z.ZodOptional>; allowFrom: z.ZodOptional>>; defaultTo: z.ZodOptional; dm: z.ZodOptional; policy: z.ZodOptional>; allowFrom: z.ZodOptional>>; groupEnabled: z.ZodOptional; groupChannels: z.ZodOptional>>; replyToMode: z.ZodOptional, z.ZodLiteral<\"first\">, z.ZodLiteral<\"all\">]>>; }, z.core.$strict>>; channels: z.ZodOptional; allow: z.ZodOptional; requireMention: z.ZodOptional; tools: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>; toolsBySender: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>>>; allowBots: z.ZodOptional; users: z.ZodOptional>>; skills: z.ZodOptional>; systemPrompt: z.ZodOptional; }, z.core.$strict>>>>; heartbeat: z.ZodOptional; showAlerts: z.ZodOptional; useIndicator: z.ZodOptional; }, z.core.$strict>>; healthMonitor: z.ZodOptional; }, z.core.$strict>>; responsePrefix: z.ZodOptional; ackReaction: z.ZodOptional; typingReaction: z.ZodOptional; }, z.core.$strict>>>>; defaultAccount: z.ZodOptional; }, z.core.$strict>;","entrypoint":"channel-config-schema","exportName":"SlackConfigSchema","importSpecifier":"openclaw/plugin-sdk/channel-config-schema","kind":"const","recordType":"export","sourceLine":950,"sourcePath":"src/config/zod-schema.providers-core.ts"} -{"declaration":"export const TelegramConfigSchema: z.ZodObject<{ name: z.ZodOptional; capabilities: z.ZodOptional, z.ZodObject<{ inlineButtons: z.ZodOptional>; }, z.core.$strict>]>>; execApprovals: z.ZodOptional; approvers: z.ZodOptional>>; agentFilter: z.ZodOptional>; sessionFilter: z.ZodOptional>; target: z.ZodOptional>; }, z.core.$strict>>; markdown: z.ZodOptional>; }, z.core.$strict>>; enabled: z.ZodOptional; commands: z.ZodOptional]>>; nativeSkills: z.ZodOptional]>>; }, z.core.$strict>>; customCommands: z.ZodOptional>>; configWrites: z.ZodOptional; dmPolicy: z.ZodDefault>>; botToken: z.ZodOptional; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"file\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"exec\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>], \"source\">]>>; tokenFile: z.ZodOptional; replyToMode: z.ZodOptional, z.ZodLiteral<\"first\">, z.ZodLiteral<\"all\">]>>; groups: z.ZodOptional; disableAudioPreflight: z.ZodOptional; groupPolicy: z.ZodOptional>; tools: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>; toolsBySender: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>>>; skills: z.ZodOptional>; enabled: z.ZodOptional; allowFrom: z.ZodOptional>>; systemPrompt: z.ZodOptional; topics: z.ZodOptional; disableAudioPreflight: z.ZodOptional; groupPolicy: z.ZodOptional>; skills: z.ZodOptional>; enabled: z.ZodOptional; allowFrom: z.ZodOptional>>; systemPrompt: z.ZodOptional; agentId: z.ZodOptional; }, z.core.$strict>>>>; }, z.core.$strict>>>>; allowFrom: z.ZodOptional>>; defaultTo: z.ZodOptional>; groupAllowFrom: z.ZodOptional>>; groupPolicy: z.ZodDefault>>; historyLimit: z.ZodOptional; dmHistoryLimit: z.ZodOptional; dms: z.ZodOptional; }, z.core.$strict>>>>; direct: z.ZodOptional>; tools: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>; toolsBySender: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>>>; skills: z.ZodOptional>; enabled: z.ZodOptional; allowFrom: z.ZodOptional>>; systemPrompt: z.ZodOptional; topics: z.ZodOptional; disableAudioPreflight: z.ZodOptional; groupPolicy: z.ZodOptional>; skills: z.ZodOptional>; enabled: z.ZodOptional; allowFrom: z.ZodOptional>>; systemPrompt: z.ZodOptional; agentId: z.ZodOptional; }, z.core.$strict>>>>; requireTopic: z.ZodOptional; autoTopicLabel: z.ZodOptional; prompt: z.ZodOptional; }, z.core.$strict>]>>; }, z.core.$strict>>>>; textChunkLimit: z.ZodOptional; chunkMode: z.ZodOptional>; streaming: z.ZodOptional]>>; blockStreaming: z.ZodOptional; draftChunk: z.ZodOptional; maxChars: z.ZodOptional; breakPreference: z.ZodOptional, z.ZodLiteral<\"newline\">, z.ZodLiteral<\"sentence\">]>>; }, z.core.$strict>>; blockStreamingCoalesce: z.ZodOptional; maxChars: z.ZodOptional; idleMs: z.ZodOptional; }, z.core.$strict>>; streamMode: z.ZodOptional>; mediaMaxMb: z.ZodOptional; timeoutSeconds: z.ZodOptional; retry: z.ZodOptional; minDelayMs: z.ZodOptional; maxDelayMs: z.ZodOptional; jitter: z.ZodOptional; }, z.core.$strict>>; network: z.ZodOptional; dnsResultOrder: z.ZodOptional>; }, z.core.$strict>>; proxy: z.ZodOptional; webhookUrl: z.ZodOptional; webhookSecret: z.ZodOptional; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"file\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"exec\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>], \"source\">]>>; webhookPath: z.ZodOptional; webhookHost: z.ZodOptional; webhookPort: z.ZodOptional; webhookCertPath: z.ZodOptional; actions: z.ZodOptional; sendMessage: z.ZodOptional; poll: z.ZodOptional; deleteMessage: z.ZodOptional; editMessage: z.ZodOptional; sticker: z.ZodOptional; createForumTopic: z.ZodOptional; editForumTopic: z.ZodOptional; }, z.core.$strict>>; threadBindings: z.ZodOptional; idleHours: z.ZodOptional; maxAgeHours: z.ZodOptional; spawnSubagentSessions: z.ZodOptional; spawnAcpSessions: z.ZodOptional; }, z.core.$strict>>; reactionNotifications: z.ZodOptional>; reactionLevel: z.ZodOptional>; heartbeat: z.ZodOptional; showAlerts: z.ZodOptional; useIndicator: z.ZodOptional; }, z.core.$strict>>; healthMonitor: z.ZodOptional; }, z.core.$strict>>; linkPreview: z.ZodOptional; silentErrorReplies: z.ZodOptional; responsePrefix: z.ZodOptional; ackReaction: z.ZodOptional; apiRoot: z.ZodOptional; autoTopicLabel: z.ZodOptional; prompt: z.ZodOptional; }, z.core.$strict>]>>; accounts: z.ZodOptional; capabilities: z.ZodOptional, z.ZodObject<{ inlineButtons: z.ZodOptional>; }, z.core.$strict>]>>; execApprovals: z.ZodOptional; approvers: z.ZodOptional>>; agentFilter: z.ZodOptional>; sessionFilter: z.ZodOptional>; target: z.ZodOptional>; }, z.core.$strict>>; markdown: z.ZodOptional>; }, z.core.$strict>>; enabled: z.ZodOptional; commands: z.ZodOptional]>>; nativeSkills: z.ZodOptional]>>; }, z.core.$strict>>; customCommands: z.ZodOptional>>; configWrites: z.ZodOptional; dmPolicy: z.ZodDefault>>; botToken: z.ZodOptional; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"file\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"exec\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>], \"source\">]>>; tokenFile: z.ZodOptional; replyToMode: z.ZodOptional, z.ZodLiteral<\"first\">, z.ZodLiteral<\"all\">]>>; groups: z.ZodOptional; disableAudioPreflight: z.ZodOptional; groupPolicy: z.ZodOptional>; tools: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>; toolsBySender: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>>>; skills: z.ZodOptional>; enabled: z.ZodOptional; allowFrom: z.ZodOptional>>; systemPrompt: z.ZodOptional; topics: z.ZodOptional; disableAudioPreflight: z.ZodOptional; groupPolicy: z.ZodOptional>; skills: z.ZodOptional>; enabled: z.ZodOptional; allowFrom: z.ZodOptional>>; systemPrompt: z.ZodOptional; agentId: z.ZodOptional; }, z.core.$strict>>>>; }, z.core.$strict>>>>; allowFrom: z.ZodOptional>>; defaultTo: z.ZodOptional>; groupAllowFrom: z.ZodOptional>>; groupPolicy: z.ZodDefault>>; historyLimit: z.ZodOptional; dmHistoryLimit: z.ZodOptional; dms: z.ZodOptional; }, z.core.$strict>>>>; direct: z.ZodOptional>; tools: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>; toolsBySender: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>>>; skills: z.ZodOptional>; enabled: z.ZodOptional; allowFrom: z.ZodOptional>>; systemPrompt: z.ZodOptional; topics: z.ZodOptional; disableAudioPreflight: z.ZodOptional; groupPolicy: z.ZodOptional>; skills: z.ZodOptional>; enabled: z.ZodOptional; allowFrom: z.ZodOptional>>; systemPrompt: z.ZodOptional; agentId: z.ZodOptional; }, z.core.$strict>>>>; requireTopic: z.ZodOptional; autoTopicLabel: z.ZodOptional; prompt: z.ZodOptional; }, z.core.$strict>]>>; }, z.core.$strict>>>>; textChunkLimit: z.ZodOptional; chunkMode: z.ZodOptional>; streaming: z.ZodOptional]>>; blockStreaming: z.ZodOptional; draftChunk: z.ZodOptional; maxChars: z.ZodOptional; breakPreference: z.ZodOptional, z.ZodLiteral<\"newline\">, z.ZodLiteral<\"sentence\">]>>; }, z.core.$strict>>; blockStreamingCoalesce: z.ZodOptional; maxChars: z.ZodOptional; idleMs: z.ZodOptional; }, z.core.$strict>>; streamMode: z.ZodOptional>; mediaMaxMb: z.ZodOptional; timeoutSeconds: z.ZodOptional; retry: z.ZodOptional; minDelayMs: z.ZodOptional; maxDelayMs: z.ZodOptional; jitter: z.ZodOptional; }, z.core.$strict>>; network: z.ZodOptional; dnsResultOrder: z.ZodOptional>; }, z.core.$strict>>; proxy: z.ZodOptional; webhookUrl: z.ZodOptional; webhookSecret: z.ZodOptional; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"file\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"exec\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>], \"source\">]>>; webhookPath: z.ZodOptional; webhookHost: z.ZodOptional; webhookPort: z.ZodOptional; webhookCertPath: z.ZodOptional; actions: z.ZodOptional; sendMessage: z.ZodOptional; poll: z.ZodOptional; deleteMessage: z.ZodOptional; editMessage: z.ZodOptional; sticker: z.ZodOptional; createForumTopic: z.ZodOptional; editForumTopic: z.ZodOptional; }, z.core.$strict>>; threadBindings: z.ZodOptional; idleHours: z.ZodOptional; maxAgeHours: z.ZodOptional; spawnSubagentSessions: z.ZodOptional; spawnAcpSessions: z.ZodOptional; }, z.core.$strict>>; reactionNotifications: z.ZodOptional>; reactionLevel: z.ZodOptional>; heartbeat: z.ZodOptional; showAlerts: z.ZodOptional; useIndicator: z.ZodOptional; }, z.core.$strict>>; healthMonitor: z.ZodOptional; }, z.core.$strict>>; linkPreview: z.ZodOptional; silentErrorReplies: z.ZodOptional; responsePrefix: z.ZodOptional; ackReaction: z.ZodOptional; apiRoot: z.ZodOptional; autoTopicLabel: z.ZodOptional; prompt: z.ZodOptional; }, z.core.$strict>]>>; }, z.core.$strict>>>>; defaultAccount: z.ZodOptional; }, z.core.$strict>;","entrypoint":"channel-config-schema","exportName":"TelegramConfigSchema","importSpecifier":"openclaw/plugin-sdk/channel-config-schema","kind":"const","recordType":"export","sourceLine":310,"sourcePath":"src/config/zod-schema.providers-core.ts"} +{"declaration":"export const SignalConfigSchema: z.ZodObject<{ name: z.ZodOptional; capabilities: z.ZodOptional>; markdown: z.ZodOptional>; }, z.core.$strict>>; enabled: z.ZodOptional; configWrites: z.ZodOptional; account: z.ZodOptional; accountUuid: z.ZodOptional; httpUrl: z.ZodOptional; httpHost: z.ZodOptional; httpPort: z.ZodOptional; cliPath: z.ZodOptional; autoStart: z.ZodOptional; startupTimeoutMs: z.ZodOptional; receiveMode: z.ZodOptional, z.ZodLiteral<\"manual\">]>>; ignoreAttachments: z.ZodOptional; ignoreStories: z.ZodOptional; sendReadReceipts: z.ZodOptional; dmPolicy: z.ZodDefault>>; allowFrom: z.ZodOptional>>; defaultTo: z.ZodOptional; groupAllowFrom: z.ZodOptional>>; groupPolicy: z.ZodDefault>>; groups: z.ZodOptional; tools: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>; toolsBySender: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>>>; }, z.core.$strict>>>>; historyLimit: z.ZodOptional; dmHistoryLimit: z.ZodOptional; dms: z.ZodOptional; }, z.core.$strict>>>>; textChunkLimit: z.ZodOptional; chunkMode: z.ZodOptional>; blockStreaming: z.ZodOptional; blockStreamingCoalesce: z.ZodOptional; maxChars: z.ZodOptional; idleMs: z.ZodOptional; }, z.core.$strict>>; mediaMaxMb: z.ZodOptional; reactionNotifications: z.ZodOptional>; reactionAllowlist: z.ZodOptional>>; actions: z.ZodOptional; }, z.core.$strict>>; reactionLevel: z.ZodOptional>; heartbeat: z.ZodOptional; showAlerts: z.ZodOptional; useIndicator: z.ZodOptional; }, z.core.$strict>>; healthMonitor: z.ZodOptional; }, z.core.$strict>>; responsePrefix: z.ZodOptional; accounts: z.ZodOptional; capabilities: z.ZodOptional>; markdown: z.ZodOptional>; }, z.core.$strict>>; enabled: z.ZodOptional; configWrites: z.ZodOptional; account: z.ZodOptional; accountUuid: z.ZodOptional; httpUrl: z.ZodOptional; httpHost: z.ZodOptional; httpPort: z.ZodOptional; cliPath: z.ZodOptional; autoStart: z.ZodOptional; startupTimeoutMs: z.ZodOptional; receiveMode: z.ZodOptional, z.ZodLiteral<\"manual\">]>>; ignoreAttachments: z.ZodOptional; ignoreStories: z.ZodOptional; sendReadReceipts: z.ZodOptional; dmPolicy: z.ZodDefault>>; allowFrom: z.ZodOptional>>; defaultTo: z.ZodOptional; groupAllowFrom: z.ZodOptional>>; groupPolicy: z.ZodDefault>>; groups: z.ZodOptional; tools: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>; toolsBySender: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>>>; }, z.core.$strict>>>>; historyLimit: z.ZodOptional; dmHistoryLimit: z.ZodOptional; dms: z.ZodOptional; }, z.core.$strict>>>>; textChunkLimit: z.ZodOptional; chunkMode: z.ZodOptional>; blockStreaming: z.ZodOptional; blockStreamingCoalesce: z.ZodOptional; maxChars: z.ZodOptional; idleMs: z.ZodOptional; }, z.core.$strict>>; mediaMaxMb: z.ZodOptional; reactionNotifications: z.ZodOptional>; reactionAllowlist: z.ZodOptional>>; actions: z.ZodOptional; }, z.core.$strict>>; reactionLevel: z.ZodOptional>; heartbeat: z.ZodOptional; showAlerts: z.ZodOptional; useIndicator: z.ZodOptional; }, z.core.$strict>>; healthMonitor: z.ZodOptional; }, z.core.$strict>>; responsePrefix: z.ZodOptional; }, z.core.$strict>>>>; defaultAccount: z.ZodOptional; }, z.core.$strict>;","entrypoint":"channel-config-schema","exportName":"SignalConfigSchema","importSpecifier":"openclaw/plugin-sdk/channel-config-schema","kind":"const","recordType":"export","sourceLine":1091,"sourcePath":"src/config/zod-schema.providers-core.ts"} +{"declaration":"export const SlackConfigSchema: z.ZodObject<{ name: z.ZodOptional; capabilities: z.ZodOptional, z.ZodObject<{ interactiveReplies: z.ZodOptional; }, z.core.$strict>]>>; execApprovals: z.ZodOptional; approvers: z.ZodOptional>>; agentFilter: z.ZodOptional>; sessionFilter: z.ZodOptional>; target: z.ZodOptional>; }, z.core.$strict>>; markdown: z.ZodOptional>; }, z.core.$strict>>; enabled: z.ZodOptional; commands: z.ZodOptional]>>; nativeSkills: z.ZodOptional]>>; }, z.core.$strict>>; configWrites: z.ZodOptional; botToken: z.ZodOptional; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"file\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"exec\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>], \"source\">]>>; appToken: z.ZodOptional; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"file\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"exec\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>], \"source\">]>>; userToken: z.ZodOptional; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"file\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"exec\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>], \"source\">]>>; userTokenReadOnly: z.ZodDefault>; allowBots: z.ZodOptional; dangerouslyAllowNameMatching: z.ZodOptional; requireMention: z.ZodOptional; historyLimit: z.ZodOptional; dmHistoryLimit: z.ZodOptional; dms: z.ZodOptional; }, z.core.$strict>>>>; textChunkLimit: z.ZodOptional; chunkMode: z.ZodOptional>; blockStreaming: z.ZodOptional; blockStreamingCoalesce: z.ZodOptional; maxChars: z.ZodOptional; idleMs: z.ZodOptional; }, z.core.$strict>>; streaming: z.ZodOptional]>>; nativeStreaming: z.ZodOptional; streamMode: z.ZodOptional>; mediaMaxMb: z.ZodOptional; reactionNotifications: z.ZodOptional>; reactionAllowlist: z.ZodOptional>>; replyToMode: z.ZodOptional, z.ZodLiteral<\"first\">, z.ZodLiteral<\"all\">]>>; replyToModeByChatType: z.ZodOptional, z.ZodLiteral<\"first\">, z.ZodLiteral<\"all\">]>>; group: z.ZodOptional, z.ZodLiteral<\"first\">, z.ZodLiteral<\"all\">]>>; channel: z.ZodOptional, z.ZodLiteral<\"first\">, z.ZodLiteral<\"all\">]>>; }, z.core.$strict>>; thread: z.ZodOptional>; inheritParent: z.ZodOptional; initialHistoryLimit: z.ZodOptional; }, z.core.$strict>>; actions: z.ZodOptional; messages: z.ZodOptional; pins: z.ZodOptional; search: z.ZodOptional; permissions: z.ZodOptional; memberInfo: z.ZodOptional; channelInfo: z.ZodOptional; emojiList: z.ZodOptional; }, z.core.$strict>>; slashCommand: z.ZodOptional; name: z.ZodOptional; sessionPrefix: z.ZodOptional; ephemeral: z.ZodOptional; }, z.core.$strict>>; dmPolicy: z.ZodOptional>; allowFrom: z.ZodOptional>>; defaultTo: z.ZodOptional; dm: z.ZodOptional; policy: z.ZodOptional>; allowFrom: z.ZodOptional>>; groupEnabled: z.ZodOptional; groupChannels: z.ZodOptional>>; replyToMode: z.ZodOptional, z.ZodLiteral<\"first\">, z.ZodLiteral<\"all\">]>>; }, z.core.$strict>>; channels: z.ZodOptional; allow: z.ZodOptional; requireMention: z.ZodOptional; tools: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>; toolsBySender: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>>>; allowBots: z.ZodOptional; users: z.ZodOptional>>; skills: z.ZodOptional>; systemPrompt: z.ZodOptional; }, z.core.$strict>>>>; heartbeat: z.ZodOptional; showAlerts: z.ZodOptional; useIndicator: z.ZodOptional; }, z.core.$strict>>; healthMonitor: z.ZodOptional; }, z.core.$strict>>; responsePrefix: z.ZodOptional; ackReaction: z.ZodOptional; typingReaction: z.ZodOptional; mode: z.ZodDefault>>; signingSecret: z.ZodOptional; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"file\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"exec\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>], \"source\">]>>; webhookPath: z.ZodDefault>; groupPolicy: z.ZodDefault>>; accounts: z.ZodOptional; mode: z.ZodOptional>; signingSecret: z.ZodOptional; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"file\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"exec\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>], \"source\">]>>; webhookPath: z.ZodOptional; capabilities: z.ZodOptional, z.ZodObject<{ interactiveReplies: z.ZodOptional; }, z.core.$strict>]>>; execApprovals: z.ZodOptional; approvers: z.ZodOptional>>; agentFilter: z.ZodOptional>; sessionFilter: z.ZodOptional>; target: z.ZodOptional>; }, z.core.$strict>>; markdown: z.ZodOptional>; }, z.core.$strict>>; enabled: z.ZodOptional; commands: z.ZodOptional]>>; nativeSkills: z.ZodOptional]>>; }, z.core.$strict>>; configWrites: z.ZodOptional; botToken: z.ZodOptional; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"file\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"exec\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>], \"source\">]>>; appToken: z.ZodOptional; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"file\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"exec\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>], \"source\">]>>; userToken: z.ZodOptional; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"file\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"exec\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>], \"source\">]>>; userTokenReadOnly: z.ZodDefault>; allowBots: z.ZodOptional; dangerouslyAllowNameMatching: z.ZodOptional; requireMention: z.ZodOptional; groupPolicy: z.ZodOptional>; historyLimit: z.ZodOptional; dmHistoryLimit: z.ZodOptional; dms: z.ZodOptional; }, z.core.$strict>>>>; textChunkLimit: z.ZodOptional; chunkMode: z.ZodOptional>; blockStreaming: z.ZodOptional; blockStreamingCoalesce: z.ZodOptional; maxChars: z.ZodOptional; idleMs: z.ZodOptional; }, z.core.$strict>>; streaming: z.ZodOptional]>>; nativeStreaming: z.ZodOptional; streamMode: z.ZodOptional>; mediaMaxMb: z.ZodOptional; reactionNotifications: z.ZodOptional>; reactionAllowlist: z.ZodOptional>>; replyToMode: z.ZodOptional, z.ZodLiteral<\"first\">, z.ZodLiteral<\"all\">]>>; replyToModeByChatType: z.ZodOptional, z.ZodLiteral<\"first\">, z.ZodLiteral<\"all\">]>>; group: z.ZodOptional, z.ZodLiteral<\"first\">, z.ZodLiteral<\"all\">]>>; channel: z.ZodOptional, z.ZodLiteral<\"first\">, z.ZodLiteral<\"all\">]>>; }, z.core.$strict>>; thread: z.ZodOptional>; inheritParent: z.ZodOptional; initialHistoryLimit: z.ZodOptional; }, z.core.$strict>>; actions: z.ZodOptional; messages: z.ZodOptional; pins: z.ZodOptional; search: z.ZodOptional; permissions: z.ZodOptional; memberInfo: z.ZodOptional; channelInfo: z.ZodOptional; emojiList: z.ZodOptional; }, z.core.$strict>>; slashCommand: z.ZodOptional; name: z.ZodOptional; sessionPrefix: z.ZodOptional; ephemeral: z.ZodOptional; }, z.core.$strict>>; dmPolicy: z.ZodOptional>; allowFrom: z.ZodOptional>>; defaultTo: z.ZodOptional; dm: z.ZodOptional; policy: z.ZodOptional>; allowFrom: z.ZodOptional>>; groupEnabled: z.ZodOptional; groupChannels: z.ZodOptional>>; replyToMode: z.ZodOptional, z.ZodLiteral<\"first\">, z.ZodLiteral<\"all\">]>>; }, z.core.$strict>>; channels: z.ZodOptional; allow: z.ZodOptional; requireMention: z.ZodOptional; tools: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>; toolsBySender: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>>>; allowBots: z.ZodOptional; users: z.ZodOptional>>; skills: z.ZodOptional>; systemPrompt: z.ZodOptional; }, z.core.$strict>>>>; heartbeat: z.ZodOptional; showAlerts: z.ZodOptional; useIndicator: z.ZodOptional; }, z.core.$strict>>; healthMonitor: z.ZodOptional; }, z.core.$strict>>; responsePrefix: z.ZodOptional; ackReaction: z.ZodOptional; typingReaction: z.ZodOptional; }, z.core.$strict>>>>; defaultAccount: z.ZodOptional; }, z.core.$strict>;","entrypoint":"channel-config-schema","exportName":"SlackConfigSchema","importSpecifier":"openclaw/plugin-sdk/channel-config-schema","kind":"const","recordType":"export","sourceLine":959,"sourcePath":"src/config/zod-schema.providers-core.ts"} +{"declaration":"export const TelegramConfigSchema: z.ZodObject<{ name: z.ZodOptional; capabilities: z.ZodOptional, z.ZodObject<{ inlineButtons: z.ZodOptional>; }, z.core.$strict>]>>; execApprovals: z.ZodOptional; approvers: z.ZodOptional>>; agentFilter: z.ZodOptional>; sessionFilter: z.ZodOptional>; target: z.ZodOptional>; }, z.core.$strict>>; markdown: z.ZodOptional>; }, z.core.$strict>>; enabled: z.ZodOptional; commands: z.ZodOptional]>>; nativeSkills: z.ZodOptional]>>; }, z.core.$strict>>; customCommands: z.ZodOptional>>; configWrites: z.ZodOptional; dmPolicy: z.ZodDefault>>; botToken: z.ZodOptional; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"file\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"exec\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>], \"source\">]>>; tokenFile: z.ZodOptional; replyToMode: z.ZodOptional, z.ZodLiteral<\"first\">, z.ZodLiteral<\"all\">]>>; groups: z.ZodOptional; disableAudioPreflight: z.ZodOptional; groupPolicy: z.ZodOptional>; tools: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>; toolsBySender: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>>>; skills: z.ZodOptional>; enabled: z.ZodOptional; allowFrom: z.ZodOptional>>; systemPrompt: z.ZodOptional; topics: z.ZodOptional; disableAudioPreflight: z.ZodOptional; groupPolicy: z.ZodOptional>; skills: z.ZodOptional>; enabled: z.ZodOptional; allowFrom: z.ZodOptional>>; systemPrompt: z.ZodOptional; agentId: z.ZodOptional; errorPolicy: z.ZodOptional>; errorCooldownMs: z.ZodOptional; }, z.core.$strict>>>>; errorPolicy: z.ZodOptional>; errorCooldownMs: z.ZodOptional; }, z.core.$strict>>>>; allowFrom: z.ZodOptional>>; defaultTo: z.ZodOptional>; groupAllowFrom: z.ZodOptional>>; groupPolicy: z.ZodDefault>>; historyLimit: z.ZodOptional; dmHistoryLimit: z.ZodOptional; dms: z.ZodOptional; }, z.core.$strict>>>>; direct: z.ZodOptional>; tools: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>; toolsBySender: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>>>; skills: z.ZodOptional>; enabled: z.ZodOptional; allowFrom: z.ZodOptional>>; systemPrompt: z.ZodOptional; topics: z.ZodOptional; disableAudioPreflight: z.ZodOptional; groupPolicy: z.ZodOptional>; skills: z.ZodOptional>; enabled: z.ZodOptional; allowFrom: z.ZodOptional>>; systemPrompt: z.ZodOptional; agentId: z.ZodOptional; errorPolicy: z.ZodOptional>; errorCooldownMs: z.ZodOptional; }, z.core.$strict>>>>; errorPolicy: z.ZodOptional>; errorCooldownMs: z.ZodOptional; requireTopic: z.ZodOptional; autoTopicLabel: z.ZodOptional; prompt: z.ZodOptional; }, z.core.$strict>]>>; }, z.core.$strict>>>>; textChunkLimit: z.ZodOptional; chunkMode: z.ZodOptional>; streaming: z.ZodOptional]>>; blockStreaming: z.ZodOptional; draftChunk: z.ZodOptional; maxChars: z.ZodOptional; breakPreference: z.ZodOptional, z.ZodLiteral<\"newline\">, z.ZodLiteral<\"sentence\">]>>; }, z.core.$strict>>; blockStreamingCoalesce: z.ZodOptional; maxChars: z.ZodOptional; idleMs: z.ZodOptional; }, z.core.$strict>>; streamMode: z.ZodOptional>; mediaMaxMb: z.ZodOptional; timeoutSeconds: z.ZodOptional; retry: z.ZodOptional; minDelayMs: z.ZodOptional; maxDelayMs: z.ZodOptional; jitter: z.ZodOptional; }, z.core.$strict>>; network: z.ZodOptional; dnsResultOrder: z.ZodOptional>; }, z.core.$strict>>; proxy: z.ZodOptional; webhookUrl: z.ZodOptional; webhookSecret: z.ZodOptional; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"file\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"exec\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>], \"source\">]>>; webhookPath: z.ZodOptional; webhookHost: z.ZodOptional; webhookPort: z.ZodOptional; webhookCertPath: z.ZodOptional; actions: z.ZodOptional; sendMessage: z.ZodOptional; poll: z.ZodOptional; deleteMessage: z.ZodOptional; editMessage: z.ZodOptional; sticker: z.ZodOptional; createForumTopic: z.ZodOptional; editForumTopic: z.ZodOptional; }, z.core.$strict>>; threadBindings: z.ZodOptional; idleHours: z.ZodOptional; maxAgeHours: z.ZodOptional; spawnSubagentSessions: z.ZodOptional; spawnAcpSessions: z.ZodOptional; }, z.core.$strict>>; reactionNotifications: z.ZodOptional>; reactionLevel: z.ZodOptional>; heartbeat: z.ZodOptional; showAlerts: z.ZodOptional; useIndicator: z.ZodOptional; }, z.core.$strict>>; healthMonitor: z.ZodOptional; }, z.core.$strict>>; linkPreview: z.ZodOptional; silentErrorReplies: z.ZodOptional; responsePrefix: z.ZodOptional; ackReaction: z.ZodOptional; errorPolicy: z.ZodOptional>; errorCooldownMs: z.ZodOptional; apiRoot: z.ZodOptional; autoTopicLabel: z.ZodOptional; prompt: z.ZodOptional; }, z.core.$strict>]>>; accounts: z.ZodOptional; capabilities: z.ZodOptional, z.ZodObject<{ inlineButtons: z.ZodOptional>; }, z.core.$strict>]>>; execApprovals: z.ZodOptional; approvers: z.ZodOptional>>; agentFilter: z.ZodOptional>; sessionFilter: z.ZodOptional>; target: z.ZodOptional>; }, z.core.$strict>>; markdown: z.ZodOptional>; }, z.core.$strict>>; enabled: z.ZodOptional; commands: z.ZodOptional]>>; nativeSkills: z.ZodOptional]>>; }, z.core.$strict>>; customCommands: z.ZodOptional>>; configWrites: z.ZodOptional; dmPolicy: z.ZodDefault>>; botToken: z.ZodOptional; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"file\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"exec\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>], \"source\">]>>; tokenFile: z.ZodOptional; replyToMode: z.ZodOptional, z.ZodLiteral<\"first\">, z.ZodLiteral<\"all\">]>>; groups: z.ZodOptional; disableAudioPreflight: z.ZodOptional; groupPolicy: z.ZodOptional>; tools: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>; toolsBySender: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>>>; skills: z.ZodOptional>; enabled: z.ZodOptional; allowFrom: z.ZodOptional>>; systemPrompt: z.ZodOptional; topics: z.ZodOptional; disableAudioPreflight: z.ZodOptional; groupPolicy: z.ZodOptional>; skills: z.ZodOptional>; enabled: z.ZodOptional; allowFrom: z.ZodOptional>>; systemPrompt: z.ZodOptional; agentId: z.ZodOptional; errorPolicy: z.ZodOptional>; errorCooldownMs: z.ZodOptional; }, z.core.$strict>>>>; errorPolicy: z.ZodOptional>; errorCooldownMs: z.ZodOptional; }, z.core.$strict>>>>; allowFrom: z.ZodOptional>>; defaultTo: z.ZodOptional>; groupAllowFrom: z.ZodOptional>>; groupPolicy: z.ZodDefault>>; historyLimit: z.ZodOptional; dmHistoryLimit: z.ZodOptional; dms: z.ZodOptional; }, z.core.$strict>>>>; direct: z.ZodOptional>; tools: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>; toolsBySender: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>>>; skills: z.ZodOptional>; enabled: z.ZodOptional; allowFrom: z.ZodOptional>>; systemPrompt: z.ZodOptional; topics: z.ZodOptional; disableAudioPreflight: z.ZodOptional; groupPolicy: z.ZodOptional>; skills: z.ZodOptional>; enabled: z.ZodOptional; allowFrom: z.ZodOptional>>; systemPrompt: z.ZodOptional; agentId: z.ZodOptional; errorPolicy: z.ZodOptional>; errorCooldownMs: z.ZodOptional; }, z.core.$strict>>>>; errorPolicy: z.ZodOptional>; errorCooldownMs: z.ZodOptional; requireTopic: z.ZodOptional; autoTopicLabel: z.ZodOptional; prompt: z.ZodOptional; }, z.core.$strict>]>>; }, z.core.$strict>>>>; textChunkLimit: z.ZodOptional; chunkMode: z.ZodOptional>; streaming: z.ZodOptional]>>; blockStreaming: z.ZodOptional; draftChunk: z.ZodOptional; maxChars: z.ZodOptional; breakPreference: z.ZodOptional, z.ZodLiteral<\"newline\">, z.ZodLiteral<\"sentence\">]>>; }, z.core.$strict>>; blockStreamingCoalesce: z.ZodOptional; maxChars: z.ZodOptional; idleMs: z.ZodOptional; }, z.core.$strict>>; streamMode: z.ZodOptional>; mediaMaxMb: z.ZodOptional; timeoutSeconds: z.ZodOptional; retry: z.ZodOptional; minDelayMs: z.ZodOptional; maxDelayMs: z.ZodOptional; jitter: z.ZodOptional; }, z.core.$strict>>; network: z.ZodOptional; dnsResultOrder: z.ZodOptional>; }, z.core.$strict>>; proxy: z.ZodOptional; webhookUrl: z.ZodOptional; webhookSecret: z.ZodOptional; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"file\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>, z.ZodObject<{ source: z.ZodLiteral<\"exec\">; provider: z.ZodString; id: z.ZodString; }, z.core.$strict>], \"source\">]>>; webhookPath: z.ZodOptional; webhookHost: z.ZodOptional; webhookPort: z.ZodOptional; webhookCertPath: z.ZodOptional; actions: z.ZodOptional; sendMessage: z.ZodOptional; poll: z.ZodOptional; deleteMessage: z.ZodOptional; editMessage: z.ZodOptional; sticker: z.ZodOptional; createForumTopic: z.ZodOptional; editForumTopic: z.ZodOptional; }, z.core.$strict>>; threadBindings: z.ZodOptional; idleHours: z.ZodOptional; maxAgeHours: z.ZodOptional; spawnSubagentSessions: z.ZodOptional; spawnAcpSessions: z.ZodOptional; }, z.core.$strict>>; reactionNotifications: z.ZodOptional>; reactionLevel: z.ZodOptional>; heartbeat: z.ZodOptional; showAlerts: z.ZodOptional; useIndicator: z.ZodOptional; }, z.core.$strict>>; healthMonitor: z.ZodOptional; }, z.core.$strict>>; linkPreview: z.ZodOptional; silentErrorReplies: z.ZodOptional; responsePrefix: z.ZodOptional; ackReaction: z.ZodOptional; errorPolicy: z.ZodOptional>; errorCooldownMs: z.ZodOptional; apiRoot: z.ZodOptional; autoTopicLabel: z.ZodOptional; prompt: z.ZodOptional; }, z.core.$strict>]>>; }, z.core.$strict>>>>; defaultAccount: z.ZodOptional; }, z.core.$strict>;","entrypoint":"channel-config-schema","exportName":"TelegramConfigSchema","importSpecifier":"openclaw/plugin-sdk/channel-config-schema","kind":"const","recordType":"export","sourceLine":319,"sourcePath":"src/config/zod-schema.providers-core.ts"} {"declaration":"export const ToolPolicySchema: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>;","entrypoint":"channel-config-schema","exportName":"ToolPolicySchema","importSpecifier":"openclaw/plugin-sdk/channel-config-schema","kind":"const","recordType":"export","sourceLine":253,"sourcePath":"src/config/zod-schema.agent-runtime.ts"} -{"declaration":"export const WhatsAppConfigSchema: z.ZodObject<{ enabled: z.ZodOptional; capabilities: z.ZodOptional>; markdown: z.ZodOptional>; }, z.core.$strict>>; configWrites: z.ZodOptional; sendReadReceipts: z.ZodOptional; messagePrefix: z.ZodOptional; responsePrefix: z.ZodOptional; dmPolicy: z.ZodDefault>>; selfChatMode: z.ZodOptional; allowFrom: z.ZodOptional>; defaultTo: z.ZodOptional; groupAllowFrom: z.ZodOptional>; groupPolicy: z.ZodDefault>>; historyLimit: z.ZodOptional; dmHistoryLimit: z.ZodOptional; dms: z.ZodOptional; }, z.core.$strict>>>>; textChunkLimit: z.ZodOptional; chunkMode: z.ZodOptional>; blockStreaming: z.ZodOptional; blockStreamingCoalesce: z.ZodOptional; maxChars: z.ZodOptional; idleMs: z.ZodOptional; }, z.core.$strict>>; groups: z.ZodOptional; tools: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>; toolsBySender: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>>>; }, z.core.$strict>>>>; ackReaction: z.ZodOptional; direct: z.ZodDefault>; group: z.ZodDefault>>; }, z.core.$strict>>; debounceMs: z.ZodDefault>; heartbeat: z.ZodOptional; showAlerts: z.ZodOptional; useIndicator: z.ZodOptional; }, z.core.$strict>>; healthMonitor: z.ZodOptional; }, z.core.$strict>>; accounts: z.ZodOptional>; markdown: z.ZodOptional>; }, z.core.$strict>>; configWrites: z.ZodOptional; sendReadReceipts: z.ZodOptional; messagePrefix: z.ZodOptional; responsePrefix: z.ZodOptional; dmPolicy: z.ZodDefault>>; selfChatMode: z.ZodOptional; allowFrom: z.ZodOptional>; defaultTo: z.ZodOptional; groupAllowFrom: z.ZodOptional>; groupPolicy: z.ZodDefault>>; historyLimit: z.ZodOptional; dmHistoryLimit: z.ZodOptional; dms: z.ZodOptional; }, z.core.$strict>>>>; textChunkLimit: z.ZodOptional; chunkMode: z.ZodOptional>; blockStreaming: z.ZodOptional; blockStreamingCoalesce: z.ZodOptional; maxChars: z.ZodOptional; idleMs: z.ZodOptional; }, z.core.$strict>>; groups: z.ZodOptional; tools: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>; toolsBySender: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>>>; }, z.core.$strict>>>>; ackReaction: z.ZodOptional; direct: z.ZodDefault>; group: z.ZodDefault>>; }, z.core.$strict>>; debounceMs: z.ZodDefault>; heartbeat: z.ZodOptional; showAlerts: z.ZodOptional; useIndicator: z.ZodOptional; }, z.core.$strict>>; healthMonitor: z.ZodOptional; }, z.core.$strict>>; name: z.ZodOptional; enabled: z.ZodOptional; authDir: z.ZodOptional; mediaMaxMb: z.ZodOptional; }, z.core.$strict>>>>; defaultAccount: z.ZodOptional; mediaMaxMb: z.ZodDefault>; actions: z.ZodOptional; sendMessage: z.ZodOptional; polls: z.ZodOptional; }, z.core.$strict>>; }, z.core.$strict>;","entrypoint":"channel-config-schema","exportName":"WhatsAppConfigSchema","importSpecifier":"openclaw/plugin-sdk/channel-config-schema","kind":"const","recordType":"export","sourceLine":119,"sourcePath":"src/config/zod-schema.providers-whatsapp.ts"} +{"declaration":"export const WhatsAppConfigSchema: z.ZodObject<{ enabled: z.ZodOptional; capabilities: z.ZodOptional>; markdown: z.ZodOptional>; }, z.core.$strict>>; configWrites: z.ZodOptional; sendReadReceipts: z.ZodOptional; messagePrefix: z.ZodOptional; responsePrefix: z.ZodOptional; dmPolicy: z.ZodDefault>>; selfChatMode: z.ZodOptional; allowFrom: z.ZodOptional>; defaultTo: z.ZodOptional; groupAllowFrom: z.ZodOptional>; groupPolicy: z.ZodDefault>>; historyLimit: z.ZodOptional; dmHistoryLimit: z.ZodOptional; dms: z.ZodOptional; }, z.core.$strict>>>>; textChunkLimit: z.ZodOptional; chunkMode: z.ZodOptional>; blockStreaming: z.ZodOptional; blockStreamingCoalesce: z.ZodOptional; maxChars: z.ZodOptional; idleMs: z.ZodOptional; }, z.core.$strict>>; groups: z.ZodOptional; tools: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>; toolsBySender: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>>>; }, z.core.$strict>>>>; ackReaction: z.ZodOptional; direct: z.ZodDefault>; group: z.ZodDefault>>; }, z.core.$strict>>; reactionLevel: z.ZodOptional>; debounceMs: z.ZodDefault>; heartbeat: z.ZodOptional; showAlerts: z.ZodOptional; useIndicator: z.ZodOptional; }, z.core.$strict>>; healthMonitor: z.ZodOptional; }, z.core.$strict>>; accounts: z.ZodOptional>; markdown: z.ZodOptional>; }, z.core.$strict>>; configWrites: z.ZodOptional; sendReadReceipts: z.ZodOptional; messagePrefix: z.ZodOptional; responsePrefix: z.ZodOptional; dmPolicy: z.ZodDefault>>; selfChatMode: z.ZodOptional; allowFrom: z.ZodOptional>; defaultTo: z.ZodOptional; groupAllowFrom: z.ZodOptional>; groupPolicy: z.ZodDefault>>; historyLimit: z.ZodOptional; dmHistoryLimit: z.ZodOptional; dms: z.ZodOptional; }, z.core.$strict>>>>; textChunkLimit: z.ZodOptional; chunkMode: z.ZodOptional>; blockStreaming: z.ZodOptional; blockStreamingCoalesce: z.ZodOptional; maxChars: z.ZodOptional; idleMs: z.ZodOptional; }, z.core.$strict>>; groups: z.ZodOptional; tools: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>; toolsBySender: z.ZodOptional>; alsoAllow: z.ZodOptional>; deny: z.ZodOptional>; }, z.core.$strict>>>>; }, z.core.$strict>>>>; ackReaction: z.ZodOptional; direct: z.ZodDefault>; group: z.ZodDefault>>; }, z.core.$strict>>; reactionLevel: z.ZodOptional>; debounceMs: z.ZodDefault>; heartbeat: z.ZodOptional; showAlerts: z.ZodOptional; useIndicator: z.ZodOptional; }, z.core.$strict>>; healthMonitor: z.ZodOptional; }, z.core.$strict>>; name: z.ZodOptional; enabled: z.ZodOptional; authDir: z.ZodOptional; mediaMaxMb: z.ZodOptional; }, z.core.$strict>>>>; defaultAccount: z.ZodOptional; mediaMaxMb: z.ZodDefault>; actions: z.ZodOptional; sendMessage: z.ZodOptional; polls: z.ZodOptional; }, z.core.$strict>>; }, z.core.$strict>;","entrypoint":"channel-config-schema","exportName":"WhatsAppConfigSchema","importSpecifier":"openclaw/plugin-sdk/channel-config-schema","kind":"const","recordType":"export","sourceLine":120,"sourcePath":"src/config/zod-schema.providers-whatsapp.ts"} {"category":"channel","entrypoint":"channel-contract","importSpecifier":"openclaw/plugin-sdk/channel-contract","recordType":"module","sourceLine":1,"sourcePath":"src/plugin-sdk/channel-contract.ts"} {"declaration":"export type BaseProbeResult = BaseProbeResult;","entrypoint":"channel-contract","exportName":"BaseProbeResult","importSpecifier":"openclaw/plugin-sdk/channel-contract","kind":"type","recordType":"export","sourceLine":599,"sourcePath":"src/channels/plugins/types.core.ts"} {"declaration":"export type BaseTokenResolution = BaseTokenResolution;","entrypoint":"channel-contract","exportName":"BaseTokenResolution","importSpecifier":"openclaw/plugin-sdk/channel-contract","kind":"type","recordType":"export","sourceLine":605,"sourcePath":"src/channels/plugins/types.core.ts"} @@ -305,11 +305,11 @@ {"declaration":"export function findCommandByNativeName(name: string, provider?: string | undefined): ChatCommandDefinition | undefined;","entrypoint":"command-auth","exportName":"findCommandByNativeName","importSpecifier":"openclaw/plugin-sdk/command-auth","kind":"function","recordType":"export","sourceLine":187,"sourcePath":"src/auto-reply/commands-registry.ts"} {"declaration":"export function formatModelsAvailableHeader(params: { provider: string; total: number; cfg: OpenClawConfig; agentDir?: string | undefined; sessionEntry?: SessionEntry | undefined; }): string;","entrypoint":"command-auth","exportName":"formatModelsAvailableHeader","importSpecifier":"openclaw/plugin-sdk/command-auth","kind":"function","recordType":"export","sourceLine":215,"sourcePath":"src/auto-reply/reply/commands-models.ts"} {"declaration":"export function getCommandDetection(_cfg?: OpenClawConfig | undefined): CommandDetection;","entrypoint":"command-auth","exportName":"getCommandDetection","importSpecifier":"openclaw/plugin-sdk/command-auth","kind":"function","recordType":"export","sourceLine":440,"sourcePath":"src/auto-reply/commands-registry.ts"} -{"declaration":"export function hasControlCommand(text?: string | undefined, cfg?: OpenClawConfig | undefined, options?: CommandNormalizeOptions | undefined): boolean;","entrypoint":"command-auth","exportName":"hasControlCommand","importSpecifier":"openclaw/plugin-sdk/command-auth","kind":"function","recordType":"export","sourceLine":10,"sourcePath":"src/auto-reply/command-detection.ts"} -{"declaration":"export function hasInlineCommandTokens(text?: string | undefined): boolean;","entrypoint":"command-auth","exportName":"hasInlineCommandTokens","importSpecifier":"openclaw/plugin-sdk/command-auth","kind":"function","recordType":"export","sourceLine":74,"sourcePath":"src/auto-reply/command-detection.ts"} +{"declaration":"export function hasControlCommand(text?: string | undefined, cfg?: OpenClawConfig | undefined, options?: CommandNormalizeOptions | undefined): boolean;","entrypoint":"command-auth","exportName":"hasControlCommand","importSpecifier":"openclaw/plugin-sdk/command-auth","kind":"function","recordType":"export","sourceLine":11,"sourcePath":"src/auto-reply/command-detection.ts"} +{"declaration":"export function hasInlineCommandTokens(text?: string | undefined): boolean;","entrypoint":"command-auth","exportName":"hasInlineCommandTokens","importSpecifier":"openclaw/plugin-sdk/command-auth","kind":"function","recordType":"export","sourceLine":80,"sourcePath":"src/auto-reply/command-detection.ts"} {"declaration":"export function isCommandEnabled(cfg: OpenClawConfig, commandKey: string): boolean;","entrypoint":"command-auth","exportName":"isCommandEnabled","importSpecifier":"openclaw/plugin-sdk/command-auth","kind":"function","recordType":"export","sourceLine":98,"sourcePath":"src/auto-reply/commands-registry.ts"} {"declaration":"export function isCommandMessage(raw: string): boolean;","entrypoint":"command-auth","exportName":"isCommandMessage","importSpecifier":"openclaw/plugin-sdk/command-auth","kind":"function","recordType":"export","sourceLine":435,"sourcePath":"src/auto-reply/commands-registry.ts"} -{"declaration":"export function isControlCommandMessage(text?: string | undefined, cfg?: OpenClawConfig | undefined, options?: CommandNormalizeOptions | undefined): boolean;","entrypoint":"command-auth","exportName":"isControlCommandMessage","importSpecifier":"openclaw/plugin-sdk/command-auth","kind":"function","recordType":"export","sourceLine":48,"sourcePath":"src/auto-reply/command-detection.ts"} +{"declaration":"export function isControlCommandMessage(text?: string | undefined, cfg?: OpenClawConfig | undefined, options?: CommandNormalizeOptions | undefined): boolean;","entrypoint":"command-auth","exportName":"isControlCommandMessage","importSpecifier":"openclaw/plugin-sdk/command-auth","kind":"function","recordType":"export","sourceLine":53,"sourcePath":"src/auto-reply/command-detection.ts"} {"declaration":"export function isNativeCommandSurface(surface?: string | undefined): boolean;","entrypoint":"command-auth","exportName":"isNativeCommandSurface","importSpecifier":"openclaw/plugin-sdk/command-auth","kind":"function","recordType":"export","sourceLine":521,"sourcePath":"src/auto-reply/commands-registry.ts"} {"declaration":"export function listChatCommands(params?: { skillCommands?: SkillCommandSpec[] | undefined; } | undefined): ChatCommandDefinition[];","entrypoint":"command-auth","exportName":"listChatCommands","importSpecifier":"openclaw/plugin-sdk/command-auth","kind":"function","recordType":"export","sourceLine":88,"sourcePath":"src/auto-reply/commands-registry.ts"} {"declaration":"export function listChatCommandsForConfig(cfg: OpenClawConfig, params?: { skillCommands?: SkillCommandSpec[] | undefined; } | undefined): ChatCommandDefinition[];","entrypoint":"command-auth","exportName":"listChatCommandsForConfig","importSpecifier":"openclaw/plugin-sdk/command-auth","kind":"function","recordType":"export","sourceLine":117,"sourcePath":"src/auto-reply/commands-registry.ts"} @@ -337,7 +337,7 @@ {"declaration":"export function resolveStoredModelOverride(params: { sessionEntry?: SessionEntry | undefined; sessionStore?: Record | undefined; sessionKey?: string | undefined; parentSessionKey?: string | undefined; }): StoredModelOverride | null;","entrypoint":"command-auth","exportName":"resolveStoredModelOverride","importSpecifier":"openclaw/plugin-sdk/command-auth","kind":"function","recordType":"export","sourceLine":156,"sourcePath":"src/auto-reply/reply/model-selection.ts"} {"declaration":"export function resolveTextCommand(raw: string, cfg?: OpenClawConfig | undefined): { command: ChatCommandDefinition; args?: string | undefined; } | null;","entrypoint":"command-auth","exportName":"resolveTextCommand","importSpecifier":"openclaw/plugin-sdk/command-auth","kind":"function","recordType":"export","sourceLine":494,"sourcePath":"src/auto-reply/commands-registry.ts"} {"declaration":"export function serializeCommandArgs(command: ChatCommandDefinition, args?: CommandArgs | undefined): string | undefined;","entrypoint":"command-auth","exportName":"serializeCommandArgs","importSpecifier":"openclaw/plugin-sdk/command-auth","kind":"function","recordType":"export","sourceLine":271,"sourcePath":"src/auto-reply/commands-registry.ts"} -{"declaration":"export function shouldComputeCommandAuthorized(text?: string | undefined, cfg?: OpenClawConfig | undefined, options?: CommandNormalizeOptions | undefined): boolean;","entrypoint":"command-auth","exportName":"shouldComputeCommandAuthorized","importSpecifier":"openclaw/plugin-sdk/command-auth","kind":"function","recordType":"export","sourceLine":82,"sourcePath":"src/auto-reply/command-detection.ts"} +{"declaration":"export function shouldComputeCommandAuthorized(text?: string | undefined, cfg?: OpenClawConfig | undefined, options?: CommandNormalizeOptions | undefined): boolean;","entrypoint":"command-auth","exportName":"shouldComputeCommandAuthorized","importSpecifier":"openclaw/plugin-sdk/command-auth","kind":"function","recordType":"export","sourceLine":88,"sourcePath":"src/auto-reply/command-detection.ts"} {"declaration":"export function shouldHandleTextCommands(params: ShouldHandleTextCommandsParams): boolean;","entrypoint":"command-auth","exportName":"shouldHandleTextCommands","importSpecifier":"openclaw/plugin-sdk/command-auth","kind":"function","recordType":"export","sourceLine":528,"sourcePath":"src/auto-reply/commands-registry.ts"} {"declaration":"export type ChatCommandDefinition = ChatCommandDefinition;","entrypoint":"command-auth","exportName":"ChatCommandDefinition","importSpecifier":"openclaw/plugin-sdk/command-auth","kind":"type","recordType":"export","sourceLine":53,"sourcePath":"src/auto-reply/commands-registry.types.ts"} {"declaration":"export type CommandArgChoiceContext = CommandArgChoiceContext;","entrypoint":"command-auth","exportName":"CommandArgChoiceContext","importSpecifier":"openclaw/plugin-sdk/command-auth","kind":"type","recordType":"export","sourceLine":16,"sourcePath":"src/auto-reply/commands-registry.types.ts"} @@ -366,7 +366,7 @@ {"declaration":"export type StoredModelOverride = StoredModelOverride;","entrypoint":"command-auth","exportName":"StoredModelOverride","importSpecifier":"openclaw/plugin-sdk/command-auth","kind":"type","recordType":"export","sourceLine":123,"sourcePath":"src/auto-reply/reply/model-selection.ts"} {"category":"core","entrypoint":"core","importSpecifier":"openclaw/plugin-sdk/core","recordType":"module","sourceLine":1,"sourcePath":"src/plugin-sdk/core.ts"} {"declaration":"export function applyAccountNameToChannelSection(params: { cfg: OpenClawConfig; channelKey: string; accountId: string; name?: string | undefined; alwaysUseAccounts?: boolean | undefined; }): OpenClawConfig;","entrypoint":"core","exportName":"applyAccountNameToChannelSection","importSpecifier":"openclaw/plugin-sdk/core","kind":"function","recordType":"export","sourceLine":34,"sourcePath":"src/channels/plugins/setup-helpers.ts"} -{"declaration":"export function buildAgentSessionKey(params: { agentId: string; channel: string; accountId?: string | null | undefined; peer?: RoutePeer | null | undefined; dmScope?: \"main\" | \"per-peer\" | \"per-channel-peer\" | \"per-account-channel-peer\" | undefined; identityLinks?: Record<...> | undefined; }): string;","entrypoint":"core","exportName":"buildAgentSessionKey","importSpecifier":"openclaw/plugin-sdk/core","kind":"function","recordType":"export","sourceLine":91,"sourcePath":"src/routing/resolve-route.ts"} +{"declaration":"export function buildAgentSessionKey(params: { agentId: string; channel: string; accountId?: string | null | undefined; peer?: RoutePeer | null | undefined; dmScope?: \"main\" | \"per-peer\" | \"per-channel-peer\" | \"per-account-channel-peer\" | undefined; identityLinks?: Record<...> | undefined; }): string;","entrypoint":"core","exportName":"buildAgentSessionKey","importSpecifier":"openclaw/plugin-sdk/core","kind":"function","recordType":"export","sourceLine":92,"sourcePath":"src/routing/resolve-route.ts"} {"declaration":"export function buildChannelConfigSchema(schema: ZodType>, options?: BuildChannelConfigSchemaOptions | undefined): ChannelConfigSchema;","entrypoint":"core","exportName":"buildChannelConfigSchema","importSpecifier":"openclaw/plugin-sdk/core","kind":"function","recordType":"export","sourceLine":76,"sourcePath":"src/channels/plugins/config-schema.ts"} {"declaration":"export function buildChannelOutboundSessionRoute(params: { cfg: OpenClawConfig; agentId: string; channel: string; accountId?: string | null | undefined; peer: { kind: \"direct\" | \"group\" | \"channel\"; id: string; }; chatType: \"direct\" | \"group\" | \"channel\"; from: string; to: string; threadId?: string | ... 1 more ... | undefined; }): ChannelOutboundSessionRoute;","entrypoint":"core","exportName":"buildChannelOutboundSessionRoute","importSpecifier":"openclaw/plugin-sdk/core","kind":"function","recordType":"export","sourceLine":184,"sourcePath":"src/plugin-sdk/core.ts"} {"declaration":"export function buildPluginConfigSchema(schema: ZodType>, options?: BuildPluginConfigSchemaOptions | undefined): OpenClawPluginConfigSchema;","entrypoint":"core","exportName":"buildPluginConfigSchema","importSpecifier":"openclaw/plugin-sdk/core","kind":"function","recordType":"export","sourceLine":78,"sourcePath":"src/plugins/config-schema.ts"} diff --git a/extensions/acpx/package.json b/extensions/acpx/package.json index 21c007dd37e..b0e790ec9d0 100644 --- a/extensions/acpx/package.json +++ b/extensions/acpx/package.json @@ -1,6 +1,6 @@ { "name": "@openclaw/acpx", - "version": "2026.4.1", + "version": "2026.4.1-beta.1", "description": "OpenClaw ACP runtime backend via acpx", "type": "module", "dependencies": { diff --git a/extensions/amazon-bedrock/package.json b/extensions/amazon-bedrock/package.json index 1f5f56a16e8..89444479c46 100644 --- a/extensions/amazon-bedrock/package.json +++ b/extensions/amazon-bedrock/package.json @@ -1,6 +1,6 @@ { "name": "@openclaw/amazon-bedrock-provider", - "version": "2026.4.1", + "version": "2026.4.1-beta.1", "private": true, "description": "OpenClaw Amazon Bedrock provider plugin", "type": "module", diff --git a/extensions/anthropic-vertex/package.json b/extensions/anthropic-vertex/package.json index 714d238e7f8..8dc6a71fb06 100644 --- a/extensions/anthropic-vertex/package.json +++ b/extensions/anthropic-vertex/package.json @@ -1,6 +1,6 @@ { "name": "@openclaw/anthropic-vertex-provider", - "version": "2026.4.1", + "version": "2026.4.1-beta.1", "private": true, "description": "OpenClaw Anthropic Vertex provider plugin", "type": "module", diff --git a/extensions/anthropic/package.json b/extensions/anthropic/package.json index 855e80213d9..0edb27ea5bd 100644 --- a/extensions/anthropic/package.json +++ b/extensions/anthropic/package.json @@ -1,6 +1,6 @@ { "name": "@openclaw/anthropic-provider", - "version": "2026.4.1", + "version": "2026.4.1-beta.1", "private": true, "description": "OpenClaw Anthropic provider plugin", "type": "module", diff --git a/extensions/bluebubbles/package.json b/extensions/bluebubbles/package.json index 598300cbae7..a88305a5799 100644 --- a/extensions/bluebubbles/package.json +++ b/extensions/bluebubbles/package.json @@ -1,13 +1,13 @@ { "name": "@openclaw/bluebubbles", - "version": "2026.4.1", + "version": "2026.4.1-beta.1", "description": "OpenClaw BlueBubbles channel plugin", "type": "module", "devDependencies": { "openclaw": "workspace:*" }, "peerDependencies": { - "openclaw": ">=2026.4.1" + "openclaw": ">=2026.4.1-beta.1" }, "peerDependenciesMeta": { "openclaw": { diff --git a/extensions/brave/package.json b/extensions/brave/package.json index 967f6345bfa..2357d520324 100644 --- a/extensions/brave/package.json +++ b/extensions/brave/package.json @@ -1,6 +1,6 @@ { "name": "@openclaw/brave-plugin", - "version": "2026.4.1", + "version": "2026.4.1-beta.1", "private": true, "description": "OpenClaw Brave plugin", "type": "module", diff --git a/extensions/browser/package.json b/extensions/browser/package.json index 6c0467df4d0..f7871032468 100644 --- a/extensions/browser/package.json +++ b/extensions/browser/package.json @@ -1,6 +1,6 @@ { "name": "@openclaw/browser-plugin", - "version": "2026.4.1", + "version": "2026.4.1-beta.1", "private": true, "description": "OpenClaw browser tool plugin", "type": "module", diff --git a/extensions/byteplus/package.json b/extensions/byteplus/package.json index a13682adeaf..81110929853 100644 --- a/extensions/byteplus/package.json +++ b/extensions/byteplus/package.json @@ -1,6 +1,6 @@ { "name": "@openclaw/byteplus-provider", - "version": "2026.4.1", + "version": "2026.4.1-beta.1", "private": true, "description": "OpenClaw BytePlus provider plugin", "type": "module", diff --git a/extensions/chutes/package.json b/extensions/chutes/package.json index 2d6f0f7b28a..4efd4e6c84a 100644 --- a/extensions/chutes/package.json +++ b/extensions/chutes/package.json @@ -1,6 +1,6 @@ { "name": "@openclaw/chutes-provider", - "version": "2026.4.1", + "version": "2026.4.1-beta.1", "private": true, "description": "OpenClaw Chutes.ai provider plugin", "type": "module", diff --git a/extensions/cloudflare-ai-gateway/package.json b/extensions/cloudflare-ai-gateway/package.json index c8f75a78c54..1617565712b 100644 --- a/extensions/cloudflare-ai-gateway/package.json +++ b/extensions/cloudflare-ai-gateway/package.json @@ -1,6 +1,6 @@ { "name": "@openclaw/cloudflare-ai-gateway-provider", - "version": "2026.4.1", + "version": "2026.4.1-beta.1", "private": true, "description": "OpenClaw Cloudflare AI Gateway provider plugin", "type": "module", diff --git a/extensions/copilot-proxy/package.json b/extensions/copilot-proxy/package.json index ab8d56c0206..514ade77455 100644 --- a/extensions/copilot-proxy/package.json +++ b/extensions/copilot-proxy/package.json @@ -1,6 +1,6 @@ { "name": "@openclaw/copilot-proxy", - "version": "2026.4.1", + "version": "2026.4.1-beta.1", "private": true, "description": "OpenClaw Copilot Proxy provider plugin", "type": "module", diff --git a/extensions/deepgram/package.json b/extensions/deepgram/package.json index 42089ebc1b8..448e55a39da 100644 --- a/extensions/deepgram/package.json +++ b/extensions/deepgram/package.json @@ -1,6 +1,6 @@ { "name": "@openclaw/deepgram-provider", - "version": "2026.4.1", + "version": "2026.4.1-beta.1", "private": true, "description": "OpenClaw Deepgram media-understanding provider", "type": "module", diff --git a/extensions/deepseek/package.json b/extensions/deepseek/package.json index 340e9c35a26..30a31460d93 100644 --- a/extensions/deepseek/package.json +++ b/extensions/deepseek/package.json @@ -1,6 +1,6 @@ { "name": "@openclaw/deepseek-provider", - "version": "2026.4.1", + "version": "2026.4.1-beta.1", "private": true, "description": "OpenClaw DeepSeek provider plugin", "type": "module", diff --git a/extensions/diagnostics-otel/package.json b/extensions/diagnostics-otel/package.json index d8c931e7227..977903e5bc3 100644 --- a/extensions/diagnostics-otel/package.json +++ b/extensions/diagnostics-otel/package.json @@ -1,6 +1,6 @@ { "name": "@openclaw/diagnostics-otel", - "version": "2026.4.1", + "version": "2026.4.1-beta.1", "description": "OpenClaw diagnostics OpenTelemetry exporter", "type": "module", "dependencies": { diff --git a/extensions/diffs/package.json b/extensions/diffs/package.json index f85f7cb2029..072c0151ffa 100644 --- a/extensions/diffs/package.json +++ b/extensions/diffs/package.json @@ -1,6 +1,6 @@ { "name": "@openclaw/diffs", - "version": "2026.4.1", + "version": "2026.4.1-beta.1", "private": true, "description": "OpenClaw diff viewer plugin", "type": "module", diff --git a/extensions/discord/package.json b/extensions/discord/package.json index 21a47a0ee11..0cd9a727a9b 100644 --- a/extensions/discord/package.json +++ b/extensions/discord/package.json @@ -1,6 +1,6 @@ { "name": "@openclaw/discord", - "version": "2026.4.1", + "version": "2026.4.1-beta.1", "description": "OpenClaw Discord channel plugin", "type": "module", "dependencies": { @@ -14,7 +14,7 @@ "openclaw": "workspace:*" }, "peerDependencies": { - "openclaw": ">=2026.4.1" + "openclaw": ">=2026.4.1-beta.1" }, "peerDependenciesMeta": { "openclaw": { diff --git a/extensions/duckduckgo/package.json b/extensions/duckduckgo/package.json index 6be891f0034..e0db476bb2c 100644 --- a/extensions/duckduckgo/package.json +++ b/extensions/duckduckgo/package.json @@ -1,6 +1,6 @@ { "name": "@openclaw/duckduckgo-plugin", - "version": "2026.4.1", + "version": "2026.4.1-beta.1", "private": true, "description": "OpenClaw DuckDuckGo plugin", "type": "module", diff --git a/extensions/elevenlabs/package.json b/extensions/elevenlabs/package.json index bf514802f14..ffa0d3ab10f 100644 --- a/extensions/elevenlabs/package.json +++ b/extensions/elevenlabs/package.json @@ -1,6 +1,6 @@ { "name": "@openclaw/elevenlabs-speech", - "version": "2026.4.1", + "version": "2026.4.1-beta.1", "private": true, "description": "OpenClaw ElevenLabs speech plugin", "type": "module", diff --git a/extensions/exa/package.json b/extensions/exa/package.json index e20155ddca6..b1ea94049c0 100644 --- a/extensions/exa/package.json +++ b/extensions/exa/package.json @@ -1,6 +1,6 @@ { "name": "@openclaw/exa-plugin", - "version": "2026.4.1", + "version": "2026.4.1-beta.1", "private": true, "description": "OpenClaw Exa plugin", "type": "module", diff --git a/extensions/fal/package.json b/extensions/fal/package.json index 109cab22c8c..8134023bbf3 100644 --- a/extensions/fal/package.json +++ b/extensions/fal/package.json @@ -1,6 +1,6 @@ { "name": "@openclaw/fal-provider", - "version": "2026.4.1", + "version": "2026.4.1-beta.1", "private": true, "description": "OpenClaw fal provider plugin", "type": "module", diff --git a/extensions/firecrawl/package.json b/extensions/firecrawl/package.json index e73b04b08dc..4473a2cf763 100644 --- a/extensions/firecrawl/package.json +++ b/extensions/firecrawl/package.json @@ -1,6 +1,6 @@ { "name": "@openclaw/firecrawl-plugin", - "version": "2026.4.1", + "version": "2026.4.1-beta.1", "private": true, "description": "OpenClaw Firecrawl plugin", "type": "module", diff --git a/extensions/github-copilot/package.json b/extensions/github-copilot/package.json index b4be7bb7f66..acd769a91b3 100644 --- a/extensions/github-copilot/package.json +++ b/extensions/github-copilot/package.json @@ -1,6 +1,6 @@ { "name": "@openclaw/github-copilot-provider", - "version": "2026.4.1", + "version": "2026.4.1-beta.1", "private": true, "description": "OpenClaw GitHub Copilot provider plugin", "type": "module", diff --git a/extensions/google/package.json b/extensions/google/package.json index 092fe7dd470..7e7f39eed7b 100644 --- a/extensions/google/package.json +++ b/extensions/google/package.json @@ -1,6 +1,6 @@ { "name": "@openclaw/google-plugin", - "version": "2026.4.1", + "version": "2026.4.1-beta.1", "private": true, "description": "OpenClaw Google plugin", "type": "module", diff --git a/extensions/googlechat/package.json b/extensions/googlechat/package.json index d5729488f03..f34d304c15a 100644 --- a/extensions/googlechat/package.json +++ b/extensions/googlechat/package.json @@ -1,6 +1,6 @@ { "name": "@openclaw/googlechat", - "version": "2026.4.1", + "version": "2026.4.1-beta.1", "private": true, "description": "OpenClaw Google Chat channel plugin", "type": "module", @@ -11,7 +11,7 @@ "openclaw": "workspace:*" }, "peerDependencies": { - "openclaw": ">=2026.4.1" + "openclaw": ">=2026.4.1-beta.1" }, "peerDependenciesMeta": { "openclaw": { diff --git a/extensions/groq/package.json b/extensions/groq/package.json index 2195901aae3..f123a4b6c81 100644 --- a/extensions/groq/package.json +++ b/extensions/groq/package.json @@ -1,6 +1,6 @@ { "name": "@openclaw/groq-provider", - "version": "2026.4.1", + "version": "2026.4.1-beta.1", "private": true, "description": "OpenClaw Groq media-understanding provider", "type": "module", diff --git a/extensions/huggingface/package.json b/extensions/huggingface/package.json index 19dff4c6fb0..bdaac9cc9f0 100644 --- a/extensions/huggingface/package.json +++ b/extensions/huggingface/package.json @@ -1,6 +1,6 @@ { "name": "@openclaw/huggingface-provider", - "version": "2026.4.1", + "version": "2026.4.1-beta.1", "private": true, "description": "OpenClaw Hugging Face provider plugin", "type": "module", diff --git a/extensions/image-generation-core/package.json b/extensions/image-generation-core/package.json index 4f29de2a46c..f2a15137070 100644 --- a/extensions/image-generation-core/package.json +++ b/extensions/image-generation-core/package.json @@ -1,6 +1,6 @@ { "name": "@openclaw/image-generation-core", - "version": "2026.4.1", + "version": "2026.4.1-beta.1", "private": true, "description": "OpenClaw image generation runtime package", "type": "module" diff --git a/extensions/imessage/package.json b/extensions/imessage/package.json index f4318a21c28..f2ae83fa083 100644 --- a/extensions/imessage/package.json +++ b/extensions/imessage/package.json @@ -1,6 +1,6 @@ { "name": "@openclaw/imessage", - "version": "2026.4.1", + "version": "2026.4.1-beta.1", "private": true, "description": "OpenClaw iMessage channel plugin", "type": "module", diff --git a/extensions/irc/package.json b/extensions/irc/package.json index d2e4d5dd7d2..81390ed763e 100644 --- a/extensions/irc/package.json +++ b/extensions/irc/package.json @@ -1,6 +1,6 @@ { "name": "@openclaw/irc", - "version": "2026.4.1", + "version": "2026.4.1-beta.1", "description": "OpenClaw IRC channel plugin", "type": "module", "openclaw": { diff --git a/extensions/kilocode/package.json b/extensions/kilocode/package.json index bf8a8665fa4..233ee50bd13 100644 --- a/extensions/kilocode/package.json +++ b/extensions/kilocode/package.json @@ -1,6 +1,6 @@ { "name": "@openclaw/kilocode-provider", - "version": "2026.4.1", + "version": "2026.4.1-beta.1", "private": true, "description": "OpenClaw Kilo Gateway provider plugin", "type": "module", diff --git a/extensions/kimi-coding/package.json b/extensions/kimi-coding/package.json index 4bbc5e9349d..d0d074304da 100644 --- a/extensions/kimi-coding/package.json +++ b/extensions/kimi-coding/package.json @@ -1,6 +1,6 @@ { "name": "@openclaw/kimi-provider", - "version": "2026.4.1", + "version": "2026.4.1-beta.1", "private": true, "description": "OpenClaw Kimi provider plugin", "type": "module", diff --git a/extensions/line/package.json b/extensions/line/package.json index 0175e346e77..54d9f9b3a2f 100644 --- a/extensions/line/package.json +++ b/extensions/line/package.json @@ -1,6 +1,6 @@ { "name": "@openclaw/line", - "version": "2026.4.1", + "version": "2026.4.1-beta.1", "private": true, "description": "OpenClaw LINE channel plugin", "type": "module", @@ -8,7 +8,7 @@ "openclaw": "workspace:*" }, "peerDependencies": { - "openclaw": ">=2026.4.1" + "openclaw": ">=2026.4.1-beta.1" }, "peerDependenciesMeta": { "openclaw": { diff --git a/extensions/litellm/package.json b/extensions/litellm/package.json index bd3c7a9acd9..dd040e8a76b 100644 --- a/extensions/litellm/package.json +++ b/extensions/litellm/package.json @@ -1,6 +1,6 @@ { "name": "@openclaw/litellm-provider", - "version": "2026.4.1", + "version": "2026.4.1-beta.1", "private": true, "description": "OpenClaw LiteLLM provider plugin", "type": "module", diff --git a/extensions/llm-task/package.json b/extensions/llm-task/package.json index 4eb5651b181..5e21c4ead43 100644 --- a/extensions/llm-task/package.json +++ b/extensions/llm-task/package.json @@ -1,6 +1,6 @@ { "name": "@openclaw/llm-task", - "version": "2026.4.1", + "version": "2026.4.1-beta.1", "private": true, "description": "OpenClaw JSON-only LLM task plugin", "type": "module", diff --git a/extensions/lobster/package.json b/extensions/lobster/package.json index e11303a3347..197c23ec5a1 100644 --- a/extensions/lobster/package.json +++ b/extensions/lobster/package.json @@ -1,6 +1,6 @@ { "name": "@openclaw/lobster", - "version": "2026.4.1", + "version": "2026.4.1-beta.1", "description": "Lobster workflow tool plugin (typed pipelines + resumable approvals)", "type": "module", "dependencies": { diff --git a/extensions/matrix/package.json b/extensions/matrix/package.json index 04a62c610a3..3c4cb78b644 100644 --- a/extensions/matrix/package.json +++ b/extensions/matrix/package.json @@ -1,6 +1,6 @@ { "name": "@openclaw/matrix", - "version": "2026.4.1", + "version": "2026.4.1-beta.1", "description": "OpenClaw Matrix channel plugin", "type": "module", "dependencies": { @@ -15,7 +15,7 @@ "openclaw": "workspace:*" }, "peerDependencies": { - "openclaw": ">=2026.4.1" + "openclaw": ">=2026.4.1-beta.1" }, "peerDependenciesMeta": { "openclaw": { diff --git a/extensions/mattermost/package.json b/extensions/mattermost/package.json index de4902f8272..eb1bfb0fe53 100644 --- a/extensions/mattermost/package.json +++ b/extensions/mattermost/package.json @@ -1,6 +1,6 @@ { "name": "@openclaw/mattermost", - "version": "2026.4.1", + "version": "2026.4.1-beta.1", "description": "OpenClaw Mattermost channel plugin", "type": "module", "dependencies": { @@ -11,7 +11,7 @@ "openclaw": "workspace:*" }, "peerDependencies": { - "openclaw": ">=2026.4.1" + "openclaw": ">=2026.4.1-beta.1" }, "peerDependenciesMeta": { "openclaw": { diff --git a/extensions/media-understanding-core/package.json b/extensions/media-understanding-core/package.json index 2a7d6674aa1..ad9379f8ffa 100644 --- a/extensions/media-understanding-core/package.json +++ b/extensions/media-understanding-core/package.json @@ -1,6 +1,6 @@ { "name": "@openclaw/media-understanding-core", - "version": "2026.4.1", + "version": "2026.4.1-beta.1", "private": true, "description": "OpenClaw media understanding runtime package", "type": "module" diff --git a/extensions/memory-core/package.json b/extensions/memory-core/package.json index 46b348f2457..0e05e2168b5 100644 --- a/extensions/memory-core/package.json +++ b/extensions/memory-core/package.json @@ -1,6 +1,6 @@ { "name": "@openclaw/memory-core", - "version": "2026.4.1", + "version": "2026.4.1-beta.1", "private": true, "description": "OpenClaw core memory search plugin", "type": "module", @@ -8,7 +8,7 @@ "openclaw": "workspace:*" }, "peerDependencies": { - "openclaw": ">=2026.4.1" + "openclaw": ">=2026.4.1-beta.1" }, "peerDependenciesMeta": { "openclaw": { diff --git a/extensions/memory-lancedb/package.json b/extensions/memory-lancedb/package.json index e3c96cb1eed..a2bebad9fd5 100644 --- a/extensions/memory-lancedb/package.json +++ b/extensions/memory-lancedb/package.json @@ -1,6 +1,6 @@ { "name": "@openclaw/memory-lancedb", - "version": "2026.4.1", + "version": "2026.4.1-beta.1", "description": "OpenClaw LanceDB-backed long-term memory plugin with auto-recall/capture", "type": "module", "dependencies": { diff --git a/extensions/microsoft-foundry/package.json b/extensions/microsoft-foundry/package.json index 0836acac191..748a815969d 100644 --- a/extensions/microsoft-foundry/package.json +++ b/extensions/microsoft-foundry/package.json @@ -1,6 +1,6 @@ { "name": "@openclaw/microsoft-foundry", - "version": "2026.4.1", + "version": "2026.4.1-beta.1", "private": true, "description": "OpenClaw Microsoft Foundry provider plugin", "type": "module", diff --git a/extensions/microsoft/package.json b/extensions/microsoft/package.json index 4f7ce65cafe..269830d0653 100644 --- a/extensions/microsoft/package.json +++ b/extensions/microsoft/package.json @@ -1,6 +1,6 @@ { "name": "@openclaw/microsoft-speech", - "version": "2026.4.1", + "version": "2026.4.1-beta.1", "private": true, "description": "OpenClaw Microsoft speech plugin", "type": "module", diff --git a/extensions/minimax/package.json b/extensions/minimax/package.json index 6614f8c4b84..d2471ca6e36 100644 --- a/extensions/minimax/package.json +++ b/extensions/minimax/package.json @@ -1,6 +1,6 @@ { "name": "@openclaw/minimax-provider", - "version": "2026.4.1", + "version": "2026.4.1-beta.1", "private": true, "description": "OpenClaw MiniMax provider and OAuth plugin", "type": "module", diff --git a/extensions/mistral/package.json b/extensions/mistral/package.json index bdb2718e4cb..019a9d6af8a 100644 --- a/extensions/mistral/package.json +++ b/extensions/mistral/package.json @@ -1,6 +1,6 @@ { "name": "@openclaw/mistral-provider", - "version": "2026.4.1", + "version": "2026.4.1-beta.1", "private": true, "description": "OpenClaw Mistral provider plugin", "type": "module", diff --git a/extensions/modelstudio/package.json b/extensions/modelstudio/package.json index 83accaddff0..9ed6095c0b1 100644 --- a/extensions/modelstudio/package.json +++ b/extensions/modelstudio/package.json @@ -1,6 +1,6 @@ { "name": "@openclaw/modelstudio-provider", - "version": "2026.4.1", + "version": "2026.4.1-beta.1", "private": true, "description": "OpenClaw Model Studio provider plugin", "type": "module", diff --git a/extensions/moonshot/package.json b/extensions/moonshot/package.json index f82343bb6eb..0850bf125e1 100644 --- a/extensions/moonshot/package.json +++ b/extensions/moonshot/package.json @@ -1,6 +1,6 @@ { "name": "@openclaw/moonshot-provider", - "version": "2026.4.1", + "version": "2026.4.1-beta.1", "private": true, "description": "OpenClaw Moonshot provider plugin", "type": "module", diff --git a/extensions/msteams/package.json b/extensions/msteams/package.json index 19df160a168..2f8d3540d65 100644 --- a/extensions/msteams/package.json +++ b/extensions/msteams/package.json @@ -1,6 +1,6 @@ { "name": "@openclaw/msteams", - "version": "2026.4.1", + "version": "2026.4.1-beta.1", "description": "OpenClaw Microsoft Teams channel plugin", "type": "module", "dependencies": { @@ -12,7 +12,7 @@ "openclaw": "workspace:*" }, "peerDependencies": { - "openclaw": ">=2026.4.1" + "openclaw": ">=2026.4.1-beta.1" }, "peerDependenciesMeta": { "openclaw": { diff --git a/extensions/nextcloud-talk/package.json b/extensions/nextcloud-talk/package.json index 4972ba535fa..8fe9cc0f251 100644 --- a/extensions/nextcloud-talk/package.json +++ b/extensions/nextcloud-talk/package.json @@ -1,13 +1,13 @@ { "name": "@openclaw/nextcloud-talk", - "version": "2026.4.1", + "version": "2026.4.1-beta.1", "description": "OpenClaw Nextcloud Talk channel plugin", "type": "module", "devDependencies": { "openclaw": "workspace:*" }, "peerDependencies": { - "openclaw": ">=2026.4.1" + "openclaw": ">=2026.4.1-beta.1" }, "peerDependenciesMeta": { "openclaw": { diff --git a/extensions/nostr/package.json b/extensions/nostr/package.json index d0b222bf4a0..53dc27bd760 100644 --- a/extensions/nostr/package.json +++ b/extensions/nostr/package.json @@ -1,6 +1,6 @@ { "name": "@openclaw/nostr", - "version": "2026.4.1", + "version": "2026.4.1-beta.1", "description": "OpenClaw Nostr channel plugin for NIP-04 encrypted DMs", "type": "module", "dependencies": { @@ -10,7 +10,7 @@ "openclaw": "workspace:*" }, "peerDependencies": { - "openclaw": ">=2026.4.1" + "openclaw": ">=2026.4.1-beta.1" }, "peerDependenciesMeta": { "openclaw": { diff --git a/extensions/nvidia/package.json b/extensions/nvidia/package.json index 4e8cb5e4433..0d9d43fe7e1 100644 --- a/extensions/nvidia/package.json +++ b/extensions/nvidia/package.json @@ -1,6 +1,6 @@ { "name": "@openclaw/nvidia-provider", - "version": "2026.4.1", + "version": "2026.4.1-beta.1", "private": true, "description": "OpenClaw NVIDIA provider plugin", "type": "module", diff --git a/extensions/ollama/package.json b/extensions/ollama/package.json index b9c63f49cb5..a67921780d4 100644 --- a/extensions/ollama/package.json +++ b/extensions/ollama/package.json @@ -1,6 +1,6 @@ { "name": "@openclaw/ollama-provider", - "version": "2026.4.1", + "version": "2026.4.1-beta.1", "private": true, "description": "OpenClaw Ollama provider plugin", "type": "module", diff --git a/extensions/open-prose/package.json b/extensions/open-prose/package.json index e19a0134ea5..e3cf720a7a3 100644 --- a/extensions/open-prose/package.json +++ b/extensions/open-prose/package.json @@ -1,6 +1,6 @@ { "name": "@openclaw/open-prose", - "version": "2026.4.1", + "version": "2026.4.1-beta.1", "private": true, "description": "OpenProse VM skill pack plugin (slash command + telemetry).", "type": "module", diff --git a/extensions/openai/package.json b/extensions/openai/package.json index 25bc4bce665..327c8a34760 100644 --- a/extensions/openai/package.json +++ b/extensions/openai/package.json @@ -1,6 +1,6 @@ { "name": "@openclaw/openai-provider", - "version": "2026.4.1", + "version": "2026.4.1-beta.1", "private": true, "description": "OpenClaw OpenAI provider plugins", "type": "module", diff --git a/extensions/opencode-go/package.json b/extensions/opencode-go/package.json index 1b47a9288f5..e82d36405fc 100644 --- a/extensions/opencode-go/package.json +++ b/extensions/opencode-go/package.json @@ -1,6 +1,6 @@ { "name": "@openclaw/opencode-go-provider", - "version": "2026.4.1", + "version": "2026.4.1-beta.1", "private": true, "description": "OpenClaw OpenCode Go provider plugin", "type": "module", diff --git a/extensions/opencode/package.json b/extensions/opencode/package.json index b280116d3e8..62688730913 100644 --- a/extensions/opencode/package.json +++ b/extensions/opencode/package.json @@ -1,6 +1,6 @@ { "name": "@openclaw/opencode-provider", - "version": "2026.4.1", + "version": "2026.4.1-beta.1", "private": true, "description": "OpenClaw OpenCode Zen provider plugin", "type": "module", diff --git a/extensions/openrouter/package.json b/extensions/openrouter/package.json index e6e8926f01b..d76a1983762 100644 --- a/extensions/openrouter/package.json +++ b/extensions/openrouter/package.json @@ -1,6 +1,6 @@ { "name": "@openclaw/openrouter-provider", - "version": "2026.4.1", + "version": "2026.4.1-beta.1", "private": true, "description": "OpenClaw OpenRouter provider plugin", "type": "module", diff --git a/extensions/openshell/package.json b/extensions/openshell/package.json index cdd0c283d0f..01a7bef6229 100644 --- a/extensions/openshell/package.json +++ b/extensions/openshell/package.json @@ -1,6 +1,6 @@ { "name": "@openclaw/openshell-sandbox", - "version": "2026.4.1", + "version": "2026.4.1-beta.1", "private": true, "description": "OpenClaw OpenShell sandbox backend", "type": "module", diff --git a/extensions/perplexity/package.json b/extensions/perplexity/package.json index aaf0ee98702..5485561ce33 100644 --- a/extensions/perplexity/package.json +++ b/extensions/perplexity/package.json @@ -1,6 +1,6 @@ { "name": "@openclaw/perplexity-plugin", - "version": "2026.4.1", + "version": "2026.4.1-beta.1", "private": true, "description": "OpenClaw Perplexity plugin", "type": "module", diff --git a/extensions/qianfan/package.json b/extensions/qianfan/package.json index 63cd47a1c6e..69ed160ce48 100644 --- a/extensions/qianfan/package.json +++ b/extensions/qianfan/package.json @@ -1,6 +1,6 @@ { "name": "@openclaw/qianfan-provider", - "version": "2026.4.1", + "version": "2026.4.1-beta.1", "private": true, "description": "OpenClaw Qianfan provider plugin", "type": "module", diff --git a/extensions/qqbot/package.json b/extensions/qqbot/package.json index 40d4e5b4e4f..185bf6a9e82 100644 --- a/extensions/qqbot/package.json +++ b/extensions/qqbot/package.json @@ -1,6 +1,6 @@ { "name": "@openclaw/qqbot", - "version": "2026.4.1", + "version": "2026.4.1-beta.1", "private": false, "description": "OpenClaw QQ Bot channel plugin", "type": "module", @@ -14,7 +14,7 @@ "openclaw": "workspace:*" }, "peerDependencies": { - "openclaw": ">=2026.4.1" + "openclaw": ">=2026.4.1-beta.1" }, "peerDependenciesMeta": { "openclaw": { diff --git a/extensions/searxng/package.json b/extensions/searxng/package.json index 3e65a0ff993..0229025e3e6 100644 --- a/extensions/searxng/package.json +++ b/extensions/searxng/package.json @@ -1,6 +1,6 @@ { "name": "@openclaw/searxng-plugin", - "version": "2026.4.1", + "version": "2026.4.1-beta.1", "private": true, "description": "OpenClaw SearXNG plugin", "type": "module", diff --git a/extensions/sglang/package.json b/extensions/sglang/package.json index 6cc5170baac..d41d741da25 100644 --- a/extensions/sglang/package.json +++ b/extensions/sglang/package.json @@ -1,6 +1,6 @@ { "name": "@openclaw/sglang-provider", - "version": "2026.4.1", + "version": "2026.4.1-beta.1", "private": true, "description": "OpenClaw SGLang provider plugin", "type": "module", diff --git a/extensions/signal/package.json b/extensions/signal/package.json index aa6f7639abf..dd864feb2cd 100644 --- a/extensions/signal/package.json +++ b/extensions/signal/package.json @@ -1,6 +1,6 @@ { "name": "@openclaw/signal", - "version": "2026.4.1", + "version": "2026.4.1-beta.1", "private": true, "description": "OpenClaw Signal channel plugin", "type": "module", diff --git a/extensions/slack/package.json b/extensions/slack/package.json index cb4a00e16e1..5938774ac46 100644 --- a/extensions/slack/package.json +++ b/extensions/slack/package.json @@ -1,6 +1,6 @@ { "name": "@openclaw/slack", - "version": "2026.4.1", + "version": "2026.4.1-beta.1", "private": true, "description": "OpenClaw Slack channel plugin", "type": "module", diff --git a/extensions/speech-core/package.json b/extensions/speech-core/package.json index 50f92de33ba..12966ee9c9a 100644 --- a/extensions/speech-core/package.json +++ b/extensions/speech-core/package.json @@ -1,6 +1,6 @@ { "name": "@openclaw/speech-core", - "version": "2026.4.1", + "version": "2026.4.1-beta.1", "private": true, "description": "OpenClaw speech runtime package", "type": "module" diff --git a/extensions/synology-chat/package.json b/extensions/synology-chat/package.json index 0bb9aba4eef..3b2b1b20b5a 100644 --- a/extensions/synology-chat/package.json +++ b/extensions/synology-chat/package.json @@ -1,6 +1,6 @@ { "name": "@openclaw/synology-chat", - "version": "2026.4.1", + "version": "2026.4.1-beta.1", "description": "Synology Chat channel plugin for OpenClaw", "type": "module", "openclaw": { diff --git a/extensions/synthetic/package.json b/extensions/synthetic/package.json index dd3878e2760..a969b42afb2 100644 --- a/extensions/synthetic/package.json +++ b/extensions/synthetic/package.json @@ -1,6 +1,6 @@ { "name": "@openclaw/synthetic-provider", - "version": "2026.4.1", + "version": "2026.4.1-beta.1", "private": true, "description": "OpenClaw Synthetic provider plugin", "type": "module", diff --git a/extensions/tavily/package.json b/extensions/tavily/package.json index 752c60bcf90..457bda874d3 100644 --- a/extensions/tavily/package.json +++ b/extensions/tavily/package.json @@ -1,6 +1,6 @@ { "name": "@openclaw/tavily-plugin", - "version": "2026.4.1", + "version": "2026.4.1-beta.1", "private": true, "description": "OpenClaw Tavily plugin", "type": "module", diff --git a/extensions/telegram/package.json b/extensions/telegram/package.json index f1b4b7ecafc..6722076d12a 100644 --- a/extensions/telegram/package.json +++ b/extensions/telegram/package.json @@ -1,6 +1,6 @@ { "name": "@openclaw/telegram", - "version": "2026.4.1", + "version": "2026.4.1-beta.1", "private": true, "description": "OpenClaw Telegram channel plugin", "type": "module", diff --git a/extensions/tlon/package.json b/extensions/tlon/package.json index ae814354dd9..69d67a969aa 100644 --- a/extensions/tlon/package.json +++ b/extensions/tlon/package.json @@ -1,6 +1,6 @@ { "name": "@openclaw/tlon", - "version": "2026.4.1", + "version": "2026.4.1-beta.1", "description": "OpenClaw Tlon/Urbit channel plugin", "type": "module", "dependencies": { @@ -13,7 +13,7 @@ "openclaw": "workspace:*" }, "peerDependencies": { - "openclaw": ">=2026.4.1" + "openclaw": ">=2026.4.1-beta.1" }, "peerDependenciesMeta": { "openclaw": { diff --git a/extensions/together/package.json b/extensions/together/package.json index 7c9df3a4c73..d54fb378fb7 100644 --- a/extensions/together/package.json +++ b/extensions/together/package.json @@ -1,6 +1,6 @@ { "name": "@openclaw/together-provider", - "version": "2026.4.1", + "version": "2026.4.1-beta.1", "private": true, "description": "OpenClaw Together provider plugin", "type": "module", diff --git a/extensions/twitch/package.json b/extensions/twitch/package.json index c6577a1a122..9dc5a3fdd6d 100644 --- a/extensions/twitch/package.json +++ b/extensions/twitch/package.json @@ -1,6 +1,6 @@ { "name": "@openclaw/twitch", - "version": "2026.4.1", + "version": "2026.4.1-beta.1", "description": "OpenClaw Twitch channel plugin", "type": "module", "dependencies": { diff --git a/extensions/venice/package.json b/extensions/venice/package.json index ed8aaec2e4b..7ab87b7ec4a 100644 --- a/extensions/venice/package.json +++ b/extensions/venice/package.json @@ -1,6 +1,6 @@ { "name": "@openclaw/venice-provider", - "version": "2026.4.1", + "version": "2026.4.1-beta.1", "private": true, "description": "OpenClaw Venice provider plugin", "type": "module", diff --git a/extensions/vercel-ai-gateway/package.json b/extensions/vercel-ai-gateway/package.json index 9aeb40e926f..735c5714d98 100644 --- a/extensions/vercel-ai-gateway/package.json +++ b/extensions/vercel-ai-gateway/package.json @@ -1,6 +1,6 @@ { "name": "@openclaw/vercel-ai-gateway-provider", - "version": "2026.4.1", + "version": "2026.4.1-beta.1", "private": true, "description": "OpenClaw Vercel AI Gateway provider plugin", "type": "module", diff --git a/extensions/vllm/package.json b/extensions/vllm/package.json index af01e18781e..bd15e498eba 100644 --- a/extensions/vllm/package.json +++ b/extensions/vllm/package.json @@ -1,6 +1,6 @@ { "name": "@openclaw/vllm-provider", - "version": "2026.4.1", + "version": "2026.4.1-beta.1", "private": true, "description": "OpenClaw vLLM provider plugin", "type": "module", diff --git a/extensions/voice-call/package.json b/extensions/voice-call/package.json index b9f0d4f8f1d..3806c510b50 100644 --- a/extensions/voice-call/package.json +++ b/extensions/voice-call/package.json @@ -1,6 +1,6 @@ { "name": "@openclaw/voice-call", - "version": "2026.4.1", + "version": "2026.4.1-beta.1", "description": "OpenClaw voice-call plugin", "type": "module", "dependencies": { @@ -12,7 +12,7 @@ "openclaw": "workspace:*" }, "peerDependencies": { - "openclaw": ">=2026.4.1" + "openclaw": ">=2026.4.1-beta.1" }, "peerDependenciesMeta": { "openclaw": { diff --git a/extensions/volcengine/package.json b/extensions/volcengine/package.json index f1b7ba40ded..468563b0fc4 100644 --- a/extensions/volcengine/package.json +++ b/extensions/volcengine/package.json @@ -1,6 +1,6 @@ { "name": "@openclaw/volcengine-provider", - "version": "2026.4.1", + "version": "2026.4.1-beta.1", "private": true, "description": "OpenClaw Volcengine provider plugin", "type": "module", diff --git a/extensions/whatsapp/package.json b/extensions/whatsapp/package.json index 748cdec24e3..c1378b117aa 100644 --- a/extensions/whatsapp/package.json +++ b/extensions/whatsapp/package.json @@ -1,6 +1,6 @@ { "name": "@openclaw/whatsapp", - "version": "2026.4.1", + "version": "2026.4.1-beta.1", "description": "OpenClaw WhatsApp channel plugin", "type": "module", "dependencies": { @@ -11,7 +11,7 @@ "openclaw": "workspace:*" }, "peerDependencies": { - "openclaw": ">=2026.4.1" + "openclaw": ">=2026.4.1-beta.1" }, "peerDependenciesMeta": { "openclaw": { diff --git a/extensions/xai/package.json b/extensions/xai/package.json index 19399a48e67..66d99abee7d 100644 --- a/extensions/xai/package.json +++ b/extensions/xai/package.json @@ -1,6 +1,6 @@ { "name": "@openclaw/xai-plugin", - "version": "2026.4.1", + "version": "2026.4.1-beta.1", "private": true, "description": "OpenClaw xAI plugin", "type": "module", diff --git a/extensions/xiaomi/package.json b/extensions/xiaomi/package.json index f689b74e5d4..e5337fa6fc3 100644 --- a/extensions/xiaomi/package.json +++ b/extensions/xiaomi/package.json @@ -1,6 +1,6 @@ { "name": "@openclaw/xiaomi-provider", - "version": "2026.4.1", + "version": "2026.4.1-beta.1", "private": true, "description": "OpenClaw Xiaomi provider plugin", "type": "module", diff --git a/extensions/zai/package.json b/extensions/zai/package.json index 3f4eeb4c945..02dd4a695cb 100644 --- a/extensions/zai/package.json +++ b/extensions/zai/package.json @@ -1,6 +1,6 @@ { "name": "@openclaw/zai-provider", - "version": "2026.4.1", + "version": "2026.4.1-beta.1", "private": true, "description": "OpenClaw Z.AI provider plugin", "type": "module", diff --git a/extensions/zalo/package.json b/extensions/zalo/package.json index 0c3789d72e5..7ed2a888c8a 100644 --- a/extensions/zalo/package.json +++ b/extensions/zalo/package.json @@ -1,6 +1,6 @@ { "name": "@openclaw/zalo", - "version": "2026.4.1", + "version": "2026.4.1-beta.1", "description": "OpenClaw Zalo channel plugin", "type": "module", "dependencies": { @@ -10,7 +10,7 @@ "openclaw": "workspace:*" }, "peerDependencies": { - "openclaw": ">=2026.4.1" + "openclaw": ">=2026.4.1-beta.1" }, "peerDependenciesMeta": { "openclaw": { diff --git a/extensions/zalouser/package.json b/extensions/zalouser/package.json index 981b7089635..95ccbd2f14c 100644 --- a/extensions/zalouser/package.json +++ b/extensions/zalouser/package.json @@ -1,6 +1,6 @@ { "name": "@openclaw/zalouser", - "version": "2026.4.1", + "version": "2026.4.1-beta.1", "description": "OpenClaw Zalo Personal Account plugin via native zca-js integration", "type": "module", "dependencies": { @@ -11,7 +11,7 @@ "openclaw": "workspace:*" }, "peerDependencies": { - "openclaw": ">=2026.4.1" + "openclaw": ">=2026.4.1-beta.1" }, "peerDependenciesMeta": { "openclaw": { diff --git a/package.json b/package.json index 3d1d68221e5..1e34a587398 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "openclaw", - "version": "2026.4.1", + "version": "2026.4.1-beta.1", "description": "Multi-channel AI gateway with extensible messaging integrations", "keywords": [], "homepage": "https://github.com/openclaw/openclaw#readme", diff --git a/src/config/bundled-channel-config-metadata.generated.ts b/src/config/bundled-channel-config-metadata.generated.ts index 0fa2c8bb4a8..e8a57207d0a 100644 --- a/src/config/bundled-channel-config-metadata.generated.ts +++ b/src/config/bundled-channel-config-metadata.generated.ts @@ -12099,10 +12099,28 @@ export const GENERATED_BUNDLED_CHANNEL_CONFIG_METADATA = [ agentId: { type: "string", }, + errorPolicy: { + type: "string", + enum: ["always", "once", "silent"], + }, + errorCooldownMs: { + type: "integer", + minimum: 0, + maximum: 9007199254740991, + }, }, additionalProperties: false, }, }, + errorPolicy: { + type: "string", + enum: ["always", "once", "silent"], + }, + errorCooldownMs: { + type: "integer", + minimum: 0, + maximum: 9007199254740991, + }, }, additionalProperties: false, }, @@ -12312,10 +12330,28 @@ export const GENERATED_BUNDLED_CHANNEL_CONFIG_METADATA = [ agentId: { type: "string", }, + errorPolicy: { + type: "string", + enum: ["always", "once", "silent"], + }, + errorCooldownMs: { + type: "integer", + minimum: 0, + maximum: 9007199254740991, + }, }, additionalProperties: false, }, }, + errorPolicy: { + type: "string", + enum: ["always", "once", "silent"], + }, + errorCooldownMs: { + type: "integer", + minimum: 0, + maximum: 9007199254740991, + }, requireTopic: { type: "boolean", }, @@ -12665,6 +12701,15 @@ export const GENERATED_BUNDLED_CHANNEL_CONFIG_METADATA = [ ackReaction: { type: "string", }, + errorPolicy: { + type: "string", + enum: ["always", "once", "silent"], + }, + errorCooldownMs: { + type: "integer", + minimum: 0, + maximum: 9007199254740991, + }, apiRoot: { type: "string", format: "uri", @@ -13050,10 +13095,28 @@ export const GENERATED_BUNDLED_CHANNEL_CONFIG_METADATA = [ agentId: { type: "string", }, + errorPolicy: { + type: "string", + enum: ["always", "once", "silent"], + }, + errorCooldownMs: { + type: "integer", + minimum: 0, + maximum: 9007199254740991, + }, }, additionalProperties: false, }, }, + errorPolicy: { + type: "string", + enum: ["always", "once", "silent"], + }, + errorCooldownMs: { + type: "integer", + minimum: 0, + maximum: 9007199254740991, + }, }, additionalProperties: false, }, @@ -13263,10 +13326,28 @@ export const GENERATED_BUNDLED_CHANNEL_CONFIG_METADATA = [ agentId: { type: "string", }, + errorPolicy: { + type: "string", + enum: ["always", "once", "silent"], + }, + errorCooldownMs: { + type: "integer", + minimum: 0, + maximum: 9007199254740991, + }, }, additionalProperties: false, }, }, + errorPolicy: { + type: "string", + enum: ["always", "once", "silent"], + }, + errorCooldownMs: { + type: "integer", + minimum: 0, + maximum: 9007199254740991, + }, requireTopic: { type: "boolean", }, @@ -13616,6 +13697,15 @@ export const GENERATED_BUNDLED_CHANNEL_CONFIG_METADATA = [ ackReaction: { type: "string", }, + errorPolicy: { + type: "string", + enum: ["always", "once", "silent"], + }, + errorCooldownMs: { + type: "integer", + minimum: 0, + maximum: 9007199254740991, + }, apiRoot: { type: "string", format: "uri", diff --git a/src/config/schema.base.generated.ts b/src/config/schema.base.generated.ts index 34f4504b1ee..c73c0055b40 100644 --- a/src/config/schema.base.generated.ts +++ b/src/config/schema.base.generated.ts @@ -15304,6 +15304,6 @@ export const GENERATED_BASE_CONFIG_SCHEMA = { tags: ["advanced", "url-secret"], }, }, - version: "2026.4.1", + version: "2026.4.1-beta.1", generatedAt: "2026-03-22T21:17:33.302Z", } as const satisfies BaseConfigSchemaResponse;