@quantumclaw/quantumclaw 2026.3.22
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 +4601 -0
- package/LICENSE +21 -0
- package/README.md +559 -0
- package/assets/avatar-placeholder.svg +19 -0
- package/assets/chrome-extension/icons/icon128.png +0 -0
- package/assets/chrome-extension/icons/icon16.png +0 -0
- package/assets/chrome-extension/icons/icon32.png +0 -0
- package/assets/chrome-extension/icons/icon48.png +0 -0
- package/assets/dmg-background-small.png +0 -0
- package/assets/dmg-background.png +0 -0
- package/docs/.i18n/README.md +31 -0
- package/docs/.i18n/glossary.ja-JP.json +14 -0
- package/docs/.i18n/glossary.zh-CN.json +302 -0
- package/docs/.i18n/ja-JP.tm.jsonl +0 -0
- package/docs/assets/install-script.svg +1 -0
- package/docs/assets/macos-onboarding/01-macos-warning.jpeg +0 -0
- package/docs/assets/macos-onboarding/02-local-networks.jpeg +0 -0
- package/docs/assets/macos-onboarding/03-security-notice.png +0 -0
- package/docs/assets/macos-onboarding/04-choose-gateway.png +0 -0
- package/docs/assets/macos-onboarding/05-permissions.png +0 -0
- package/docs/assets/pixel-lobster.svg +60 -0
- package/docs/assets/quantumclaw-logo-text-dark.png +0 -0
- package/docs/assets/quantumclaw-logo-text-dark.svg +418 -0
- package/docs/assets/quantumclaw-logo-text.png +0 -0
- package/docs/assets/quantumclaw-logo-text.svg +418 -0
- package/docs/assets/showcase/agents-ui.jpg +0 -0
- package/docs/assets/showcase/bambu-cli.png +0 -0
- package/docs/assets/showcase/codexmonitor.png +0 -0
- package/docs/assets/showcase/gohome-grafana.png +0 -0
- package/docs/assets/showcase/ios-testflight.jpg +0 -0
- package/docs/assets/showcase/oura-health.png +0 -0
- package/docs/assets/showcase/padel-cli.svg +11 -0
- package/docs/assets/showcase/padel-screenshot.jpg +0 -0
- package/docs/assets/showcase/papla-tts.jpg +0 -0
- package/docs/assets/showcase/pr-review-telegram.jpg +0 -0
- package/docs/assets/showcase/roborock-screenshot.jpg +0 -0
- package/docs/assets/showcase/roborock-status.svg +13 -0
- package/docs/assets/showcase/roof-camera-sky.jpg +0 -0
- package/docs/assets/showcase/snag.png +0 -0
- package/docs/assets/showcase/tesco-shop.jpg +0 -0
- package/docs/assets/showcase/wienerlinien.png +0 -0
- package/docs/assets/showcase/wine-cellar-skill.jpg +0 -0
- package/docs/assets/showcase/winix-air-purifier.jpg +0 -0
- package/docs/assets/showcase/xuezh-pronunciation.jpeg +0 -0
- package/docs/assets/sponsors/blacksmith.svg +14 -0
- package/docs/assets/sponsors/convex.svg +16 -0
- package/docs/assets/sponsors/openai.svg +3 -0
- package/docs/assets/sponsors/vercel.svg +5 -0
- package/docs/auth-credential-semantics.md +53 -0
- package/docs/automation/auth-monitoring.md +44 -0
- package/docs/automation/cron-jobs.md +727 -0
- package/docs/automation/cron-vs-heartbeat.md +286 -0
- package/docs/automation/gmail-pubsub.md +256 -0
- package/docs/automation/hooks.md +1056 -0
- package/docs/automation/poll.md +86 -0
- package/docs/automation/standing-orders.md +251 -0
- package/docs/automation/troubleshooting.md +122 -0
- package/docs/automation/webhook.md +217 -0
- package/docs/brave-search.md +93 -0
- package/docs/channels/bluebubbles.md +347 -0
- package/docs/channels/broadcast-groups.md +442 -0
- package/docs/channels/channel-routing.md +139 -0
- package/docs/channels/discord.md +1229 -0
- package/docs/channels/feishu.md +747 -0
- package/docs/channels/googlechat.md +261 -0
- package/docs/channels/group-messages.md +84 -0
- package/docs/channels/groups.md +379 -0
- package/docs/channels/imessage.md +367 -0
- package/docs/channels/index.md +47 -0
- package/docs/channels/irc.md +242 -0
- package/docs/channels/line.md +194 -0
- package/docs/channels/location.md +56 -0
- package/docs/channels/matrix.md +677 -0
- package/docs/channels/mattermost.md +427 -0
- package/docs/channels/msteams.md +780 -0
- package/docs/channels/nextcloud-talk.md +138 -0
- package/docs/channels/nostr.md +249 -0
- package/docs/channels/pairing.md +114 -0
- package/docs/channels/signal.md +329 -0
- package/docs/channels/slack.md +603 -0
- package/docs/channels/synology-chat.md +134 -0
- package/docs/channels/telegram.md +987 -0
- package/docs/channels/tlon.md +276 -0
- package/docs/channels/troubleshooting.md +118 -0
- package/docs/channels/twitch.md +379 -0
- package/docs/channels/whatsapp.md +460 -0
- package/docs/channels/zalo.md +243 -0
- package/docs/channels/zalouser.md +181 -0
- package/docs/ci.md +55 -0
- package/docs/cli/acp.md +288 -0
- package/docs/cli/agent.md +29 -0
- package/docs/cli/agents.md +123 -0
- package/docs/cli/approvals.md +50 -0
- package/docs/cli/backup.md +76 -0
- package/docs/cli/browser.md +106 -0
- package/docs/cli/channels.md +102 -0
- package/docs/cli/clawbot.md +21 -0
- package/docs/cli/completion.md +35 -0
- package/docs/cli/config.md +295 -0
- package/docs/cli/configure.md +36 -0
- package/docs/cli/cron.md +77 -0
- package/docs/cli/daemon.md +53 -0
- package/docs/cli/dashboard.md +22 -0
- package/docs/cli/devices.md +139 -0
- package/docs/cli/directory.md +63 -0
- package/docs/cli/dns.md +23 -0
- package/docs/cli/docs.md +15 -0
- package/docs/cli/doctor.md +48 -0
- package/docs/cli/gateway.md +235 -0
- package/docs/cli/health.md +21 -0
- package/docs/cli/hooks.md +329 -0
- package/docs/cli/index.md +1150 -0
- package/docs/cli/logs.md +28 -0
- package/docs/cli/memory.md +66 -0
- package/docs/cli/message.md +278 -0
- package/docs/cli/models.md +81 -0
- package/docs/cli/node.md +127 -0
- package/docs/cli/nodes.md +75 -0
- package/docs/cli/onboard.md +157 -0
- package/docs/cli/pairing.md +32 -0
- package/docs/cli/plugins.md +210 -0
- package/docs/cli/qr.md +46 -0
- package/docs/cli/reset.md +20 -0
- package/docs/cli/sandbox.md +197 -0
- package/docs/cli/secrets.md +188 -0
- package/docs/cli/security.md +79 -0
- package/docs/cli/sessions.md +110 -0
- package/docs/cli/setup.md +29 -0
- package/docs/cli/skills.md +36 -0
- package/docs/cli/status.md +30 -0
- package/docs/cli/system.md +60 -0
- package/docs/cli/tui.md +30 -0
- package/docs/cli/uninstall.md +20 -0
- package/docs/cli/update.md +103 -0
- package/docs/cli/voicecall.md +34 -0
- package/docs/cli/webhooks.md +25 -0
- package/docs/concepts/agent-loop.md +148 -0
- package/docs/concepts/agent-workspace.md +236 -0
- package/docs/concepts/agent.md +122 -0
- package/docs/concepts/architecture.md +137 -0
- package/docs/concepts/compaction.md +123 -0
- package/docs/concepts/context-engine.md +268 -0
- package/docs/concepts/context.md +172 -0
- package/docs/concepts/delegate-architecture.md +296 -0
- package/docs/concepts/features.md +73 -0
- package/docs/concepts/markdown-formatting.md +130 -0
- package/docs/concepts/memory.md +108 -0
- package/docs/concepts/messages.md +154 -0
- package/docs/concepts/model-failover.md +152 -0
- package/docs/concepts/model-providers.md +607 -0
- package/docs/concepts/models.md +225 -0
- package/docs/concepts/multi-agent.md +552 -0
- package/docs/concepts/oauth.md +158 -0
- package/docs/concepts/presence.md +102 -0
- package/docs/concepts/queue.md +89 -0
- package/docs/concepts/retry.md +69 -0
- package/docs/concepts/session-pruning.md +121 -0
- package/docs/concepts/session-tool.md +242 -0
- package/docs/concepts/session.md +310 -0
- package/docs/concepts/streaming.md +155 -0
- package/docs/concepts/system-prompt.md +132 -0
- package/docs/concepts/timezone.md +91 -0
- package/docs/concepts/typebox.md +291 -0
- package/docs/concepts/typing-indicators.md +68 -0
- package/docs/concepts/usage-tracking.md +35 -0
- package/docs/date-time.md +128 -0
- package/docs/debug/node-issue.md +85 -0
- package/docs/diagnostics/flags.md +91 -0
- package/docs/docs.json +2078 -0
- package/docs/gateway/authentication.md +179 -0
- package/docs/gateway/background-process.md +97 -0
- package/docs/gateway/bonjour.md +177 -0
- package/docs/gateway/bridge-protocol.md +91 -0
- package/docs/gateway/cli-backends.md +225 -0
- package/docs/gateway/configuration-examples.md +651 -0
- package/docs/gateway/configuration-reference.md +3123 -0
- package/docs/gateway/configuration.md +633 -0
- package/docs/gateway/discovery.md +123 -0
- package/docs/gateway/doctor.md +362 -0
- package/docs/gateway/gateway-lock.md +34 -0
- package/docs/gateway/health.md +44 -0
- package/docs/gateway/heartbeat.md +393 -0
- package/docs/gateway/index.md +261 -0
- package/docs/gateway/local-models.md +152 -0
- package/docs/gateway/logging.md +113 -0
- package/docs/gateway/multiple-gateways.md +112 -0
- package/docs/gateway/network-model.md +22 -0
- package/docs/gateway/openai-http-api.md +132 -0
- package/docs/gateway/openresponses-http-api.md +295 -0
- package/docs/gateway/openshell.md +307 -0
- package/docs/gateway/pairing.md +99 -0
- package/docs/gateway/protocol.md +267 -0
- package/docs/gateway/remote-gateway-readme.md +158 -0
- package/docs/gateway/remote.md +153 -0
- package/docs/gateway/sandbox-vs-tool-policy-vs-elevated.md +134 -0
- package/docs/gateway/sandboxing.md +469 -0
- package/docs/gateway/secrets-plan-contract.md +116 -0
- package/docs/gateway/secrets.md +503 -0
- package/docs/gateway/security/index.md +1220 -0
- package/docs/gateway/tailscale.md +132 -0
- package/docs/gateway/tools-invoke-http-api.md +118 -0
- package/docs/gateway/troubleshooting.md +378 -0
- package/docs/gateway/trusted-proxy-auth.md +330 -0
- package/docs/help/debugging.md +168 -0
- package/docs/help/environment.md +163 -0
- package/docs/help/faq.md +2997 -0
- package/docs/help/index.md +28 -0
- package/docs/help/scripts.md +28 -0
- package/docs/help/testing.md +526 -0
- package/docs/help/troubleshooting.md +297 -0
- package/docs/images/configure-model-picker-unsearchable.png +0 -0
- package/docs/images/feishu-step2-create-app.png +0 -0
- package/docs/images/feishu-step3-credentials.png +0 -0
- package/docs/images/feishu-step4-permissions.png +0 -0
- package/docs/images/feishu-step5-bot-capability.png +0 -0
- package/docs/images/feishu-step6-event-subscription.png +0 -0
- package/docs/images/feishu-verification-token.png +0 -0
- package/docs/images/groups-flow.svg +52 -0
- package/docs/images/mobile-ui-screenshot.png +0 -0
- package/docs/index.md +196 -0
- package/docs/install/ansible.md +230 -0
- package/docs/install/azure.md +311 -0
- package/docs/install/bun.md +55 -0
- package/docs/install/development-channels.md +120 -0
- package/docs/install/digitalocean.md +129 -0
- package/docs/install/docker-vm-runtime.md +142 -0
- package/docs/install/docker.md +375 -0
- package/docs/install/exe-dev.md +126 -0
- package/docs/install/fly.md +501 -0
- package/docs/install/gcp.md +402 -0
- package/docs/install/hetzner.md +251 -0
- package/docs/install/index.md +183 -0
- package/docs/install/installer.md +415 -0
- package/docs/install/kubernetes.md +191 -0
- package/docs/install/macos-vm.md +281 -0
- package/docs/install/migrating-matrix.md +346 -0
- package/docs/install/migrating.md +110 -0
- package/docs/install/nix.md +89 -0
- package/docs/install/node.md +138 -0
- package/docs/install/northflank.mdx +54 -0
- package/docs/install/oracle.md +156 -0
- package/docs/install/podman.md +133 -0
- package/docs/install/railway.mdx +100 -0
- package/docs/install/raspberry-pi.md +159 -0
- package/docs/install/render.mdx +169 -0
- package/docs/install/uninstall.md +128 -0
- package/docs/install/updating.md +128 -0
- package/docs/ja-JP/index.md +186 -0
- package/docs/ja-JP/start/getting-started.md +125 -0
- package/docs/ja-JP/start/wizard.md +77 -0
- package/docs/logging.md +352 -0
- package/docs/nav-tabs-underline.js +100 -0
- package/docs/network.md +54 -0
- package/docs/nodes/audio.md +187 -0
- package/docs/nodes/camera.md +162 -0
- package/docs/nodes/images.md +72 -0
- package/docs/nodes/index.md +393 -0
- package/docs/nodes/location-command.md +98 -0
- package/docs/nodes/media-understanding.md +394 -0
- package/docs/nodes/talk.md +92 -0
- package/docs/nodes/troubleshooting.md +114 -0
- package/docs/nodes/voicewake.md +66 -0
- package/docs/perplexity.md +174 -0
- package/docs/pi-dev.md +80 -0
- package/docs/pi.md +567 -0
- package/docs/platforms/android.md +168 -0
- package/docs/platforms/digitalocean.md +266 -0
- package/docs/platforms/index.md +54 -0
- package/docs/platforms/ios.md +220 -0
- package/docs/platforms/linux.md +94 -0
- package/docs/platforms/mac/bundled-gateway.md +73 -0
- package/docs/platforms/mac/canvas.md +125 -0
- package/docs/platforms/mac/child-process.md +69 -0
- package/docs/platforms/mac/dev-setup.md +104 -0
- package/docs/platforms/mac/health.md +34 -0
- package/docs/platforms/mac/icon.md +31 -0
- package/docs/platforms/mac/logging.md +57 -0
- package/docs/platforms/mac/menu-bar.md +81 -0
- package/docs/platforms/mac/peekaboo.md +65 -0
- package/docs/platforms/mac/permissions.md +50 -0
- package/docs/platforms/mac/remote.md +84 -0
- package/docs/platforms/mac/signing.md +47 -0
- package/docs/platforms/mac/skills.md +33 -0
- package/docs/platforms/mac/voice-overlay.md +60 -0
- package/docs/platforms/mac/voicewake.md +67 -0
- package/docs/platforms/mac/webchat.md +43 -0
- package/docs/platforms/mac/xpc.md +61 -0
- package/docs/platforms/macos.md +226 -0
- package/docs/platforms/oracle.md +303 -0
- package/docs/platforms/raspberry-pi.md +412 -0
- package/docs/platforms/windows.md +241 -0
- package/docs/plugins/agent-tools.md +10 -0
- package/docs/plugins/architecture.md +1366 -0
- package/docs/plugins/building-extensions.md +10 -0
- package/docs/plugins/building-plugins.md +239 -0
- package/docs/plugins/bundles.md +181 -0
- package/docs/plugins/community.md +145 -0
- package/docs/plugins/manifest.md +241 -0
- package/docs/plugins/sdk-channel-plugins.md +370 -0
- package/docs/plugins/sdk-entrypoints.md +161 -0
- package/docs/plugins/sdk-migration.md +172 -0
- package/docs/plugins/sdk-overview.md +196 -0
- package/docs/plugins/sdk-provider-plugins.md +370 -0
- package/docs/plugins/sdk-runtime.md +345 -0
- package/docs/plugins/sdk-setup.md +331 -0
- package/docs/plugins/sdk-testing.md +263 -0
- package/docs/plugins/voice-call.md +380 -0
- package/docs/plugins/zalouser.md +77 -0
- package/docs/prose.md +134 -0
- package/docs/providers/anthropic.md +259 -0
- package/docs/providers/bedrock.md +176 -0
- package/docs/providers/claude-max-api-proxy.md +154 -0
- package/docs/providers/cloudflare-ai-gateway.md +71 -0
- package/docs/providers/deepgram.md +93 -0
- package/docs/providers/github-copilot.md +72 -0
- package/docs/providers/glm.md +43 -0
- package/docs/providers/google.md +78 -0
- package/docs/providers/groq.md +96 -0
- package/docs/providers/huggingface.md +209 -0
- package/docs/providers/index.md +69 -0
- package/docs/providers/kilocode.md +74 -0
- package/docs/providers/litellm.md +154 -0
- package/docs/providers/minimax.md +224 -0
- package/docs/providers/mistral.md +54 -0
- package/docs/providers/models.md +45 -0
- package/docs/providers/modelstudio.md +66 -0
- package/docs/providers/moonshot.md +175 -0
- package/docs/providers/nvidia.md +55 -0
- package/docs/providers/ollama.md +352 -0
- package/docs/providers/openai.md +303 -0
- package/docs/providers/opencode-go.md +45 -0
- package/docs/providers/opencode.md +64 -0
- package/docs/providers/openrouter.md +37 -0
- package/docs/providers/perplexity-provider.md +62 -0
- package/docs/providers/qianfan.md +38 -0
- package/docs/providers/qwen.md +53 -0
- package/docs/providers/sglang.md +104 -0
- package/docs/providers/synthetic.md +99 -0
- package/docs/providers/together.md +66 -0
- package/docs/providers/venice.md +282 -0
- package/docs/providers/vercel-ai-gateway.md +60 -0
- package/docs/providers/vllm.md +92 -0
- package/docs/providers/volcengine.md +74 -0
- package/docs/providers/xai.md +60 -0
- package/docs/providers/xiaomi.md +86 -0
- package/docs/providers/zai.md +46 -0
- package/docs/reference/AGENTS.default.md +126 -0
- package/docs/reference/RELEASING.md +42 -0
- package/docs/reference/api-usage-costs.md +144 -0
- package/docs/reference/credits.md +30 -0
- package/docs/reference/device-models.md +47 -0
- package/docs/reference/memory-config.md +711 -0
- package/docs/reference/prompt-caching.md +185 -0
- package/docs/reference/rpc.md +43 -0
- package/docs/reference/secretref-credential-surface.md +140 -0
- package/docs/reference/secretref-user-supplied-credentials-matrix.json +563 -0
- package/docs/reference/session-management-compaction.md +324 -0
- package/docs/reference/templates/AGENTS.dev.md +83 -0
- package/docs/reference/templates/AGENTS.md +219 -0
- package/docs/reference/templates/BOOT.md +11 -0
- package/docs/reference/templates/BOOTSTRAP.md +62 -0
- package/docs/reference/templates/HEARTBEAT.md +14 -0
- package/docs/reference/templates/IDENTITY.dev.md +47 -0
- package/docs/reference/templates/IDENTITY.md +29 -0
- package/docs/reference/templates/SOUL.dev.md +76 -0
- package/docs/reference/templates/SOUL.md +43 -0
- package/docs/reference/templates/TOOLS.dev.md +24 -0
- package/docs/reference/templates/TOOLS.md +47 -0
- package/docs/reference/templates/USER.dev.md +18 -0
- package/docs/reference/templates/USER.md +23 -0
- package/docs/reference/test.md +90 -0
- package/docs/reference/token-use.md +175 -0
- package/docs/reference/transcript-hygiene.md +151 -0
- package/docs/reference/wizard.md +235 -0
- package/docs/security/CONTRIBUTING-THREAT-MODEL.md +98 -0
- package/docs/security/THREAT-MODEL-ATLAS.md +611 -0
- package/docs/security/formal-verification.md +167 -0
- package/docs/start/bootstrapping.md +41 -0
- package/docs/start/docs-directory.md +66 -0
- package/docs/start/getting-started.md +116 -0
- package/docs/start/hubs.md +198 -0
- package/docs/start/lore.md +219 -0
- package/docs/start/onboarding-overview.md +67 -0
- package/docs/start/onboarding.md +91 -0
- package/docs/start/openclaw.md +221 -0
- package/docs/start/quickstart.md +22 -0
- package/docs/start/setup.md +164 -0
- package/docs/start/showcase.md +418 -0
- package/docs/start/wizard-cli-automation.md +215 -0
- package/docs/start/wizard-cli-reference.md +299 -0
- package/docs/start/wizard.md +125 -0
- package/docs/style.css +37 -0
- package/docs/tools/acp-agents.md +623 -0
- package/docs/tools/agent-send.md +100 -0
- package/docs/tools/apply-patch.md +51 -0
- package/docs/tools/brave-search.md +93 -0
- package/docs/tools/browser-linux-troubleshooting.md +138 -0
- package/docs/tools/browser-login.md +73 -0
- package/docs/tools/browser-wsl2-windows-remote-cdp-troubleshooting.md +211 -0
- package/docs/tools/browser.md +731 -0
- package/docs/tools/btw.md +142 -0
- package/docs/tools/capability-cookbook.md +119 -0
- package/docs/tools/clawhub.md +298 -0
- package/docs/tools/creating-skills.md +117 -0
- package/docs/tools/diffs.md +386 -0
- package/docs/tools/elevated.md +114 -0
- package/docs/tools/exec-approvals.md +430 -0
- package/docs/tools/exec.md +207 -0
- package/docs/tools/firecrawl.md +140 -0
- package/docs/tools/index.md +137 -0
- package/docs/tools/llm-task.md +119 -0
- package/docs/tools/lobster.md +340 -0
- package/docs/tools/loop-detection.md +100 -0
- package/docs/tools/multi-agent-sandbox-tools.md +364 -0
- package/docs/tools/pdf.md +156 -0
- package/docs/tools/perplexity-search.md +174 -0
- package/docs/tools/plugin.md +255 -0
- package/docs/tools/reactions.md +64 -0
- package/docs/tools/skills-config.md +86 -0
- package/docs/tools/skills.md +309 -0
- package/docs/tools/slash-commands.md +294 -0
- package/docs/tools/subagents.md +295 -0
- package/docs/tools/tavily.md +125 -0
- package/docs/tools/thinking.md +96 -0
- package/docs/tools/tts.md +406 -0
- package/docs/tools/web.md +516 -0
- package/docs/tts.md +406 -0
- package/docs/vps.md +112 -0
- package/docs/web/control-ui.md +275 -0
- package/docs/web/dashboard.md +54 -0
- package/docs/web/index.md +120 -0
- package/docs/web/tui.md +170 -0
- package/docs/web/webchat.md +61 -0
- package/docs/whatsapp-openclaw-ai-zh.jpg +0 -0
- package/docs/whatsapp-openclaw.jpg +0 -0
- package/docs/zh-CN/AGENTS.md +61 -0
- package/docs/zh-CN/automation/auth-monitoring.md +47 -0
- package/docs/zh-CN/automation/cron-jobs.md +435 -0
- package/docs/zh-CN/automation/cron-vs-heartbeat.md +286 -0
- package/docs/zh-CN/automation/gmail-pubsub.md +249 -0
- package/docs/zh-CN/automation/hooks.md +1051 -0
- package/docs/zh-CN/automation/poll.md +76 -0
- package/docs/zh-CN/automation/troubleshooting.md +8 -0
- package/docs/zh-CN/automation/webhook.md +163 -0
- package/docs/zh-CN/brave-search.md +60 -0
- package/docs/zh-CN/channels/bluebubbles.md +354 -0
- package/docs/zh-CN/channels/broadcast-groups.md +449 -0
- package/docs/zh-CN/channels/channel-routing.md +117 -0
- package/docs/zh-CN/channels/discord.md +468 -0
- package/docs/zh-CN/channels/feishu.md +728 -0
- package/docs/zh-CN/channels/googlechat.md +257 -0
- package/docs/zh-CN/channels/grammy.md +38 -0
- package/docs/zh-CN/channels/group-messages.md +91 -0
- package/docs/zh-CN/channels/groups.md +379 -0
- package/docs/zh-CN/channels/imessage.md +302 -0
- package/docs/zh-CN/channels/index.md +53 -0
- package/docs/zh-CN/channels/line.md +180 -0
- package/docs/zh-CN/channels/location.md +63 -0
- package/docs/zh-CN/channels/matrix.md +221 -0
- package/docs/zh-CN/channels/mattermost.md +144 -0
- package/docs/zh-CN/channels/msteams.md +775 -0
- package/docs/zh-CN/channels/nextcloud-talk.md +142 -0
- package/docs/zh-CN/channels/nostr.md +249 -0
- package/docs/zh-CN/channels/pairing.md +89 -0
- package/docs/zh-CN/channels/signal.md +209 -0
- package/docs/zh-CN/channels/slack.md +531 -0
- package/docs/zh-CN/channels/synology-chat.md +138 -0
- package/docs/zh-CN/channels/telegram.md +751 -0
- package/docs/zh-CN/channels/tlon.md +136 -0
- package/docs/zh-CN/channels/troubleshooting.md +36 -0
- package/docs/zh-CN/channels/twitch.md +385 -0
- package/docs/zh-CN/channels/whatsapp.md +411 -0
- package/docs/zh-CN/channels/zalo.md +196 -0
- package/docs/zh-CN/channels/zalouser.md +147 -0
- package/docs/zh-CN/cli/acp.md +173 -0
- package/docs/zh-CN/cli/agent.md +30 -0
- package/docs/zh-CN/cli/agents.md +82 -0
- package/docs/zh-CN/cli/approvals.md +57 -0
- package/docs/zh-CN/cli/browser.md +114 -0
- package/docs/zh-CN/cli/channels.md +86 -0
- package/docs/zh-CN/cli/config.md +57 -0
- package/docs/zh-CN/cli/configure.md +38 -0
- package/docs/zh-CN/cli/cron.md +43 -0
- package/docs/zh-CN/cli/dashboard.md +23 -0
- package/docs/zh-CN/cli/devices.md +74 -0
- package/docs/zh-CN/cli/directory.md +70 -0
- package/docs/zh-CN/cli/dns.md +30 -0
- package/docs/zh-CN/cli/docs.md +22 -0
- package/docs/zh-CN/cli/doctor.md +48 -0
- package/docs/zh-CN/cli/gateway.md +206 -0
- package/docs/zh-CN/cli/health.md +28 -0
- package/docs/zh-CN/cli/hooks.md +298 -0
- package/docs/zh-CN/cli/index.md +1143 -0
- package/docs/zh-CN/cli/logs.md +31 -0
- package/docs/zh-CN/cli/memory.md +52 -0
- package/docs/zh-CN/cli/message.md +246 -0
- package/docs/zh-CN/cli/models.md +85 -0
- package/docs/zh-CN/cli/node.md +115 -0
- package/docs/zh-CN/cli/nodes.md +80 -0
- package/docs/zh-CN/cli/onboard.md +164 -0
- package/docs/zh-CN/cli/pairing.md +28 -0
- package/docs/zh-CN/cli/plugins.md +66 -0
- package/docs/zh-CN/cli/reset.md +24 -0
- package/docs/zh-CN/cli/sandbox.md +158 -0
- package/docs/zh-CN/cli/security.md +33 -0
- package/docs/zh-CN/cli/sessions.md +23 -0
- package/docs/zh-CN/cli/setup.md +36 -0
- package/docs/zh-CN/cli/skills.md +33 -0
- package/docs/zh-CN/cli/status.md +33 -0
- package/docs/zh-CN/cli/system.md +63 -0
- package/docs/zh-CN/cli/tui.md +30 -0
- package/docs/zh-CN/cli/uninstall.md +24 -0
- package/docs/zh-CN/cli/update.md +101 -0
- package/docs/zh-CN/cli/voicecall.md +41 -0
- package/docs/zh-CN/cli/webhooks.md +32 -0
- package/docs/zh-CN/concepts/agent-loop.md +146 -0
- package/docs/zh-CN/concepts/agent-workspace.md +219 -0
- package/docs/zh-CN/concepts/agent.md +115 -0
- package/docs/zh-CN/concepts/architecture.md +123 -0
- package/docs/zh-CN/concepts/compaction.md +67 -0
- package/docs/zh-CN/concepts/context.md +168 -0
- package/docs/zh-CN/concepts/features.md +59 -0
- package/docs/zh-CN/concepts/markdown-formatting.md +117 -0
- package/docs/zh-CN/concepts/memory.md +412 -0
- package/docs/zh-CN/concepts/messages.md +141 -0
- package/docs/zh-CN/concepts/model-failover.md +145 -0
- package/docs/zh-CN/concepts/model-providers.md +606 -0
- package/docs/zh-CN/concepts/models.md +225 -0
- package/docs/zh-CN/concepts/multi-agent.md +372 -0
- package/docs/zh-CN/concepts/oauth.md +164 -0
- package/docs/zh-CN/concepts/presence.md +99 -0
- package/docs/zh-CN/concepts/queue.md +94 -0
- package/docs/zh-CN/concepts/retry.md +76 -0
- package/docs/zh-CN/concepts/session-pruning.md +129 -0
- package/docs/zh-CN/concepts/session-tool.md +200 -0
- package/docs/zh-CN/concepts/session.md +166 -0
- package/docs/zh-CN/concepts/streaming.md +133 -0
- package/docs/zh-CN/concepts/system-prompt.md +101 -0
- package/docs/zh-CN/concepts/timezone.md +96 -0
- package/docs/zh-CN/concepts/typebox.md +284 -0
- package/docs/zh-CN/concepts/typing-indicators.md +74 -0
- package/docs/zh-CN/concepts/usage-tracking.md +42 -0
- package/docs/zh-CN/date-time.md +129 -0
- package/docs/zh-CN/debug/node-issue.md +90 -0
- package/docs/zh-CN/diagnostics/flags.md +98 -0
- package/docs/zh-CN/gateway/authentication.md +184 -0
- package/docs/zh-CN/gateway/background-process.md +100 -0
- package/docs/zh-CN/gateway/bonjour.md +174 -0
- package/docs/zh-CN/gateway/bridge-protocol.md +86 -0
- package/docs/zh-CN/gateway/cli-backends.md +213 -0
- package/docs/zh-CN/gateway/configuration-examples.md +587 -0
- package/docs/zh-CN/gateway/configuration-reference.md +3103 -0
- package/docs/zh-CN/gateway/configuration.md +640 -0
- package/docs/zh-CN/gateway/discovery.md +123 -0
- package/docs/zh-CN/gateway/doctor.md +238 -0
- package/docs/zh-CN/gateway/gateway-lock.md +41 -0
- package/docs/zh-CN/gateway/health.md +42 -0
- package/docs/zh-CN/gateway/heartbeat.md +274 -0
- package/docs/zh-CN/gateway/index.md +335 -0
- package/docs/zh-CN/gateway/local-models.md +159 -0
- package/docs/zh-CN/gateway/logging.md +114 -0
- package/docs/zh-CN/gateway/multiple-gateways.md +119 -0
- package/docs/zh-CN/gateway/network-model.md +23 -0
- package/docs/zh-CN/gateway/openai-http-api.md +125 -0
- package/docs/zh-CN/gateway/openresponses-http-api.md +317 -0
- package/docs/zh-CN/gateway/pairing.md +99 -0
- package/docs/zh-CN/gateway/protocol.md +220 -0
- package/docs/zh-CN/gateway/remote-gateway-readme.md +164 -0
- package/docs/zh-CN/gateway/remote.md +133 -0
- package/docs/zh-CN/gateway/sandbox-vs-tool-policy-vs-elevated.md +135 -0
- package/docs/zh-CN/gateway/sandboxing.md +188 -0
- package/docs/zh-CN/gateway/security/index.md +777 -0
- package/docs/zh-CN/gateway/tailscale.md +124 -0
- package/docs/zh-CN/gateway/tools-invoke-http-api.md +92 -0
- package/docs/zh-CN/gateway/troubleshooting.md +771 -0
- package/docs/zh-CN/help/debugging.md +160 -0
- package/docs/zh-CN/help/environment.md +88 -0
- package/docs/zh-CN/help/faq.md +2640 -0
- package/docs/zh-CN/help/index.md +28 -0
- package/docs/zh-CN/help/scripts.md +35 -0
- package/docs/zh-CN/help/testing.md +375 -0
- package/docs/zh-CN/help/troubleshooting.md +104 -0
- package/docs/zh-CN/index.md +186 -0
- package/docs/zh-CN/install/ansible.md +215 -0
- package/docs/zh-CN/install/bun.md +65 -0
- package/docs/zh-CN/install/development-channels.md +81 -0
- package/docs/zh-CN/install/docker.md +532 -0
- package/docs/zh-CN/install/exe-dev.md +133 -0
- package/docs/zh-CN/install/fly.md +490 -0
- package/docs/zh-CN/install/gcp.md +510 -0
- package/docs/zh-CN/install/hetzner.md +337 -0
- package/docs/zh-CN/install/index.md +235 -0
- package/docs/zh-CN/install/installer.md +422 -0
- package/docs/zh-CN/install/macos-vm.md +288 -0
- package/docs/zh-CN/install/migrating.md +199 -0
- package/docs/zh-CN/install/nix.md +99 -0
- package/docs/zh-CN/install/node.md +8 -0
- package/docs/zh-CN/install/northflank.mdx +60 -0
- package/docs/zh-CN/install/railway.mdx +106 -0
- package/docs/zh-CN/install/render.mdx +169 -0
- package/docs/zh-CN/install/uninstall.md +135 -0
- package/docs/zh-CN/install/updating.md +233 -0
- package/docs/zh-CN/logging.md +329 -0
- package/docs/zh-CN/network.md +59 -0
- package/docs/zh-CN/nodes/audio.md +120 -0
- package/docs/zh-CN/nodes/camera.md +162 -0
- package/docs/zh-CN/nodes/images.md +79 -0
- package/docs/zh-CN/nodes/index.md +348 -0
- package/docs/zh-CN/nodes/location-command.md +120 -0
- package/docs/zh-CN/nodes/media-understanding.md +380 -0
- package/docs/zh-CN/nodes/talk.md +97 -0
- package/docs/zh-CN/nodes/troubleshooting.md +8 -0
- package/docs/zh-CN/nodes/voicewake.md +72 -0
- package/docs/zh-CN/perplexity.md +102 -0
- package/docs/zh-CN/pi-dev.md +77 -0
- package/docs/zh-CN/pi.md +619 -0
- package/docs/zh-CN/platforms/android.md +155 -0
- package/docs/zh-CN/platforms/digitalocean.md +273 -0
- package/docs/zh-CN/platforms/index.md +60 -0
- package/docs/zh-CN/platforms/ios.md +114 -0
- package/docs/zh-CN/platforms/linux.md +100 -0
- package/docs/zh-CN/platforms/mac/bundled-gateway.md +75 -0
- package/docs/zh-CN/platforms/mac/canvas.md +128 -0
- package/docs/zh-CN/platforms/mac/child-process.md +73 -0
- package/docs/zh-CN/platforms/mac/dev-setup.md +109 -0
- package/docs/zh-CN/platforms/mac/health.md +41 -0
- package/docs/zh-CN/platforms/mac/icon.md +38 -0
- package/docs/zh-CN/platforms/mac/logging.md +64 -0
- package/docs/zh-CN/platforms/mac/menu-bar.md +88 -0
- package/docs/zh-CN/platforms/mac/peekaboo.md +62 -0
- package/docs/zh-CN/platforms/mac/permissions.md +46 -0
- package/docs/zh-CN/platforms/mac/remote.md +90 -0
- package/docs/zh-CN/platforms/mac/signing.md +54 -0
- package/docs/zh-CN/platforms/mac/skills.md +40 -0
- package/docs/zh-CN/platforms/mac/voice-overlay.md +67 -0
- package/docs/zh-CN/platforms/mac/voicewake.md +74 -0
- package/docs/zh-CN/platforms/mac/webchat.md +43 -0
- package/docs/zh-CN/platforms/mac/xpc.md +68 -0
- package/docs/zh-CN/platforms/macos.md +193 -0
- package/docs/zh-CN/platforms/oracle.md +310 -0
- package/docs/zh-CN/platforms/raspberry-pi.md +416 -0
- package/docs/zh-CN/platforms/windows.md +247 -0
- package/docs/zh-CN/plugins/agent-tools.md +99 -0
- package/docs/zh-CN/plugins/manifest.md +68 -0
- package/docs/zh-CN/plugins/voice-call.md +250 -0
- package/docs/zh-CN/plugins/zalouser.md +88 -0
- package/docs/zh-CN/prose.md +141 -0
- package/docs/zh-CN/providers/anthropic.md +265 -0
- package/docs/zh-CN/providers/bedrock.md +170 -0
- package/docs/zh-CN/providers/claude-max-api-proxy.md +155 -0
- package/docs/zh-CN/providers/cloudflare-ai-gateway.md +78 -0
- package/docs/zh-CN/providers/deepgram.md +97 -0
- package/docs/zh-CN/providers/github-copilot.md +67 -0
- package/docs/zh-CN/providers/glm.md +50 -0
- package/docs/zh-CN/providers/huggingface.md +216 -0
- package/docs/zh-CN/providers/index.md +69 -0
- package/docs/zh-CN/providers/kilocode.md +80 -0
- package/docs/zh-CN/providers/litellm.md +160 -0
- package/docs/zh-CN/providers/minimax.md +222 -0
- package/docs/zh-CN/providers/mistral.md +61 -0
- package/docs/zh-CN/providers/models.md +51 -0
- package/docs/zh-CN/providers/moonshot.md +182 -0
- package/docs/zh-CN/providers/nvidia.md +62 -0
- package/docs/zh-CN/providers/ollama.md +359 -0
- package/docs/zh-CN/providers/openai.md +308 -0
- package/docs/zh-CN/providers/opencode-go.md +52 -0
- package/docs/zh-CN/providers/opencode.md +71 -0
- package/docs/zh-CN/providers/openrouter.md +44 -0
- package/docs/zh-CN/providers/qianfan.md +45 -0
- package/docs/zh-CN/providers/qwen.md +55 -0
- package/docs/zh-CN/providers/sglang.md +111 -0
- package/docs/zh-CN/providers/synthetic.md +106 -0
- package/docs/zh-CN/providers/together.md +72 -0
- package/docs/zh-CN/providers/venice.md +289 -0
- package/docs/zh-CN/providers/vercel-ai-gateway.md +66 -0
- package/docs/zh-CN/providers/xiaomi.md +93 -0
- package/docs/zh-CN/providers/zai.md +53 -0
- package/docs/zh-CN/reference/AGENTS.default.md +131 -0
- package/docs/zh-CN/reference/RELEASING.md +48 -0
- package/docs/zh-CN/reference/api-usage-costs.md +141 -0
- package/docs/zh-CN/reference/credits.md +34 -0
- package/docs/zh-CN/reference/device-models.md +54 -0
- package/docs/zh-CN/reference/rpc.md +48 -0
- package/docs/zh-CN/reference/session-management-compaction.md +287 -0
- package/docs/zh-CN/reference/templates/AGENTS.dev.md +89 -0
- package/docs/zh-CN/reference/templates/AGENTS.md +225 -0
- package/docs/zh-CN/reference/templates/BOOT.md +17 -0
- package/docs/zh-CN/reference/templates/BOOTSTRAP.md +68 -0
- package/docs/zh-CN/reference/templates/HEARTBEAT.md +18 -0
- package/docs/zh-CN/reference/templates/IDENTITY.dev.md +54 -0
- package/docs/zh-CN/reference/templates/IDENTITY.md +36 -0
- package/docs/zh-CN/reference/templates/SOUL.dev.md +83 -0
- package/docs/zh-CN/reference/templates/SOUL.md +49 -0
- package/docs/zh-CN/reference/templates/TOOLS.dev.md +31 -0
- package/docs/zh-CN/reference/templates/TOOLS.md +53 -0
- package/docs/zh-CN/reference/templates/USER.dev.md +25 -0
- package/docs/zh-CN/reference/templates/USER.md +30 -0
- package/docs/zh-CN/reference/test.md +57 -0
- package/docs/zh-CN/reference/token-use.md +119 -0
- package/docs/zh-CN/reference/transcript-hygiene.md +109 -0
- package/docs/zh-CN/reference/wizard.md +242 -0
- package/docs/zh-CN/security/formal-verification.md +171 -0
- package/docs/zh-CN/start/bootstrapping.md +9 -0
- package/docs/zh-CN/start/docs-directory.md +70 -0
- package/docs/zh-CN/start/getting-started.md +143 -0
- package/docs/zh-CN/start/hubs.md +194 -0
- package/docs/zh-CN/start/lore.md +226 -0
- package/docs/zh-CN/start/onboarding-overview.md +58 -0
- package/docs/zh-CN/start/onboarding.md +105 -0
- package/docs/zh-CN/start/openclaw.md +248 -0
- package/docs/zh-CN/start/quickstart.md +88 -0
- package/docs/zh-CN/start/setup.md +153 -0
- package/docs/zh-CN/start/showcase.md +423 -0
- package/docs/zh-CN/start/wizard-cli-automation.md +222 -0
- package/docs/zh-CN/start/wizard-cli-reference.md +306 -0
- package/docs/zh-CN/start/wizard.md +132 -0
- package/docs/zh-CN/tools/agent-send.md +59 -0
- package/docs/zh-CN/tools/apply-patch.md +57 -0
- package/docs/zh-CN/tools/browser-linux-troubleshooting.md +144 -0
- package/docs/zh-CN/tools/browser-login.md +75 -0
- package/docs/zh-CN/tools/browser.md +553 -0
- package/docs/zh-CN/tools/chrome-extension.md +183 -0
- package/docs/zh-CN/tools/clawhub.md +209 -0
- package/docs/zh-CN/tools/creating-skills.md +61 -0
- package/docs/zh-CN/tools/elevated.md +64 -0
- package/docs/zh-CN/tools/exec-approvals.md +234 -0
- package/docs/zh-CN/tools/exec.md +169 -0
- package/docs/zh-CN/tools/firecrawl.md +68 -0
- package/docs/zh-CN/tools/index.md +515 -0
- package/docs/zh-CN/tools/llm-task.md +117 -0
- package/docs/zh-CN/tools/lobster.md +349 -0
- package/docs/zh-CN/tools/multi-agent-sandbox-tools.md +401 -0
- package/docs/zh-CN/tools/plugin.md +1612 -0
- package/docs/zh-CN/tools/reactions.md +29 -0
- package/docs/zh-CN/tools/skills-config.md +78 -0
- package/docs/zh-CN/tools/skills.md +279 -0
- package/docs/zh-CN/tools/slash-commands.md +205 -0
- package/docs/zh-CN/tools/subagents.md +167 -0
- package/docs/zh-CN/tools/thinking.md +80 -0
- package/docs/zh-CN/tools/web.md +289 -0
- package/docs/zh-CN/tts.md +375 -0
- package/docs/zh-CN/vps.md +47 -0
- package/docs/zh-CN/web/control-ui.md +191 -0
- package/docs/zh-CN/web/dashboard.md +53 -0
- package/docs/zh-CN/web/index.md +118 -0
- package/docs/zh-CN/web/tui.md +166 -0
- package/docs/zh-CN/web/webchat.md +56 -0
- package/package.json +841 -0
- package/quantumclaw.mjs +135 -0
- package/skills/1password/SKILL.md +70 -0
- package/skills/1password/references/cli-examples.md +29 -0
- package/skills/1password/references/get-started.md +17 -0
- package/skills/apple-notes/SKILL.md +77 -0
- package/skills/apple-reminders/SKILL.md +118 -0
- package/skills/bear-notes/SKILL.md +107 -0
- package/skills/blogwatcher/SKILL.md +69 -0
- package/skills/blucli/SKILL.md +47 -0
- package/skills/bluebubbles/SKILL.md +131 -0
- package/skills/camsnap/SKILL.md +45 -0
- package/skills/canvas/SKILL.md +198 -0
- package/skills/clawhub/SKILL.md +77 -0
- package/skills/coding-agent/SKILL.md +295 -0
- package/skills/discord/SKILL.md +197 -0
- package/skills/eightctl/SKILL.md +50 -0
- package/skills/gemini/SKILL.md +43 -0
- package/skills/gh-issues/SKILL.md +865 -0
- package/skills/gifgrep/SKILL.md +79 -0
- package/skills/github/SKILL.md +163 -0
- package/skills/gog/SKILL.md +116 -0
- package/skills/goplaces/SKILL.md +52 -0
- package/skills/healthcheck/SKILL.md +245 -0
- package/skills/himalaya/SKILL.md +257 -0
- package/skills/himalaya/references/configuration.md +184 -0
- package/skills/himalaya/references/message-composition.md +199 -0
- package/skills/imsg/SKILL.md +122 -0
- package/skills/mcporter/SKILL.md +61 -0
- package/skills/model-usage/SKILL.md +69 -0
- package/skills/model-usage/references/codexbar-cli.md +33 -0
- package/skills/model-usage/scripts/model_usage.py +320 -0
- package/skills/model-usage/scripts/test_model_usage.py +40 -0
- package/skills/nano-pdf/SKILL.md +38 -0
- package/skills/node-connect/SKILL.md +142 -0
- package/skills/notion/SKILL.md +174 -0
- package/skills/obsidian/SKILL.md +81 -0
- package/skills/openai-image-gen/SKILL.md +92 -0
- package/skills/openai-image-gen/scripts/gen.py +328 -0
- package/skills/openai-image-gen/scripts/test_gen.py +140 -0
- package/skills/openai-whisper/SKILL.md +38 -0
- package/skills/openai-whisper-api/SKILL.md +52 -0
- package/skills/openai-whisper-api/scripts/transcribe.sh +85 -0
- package/skills/openhue/SKILL.md +112 -0
- package/skills/oracle/SKILL.md +125 -0
- package/skills/ordercli/SKILL.md +78 -0
- package/skills/peekaboo/SKILL.md +190 -0
- package/skills/sag/SKILL.md +87 -0
- package/skills/session-logs/SKILL.md +115 -0
- package/skills/sherpa-onnx-tts/SKILL.md +103 -0
- package/skills/sherpa-onnx-tts/bin/sherpa-onnx-tts +178 -0
- package/skills/skill-creator/SKILL.md +372 -0
- package/skills/skill-creator/license.txt +202 -0
- package/skills/skill-creator/scripts/init_skill.py +378 -0
- package/skills/skill-creator/scripts/package_skill.py +139 -0
- package/skills/skill-creator/scripts/quick_validate.py +159 -0
- package/skills/skill-creator/scripts/test_package_skill.py +160 -0
- package/skills/skill-creator/scripts/test_quick_validate.py +72 -0
- package/skills/slack/SKILL.md +144 -0
- package/skills/songsee/SKILL.md +49 -0
- package/skills/sonoscli/SKILL.md +65 -0
- package/skills/spotify-player/SKILL.md +64 -0
- package/skills/summarize/SKILL.md +87 -0
- package/skills/things-mac/SKILL.md +86 -0
- package/skills/tmux/SKILL.md +153 -0
- package/skills/tmux/scripts/find-sessions.sh +112 -0
- package/skills/tmux/scripts/wait-for-text.sh +83 -0
- package/skills/trello/SKILL.md +95 -0
- package/skills/video-frames/SKILL.md +46 -0
- package/skills/video-frames/scripts/frame.sh +81 -0
- package/skills/voice-call/SKILL.md +45 -0
- package/skills/wacli/SKILL.md +72 -0
- package/skills/weather/SKILL.md +112 -0
- package/skills/xurl/SKILL.md +461 -0
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
---
|
|
2
|
+
summary: "Integrated Tailscale Serve/Funnel for the Gateway dashboard"
|
|
3
|
+
read_when:
|
|
4
|
+
- Exposing the Gateway Control UI outside localhost
|
|
5
|
+
- Automating tailnet or public dashboard access
|
|
6
|
+
title: "Tailscale"
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Tailscale (Gateway dashboard)
|
|
10
|
+
|
|
11
|
+
QuantumClaw can auto-configure Tailscale **Serve** (tailnet) or **Funnel** (public) for the
|
|
12
|
+
Gateway dashboard and WebSocket port. This keeps the Gateway bound to loopback while
|
|
13
|
+
Tailscale provides HTTPS, routing, and (for Serve) identity headers.
|
|
14
|
+
|
|
15
|
+
## Modes
|
|
16
|
+
|
|
17
|
+
- `serve`: Tailnet-only Serve via `tailscale serve`. The gateway stays on `127.0.0.1`.
|
|
18
|
+
- `funnel`: Public HTTPS via `tailscale funnel`. QuantumClaw requires a shared password.
|
|
19
|
+
- `off`: Default (no Tailscale automation).
|
|
20
|
+
|
|
21
|
+
## Auth
|
|
22
|
+
|
|
23
|
+
Set `gateway.auth.mode` to control the handshake:
|
|
24
|
+
|
|
25
|
+
- `token` (default when `QUANTUMCLAW_GATEWAY_TOKEN` is set)
|
|
26
|
+
- `password` (shared secret via `QUANTUMCLAW_GATEWAY_PASSWORD` or config)
|
|
27
|
+
|
|
28
|
+
When `tailscale.mode = "serve"` and `gateway.auth.allowTailscale` is `true`,
|
|
29
|
+
Control UI/WebSocket auth can use Tailscale identity headers
|
|
30
|
+
(`tailscale-user-login`) without supplying a token/password. QuantumClaw verifies
|
|
31
|
+
the identity by resolving the `x-forwarded-for` address via the local Tailscale
|
|
32
|
+
daemon (`tailscale whois`) and matching it to the header before accepting it.
|
|
33
|
+
QuantumClaw only treats a request as Serve when it arrives from loopback with
|
|
34
|
+
Tailscale’s `x-forwarded-for`, `x-forwarded-proto`, and `x-forwarded-host`
|
|
35
|
+
headers.
|
|
36
|
+
HTTP API endpoints (for example `/v1/*`, `/tools/invoke`, and `/api/channels/*`)
|
|
37
|
+
still require token/password auth.
|
|
38
|
+
This tokenless flow assumes the gateway host is trusted. If untrusted local code
|
|
39
|
+
may run on the same host, disable `gateway.auth.allowTailscale` and require
|
|
40
|
+
token/password auth instead.
|
|
41
|
+
To require explicit credentials, set `gateway.auth.allowTailscale: false` or
|
|
42
|
+
force `gateway.auth.mode: "password"`.
|
|
43
|
+
|
|
44
|
+
## Config examples
|
|
45
|
+
|
|
46
|
+
### Tailnet-only (Serve)
|
|
47
|
+
|
|
48
|
+
```json5
|
|
49
|
+
{
|
|
50
|
+
gateway: {
|
|
51
|
+
bind: "loopback",
|
|
52
|
+
tailscale: { mode: "serve" },
|
|
53
|
+
},
|
|
54
|
+
}
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
Open: `https://<magicdns>/` (or your configured `gateway.controlUi.basePath`)
|
|
58
|
+
|
|
59
|
+
### Tailnet-only (bind to Tailnet IP)
|
|
60
|
+
|
|
61
|
+
Use this when you want the Gateway to listen directly on the Tailnet IP (no Serve/Funnel).
|
|
62
|
+
|
|
63
|
+
```json5
|
|
64
|
+
{
|
|
65
|
+
gateway: {
|
|
66
|
+
bind: "tailnet",
|
|
67
|
+
auth: { mode: "token", token: "your-token" },
|
|
68
|
+
},
|
|
69
|
+
}
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
Connect from another Tailnet device:
|
|
73
|
+
|
|
74
|
+
- Control UI: `http://<tailscale-ip>:18789/`
|
|
75
|
+
- WebSocket: `ws://<tailscale-ip>:18789`
|
|
76
|
+
|
|
77
|
+
Note: loopback (`http://127.0.0.1:18789`) will **not** work in this mode.
|
|
78
|
+
|
|
79
|
+
### Public internet (Funnel + shared password)
|
|
80
|
+
|
|
81
|
+
```json5
|
|
82
|
+
{
|
|
83
|
+
gateway: {
|
|
84
|
+
bind: "loopback",
|
|
85
|
+
tailscale: { mode: "funnel" },
|
|
86
|
+
auth: { mode: "password", password: "replace-me" },
|
|
87
|
+
},
|
|
88
|
+
}
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
Prefer `QUANTUMCLAW_GATEWAY_PASSWORD` over committing a password to disk.
|
|
92
|
+
|
|
93
|
+
## CLI examples
|
|
94
|
+
|
|
95
|
+
```bash
|
|
96
|
+
quantumclaw gateway --tailscale serve
|
|
97
|
+
quantumclaw gateway --tailscale funnel --auth password
|
|
98
|
+
```
|
|
99
|
+
|
|
100
|
+
## Notes
|
|
101
|
+
|
|
102
|
+
- Tailscale Serve/Funnel requires the `tailscale` CLI to be installed and logged in.
|
|
103
|
+
- `tailscale.mode: "funnel"` refuses to start unless auth mode is `password` to avoid public exposure.
|
|
104
|
+
- Set `gateway.tailscale.resetOnExit` if you want QuantumClaw to undo `tailscale serve`
|
|
105
|
+
or `tailscale funnel` configuration on shutdown.
|
|
106
|
+
- `gateway.bind: "tailnet"` is a direct Tailnet bind (no HTTPS, no Serve/Funnel).
|
|
107
|
+
- `gateway.bind: "auto"` prefers loopback; use `tailnet` if you want Tailnet-only.
|
|
108
|
+
- Serve/Funnel only expose the **Gateway control UI + WS**. Nodes connect over
|
|
109
|
+
the same Gateway WS endpoint, so Serve can work for node access.
|
|
110
|
+
|
|
111
|
+
## Browser control (remote Gateway + local browser)
|
|
112
|
+
|
|
113
|
+
If you run the Gateway on one machine but want to drive a browser on another machine,
|
|
114
|
+
run a **node host** on the browser machine and keep both on the same tailnet.
|
|
115
|
+
The Gateway will proxy browser actions to the node; no separate control server or Serve URL needed.
|
|
116
|
+
|
|
117
|
+
Avoid Funnel for browser control; treat node pairing like operator access.
|
|
118
|
+
|
|
119
|
+
## Tailscale prerequisites + limits
|
|
120
|
+
|
|
121
|
+
- Serve requires HTTPS enabled for your tailnet; the CLI prompts if it is missing.
|
|
122
|
+
- Serve injects Tailscale identity headers; Funnel does not.
|
|
123
|
+
- Funnel requires Tailscale v1.38.3+, MagicDNS, HTTPS enabled, and a funnel node attribute.
|
|
124
|
+
- Funnel only supports ports `443`, `8443`, and `10000` over TLS.
|
|
125
|
+
- Funnel on macOS requires the open-source Tailscale app variant.
|
|
126
|
+
|
|
127
|
+
## Learn more
|
|
128
|
+
|
|
129
|
+
- Tailscale Serve overview: [https://tailscale.com/kb/1312/serve](https://tailscale.com/kb/1312/serve)
|
|
130
|
+
- `tailscale serve` command: [https://tailscale.com/kb/1242/tailscale-serve](https://tailscale.com/kb/1242/tailscale-serve)
|
|
131
|
+
- Tailscale Funnel overview: [https://tailscale.com/kb/1223/tailscale-funnel](https://tailscale.com/kb/1223/tailscale-funnel)
|
|
132
|
+
- `tailscale funnel` command: [https://tailscale.com/kb/1311/tailscale-funnel](https://tailscale.com/kb/1311/tailscale-funnel)
|
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
---
|
|
2
|
+
summary: "Invoke a single tool directly via the Gateway HTTP endpoint"
|
|
3
|
+
read_when:
|
|
4
|
+
- Calling tools without running a full agent turn
|
|
5
|
+
- Building automations that need tool policy enforcement
|
|
6
|
+
title: "Tools Invoke API"
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Tools Invoke (HTTP)
|
|
10
|
+
|
|
11
|
+
QuantumClaw’s Gateway exposes a simple HTTP endpoint for invoking a single tool directly. It is always enabled and uses Gateway auth plus tool policy, but callers that pass Gateway bearer auth are treated as trusted operators for that gateway.
|
|
12
|
+
|
|
13
|
+
- `POST /tools/invoke`
|
|
14
|
+
- Same port as the Gateway (WS + HTTP multiplex): `http://<gateway-host>:<port>/tools/invoke`
|
|
15
|
+
|
|
16
|
+
Default max payload size is 2 MB.
|
|
17
|
+
|
|
18
|
+
## Authentication
|
|
19
|
+
|
|
20
|
+
Uses the Gateway auth configuration. Send a bearer token:
|
|
21
|
+
|
|
22
|
+
- `Authorization: Bearer <token>`
|
|
23
|
+
|
|
24
|
+
Notes:
|
|
25
|
+
|
|
26
|
+
- When `gateway.auth.mode="token"`, use `gateway.auth.token` (or `QUANTUMCLAW_GATEWAY_TOKEN`).
|
|
27
|
+
- When `gateway.auth.mode="password"`, use `gateway.auth.password` (or `QUANTUMCLAW_GATEWAY_PASSWORD`).
|
|
28
|
+
- If `gateway.auth.rateLimit` is configured and too many auth failures occur, the endpoint returns `429` with `Retry-After`.
|
|
29
|
+
- Treat this credential as a full-access operator secret for that gateway. It is not a scoped API token for a narrower `/tools/invoke` role.
|
|
30
|
+
|
|
31
|
+
## Request body
|
|
32
|
+
|
|
33
|
+
```json
|
|
34
|
+
{
|
|
35
|
+
"tool": "sessions_list",
|
|
36
|
+
"action": "json",
|
|
37
|
+
"args": {},
|
|
38
|
+
"sessionKey": "main",
|
|
39
|
+
"dryRun": false
|
|
40
|
+
}
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
Fields:
|
|
44
|
+
|
|
45
|
+
- `tool` (string, required): tool name to invoke.
|
|
46
|
+
- `action` (string, optional): mapped into args if the tool schema supports `action` and the args payload omitted it.
|
|
47
|
+
- `args` (object, optional): tool-specific arguments.
|
|
48
|
+
- `sessionKey` (string, optional): target session key. If omitted or `"main"`, the Gateway uses the configured main session key (honors `session.mainKey` and default agent, or `global` in global scope).
|
|
49
|
+
- `dryRun` (boolean, optional): reserved for future use; currently ignored.
|
|
50
|
+
|
|
51
|
+
## Policy + routing behavior
|
|
52
|
+
|
|
53
|
+
Tool availability is filtered through the same policy chain used by Gateway agents:
|
|
54
|
+
|
|
55
|
+
- `tools.profile` / `tools.byProvider.profile`
|
|
56
|
+
- `tools.allow` / `tools.byProvider.allow`
|
|
57
|
+
- `agents.<id>.tools.allow` / `agents.<id>.tools.byProvider.allow`
|
|
58
|
+
- group policies (if the session key maps to a group or channel)
|
|
59
|
+
- subagent policy (when invoking with a subagent session key)
|
|
60
|
+
|
|
61
|
+
If a tool is not allowed by policy, the endpoint returns **404**.
|
|
62
|
+
|
|
63
|
+
Important boundary notes:
|
|
64
|
+
|
|
65
|
+
- `POST /tools/invoke` is in the same trusted-operator bucket as other Gateway HTTP APIs such as `/v1/chat/completions`, `/v1/responses`, and `/api/channels/*`.
|
|
66
|
+
- Exec approvals are operator guardrails, not a separate authorization boundary for this HTTP endpoint. If a tool is reachable here via Gateway auth + tool policy, `/tools/invoke` does not add an extra per-call approval prompt.
|
|
67
|
+
- Do not share Gateway bearer credentials with untrusted callers. If you need separation across trust boundaries, run separate gateways (and ideally separate OS users/hosts).
|
|
68
|
+
|
|
69
|
+
Gateway HTTP also applies a hard deny list by default (even if session policy allows the tool):
|
|
70
|
+
|
|
71
|
+
- `cron`
|
|
72
|
+
- `sessions_spawn`
|
|
73
|
+
- `sessions_send`
|
|
74
|
+
- `gateway`
|
|
75
|
+
- `whatsapp_login`
|
|
76
|
+
|
|
77
|
+
You can customize this deny list via `gateway.tools`:
|
|
78
|
+
|
|
79
|
+
```json5
|
|
80
|
+
{
|
|
81
|
+
gateway: {
|
|
82
|
+
tools: {
|
|
83
|
+
// Additional tools to block over HTTP /tools/invoke
|
|
84
|
+
deny: ["browser"],
|
|
85
|
+
// Remove tools from the default deny list
|
|
86
|
+
allow: ["gateway"],
|
|
87
|
+
},
|
|
88
|
+
},
|
|
89
|
+
}
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
To help group policies resolve context, you can optionally set:
|
|
93
|
+
|
|
94
|
+
- `x-quantumclaw-message-channel: <channel>` (example: `slack`, `telegram`)
|
|
95
|
+
- `x-quantumclaw-account-id: <accountId>` (when multiple accounts exist)
|
|
96
|
+
|
|
97
|
+
## Responses
|
|
98
|
+
|
|
99
|
+
- `200` → `{ ok: true, result }`
|
|
100
|
+
- `400` → `{ ok: false, error: { type, message } }` (invalid request or tool input error)
|
|
101
|
+
- `401` → unauthorized
|
|
102
|
+
- `429` → auth rate-limited (`Retry-After` set)
|
|
103
|
+
- `404` → tool not available (not found or not allowlisted)
|
|
104
|
+
- `405` → method not allowed
|
|
105
|
+
- `500` → `{ ok: false, error: { type, message } }` (unexpected tool execution error; sanitized message)
|
|
106
|
+
|
|
107
|
+
## Example
|
|
108
|
+
|
|
109
|
+
```bash
|
|
110
|
+
curl -sS http://127.0.0.1:18789/tools/invoke \
|
|
111
|
+
-H 'Authorization: Bearer YOUR_TOKEN' \
|
|
112
|
+
-H 'Content-Type: application/json' \
|
|
113
|
+
-d '{
|
|
114
|
+
"tool": "sessions_list",
|
|
115
|
+
"action": "json",
|
|
116
|
+
"args": {}
|
|
117
|
+
}'
|
|
118
|
+
```
|
|
@@ -0,0 +1,378 @@
|
|
|
1
|
+
---
|
|
2
|
+
summary: "Deep troubleshooting runbook for gateway, channels, automation, nodes, and browser"
|
|
3
|
+
read_when:
|
|
4
|
+
- The troubleshooting hub pointed you here for deeper diagnosis
|
|
5
|
+
- You need stable symptom based runbook sections with exact commands
|
|
6
|
+
title: "Troubleshooting"
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Gateway troubleshooting
|
|
10
|
+
|
|
11
|
+
This page is the deep runbook.
|
|
12
|
+
Start at [/help/troubleshooting](/help/troubleshooting) if you want the fast triage flow first.
|
|
13
|
+
|
|
14
|
+
## Command ladder
|
|
15
|
+
|
|
16
|
+
Run these first, in this order:
|
|
17
|
+
|
|
18
|
+
```bash
|
|
19
|
+
quantumclaw status
|
|
20
|
+
quantumclaw gateway status
|
|
21
|
+
quantumclaw logs --follow
|
|
22
|
+
quantumclaw doctor
|
|
23
|
+
quantumclaw channels status --probe
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
Expected healthy signals:
|
|
27
|
+
|
|
28
|
+
- `quantumclaw gateway status` shows `Runtime: running` and `RPC probe: ok`.
|
|
29
|
+
- `quantumclaw doctor` reports no blocking config/service issues.
|
|
30
|
+
- `quantumclaw channels status --probe` shows connected/ready channels.
|
|
31
|
+
|
|
32
|
+
## Anthropic 429 extra usage required for long context
|
|
33
|
+
|
|
34
|
+
Use this when logs/errors include:
|
|
35
|
+
`HTTP 429: rate_limit_error: Extra usage is required for long context requests`.
|
|
36
|
+
|
|
37
|
+
```bash
|
|
38
|
+
quantumclaw logs --follow
|
|
39
|
+
quantumclaw models status
|
|
40
|
+
quantumclaw config get agents.defaults.models
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
Look for:
|
|
44
|
+
|
|
45
|
+
- Selected Anthropic Opus/Sonnet model has `params.context1m: true`.
|
|
46
|
+
- Current Anthropic credential is not eligible for long-context usage.
|
|
47
|
+
- Requests fail only on long sessions/model runs that need the 1M beta path.
|
|
48
|
+
|
|
49
|
+
Fix options:
|
|
50
|
+
|
|
51
|
+
1. Disable `context1m` for that model to fall back to the normal context window.
|
|
52
|
+
2. Use an Anthropic API key with billing, or enable Anthropic Extra Usage on the subscription account.
|
|
53
|
+
3. Configure fallback models so runs continue when Anthropic long-context requests are rejected.
|
|
54
|
+
|
|
55
|
+
Related:
|
|
56
|
+
|
|
57
|
+
- [/providers/anthropic](/providers/anthropic)
|
|
58
|
+
- [/reference/token-use](/reference/token-use)
|
|
59
|
+
- [/help/faq#why-am-i-seeing-http-429-ratelimiterror-from-anthropic](/help/faq#why-am-i-seeing-http-429-ratelimiterror-from-anthropic)
|
|
60
|
+
|
|
61
|
+
## No replies
|
|
62
|
+
|
|
63
|
+
If channels are up but nothing answers, check routing and policy before reconnecting anything.
|
|
64
|
+
|
|
65
|
+
```bash
|
|
66
|
+
quantumclaw status
|
|
67
|
+
quantumclaw channels status --probe
|
|
68
|
+
quantumclaw pairing list --channel <channel> [--account <id>]
|
|
69
|
+
quantumclaw config get channels
|
|
70
|
+
quantumclaw logs --follow
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
Look for:
|
|
74
|
+
|
|
75
|
+
- Pairing pending for DM senders.
|
|
76
|
+
- Group mention gating (`requireMention`, `mentionPatterns`).
|
|
77
|
+
- Channel/group allowlist mismatches.
|
|
78
|
+
|
|
79
|
+
Common signatures:
|
|
80
|
+
|
|
81
|
+
- `drop guild message (mention required` → group message ignored until mention.
|
|
82
|
+
- `pairing request` → sender needs approval.
|
|
83
|
+
- `blocked` / `allowlist` → sender/channel was filtered by policy.
|
|
84
|
+
|
|
85
|
+
Related:
|
|
86
|
+
|
|
87
|
+
- [/channels/troubleshooting](/channels/troubleshooting)
|
|
88
|
+
- [/channels/pairing](/channels/pairing)
|
|
89
|
+
- [/channels/groups](/channels/groups)
|
|
90
|
+
|
|
91
|
+
## Dashboard control ui connectivity
|
|
92
|
+
|
|
93
|
+
When dashboard/control UI will not connect, validate URL, auth mode, and secure context assumptions.
|
|
94
|
+
|
|
95
|
+
```bash
|
|
96
|
+
quantumclaw gateway status
|
|
97
|
+
quantumclaw status
|
|
98
|
+
quantumclaw logs --follow
|
|
99
|
+
quantumclaw doctor
|
|
100
|
+
quantumclaw gateway status --json
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
Look for:
|
|
104
|
+
|
|
105
|
+
- Correct probe URL and dashboard URL.
|
|
106
|
+
- Auth mode/token mismatch between client and gateway.
|
|
107
|
+
- HTTP usage where device identity is required.
|
|
108
|
+
|
|
109
|
+
Common signatures:
|
|
110
|
+
|
|
111
|
+
- `device identity required` → non-secure context or missing device auth.
|
|
112
|
+
- `device nonce required` / `device nonce mismatch` → client is not completing the
|
|
113
|
+
challenge-based device auth flow (`connect.challenge` + `device.nonce`).
|
|
114
|
+
- `device signature invalid` / `device signature expired` → client signed the wrong
|
|
115
|
+
payload (or stale timestamp) for the current handshake.
|
|
116
|
+
- `AUTH_TOKEN_MISMATCH` with `canRetryWithDeviceToken=true` → client can do one trusted retry with cached device token.
|
|
117
|
+
- repeated `unauthorized` after that retry → shared token/device token drift; refresh token config and re-approve/rotate device token if needed.
|
|
118
|
+
- `gateway connect failed:` → wrong host/port/url target.
|
|
119
|
+
|
|
120
|
+
### Auth detail codes quick map
|
|
121
|
+
|
|
122
|
+
Use `error.details.code` from the failed `connect` response to pick the next action:
|
|
123
|
+
|
|
124
|
+
| Detail code | Meaning | Recommended action |
|
|
125
|
+
| ---------------------------- | -------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
126
|
+
| `AUTH_TOKEN_MISSING` | Client did not send a required shared token. | Paste/set token in the client and retry. For dashboard paths: `quantumclaw config get gateway.auth.token` then paste into Control UI settings. |
|
|
127
|
+
| `AUTH_TOKEN_MISMATCH` | Shared token did not match gateway auth token. | If `canRetryWithDeviceToken=true`, allow one trusted retry. If still failing, run the [token drift recovery checklist](/cli/devices#token-drift-recovery-checklist). |
|
|
128
|
+
| `AUTH_DEVICE_TOKEN_MISMATCH` | Cached per-device token is stale or revoked. | Rotate/re-approve device token using [devices CLI](/cli/devices), then reconnect. |
|
|
129
|
+
| `PAIRING_REQUIRED` | Device identity is known but not approved for this role. | Approve pending request: `quantumclaw devices list` then `quantumclaw devices approve <requestId>`. |
|
|
130
|
+
|
|
131
|
+
Device auth v2 migration check:
|
|
132
|
+
|
|
133
|
+
```bash
|
|
134
|
+
quantumclaw --version
|
|
135
|
+
quantumclaw doctor
|
|
136
|
+
quantumclaw gateway status
|
|
137
|
+
```
|
|
138
|
+
|
|
139
|
+
If logs show nonce/signature errors, update the connecting client and verify it:
|
|
140
|
+
|
|
141
|
+
1. waits for `connect.challenge`
|
|
142
|
+
2. signs the challenge-bound payload
|
|
143
|
+
3. sends `connect.params.device.nonce` with the same challenge nonce
|
|
144
|
+
|
|
145
|
+
Related:
|
|
146
|
+
|
|
147
|
+
- [/web/control-ui](/web/control-ui)
|
|
148
|
+
- [/gateway/authentication](/gateway/authentication)
|
|
149
|
+
- [/gateway/remote](/gateway/remote)
|
|
150
|
+
- [/cli/devices](/cli/devices)
|
|
151
|
+
|
|
152
|
+
## Gateway service not running
|
|
153
|
+
|
|
154
|
+
Use this when service is installed but process does not stay up.
|
|
155
|
+
|
|
156
|
+
```bash
|
|
157
|
+
quantumclaw gateway status
|
|
158
|
+
quantumclaw status
|
|
159
|
+
quantumclaw logs --follow
|
|
160
|
+
quantumclaw doctor
|
|
161
|
+
quantumclaw gateway status --deep
|
|
162
|
+
```
|
|
163
|
+
|
|
164
|
+
Look for:
|
|
165
|
+
|
|
166
|
+
- `Runtime: stopped` with exit hints.
|
|
167
|
+
- Service config mismatch (`Config (cli)` vs `Config (service)`).
|
|
168
|
+
- Port/listener conflicts.
|
|
169
|
+
|
|
170
|
+
Common signatures:
|
|
171
|
+
|
|
172
|
+
- `Gateway start blocked: set gateway.mode=local` → local gateway mode is not enabled. Fix: set `gateway.mode="local"` in your config (or run `quantumclaw configure`). If you are running QuantumClaw via Podman using the dedicated `quantumclaw` user, the config lives at `~quantumclaw/.quantumclaw/quantumclaw.json`.
|
|
173
|
+
- `refusing to bind gateway ... without auth` → non-loopback bind without token/password.
|
|
174
|
+
- `another gateway instance is already listening` / `EADDRINUSE` → port conflict.
|
|
175
|
+
|
|
176
|
+
Related:
|
|
177
|
+
|
|
178
|
+
- [/gateway/background-process](/gateway/background-process)
|
|
179
|
+
- [/gateway/configuration](/gateway/configuration)
|
|
180
|
+
- [/gateway/doctor](/gateway/doctor)
|
|
181
|
+
|
|
182
|
+
## Channel connected messages not flowing
|
|
183
|
+
|
|
184
|
+
If channel state is connected but message flow is dead, focus on policy, permissions, and channel specific delivery rules.
|
|
185
|
+
|
|
186
|
+
```bash
|
|
187
|
+
quantumclaw channels status --probe
|
|
188
|
+
quantumclaw pairing list --channel <channel> [--account <id>]
|
|
189
|
+
quantumclaw status --deep
|
|
190
|
+
quantumclaw logs --follow
|
|
191
|
+
quantumclaw config get channels
|
|
192
|
+
```
|
|
193
|
+
|
|
194
|
+
Look for:
|
|
195
|
+
|
|
196
|
+
- DM policy (`pairing`, `allowlist`, `open`, `disabled`).
|
|
197
|
+
- Group allowlist and mention requirements.
|
|
198
|
+
- Missing channel API permissions/scopes.
|
|
199
|
+
|
|
200
|
+
Common signatures:
|
|
201
|
+
|
|
202
|
+
- `mention required` → message ignored by group mention policy.
|
|
203
|
+
- `pairing` / pending approval traces → sender is not approved.
|
|
204
|
+
- `missing_scope`, `not_in_channel`, `Forbidden`, `401/403` → channel auth/permissions issue.
|
|
205
|
+
|
|
206
|
+
Related:
|
|
207
|
+
|
|
208
|
+
- [/channels/troubleshooting](/channels/troubleshooting)
|
|
209
|
+
- [/channels/whatsapp](/channels/whatsapp)
|
|
210
|
+
- [/channels/telegram](/channels/telegram)
|
|
211
|
+
- [/channels/discord](/channels/discord)
|
|
212
|
+
|
|
213
|
+
## Cron and heartbeat delivery
|
|
214
|
+
|
|
215
|
+
If cron or heartbeat did not run or did not deliver, verify scheduler state first, then delivery target.
|
|
216
|
+
|
|
217
|
+
```bash
|
|
218
|
+
quantumclaw cron status
|
|
219
|
+
quantumclaw cron list
|
|
220
|
+
quantumclaw cron runs --id <jobId> --limit 20
|
|
221
|
+
quantumclaw system heartbeat last
|
|
222
|
+
quantumclaw logs --follow
|
|
223
|
+
```
|
|
224
|
+
|
|
225
|
+
Look for:
|
|
226
|
+
|
|
227
|
+
- Cron enabled and next wake present.
|
|
228
|
+
- Job run history status (`ok`, `skipped`, `error`).
|
|
229
|
+
- Heartbeat skip reasons (`quiet-hours`, `requests-in-flight`, `alerts-disabled`).
|
|
230
|
+
|
|
231
|
+
Common signatures:
|
|
232
|
+
|
|
233
|
+
- `cron: scheduler disabled; jobs will not run automatically` → cron disabled.
|
|
234
|
+
- `cron: timer tick failed` → scheduler tick failed; check file/log/runtime errors.
|
|
235
|
+
- `heartbeat skipped` with `reason=quiet-hours` → outside active hours window.
|
|
236
|
+
- `heartbeat: unknown accountId` → invalid account id for heartbeat delivery target.
|
|
237
|
+
- `heartbeat skipped` with `reason=dm-blocked` → heartbeat target resolved to a DM-style destination while `agents.defaults.heartbeat.directPolicy` (or per-agent override) is set to `block`.
|
|
238
|
+
|
|
239
|
+
Related:
|
|
240
|
+
|
|
241
|
+
- [/automation/troubleshooting](/automation/troubleshooting)
|
|
242
|
+
- [/automation/cron-jobs](/automation/cron-jobs)
|
|
243
|
+
- [/gateway/heartbeat](/gateway/heartbeat)
|
|
244
|
+
|
|
245
|
+
## Node paired tool fails
|
|
246
|
+
|
|
247
|
+
If a node is paired but tools fail, isolate foreground, permission, and approval state.
|
|
248
|
+
|
|
249
|
+
```bash
|
|
250
|
+
quantumclaw nodes status
|
|
251
|
+
quantumclaw nodes describe --node <idOrNameOrIp>
|
|
252
|
+
quantumclaw approvals get --node <idOrNameOrIp>
|
|
253
|
+
quantumclaw logs --follow
|
|
254
|
+
quantumclaw status
|
|
255
|
+
```
|
|
256
|
+
|
|
257
|
+
Look for:
|
|
258
|
+
|
|
259
|
+
- Node online with expected capabilities.
|
|
260
|
+
- OS permission grants for camera/mic/location/screen.
|
|
261
|
+
- Exec approvals and allowlist state.
|
|
262
|
+
|
|
263
|
+
Common signatures:
|
|
264
|
+
|
|
265
|
+
- `NODE_BACKGROUND_UNAVAILABLE` → node app must be in foreground.
|
|
266
|
+
- `*_PERMISSION_REQUIRED` / `LOCATION_PERMISSION_REQUIRED` → missing OS permission.
|
|
267
|
+
- `SYSTEM_RUN_DENIED: approval required` → exec approval pending.
|
|
268
|
+
- `SYSTEM_RUN_DENIED: allowlist miss` → command blocked by allowlist.
|
|
269
|
+
|
|
270
|
+
Related:
|
|
271
|
+
|
|
272
|
+
- [/nodes/troubleshooting](/nodes/troubleshooting)
|
|
273
|
+
- [/nodes/index](/nodes/index)
|
|
274
|
+
- [/tools/exec-approvals](/tools/exec-approvals)
|
|
275
|
+
|
|
276
|
+
## Browser tool fails
|
|
277
|
+
|
|
278
|
+
Use this when browser tool actions fail even though the gateway itself is healthy.
|
|
279
|
+
|
|
280
|
+
```bash
|
|
281
|
+
quantumclaw browser status
|
|
282
|
+
quantumclaw browser start --browser-profile quantumclaw
|
|
283
|
+
quantumclaw browser profiles
|
|
284
|
+
quantumclaw logs --follow
|
|
285
|
+
quantumclaw doctor
|
|
286
|
+
```
|
|
287
|
+
|
|
288
|
+
Look for:
|
|
289
|
+
|
|
290
|
+
- Valid browser executable path.
|
|
291
|
+
- CDP profile reachability.
|
|
292
|
+
- Local Chrome availability for `existing-session` / `user` profiles.
|
|
293
|
+
|
|
294
|
+
Common signatures:
|
|
295
|
+
|
|
296
|
+
- `Failed to start Chrome CDP on port` → browser process failed to launch.
|
|
297
|
+
- `browser.executablePath not found` → configured path is invalid.
|
|
298
|
+
- `No Chrome tabs found for profile="user"` → the Chrome MCP attach profile has no open local Chrome tabs.
|
|
299
|
+
- `Browser attachOnly is enabled ... not reachable` → attach-only profile has no reachable target.
|
|
300
|
+
|
|
301
|
+
Related:
|
|
302
|
+
|
|
303
|
+
- [/tools/browser-linux-troubleshooting](/tools/browser-linux-troubleshooting)
|
|
304
|
+
- [/tools/browser](/tools/browser)
|
|
305
|
+
|
|
306
|
+
## If you upgraded and something suddenly broke
|
|
307
|
+
|
|
308
|
+
Most post-upgrade breakage is config drift or stricter defaults now being enforced.
|
|
309
|
+
|
|
310
|
+
### 1) Auth and URL override behavior changed
|
|
311
|
+
|
|
312
|
+
```bash
|
|
313
|
+
quantumclaw gateway status
|
|
314
|
+
quantumclaw config get gateway.mode
|
|
315
|
+
quantumclaw config get gateway.remote.url
|
|
316
|
+
quantumclaw config get gateway.auth.mode
|
|
317
|
+
```
|
|
318
|
+
|
|
319
|
+
What to check:
|
|
320
|
+
|
|
321
|
+
- If `gateway.mode=remote`, CLI calls may be targeting remote while your local service is fine.
|
|
322
|
+
- Explicit `--url` calls do not fall back to stored credentials.
|
|
323
|
+
|
|
324
|
+
Common signatures:
|
|
325
|
+
|
|
326
|
+
- `gateway connect failed:` → wrong URL target.
|
|
327
|
+
- `unauthorized` → endpoint reachable but wrong auth.
|
|
328
|
+
|
|
329
|
+
### 2) Bind and auth guardrails are stricter
|
|
330
|
+
|
|
331
|
+
```bash
|
|
332
|
+
quantumclaw config get gateway.bind
|
|
333
|
+
quantumclaw config get gateway.auth.token
|
|
334
|
+
quantumclaw gateway status
|
|
335
|
+
quantumclaw logs --follow
|
|
336
|
+
```
|
|
337
|
+
|
|
338
|
+
What to check:
|
|
339
|
+
|
|
340
|
+
- Non-loopback binds (`lan`, `tailnet`, `custom`) need auth configured.
|
|
341
|
+
- Old keys like `gateway.token` do not replace `gateway.auth.token`.
|
|
342
|
+
|
|
343
|
+
Common signatures:
|
|
344
|
+
|
|
345
|
+
- `refusing to bind gateway ... without auth` → bind+auth mismatch.
|
|
346
|
+
- `RPC probe: failed` while runtime is running → gateway alive but inaccessible with current auth/url.
|
|
347
|
+
|
|
348
|
+
### 3) Pairing and device identity state changed
|
|
349
|
+
|
|
350
|
+
```bash
|
|
351
|
+
quantumclaw devices list
|
|
352
|
+
quantumclaw pairing list --channel <channel> [--account <id>]
|
|
353
|
+
quantumclaw logs --follow
|
|
354
|
+
quantumclaw doctor
|
|
355
|
+
```
|
|
356
|
+
|
|
357
|
+
What to check:
|
|
358
|
+
|
|
359
|
+
- Pending device approvals for dashboard/nodes.
|
|
360
|
+
- Pending DM pairing approvals after policy or identity changes.
|
|
361
|
+
|
|
362
|
+
Common signatures:
|
|
363
|
+
|
|
364
|
+
- `device identity required` → device auth not satisfied.
|
|
365
|
+
- `pairing required` → sender/device must be approved.
|
|
366
|
+
|
|
367
|
+
If the service config and runtime still disagree after checks, reinstall service metadata from the same profile/state directory:
|
|
368
|
+
|
|
369
|
+
```bash
|
|
370
|
+
quantumclaw gateway install --force
|
|
371
|
+
quantumclaw gateway restart
|
|
372
|
+
```
|
|
373
|
+
|
|
374
|
+
Related:
|
|
375
|
+
|
|
376
|
+
- [/gateway/pairing](/gateway/pairing)
|
|
377
|
+
- [/gateway/authentication](/gateway/authentication)
|
|
378
|
+
- [/gateway/background-process](/gateway/background-process)
|