@poolzin/pool-bot 1.28.0 → 2026.1.26
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 +1123 -32
- package/README.md +37 -47
- package/assets/chrome-extension/background.js +5 -5
- package/assets/chrome-extension/manifest.json +3 -3
- package/assets/chrome-extension/options.html +6 -5
- package/assets/chrome-extension/options.js +1 -1
- package/dist/acp/client.js +5 -5
- package/dist/acp/server.js +1 -1
- package/dist/acp/types.js +2 -2
- package/dist/agents/agent-paths.js +3 -3
- package/dist/agents/auth-health.js +6 -2
- package/dist/agents/auth-profiles/doctor.js +1 -1
- package/dist/agents/auth-profiles/external-cli-sync.js +150 -5
- package/dist/agents/auth-profiles/oauth.js +7 -26
- package/dist/agents/auth-profiles/paths.js +3 -3
- package/dist/agents/auth-profiles/store.js +13 -5
- package/dist/agents/bash-tools.shared.js +1 -8
- package/dist/agents/cli-backends.js +0 -8
- package/dist/agents/cli-runner/helpers.js +3 -3
- package/dist/agents/cli-runner.js +2 -2
- package/dist/agents/compaction.js +0 -3
- package/dist/agents/context.js +4 -4
- package/dist/agents/docs-path.js +3 -3
- package/dist/agents/identity.js +1 -1
- package/dist/agents/memory-search.js +2 -7
- package/dist/agents/minimax-vlm.js +1 -1
- package/dist/agents/model-auth.js +1 -1
- package/dist/agents/model-catalog.js +4 -4
- package/dist/agents/model-fallback.js +0 -22
- package/dist/agents/model-selection.js +1 -1
- package/dist/agents/models-config.js +3 -3
- package/dist/agents/models-config.providers.js +4 -4
- package/dist/agents/pi-embedded-helpers/openai.js +1 -1
- package/dist/agents/pi-embedded-runner/cache-ttl.js +1 -1
- package/dist/agents/pi-embedded-runner/compact.js +8 -8
- package/dist/agents/pi-embedded-runner/extensions.js +0 -5
- package/dist/agents/pi-embedded-runner/model.js +2 -2
- package/dist/agents/pi-embedded-runner/run/attempt.js +6 -10
- package/dist/agents/pi-embedded-runner/run.js +4 -4
- package/dist/agents/pi-embedded-runner/sandbox-info.js +4 -1
- package/dist/agents/pi-embedded-runner/utils.js +1 -1
- package/dist/agents/pi-embedded-utils.js +1 -7
- package/dist/agents/pi-extensions/compaction-safeguard.js +3 -32
- package/dist/agents/pi-tools.js +15 -25
- package/dist/agents/pi-tools.policy.js +1 -34
- package/dist/agents/pi-tools.read.js +2 -2
- package/dist/agents/sandbox/browser.js +7 -5
- package/dist/agents/sandbox/config.js +12 -0
- package/dist/agents/sandbox/constants.js +7 -7
- package/dist/agents/sandbox/context.js +3 -3
- package/dist/agents/sandbox/docker.js +8 -8
- package/dist/agents/sandbox/runtime-status.js +1 -1
- package/dist/agents/session-transcript-repair.js +1 -1
- package/dist/agents/session-write-lock.js +0 -68
- package/dist/agents/skills/config.js +8 -9
- package/dist/agents/skills/env-overrides.js +1 -1
- package/dist/agents/skills/frontmatter.js +14 -15
- package/dist/agents/skills/workspace.js +7 -7
- package/dist/agents/skills-install.js +1 -1
- package/dist/agents/skills-status.js +12 -12
- package/dist/agents/subagent-registry.store.js +2 -2
- package/dist/agents/system-prompt.js +32 -21
- package/dist/agents/tool-images.js +1 -1
- package/dist/agents/tool-policy.js +2 -8
- package/dist/agents/tools/browser-tool.js +79 -19
- package/dist/agents/tools/browser-tool.schema.js +2 -1
- package/dist/agents/tools/cron-tool.js +1 -44
- package/dist/agents/tools/discord-actions-guild.js +1 -5
- package/dist/agents/tools/image-tool.js +2 -2
- package/dist/agents/tools/message-tool.js +0 -1
- package/dist/agents/tools/sessions-send-helpers.js +2 -17
- package/dist/agents/tools/telegram-actions.js +1 -93
- package/dist/agents/tools/web-fetch.js +103 -123
- package/dist/agents/tools/web-search.js +7 -7
- package/dist/agents/workspace.js +0 -36
- package/dist/auto-reply/commands-registry.data.js +3 -68
- package/dist/auto-reply/commands-registry.js +11 -14
- package/dist/auto-reply/reply/agent-runner-execution.js +3 -21
- package/dist/auto-reply/reply/agent-runner-memory.js +0 -5
- package/dist/auto-reply/reply/bash-command.js +2 -2
- package/dist/auto-reply/reply/commands-context-report.js +2 -2
- package/dist/auto-reply/reply/commands-info.js +5 -50
- package/dist/auto-reply/reply/commands-session.js +4 -4
- package/dist/auto-reply/reply/commands-tts.js +63 -61
- package/dist/auto-reply/reply/directive-handling.shared.js +1 -1
- package/dist/auto-reply/reply/dispatch-from-config.js +1 -65
- package/dist/auto-reply/reply/followup-runner.js +0 -5
- package/dist/auto-reply/reply/get-reply-inline-actions.js +2 -2
- package/dist/auto-reply/reply/get-reply-run.js +0 -4
- package/dist/auto-reply/reply/groups.js +1 -1
- package/dist/auto-reply/reply/history.js +0 -23
- package/dist/auto-reply/reply/reply-elevated.js +1 -1
- package/dist/auto-reply/reply/session-updates.js +1 -6
- package/dist/auto-reply/status.js +49 -141
- package/dist/browser/bridge-server.js +3 -1
- package/dist/browser/client-actions-core.js +7 -13
- package/dist/browser/client-actions-observe.js +8 -14
- package/dist/browser/client-actions-state.js +15 -21
- package/dist/browser/client-fetch.js +61 -74
- package/dist/browser/client.js +21 -19
- package/dist/browser/config.js +26 -13
- package/dist/browser/constants.js +1 -1
- package/dist/browser/extension-relay.js +3 -3
- package/dist/browser/pw-session.js +4 -41
- package/dist/browser/pw-tools-core.downloads.js +1 -1
- package/dist/browser/pw-tools-core.interactions.js +5 -5
- package/dist/browser/pw-tools-core.responses.js +1 -1
- package/dist/browser/routes/agent.act.js +0 -13
- package/dist/browser/routes/agent.debug.js +1 -1
- package/dist/browser/routes/basic.js +1 -0
- package/dist/browser/server-context.js +3 -3
- package/dist/browser/server.js +9 -7
- package/dist/build-info.json +3 -3
- package/dist/canvas-host/a2ui/.bundle.hash +1 -1
- package/dist/canvas-host/a2ui/a2ui.bundle.js +1618 -1620
- package/dist/canvas-host/a2ui/index.html +28 -28
- package/dist/canvas-host/a2ui.js +19 -25
- package/dist/canvas-host/server.js +32 -66
- package/dist/channels/plugins/actions/discord/handle-action.guild-admin.js +1 -5
- package/dist/channels/plugins/actions/telegram.js +7 -60
- package/dist/channels/plugins/catalog.js +4 -6
- package/dist/channels/plugins/group-mentions.js +1 -48
- package/dist/channels/plugins/helpers.js +2 -2
- package/dist/channels/plugins/message-action-names.js +0 -1
- package/dist/channels/plugins/onboarding/imessage.js +1 -1
- package/dist/channels/plugins/onboarding/signal.js +2 -2
- package/dist/channels/plugins/onboarding/slack.js +4 -4
- package/dist/channels/plugins/onboarding/telegram.js +9 -17
- package/dist/channels/plugins/onboarding/whatsapp.js +4 -4
- package/dist/channels/plugins/outbound/telegram.js +0 -38
- package/dist/channels/plugins/pairing-message.js +1 -1
- package/dist/channels/plugins/status-issues/bluebubbles.js +1 -1
- package/dist/channels/plugins/status-issues/whatsapp.js +2 -2
- package/dist/channels/registry.js +1 -1
- package/dist/cli/acp-cli.js +2 -2
- package/dist/cli/argv.js +7 -14
- package/dist/cli/banner.js +1 -3
- package/dist/cli/browser-cli-actions-input/register.element.js +44 -72
- package/dist/cli/browser-cli-actions-input/register.files-downloads.js +35 -55
- package/dist/cli/browser-cli-actions-input/register.form-wait-eval.js +28 -41
- package/dist/cli/browser-cli-actions-input/register.navigation.js +14 -23
- package/dist/cli/browser-cli-actions-input/shared.js +3 -10
- package/dist/cli/browser-cli-actions-observe.js +21 -29
- package/dist/cli/browser-cli-debug.js +35 -49
- package/dist/cli/browser-cli-examples.js +29 -29
- package/dist/cli/browser-cli-extension.js +8 -8
- package/dist/cli/browser-cli-inspect.js +17 -23
- package/dist/cli/browser-cli-manage.js +56 -106
- package/dist/cli/browser-cli-shared.js +1 -34
- package/dist/cli/browser-cli-state.cookies-storage.js +39 -53
- package/dist/cli/browser-cli-state.js +64 -90
- package/dist/cli/browser-cli.js +5 -4
- package/dist/cli/channels-cli.js +1 -1
- package/dist/cli/command-format.js +7 -11
- package/dist/cli/config-cli.js +2 -2
- package/dist/cli/cron-cli/register.js +1 -1
- package/dist/cli/daemon-cli/install.js +1 -1
- package/dist/cli/daemon-cli/register.js +1 -1
- package/dist/cli/daemon-cli/shared.js +3 -5
- package/dist/cli/daemon-cli/status.print.js +6 -6
- package/dist/cli/directory-cli.js +1 -1
- package/dist/cli/dns-cli.js +7 -7
- package/dist/cli/docs-cli.js +2 -2
- package/dist/cli/exec-approvals-cli.js +2 -2
- package/dist/cli/gateway-cli/dev.js +4 -4
- package/dist/cli/gateway-cli/register.js +1 -1
- package/dist/cli/gateway-cli/run.js +8 -11
- package/dist/cli/gateway-cli/shared.js +4 -4
- package/dist/cli/hooks-cli.js +3 -3
- package/dist/cli/logs-cli.js +3 -3
- package/dist/cli/memory-cli.js +1 -1
- package/dist/cli/models-cli.js +2 -2
- package/dist/cli/node-cli/daemon.js +2 -2
- package/dist/cli/node-cli/register.js +1 -1
- package/dist/cli/nodes-camera.js +1 -3
- package/dist/cli/nodes-canvas.js +1 -3
- package/dist/cli/nodes-cli/register.canvas.js +1 -1
- package/dist/cli/nodes-cli/register.js +1 -1
- package/dist/cli/nodes-screen.js +1 -1
- package/dist/cli/pairing-cli.js +3 -3
- package/dist/cli/plugin-registry.js +2 -2
- package/dist/cli/plugins-cli.js +3 -3
- package/dist/cli/profile.js +1 -1
- package/dist/cli/program/config-guard.js +1 -1
- package/dist/cli/program/help.js +14 -13
- package/dist/cli/program/message/register.send.js +1 -2
- package/dist/cli/program/preaction.js +2 -4
- package/dist/cli/program/register.agent.js +12 -12
- package/dist/cli/program/register.configure.js +1 -1
- package/dist/cli/program/register.maintenance.js +4 -4
- package/dist/cli/program/register.message.js +5 -5
- package/dist/cli/program/register.onboard.js +3 -5
- package/dist/cli/program/register.setup.js +2 -2
- package/dist/cli/program/register.status-health-sessions.js +13 -13
- package/dist/cli/run-main.js +4 -11
- package/dist/cli/sandbox-cli.js +19 -19
- package/dist/cli/security-cli.js +8 -18
- package/dist/cli/skills-cli.js +3 -3
- package/dist/cli/system-cli.js +1 -1
- package/dist/cli/tagline.js +1 -1
- package/dist/cli/tui-cli.js +1 -1
- package/dist/cli/update-cli.js +42 -58
- package/dist/cli/webhooks-cli.js +6 -6
- package/dist/commands/agent-via-gateway.js +1 -1
- package/dist/commands/agent.js +1 -2
- package/dist/commands/agents.command-shared.js +1 -1
- package/dist/commands/agents.commands.add.js +3 -2
- package/dist/commands/agents.commands.list.js +1 -1
- package/dist/commands/auth-choice-options.js +54 -4
- package/dist/commands/auth-choice.apply.anthropic.js +109 -6
- package/dist/commands/auth-choice.apply.openai.js +33 -1
- package/dist/commands/auth-choice.apply.plugin-provider.js +2 -2
- package/dist/commands/channels/list.js +2 -2
- package/dist/commands/channels/shared.js +1 -1
- package/dist/commands/channels/status.js +1 -1
- package/dist/commands/chutes-oauth.js +1 -1
- package/dist/commands/configure.channels.js +4 -4
- package/dist/commands/configure.gateway-auth.js +8 -1
- package/dist/commands/configure.gateway.js +10 -1
- package/dist/commands/configure.wizard.js +11 -11
- package/dist/commands/daemon-install-helpers.js +1 -1
- package/dist/commands/dashboard.js +1 -1
- package/dist/commands/docs.js +5 -5
- package/dist/commands/doctor-auth.js +3 -122
- package/dist/commands/doctor-config-flow.js +7 -7
- package/dist/commands/doctor-format.js +2 -2
- package/dist/commands/doctor-gateway-daemon-flow.js +1 -1
- package/dist/commands/doctor-gateway-services.js +3 -3
- package/dist/commands/doctor-security.js +1 -48
- package/dist/commands/doctor-ui.js +2 -2
- package/dist/commands/doctor-update.js +4 -4
- package/dist/commands/doctor-workspace-status.js +2 -2
- package/dist/commands/doctor-workspace.js +4 -4
- package/dist/commands/doctor.js +12 -13
- package/dist/commands/gateway-status.js +2 -2
- package/dist/commands/models/auth.js +22 -23
- package/dist/commands/models/list.probe.js +2 -2
- package/dist/commands/models/list.registry.js +4 -4
- package/dist/commands/models/list.status-command.js +9 -8
- package/dist/commands/onboard-auth.credentials.js +2 -2
- package/dist/commands/onboard-channels.js +3 -3
- package/dist/commands/onboard-helpers.js +4 -4
- package/dist/commands/onboard-hooks.js +4 -4
- package/dist/commands/onboard-non-interactive/local/auth-choice.js +34 -38
- package/dist/commands/onboard-non-interactive/local/gateway-config.js +4 -7
- package/dist/commands/onboard-non-interactive/local.js +1 -1
- package/dist/commands/onboard-non-interactive/remote.js +1 -1
- package/dist/commands/onboard-non-interactive.js +1 -1
- package/dist/commands/onboard-remote.js +2 -2
- package/dist/commands/onboard-skills.js +2 -2
- package/dist/commands/onboard.js +4 -25
- package/dist/commands/onboarding/plugin-install.js +2 -2
- package/dist/commands/reset.js +3 -3
- package/dist/commands/sandbox-display.js +1 -1
- package/dist/commands/sandbox-explain.js +2 -2
- package/dist/commands/setup.js +2 -2
- package/dist/commands/signal-install.js +2 -2
- package/dist/commands/status-all/diagnosis.js +1 -1
- package/dist/commands/status-all/report-lines.js +1 -1
- package/dist/commands/status-all.js +3 -3
- package/dist/commands/status.command.js +9 -9
- package/dist/commands/status.update.js +3 -3
- package/dist/commands/uninstall.js +3 -3
- package/dist/config/config.js +1 -1
- package/dist/config/group-policy.js +0 -69
- package/dist/config/io.js +5 -17
- package/dist/config/legacy.migrations.part-3.js +0 -3
- package/dist/config/logging.js +3 -3
- package/dist/config/paths.js +13 -43
- package/dist/config/schema.js +9 -21
- package/dist/config/sessions/transcript.js +1 -1
- package/dist/config/validation.js +2 -2
- package/dist/config/version.js +4 -4
- package/dist/config/zod-schema.agent-defaults.js +0 -1
- package/dist/config/zod-schema.agent-runtime.js +7 -39
- package/dist/config/zod-schema.hooks.js +0 -2
- package/dist/config/zod-schema.js +3 -9
- package/dist/config/zod-schema.providers-core.js +0 -23
- package/dist/config/zod-schema.providers-whatsapp.js +0 -3
- package/dist/control-ui/assets/{index-HlBhZmfj.js → index-Cl-Y9zqE.js} +578 -620
- package/dist/control-ui/assets/index-Cl-Y9zqE.js.map +1 -0
- package/dist/control-ui/assets/index-DEPfFcOb.css +1 -0
- package/dist/control-ui/index.html +4 -4
- package/dist/cron/isolated-agent/run.js +3 -38
- package/dist/daemon/constants.js +12 -12
- package/dist/daemon/inspect.js +11 -11
- package/dist/daemon/program-args.js +1 -1
- package/dist/daemon/systemd-hints.js +1 -1
- package/dist/daemon/systemd-unit.js +1 -1
- package/dist/discord/monitor/listeners.js +1 -25
- package/dist/discord/monitor/native-command.js +5 -7
- package/dist/discord/monitor/provider.js +7 -21
- package/dist/entry.js +4 -4
- package/dist/gateway/auth.js +19 -52
- package/dist/gateway/hooks-mapping.js +4 -18
- package/dist/gateway/hooks.js +7 -5
- package/dist/gateway/http-utils.js +5 -3
- package/dist/gateway/net.js +1 -1
- package/dist/gateway/openai-http.js +3 -3
- package/dist/gateway/openresponses-http.js +4 -4
- package/dist/gateway/protocol/client-info.js +5 -5
- package/dist/gateway/protocol/schema/logs-chat.js +1 -1
- package/dist/gateway/server/health-state.js +3 -3
- package/dist/gateway/server/hooks.js +0 -1
- package/dist/gateway/server/ws-connection/message-handler.js +35 -44
- package/dist/gateway/server-browser.js +3 -14
- package/dist/gateway/server-chat.js +2 -28
- package/dist/gateway/server-discovery-runtime.js +17 -25
- package/dist/gateway/server-discovery.js +5 -5
- package/dist/gateway/server-http.js +3 -9
- package/dist/gateway/server-methods/agent.js +0 -2
- package/dist/gateway/server-methods/chat.js +0 -5
- package/dist/gateway/server-methods/config.js +8 -8
- package/dist/gateway/server-methods/logs.js +1 -1
- package/dist/gateway/server-methods/skills.js +3 -3
- package/dist/gateway/server-methods/update.js +2 -2
- package/dist/gateway/server-methods-list.js +0 -1
- package/dist/gateway/server-methods.js +0 -3
- package/dist/gateway/server-plugins.js +2 -2
- package/dist/gateway/server-restart-sentinel.js +5 -10
- package/dist/gateway/server-runtime-config.js +2 -5
- package/dist/gateway/server.impl.js +6 -7
- package/dist/gateway/session-utils.js +11 -31
- package/dist/gateway/test-helpers.mocks.js +5 -5
- package/dist/gateway/test-helpers.server.js +9 -28
- package/dist/gateway/tools-invoke-http.js +8 -15
- package/dist/hooks/bundled/boot-md/HOOK.md +3 -3
- package/dist/hooks/bundled/command-logger/HOOK.md +5 -5
- package/dist/hooks/bundled/session-memory/HOOK.md +4 -4
- package/dist/hooks/bundled/session-memory/handler.js +2 -2
- package/dist/hooks/bundled/soul-evil/HOOK.md +5 -5
- package/dist/hooks/bundled-dir.js +1 -1
- package/dist/hooks/config.js +7 -8
- package/dist/hooks/frontmatter.js +15 -16
- package/dist/hooks/gmail-ops.js +4 -4
- package/dist/hooks/hooks-status.js +13 -13
- package/dist/hooks/install.js +7 -8
- package/dist/hooks/internal-hooks.js +1 -1
- package/dist/hooks/llm-slug-generator.js +1 -1
- package/dist/hooks/loader.js +3 -3
- package/dist/hooks/plugin-hooks.js +8 -8
- package/dist/hooks/workspace.js +9 -10
- package/dist/imessage/monitor/monitor-provider.js +2 -2
- package/dist/index.js +4 -4
- package/dist/infra/agent-events.js +0 -3
- package/dist/infra/bonjour-discovery.js +9 -9
- package/dist/infra/bonjour.js +12 -19
- package/dist/infra/gateway-lock.js +1 -1
- package/dist/infra/heartbeat-visibility.js +0 -14
- package/dist/infra/heartbeat-wake.js +2 -2
- package/dist/infra/machine-name.js +1 -1
- package/dist/infra/net/ssrf.js +1 -77
- package/dist/infra/outbound/message-action-spec.js +0 -1
- package/dist/infra/outbound/targets.js +1 -1
- package/dist/infra/path-env.js +7 -7
- package/dist/infra/ports-format.js +2 -2
- package/dist/infra/ports.js +2 -2
- package/dist/infra/provider-usage.auth.js +4 -2
- package/dist/infra/provider-usage.fetch.claude.js +1 -1
- package/dist/infra/provider-usage.fetch.minimax.js +1 -1
- package/dist/infra/restart-sentinel.js +1 -1
- package/dist/infra/restart.js +1 -1
- package/dist/infra/retry-policy.js +1 -4
- package/dist/infra/runtime-guard.js +2 -2
- package/dist/infra/shell-env.js +1 -1
- package/dist/infra/skills-remote.js +3 -3
- package/dist/infra/tailscale.js +1 -63
- package/dist/infra/tls/gateway.js +1 -1
- package/dist/infra/unhandled-rejections.js +2 -89
- package/dist/infra/update-check.js +4 -2
- package/dist/infra/update-global.js +5 -5
- package/dist/infra/update-runner.js +8 -32
- package/dist/infra/update-startup.js +3 -3
- package/dist/infra/warnings.js +1 -1
- package/dist/infra/widearea-dns.js +10 -10
- package/dist/line/monitor.js +5 -1
- package/dist/line/webhook.js +6 -2
- package/dist/logging/logger.js +4 -4
- package/dist/macos/gateway-daemon.js +2 -2
- package/dist/macos/relay.js +4 -4
- package/dist/media/host.js +1 -1
- package/dist/media/image-ops.js +1 -1
- package/dist/media/input-files.js +32 -40
- package/dist/media/server.js +15 -39
- package/dist/media/store.js +52 -72
- package/dist/media-understanding/attachments.js +1 -1
- package/dist/media-understanding/providers/image.js +2 -2
- package/dist/media-understanding/runner.js +1 -33
- package/dist/memory/batch-gemini.js +1 -1
- package/dist/memory/batch-openai.js +1 -1
- package/dist/memory/embeddings.js +1 -1
- package/dist/node-host/runner.js +56 -60
- package/dist/pairing/pairing-messages.js +2 -2
- package/dist/plugin-sdk/index.js +0 -1
- package/dist/plugins/cli.js +2 -2
- package/dist/plugins/discovery.js +4 -5
- package/dist/plugins/install.js +7 -8
- package/dist/plugins/loader.js +4 -11
- package/dist/plugins/manifest-registry.js +2 -2
- package/dist/plugins/manifest.js +1 -16
- package/dist/plugins/providers.js +2 -2
- package/dist/plugins/registry.js +5 -5
- package/dist/plugins/runtime.js +1 -1
- package/dist/plugins/services.js +3 -3
- package/dist/plugins/status.js +2 -2
- package/dist/plugins/tools.js +2 -2
- package/dist/plugins/update.js +3 -3
- package/dist/providers/qwen-portal-oauth.js +1 -1
- package/dist/routing/session-key.js +12 -17
- package/dist/security/audit-extra.js +69 -116
- package/dist/security/audit-fs.js +0 -78
- package/dist/security/audit.js +88 -121
- package/dist/security/fix.js +8 -93
- package/dist/slack/monitor/media.js +4 -32
- package/dist/slack/monitor/message-handler/dispatch.js +1 -2
- package/dist/slack/monitor/slash.js +3 -3
- package/dist/slack/monitor.test-helpers.js +1 -1
- package/dist/telegram/bot/delivery.js +22 -139
- package/dist/telegram/bot-handlers.js +8 -70
- package/dist/telegram/bot-message-context.js +21 -79
- package/dist/telegram/bot-message-dispatch.js +0 -64
- package/dist/telegram/bot-native-commands.js +94 -244
- package/dist/telegram/bot.js +2 -18
- package/dist/telegram/fetch.js +1 -25
- package/dist/telegram/monitor.js +3 -11
- package/dist/telegram/send.js +4 -148
- package/dist/telegram/webhook-set.js +6 -13
- package/dist/telegram/webhook.js +3 -8
- package/dist/terminal/links.js +1 -1
- package/dist/tts/tts.js +22 -27
- package/dist/tui/components/filterable-select-list.js +1 -1
- package/dist/tui/components/searchable-select-list.js +1 -2
- package/dist/tui/gateway-chat.js +1 -1
- package/dist/tui/tui.js +1 -1
- package/dist/version.js +1 -1
- package/dist/web/active-listener.js +1 -1
- package/dist/web/auth-store.js +1 -1
- package/dist/web/auto-reply/monitor/process-message.js +1 -1
- package/dist/web/auto-reply/monitor.js +1 -1
- package/dist/web/login.js +1 -1
- package/dist/web/session.js +2 -2
- package/dist/wizard/onboarding.finalize.js +14 -14
- package/dist/wizard/onboarding.gateway-config.js +11 -1
- package/dist/wizard/onboarding.js +10 -21
- package/docs/CNAME +1 -1
- package/docs/POOL-BOT.md +119 -0
- package/docs/_config.yml +2 -2
- package/docs/_layouts/default.html +9 -9
- package/docs/assets/terminal.css +0 -3
- package/docs/assets/theme.js +1 -1
- package/docs/automation/auth-monitoring.md +7 -7
- package/docs/automation/cron-jobs.md +13 -13
- package/docs/automation/cron-vs-heartbeat.md +8 -8
- package/docs/automation/gmail-pubsub.md +21 -23
- package/docs/automation/poll.md +6 -6
- package/docs/automation/webhook.md +8 -13
- package/docs/bedrock.md +10 -10
- package/docs/brave-search.md +1 -1
- package/docs/broadcast-groups.md +3 -3
- package/docs/channels/bluebubbles.md +12 -13
- package/docs/channels/discord.md +16 -21
- package/docs/channels/googlechat.md +15 -15
- package/docs/channels/imessage.md +10 -10
- package/docs/channels/index.md +4 -6
- package/docs/channels/location.md +1 -1
- package/docs/channels/matrix.md +13 -13
- package/docs/channels/mattermost.md +8 -8
- package/docs/channels/msteams.md +25 -29
- package/docs/channels/nextcloud-talk.md +7 -7
- package/docs/channels/nostr.md +9 -9
- package/docs/channels/signal.md +9 -9
- package/docs/channels/slack.md +13 -15
- package/docs/channels/telegram.md +20 -149
- package/docs/channels/tlon.md +5 -5
- package/docs/channels/troubleshooting.md +2 -2
- package/docs/channels/whatsapp.md +23 -23
- package/docs/channels/zalo.md +8 -8
- package/docs/channels/zalouser.md +12 -12
- package/docs/cli/acp.md +24 -24
- package/docs/cli/agent.md +6 -6
- package/docs/cli/agents.md +9 -9
- package/docs/cli/approvals.md +13 -13
- package/docs/cli/browser.md +35 -33
- package/docs/cli/channels.md +21 -21
- package/docs/cli/config.md +15 -15
- package/docs/cli/configure.md +6 -6
- package/docs/cli/cron.md +5 -5
- package/docs/cli/dashboard.md +4 -4
- package/docs/cli/devices.md +13 -13
- package/docs/cli/directory.md +12 -12
- package/docs/cli/dns.md +5 -5
- package/docs/cli/docs.md +5 -5
- package/docs/cli/doctor.md +6 -6
- package/docs/cli/gateway.md +24 -24
- package/docs/cli/health.md +5 -5
- package/docs/cli/hooks.md +28 -28
- package/docs/cli/index.md +50 -44
- package/docs/cli/logs.md +6 -6
- package/docs/cli/memory.md +11 -11
- package/docs/cli/message.md +11 -11
- package/docs/cli/models.md +17 -17
- package/docs/cli/node.md +12 -12
- package/docs/cli/nodes.md +14 -14
- package/docs/cli/onboard.md +6 -7
- package/docs/cli/pairing.md +4 -4
- package/docs/cli/plugins.md +16 -16
- package/docs/cli/reset.md +5 -5
- package/docs/cli/sandbox.md +28 -28
- package/docs/cli/security.md +5 -5
- package/docs/cli/sessions.md +5 -5
- package/docs/cli/setup.md +6 -6
- package/docs/cli/skills.md +6 -6
- package/docs/cli/status.md +7 -7
- package/docs/cli/system.md +6 -6
- package/docs/cli/tui.md +5 -5
- package/docs/cli/uninstall.md +5 -5
- package/docs/cli/update.md +20 -20
- package/docs/cli/voicecall.md +9 -9
- package/docs/cli/webhooks.md +5 -5
- package/docs/concepts/agent-loop.md +5 -5
- package/docs/concepts/agent-workspace.md +11 -11
- package/docs/concepts/agent.md +10 -10
- package/docs/concepts/architecture.md +1 -1
- package/docs/concepts/channel-routing.md +2 -2
- package/docs/concepts/compaction.md +5 -5
- package/docs/concepts/context.md +6 -6
- package/docs/concepts/group-messages.md +5 -5
- package/docs/concepts/groups.md +5 -41
- package/docs/concepts/markdown-formatting.md +3 -3
- package/docs/concepts/memory.md +12 -12
- package/docs/concepts/messages.md +4 -4
- package/docs/concepts/model-failover.md +11 -11
- package/docs/concepts/model-providers.md +22 -22
- package/docs/concepts/models.md +26 -26
- package/docs/concepts/multi-agent.md +5 -5
- package/docs/concepts/oauth.md +55 -28
- package/docs/concepts/presence.md +2 -2
- package/docs/concepts/retry.md +1 -1
- package/docs/concepts/session-pruning.md +1 -1
- package/docs/concepts/session-tool.md +4 -4
- package/docs/concepts/session.md +11 -11
- package/docs/concepts/streaming.md +3 -3
- package/docs/concepts/system-prompt.md +11 -11
- package/docs/concepts/timezone.md +2 -2
- package/docs/concepts/typebox.md +2 -2
- package/docs/concepts/typing-indicators.md +2 -2
- package/docs/concepts/usage-tracking.md +3 -3
- package/docs/date-time.md +2 -2
- package/docs/debug/node-issue.md +4 -4
- package/docs/debugging.md +9 -9
- package/docs/diagnostics/flags.md +5 -5
- package/docs/docs.json +7 -37
- package/docs/environment.md +3 -3
- package/docs/experiments/plans/cron-add-hardening.md +1 -1
- package/docs/experiments/plans/openresponses-gateway.md +2 -2
- package/docs/experiments/research/memory.md +6 -6
- package/docs/gateway/authentication.md +54 -30
- package/docs/gateway/background-process.md +1 -1
- package/docs/gateway/bonjour.md +21 -21
- package/docs/gateway/bridge-protocol.md +2 -2
- package/docs/gateway/cli-backends.md +12 -13
- package/docs/gateway/configuration-examples.md +10 -10
- package/docs/gateway/configuration.md +107 -120
- package/docs/gateway/discovery.md +6 -6
- package/docs/gateway/doctor.md +21 -21
- package/docs/gateway/gateway-lock.md +1 -1
- package/docs/gateway/health.md +9 -9
- package/docs/gateway/heartbeat.md +5 -5
- package/docs/gateway/index.md +51 -51
- package/docs/gateway/local-models.md +2 -2
- package/docs/gateway/logging.md +8 -8
- package/docs/gateway/multiple-gateways.md +19 -19
- package/docs/gateway/openai-http-api.md +10 -10
- package/docs/gateway/openresponses-http-api.md +10 -10
- package/docs/gateway/pairing.md +5 -5
- package/docs/gateway/protocol.md +4 -5
- package/docs/gateway/remote-gateway-readme.md +8 -8
- package/docs/gateway/remote.md +4 -4
- package/docs/gateway/sandbox-vs-tool-policy-vs-elevated.md +7 -10
- package/docs/gateway/sandboxing.md +5 -7
- package/docs/gateway/{security/index.md → security.md} +63 -143
- package/docs/gateway/tailscale.md +35 -16
- package/docs/gateway/tools-invoke-http-api.md +3 -3
- package/docs/gateway/troubleshooting.md +106 -101
- package/docs/help/faq.md +312 -303
- package/docs/help/troubleshooting.md +15 -15
- package/docs/hooks/soul-evil.md +2 -2
- package/docs/hooks.md +44 -44
- package/docs/index.md +33 -33
- package/docs/install/ansible.md +35 -35
- package/docs/install/development-channels.md +10 -10
- package/docs/install/docker.md +27 -27
- package/docs/install/index.md +27 -28
- package/docs/install/installer.md +21 -21
- package/docs/install/nix.md +16 -16
- package/docs/install/node.md +6 -7
- package/docs/install/uninstall.md +21 -21
- package/docs/install/updating.md +47 -48
- package/docs/logging.md +58 -58
- package/docs/multi-agent-sandbox-tools.md +5 -5
- package/docs/network.md +1 -1
- package/docs/nodes/audio.md +2 -2
- package/docs/nodes/camera.md +18 -18
- package/docs/nodes/images.md +4 -4
- package/docs/nodes/index.md +50 -50
- package/docs/nodes/location-command.md +2 -2
- package/docs/nodes/media-understanding.md +5 -5
- package/docs/nodes/talk.md +1 -1
- package/docs/nodes/voicewake.md +1 -1
- package/docs/perplexity.md +2 -2
- package/docs/platforms/android.md +13 -13
- package/docs/platforms/exe-dev.md +23 -23
- package/docs/platforms/fly.md +18 -129
- package/docs/platforms/hetzner.md +20 -20
- package/docs/platforms/index.md +8 -8
- package/docs/platforms/ios.md +13 -13
- package/docs/platforms/linux.md +11 -11
- package/docs/platforms/mac/bundled-gateway.md +11 -11
- package/docs/platforms/mac/canvas.md +14 -14
- package/docs/platforms/mac/child-process.md +1 -1
- package/docs/platforms/mac/dev-setup.md +10 -10
- package/docs/platforms/mac/health.md +2 -2
- package/docs/platforms/mac/icon.md +1 -1
- package/docs/platforms/mac/logging.md +4 -4
- package/docs/platforms/mac/menu-bar.md +1 -1
- package/docs/platforms/mac/peekaboo.md +9 -9
- package/docs/platforms/mac/permissions.md +1 -1
- package/docs/platforms/mac/release.md +18 -18
- package/docs/platforms/mac/remote.md +14 -14
- package/docs/platforms/mac/signing.md +6 -6
- package/docs/platforms/mac/skills.md +2 -2
- package/docs/platforms/mac/webchat.md +1 -1
- package/docs/platforms/mac/xpc.md +4 -4
- package/docs/platforms/macos-vm.md +27 -27
- package/docs/platforms/macos.md +14 -14
- package/docs/platforms/windows.md +11 -11
- package/docs/plugin.md +57 -57
- package/docs/plugins/agent-tools.md +1 -1
- package/docs/plugins/manifest.md +4 -4
- package/docs/plugins/voice-call.md +12 -15
- package/docs/plugins/zalouser.md +9 -9
- package/docs/prose.md +9 -9
- package/docs/providers/anthropic.md +27 -23
- package/docs/providers/deepgram.md +2 -2
- package/docs/providers/github-copilot.md +11 -11
- package/docs/providers/glm.md +4 -4
- package/docs/providers/index.md +3 -7
- package/docs/providers/minimax.md +9 -9
- package/docs/providers/models.md +3 -3
- package/docs/providers/moonshot.md +2 -2
- package/docs/providers/ollama.md +11 -11
- package/docs/providers/openai.md +13 -9
- package/docs/providers/opencode.md +3 -3
- package/docs/providers/openrouter.md +3 -3
- package/docs/providers/qwen.md +6 -6
- package/docs/providers/synthetic.md +4 -4
- package/docs/providers/venice.md +21 -21
- package/docs/providers/vercel-ai-gateway.md +3 -4
- package/docs/providers/zai.md +5 -5
- package/docs/railway.mdx +5 -5
- package/docs/refactor/plugin-sdk.md +10 -10
- package/docs/refactor/strict-config.md +11 -11
- package/docs/reference/AGENTS.default.md +10 -10
- package/docs/reference/RELEASING.md +27 -27
- package/docs/reference/api-usage-costs.md +6 -6
- package/docs/reference/device-models.md +7 -7
- package/docs/reference/rpc.md +3 -3
- package/docs/reference/session-management-compaction.md +17 -17
- package/docs/reference/templates/AGENTS.dev.md +1 -1
- package/docs/reference/templates/BOOT.md +1 -1
- package/docs/reference/templates/TOOLS.dev.md +1 -1
- package/docs/reference/templates/USER.dev.md +2 -2
- package/docs/reference/test.md +2 -2
- package/docs/reference/transcript-hygiene.md +1 -1
- package/docs/scripts.md +1 -1
- package/docs/start/clawd.md +27 -27
- package/docs/start/getting-started.md +23 -29
- package/docs/start/hubs.md +2 -2
- package/docs/start/lore.md +38 -74
- package/docs/start/onboarding.md +4 -4
- package/docs/start/pairing.md +8 -8
- package/docs/start/setup.md +15 -28
- package/docs/start/showcase.md +32 -32
- package/docs/start/wizard.md +21 -24
- package/docs/testing.md +10 -10
- package/docs/token-use.md +7 -7
- package/docs/tools/agent-send.md +10 -10
- package/docs/tools/browser-linux-troubleshooting.md +8 -8
- package/docs/tools/browser-login.md +4 -4
- package/docs/tools/browser.md +241 -135
- package/docs/tools/chrome-extension.md +48 -31
- package/docs/tools/clawdhub.md +7 -7
- package/docs/tools/creating-skills.md +4 -4
- package/docs/tools/elevated.md +0 -1
- package/docs/tools/exec-approvals.md +2 -5
- package/docs/tools/exec.md +3 -14
- package/docs/tools/firecrawl.md +2 -2
- package/docs/tools/index.md +15 -18
- package/docs/tools/llm-task.md +1 -1
- package/docs/tools/lobster.md +11 -23
- package/docs/tools/skills-config.md +1 -1
- package/docs/tools/skills.md +21 -29
- package/docs/tools/slash-commands.md +8 -10
- package/docs/tools/web.md +6 -6
- package/docs/tts.md +9 -9
- package/docs/tui.md +7 -7
- package/docs/vps.md +1 -6
- package/docs/web/control-ui.md +12 -13
- package/docs/web/dashboard.md +4 -8
- package/docs/web/index.md +5 -6
- package/docs/web/webchat.md +1 -1
- package/extensions/bluebubbles/index.ts +2 -2
- package/extensions/bluebubbles/package.json +5 -5
- package/extensions/bluebubbles/src/accounts.ts +8 -8
- package/extensions/bluebubbles/src/actions.test.ts +22 -22
- package/extensions/bluebubbles/src/actions.ts +5 -5
- package/extensions/bluebubbles/src/attachments.ts +2 -2
- package/extensions/bluebubbles/src/channel.ts +16 -16
- package/extensions/bluebubbles/src/chat.ts +2 -2
- package/extensions/bluebubbles/src/media-send.ts +2 -2
- package/extensions/bluebubbles/src/monitor.test.ts +49 -55
- package/extensions/bluebubbles/src/monitor.ts +5 -180
- package/extensions/bluebubbles/src/onboarding.ts +7 -7
- package/extensions/bluebubbles/src/reactions.ts +2 -2
- package/extensions/bluebubbles/src/send.ts +2 -2
- package/extensions/copilot-proxy/package.json +4 -4
- package/extensions/diagnostics-otel/index.ts +2 -2
- package/extensions/diagnostics-otel/package.json +4 -4
- package/extensions/diagnostics-otel/src/service.test.ts +12 -12
- package/extensions/diagnostics-otel/src/service.ts +84 -84
- package/extensions/discord/index.ts +2 -2
- package/extensions/discord/package.json +4 -4
- package/extensions/google-antigravity-auth/index.ts +1 -8
- package/extensions/google-antigravity-auth/package.json +4 -4
- package/extensions/google-gemini-cli-auth/oauth.ts +2 -2
- package/extensions/google-gemini-cli-auth/package.json +4 -4
- package/extensions/googlechat/index.ts +3 -3
- package/extensions/googlechat/package.json +7 -7
- package/extensions/googlechat/src/accounts.ts +8 -8
- package/extensions/googlechat/src/actions.ts +6 -6
- package/extensions/googlechat/src/api.ts +1 -1
- package/extensions/googlechat/src/channel.ts +21 -21
- package/extensions/googlechat/src/monitor.ts +8 -8
- package/extensions/googlechat/src/onboarding.ts +10 -10
- package/extensions/imessage/index.ts +2 -2
- package/extensions/imessage/package.json +4 -4
- package/extensions/line/index.ts +2 -2
- package/extensions/line/package.json +6 -6
- package/extensions/line/src/card-command.ts +2 -2
- package/extensions/line/src/channel.logout.test.ts +4 -4
- package/extensions/line/src/channel.sendPayload.test.ts +8 -8
- package/extensions/line/src/channel.ts +4 -4
- package/extensions/llm-task/index.ts +2 -2
- package/extensions/llm-task/package.json +4 -4
- package/extensions/llm-task/src/llm-task-tool.ts +5 -5
- package/extensions/lobster/index.ts +2 -2
- package/extensions/lobster/package.json +3 -3
- package/extensions/lobster/src/lobster-tool.test.ts +6 -26
- package/extensions/lobster/src/lobster-tool.ts +6 -24
- package/extensions/matrix/CHANGELOG.md +9 -9
- package/extensions/matrix/index.ts +2 -2
- package/extensions/matrix/package.json +7 -7
- package/extensions/matrix/src/matrix/actions/messages.ts +1 -1
- package/extensions/matrix/src/matrix/actions/reactions.ts +1 -1
- package/extensions/matrix/src/matrix/actions/room.ts +3 -3
- package/extensions/matrix/src/matrix/actions/summary.ts +1 -1
- package/extensions/matrix/src/matrix/actions/types.ts +1 -1
- package/extensions/matrix/src/matrix/active-client.ts +1 -1
- package/extensions/matrix/src/matrix/client/config.ts +2 -2
- package/extensions/matrix/src/matrix/client/create-client.ts +2 -2
- package/extensions/matrix/src/matrix/client/logging.ts +1 -1
- package/extensions/matrix/src/matrix/client/shared.ts +3 -3
- package/extensions/matrix/src/matrix/deps.ts +4 -4
- package/extensions/matrix/src/matrix/monitor/auto-join.ts +2 -2
- package/extensions/matrix/src/matrix/monitor/direct.ts +1 -1
- package/extensions/matrix/src/matrix/monitor/events.ts +1 -1
- package/extensions/matrix/src/matrix/monitor/handler.ts +5 -5
- package/extensions/matrix/src/matrix/monitor/index.ts +1 -1
- package/extensions/matrix/src/matrix/monitor/location.ts +1 -1
- package/extensions/matrix/src/matrix/monitor/media.test.ts +2 -2
- package/extensions/matrix/src/matrix/monitor/media.ts +3 -3
- package/extensions/matrix/src/matrix/monitor/replies.ts +1 -1
- package/extensions/matrix/src/matrix/monitor/room-info.ts +1 -1
- package/extensions/matrix/src/matrix/monitor/threads.ts +1 -1
- package/extensions/matrix/src/matrix/monitor/types.ts +1 -1
- package/extensions/matrix/src/matrix/probe.ts +1 -1
- package/extensions/matrix/src/matrix/send/client.ts +2 -2
- package/extensions/matrix/src/matrix/send/media.ts +1 -1
- package/extensions/matrix/src/matrix/send/targets.test.ts +1 -1
- package/extensions/matrix/src/matrix/send/targets.ts +1 -1
- package/extensions/matrix/src/matrix/send/types.ts +2 -2
- package/extensions/matrix/src/matrix/send.test.ts +2 -2
- package/extensions/matrix/src/matrix/send.ts +3 -3
- package/extensions/matrix/src/onboarding.ts +2 -2
- package/extensions/matrix/src/types.ts +1 -1
- package/extensions/mattermost/index.ts +2 -2
- package/extensions/mattermost/package.json +5 -5
- package/extensions/mattermost/src/mattermost/accounts.ts +8 -8
- package/extensions/mattermost/src/mattermost/monitor-helpers.ts +5 -5
- package/extensions/mattermost/src/mattermost/monitor.ts +2 -2
- package/extensions/mattermost/src/onboarding-helpers.ts +3 -3
- package/extensions/mattermost/src/onboarding.ts +3 -3
- package/extensions/memory-core/index.ts +2 -2
- package/extensions/memory-core/package.json +5 -5
- package/extensions/memory-lancedb/index.test.ts +2 -2
- package/extensions/memory-lancedb/index.ts +3 -3
- package/extensions/memory-lancedb/package.json +4 -4
- package/extensions/msteams/CHANGELOG.md +7 -7
- package/extensions/msteams/index.ts +2 -2
- package/extensions/msteams/package.json +6 -6
- package/extensions/msteams/src/channel.directory.test.ts +2 -2
- package/extensions/msteams/src/channel.ts +2 -2
- package/extensions/msteams/src/conversation-store-fs.test.ts +1 -1
- package/extensions/msteams/src/graph-upload.ts +4 -4
- package/extensions/msteams/src/monitor-handler.ts +2 -2
- package/extensions/msteams/src/monitor.ts +2 -2
- package/extensions/msteams/src/onboarding.ts +9 -9
- package/extensions/msteams/src/policy.ts +3 -48
- package/extensions/msteams/src/polls-store.test.ts +1 -1
- package/extensions/msteams/src/polls.test.ts +2 -2
- package/extensions/msteams/src/polls.ts +8 -8
- package/extensions/msteams/src/reply-dispatcher.ts +35 -35
- package/extensions/msteams/src/send-context.ts +2 -2
- package/extensions/msteams/src/send.ts +4 -4
- package/extensions/nextcloud-talk/index.ts +2 -2
- package/extensions/nextcloud-talk/package.json +5 -5
- package/extensions/nextcloud-talk/src/channel.ts +7 -7
- package/extensions/nextcloud-talk/src/inbound.ts +7 -7
- package/extensions/nextcloud-talk/src/onboarding.ts +1 -1
- package/extensions/nostr/CHANGELOG.md +4 -4
- package/extensions/nostr/index.ts +5 -5
- package/extensions/nostr/package.json +6 -6
- package/extensions/nostr/src/channel.ts +1 -1
- package/extensions/nostr/src/nostr-state-store.test.ts +1 -1
- package/extensions/nostr/src/types.ts +4 -4
- package/extensions/open-prose/index.ts +2 -2
- package/extensions/open-prose/package.json +3 -3
- package/extensions/open-prose/skills/prose/SKILL.md +5 -5
- package/extensions/open-prose/skills/prose/prose.md +4 -4
- package/extensions/signal/index.ts +2 -2
- package/extensions/signal/package.json +4 -4
- package/extensions/slack/index.ts +2 -2
- package/extensions/slack/package.json +4 -4
- package/extensions/telegram/index.ts +2 -2
- package/extensions/telegram/package.json +4 -4
- package/extensions/telegram/src/channel.ts +2 -2
- package/extensions/tlon/README.md +1 -1
- package/extensions/tlon/index.ts +2 -2
- package/extensions/tlon/package.json +5 -5
- package/extensions/tlon/src/channel.ts +13 -13
- package/extensions/tlon/src/monitor/index.ts +3 -3
- package/extensions/tlon/src/onboarding.ts +3 -3
- package/extensions/tlon/src/types.ts +3 -3
- package/extensions/tlon/src/urbit/send.ts +6 -19
- package/extensions/voice-call/CHANGELOG.md +12 -13
- package/extensions/voice-call/README.md +2 -3
- package/extensions/voice-call/clawdbot.plugin.json +3 -3
- package/extensions/voice-call/index.ts +9 -11
- package/extensions/voice-call/package.json +4 -4
- package/extensions/voice-call/src/cli.ts +1 -1
- package/extensions/voice-call/src/config.ts +4 -61
- package/extensions/voice-call/src/core-bridge.ts +8 -10
- package/extensions/voice-call/src/manager.test.ts +2 -2
- package/extensions/voice-call/src/providers/twilio/webhook.ts +1 -2
- package/extensions/voice-call/src/providers/twilio.ts +2 -2
- package/extensions/voice-call/src/response-generator.ts +1 -1
- package/extensions/voice-call/src/runtime.ts +15 -26
- package/extensions/voice-call/src/types.ts +0 -1
- package/extensions/voice-call/src/webhook-security.test.ts +0 -52
- package/extensions/voice-call/src/webhook-security.ts +5 -16
- package/extensions/voice-call/src/webhook.ts +0 -1
- package/extensions/whatsapp/index.ts +2 -2
- package/extensions/whatsapp/package.json +4 -4
- package/extensions/zalo/CHANGELOG.md +9 -9
- package/extensions/zalo/index.ts +2 -2
- package/extensions/zalo/package.json +6 -6
- package/extensions/zalo/src/accounts.ts +8 -8
- package/extensions/zalo/src/actions.ts +4 -4
- package/extensions/zalo/src/channel.directory.test.ts +2 -2
- package/extensions/zalo/src/channel.ts +18 -18
- package/extensions/zalo/src/monitor.ts +9 -9
- package/extensions/zalo/src/monitor.webhook.test.ts +2 -2
- package/extensions/zalo/src/onboarding.ts +25 -25
- package/extensions/zalo/src/send.ts +2 -2
- package/extensions/zalouser/CHANGELOG.md +4 -4
- package/extensions/zalouser/index.ts +2 -2
- package/extensions/zalouser/package.json +6 -6
- package/extensions/zalouser/src/accounts.ts +9 -9
- package/extensions/zalouser/src/channel.ts +25 -25
- package/extensions/zalouser/src/monitor.ts +4 -4
- package/extensions/zalouser/src/onboarding.ts +30 -30
- package/extensions/zalouser/src/status-issues.ts +1 -1
- package/package.json +18 -17
- package/skills/1password/SKILL.md +3 -3
- package/skills/apple-notes/SKILL.md +2 -2
- package/skills/apple-reminders/SKILL.md +1 -1
- package/skills/bear-notes/SKILL.md +1 -1
- package/skills/bird/SKILL.md +1 -1
- package/skills/blogwatcher/SKILL.md +1 -1
- package/skills/blucli/SKILL.md +1 -1
- package/skills/bluebubbles/SKILL.md +1 -1
- package/skills/camsnap/SKILL.md +1 -1
- package/skills/canvas/SKILL.md +15 -15
- package/skills/clawdhub/SKILL.md +2 -2
- package/skills/coding-agent/SKILL.md +6 -6
- package/skills/discord/SKILL.md +5 -6
- package/skills/eightctl/SKILL.md +1 -1
- package/skills/food-order/SKILL.md +1 -1
- package/skills/gemini/SKILL.md +1 -1
- package/skills/gifgrep/SKILL.md +1 -1
- package/skills/github/SKILL.md +0 -1
- package/skills/gog/SKILL.md +1 -1
- package/skills/goplaces/SKILL.md +1 -1
- package/skills/himalaya/SKILL.md +1 -1
- package/skills/imsg/SKILL.md +1 -1
- package/skills/local-places/SKILL.md +1 -1
- package/skills/mcporter/SKILL.md +1 -1
- package/skills/model-usage/SKILL.md +1 -1
- package/skills/nano-banana-pro/SKILL.md +5 -10
- package/skills/nano-banana-pro/scripts/generate_image.py +27 -42
- package/skills/nano-pdf/SKILL.md +1 -1
- package/skills/notion/SKILL.md +1 -1
- package/skills/obsidian/SKILL.md +1 -1
- package/skills/openai-image-gen/SKILL.md +1 -1
- package/skills/openai-whisper/SKILL.md +1 -1
- package/skills/openai-whisper-api/SKILL.md +2 -2
- package/skills/openhue/SKILL.md +1 -1
- package/skills/oracle/SKILL.md +1 -1
- package/skills/ordercli/SKILL.md +1 -1
- package/skills/peekaboo/SKILL.md +1 -1
- package/skills/sag/SKILL.md +1 -1
- package/skills/session-logs/SKILL.md +1 -1
- package/skills/sherpa-onnx-tts/SKILL.md +2 -2
- package/skills/slack/SKILL.md +3 -4
- package/skills/songsee/SKILL.md +1 -1
- package/skills/sonoscli/SKILL.md +1 -1
- package/skills/spotify-player/SKILL.md +1 -1
- package/skills/summarize/SKILL.md +1 -1
- package/skills/things-mac/SKILL.md +3 -3
- package/skills/tmux/SKILL.md +7 -7
- package/skills/tmux/scripts/find-sessions.sh +1 -1
- package/skills/trello/SKILL.md +2 -2
- package/skills/video-frames/SKILL.md +1 -1
- package/skills/voice-call/SKILL.md +4 -4
- package/skills/wacli/SKILL.md +2 -2
- package/skills/weather/SKILL.md +1 -1
- package/LICENSE +0 -21
- package/dist/agents/moltbot-tools.js +0 -121
- package/dist/agents/pi-extensions/compaction-safeguard-runtime.js +0 -20
- package/dist/browser/control-service.js +0 -72
- package/dist/browser/routes/dispatcher.js +0 -86
- package/dist/browser/routes/types.js +0 -1
- package/dist/cli/cli-name.js +0 -26
- package/dist/compat/legacy-names.js +0 -5
- package/dist/control-ui/assets/index-CIRDm-Lu.css +0 -1
- package/dist/control-ui/assets/index-HlBhZmfj.js.map +0 -1
- package/dist/discord/monitor/presence-cache.js +0 -38
- package/dist/gateway/server-methods/browser.js +0 -204
- package/dist/infra/fs-safe.js +0 -76
- package/dist/infra/moltbot-root.js +0 -57
- package/dist/line/signature.js +0 -11
- package/dist/security/external-content.js +0 -143
- package/dist/security/windows-acl.js +0 -162
- package/dist/telegram/api-logging.js +0 -24
- package/dist/telegram/network-config.js +0 -23
- package/dist/telegram/network-errors.js +0 -103
- package/dist/telegram/sticker-cache.js +0 -202
- package/docs/channels/line.md +0 -183
- package/docs/channels/twitch.md +0 -366
- package/docs/gateway/security/formal-verification.md +0 -107
- package/docs/install/migrating.md +0 -190
- package/docs/northflank.mdx +0 -53
- package/docs/platforms/digitalocean.md +0 -243
- package/docs/platforms/gcp.md +0 -498
- package/docs/platforms/oracle.md +0 -291
- package/docs/platforms/raspberry-pi.md +0 -354
- package/docs/providers/claude-max-api-proxy.md +0 -145
- package/docs/render.mdx +0 -158
- package/docs/security/formal-verification.md +0 -107
- package/extensions/googlechat/node_modules/.bin/poolbot +0 -21
- package/extensions/line/node_modules/.bin/poolbot +0 -21
- package/extensions/matrix/node_modules/.bin/poolbot +0 -21
- package/extensions/memory-core/node_modules/.bin/poolbot +0 -21
- package/extensions/msteams/node_modules/.bin/poolbot +0 -21
- package/extensions/nostr/node_modules/.bin/poolbot +0 -21
- package/extensions/twitch/CHANGELOG.md +0 -21
- package/extensions/twitch/README.md +0 -89
- package/extensions/twitch/clawdbot.plugin.json +0 -9
- package/extensions/twitch/index.ts +0 -20
- package/extensions/twitch/node_modules/.bin/poolbot +0 -21
- package/extensions/twitch/package.json +0 -20
- package/extensions/twitch/src/access-control.test.ts +0 -489
- package/extensions/twitch/src/access-control.ts +0 -154
- package/extensions/twitch/src/actions.ts +0 -173
- package/extensions/twitch/src/client-manager-registry.ts +0 -115
- package/extensions/twitch/src/config-schema.ts +0 -82
- package/extensions/twitch/src/config.test.ts +0 -88
- package/extensions/twitch/src/config.ts +0 -116
- package/extensions/twitch/src/monitor.ts +0 -257
- package/extensions/twitch/src/onboarding.test.ts +0 -311
- package/extensions/twitch/src/onboarding.ts +0 -411
- package/extensions/twitch/src/outbound.test.ts +0 -373
- package/extensions/twitch/src/outbound.ts +0 -186
- package/extensions/twitch/src/plugin.test.ts +0 -39
- package/extensions/twitch/src/plugin.ts +0 -274
- package/extensions/twitch/src/probe.test.ts +0 -198
- package/extensions/twitch/src/probe.ts +0 -118
- package/extensions/twitch/src/resolver.ts +0 -137
- package/extensions/twitch/src/runtime.ts +0 -14
- package/extensions/twitch/src/send.test.ts +0 -289
- package/extensions/twitch/src/send.ts +0 -136
- package/extensions/twitch/src/status.test.ts +0 -270
- package/extensions/twitch/src/status.ts +0 -176
- package/extensions/twitch/src/token.test.ts +0 -171
- package/extensions/twitch/src/token.ts +0 -87
- package/extensions/twitch/src/twitch-client.test.ts +0 -574
- package/extensions/twitch/src/twitch-client.ts +0 -277
- package/extensions/twitch/src/types.ts +0 -141
- package/extensions/twitch/src/utils/markdown.ts +0 -92
- package/extensions/twitch/src/utils/twitch.ts +0 -78
- package/extensions/twitch/test/setup.ts +0 -7
- package/extensions/voice-call/src/config.test.ts +0 -204
- package/extensions/zalo/node_modules/.bin/poolbot +0 -21
- package/extensions/zalouser/node_modules/.bin/poolbot +0 -21
package/docs/tools/skills.md
CHANGED
|
@@ -4,15 +4,15 @@ read_when:
|
|
|
4
4
|
- Adding or modifying skills
|
|
5
5
|
- Changing skill gating or load rules
|
|
6
6
|
---
|
|
7
|
-
# Skills (
|
|
7
|
+
# Skills (Clawdbot)
|
|
8
8
|
|
|
9
|
-
|
|
9
|
+
Clawdbot uses **[AgentSkills](https://agentskills.io)-compatible** skill folders to teach the agent how to use tools. Each skill is a directory containing a `SKILL.md` with YAML frontmatter and instructions. Clawdbot loads **bundled skills** plus optional local overrides, and filters them at load time based on environment, config, and binary presence.
|
|
10
10
|
|
|
11
11
|
## Locations and precedence
|
|
12
12
|
|
|
13
13
|
Skills are loaded from **three** places:
|
|
14
14
|
|
|
15
|
-
1) **Bundled skills**: shipped with the install (npm package or
|
|
15
|
+
1) **Bundled skills**: shipped with the install (npm package or Clawdbot.app)
|
|
16
16
|
2) **Managed/local skills**: `~/.clawdbot/skills`
|
|
17
17
|
3) **Workspace skills**: `<workspace>/skills`
|
|
18
18
|
|
|
@@ -21,7 +21,7 @@ If a skill name conflicts, precedence is:
|
|
|
21
21
|
`<workspace>/skills` (highest) → `~/.clawdbot/skills` → bundled skills (lowest)
|
|
22
22
|
|
|
23
23
|
Additionally, you can configure extra skill folders (lowest precedence) via
|
|
24
|
-
`skills.load.extraDirs` in `~/.clawdbot/
|
|
24
|
+
`skills.load.extraDirs` in `~/.clawdbot/clawdbot.json`.
|
|
25
25
|
|
|
26
26
|
## Per-agent vs shared skills
|
|
27
27
|
|
|
@@ -39,7 +39,7 @@ applies: workspace wins, then managed/local, then bundled.
|
|
|
39
39
|
## Plugins + skills
|
|
40
40
|
|
|
41
41
|
Plugins can ship their own skills by listing `skills` directories in
|
|
42
|
-
`
|
|
42
|
+
`clawdbot.plugin.json` (paths relative to the plugin root). Plugin skills load
|
|
43
43
|
when the plugin is enabled and participate in the normal skill precedence rules.
|
|
44
44
|
You can gate them via `metadata.clawdbot.requires.config` on the plugin’s config
|
|
45
45
|
entry. See [Plugins](/plugin) for discovery/config and [Tools](/tools) for the
|
|
@@ -47,7 +47,7 @@ tool surface those skills teach.
|
|
|
47
47
|
|
|
48
48
|
## ClawdHub (install + sync)
|
|
49
49
|
|
|
50
|
-
ClawdHub is the public skills registry for
|
|
50
|
+
ClawdHub is the public skills registry for Clawdbot. Browse at
|
|
51
51
|
https://clawdhub.com. Use it to discover, install, update, and back up skills.
|
|
52
52
|
Full guide: [ClawdHub](/tools/clawdhub).
|
|
53
53
|
|
|
@@ -61,17 +61,9 @@ Common flows:
|
|
|
61
61
|
- `clawdhub sync --all`
|
|
62
62
|
|
|
63
63
|
By default, `clawdhub` installs into `./skills` under your current working
|
|
64
|
-
directory (or falls back to the configured
|
|
64
|
+
directory (or falls back to the configured Clawdbot workspace). Clawdbot picks
|
|
65
65
|
that up as `<workspace>/skills` on the next session.
|
|
66
66
|
|
|
67
|
-
## Security notes
|
|
68
|
-
|
|
69
|
-
- Treat third-party skills as **trusted code**. Read them before enabling.
|
|
70
|
-
- Prefer sandboxed runs for untrusted inputs and risky tools. See [Sandboxing](/gateway/sandboxing).
|
|
71
|
-
- `skills.entries.*.env` and `skills.entries.*.apiKey` inject secrets into the **host** process
|
|
72
|
-
for that agent turn (not the sandbox). Keep secrets out of prompts and logs.
|
|
73
|
-
- For a broader threat model and checklists, see [Security](/gateway/security).
|
|
74
|
-
|
|
75
67
|
## Format (AgentSkills + Pi-compatible)
|
|
76
68
|
|
|
77
69
|
`SKILL.md` must include at least:
|
|
@@ -101,13 +93,13 @@ Notes:
|
|
|
101
93
|
|
|
102
94
|
## Gating (load-time filters)
|
|
103
95
|
|
|
104
|
-
|
|
96
|
+
Clawdbot **filters skills at load time** using `metadata` (single-line JSON):
|
|
105
97
|
|
|
106
98
|
```markdown
|
|
107
99
|
---
|
|
108
100
|
name: nano-banana-pro
|
|
109
101
|
description: Generate or edit images via Gemini 3 Pro Image
|
|
110
|
-
metadata: {"
|
|
102
|
+
metadata: {"clawdbot":{"requires":{"bins":["uv"],"env":["GEMINI_API_KEY"],"config":["browser.enabled"]},"primaryEnv":"GEMINI_API_KEY"}}
|
|
111
103
|
---
|
|
112
104
|
```
|
|
113
105
|
|
|
@@ -119,7 +111,7 @@ Fields under `metadata.clawdbot`:
|
|
|
119
111
|
- `requires.bins` — list; each must exist on `PATH`.
|
|
120
112
|
- `requires.anyBins` — list; at least one must exist on `PATH`.
|
|
121
113
|
- `requires.env` — list; env var must exist **or** be provided in config.
|
|
122
|
-
- `requires.config` — list of `
|
|
114
|
+
- `requires.config` — list of `clawdbot.json` paths that must be truthy.
|
|
123
115
|
- `primaryEnv` — env var name associated with `skills.entries.<name>.apiKey`.
|
|
124
116
|
- `install` — optional array of installer specs used by the macOS Skills UI (brew/node/go/uv/download).
|
|
125
117
|
|
|
@@ -138,15 +130,15 @@ Installer example:
|
|
|
138
130
|
---
|
|
139
131
|
name: gemini
|
|
140
132
|
description: Use Gemini CLI for coding assistance and Google search lookups.
|
|
141
|
-
metadata: {"
|
|
133
|
+
metadata: {"clawdbot":{"emoji":"♊️","requires":{"bins":["gemini"]},"install":[{"id":"brew","kind":"brew","formula":"gemini-cli","bins":["gemini"],"label":"Install Gemini CLI (brew)"}]}}
|
|
142
134
|
---
|
|
143
135
|
```
|
|
144
136
|
|
|
145
137
|
Notes:
|
|
146
138
|
- If multiple installers are listed, the gateway picks a **single** preferred option (brew when available, otherwise node).
|
|
147
|
-
- If all installers are `download`,
|
|
139
|
+
- If all installers are `download`, Clawdbot lists each entry so you can see the available artifacts.
|
|
148
140
|
- Installer specs can include `os: ["darwin"|"linux"|"win32"]` to filter options by platform.
|
|
149
|
-
- Node installs honor `skills.install.nodeManager` in `
|
|
141
|
+
- Node installs honor `skills.install.nodeManager` in `clawdbot.json` (default: npm; options: npm/pnpm/yarn/bun).
|
|
150
142
|
This only affects **skill installs**; the Gateway runtime should still be Node
|
|
151
143
|
(Bun is not recommended for WhatsApp/Telegram).
|
|
152
144
|
- Go installs: if `go` is missing and `brew` is available, the gateway installs Go via Homebrew first and sets `GOBIN` to Homebrew’s `bin` when possible.
|
|
@@ -155,7 +147,7 @@ Notes:
|
|
|
155
147
|
If no `metadata.clawdbot` is present, the skill is always eligible (unless
|
|
156
148
|
disabled in config or blocked by `skills.allowBundled` for bundled skills).
|
|
157
149
|
|
|
158
|
-
## Config overrides (`~/.clawdbot/
|
|
150
|
+
## Config overrides (`~/.clawdbot/clawdbot.json`)
|
|
159
151
|
|
|
160
152
|
Bundled/managed skills can be toggled and supplied with env values:
|
|
161
153
|
|
|
@@ -196,7 +188,7 @@ Rules:
|
|
|
196
188
|
|
|
197
189
|
## Environment injection (per agent run)
|
|
198
190
|
|
|
199
|
-
When an agent run starts,
|
|
191
|
+
When an agent run starts, Clawdbot:
|
|
200
192
|
1) Reads skill metadata.
|
|
201
193
|
2) Applies any `skills.entries.<key>.env` or `skills.entries.<key>.apiKey` to
|
|
202
194
|
`process.env`.
|
|
@@ -207,19 +199,19 @@ This is **scoped to the agent run**, not a global shell environment.
|
|
|
207
199
|
|
|
208
200
|
## Session snapshot (performance)
|
|
209
201
|
|
|
210
|
-
|
|
202
|
+
Clawdbot snapshots the eligible skills **when a session starts** and reuses that list for subsequent turns in the same session. Changes to skills or config take effect on the next new session.
|
|
211
203
|
|
|
212
204
|
Skills can also refresh mid-session when the skills watcher is enabled or when a new eligible remote node appears (see below). Think of this as a **hot reload**: the refreshed list is picked up on the next agent turn.
|
|
213
205
|
|
|
214
206
|
## Remote macOS nodes (Linux gateway)
|
|
215
207
|
|
|
216
|
-
If the Gateway is running on Linux but a **macOS node** is connected **with `system.run` allowed** (Exec approvals security not set to `deny`),
|
|
208
|
+
If the Gateway is running on Linux but a **macOS node** is connected **with `system.run` allowed** (Exec approvals security not set to `deny`), Clawdbot can treat macOS-only skills as eligible when the required binaries are present on that node. The agent should execute those skills via the `nodes` tool (typically `nodes.run`).
|
|
217
209
|
|
|
218
210
|
This relies on the node reporting its command support and on a bin probe via `system.run`. If the macOS node goes offline later, the skills remain visible; invocations may fail until the node reconnects.
|
|
219
211
|
|
|
220
212
|
## Skills watcher (auto-refresh)
|
|
221
213
|
|
|
222
|
-
By default,
|
|
214
|
+
By default, Clawdbot watches skill folders and bumps the skills snapshot when `SKILL.md` files change. Configure this under `skills.load`:
|
|
223
215
|
|
|
224
216
|
```json5
|
|
225
217
|
{
|
|
@@ -234,7 +226,7 @@ By default, Pool Bot watches skill folders and bumps the skills snapshot when `S
|
|
|
234
226
|
|
|
235
227
|
## Token impact (skills list)
|
|
236
228
|
|
|
237
|
-
When skills are eligible,
|
|
229
|
+
When skills are eligible, Clawdbot injects a compact XML list of available skills into the system prompt (via `formatSkillsForPrompt` in `pi-coding-agent`). The cost is deterministic:
|
|
238
230
|
|
|
239
231
|
- **Base overhead (only when ≥1 skill):** 195 characters.
|
|
240
232
|
- **Per skill:** 97 characters + the length of the XML-escaped `<name>`, `<description>`, and `<location>` values.
|
|
@@ -251,8 +243,8 @@ Notes:
|
|
|
251
243
|
|
|
252
244
|
## Managed skills lifecycle
|
|
253
245
|
|
|
254
|
-
|
|
255
|
-
install (npm package or
|
|
246
|
+
Clawdbot ships a baseline set of skills as **bundled skills** as part of the
|
|
247
|
+
install (npm package or Clawdbot.app). `~/.clawdbot/skills` exists for local
|
|
256
248
|
overrides (for example, pinning/patching a skill without changing the bundled
|
|
257
249
|
copy). Workspace skills are user-owned and override both on name conflicts.
|
|
258
250
|
|
|
@@ -16,8 +16,6 @@ There are two related systems:
|
|
|
16
16
|
- Directives are stripped from the message before the model sees it.
|
|
17
17
|
- In normal chat messages (not directive-only), they are treated as “inline hints” and do **not** persist session settings.
|
|
18
18
|
- In directive-only messages (the message contains only directives), they persist to the session and reply with an acknowledgement.
|
|
19
|
-
- Directives are only applied for **authorized senders** (channel allowlists/pairing plus `commands.useAccessGroups`).
|
|
20
|
-
Unauthorized senders see directives treated as plain text.
|
|
21
19
|
|
|
22
20
|
There are also a few **inline shortcuts** (allowlisted/authorized senders only): `/help`, `/commands`, `/status`, `/whoami` (`/id`).
|
|
23
21
|
They run immediately, are stripped before the model sees the message, and the remaining text continues through the normal flow.
|
|
@@ -51,7 +49,7 @@ They run immediately, are stripped before the model sees the message, and the re
|
|
|
51
49
|
- Set `channels.discord.commands.nativeSkills`, `channels.telegram.commands.nativeSkills`, or `channels.slack.commands.nativeSkills` to override per provider (bool or `"auto"`).
|
|
52
50
|
- `commands.bash` (default `false`) enables `! <cmd>` to run host shell commands (`/bash <cmd>` is an alias; requires `tools.elevated` allowlists).
|
|
53
51
|
- `commands.bashForegroundMs` (default `2000`) controls how long bash waits before switching to background mode (`0` backgrounds immediately).
|
|
54
|
-
- `commands.config` (default `false`) enables `/config` (reads/writes `
|
|
52
|
+
- `commands.config` (default `false`) enables `/config` (reads/writes `clawdbot.json`).
|
|
55
53
|
- `commands.debug` (default `false`) enables `/debug` (runtime-only overrides).
|
|
56
54
|
- `commands.useAccessGroups` (default `true`) enforces allowlists/policies for commands.
|
|
57
55
|
|
|
@@ -98,9 +96,9 @@ Text-only:
|
|
|
98
96
|
Notes:
|
|
99
97
|
- Commands accept an optional `:` between the command and args (e.g. `/think: high`, `/send: on`, `/help:`).
|
|
100
98
|
- `/new <model>` accepts a model alias, `provider/model`, or a provider name (fuzzy match); if no match, the text is treated as the message body.
|
|
101
|
-
- For full provider usage breakdown, use `
|
|
99
|
+
- For full provider usage breakdown, use `clawdbot status --usage`.
|
|
102
100
|
- `/allowlist add|remove` requires `commands.config=true` and honors channel `configWrites`.
|
|
103
|
-
- `/usage` controls the per-response usage footer; `/usage cost` prints a local cost summary from
|
|
101
|
+
- `/usage` controls the per-response usage footer; `/usage cost` prints a local cost summary from Clawdbot session logs.
|
|
104
102
|
- `/restart` is disabled by default; set `commands.restart: true` to enable it.
|
|
105
103
|
- `/verbose` is meant for debugging and extra visibility; keep it **off** in normal use.
|
|
106
104
|
- `/reasoning` (and `/verbose`) are risky in group settings: they may reveal internal reasoning or tool output you did not intend to expose. Prefer leaving them off, especially in group chats.
|
|
@@ -134,7 +132,7 @@ Examples:
|
|
|
134
132
|
/model list
|
|
135
133
|
/model 3
|
|
136
134
|
/model openai/gpt-5.2
|
|
137
|
-
/model opus@anthropic:
|
|
135
|
+
/model opus@anthropic:claude-cli
|
|
138
136
|
/model status
|
|
139
137
|
```
|
|
140
138
|
|
|
@@ -151,19 +149,19 @@ Examples:
|
|
|
151
149
|
|
|
152
150
|
```
|
|
153
151
|
/debug show
|
|
154
|
-
/debug set messages.responsePrefix="[
|
|
152
|
+
/debug set messages.responsePrefix="[clawdbot]"
|
|
155
153
|
/debug set channels.whatsapp.allowFrom=["+1555","+4477"]
|
|
156
154
|
/debug unset messages.responsePrefix
|
|
157
155
|
/debug reset
|
|
158
156
|
```
|
|
159
157
|
|
|
160
158
|
Notes:
|
|
161
|
-
- Overrides apply immediately to new config reads, but do **not** write to `
|
|
159
|
+
- Overrides apply immediately to new config reads, but do **not** write to `clawdbot.json`.
|
|
162
160
|
- Use `/debug reset` to clear all overrides and return to the on-disk config.
|
|
163
161
|
|
|
164
162
|
## Config updates
|
|
165
163
|
|
|
166
|
-
`/config` writes to your on-disk config (`
|
|
164
|
+
`/config` writes to your on-disk config (`clawdbot.json`). Owner-only. Disabled by default; enable with `commands.config: true`.
|
|
167
165
|
|
|
168
166
|
Examples:
|
|
169
167
|
|
|
@@ -171,7 +169,7 @@ Examples:
|
|
|
171
169
|
/config show
|
|
172
170
|
/config show messages.responsePrefix
|
|
173
171
|
/config get messages.responsePrefix
|
|
174
|
-
/config set messages.responsePrefix="[
|
|
172
|
+
/config set messages.responsePrefix="[clawdbot]"
|
|
175
173
|
/config unset messages.responsePrefix
|
|
176
174
|
```
|
|
177
175
|
|
package/docs/tools/web.md
CHANGED
|
@@ -8,7 +8,7 @@ read_when:
|
|
|
8
8
|
|
|
9
9
|
# Web tools
|
|
10
10
|
|
|
11
|
-
|
|
11
|
+
Clawdbot ships two lightweight web tools:
|
|
12
12
|
|
|
13
13
|
- `web_search` — Search the web via Brave Search API (default) or Perplexity Sonar (direct or via OpenRouter).
|
|
14
14
|
- `web_fetch` — HTTP fetch + readable extraction (HTML → markdown/text).
|
|
@@ -72,19 +72,19 @@ Example: switch to Perplexity Sonar (direct API):
|
|
|
72
72
|
|
|
73
73
|
1) Create a Brave Search API account at https://brave.com/search/api/
|
|
74
74
|
2) In the dashboard, choose the **Data for Search** plan (not “Data for AI”) and generate an API key.
|
|
75
|
-
3) Run `
|
|
75
|
+
3) Run `clawdbot configure --section web` to store the key in config (recommended), or set `BRAVE_API_KEY` in your environment.
|
|
76
76
|
|
|
77
77
|
Brave provides a free tier plus paid plans; check the Brave API portal for the
|
|
78
78
|
current limits and pricing.
|
|
79
79
|
|
|
80
80
|
### Where to set the key (recommended)
|
|
81
81
|
|
|
82
|
-
**Recommended:** run `
|
|
83
|
-
`~/.clawdbot/
|
|
82
|
+
**Recommended:** run `clawdbot configure --section web`. It stores the key in
|
|
83
|
+
`~/.clawdbot/clawdbot.json` under `tools.web.search.apiKey`.
|
|
84
84
|
|
|
85
85
|
**Environment alternative:** set `BRAVE_API_KEY` in the Gateway process
|
|
86
86
|
environment. For a gateway install, put it in `~/.clawdbot/.env` (or your
|
|
87
|
-
service environment). See [Env vars](/help/faq#how-does-
|
|
87
|
+
service environment). See [Env vars](/help/faq#how-does-clawdbot-load-environment-variables).
|
|
88
88
|
|
|
89
89
|
## Using Perplexity (direct or via OpenRouter)
|
|
90
90
|
|
|
@@ -124,7 +124,7 @@ crypto/prepaid).
|
|
|
124
124
|
**Environment alternative:** set `OPENROUTER_API_KEY` or `PERPLEXITY_API_KEY` in the Gateway
|
|
125
125
|
environment. For a gateway install, put it in `~/.clawdbot/.env`.
|
|
126
126
|
|
|
127
|
-
If no base URL is set,
|
|
127
|
+
If no base URL is set, Clawdbot chooses a default based on the API key source:
|
|
128
128
|
|
|
129
129
|
- `PERPLEXITY_API_KEY` or `pplx-...` → `https://api.perplexity.ai`
|
|
130
130
|
- `OPENROUTER_API_KEY` or `sk-or-...` → `https://openrouter.ai/api/v1`
|
package/docs/tts.md
CHANGED
|
@@ -8,8 +8,8 @@ read_when:
|
|
|
8
8
|
|
|
9
9
|
# Text-to-speech (TTS)
|
|
10
10
|
|
|
11
|
-
|
|
12
|
-
It works anywhere
|
|
11
|
+
Clawdbot can convert outbound replies into audio using ElevenLabs, OpenAI, or Edge TTS.
|
|
12
|
+
It works anywhere Clawdbot can send audio; Telegram gets a round voice-note bubble.
|
|
13
13
|
|
|
14
14
|
## Supported services
|
|
15
15
|
|
|
@@ -35,7 +35,7 @@ If you want OpenAI or ElevenLabs:
|
|
|
35
35
|
- `ELEVENLABS_API_KEY` (or `XI_API_KEY`)
|
|
36
36
|
- `OPENAI_API_KEY`
|
|
37
37
|
|
|
38
|
-
Edge TTS does **not** require an API key. If no API keys are found,
|
|
38
|
+
Edge TTS does **not** require an API key. If no API keys are found, Clawdbot defaults
|
|
39
39
|
to Edge TTS (unless disabled via `messages.tts.edge.enabled=false`).
|
|
40
40
|
|
|
41
41
|
If multiple providers are configured, the selected provider is used first and the others are fallback options.
|
|
@@ -61,7 +61,7 @@ when no OpenAI or ElevenLabs API keys are available.
|
|
|
61
61
|
|
|
62
62
|
## Config
|
|
63
63
|
|
|
64
|
-
TTS config lives under `messages.tts` in `
|
|
64
|
+
TTS config lives under `messages.tts` in `clawdbot.json`.
|
|
65
65
|
Full schema is in [Gateway configuration](/gateway/configuration).
|
|
66
66
|
|
|
67
67
|
### Minimal config (enable + provider)
|
|
@@ -203,7 +203,7 @@ Then run:
|
|
|
203
203
|
- `enabled`: legacy toggle (doctor migrates this to `auto`).
|
|
204
204
|
- `mode`: `"final"` (default) or `"all"` (includes tool/block replies).
|
|
205
205
|
- `provider`: `"elevenlabs"`, `"openai"`, or `"edge"` (fallback is automatic).
|
|
206
|
-
- If `provider` is **unset**,
|
|
206
|
+
- If `provider` is **unset**, Clawdbot prefers `openai` (if key), then `elevenlabs` (if key),
|
|
207
207
|
otherwise `edge`.
|
|
208
208
|
- `summaryModel`: optional cheap model for auto-summary; defaults to `agents.defaults.model.primary`.
|
|
209
209
|
- Accepts `provider/model` or a configured model alias.
|
|
@@ -314,13 +314,13 @@ These override `messages.tts.*` for that host.
|
|
|
314
314
|
- Output format values follow Microsoft Speech output formats (including Ogg/WebM Opus). citeturn1search0
|
|
315
315
|
- Telegram `sendVoice` accepts OGG/MP3/M4A; use OpenAI/ElevenLabs if you need
|
|
316
316
|
guaranteed Opus voice notes. citeturn1search1
|
|
317
|
-
- If the configured Edge output format fails,
|
|
317
|
+
- If the configured Edge output format fails, Clawdbot retries with MP3.
|
|
318
318
|
|
|
319
319
|
OpenAI/ElevenLabs formats are fixed; Telegram expects Opus for voice-note UX.
|
|
320
320
|
|
|
321
321
|
## Auto-TTS behavior
|
|
322
322
|
|
|
323
|
-
When enabled,
|
|
323
|
+
When enabled, Clawdbot:
|
|
324
324
|
- skips TTS if the reply already contains media or a `MEDIA:` directive.
|
|
325
325
|
- skips very short replies (< 10 chars).
|
|
326
326
|
- summarizes long replies when enabled using `agents.defaults.model.primary` (or `summaryModel`).
|
|
@@ -350,7 +350,7 @@ Reply -> TTS enabled?
|
|
|
350
350
|
There is a single command: `/tts`.
|
|
351
351
|
See [Slash commands](/tools/slash-commands) for enablement details.
|
|
352
352
|
|
|
353
|
-
Discord note: `/tts` is a built-in Discord command, so
|
|
353
|
+
Discord note: `/tts` is a built-in Discord command, so Clawdbot registers
|
|
354
354
|
`/voice` as the native command there. Text `/tts ...` still works.
|
|
355
355
|
|
|
356
356
|
```
|
|
@@ -362,7 +362,7 @@ Discord note: `/tts` is a built-in Discord command, so Pool Bot registers
|
|
|
362
362
|
/tts provider openai
|
|
363
363
|
/tts limit 2000
|
|
364
364
|
/tts summary off
|
|
365
|
-
/tts audio Hello from
|
|
365
|
+
/tts audio Hello from Clawdbot
|
|
366
366
|
```
|
|
367
367
|
|
|
368
368
|
Notes:
|
package/docs/tui.md
CHANGED
|
@@ -9,17 +9,17 @@ read_when:
|
|
|
9
9
|
## Quick start
|
|
10
10
|
1) Start the Gateway.
|
|
11
11
|
```bash
|
|
12
|
-
|
|
12
|
+
clawdbot gateway
|
|
13
13
|
```
|
|
14
14
|
2) Open the TUI.
|
|
15
15
|
```bash
|
|
16
|
-
|
|
16
|
+
clawdbot tui
|
|
17
17
|
```
|
|
18
18
|
3) Type a message and press Enter.
|
|
19
19
|
|
|
20
20
|
Remote Gateway:
|
|
21
21
|
```bash
|
|
22
|
-
|
|
22
|
+
clawdbot tui --url ws://<host>:<port> --token <gateway-token>
|
|
23
23
|
```
|
|
24
24
|
Use `--password` if your Gateway uses password auth.
|
|
25
25
|
|
|
@@ -46,7 +46,7 @@ Use `--password` if your Gateway uses password auth.
|
|
|
46
46
|
- Turn delivery on:
|
|
47
47
|
- `/deliver on`
|
|
48
48
|
- or the Settings panel
|
|
49
|
-
- or start with `
|
|
49
|
+
- or start with `clawdbot tui --deliver`
|
|
50
50
|
|
|
51
51
|
## Pickers + overlays
|
|
52
52
|
- Model picker: list available models and set the session override.
|
|
@@ -123,12 +123,12 @@ Other Gateway slash commands (for example, `/context`) are forwarded to the Gate
|
|
|
123
123
|
|
|
124
124
|
No output after sending a message:
|
|
125
125
|
- Run `/status` in the TUI to confirm the Gateway is connected and idle/busy.
|
|
126
|
-
- Check the Gateway logs: `
|
|
127
|
-
- Confirm the agent can run: `
|
|
126
|
+
- Check the Gateway logs: `clawdbot logs --follow`.
|
|
127
|
+
- Confirm the agent can run: `clawdbot status` and `clawdbot models status`.
|
|
128
128
|
- If you expect messages in a chat channel, enable delivery (`/deliver on` or `--deliver`).
|
|
129
129
|
- `--history-limit <n>`: History entries to load (default 200)
|
|
130
130
|
|
|
131
131
|
## Troubleshooting
|
|
132
132
|
- `disconnected`: ensure the Gateway is running and your `--url/--token/--password` are correct.
|
|
133
|
-
- No agents in picker: check `
|
|
133
|
+
- No agents in picker: check `clawdbot agents list` and your routing config.
|
|
134
134
|
- Empty session picker: you might be in global scope or have no sessions yet.
|
package/docs/vps.md
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
---
|
|
2
|
-
summary: "VPS hosting hub for
|
|
2
|
+
summary: "VPS hosting hub for Clawdbot (Railway/Fly/Hetzner/exe.dev)"
|
|
3
3
|
read_when:
|
|
4
4
|
- You want to run the Gateway in the cloud
|
|
5
5
|
- You need a quick map of VPS/hosting guides
|
|
@@ -12,11 +12,8 @@ deployments work at a high level.
|
|
|
12
12
|
## Pick a provider
|
|
13
13
|
|
|
14
14
|
- **Railway** (one‑click + browser setup): [Railway](/railway)
|
|
15
|
-
- **Northflank** (one‑click + browser setup): [Northflank](/northflank)
|
|
16
|
-
- **Oracle Cloud (Always Free)**: [Oracle](/platforms/oracle) — $0/month (Always Free, ARM; capacity/signup can be finicky)
|
|
17
15
|
- **Fly.io**: [Fly.io](/platforms/fly)
|
|
18
16
|
- **Hetzner (Docker)**: [Hetzner](/platforms/hetzner)
|
|
19
|
-
- **GCP (Compute Engine)**: [GCP](/platforms/gcp)
|
|
20
17
|
- **exe.dev** (VM + HTTPS proxy): [exe.dev](/platforms/exe-dev)
|
|
21
18
|
- **AWS (EC2/Lightsail/free tier)**: works well too. Video guide:
|
|
22
19
|
https://x.com/techfrenAJ/status/2014934471095812547
|
|
@@ -26,8 +23,6 @@ deployments work at a high level.
|
|
|
26
23
|
- The **Gateway runs on the VPS** and owns state + workspace.
|
|
27
24
|
- You connect from your laptop/phone via the **Control UI** or **Tailscale/SSH**.
|
|
28
25
|
- Treat the VPS as the source of truth and **back up** the state + workspace.
|
|
29
|
-
- Secure default: keep the Gateway on loopback and access it via SSH tunnel or Tailscale Serve.
|
|
30
|
-
If you bind to `lan`/`tailnet`, require `gateway.auth.token` or `gateway.auth.password`.
|
|
31
26
|
|
|
32
27
|
Remote access: [Gateway remote](/gateway/remote)
|
|
33
28
|
Platforms hub: [Platforms](/platforms)
|
package/docs/web/control-ui.md
CHANGED
|
@@ -9,7 +9,7 @@ read_when:
|
|
|
9
9
|
The Control UI is a small **Vite + Lit** single-page app served by the Gateway:
|
|
10
10
|
|
|
11
11
|
- default: `http://<host>:18789/`
|
|
12
|
-
- optional prefix: set `gateway.controlUi.basePath` (e.g. `/
|
|
12
|
+
- optional prefix: set `gateway.controlUi.basePath` (e.g. `/clawdbot`)
|
|
13
13
|
|
|
14
14
|
It speaks **directly to the Gateway WebSocket** on the same port.
|
|
15
15
|
|
|
@@ -19,7 +19,7 @@ If the Gateway is running on the same computer, open:
|
|
|
19
19
|
|
|
20
20
|
- http://127.0.0.1:18789/ (or http://localhost:18789/)
|
|
21
21
|
|
|
22
|
-
If the page fails to load, start the Gateway first: `
|
|
22
|
+
If the page fails to load, start the Gateway first: `clawdbot gateway`.
|
|
23
23
|
|
|
24
24
|
Auth is supplied during the WebSocket handshake via:
|
|
25
25
|
- `connect.params.auth.token`
|
|
@@ -37,7 +37,7 @@ The onboarding wizard generates a gateway token by default, so paste it here on
|
|
|
37
37
|
- Skills: status, enable/disable, install, API key updates (`skills.*`)
|
|
38
38
|
- Nodes: list + caps (`node.list`)
|
|
39
39
|
- Exec approvals: edit gateway or node allowlists + ask policy for `exec host=gateway/node` (`exec.approvals.*`)
|
|
40
|
-
- Config: view/edit `~/.clawdbot/
|
|
40
|
+
- Config: view/edit `~/.clawdbot/clawdbot.json` (`config.get`, `config.set`)
|
|
41
41
|
- Config: apply + restart with validation (`config.apply`) and wake the last active session
|
|
42
42
|
- Config writes include a base-hash guard to prevent clobbering concurrent edits
|
|
43
43
|
- Config schema + form rendering (`config.schema`, including plugin + channel schemas); Raw JSON editor remains available
|
|
@@ -62,24 +62,23 @@ The onboarding wizard generates a gateway token by default, so paste it here on
|
|
|
62
62
|
Keep the Gateway on loopback and let Tailscale Serve proxy it with HTTPS:
|
|
63
63
|
|
|
64
64
|
```bash
|
|
65
|
-
|
|
65
|
+
clawdbot gateway --tailscale serve
|
|
66
66
|
```
|
|
67
67
|
|
|
68
68
|
Open:
|
|
69
69
|
- `https://<magicdns>/` (or your configured `gateway.controlUi.basePath`)
|
|
70
70
|
|
|
71
71
|
By default, Serve requests can authenticate via Tailscale identity headers
|
|
72
|
-
(`tailscale-user-login`) when `gateway.auth.allowTailscale` is `true`.
|
|
73
|
-
|
|
74
|
-
`
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
if you want to require a token/password even for Serve traffic.
|
|
72
|
+
(`tailscale-user-login`) when `gateway.auth.allowTailscale` is `true`. Clawdbot
|
|
73
|
+
only accepts these when the request hits loopback with Tailscale’s
|
|
74
|
+
`x-forwarded-*` headers. Set `gateway.auth.allowTailscale: false` (or force
|
|
75
|
+
`gateway.auth.mode: "password"`) if you want to require a token/password even
|
|
76
|
+
for Serve traffic.
|
|
78
77
|
|
|
79
78
|
### Bind to tailnet + token
|
|
80
79
|
|
|
81
80
|
```bash
|
|
82
|
-
|
|
81
|
+
clawdbot gateway --bind tailnet --token "$(openssl rand -hex 32)"
|
|
83
82
|
```
|
|
84
83
|
|
|
85
84
|
Then open:
|
|
@@ -91,7 +90,7 @@ Paste the token into the UI settings (sent as `connect.params.auth.token`).
|
|
|
91
90
|
|
|
92
91
|
If you open the dashboard over plain HTTP (`http://<lan-ip>` or `http://<tailscale-ip>`),
|
|
93
92
|
the browser runs in a **non-secure context** and blocks WebCrypto. By default,
|
|
94
|
-
|
|
93
|
+
Clawdbot **blocks** Control UI connections without device identity.
|
|
95
94
|
|
|
96
95
|
**Recommended fix:** use HTTPS (Tailscale Serve) or open the UI locally:
|
|
97
96
|
- `https://<magicdns>/` (Serve)
|
|
@@ -125,7 +124,7 @@ pnpm ui:build # auto-installs UI deps on first run
|
|
|
125
124
|
Optional absolute base (when you want fixed asset URLs):
|
|
126
125
|
|
|
127
126
|
```bash
|
|
128
|
-
CLAWDBOT_CONTROL_UI_BASE_PATH=/
|
|
127
|
+
CLAWDBOT_CONTROL_UI_BASE_PATH=/clawdbot/ pnpm ui:build
|
|
129
128
|
```
|
|
130
129
|
|
|
131
130
|
For local development (separate dev server):
|
package/docs/web/dashboard.md
CHANGED
|
@@ -19,24 +19,20 @@ Key references:
|
|
|
19
19
|
Authentication is enforced at the WebSocket handshake via `connect.params.auth`
|
|
20
20
|
(token or password). See `gateway.auth` in [Gateway configuration](/gateway/configuration).
|
|
21
21
|
|
|
22
|
-
Security note: the Control UI is an **admin surface** (chat, config, exec approvals).
|
|
23
|
-
Do not expose it publicly. The UI stores the token in `localStorage` after first load.
|
|
24
|
-
Prefer localhost, Tailscale Serve, or an SSH tunnel.
|
|
25
|
-
|
|
26
22
|
## Fast path (recommended)
|
|
27
23
|
|
|
28
24
|
- After onboarding, the CLI now auto-opens the dashboard with your token and prints the same tokenized link.
|
|
29
|
-
- Re-open anytime: `
|
|
25
|
+
- Re-open anytime: `clawdbot dashboard` (copies link, opens browser if possible, shows SSH hint if headless).
|
|
30
26
|
- The token stays local (query param only); the UI strips it after first load and saves it in localStorage.
|
|
31
27
|
|
|
32
28
|
## Token basics (local vs remote)
|
|
33
29
|
|
|
34
|
-
- **Localhost**: open `http://127.0.0.1:18789/`. If you see “unauthorized,” run `
|
|
30
|
+
- **Localhost**: open `http://127.0.0.1:18789/`. If you see “unauthorized,” run `clawdbot dashboard` and use the tokenized link (`?token=...`).
|
|
35
31
|
- **Token source**: `gateway.auth.token` (or `CLAWDBOT_GATEWAY_TOKEN`); the UI stores it after first load.
|
|
36
32
|
- **Not localhost**: use Tailscale Serve (tokenless if `gateway.auth.allowTailscale: true`), tailnet bind with a token, or an SSH tunnel. See [Web surfaces](/web).
|
|
37
33
|
|
|
38
34
|
## If you see “unauthorized” / 1008
|
|
39
35
|
|
|
40
|
-
- Run `
|
|
41
|
-
- Ensure the gateway is reachable (local: `
|
|
36
|
+
- Run `clawdbot dashboard` to get a fresh tokenized link.
|
|
37
|
+
- Ensure the gateway is reachable (local: `clawdbot status`; remote: SSH tunnel `ssh -N -L 18789:127.0.0.1:18789 user@host` then open `http://127.0.0.1:18789/?token=...`).
|
|
42
38
|
- In the dashboard settings, paste the same token you configured in `gateway.auth.token` (or `CLAWDBOT_GATEWAY_TOKEN`).
|
package/docs/web/index.md
CHANGED
|
@@ -9,7 +9,7 @@ read_when:
|
|
|
9
9
|
The Gateway serves a small **browser Control UI** (Vite + Lit) from the same port as the Gateway WebSocket:
|
|
10
10
|
|
|
11
11
|
- default: `http://<host>:18789/`
|
|
12
|
-
- optional prefix: set `gateway.controlUi.basePath` (e.g. `/
|
|
12
|
+
- optional prefix: set `gateway.controlUi.basePath` (e.g. `/clawdbot`)
|
|
13
13
|
|
|
14
14
|
Capabilities live in [Control UI](/web/control-ui).
|
|
15
15
|
This page focuses on bind modes, security, and web-facing surfaces.
|
|
@@ -27,7 +27,7 @@ You can control it via config:
|
|
|
27
27
|
```json5
|
|
28
28
|
{
|
|
29
29
|
gateway: {
|
|
30
|
-
controlUi: { enabled: true, basePath: "/
|
|
30
|
+
controlUi: { enabled: true, basePath: "/clawdbot" } // basePath optional
|
|
31
31
|
}
|
|
32
32
|
}
|
|
33
33
|
```
|
|
@@ -50,7 +50,7 @@ Keep the Gateway on loopback and let Tailscale Serve proxy it:
|
|
|
50
50
|
Then start the gateway:
|
|
51
51
|
|
|
52
52
|
```bash
|
|
53
|
-
|
|
53
|
+
clawdbot gateway
|
|
54
54
|
```
|
|
55
55
|
|
|
56
56
|
Open:
|
|
@@ -71,7 +71,7 @@ Open:
|
|
|
71
71
|
Then start the gateway (token required for non-loopback binds):
|
|
72
72
|
|
|
73
73
|
```bash
|
|
74
|
-
|
|
74
|
+
clawdbot gateway
|
|
75
75
|
```
|
|
76
76
|
|
|
77
77
|
Open:
|
|
@@ -91,8 +91,7 @@ Open:
|
|
|
91
91
|
|
|
92
92
|
## Security notes
|
|
93
93
|
|
|
94
|
-
- Gateway
|
|
95
|
-
- Non-loopback binds still **require** a shared token/password (`gateway.auth` or env).
|
|
94
|
+
- Binding the Gateway to a non-loopback address **requires** auth (`gateway.auth` or `CLAWDBOT_GATEWAY_TOKEN`).
|
|
96
95
|
- The wizard generates a gateway token by default (even on loopback).
|
|
97
96
|
- The UI sends `connect.params.auth.token` or `connect.params.auth.password`.
|
|
98
97
|
- With Serve, Tailscale identity headers can satisfy auth when
|
package/docs/web/webchat.md
CHANGED
|
@@ -16,7 +16,7 @@ Status: the macOS/iOS SwiftUI chat UI talks directly to the Gateway WebSocket.
|
|
|
16
16
|
## Quick start
|
|
17
17
|
1) Start the gateway.
|
|
18
18
|
2) Open the WebChat UI (macOS/iOS app) or the Control UI chat tab.
|
|
19
|
-
3) Ensure gateway auth is configured
|
|
19
|
+
3) Ensure gateway auth is configured if you are not on loopback.
|
|
20
20
|
|
|
21
21
|
## How it works (behavior)
|
|
22
22
|
- The UI connects to the Gateway WebSocket and uses `chat.history`, `chat.send`, and `chat.inject`.
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { ClawdbotPluginApi } from "clawdbot/plugin-sdk";
|
|
2
2
|
import { emptyPluginConfigSchema } from "clawdbot/plugin-sdk";
|
|
3
3
|
|
|
4
4
|
import { bluebubblesPlugin } from "./src/channel.js";
|
|
@@ -10,7 +10,7 @@ const plugin = {
|
|
|
10
10
|
name: "BlueBubbles",
|
|
11
11
|
description: "BlueBubbles channel plugin (macOS app)",
|
|
12
12
|
configSchema: emptyPluginConfigSchema(),
|
|
13
|
-
register(api:
|
|
13
|
+
register(api: ClawdbotPluginApi) {
|
|
14
14
|
setBlueBubblesRuntime(api.runtime);
|
|
15
15
|
api.registerChannel({ plugin: bluebubblesPlugin });
|
|
16
16
|
api.registerHttpHandler(handleBlueBubblesWebhookRequest);
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
{
|
|
2
|
-
"name": "@
|
|
3
|
-
"version": "2026.1.
|
|
2
|
+
"name": "@clawdbot/bluebubbles",
|
|
3
|
+
"version": "2026.1.24",
|
|
4
4
|
"type": "module",
|
|
5
|
-
"description": "
|
|
6
|
-
"
|
|
5
|
+
"description": "Clawdbot BlueBubbles channel plugin",
|
|
6
|
+
"clawdbot": {
|
|
7
7
|
"extensions": [
|
|
8
8
|
"./index.ts"
|
|
9
9
|
],
|
|
@@ -25,7 +25,7 @@
|
|
|
25
25
|
"order": 75
|
|
26
26
|
},
|
|
27
27
|
"install": {
|
|
28
|
-
"npmSpec": "@
|
|
28
|
+
"npmSpec": "@clawdbot/bluebubbles",
|
|
29
29
|
"localPath": "extensions/bluebubbles",
|
|
30
30
|
"defaultChoice": "npm"
|
|
31
31
|
}
|