@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
|
@@ -24,7 +24,7 @@ inside a sandbox workspace under `~/.clawdbot/sandboxes`, not your host workspac
|
|
|
24
24
|
- Default: `~/clawd`
|
|
25
25
|
- If `CLAWDBOT_PROFILE` is set and not `"default"`, the default becomes
|
|
26
26
|
`~/clawd-<profile>`.
|
|
27
|
-
- Override in `~/.clawdbot/
|
|
27
|
+
- Override in `~/.clawdbot/clawdbot.json`:
|
|
28
28
|
|
|
29
29
|
```json5
|
|
30
30
|
{
|
|
@@ -34,7 +34,7 @@ inside a sandbox workspace under `~/.clawdbot/sandboxes`, not your host workspac
|
|
|
34
34
|
}
|
|
35
35
|
```
|
|
36
36
|
|
|
37
|
-
`
|
|
37
|
+
`clawdbot onboard`, `clawdbot configure`, or `clawdbot setup` will create the
|
|
38
38
|
workspace and seed the bootstrap files if they are missing.
|
|
39
39
|
|
|
40
40
|
If you already manage the workspace files yourself, you can disable bootstrap
|
|
@@ -46,20 +46,20 @@ file creation:
|
|
|
46
46
|
|
|
47
47
|
## Extra workspace folders
|
|
48
48
|
|
|
49
|
-
Older installs may have created `~/
|
|
49
|
+
Older installs may have created `~/clawdbot`. Keeping multiple workspace
|
|
50
50
|
directories around can cause confusing auth or state drift, because only one
|
|
51
51
|
workspace is active at a time.
|
|
52
52
|
|
|
53
53
|
**Recommendation:** keep a single active workspace. If you no longer use the
|
|
54
|
-
extra folders, archive or move them to Trash (for example `trash ~/
|
|
54
|
+
extra folders, archive or move them to Trash (for example `trash ~/clawdbot`).
|
|
55
55
|
If you intentionally keep multiple workspaces, make sure
|
|
56
56
|
`agents.defaults.workspace` points to the active one.
|
|
57
57
|
|
|
58
|
-
`
|
|
58
|
+
`clawdbot doctor` warns when it detects extra workspace directories.
|
|
59
59
|
|
|
60
60
|
## Workspace file map (what each file means)
|
|
61
61
|
|
|
62
|
-
These are the standard files
|
|
62
|
+
These are the standard files Clawdbot expects inside the workspace:
|
|
63
63
|
|
|
64
64
|
- `AGENTS.md`
|
|
65
65
|
- Operating instructions for the agent and how it should use memory.
|
|
@@ -112,17 +112,17 @@ See [Memory](/concepts/memory) for the workflow and automatic memory flush.
|
|
|
112
112
|
- `canvas/` (optional)
|
|
113
113
|
- Canvas UI files for node displays (for example `canvas/index.html`).
|
|
114
114
|
|
|
115
|
-
If any bootstrap file is missing,
|
|
115
|
+
If any bootstrap file is missing, Clawdbot injects a "missing file" marker into
|
|
116
116
|
the session and continues. Large bootstrap files are truncated when injected;
|
|
117
117
|
adjust the limit with `agents.defaults.bootstrapMaxChars` (default: 20000).
|
|
118
|
-
`
|
|
118
|
+
`clawdbot setup` can recreate missing defaults without overwriting existing
|
|
119
119
|
files.
|
|
120
120
|
|
|
121
121
|
## What is NOT in the workspace
|
|
122
122
|
|
|
123
123
|
These live under `~/.clawdbot/` and should NOT be committed to the workspace repo:
|
|
124
124
|
|
|
125
|
-
- `~/.clawdbot/
|
|
125
|
+
- `~/.clawdbot/clawdbot.json` (config)
|
|
126
126
|
- `~/.clawdbot/credentials/` (OAuth tokens, API keys)
|
|
127
127
|
- `~/.clawdbot/agents/<agentId>/sessions/` (session transcripts + metadata)
|
|
128
128
|
- `~/.clawdbot/skills/` (managed skills)
|
|
@@ -218,8 +218,8 @@ Suggested `.gitignore` starter:
|
|
|
218
218
|
## Moving the workspace to a new machine
|
|
219
219
|
|
|
220
220
|
1. Clone the repo to the desired path (default `~/clawd`).
|
|
221
|
-
2. Set `agents.defaults.workspace` to that path in `~/.clawdbot/
|
|
222
|
-
3. Run `
|
|
221
|
+
2. Set `agents.defaults.workspace` to that path in `~/.clawdbot/clawdbot.json`.
|
|
222
|
+
3. Run `clawdbot setup --workspace <path>` to seed any missing files.
|
|
223
223
|
4. If you need sessions, copy `~/.clawdbot/agents/<agentId>/sessions/` from the
|
|
224
224
|
old machine separately.
|
|
225
225
|
|
package/docs/concepts/agent.md
CHANGED
|
@@ -5,13 +5,13 @@ read_when:
|
|
|
5
5
|
---
|
|
6
6
|
# Agent Runtime 🤖
|
|
7
7
|
|
|
8
|
-
|
|
8
|
+
Clawdbot runs a single embedded agent runtime derived from **p-mono**.
|
|
9
9
|
|
|
10
10
|
## Workspace (required)
|
|
11
11
|
|
|
12
|
-
|
|
12
|
+
Clawdbot uses a single agent workspace directory (`agents.defaults.workspace`) as the agent’s **only** working directory (`cwd`) for tools and context.
|
|
13
13
|
|
|
14
|
-
Recommended: use `
|
|
14
|
+
Recommended: use `clawdbot setup` to create `~/.clawdbot/clawdbot.json` if missing and initialize the workspace files.
|
|
15
15
|
|
|
16
16
|
Full workspace layout + backup guide: [Agent workspace](/concepts/agent-workspace)
|
|
17
17
|
|
|
@@ -21,7 +21,7 @@ per-session workspaces under `agents.defaults.sandbox.workspaceRoot` (see
|
|
|
21
21
|
|
|
22
22
|
## Bootstrap files (injected)
|
|
23
23
|
|
|
24
|
-
Inside `agents.defaults.workspace`,
|
|
24
|
+
Inside `agents.defaults.workspace`, Clawdbot expects these user-editable files:
|
|
25
25
|
- `AGENTS.md` — operating instructions + “memory”
|
|
26
26
|
- `SOUL.md` — persona, boundaries, tone
|
|
27
27
|
- `TOOLS.md` — user-maintained tool notes (e.g. `imsg`, `sag`, conventions)
|
|
@@ -29,11 +29,11 @@ Inside `agents.defaults.workspace`, Pool Bot expects these user-editable files:
|
|
|
29
29
|
- `IDENTITY.md` — agent name/vibe/emoji
|
|
30
30
|
- `USER.md` — user profile + preferred address
|
|
31
31
|
|
|
32
|
-
On the first turn of a new session,
|
|
32
|
+
On the first turn of a new session, Clawdbot injects the contents of these files directly into the agent context.
|
|
33
33
|
|
|
34
34
|
Blank files are skipped. Large files are trimmed and truncated with a marker so prompts stay lean (read the file for full content).
|
|
35
35
|
|
|
36
|
-
If a file is missing,
|
|
36
|
+
If a file is missing, Clawdbot injects a single “missing file” marker line (and `clawdbot setup` will create a safe default template).
|
|
37
37
|
|
|
38
38
|
`BOOTSTRAP.md` is only created for a **brand new workspace** (no other bootstrap files present). If you delete it after completing the ritual, it should not be recreated on later restarts.
|
|
39
39
|
|
|
@@ -52,7 +52,7 @@ guidance for how *you* want them used.
|
|
|
52
52
|
|
|
53
53
|
## Skills
|
|
54
54
|
|
|
55
|
-
|
|
55
|
+
Clawdbot loads skills from three locations (workspace wins on name conflict):
|
|
56
56
|
- Bundled (shipped with the install)
|
|
57
57
|
- Managed/local: `~/.clawdbot/skills`
|
|
58
58
|
- Workspace: `<workspace>/skills`
|
|
@@ -61,7 +61,7 @@ Skills can be gated by config/env (see `skills` in [Gateway configuration](/gate
|
|
|
61
61
|
|
|
62
62
|
## p-mono integration
|
|
63
63
|
|
|
64
|
-
|
|
64
|
+
Clawdbot reuses pieces of the p-mono codebase (models/tools), but **session management, discovery, and tool wiring are Clawdbot-owned**.
|
|
65
65
|
|
|
66
66
|
- No p-coding agent runtime.
|
|
67
67
|
- No `~/.pi/agent` or `<workspace>/.pi` settings are consulted.
|
|
@@ -71,7 +71,7 @@ Pool Bot reuses pieces of the p-mono codebase (models/tools), but **session mana
|
|
|
71
71
|
Session transcripts are stored as JSONL at:
|
|
72
72
|
- `~/.clawdbot/agents/<agentId>/sessions/<SessionId>.jsonl`
|
|
73
73
|
|
|
74
|
-
The session ID is stable and chosen by
|
|
74
|
+
The session ID is stable and chosen by Clawdbot.
|
|
75
75
|
Legacy Pi/Tau session folders are **not** read.
|
|
76
76
|
|
|
77
77
|
## Steering while streaming
|
|
@@ -104,7 +104,7 @@ Model refs in config (for example `agents.defaults.model` and `agents.defaults.m
|
|
|
104
104
|
|
|
105
105
|
- Use `provider/model` when configuring models.
|
|
106
106
|
- If the model ID itself contains `/` (OpenRouter-style), include the provider prefix (example: `openrouter/moonshotai/kimi-k2`).
|
|
107
|
-
- If you omit the provider,
|
|
107
|
+
- If you omit the provider, Clawdbot treats the input as an alias or a model for the **default provider** (only works when there is no `/` in the model ID).
|
|
108
108
|
|
|
109
109
|
## Configuration (minimal)
|
|
110
110
|
|
|
@@ -111,7 +111,7 @@ Details: [Gateway protocol](/gateway/protocol), [Pairing](/start/pairing),
|
|
|
111
111
|
|
|
112
112
|
## Operations snapshot
|
|
113
113
|
|
|
114
|
-
- Start: `
|
|
114
|
+
- Start: `clawdbot gateway` (foreground, logs to stdout).
|
|
115
115
|
- Health: `health` over WS (also included in `hello-ok`).
|
|
116
116
|
- Supervision: launchd/systemd for auto‑restart.
|
|
117
117
|
|
|
@@ -6,7 +6,7 @@ read_when:
|
|
|
6
6
|
# Channels & routing
|
|
7
7
|
|
|
8
8
|
|
|
9
|
-
|
|
9
|
+
Clawdbot routes replies **back to the channel where a message came from**. The
|
|
10
10
|
model does not choose a channel; routing is deterministic and controlled by the
|
|
11
11
|
host configuration.
|
|
12
12
|
|
|
@@ -53,7 +53,7 @@ The matched agent determines which workspace and session store are used.
|
|
|
53
53
|
|
|
54
54
|
## Broadcast groups (run multiple agents)
|
|
55
55
|
|
|
56
|
-
Broadcast groups let you run **multiple agents** for the same peer **when
|
|
56
|
+
Broadcast groups let you run **multiple agents** for the same peer **when Clawdbot would normally reply** (for example: in WhatsApp groups, after mention/activation gating).
|
|
57
57
|
|
|
58
58
|
Config:
|
|
59
59
|
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
---
|
|
2
|
-
summary: "Context window + compaction: how
|
|
2
|
+
summary: "Context window + compaction: how Clawdbot keeps sessions under model limits"
|
|
3
3
|
read_when:
|
|
4
4
|
- You want to understand auto-compaction and /compact
|
|
5
5
|
- You are debugging long sessions hitting context limits
|
|
6
6
|
---
|
|
7
7
|
# Context Window & Compaction
|
|
8
8
|
|
|
9
|
-
Every model has a **context window** (max tokens it can see). Long-running chats accumulate messages and tool results; once the window is tight,
|
|
9
|
+
Every model has a **context window** (max tokens it can see). Long-running chats accumulate messages and tool results; once the window is tight, Clawdbot **compacts** older history to stay within limits.
|
|
10
10
|
|
|
11
11
|
## What compaction is
|
|
12
12
|
Compaction **summarizes older conversation** into a compact summary entry and keeps recent messages intact. The summary is stored in the session history, so future requests use:
|
|
@@ -19,13 +19,13 @@ Compaction **persists** in the session’s JSONL history.
|
|
|
19
19
|
See [Compaction config & modes](/concepts/compaction) for the `agents.defaults.compaction` settings.
|
|
20
20
|
|
|
21
21
|
## Auto-compaction (default on)
|
|
22
|
-
When a session nears or exceeds the model’s context window,
|
|
22
|
+
When a session nears or exceeds the model’s context window, Clawdbot triggers auto-compaction and may retry the original request using the compacted context.
|
|
23
23
|
|
|
24
24
|
You’ll see:
|
|
25
25
|
- `🧹 Auto-compaction complete` in verbose mode
|
|
26
26
|
- `/status` showing `🧹 Compactions: <count>`
|
|
27
27
|
|
|
28
|
-
Before compaction,
|
|
28
|
+
Before compaction, Clawdbot can run a **silent memory flush** turn to store
|
|
29
29
|
durable notes to disk. See [Memory](/concepts/memory) for details and config.
|
|
30
30
|
|
|
31
31
|
## Manual compaction
|
|
@@ -35,7 +35,7 @@ Use `/compact` (optionally with instructions) to force a compaction pass:
|
|
|
35
35
|
```
|
|
36
36
|
|
|
37
37
|
## Context window source
|
|
38
|
-
Context window is model-specific.
|
|
38
|
+
Context window is model-specific. Clawdbot uses the model definition from the configured provider catalog to determine limits.
|
|
39
39
|
|
|
40
40
|
## Compaction vs pruning
|
|
41
41
|
- **Compaction**: summarises and **persists** in JSONL.
|
package/docs/concepts/context.md
CHANGED
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
---
|
|
2
2
|
summary: "Context: what the model sees, how it is built, and how to inspect it"
|
|
3
3
|
read_when:
|
|
4
|
-
- You want to understand what “context” means in
|
|
4
|
+
- You want to understand what “context” means in Clawdbot
|
|
5
5
|
- You are debugging why the model “knows” something (or forgot it)
|
|
6
6
|
- You want to reduce context overhead (/context, /status, /compact)
|
|
7
7
|
---
|
|
8
8
|
# Context
|
|
9
9
|
|
|
10
|
-
“Context” is **everything
|
|
10
|
+
“Context” is **everything Clawdbot sends to the model for a run**. It is bounded by the model’s **context window** (token limit).
|
|
11
11
|
|
|
12
12
|
Beginner mental model:
|
|
13
|
-
- **System prompt** (
|
|
13
|
+
- **System prompt** (Clawdbot-built): rules, tools, skills list, time/runtime, and injected workspace files.
|
|
14
14
|
- **Conversation history**: your messages + the assistant’s messages for this session.
|
|
15
15
|
- **Tool calls/results + attachments**: command output, file reads, images/audio, etc.
|
|
16
16
|
|
|
@@ -83,9 +83,9 @@ Everything the model receives counts, including:
|
|
|
83
83
|
- Compaction summaries and pruning artifacts.
|
|
84
84
|
- Provider “wrappers” or hidden headers (not visible, still counted).
|
|
85
85
|
|
|
86
|
-
## How
|
|
86
|
+
## How Clawdbot builds the system prompt
|
|
87
87
|
|
|
88
|
-
The system prompt is **
|
|
88
|
+
The system prompt is **Clawdbot-owned** and rebuilt each run. It includes:
|
|
89
89
|
- Tool list + short descriptions.
|
|
90
90
|
- Skills list (metadata only; see below).
|
|
91
91
|
- Workspace location.
|
|
@@ -97,7 +97,7 @@ Full breakdown: [System Prompt](/concepts/system-prompt).
|
|
|
97
97
|
|
|
98
98
|
## Injected workspace files (Project Context)
|
|
99
99
|
|
|
100
|
-
By default,
|
|
100
|
+
By default, Clawdbot injects a fixed set of workspace files (if present):
|
|
101
101
|
- `AGENTS.md`
|
|
102
102
|
- `SOUL.md`
|
|
103
103
|
- `TOOLS.md`
|
|
@@ -19,7 +19,7 @@ Note: `agents.list[].groupChat.mentionPatterns` is now used by Telegram/Discord/
|
|
|
19
19
|
- Group system prompt: on the first turn of a group session (and whenever `/activation` changes the mode) we inject a short blurb into the system prompt like `You are replying inside the WhatsApp group "<subject>". Group members: Alice (+44...), Bob (+43...), … Activation: trigger-only … Address the specific sender noted in the message context.` If metadata isn’t available we still tell the agent it’s a group chat.
|
|
20
20
|
|
|
21
21
|
## Config example (WhatsApp)
|
|
22
|
-
Add a `groupChat` block to `~/.clawdbot/
|
|
22
|
+
Add a `groupChat` block to `~/.clawdbot/clawdbot.json` so display-name pings work even when WhatsApp strips the visual `@` in the text body:
|
|
23
23
|
|
|
24
24
|
```json5
|
|
25
25
|
{
|
|
@@ -37,7 +37,7 @@ Add a `groupChat` block to `~/.clawdbot/moltbot.json` so display-name pings work
|
|
|
37
37
|
groupChat: {
|
|
38
38
|
historyLimit: 50,
|
|
39
39
|
mentionPatterns: [
|
|
40
|
-
"@?
|
|
40
|
+
"@?clawdbot",
|
|
41
41
|
"\\+?15555550123"
|
|
42
42
|
]
|
|
43
43
|
}
|
|
@@ -48,7 +48,7 @@ Add a `groupChat` block to `~/.clawdbot/moltbot.json` so display-name pings work
|
|
|
48
48
|
```
|
|
49
49
|
|
|
50
50
|
Notes:
|
|
51
|
-
- The regexes are case-insensitive; they cover a display-name ping like `@
|
|
51
|
+
- The regexes are case-insensitive; they cover a display-name ping like `@clawdbot` and the raw number with or without `+`/spaces.
|
|
52
52
|
- WhatsApp still sends canonical mentions via `mentionedJids` when someone taps the contact, so the number fallback is rarely needed but is a useful safety net.
|
|
53
53
|
|
|
54
54
|
### Activation command (owner-only)
|
|
@@ -60,8 +60,8 @@ Use the group chat command:
|
|
|
60
60
|
Only the owner number (from `channels.whatsapp.allowFrom`, or the bot’s own E.164 when unset) can change this. Send `/status` as a standalone message in the group to see the current activation mode.
|
|
61
61
|
|
|
62
62
|
## How to use
|
|
63
|
-
1) Add your WhatsApp account (the one running
|
|
64
|
-
2) Say `@
|
|
63
|
+
1) Add your WhatsApp account (the one running Clawdbot) to the group.
|
|
64
|
+
2) Say `@clawdbot …` (or include the number). Only allowlisted senders can trigger it unless you set `groupPolicy: "open"`.
|
|
65
65
|
3) The agent prompt will include recent group context plus the trailing `[from: …]` marker so it can address the right person.
|
|
66
66
|
4) Session-level directives (`/verbose on`, `/think high`, `/new` or `/reset`, `/compact`) apply only to that group’s session; send them as standalone messages so they register. Your personal DM session remains independent.
|
|
67
67
|
|
package/docs/concepts/groups.md
CHANGED
|
@@ -5,17 +5,17 @@ read_when:
|
|
|
5
5
|
---
|
|
6
6
|
# Groups
|
|
7
7
|
|
|
8
|
-
|
|
8
|
+
Clawdbot treats group chats consistently across surfaces: WhatsApp, Telegram, Discord, Slack, Signal, iMessage, Microsoft Teams.
|
|
9
9
|
|
|
10
10
|
## Beginner intro (2 minutes)
|
|
11
|
-
|
|
12
|
-
If **you** are in a group,
|
|
11
|
+
Clawdbot “lives” on your own messaging accounts. There is no separate WhatsApp bot user.
|
|
12
|
+
If **you** are in a group, Clawdbot can see that group and respond there.
|
|
13
13
|
|
|
14
14
|
Default behavior:
|
|
15
15
|
- Groups are restricted (`groupPolicy: "allowlist"`).
|
|
16
16
|
- Replies require a mention unless you explicitly disable mention gating.
|
|
17
17
|
|
|
18
|
-
Translation: allowlisted senders can trigger
|
|
18
|
+
Translation: allowlisted senders can trigger Clawdbot by mentioning it.
|
|
19
19
|
|
|
20
20
|
> TL;DR
|
|
21
21
|
> - **DM access** is controlled by `*.allowFrom`.
|
|
@@ -215,7 +215,7 @@ Replying to a bot message counts as an implicit mention (when the channel suppor
|
|
|
215
215
|
{
|
|
216
216
|
id: "main",
|
|
217
217
|
groupChat: {
|
|
218
|
-
mentionPatterns: ["@clawd", "
|
|
218
|
+
mentionPatterns: ["@clawd", "clawdbot", "\\+15555550123"],
|
|
219
219
|
historyLimit: 50
|
|
220
220
|
}
|
|
221
221
|
}
|
|
@@ -232,42 +232,6 @@ Notes:
|
|
|
232
232
|
- Discord defaults live in `channels.discord.guilds."*"` (overridable per guild/channel).
|
|
233
233
|
- Group history context is wrapped uniformly across channels and is **pending-only** (messages skipped due to mention gating); use `messages.groupChat.historyLimit` for the global default and `channels.<channel>.historyLimit` (or `channels.<channel>.accounts.*.historyLimit`) for overrides. Set `0` to disable.
|
|
234
234
|
|
|
235
|
-
## Group/channel tool restrictions (optional)
|
|
236
|
-
Some channel configs support restricting which tools are available **inside a specific group/room/channel**.
|
|
237
|
-
|
|
238
|
-
- `tools`: allow/deny tools for the whole group.
|
|
239
|
-
- `toolsBySender`: per-sender overrides within the group (keys are sender IDs/usernames/emails/phone numbers depending on the channel). Use `"*"` as a wildcard.
|
|
240
|
-
|
|
241
|
-
Resolution order (most specific wins):
|
|
242
|
-
1) group/channel `toolsBySender` match
|
|
243
|
-
2) group/channel `tools`
|
|
244
|
-
3) default (`"*"`) `toolsBySender` match
|
|
245
|
-
4) default (`"*"`) `tools`
|
|
246
|
-
|
|
247
|
-
Example (Telegram):
|
|
248
|
-
|
|
249
|
-
```json5
|
|
250
|
-
{
|
|
251
|
-
channels: {
|
|
252
|
-
telegram: {
|
|
253
|
-
groups: {
|
|
254
|
-
"*": { tools: { deny: ["exec"] } },
|
|
255
|
-
"-1001234567890": {
|
|
256
|
-
tools: { deny: ["exec", "read", "write"] },
|
|
257
|
-
toolsBySender: {
|
|
258
|
-
"123456789": { alsoAllow: ["exec"] }
|
|
259
|
-
}
|
|
260
|
-
}
|
|
261
|
-
}
|
|
262
|
-
}
|
|
263
|
-
}
|
|
264
|
-
}
|
|
265
|
-
```
|
|
266
|
-
|
|
267
|
-
Notes:
|
|
268
|
-
- Group/channel tool restrictions are applied in addition to global/agent tool policy (deny still wins).
|
|
269
|
-
- Some channels use different nesting for rooms/channels (e.g., Discord `guilds.*.channels.*`, Slack `channels.*`, MS Teams `teams.*.channels.*`).
|
|
270
|
-
|
|
271
235
|
## Group allowlists
|
|
272
236
|
When `channels.whatsapp.groups`, `channels.telegram.groups`, or `channels.imessage.groups` is configured, the keys act as a group allowlist. Use `"*"` to allow all groups while still setting default mention behavior.
|
|
273
237
|
|
|
@@ -7,7 +7,7 @@ read_when:
|
|
|
7
7
|
---
|
|
8
8
|
# Markdown formatting
|
|
9
9
|
|
|
10
|
-
|
|
10
|
+
Clawdbot formats outbound Markdown by converting it into a shared intermediate
|
|
11
11
|
representation (IR) before rendering channel-specific output. The IR keeps the
|
|
12
12
|
source text intact while carrying style/link spans so chunking and rendering can
|
|
13
13
|
stay consistent across channels.
|
|
@@ -39,7 +39,7 @@ stay consistent across channels.
|
|
|
39
39
|
Input Markdown:
|
|
40
40
|
|
|
41
41
|
```markdown
|
|
42
|
-
Hello **world** — see [docs](https://docs.
|
|
42
|
+
Hello **world** — see [docs](https://docs.clawd.bot).
|
|
43
43
|
```
|
|
44
44
|
|
|
45
45
|
IR (schematic):
|
|
@@ -51,7 +51,7 @@ IR (schematic):
|
|
|
51
51
|
{ "start": 6, "end": 11, "style": "bold" }
|
|
52
52
|
],
|
|
53
53
|
"links": [
|
|
54
|
-
{ "start": 19, "end": 23, "href": "https://docs.
|
|
54
|
+
{ "start": 19, "end": 23, "href": "https://docs.clawd.bot" }
|
|
55
55
|
]
|
|
56
56
|
}
|
|
57
57
|
```
|
package/docs/concepts/memory.md
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
---
|
|
2
|
-
summary: "How
|
|
2
|
+
summary: "How Clawdbot memory works (workspace files + automatic memory flush)"
|
|
3
3
|
read_when:
|
|
4
4
|
- You want the memory file layout and workflow
|
|
5
5
|
- You want to tune the automatic pre-compaction memory flush
|
|
6
6
|
---
|
|
7
7
|
# Memory
|
|
8
8
|
|
|
9
|
-
|
|
9
|
+
Clawdbot memory is **plain Markdown in the agent workspace**. The files are the
|
|
10
10
|
source of truth; the model only "remembers" what gets written to disk.
|
|
11
11
|
|
|
12
12
|
Memory search tools are provided by the active memory plugin (default:
|
|
@@ -36,7 +36,7 @@ These files live under the workspace (`agents.defaults.workspace`, default
|
|
|
36
36
|
|
|
37
37
|
## Automatic memory flush (pre-compaction ping)
|
|
38
38
|
|
|
39
|
-
When a session is **close to auto-compaction**,
|
|
39
|
+
When a session is **close to auto-compaction**, Clawdbot triggers a **silent,
|
|
40
40
|
agentic turn** that reminds the model to write durable memory **before** the
|
|
41
41
|
context is compacted. The default prompts explicitly say the model *may reply*,
|
|
42
42
|
but usually `NO_REPLY` is the correct response so the user never sees this turn.
|
|
@@ -75,13 +75,13 @@ For the full compaction lifecycle, see
|
|
|
75
75
|
|
|
76
76
|
## Vector memory search
|
|
77
77
|
|
|
78
|
-
|
|
78
|
+
Clawdbot can build a small vector index over `MEMORY.md` and `memory/*.md` so
|
|
79
79
|
semantic queries can find related notes even when wording differs.
|
|
80
80
|
|
|
81
81
|
Defaults:
|
|
82
82
|
- Enabled by default.
|
|
83
83
|
- Watches memory files for changes (debounced).
|
|
84
|
-
- Uses remote embeddings by default. If `memorySearch.provider` is not set,
|
|
84
|
+
- Uses remote embeddings by default. If `memorySearch.provider` is not set, Clawdbot auto-selects:
|
|
85
85
|
1. `local` if a `memorySearch.local.modelPath` is configured and the file exists.
|
|
86
86
|
2. `openai` if an OpenAI key can be resolved.
|
|
87
87
|
3. `gemini` if a Gemini key can be resolved.
|
|
@@ -89,7 +89,7 @@ Defaults:
|
|
|
89
89
|
- Local mode uses node-llama-cpp and may require `pnpm approve-builds`.
|
|
90
90
|
- Uses sqlite-vec (when available) to accelerate vector search inside SQLite.
|
|
91
91
|
|
|
92
|
-
Remote embeddings **require** an API key for the embedding provider.
|
|
92
|
+
Remote embeddings **require** an API key for the embedding provider. Clawdbot
|
|
93
93
|
resolves keys from auth profiles, `models.providers.*.apiKey`, or environment
|
|
94
94
|
variables. Codex OAuth only covers chat/completions and does **not** satisfy
|
|
95
95
|
embeddings for memory search. For Gemini, use `GEMINI_API_KEY` or
|
|
@@ -197,15 +197,15 @@ Local mode:
|
|
|
197
197
|
- File type: Markdown only (`MEMORY.md`, `memory/**/*.md`).
|
|
198
198
|
- Index storage: per-agent SQLite at `~/.clawdbot/memory/<agentId>.sqlite` (configurable via `agents.defaults.memorySearch.store.path`, supports `{agentId}` token).
|
|
199
199
|
- Freshness: watcher on `MEMORY.md` + `memory/` marks the index dirty (debounce 1.5s). Sync is scheduled on session start, on search, or on an interval and runs asynchronously. Session transcripts use delta thresholds to trigger background sync.
|
|
200
|
-
- Reindex triggers: the index stores the embedding **provider/model + endpoint fingerprint + chunking params**. If any of those change,
|
|
200
|
+
- Reindex triggers: the index stores the embedding **provider/model + endpoint fingerprint + chunking params**. If any of those change, Clawdbot automatically resets and reindexes the entire store.
|
|
201
201
|
|
|
202
202
|
### Hybrid search (BM25 + vector)
|
|
203
203
|
|
|
204
|
-
When enabled,
|
|
204
|
+
When enabled, Clawdbot combines:
|
|
205
205
|
- **Vector similarity** (semantic match, wording can differ)
|
|
206
206
|
- **BM25 keyword relevance** (exact tokens like IDs, env vars, code symbols)
|
|
207
207
|
|
|
208
|
-
If full-text search is unavailable on your platform,
|
|
208
|
+
If full-text search is unavailable on your platform, Clawdbot falls back to vector-only search.
|
|
209
209
|
|
|
210
210
|
#### Why hybrid?
|
|
211
211
|
|
|
@@ -266,7 +266,7 @@ agents: {
|
|
|
266
266
|
|
|
267
267
|
### Embedding cache
|
|
268
268
|
|
|
269
|
-
|
|
269
|
+
Clawdbot can cache **chunk embeddings** in SQLite so reindexing and frequent updates (especially session transcripts) don't re-embed unchanged text.
|
|
270
270
|
|
|
271
271
|
Config:
|
|
272
272
|
|
|
@@ -326,7 +326,7 @@ agents: {
|
|
|
326
326
|
|
|
327
327
|
### SQLite vector acceleration (sqlite-vec)
|
|
328
328
|
|
|
329
|
-
When the sqlite-vec extension is available,
|
|
329
|
+
When the sqlite-vec extension is available, Clawdbot stores embeddings in a
|
|
330
330
|
SQLite virtual table (`vec0`) and performs vector distance queries in the
|
|
331
331
|
database. This keeps search fast without loading every embedding into JS.
|
|
332
332
|
|
|
@@ -350,7 +350,7 @@ agents: {
|
|
|
350
350
|
Notes:
|
|
351
351
|
- `enabled` defaults to true; when disabled, search falls back to in-process
|
|
352
352
|
cosine similarity over stored embeddings.
|
|
353
|
-
- If the sqlite-vec extension is missing or fails to load,
|
|
353
|
+
- If the sqlite-vec extension is missing or fails to load, Clawdbot logs the
|
|
354
354
|
error and continues with the JS fallback (no vector table).
|
|
355
355
|
- `extensionPath` overrides the bundled sqlite-vec path (useful for custom builds
|
|
356
356
|
or non-standard install locations).
|
|
@@ -7,7 +7,7 @@ read_when:
|
|
|
7
7
|
---
|
|
8
8
|
# Messages
|
|
9
9
|
|
|
10
|
-
This page ties together how
|
|
10
|
+
This page ties together how Clawdbot handles inbound messages, sessions, queueing,
|
|
11
11
|
streaming, and reasoning visibility.
|
|
12
12
|
|
|
13
13
|
## Message flow (high level)
|
|
@@ -29,7 +29,7 @@ See [Configuration](/gateway/configuration) for full schema.
|
|
|
29
29
|
|
|
30
30
|
## Inbound dedupe
|
|
31
31
|
|
|
32
|
-
Channels can redeliver the same message after reconnects.
|
|
32
|
+
Channels can redeliver the same message after reconnects. Clawdbot keeps a
|
|
33
33
|
short-lived cache keyed by channel/account/peer/session/message id so duplicate
|
|
34
34
|
deliveries do not trigger another agent run.
|
|
35
35
|
|
|
@@ -75,7 +75,7 @@ Details: [Session management](/concepts/session).
|
|
|
75
75
|
|
|
76
76
|
## Inbound bodies and history context
|
|
77
77
|
|
|
78
|
-
|
|
78
|
+
Clawdbot separates the **prompt body** from the **command body**:
|
|
79
79
|
- `Body`: prompt text sent to the agent. This may include channel envelopes and
|
|
80
80
|
optional history wrappers.
|
|
81
81
|
- `CommandBody`: raw user text for directive/command parsing.
|
|
@@ -127,7 +127,7 @@ Details: [Streaming + chunking](/concepts/streaming).
|
|
|
127
127
|
|
|
128
128
|
## Reasoning visibility and tokens
|
|
129
129
|
|
|
130
|
-
|
|
130
|
+
Clawdbot can expose or hide model reasoning:
|
|
131
131
|
- `/reasoning on|off|stream` controls visibility.
|
|
132
132
|
- Reasoning content still counts toward token usage when produced by the model.
|
|
133
133
|
- Telegram supports reasoning stream into the draft bubble.
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
---
|
|
2
|
-
summary: "How
|
|
2
|
+
summary: "How Clawdbot rotates auth profiles and falls back across models"
|
|
3
3
|
read_when:
|
|
4
4
|
- Diagnosing auth profile rotation, cooldowns, or model fallback behavior
|
|
5
5
|
- Updating failover rules for auth profiles or models
|
|
@@ -7,7 +7,7 @@ read_when:
|
|
|
7
7
|
|
|
8
8
|
# Model failover
|
|
9
9
|
|
|
10
|
-
|
|
10
|
+
Clawdbot handles failures in two stages:
|
|
11
11
|
1) **Auth profile rotation** within the current provider.
|
|
12
12
|
2) **Model fallback** to the next model in `agents.defaults.model.fallbacks`.
|
|
13
13
|
|
|
@@ -15,7 +15,7 @@ This doc explains the runtime rules and the data that backs them.
|
|
|
15
15
|
|
|
16
16
|
## Auth storage (keys + OAuth)
|
|
17
17
|
|
|
18
|
-
|
|
18
|
+
Clawdbot uses **auth profiles** for both API keys and OAuth tokens.
|
|
19
19
|
|
|
20
20
|
- Secrets live in `~/.clawdbot/agents/<agentId>/agent/auth-profiles.json` (legacy: `~/.clawdbot/agent/auth-profiles.json`).
|
|
21
21
|
- Config `auth.profiles` / `auth.order` are **metadata + routing only** (no secrets).
|
|
@@ -37,20 +37,20 @@ Profiles live in `~/.clawdbot/agents/<agentId>/agent/auth-profiles.json` under `
|
|
|
37
37
|
|
|
38
38
|
## Rotation order
|
|
39
39
|
|
|
40
|
-
When a provider has multiple profiles,
|
|
40
|
+
When a provider has multiple profiles, Clawdbot chooses an order like this:
|
|
41
41
|
|
|
42
42
|
1) **Explicit config**: `auth.order[provider]` (if set).
|
|
43
43
|
2) **Configured profiles**: `auth.profiles` filtered by provider.
|
|
44
44
|
3) **Stored profiles**: entries in `auth-profiles.json` for the provider.
|
|
45
45
|
|
|
46
|
-
If no explicit order is configured,
|
|
46
|
+
If no explicit order is configured, Clawdbot uses a round‑robin order:
|
|
47
47
|
- **Primary key:** profile type (**OAuth before API keys**).
|
|
48
48
|
- **Secondary key:** `usageStats.lastUsed` (oldest first, within each type).
|
|
49
49
|
- **Cooldown/disabled profiles** are moved to the end, ordered by soonest expiry.
|
|
50
50
|
|
|
51
51
|
### Session stickiness (cache-friendly)
|
|
52
52
|
|
|
53
|
-
|
|
53
|
+
Clawdbot **pins the chosen auth profile per session** to keep provider caches warm.
|
|
54
54
|
It does **not** rotate on every request. The pinned profile is reused until:
|
|
55
55
|
- the session is reset (`/new` / `/reset`)
|
|
56
56
|
- a compaction completes (compaction count increments)
|
|
@@ -60,9 +60,9 @@ Manual selection via `/model …@<profileId>` sets a **user override** for that
|
|
|
60
60
|
and is not auto‑rotated until a new session starts.
|
|
61
61
|
|
|
62
62
|
Auto‑pinned profiles (selected by the session router) are treated as a **preference**:
|
|
63
|
-
they are tried first, but
|
|
63
|
+
they are tried first, but Clawdbot may rotate to another profile on rate limits/timeouts.
|
|
64
64
|
User‑pinned profiles stay locked to that profile; if it fails and model fallbacks
|
|
65
|
-
are configured,
|
|
65
|
+
are configured, Clawdbot moves to the next model instead of switching profiles.
|
|
66
66
|
|
|
67
67
|
### Why OAuth can “look lost”
|
|
68
68
|
|
|
@@ -73,7 +73,7 @@ If you have both an OAuth profile and an API key profile for the same provider,
|
|
|
73
73
|
## Cooldowns
|
|
74
74
|
|
|
75
75
|
When a profile fails due to auth/rate‑limit errors (or a timeout that looks
|
|
76
|
-
like rate limiting),
|
|
76
|
+
like rate limiting), Clawdbot marks it in cooldown and moves to the next profile.
|
|
77
77
|
Format/invalid‑request errors (for example Cloud Code Assist tool call ID
|
|
78
78
|
validation failures) are treated as failover‑worthy and use the same cooldowns.
|
|
79
79
|
|
|
@@ -99,7 +99,7 @@ State is stored in `auth-profiles.json` under `usageStats`:
|
|
|
99
99
|
|
|
100
100
|
## Billing disables
|
|
101
101
|
|
|
102
|
-
Billing/credit failures (for example “insufficient credits” / “credit balance too low”) are treated as failover‑worthy, but they’re usually not transient. Instead of a short cooldown,
|
|
102
|
+
Billing/credit failures (for example “insufficient credits” / “credit balance too low”) are treated as failover‑worthy, but they’re usually not transient. Instead of a short cooldown, Clawdbot marks the profile as **disabled** (with a longer backoff) and rotates to the next profile/provider.
|
|
103
103
|
|
|
104
104
|
State is stored in `auth-profiles.json`:
|
|
105
105
|
|
|
@@ -120,7 +120,7 @@ Defaults:
|
|
|
120
120
|
|
|
121
121
|
## Model fallback
|
|
122
122
|
|
|
123
|
-
If all profiles for a provider fail,
|
|
123
|
+
If all profiles for a provider fail, Clawdbot moves to the next model in
|
|
124
124
|
`agents.defaults.model.fallbacks`. This applies to auth failures, rate limits, and
|
|
125
125
|
timeouts that exhausted profile rotation (other errors do not advance fallback).
|
|
126
126
|
|