vilvona 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +12331 -0
- package/LICENSE +24 -0
- package/README.md +314 -0
- package/THIRD_PARTY_NOTICES.md +37 -0
- package/docs/.i18n/README.md +81 -0
- package/docs/.i18n/ar-navigation.json +18 -0
- package/docs/.i18n/de-navigation.json +18 -0
- package/docs/.i18n/es-navigation.json +18 -0
- package/docs/.i18n/fr-navigation.json +18 -0
- package/docs/.i18n/glossary.ar.json +82 -0
- package/docs/.i18n/glossary.de.json +82 -0
- package/docs/.i18n/glossary.es.json +82 -0
- package/docs/.i18n/glossary.fa.json +82 -0
- package/docs/.i18n/glossary.fr.json +82 -0
- package/docs/.i18n/glossary.id.json +82 -0
- package/docs/.i18n/glossary.it.json +82 -0
- package/docs/.i18n/glossary.ja-JP.json +102 -0
- package/docs/.i18n/glossary.ko.json +82 -0
- package/docs/.i18n/glossary.nl.json +82 -0
- package/docs/.i18n/glossary.pl.json +82 -0
- package/docs/.i18n/glossary.pt-BR.json +82 -0
- package/docs/.i18n/glossary.th.json +82 -0
- package/docs/.i18n/glossary.tr.json +82 -0
- package/docs/.i18n/glossary.uk.json +82 -0
- package/docs/.i18n/glossary.vi.json +82 -0
- package/docs/.i18n/glossary.zh-CN.json +1182 -0
- package/docs/.i18n/glossary.zh-TW.json +162 -0
- package/docs/.i18n/id-navigation.json +18 -0
- package/docs/.i18n/it-navigation.json +18 -0
- package/docs/.i18n/ja-navigation.json +18 -0
- package/docs/.i18n/ko-navigation.json +18 -0
- package/docs/.i18n/pl-navigation.json +18 -0
- package/docs/.i18n/pt-BR-navigation.json +18 -0
- package/docs/.i18n/tr-navigation.json +18 -0
- package/docs/.i18n/translation-workflow.md +111 -0
- package/docs/.i18n/zh-Hans-navigation.json +552 -0
- package/docs/AGENTS.md +36 -0
- package/docs/agent-runtime-architecture.md +48 -0
- package/docs/announcements/bluebubbles-imessage.md +79 -0
- package/docs/auth-credential-semantics.md +124 -0
- package/docs/automation/auth-monitoring.md +11 -0
- package/docs/automation/clawflow.md +12 -0
- package/docs/automation/cron-jobs.md +569 -0
- package/docs/automation/cron-vs-heartbeat.md +11 -0
- package/docs/automation/gmail-pubsub.md +11 -0
- package/docs/automation/hooks.md +387 -0
- package/docs/automation/index.md +135 -0
- package/docs/automation/poll.md +12 -0
- package/docs/automation/standing-orders.md +250 -0
- package/docs/automation/taskflow.md +155 -0
- package/docs/automation/tasks.md +374 -0
- package/docs/automation/troubleshooting.md +12 -0
- package/docs/automation/webhook.md +12 -0
- package/docs/brave-search.md +11 -0
- package/docs/channels/access-groups.md +201 -0
- package/docs/channels/ambient-room-events.md +214 -0
- package/docs/channels/bot-loop-protection.md +131 -0
- package/docs/channels/broadcast-groups.md +472 -0
- package/docs/channels/channel-routing.md +162 -0
- package/docs/channels/clickclack.md +146 -0
- package/docs/channels/discord.md +1758 -0
- package/docs/channels/feishu.md +654 -0
- package/docs/channels/googlechat.md +286 -0
- package/docs/channels/group-messages.md +95 -0
- package/docs/channels/groups.md +610 -0
- package/docs/channels/imessage-from-bluebubbles.md +259 -0
- package/docs/channels/imessage.md +864 -0
- package/docs/channels/index.md +65 -0
- package/docs/channels/irc.md +253 -0
- package/docs/channels/line.md +243 -0
- package/docs/channels/location.md +71 -0
- package/docs/channels/matrix-migration.md +375 -0
- package/docs/channels/matrix-presentation.md +77 -0
- package/docs/channels/matrix-push-rules.md +150 -0
- package/docs/channels/matrix.md +935 -0
- package/docs/channels/mattermost.md +542 -0
- package/docs/channels/msteams.md +1097 -0
- package/docs/channels/nextcloud-talk.md +176 -0
- package/docs/channels/nostr.md +253 -0
- package/docs/channels/pairing.md +214 -0
- package/docs/channels/qqbot.md +317 -0
- package/docs/channels/signal.md +417 -0
- package/docs/channels/slack.md +1623 -0
- package/docs/channels/sms.md +380 -0
- package/docs/channels/synology-chat.md +187 -0
- package/docs/channels/telegram.md +1121 -0
- package/docs/channels/tlon.md +296 -0
- package/docs/channels/troubleshooting.md +162 -0
- package/docs/channels/twitch.md +431 -0
- package/docs/channels/wechat.md +171 -0
- package/docs/channels/whatsapp.md +796 -0
- package/docs/channels/yuanbao.md +416 -0
- package/docs/channels/zalo.md +253 -0
- package/docs/channels/zalouser.md +217 -0
- package/docs/ci.md +665 -0
- package/docs/clawhub/cli.md +82 -0
- package/docs/clawhub/publishing.md +96 -0
- package/docs/cli/acp.md +370 -0
- package/docs/cli/agent.md +109 -0
- package/docs/cli/agents.md +253 -0
- package/docs/cli/approvals.md +193 -0
- package/docs/cli/backup.md +98 -0
- package/docs/cli/browser.md +322 -0
- package/docs/cli/channels.md +154 -0
- package/docs/cli/clawbot.md +25 -0
- package/docs/cli/commitments.md +90 -0
- package/docs/cli/completion.md +39 -0
- package/docs/cli/config.md +504 -0
- package/docs/cli/configure.md +77 -0
- package/docs/cli/crestodian.md +337 -0
- package/docs/cli/cron.md +344 -0
- package/docs/cli/daemon.md +67 -0
- package/docs/cli/dashboard.md +33 -0
- package/docs/cli/devices.md +240 -0
- package/docs/cli/directory.md +68 -0
- package/docs/cli/dns.md +53 -0
- package/docs/cli/docs.md +63 -0
- package/docs/cli/doctor.md +254 -0
- package/docs/cli/flows.md +52 -0
- package/docs/cli/gateway.md +572 -0
- package/docs/cli/health.md +43 -0
- package/docs/cli/hooks.md +345 -0
- package/docs/cli/index.md +406 -0
- package/docs/cli/infer.md +364 -0
- package/docs/cli/logs.md +68 -0
- package/docs/cli/mcp.md +851 -0
- package/docs/cli/memory.md +183 -0
- package/docs/cli/message.md +317 -0
- package/docs/cli/migrate.md +334 -0
- package/docs/cli/models.md +239 -0
- package/docs/cli/node.md +178 -0
- package/docs/cli/nodes.md +76 -0
- package/docs/cli/onboard.md +251 -0
- package/docs/cli/pairing.md +77 -0
- package/docs/cli/path.md +511 -0
- package/docs/cli/plugins.md +480 -0
- package/docs/cli/policy.md +929 -0
- package/docs/cli/proxy.md +89 -0
- package/docs/cli/qr.md +56 -0
- package/docs/cli/reset.md +39 -0
- package/docs/cli/sandbox.md +208 -0
- package/docs/cli/secrets.md +202 -0
- package/docs/cli/security.md +135 -0
- package/docs/cli/sessions.md +178 -0
- package/docs/cli/setup.md +60 -0
- package/docs/cli/skills.md +156 -0
- package/docs/cli/status.md +45 -0
- package/docs/cli/system.md +89 -0
- package/docs/cli/tasks.md +111 -0
- package/docs/cli/transcripts.md +151 -0
- package/docs/cli/tui.md +92 -0
- package/docs/cli/uninstall.md +45 -0
- package/docs/cli/update.md +283 -0
- package/docs/cli/voicecall.md +204 -0
- package/docs/cli/webhooks.md +117 -0
- package/docs/cli/wiki.md +256 -0
- package/docs/cli/workboard.md +228 -0
- package/docs/concepts/active-memory.md +856 -0
- package/docs/concepts/agent-loop.md +185 -0
- package/docs/concepts/agent-runtimes.md +276 -0
- package/docs/concepts/agent-workspace.md +230 -0
- package/docs/concepts/agent.md +142 -0
- package/docs/concepts/architecture.md +154 -0
- package/docs/concepts/channel-docking.md +145 -0
- package/docs/concepts/commitments.md +150 -0
- package/docs/concepts/compaction.md +203 -0
- package/docs/concepts/context-engine.md +347 -0
- package/docs/concepts/context.md +199 -0
- package/docs/concepts/delegate-architecture.md +319 -0
- package/docs/concepts/dreaming.md +279 -0
- package/docs/concepts/experimental-features.md +111 -0
- package/docs/concepts/features.md +91 -0
- package/docs/concepts/mantis-slack-desktop-runbook.md +231 -0
- package/docs/concepts/mantis.md +744 -0
- package/docs/concepts/markdown-formatting.md +139 -0
- package/docs/concepts/memory-builtin.md +151 -0
- package/docs/concepts/memory-honcho.md +144 -0
- package/docs/concepts/memory-qmd.md +277 -0
- package/docs/concepts/memory-search.md +175 -0
- package/docs/concepts/memory.md +299 -0
- package/docs/concepts/message-lifecycle-refactor.md +1126 -0
- package/docs/concepts/messages.md +216 -0
- package/docs/concepts/model-failover.md +405 -0
- package/docs/concepts/model-providers.md +719 -0
- package/docs/concepts/models.md +371 -0
- package/docs/concepts/multi-agent.md +625 -0
- package/docs/concepts/oauth.md +218 -0
- package/docs/concepts/parallel-specialist-lanes.md +127 -0
- package/docs/concepts/personal-agent-benchmark-pack.md +74 -0
- package/docs/concepts/presence.md +117 -0
- package/docs/concepts/progress-drafts.md +406 -0
- package/docs/concepts/qa-e2e-automation.md +979 -0
- package/docs/concepts/qa-matrix.md +139 -0
- package/docs/concepts/queue-steering.md +90 -0
- package/docs/concepts/queue.md +136 -0
- package/docs/concepts/retry.md +86 -0
- package/docs/concepts/session-pruning.md +104 -0
- package/docs/concepts/session-tool.md +201 -0
- package/docs/concepts/session.md +164 -0
- package/docs/concepts/soul.md +116 -0
- package/docs/concepts/streaming.md +258 -0
- package/docs/concepts/system-prompt.md +330 -0
- package/docs/concepts/timezone.md +47 -0
- package/docs/concepts/typebox.md +309 -0
- package/docs/concepts/typing-indicators.md +88 -0
- package/docs/concepts/usage-tracking.md +72 -0
- package/docs/date-time.md +126 -0
- package/docs/debug/node-issue.md +90 -0
- package/docs/diagnostics/flags.md +182 -0
- package/docs/docs.json +1885 -0
- package/docs/gateway/authentication.md +286 -0
- package/docs/gateway/background-process.md +147 -0
- package/docs/gateway/bonjour.md +303 -0
- package/docs/gateway/bridge-protocol.md +97 -0
- package/docs/gateway/cli-backends.md +463 -0
- package/docs/gateway/config-agents.md +1525 -0
- package/docs/gateway/config-channels.md +942 -0
- package/docs/gateway/config-tools.md +806 -0
- package/docs/gateway/configuration-examples.md +706 -0
- package/docs/gateway/configuration-reference.md +1449 -0
- package/docs/gateway/configuration.md +748 -0
- package/docs/gateway/diagnostics.md +213 -0
- package/docs/gateway/discovery.md +154 -0
- package/docs/gateway/doctor.md +576 -0
- package/docs/gateway/external-apps.md +86 -0
- package/docs/gateway/gateway-lock.md +37 -0
- package/docs/gateway/health.md +73 -0
- package/docs/gateway/heartbeat.md +498 -0
- package/docs/gateway/index.md +385 -0
- package/docs/gateway/local-model-services.md +205 -0
- package/docs/gateway/local-models.md +355 -0
- package/docs/gateway/logging.md +149 -0
- package/docs/gateway/multiple-gateways.md +178 -0
- package/docs/gateway/network-model.md +15 -0
- package/docs/gateway/openai-http-api.md +379 -0
- package/docs/gateway/openresponses-http-api.md +349 -0
- package/docs/gateway/openshell.md +316 -0
- package/docs/gateway/opentelemetry.md +440 -0
- package/docs/gateway/operator-scopes.md +119 -0
- package/docs/gateway/pairing.md +207 -0
- package/docs/gateway/prometheus.md +249 -0
- package/docs/gateway/protocol.md +839 -0
- package/docs/gateway/remote-gateway-readme.md +169 -0
- package/docs/gateway/remote.md +280 -0
- package/docs/gateway/sandbox-vs-tool-policy-vs-elevated.md +148 -0
- package/docs/gateway/sandboxing.md +546 -0
- package/docs/gateway/secrets-plan-contract.md +159 -0
- package/docs/gateway/secrets.md +805 -0
- package/docs/gateway/security/audit-checks.md +127 -0
- package/docs/gateway/security/exposure-runbook.md +212 -0
- package/docs/gateway/security/index.md +1344 -0
- package/docs/gateway/security/secure-file-operations.md +76 -0
- package/docs/gateway/security/shrinkwrap.md +111 -0
- package/docs/gateway/tailscale.md +180 -0
- package/docs/gateway/tools-invoke-http-api.md +175 -0
- package/docs/gateway/troubleshooting.md +881 -0
- package/docs/gateway/trusted-proxy-auth.md +483 -0
- package/docs/help/debugging.md +341 -0
- package/docs/help/environment.md +240 -0
- package/docs/help/faq-first-run.md +872 -0
- package/docs/help/faq-models.md +557 -0
- package/docs/help/faq.md +2115 -0
- package/docs/help/index.md +39 -0
- package/docs/help/scripts.md +56 -0
- package/docs/help/testing-live.md +592 -0
- package/docs/help/testing-updates-plugins.md +299 -0
- package/docs/help/testing.md +977 -0
- package/docs/help/troubleshooting.md +500 -0
- package/docs/index.md +196 -0
- package/docs/install/ansible.md +233 -0
- package/docs/install/azure.md +315 -0
- package/docs/install/bun.md +59 -0
- package/docs/install/clawdock.md +112 -0
- package/docs/install/development-channels.md +148 -0
- package/docs/install/digitalocean.md +174 -0
- package/docs/install/docker-vm-runtime.md +154 -0
- package/docs/install/docker.md +564 -0
- package/docs/install/exe-dev.md +201 -0
- package/docs/install/fly.md +524 -0
- package/docs/install/gcp.md +418 -0
- package/docs/install/hetzner.md +285 -0
- package/docs/install/hostinger.md +98 -0
- package/docs/install/index.md +236 -0
- package/docs/install/installer.md +447 -0
- package/docs/install/kubernetes.md +196 -0
- package/docs/install/macos-vm.md +281 -0
- package/docs/install/migrating-claude.md +165 -0
- package/docs/install/migrating-hermes.md +178 -0
- package/docs/install/migrating.md +137 -0
- package/docs/install/nix.md +112 -0
- package/docs/install/node.md +142 -0
- package/docs/install/northflank.mdx +44 -0
- package/docs/install/oracle.md +218 -0
- package/docs/install/podman.md +216 -0
- package/docs/install/railway.mdx +92 -0
- package/docs/install/raspberry-pi.md +234 -0
- package/docs/install/render.mdx +167 -0
- package/docs/install/uninstall.md +140 -0
- package/docs/install/updating.md +284 -0
- package/docs/install/upstash.md +96 -0
- package/docs/logging.md +322 -0
- package/docs/maturity-scores.yaml +5361 -0
- package/docs/nav-tabs-underline.js +104 -0
- package/docs/network.md +72 -0
- package/docs/nodes/audio.md +216 -0
- package/docs/nodes/camera.md +166 -0
- package/docs/nodes/images.md +77 -0
- package/docs/nodes/index.md +444 -0
- package/docs/nodes/location-command.md +102 -0
- package/docs/nodes/media-understanding.md +495 -0
- package/docs/nodes/talk.md +160 -0
- package/docs/nodes/troubleshooting.md +123 -0
- package/docs/nodes/voicewake.md +93 -0
- package/docs/openclaw-agent-runtime.md +82 -0
- package/docs/perplexity.md +11 -0
- package/docs/plan/codex-context-engine-harness.md +624 -0
- package/docs/plan/ui-channels.md +284 -0
- package/docs/platforms/android.md +286 -0
- package/docs/platforms/digitalocean.md +12 -0
- package/docs/platforms/easyrunner.md +109 -0
- package/docs/platforms/index.md +65 -0
- package/docs/platforms/ios.md +287 -0
- package/docs/platforms/linux.md +141 -0
- package/docs/platforms/mac/bundled-gateway.md +79 -0
- package/docs/platforms/mac/canvas.md +128 -0
- package/docs/platforms/mac/child-process.md +72 -0
- package/docs/platforms/mac/dev-setup.md +112 -0
- package/docs/platforms/mac/health.md +39 -0
- package/docs/platforms/mac/icon.md +36 -0
- package/docs/platforms/mac/logging.md +62 -0
- package/docs/platforms/mac/menu-bar.md +93 -0
- package/docs/platforms/mac/peekaboo.md +96 -0
- package/docs/platforms/mac/permissions.md +73 -0
- package/docs/platforms/mac/remote.md +123 -0
- package/docs/platforms/mac/signing.md +52 -0
- package/docs/platforms/mac/skills.md +45 -0
- package/docs/platforms/mac/voice-overlay.md +66 -0
- package/docs/platforms/mac/voicewake.md +79 -0
- package/docs/platforms/mac/webchat.md +54 -0
- package/docs/platforms/mac/xpc.md +66 -0
- package/docs/platforms/macos.md +228 -0
- package/docs/platforms/oracle.md +12 -0
- package/docs/platforms/raspberry-pi.md +13 -0
- package/docs/platforms/windows.md +304 -0
- package/docs/plugins/adding-capabilities.md +146 -0
- package/docs/plugins/admin-http-rpc.md +216 -0
- package/docs/plugins/agent-tools.md +13 -0
- package/docs/plugins/architecture-internals.md +1203 -0
- package/docs/plugins/architecture.md +483 -0
- package/docs/plugins/building-extensions.md +13 -0
- package/docs/plugins/building-plugins.md +343 -0
- package/docs/plugins/bundles.md +310 -0
- package/docs/plugins/cli-backend-plugins.md +328 -0
- package/docs/plugins/codex-computer-use.md +297 -0
- package/docs/plugins/codex-harness-reference.md +480 -0
- package/docs/plugins/codex-harness-runtime.md +268 -0
- package/docs/plugins/codex-harness.md +800 -0
- package/docs/plugins/codex-native-plugins.md +280 -0
- package/docs/plugins/community.md +77 -0
- package/docs/plugins/compatibility.md +198 -0
- package/docs/plugins/copilot.md +355 -0
- package/docs/plugins/dependency-resolution.md +176 -0
- package/docs/plugins/google-meet.md +1737 -0
- package/docs/plugins/hooks.md +525 -0
- package/docs/plugins/install-overrides.md +80 -0
- package/docs/plugins/llama-cpp.md +58 -0
- package/docs/plugins/manage-plugins.md +214 -0
- package/docs/plugins/manifest.md +1468 -0
- package/docs/plugins/memory-lancedb.md +385 -0
- package/docs/plugins/memory-wiki.md +529 -0
- package/docs/plugins/message-presentation.md +487 -0
- package/docs/plugins/oc-path.md +166 -0
- package/docs/plugins/plugin-inventory.md +318 -0
- package/docs/plugins/plugin-permission-requests.md +193 -0
- package/docs/plugins/reference/acpx.md +23 -0
- package/docs/plugins/reference/admin-http-rpc.md +23 -0
- package/docs/plugins/reference/alibaba.md +23 -0
- package/docs/plugins/reference/amazon-bedrock-mantle.md +23 -0
- package/docs/plugins/reference/amazon-bedrock.md +23 -0
- package/docs/plugins/reference/anthropic-vertex.md +29 -0
- package/docs/plugins/reference/anthropic.md +23 -0
- package/docs/plugins/reference/arcee.md +23 -0
- package/docs/plugins/reference/azure-speech.md +23 -0
- package/docs/plugins/reference/bonjour.md +19 -0
- package/docs/plugins/reference/brave.md +23 -0
- package/docs/plugins/reference/browser.md +23 -0
- package/docs/plugins/reference/byteplus.md +19 -0
- package/docs/plugins/reference/canvas.md +19 -0
- package/docs/plugins/reference/cerebras.md +23 -0
- package/docs/plugins/reference/chutes.md +23 -0
- package/docs/plugins/reference/clickclack.md +23 -0
- package/docs/plugins/reference/cloudflare-ai-gateway.md +23 -0
- package/docs/plugins/reference/codex-supervisor.md +27 -0
- package/docs/plugins/reference/codex.md +23 -0
- package/docs/plugins/reference/comfy.md +23 -0
- package/docs/plugins/reference/copilot-proxy.md +19 -0
- package/docs/plugins/reference/copilot.md +23 -0
- package/docs/plugins/reference/deepgram.md +23 -0
- package/docs/plugins/reference/deepinfra.md +23 -0
- package/docs/plugins/reference/deepseek.md +23 -0
- package/docs/plugins/reference/diagnostics-otel.md +19 -0
- package/docs/plugins/reference/diagnostics-prometheus.md +19 -0
- package/docs/plugins/reference/diffs-language-pack.md +31 -0
- package/docs/plugins/reference/diffs.md +19 -0
- package/docs/plugins/reference/discord.md +23 -0
- package/docs/plugins/reference/document-extract.md +23 -0
- package/docs/plugins/reference/duckduckgo.md +23 -0
- package/docs/plugins/reference/elevenlabs.md +23 -0
- package/docs/plugins/reference/exa.md +23 -0
- package/docs/plugins/reference/fal.md +23 -0
- package/docs/plugins/reference/feishu.md +23 -0
- package/docs/plugins/reference/file-transfer.md +19 -0
- package/docs/plugins/reference/firecrawl.md +23 -0
- package/docs/plugins/reference/fireworks.md +23 -0
- package/docs/plugins/reference/github-copilot.md +23 -0
- package/docs/plugins/reference/gmi.md +23 -0
- package/docs/plugins/reference/google-meet.md +23 -0
- package/docs/plugins/reference/google.md +23 -0
- package/docs/plugins/reference/googlechat.md +23 -0
- package/docs/plugins/reference/gradium.md +23 -0
- package/docs/plugins/reference/groq.md +23 -0
- package/docs/plugins/reference/huggingface.md +23 -0
- package/docs/plugins/reference/imessage.md +23 -0
- package/docs/plugins/reference/inworld.md +23 -0
- package/docs/plugins/reference/irc.md +23 -0
- package/docs/plugins/reference/kilocode.md +23 -0
- package/docs/plugins/reference/kimi.md +23 -0
- package/docs/plugins/reference/line.md +23 -0
- package/docs/plugins/reference/litellm.md +23 -0
- package/docs/plugins/reference/llama-cpp.md +23 -0
- package/docs/plugins/reference/llm-task.md +19 -0
- package/docs/plugins/reference/lmstudio.md +23 -0
- package/docs/plugins/reference/lobster.md +19 -0
- package/docs/plugins/reference/matrix.md +23 -0
- package/docs/plugins/reference/mattermost.md +23 -0
- package/docs/plugins/reference/memory-core.md +19 -0
- package/docs/plugins/reference/memory-lancedb.md +23 -0
- package/docs/plugins/reference/memory-wiki.md +23 -0
- package/docs/plugins/reference/microsoft-foundry.md +113 -0
- package/docs/plugins/reference/microsoft.md +19 -0
- package/docs/plugins/reference/migrate-claude.md +19 -0
- package/docs/plugins/reference/migrate-hermes.md +19 -0
- package/docs/plugins/reference/minimax.md +23 -0
- package/docs/plugins/reference/mistral.md +23 -0
- package/docs/plugins/reference/moonshot.md +23 -0
- package/docs/plugins/reference/msteams.md +23 -0
- package/docs/plugins/reference/nextcloud-talk.md +23 -0
- package/docs/plugins/reference/nostr.md +23 -0
- package/docs/plugins/reference/novita.md +23 -0
- package/docs/plugins/reference/nvidia.md +23 -0
- package/docs/plugins/reference/oc-path.md +23 -0
- package/docs/plugins/reference/ollama.md +24 -0
- package/docs/plugins/reference/open-prose.md +19 -0
- package/docs/plugins/reference/openai.md +23 -0
- package/docs/plugins/reference/opencode-go.md +23 -0
- package/docs/plugins/reference/opencode.md +23 -0
- package/docs/plugins/reference/openrouter.md +23 -0
- package/docs/plugins/reference/openshell.md +19 -0
- package/docs/plugins/reference/perplexity.md +23 -0
- package/docs/plugins/reference/pixverse.md +23 -0
- package/docs/plugins/reference/policy.md +79 -0
- package/docs/plugins/reference/qa-channel.md +23 -0
- package/docs/plugins/reference/qa-lab.md +19 -0
- package/docs/plugins/reference/qa-matrix.md +19 -0
- package/docs/plugins/reference/qianfan.md +23 -0
- package/docs/plugins/reference/qqbot.md +23 -0
- package/docs/plugins/reference/qwen.md +24 -0
- package/docs/plugins/reference/runway.md +23 -0
- package/docs/plugins/reference/searxng.md +19 -0
- package/docs/plugins/reference/senseaudio.md +23 -0
- package/docs/plugins/reference/sglang.md +23 -0
- package/docs/plugins/reference/signal.md +23 -0
- package/docs/plugins/reference/slack.md +23 -0
- package/docs/plugins/reference/sms.md +23 -0
- package/docs/plugins/reference/stepfun.md +23 -0
- package/docs/plugins/reference/synology-chat.md +23 -0
- package/docs/plugins/reference/synthetic.md +23 -0
- package/docs/plugins/reference/tavily.md +23 -0
- package/docs/plugins/reference/telegram.md +23 -0
- package/docs/plugins/reference/tencent.md +23 -0
- package/docs/plugins/reference/tlon.md +23 -0
- package/docs/plugins/reference/together.md +23 -0
- package/docs/plugins/reference/tokenjuice.md +23 -0
- package/docs/plugins/reference/tts-local-cli.md +19 -0
- package/docs/plugins/reference/twitch.md +23 -0
- package/docs/plugins/reference/venice.md +23 -0
- package/docs/plugins/reference/vercel-ai-gateway.md +23 -0
- package/docs/plugins/reference/vllm.md +23 -0
- package/docs/plugins/reference/voice-call.md +23 -0
- package/docs/plugins/reference/volcengine.md +23 -0
- package/docs/plugins/reference/voyage.md +19 -0
- package/docs/plugins/reference/vydra.md +23 -0
- package/docs/plugins/reference/web-readability.md +19 -0
- package/docs/plugins/reference/webhooks.md +23 -0
- package/docs/plugins/reference/whatsapp.md +23 -0
- package/docs/plugins/reference/workboard.md +23 -0
- package/docs/plugins/reference/xai.md +23 -0
- package/docs/plugins/reference/xiaomi.md +23 -0
- package/docs/plugins/reference/zai.md +23 -0
- package/docs/plugins/reference/zalo.md +23 -0
- package/docs/plugins/reference/zalouser.md +24 -0
- package/docs/plugins/reference.md +19 -0
- package/docs/plugins/sdk-agent-harness.md +339 -0
- package/docs/plugins/sdk-channel-inbound.md +70 -0
- package/docs/plugins/sdk-channel-ingress.md +137 -0
- package/docs/plugins/sdk-channel-message.md +18 -0
- package/docs/plugins/sdk-channel-outbound.md +113 -0
- package/docs/plugins/sdk-channel-plugins.md +770 -0
- package/docs/plugins/sdk-channel-turn.md +9 -0
- package/docs/plugins/sdk-entrypoints.md +344 -0
- package/docs/plugins/sdk-migration.md +1011 -0
- package/docs/plugins/sdk-overview.md +525 -0
- package/docs/plugins/sdk-provider-plugins.md +1019 -0
- package/docs/plugins/sdk-runtime.md +683 -0
- package/docs/plugins/sdk-setup.md +550 -0
- package/docs/plugins/sdk-subpaths.md +401 -0
- package/docs/plugins/sdk-testing.md +403 -0
- package/docs/plugins/tool-plugins.md +411 -0
- package/docs/plugins/voice-call.md +942 -0
- package/docs/plugins/webhooks.md +192 -0
- package/docs/plugins/workboard.md +402 -0
- package/docs/plugins/zalouser.md +86 -0
- package/docs/prose.md +191 -0
- package/docs/providers/alibaba.md +158 -0
- package/docs/providers/anthropic.md +386 -0
- package/docs/providers/arcee.md +144 -0
- package/docs/providers/azure-speech.md +119 -0
- package/docs/providers/bedrock-mantle.md +224 -0
- package/docs/providers/bedrock.md +433 -0
- package/docs/providers/cerebras.md +130 -0
- package/docs/providers/chutes.md +153 -0
- package/docs/providers/claude-max-api-proxy.md +191 -0
- package/docs/providers/cloudflare-ai-gateway.md +119 -0
- package/docs/providers/comfy.md +362 -0
- package/docs/providers/deepgram.md +184 -0
- package/docs/providers/deepinfra.md +92 -0
- package/docs/providers/deepseek.md +146 -0
- package/docs/providers/ds4.md +309 -0
- package/docs/providers/elevenlabs.md +130 -0
- package/docs/providers/fal.md +240 -0
- package/docs/providers/fireworks.md +144 -0
- package/docs/providers/github-copilot.md +257 -0
- package/docs/providers/gmi.md +92 -0
- package/docs/providers/google.md +472 -0
- package/docs/providers/gradium.md +123 -0
- package/docs/providers/groq.md +171 -0
- package/docs/providers/huggingface.md +235 -0
- package/docs/providers/index.md +105 -0
- package/docs/providers/inferrs.md +272 -0
- package/docs/providers/inworld.md +120 -0
- package/docs/providers/kilocode.md +135 -0
- package/docs/providers/litellm.md +234 -0
- package/docs/providers/lmstudio.md +224 -0
- package/docs/providers/minimax.md +518 -0
- package/docs/providers/mistral.md +235 -0
- package/docs/providers/models.md +64 -0
- package/docs/providers/moonshot.md +413 -0
- package/docs/providers/novita.md +92 -0
- package/docs/providers/nvidia.md +208 -0
- package/docs/providers/ollama-cloud.md +115 -0
- package/docs/providers/ollama.md +1225 -0
- package/docs/providers/openai.md +1091 -0
- package/docs/providers/opencode-go.md +123 -0
- package/docs/providers/opencode.md +149 -0
- package/docs/providers/openrouter.md +390 -0
- package/docs/providers/perplexity-provider.md +123 -0
- package/docs/providers/pixverse.md +165 -0
- package/docs/providers/qianfan.md +132 -0
- package/docs/providers/qwen-oauth.md +115 -0
- package/docs/providers/qwen.md +364 -0
- package/docs/providers/runway.md +103 -0
- package/docs/providers/senseaudio.md +68 -0
- package/docs/providers/sglang.md +161 -0
- package/docs/providers/stepfun.md +229 -0
- package/docs/providers/synthetic.md +154 -0
- package/docs/providers/tencent.md +130 -0
- package/docs/providers/together.md +140 -0
- package/docs/providers/venice.md +312 -0
- package/docs/providers/vercel-ai-gateway.md +128 -0
- package/docs/providers/vllm.md +407 -0
- package/docs/providers/volcengine.md +199 -0
- package/docs/providers/vydra.md +180 -0
- package/docs/providers/xai.md +571 -0
- package/docs/providers/xiaomi.md +286 -0
- package/docs/providers/zai.md +224 -0
- package/docs/refactor/access.md +9 -0
- package/docs/refactor/acp.md +298 -0
- package/docs/refactor/canvas.md +131 -0
- package/docs/refactor/database-first.md +2263 -0
- package/docs/refactor/ingress-core.md +341 -0
- package/docs/reference/AGENTS.default.md +131 -0
- package/docs/reference/RELEASING.md +844 -0
- package/docs/reference/api-usage-costs.md +208 -0
- package/docs/reference/application-modernization-plan.md +208 -0
- package/docs/reference/code-mode.md +1058 -0
- package/docs/reference/credits.md +33 -0
- package/docs/reference/device-models.md +50 -0
- package/docs/reference/full-release-validation.md +206 -0
- package/docs/reference/memory-config.md +630 -0
- package/docs/reference/prompt-caching.md +358 -0
- package/docs/reference/release-performance-sweep.md +347 -0
- package/docs/reference/rich-output-protocol.md +93 -0
- package/docs/reference/rpc.md +43 -0
- package/docs/reference/secret-placeholder-conventions.md +33 -0
- package/docs/reference/secretref-credential-surface.md +163 -0
- package/docs/reference/secretref-user-supplied-credentials-matrix.json +691 -0
- package/docs/reference/session-management-compaction.md +474 -0
- package/docs/reference/templates/AGENTS.dev.md +90 -0
- package/docs/reference/templates/AGENTS.md +227 -0
- package/docs/reference/templates/BOOT.md +16 -0
- package/docs/reference/templates/BOOTSTRAP.md +66 -0
- package/docs/reference/templates/HEARTBEAT.md +24 -0
- package/docs/reference/templates/IDENTITY.dev.md +52 -0
- package/docs/reference/templates/IDENTITY.md +34 -0
- package/docs/reference/templates/SOUL.dev.md +82 -0
- package/docs/reference/templates/SOUL.md +49 -0
- package/docs/reference/templates/TOOLS.dev.md +29 -0
- package/docs/reference/templates/TOOLS.md +51 -0
- package/docs/reference/templates/USER.dev.md +23 -0
- package/docs/reference/templates/USER.md +28 -0
- package/docs/reference/test.md +248 -0
- package/docs/reference/token-use.md +246 -0
- package/docs/reference/transcript-hygiene.md +226 -0
- package/docs/reference/wizard.md +252 -0
- package/docs/security/CONTRIBUTING-THREAT-MODEL.md +101 -0
- package/docs/security/THREAT-MODEL-ATLAS.md +611 -0
- package/docs/security/formal-verification.md +170 -0
- package/docs/security/incident-response.md +59 -0
- package/docs/security/network-proxy.md +268 -0
- package/docs/snippets/plugin-publish/minimal-openclaw.plugin.json +12 -0
- package/docs/snippets/plugin-publish/minimal-package.json +16 -0
- package/docs/specs/claw-supervisor.md +247 -0
- package/docs/start/bootstrapping.md +49 -0
- package/docs/start/docs-directory.md +69 -0
- package/docs/start/getting-started.md +152 -0
- package/docs/start/hubs.md +201 -0
- package/docs/start/lore.md +223 -0
- package/docs/start/onboarding-overview.md +72 -0
- package/docs/start/onboarding.md +98 -0
- package/docs/start/openclaw.md +246 -0
- package/docs/start/quickstart.md +25 -0
- package/docs/start/setup.md +178 -0
- package/docs/start/showcase.md +371 -0
- package/docs/start/wizard-cli-automation.md +232 -0
- package/docs/start/wizard-cli-reference.md +331 -0
- package/docs/start/wizard.md +142 -0
- package/docs/style.css +137 -0
- package/docs/tools/acp-agents-setup.md +356 -0
- package/docs/tools/acp-agents.md +865 -0
- package/docs/tools/agent-send.md +130 -0
- package/docs/tools/apply-patch.md +64 -0
- package/docs/tools/brave-search.md +139 -0
- package/docs/tools/browser-control.md +405 -0
- package/docs/tools/browser-linux-troubleshooting.md +173 -0
- package/docs/tools/browser-login.md +77 -0
- package/docs/tools/browser-wsl2-windows-remote-cdp-troubleshooting.md +219 -0
- package/docs/tools/browser.md +866 -0
- package/docs/tools/btw.md +159 -0
- package/docs/tools/capability-cookbook.md +12 -0
- package/docs/tools/clawhub.md +5 -0
- package/docs/tools/code-execution.md +173 -0
- package/docs/tools/creating-skills.md +271 -0
- package/docs/tools/diffs.md +527 -0
- package/docs/tools/duckduckgo-search.md +109 -0
- package/docs/tools/elevated.md +128 -0
- package/docs/tools/exa-search.md +152 -0
- package/docs/tools/exec-approvals-advanced.md +457 -0
- package/docs/tools/exec-approvals.md +520 -0
- package/docs/tools/exec.md +294 -0
- package/docs/tools/firecrawl.md +155 -0
- package/docs/tools/gemini-search.md +114 -0
- package/docs/tools/goal.md +217 -0
- package/docs/tools/grok-search.md +129 -0
- package/docs/tools/image-generation.md +538 -0
- package/docs/tools/index.md +176 -0
- package/docs/tools/kimi-search.md +105 -0
- package/docs/tools/llm-task.md +137 -0
- package/docs/tools/lobster.md +365 -0
- package/docs/tools/loop-detection.md +154 -0
- package/docs/tools/media-overview.md +161 -0
- package/docs/tools/minimax-search.md +102 -0
- package/docs/tools/multi-agent-sandbox-tools.md +409 -0
- package/docs/tools/music-generation.md +372 -0
- package/docs/tools/ollama-search.md +153 -0
- package/docs/tools/parallel-search.md +154 -0
- package/docs/tools/pdf.md +213 -0
- package/docs/tools/permission-modes.md +111 -0
- package/docs/tools/perplexity-search.md +220 -0
- package/docs/tools/plugin.md +378 -0
- package/docs/tools/reactions.md +100 -0
- package/docs/tools/searxng-search.md +141 -0
- package/docs/tools/skill-workshop.md +283 -0
- package/docs/tools/skills-config.md +457 -0
- package/docs/tools/skills.md +591 -0
- package/docs/tools/slash-commands.md +518 -0
- package/docs/tools/steer.md +77 -0
- package/docs/tools/subagents.md +652 -0
- package/docs/tools/tavily.md +162 -0
- package/docs/tools/thinking.md +142 -0
- package/docs/tools/tokenjuice.md +84 -0
- package/docs/tools/tool-search.md +269 -0
- package/docs/tools/trajectory.md +229 -0
- package/docs/tools/tts.md +1013 -0
- package/docs/tools/video-generation.md +555 -0
- package/docs/tools/web-fetch.md +210 -0
- package/docs/tools/web.md +476 -0
- package/docs/tts.md +11 -0
- package/docs/vps.md +139 -0
- package/docs/web/control-ui.md +530 -0
- package/docs/web/dashboard.md +107 -0
- package/docs/web/index.md +133 -0
- package/docs/web/tui.md +258 -0
- package/docs/web/webchat.md +102 -0
- package/npm-shrinkwrap.json +3485 -0
- package/openclaw.mjs +661 -0
- package/package.json +1971 -0
- package/patches/.gitkeep +0 -0
- package/patches/@agentclientprotocol__claude-agent-acp@0.39.0.patch +40 -0
- package/pnpm-workspace.yaml +124 -0
- package/scripts/crabbox-wrapper.mjs +2470 -0
- package/scripts/lib/official-external-channel-catalog.json +570 -0
- package/scripts/lib/official-external-plugin-catalog.json +284 -0
- package/scripts/lib/official-external-provider-catalog.json +158 -0
- package/scripts/lib/package-dist-imports.mjs +174 -0
- package/scripts/npm-runner.mjs +95 -0
- package/scripts/postinstall-bundled-plugins.mjs +978 -0
- package/scripts/preinstall-package-manager-warning.mjs +74 -0
- package/scripts/prepare-git-hooks.mjs +73 -0
- package/scripts/windows-cmd-helpers.mjs +29 -0
- package/skills/1password/SKILL.md +70 -0
- package/skills/1password/references/cli-examples.md +29 -0
- package/skills/1password/references/get-started.md +17 -0
- package/skills/apple-notes/SKILL.md +77 -0
- package/skills/apple-reminders/SKILL.md +118 -0
- package/skills/bear-notes/SKILL.md +107 -0
- package/skills/blogwatcher/SKILL.md +69 -0
- package/skills/blucli/SKILL.md +47 -0
- package/skills/camsnap/SKILL.md +45 -0
- package/skills/canvas/SKILL.md +78 -0
- package/skills/clawhub/SKILL.md +77 -0
- package/skills/coding-agent/SKILL.md +143 -0
- package/skills/diagram-maker/SKILL.md +53 -0
- package/skills/diagram-maker/references/excalidraw-patterns.md +85 -0
- package/skills/diagram-maker/references/svg-template.md +112 -0
- package/skills/discord/SKILL.md +136 -0
- package/skills/eightctl/SKILL.md +50 -0
- package/skills/gemini/SKILL.md +47 -0
- package/skills/gh-issues/SKILL.md +213 -0
- package/skills/gifgrep/SKILL.md +85 -0
- package/skills/github/SKILL.md +84 -0
- package/skills/gog/SKILL.md +116 -0
- package/skills/goplaces/SKILL.md +52 -0
- package/skills/healthcheck/SKILL.md +105 -0
- package/skills/himalaya/SKILL.md +80 -0
- package/skills/himalaya/references/configuration.md +184 -0
- package/skills/himalaya/references/message-composition.md +199 -0
- package/skills/imsg/SKILL.md +122 -0
- package/skills/mcporter/SKILL.md +61 -0
- package/skills/meme-maker/SKILL.md +42 -0
- package/skills/meme-maker/references/templates.json +358 -0
- package/skills/meme-maker/scripts/meme.mjs +398 -0
- package/skills/model-usage/SKILL.md +71 -0
- package/skills/model-usage/references/codexbar-cli.md +33 -0
- package/skills/model-usage/scripts/model_usage.py +319 -0
- package/skills/model-usage/scripts/test_model_usage.py +40 -0
- package/skills/nano-pdf/SKILL.md +38 -0
- package/skills/node-connect/SKILL.md +143 -0
- package/skills/node-inspect-debugger/SKILL.md +85 -0
- package/skills/notion/SKILL.md +150 -0
- package/skills/obsidian/SKILL.md +119 -0
- package/skills/openai-whisper/SKILL.md +38 -0
- package/skills/openai-whisper-api/SKILL.md +71 -0
- package/skills/openai-whisper-api/scripts/transcribe.sh +154 -0
- package/skills/openhue/SKILL.md +112 -0
- package/skills/oracle/SKILL.md +126 -0
- package/skills/ordercli/SKILL.md +78 -0
- package/skills/peekaboo/SKILL.md +198 -0
- package/skills/pyproject.toml +10 -0
- package/skills/python-debugpy/SKILL.md +73 -0
- package/skills/sag/SKILL.md +87 -0
- package/skills/session-logs/SKILL.md +151 -0
- package/skills/sherpa-onnx-tts/SKILL.md +109 -0
- package/skills/sherpa-onnx-tts/bin/sherpa-onnx-tts +178 -0
- package/skills/skill-creator/SKILL.md +78 -0
- package/skills/skill-creator/license.txt +202 -0
- package/skills/skill-creator/scripts/init_skill.py +378 -0
- package/skills/skill-creator/scripts/package_skill.py +144 -0
- package/skills/skill-creator/scripts/quick_validate.py +169 -0
- package/skills/skill-creator/scripts/test_package_skill.py +199 -0
- package/skills/skill-creator/scripts/test_quick_validate.py +116 -0
- package/skills/slack/SKILL.md +78 -0
- package/skills/songsee/SKILL.md +49 -0
- package/skills/sonoscli/SKILL.md +65 -0
- package/skills/spike/SKILL.md +51 -0
- package/skills/spotify-player/SKILL.md +64 -0
- package/skills/summarize/SKILL.md +87 -0
- package/skills/taskflow/SKILL.md +149 -0
- package/skills/taskflow/examples/inbox-triage.lobster +33 -0
- package/skills/taskflow/examples/pr-intake.lobster +32 -0
- package/skills/taskflow-inbox-triage/SKILL.md +119 -0
- package/skills/things-mac/SKILL.md +86 -0
- package/skills/tmux/SKILL.md +91 -0
- package/skills/tmux/scripts/find-sessions.sh +112 -0
- package/skills/tmux/scripts/wait-for-text.sh +83 -0
- package/skills/trello/SKILL.md +108 -0
- package/skills/video-frames/SKILL.md +46 -0
- package/skills/video-frames/scripts/frame.sh +81 -0
- package/skills/voice-call/SKILL.md +45 -0
- package/skills/wacli/SKILL.md +72 -0
- package/skills/weather/SKILL.md +87 -0
- package/skills/xurl/SKILL.md +120 -0
- package/src/agents/templates/HEARTBEAT.md +5 -0
|
@@ -0,0 +1,192 @@
|
|
|
1
|
+
---
|
|
2
|
+
summary: "Webhooks plugin: authenticated TaskFlow ingress for trusted external automation"
|
|
3
|
+
read_when:
|
|
4
|
+
- You want to trigger or drive TaskFlows from an external system
|
|
5
|
+
- You are configuring the bundled webhooks plugin
|
|
6
|
+
title: "Webhooks plugin"
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
The Webhooks plugin adds authenticated HTTP routes that bind external
|
|
10
|
+
automation to OpenClaw TaskFlows.
|
|
11
|
+
|
|
12
|
+
Use it when you want a trusted system such as Zapier, n8n, a CI job, or an
|
|
13
|
+
internal service to create and drive managed TaskFlows without writing a custom
|
|
14
|
+
plugin first.
|
|
15
|
+
|
|
16
|
+
## Where it runs
|
|
17
|
+
|
|
18
|
+
The Webhooks plugin runs inside the Gateway process.
|
|
19
|
+
|
|
20
|
+
If your Gateway runs on another machine, install and configure the plugin on
|
|
21
|
+
that Gateway host, then restart the Gateway.
|
|
22
|
+
|
|
23
|
+
## Configure routes
|
|
24
|
+
|
|
25
|
+
Set config under `plugins.entries.webhooks.config`:
|
|
26
|
+
|
|
27
|
+
```json5
|
|
28
|
+
{
|
|
29
|
+
plugins: {
|
|
30
|
+
entries: {
|
|
31
|
+
webhooks: {
|
|
32
|
+
enabled: true,
|
|
33
|
+
config: {
|
|
34
|
+
routes: {
|
|
35
|
+
zapier: {
|
|
36
|
+
path: "/plugins/webhooks/zapier",
|
|
37
|
+
sessionKey: "agent:main:main",
|
|
38
|
+
secret: {
|
|
39
|
+
source: "env",
|
|
40
|
+
provider: "default",
|
|
41
|
+
id: "OPENCLAW_WEBHOOK_SECRET",
|
|
42
|
+
},
|
|
43
|
+
controllerId: "webhooks/zapier",
|
|
44
|
+
description: "Zapier TaskFlow bridge",
|
|
45
|
+
},
|
|
46
|
+
},
|
|
47
|
+
},
|
|
48
|
+
},
|
|
49
|
+
},
|
|
50
|
+
},
|
|
51
|
+
}
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
Route fields:
|
|
55
|
+
|
|
56
|
+
- `enabled`: optional, defaults to `true`
|
|
57
|
+
- `path`: optional, defaults to `/plugins/webhooks/<routeId>`
|
|
58
|
+
- `sessionKey`: required session that owns the bound TaskFlows
|
|
59
|
+
- `secret`: required shared secret or SecretRef
|
|
60
|
+
- `controllerId`: optional controller id for created managed flows
|
|
61
|
+
- `description`: optional operator note
|
|
62
|
+
|
|
63
|
+
Supported `secret` inputs:
|
|
64
|
+
|
|
65
|
+
- Plain string
|
|
66
|
+
- SecretRef with `source: "env" | "file" | "exec"`
|
|
67
|
+
|
|
68
|
+
If a secret-backed route cannot resolve its secret at startup, the plugin skips
|
|
69
|
+
that route and logs a warning instead of exposing a broken endpoint.
|
|
70
|
+
|
|
71
|
+
## Security model
|
|
72
|
+
|
|
73
|
+
Each route is trusted to act with the TaskFlow authority of its configured
|
|
74
|
+
`sessionKey`.
|
|
75
|
+
|
|
76
|
+
This means the route can inspect and mutate TaskFlows owned by that session, so
|
|
77
|
+
you should:
|
|
78
|
+
|
|
79
|
+
- Use a strong unique secret per route
|
|
80
|
+
- Prefer secret references over inline plaintext secrets
|
|
81
|
+
- Bind routes to the narrowest session that fits the workflow
|
|
82
|
+
- Expose only the specific webhook path you need
|
|
83
|
+
|
|
84
|
+
The plugin applies:
|
|
85
|
+
|
|
86
|
+
- Shared-secret authentication
|
|
87
|
+
- Request body size and timeout guards
|
|
88
|
+
- Fixed-window rate limiting
|
|
89
|
+
- In-flight request limiting
|
|
90
|
+
- Owner-bound TaskFlow access through `api.runtime.tasks.managedFlows.bindSession(...)`
|
|
91
|
+
|
|
92
|
+
## Request format
|
|
93
|
+
|
|
94
|
+
Send `POST` requests with:
|
|
95
|
+
|
|
96
|
+
- `Content-Type: application/json`
|
|
97
|
+
- `Authorization: Bearer <secret>` or `x-openclaw-webhook-secret: <secret>`
|
|
98
|
+
|
|
99
|
+
Example:
|
|
100
|
+
|
|
101
|
+
```bash
|
|
102
|
+
curl -X POST https://gateway.example.com/plugins/webhooks/zapier \
|
|
103
|
+
-H 'Content-Type: application/json' \
|
|
104
|
+
-H 'Authorization: Bearer YOUR_SHARED_SECRET' \
|
|
105
|
+
-d '{"action":"create_flow","goal":"Review inbound queue"}'
|
|
106
|
+
```
|
|
107
|
+
|
|
108
|
+
## Supported actions
|
|
109
|
+
|
|
110
|
+
The plugin currently accepts these JSON `action` values:
|
|
111
|
+
|
|
112
|
+
- `create_flow`
|
|
113
|
+
- `get_flow`
|
|
114
|
+
- `list_flows`
|
|
115
|
+
- `find_latest_flow`
|
|
116
|
+
- `resolve_flow`
|
|
117
|
+
- `get_task_summary`
|
|
118
|
+
- `set_waiting`
|
|
119
|
+
- `resume_flow`
|
|
120
|
+
- `finish_flow`
|
|
121
|
+
- `fail_flow`
|
|
122
|
+
- `request_cancel`
|
|
123
|
+
- `cancel_flow`
|
|
124
|
+
- `run_task`
|
|
125
|
+
|
|
126
|
+
### `create_flow`
|
|
127
|
+
|
|
128
|
+
Creates a managed TaskFlow for the route's bound session.
|
|
129
|
+
|
|
130
|
+
Example:
|
|
131
|
+
|
|
132
|
+
```json
|
|
133
|
+
{
|
|
134
|
+
"action": "create_flow",
|
|
135
|
+
"goal": "Review inbound queue",
|
|
136
|
+
"status": "queued",
|
|
137
|
+
"notifyPolicy": "done_only"
|
|
138
|
+
}
|
|
139
|
+
```
|
|
140
|
+
|
|
141
|
+
### `run_task`
|
|
142
|
+
|
|
143
|
+
Creates a managed child task inside an existing managed TaskFlow.
|
|
144
|
+
|
|
145
|
+
Allowed runtimes are:
|
|
146
|
+
|
|
147
|
+
- `subagent`
|
|
148
|
+
- `acp`
|
|
149
|
+
|
|
150
|
+
Example:
|
|
151
|
+
|
|
152
|
+
```json
|
|
153
|
+
{
|
|
154
|
+
"action": "run_task",
|
|
155
|
+
"flowId": "flow_123",
|
|
156
|
+
"runtime": "acp",
|
|
157
|
+
"childSessionKey": "agent:main:acp:worker",
|
|
158
|
+
"task": "Inspect the next message batch"
|
|
159
|
+
}
|
|
160
|
+
```
|
|
161
|
+
|
|
162
|
+
## Response shape
|
|
163
|
+
|
|
164
|
+
Successful responses return:
|
|
165
|
+
|
|
166
|
+
```json
|
|
167
|
+
{
|
|
168
|
+
"ok": true,
|
|
169
|
+
"routeId": "zapier",
|
|
170
|
+
"result": {}
|
|
171
|
+
}
|
|
172
|
+
```
|
|
173
|
+
|
|
174
|
+
Rejected requests return:
|
|
175
|
+
|
|
176
|
+
```json
|
|
177
|
+
{
|
|
178
|
+
"ok": false,
|
|
179
|
+
"routeId": "zapier",
|
|
180
|
+
"code": "not_found",
|
|
181
|
+
"error": "TaskFlow not found.",
|
|
182
|
+
"result": {}
|
|
183
|
+
}
|
|
184
|
+
```
|
|
185
|
+
|
|
186
|
+
The plugin intentionally scrubs owner/session metadata from webhook responses.
|
|
187
|
+
|
|
188
|
+
## Related docs
|
|
189
|
+
|
|
190
|
+
- [Plugin runtime SDK](/plugins/sdk-runtime)
|
|
191
|
+
- [Hooks and webhooks overview](/automation/hooks)
|
|
192
|
+
- [CLI webhooks](/cli/webhooks)
|
|
@@ -0,0 +1,402 @@
|
|
|
1
|
+
---
|
|
2
|
+
summary: "Optional dashboard workboard for agent-owned cards and session handoff"
|
|
3
|
+
read_when:
|
|
4
|
+
- You want a Kanban-style workboard in the Control UI
|
|
5
|
+
- You are enabling or disabling the bundled Workboard plugin
|
|
6
|
+
- You want to track planned agent work without an external project manager
|
|
7
|
+
title: "Workboard plugin"
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
The Workboard plugin adds an optional Kanban-style board to the
|
|
11
|
+
[Control UI](/web/control-ui). Use it to collect agent-sized work cards, assign
|
|
12
|
+
them to agents, and track the linked background task, run, and dashboard
|
|
13
|
+
session from one card.
|
|
14
|
+
|
|
15
|
+
Workboard is intentionally small. It tracks local operating work for an
|
|
16
|
+
OpenClaw Gateway; it is not a replacement for GitHub Issues, Linear, Jira, or
|
|
17
|
+
other team project management systems.
|
|
18
|
+
|
|
19
|
+
## Default state
|
|
20
|
+
|
|
21
|
+
Workboard is a bundled plugin and is disabled by default unless you enable it
|
|
22
|
+
in plugin config.
|
|
23
|
+
|
|
24
|
+
Enable it with:
|
|
25
|
+
|
|
26
|
+
```bash
|
|
27
|
+
openclaw plugins enable workboard
|
|
28
|
+
openclaw gateway restart
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
Then open the dashboard:
|
|
32
|
+
|
|
33
|
+
```bash
|
|
34
|
+
openclaw dashboard
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
The Workboard tab appears in the dashboard navigation. If the tab is visible
|
|
38
|
+
but the plugin is disabled or blocked by `plugins.allow` / `plugins.deny`, the
|
|
39
|
+
view shows a plugin-unavailable state instead of local card data.
|
|
40
|
+
|
|
41
|
+
## What cards contain
|
|
42
|
+
|
|
43
|
+
Each card stores:
|
|
44
|
+
|
|
45
|
+
- title and notes
|
|
46
|
+
- status: `triage`, `backlog`, `todo`, `scheduled`, `ready`, `running`,
|
|
47
|
+
`review`, `blocked`, or `done`
|
|
48
|
+
- priority: `low`, `normal`, `high`, or `urgent`
|
|
49
|
+
- labels
|
|
50
|
+
- optional agent id
|
|
51
|
+
- optional linked task, run, session, or source URL
|
|
52
|
+
- optional execution metadata for a Codex or Claude run started from the card
|
|
53
|
+
- compact metadata for attempts, comments, links, proof, artifacts, automation,
|
|
54
|
+
attachments, worker logs, worker protocol state, claims, diagnostics,
|
|
55
|
+
notifications, templates, archive state, and stale-session detection
|
|
56
|
+
- recent card events such as created, moved, linked, claimed, heartbeat,
|
|
57
|
+
attempt, proof, artifact, diagnostic, notification, dispatch, archive, stale,
|
|
58
|
+
or agent-updated changes
|
|
59
|
+
|
|
60
|
+
Cards are stored in the plugin's Gateway state. They are local to the Gateway
|
|
61
|
+
state directory and move with the rest of that Gateway's OpenClaw state.
|
|
62
|
+
|
|
63
|
+
Workboard keeps compact per-card metadata so operators can see how a card moved
|
|
64
|
+
through the board without opening the linked session. Events, attempt summaries,
|
|
65
|
+
proof snippets, related links, comments, archive markers, and stale-session
|
|
66
|
+
markers are intentionally local metadata; they do not replace session
|
|
67
|
+
transcripts or GitHub issue history.
|
|
68
|
+
|
|
69
|
+
## Card executions and tasks
|
|
70
|
+
|
|
71
|
+
Unlinked cards can start work from the card. Autonomous starts use the
|
|
72
|
+
Gateway's task-tracked agent run path, then Workboard links the resulting task,
|
|
73
|
+
run id, and session key back onto the card. Start uses the Gateway's configured
|
|
74
|
+
default agent and model. Codex and Claude actions are optional explicit model
|
|
75
|
+
choices:
|
|
76
|
+
|
|
77
|
+
- Run Codex or Run Claude starts a task-backed agent run, sends the card
|
|
78
|
+
prompt, and marks the card `running`.
|
|
79
|
+
- Open Codex or Open Claude creates a linked dashboard session without sending
|
|
80
|
+
the card prompt or moving the card, so you can work manually while it stays
|
|
81
|
+
attached to the board.
|
|
82
|
+
|
|
83
|
+
Execution metadata stores the selected engine, mode, model ref, session key,
|
|
84
|
+
run id, task id when available, and lifecycle status on the card. Codex
|
|
85
|
+
executions use `openai/gpt-5.5`; Claude executions use
|
|
86
|
+
`anthropic/claude-sonnet-4-6`.
|
|
87
|
+
|
|
88
|
+
Each linked execution also records an attempt summary on the same card record.
|
|
89
|
+
The attempt summary keeps the engine, mode, model, run id, timestamps, status,
|
|
90
|
+
and rolling failure count so repeated failures remain visible on the board.
|
|
91
|
+
|
|
92
|
+
The dashboard refreshes task status from the Gateway task ledger and matches
|
|
93
|
+
tasks back to cards by task id, run id, or linked session key. If a task is
|
|
94
|
+
queued or running, the card lifecycle shows active task state. If the task
|
|
95
|
+
finishes, fails, times out, or is cancelled, the card lifecycle moves toward
|
|
96
|
+
review or blocked status using the same lifecycle sync as linked sessions.
|
|
97
|
+
|
|
98
|
+
## Agent coordination
|
|
99
|
+
|
|
100
|
+
Workboard also exposes optional agent tools for board-aware workflows:
|
|
101
|
+
|
|
102
|
+
- `workboard_list` lists compact cards with claim and diagnostic state, with an
|
|
103
|
+
optional board filter.
|
|
104
|
+
- `workboard_read` returns one card plus bounded worker context built from notes,
|
|
105
|
+
attempts, comments, links, proof, artifacts, parent results, recent assignee
|
|
106
|
+
work, and active diagnostics.
|
|
107
|
+
- `workboard_create` creates a card with optional parents, tenant, skills,
|
|
108
|
+
board, workspace metadata, idempotency key, runtime limit, and retry budget.
|
|
109
|
+
- `workboard_link` links a parent card to a child card. Children stay in `todo`
|
|
110
|
+
until every parent reaches `done`; then dispatch promotion moves them to
|
|
111
|
+
`ready`.
|
|
112
|
+
- `workboard_claim` claims a card for the calling agent and moves backlog, todo,
|
|
113
|
+
or ready cards into `running`.
|
|
114
|
+
- `workboard_heartbeat` refreshes the claim heartbeat during longer runs.
|
|
115
|
+
- `workboard_release` releases the claim after completion, pause, or handoff and
|
|
116
|
+
can move the card to a next status.
|
|
117
|
+
- `workboard_complete` and `workboard_block` are structured lifecycle tools for
|
|
118
|
+
final summaries, proof, artifacts, created-card manifests, and blocker
|
|
119
|
+
reasons. Created-card manifests must reference cards linked back to the
|
|
120
|
+
completed card, which keeps phantom children out of summaries.
|
|
121
|
+
- `workboard_attachment_add`, `workboard_attachment_read`, and
|
|
122
|
+
`workboard_attachment_delete` store small card attachments in plugin SQLite
|
|
123
|
+
state, index them on the card, and expose them in worker context.
|
|
124
|
+
- `workboard_worker_log` and `workboard_protocol_violation` record worker log
|
|
125
|
+
lines and block cards when an automated worker stops without calling
|
|
126
|
+
`workboard_complete` or `workboard_block`.
|
|
127
|
+
- `workboard_board_create`, `workboard_board_archive`, and
|
|
128
|
+
`workboard_board_delete` manage persisted board metadata such as display name,
|
|
129
|
+
description, archive state, and default workspace.
|
|
130
|
+
- `workboard_runs` returns the persisted run-attempt history stored on a card.
|
|
131
|
+
- `workboard_specify` turns a rough triage or backlog card into a clarified
|
|
132
|
+
`todo` card and records the specification summary on the card.
|
|
133
|
+
- `workboard_decompose` fans a parent orchestration card into linked children,
|
|
134
|
+
inherits board and tenant metadata, and can complete the parent with a
|
|
135
|
+
created-card manifest.
|
|
136
|
+
- `workboard_notify_subscribe`, `workboard_notify_list`,
|
|
137
|
+
`workboard_notify_events`, `workboard_notify_advance`, and
|
|
138
|
+
`workboard_notify_unsubscribe` manage notification subscriptions in plugin
|
|
139
|
+
state. Event reads are replay-safe; the advance tool moves the durable cursor
|
|
140
|
+
so callers can resume without losing or double-reading completed, failed, or
|
|
141
|
+
stale card events.
|
|
142
|
+
- `workboard_boards`, `workboard_stats`, `workboard_promote`,
|
|
143
|
+
`workboard_reassign`, `workboard_reclaim`, `workboard_comment`,
|
|
144
|
+
`workboard_proof`, `workboard_unblock`, and `workboard_dispatch` let an agent
|
|
145
|
+
inspect board namespaces, view queue stats, recover stuck work, add handoff
|
|
146
|
+
notes, attach proof or artifact references, move blocked work back to `todo`,
|
|
147
|
+
and nudge dependency promotion or stale-claim cleanup.
|
|
148
|
+
|
|
149
|
+
Claimed cards reject agent-tool mutations from other agents unless the caller
|
|
150
|
+
has the claim token returned by `workboard_claim`. Dashboard operators still use
|
|
151
|
+
the normal Gateway RPC surface and can recover or reassign cards.
|
|
152
|
+
|
|
153
|
+
Workboard stores durable board data in a plugin-owned relational SQLite database
|
|
154
|
+
under the OpenClaw state directory. Boards, cards, labels, lifecycle events,
|
|
155
|
+
run attempts, comments, dependency links, proof, artifact references,
|
|
156
|
+
attachment metadata and blobs, diagnostics, notifications, worker logs,
|
|
157
|
+
protocol state, and subscriptions are persisted in Workboard tables instead of
|
|
158
|
+
plugin key-value entries. A card export still preserves the board narrative
|
|
159
|
+
without inlining attachment blob contents.
|
|
160
|
+
|
|
161
|
+
Installations that used Workboard in the `.28` release can run
|
|
162
|
+
`openclaw doctor --fix` to migrate the shipped legacy plugin-state namespaces
|
|
163
|
+
(`workboard.cards`, `workboard.boards`, and `workboard.notify`) into the
|
|
164
|
+
relational database. If a legacy `workboard.attachments` namespace is present,
|
|
165
|
+
doctor migrates those attachment blobs too.
|
|
166
|
+
|
|
167
|
+
Workboard diagnostics are computed from local card metadata. The built-in checks
|
|
168
|
+
flag assigned cards that wait too long, running cards without recent heartbeat,
|
|
169
|
+
blocked cards that need attention, repeated failures, done cards without proof,
|
|
170
|
+
and running cards that only have a loose session link.
|
|
171
|
+
|
|
172
|
+
Dispatch is intentionally Gateway-local. It does not spawn arbitrary operating
|
|
173
|
+
system processes; normal OpenClaw subagent sessions still own execution. The
|
|
174
|
+
dispatch action promotes dependency-ready cards, records dispatch metadata on
|
|
175
|
+
ready cards, blocks expired claims or timed-out runs, marks board-configured
|
|
176
|
+
triage cards as orchestration candidates, then claims a small batch of ready
|
|
177
|
+
cards and starts worker runs through the Gateway subagent runtime. Assigned
|
|
178
|
+
cards use `agent:<id>:subagent:workboard-*` worker session keys; unassigned
|
|
179
|
+
cards use unscoped `subagent:workboard-*` keys so the Gateway still resolves the
|
|
180
|
+
configured default agent. Workers get bounded card context plus the claim token
|
|
181
|
+
they need to heartbeat, complete, or block the card through the Workboard tools.
|
|
182
|
+
|
|
183
|
+
### Dispatch worker selection
|
|
184
|
+
|
|
185
|
+
Each dispatch pass starts at most three workers by default. Ready cards are
|
|
186
|
+
ordered by priority, position, and creation time, then filtered to avoid
|
|
187
|
+
duplicate active ownership. A dispatch starts only one card for a given owner or
|
|
188
|
+
agent in the same pass, and it skips owners that already have running or review
|
|
189
|
+
work on the board.
|
|
190
|
+
|
|
191
|
+
Archived cards, cards with active claims, and cards without `ready` status are
|
|
192
|
+
not selected for worker starts. They can still be affected by the data side of
|
|
193
|
+
dispatch when stale claims, dependency promotion, or timeout cleanup applies.
|
|
194
|
+
|
|
195
|
+
### Worker prompt and lifecycle
|
|
196
|
+
|
|
197
|
+
The worker prompt includes the card title, bounded notes and context, the
|
|
198
|
+
assigned board, and the Workboard worker protocol. It also includes the claim
|
|
199
|
+
owner and claim token so the worker can call `workboard_heartbeat`,
|
|
200
|
+
`workboard_complete`, or `workboard_block` without another actor taking over the
|
|
201
|
+
card.
|
|
202
|
+
|
|
203
|
+
When a worker starts successfully, Workboard stores the session key, run id,
|
|
204
|
+
engine, mode, model label, status, and worker log on the card. The session key
|
|
205
|
+
is deterministic for the board and card, which makes repeated dispatches route
|
|
206
|
+
back to the same worker lane instead of creating unrelated sessions.
|
|
207
|
+
|
|
208
|
+
If a worker cannot be started after a card is claimed, Workboard blocks the
|
|
209
|
+
card, clears the claim, records the run-start failure, and appends a worker log
|
|
210
|
+
line. That failure is visible in the dashboard, CLI JSON, agent tools, and card
|
|
211
|
+
diagnostics.
|
|
212
|
+
|
|
213
|
+
### Dispatch entry points
|
|
214
|
+
|
|
215
|
+
Ready-card worker starts can happen from:
|
|
216
|
+
|
|
217
|
+
- the dashboard dispatch action
|
|
218
|
+
- `openclaw workboard dispatch`
|
|
219
|
+
- `/workboard dispatch` on a command-capable channel
|
|
220
|
+
|
|
221
|
+
All three entry points use the Gateway subagent runtime when the Gateway is
|
|
222
|
+
available. The CLI has one extra operator fallback: if the Gateway is offline or
|
|
223
|
+
does not expose the Workboard dispatch method and no explicit `--url` or
|
|
224
|
+
`--token` target was provided, it runs data-only dispatch against local SQLite
|
|
225
|
+
state. That fallback can promote dependencies, clean stale claims, and block
|
|
226
|
+
timed-out runs, but it cannot start workers.
|
|
227
|
+
|
|
228
|
+
Board metadata can include orchestration settings such as `autoDecompose`,
|
|
229
|
+
`autoDecomposePerDispatch`, `defaultAssignee`, and `orchestratorProfile`.
|
|
230
|
+
OpenClaw records the orchestration intent and exposes it in worker context; the
|
|
231
|
+
actual specification and decomposition still happens through the normal
|
|
232
|
+
Workboard tools.
|
|
233
|
+
|
|
234
|
+
## CLI and slash command
|
|
235
|
+
|
|
236
|
+
The plugin registers a root CLI command:
|
|
237
|
+
|
|
238
|
+
```bash
|
|
239
|
+
openclaw workboard list
|
|
240
|
+
openclaw workboard create "Fix stale card lifecycle" --priority high --labels bug,workboard
|
|
241
|
+
openclaw workboard show <card-id>
|
|
242
|
+
openclaw workboard dispatch
|
|
243
|
+
```
|
|
244
|
+
|
|
245
|
+
`openclaw workboard dispatch` calls the running Gateway so worker starts use the
|
|
246
|
+
same subagent runtime as the dashboard. If the Gateway is unavailable, it falls
|
|
247
|
+
back to data-only dispatch so dependency promotion, stale-claim cleanup, and
|
|
248
|
+
timeout blocking can still run. Auth, permission, and validation failures still
|
|
249
|
+
surface as command errors, as do failures for explicit `--url` or `--token`
|
|
250
|
+
targets.
|
|
251
|
+
|
|
252
|
+
The `/workboard` slash command supports the same compact operator path:
|
|
253
|
+
`/workboard list`, `/workboard show <card-id>`, `/workboard create <title>`, and
|
|
254
|
+
`/workboard dispatch`. List and show are read operations for authorized command
|
|
255
|
+
senders. Create and dispatch require owner status on chat surfaces or a Gateway
|
|
256
|
+
client with `operator.write` or `operator.admin`.
|
|
257
|
+
|
|
258
|
+
See [Workboard CLI](/cli/workboard) for command flags, JSON output, Gateway
|
|
259
|
+
fallback behavior, unambiguous id-prefix handling, dispatch selection rules, and
|
|
260
|
+
troubleshooting.
|
|
261
|
+
|
|
262
|
+
## Session lifecycle sync
|
|
263
|
+
|
|
264
|
+
Cards can be linked to existing dashboard sessions or to the session created
|
|
265
|
+
when you start work from a card. Linked cards show the session lifecycle inline:
|
|
266
|
+
running, stale, linked idle, done, failed, or missing.
|
|
267
|
+
|
|
268
|
+
If the linked session is missing, the card stays linked for context and still
|
|
269
|
+
offers start controls so you can restart work into a fresh dashboard session.
|
|
270
|
+
If an active linked session stops reporting recent activity, Workboard marks the
|
|
271
|
+
card stale and stores the marker as card metadata until the lifecycle clears it.
|
|
272
|
+
|
|
273
|
+
You can also capture an existing dashboard session from the Sessions tab with
|
|
274
|
+
Add to Workboard. The card is linked to that session, uses the session label or
|
|
275
|
+
recent user prompt as the title, and seeds notes from the recent user prompt plus
|
|
276
|
+
the latest assistant response when chat history is available.
|
|
277
|
+
|
|
278
|
+
Workboard follows the linked session while the card is still in an active work
|
|
279
|
+
state:
|
|
280
|
+
|
|
281
|
+
- active linked session -> `running`
|
|
282
|
+
- completed linked session -> `review`
|
|
283
|
+
- failed, killed, timed out, or aborted linked session -> `blocked`
|
|
284
|
+
|
|
285
|
+
Manual review states win. If you move a card to `review`, `blocked`, or `done`,
|
|
286
|
+
Workboard stops auto-moving that card until you move it back to `todo` or
|
|
287
|
+
`running`.
|
|
288
|
+
|
|
289
|
+
## Dashboard workflow
|
|
290
|
+
|
|
291
|
+
1. Open the Workboard tab in the Control UI.
|
|
292
|
+
2. Create a card with a title, notes, priority, labels, optional agent, and
|
|
293
|
+
optional linked session.
|
|
294
|
+
3. Or open Sessions and choose Add to Workboard for an existing session.
|
|
295
|
+
4. Drag the card between columns or focus the compact status control on the card
|
|
296
|
+
and use its menu or ArrowLeft/ArrowRight.
|
|
297
|
+
5. Start work from the card to create or reuse a dashboard session.
|
|
298
|
+
6. Open the linked session from the card while the agent works.
|
|
299
|
+
7. Let lifecycle sync move running work into review or blocked, then manually
|
|
300
|
+
move the card to done when accepted.
|
|
301
|
+
|
|
302
|
+
Starting a card uses normal Gateway sessions. The Workboard plugin only stores
|
|
303
|
+
card metadata and links; the conversation transcript, model selection, and run
|
|
304
|
+
lifecycle stay owned by the regular session system.
|
|
305
|
+
|
|
306
|
+
Use Stop on a live linked card to abort the active session run. Workboard marks
|
|
307
|
+
that card `blocked` so it remains visible for follow-up.
|
|
308
|
+
|
|
309
|
+
New cards can start from Workboard templates for bugfixes, docs, releases, PR
|
|
310
|
+
reviews, or plugin work. Templates prefill title, notes, labels, and priority,
|
|
311
|
+
and the selected template id is stored as card metadata.
|
|
312
|
+
|
|
313
|
+
## Permissions
|
|
314
|
+
|
|
315
|
+
The plugin registers Gateway RPC methods under the `workboard.*` namespace:
|
|
316
|
+
|
|
317
|
+
- `workboard.cards.list` requires `operator.read`
|
|
318
|
+
- `workboard.cards.export` requires `operator.read`
|
|
319
|
+
- `workboard.cards.diagnostics` requires `operator.read`
|
|
320
|
+
- `workboard.cards.diagnostics.refresh` requires `operator.write`
|
|
321
|
+
- attachment list/get and notification event reads require `operator.read`
|
|
322
|
+
- notification cursor advancement requires `operator.write`
|
|
323
|
+
- create, update, move, delete, comment, link, dependency link, proof, artifact,
|
|
324
|
+
attachment add/delete, worker log, protocol violation, claim, heartbeat,
|
|
325
|
+
release, complete, block, unblock, dispatch, bulk, and archive methods require
|
|
326
|
+
`operator.write`
|
|
327
|
+
|
|
328
|
+
Browsers connected with read-only operator access can inspect the board but
|
|
329
|
+
cannot mutate cards.
|
|
330
|
+
|
|
331
|
+
## Configuration
|
|
332
|
+
|
|
333
|
+
Workboard has no plugin-specific config today. Enable or disable it with the
|
|
334
|
+
standard plugin entry:
|
|
335
|
+
|
|
336
|
+
```json5
|
|
337
|
+
{
|
|
338
|
+
plugins: {
|
|
339
|
+
entries: {
|
|
340
|
+
workboard: {
|
|
341
|
+
enabled: true,
|
|
342
|
+
config: {},
|
|
343
|
+
},
|
|
344
|
+
},
|
|
345
|
+
},
|
|
346
|
+
}
|
|
347
|
+
```
|
|
348
|
+
|
|
349
|
+
Disable it again with:
|
|
350
|
+
|
|
351
|
+
```bash
|
|
352
|
+
openclaw plugins disable workboard
|
|
353
|
+
openclaw gateway restart
|
|
354
|
+
```
|
|
355
|
+
|
|
356
|
+
## Troubleshooting
|
|
357
|
+
|
|
358
|
+
### The tab says Workboard is unavailable
|
|
359
|
+
|
|
360
|
+
Check plugin policy:
|
|
361
|
+
|
|
362
|
+
```bash
|
|
363
|
+
openclaw plugins inspect workboard --runtime --json
|
|
364
|
+
```
|
|
365
|
+
|
|
366
|
+
If `plugins.allow` is configured, add `workboard` to that allowlist. If
|
|
367
|
+
`plugins.deny` contains `workboard`, remove it before enabling the plugin.
|
|
368
|
+
|
|
369
|
+
### Cards do not save
|
|
370
|
+
|
|
371
|
+
Confirm the browser connection has `operator.write` access. Read-only operator
|
|
372
|
+
sessions can list cards but cannot create, edit, move, or delete them.
|
|
373
|
+
|
|
374
|
+
### Starting a card does not open the expected session
|
|
375
|
+
|
|
376
|
+
Workboard creates links to normal dashboard sessions. Check the card's agent id
|
|
377
|
+
and linked session, then open the Sessions or Chat view to inspect the actual
|
|
378
|
+
run state.
|
|
379
|
+
|
|
380
|
+
### Dispatch does not start a worker
|
|
381
|
+
|
|
382
|
+
Confirm there is at least one `ready` card without an active claim:
|
|
383
|
+
|
|
384
|
+
```bash
|
|
385
|
+
openclaw workboard list --status ready
|
|
386
|
+
```
|
|
387
|
+
|
|
388
|
+
If the CLI reports data-only dispatch, start or restart the Gateway and retry.
|
|
389
|
+
Data-only dispatch updates local board state but cannot start subagent worker
|
|
390
|
+
runs.
|
|
391
|
+
|
|
392
|
+
Cards can also be skipped when another card for the same owner or agent is
|
|
393
|
+
already running or waiting for review. Complete, block, or release that active
|
|
394
|
+
work before dispatching more work for the same owner.
|
|
395
|
+
|
|
396
|
+
## Related
|
|
397
|
+
|
|
398
|
+
- [Control UI](/web/control-ui)
|
|
399
|
+
- [Workboard CLI](/cli/workboard)
|
|
400
|
+
- [Plugins](/tools/plugin)
|
|
401
|
+
- [Manage plugins](/plugins/manage-plugins)
|
|
402
|
+
- [Sessions](/concepts/session)
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
---
|
|
2
|
+
summary: "Zalo Personal plugin: QR login + messaging via native zca-js (plugin install + channel config + tool)"
|
|
3
|
+
read_when:
|
|
4
|
+
- You want Zalo Personal (unofficial) support in OpenClaw
|
|
5
|
+
- You are configuring or developing the zalouser plugin
|
|
6
|
+
title: "Zalo personal plugin"
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
Zalo Personal support for OpenClaw via a plugin, using native `zca-js` to automate a normal Zalo user account.
|
|
10
|
+
|
|
11
|
+
<Warning>
|
|
12
|
+
Unofficial automation may lead to account suspension or ban. Use at your own risk.
|
|
13
|
+
</Warning>
|
|
14
|
+
|
|
15
|
+
## Naming
|
|
16
|
+
|
|
17
|
+
Channel id is `zalouser` to make it explicit this automates a **personal Zalo user account** (unofficial). We keep `zalo` reserved for a potential future official Zalo API integration.
|
|
18
|
+
|
|
19
|
+
## Where it runs
|
|
20
|
+
|
|
21
|
+
This plugin runs **inside the Gateway process**.
|
|
22
|
+
|
|
23
|
+
If you use a remote Gateway, install/configure it on the **machine running the Gateway**, then restart the Gateway.
|
|
24
|
+
|
|
25
|
+
No external `zca`/`openzca` CLI binary is required.
|
|
26
|
+
|
|
27
|
+
## Install
|
|
28
|
+
|
|
29
|
+
### Option A: install from npm
|
|
30
|
+
|
|
31
|
+
```bash
|
|
32
|
+
openclaw plugins install @openclaw/zalouser
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
Use the bare package to follow the current official release tag. Pin an exact
|
|
36
|
+
version only when you need a reproducible install.
|
|
37
|
+
|
|
38
|
+
Restart the Gateway afterwards.
|
|
39
|
+
|
|
40
|
+
### Option B: install from a local folder (dev)
|
|
41
|
+
|
|
42
|
+
```bash
|
|
43
|
+
PLUGIN_SRC=./path/to/local/zalouser-plugin
|
|
44
|
+
openclaw plugins install "$PLUGIN_SRC"
|
|
45
|
+
cd "$PLUGIN_SRC" && pnpm install
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
Restart the Gateway afterwards.
|
|
49
|
+
|
|
50
|
+
## Config
|
|
51
|
+
|
|
52
|
+
Channel config lives under `channels.zalouser` (not `plugins.entries.*`):
|
|
53
|
+
|
|
54
|
+
```json5
|
|
55
|
+
{
|
|
56
|
+
channels: {
|
|
57
|
+
zalouser: {
|
|
58
|
+
enabled: true,
|
|
59
|
+
dmPolicy: "pairing",
|
|
60
|
+
},
|
|
61
|
+
},
|
|
62
|
+
}
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
## CLI
|
|
66
|
+
|
|
67
|
+
```bash
|
|
68
|
+
openclaw channels login --channel zalouser
|
|
69
|
+
openclaw channels logout --channel zalouser
|
|
70
|
+
openclaw channels status --probe
|
|
71
|
+
openclaw message send --channel zalouser --target <threadId> --message "Hello from OpenClaw"
|
|
72
|
+
openclaw directory peers list --channel zalouser --query "name"
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
## Agent tool
|
|
76
|
+
|
|
77
|
+
Tool name: `zalouser`
|
|
78
|
+
|
|
79
|
+
Actions: `send`, `image`, `link`, `friends`, `groups`, `me`, `status`
|
|
80
|
+
|
|
81
|
+
Channel message actions also support `react` for message reactions.
|
|
82
|
+
|
|
83
|
+
## Related
|
|
84
|
+
|
|
85
|
+
- [Building plugins](/plugins/building-plugins)
|
|
86
|
+
- [ClawHub](/clawhub)
|