@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.
Files changed (821) hide show
  1. package/CHANGELOG.md +4601 -0
  2. package/LICENSE +21 -0
  3. package/README.md +559 -0
  4. package/assets/avatar-placeholder.svg +19 -0
  5. package/assets/chrome-extension/icons/icon128.png +0 -0
  6. package/assets/chrome-extension/icons/icon16.png +0 -0
  7. package/assets/chrome-extension/icons/icon32.png +0 -0
  8. package/assets/chrome-extension/icons/icon48.png +0 -0
  9. package/assets/dmg-background-small.png +0 -0
  10. package/assets/dmg-background.png +0 -0
  11. package/docs/.i18n/README.md +31 -0
  12. package/docs/.i18n/glossary.ja-JP.json +14 -0
  13. package/docs/.i18n/glossary.zh-CN.json +302 -0
  14. package/docs/.i18n/ja-JP.tm.jsonl +0 -0
  15. package/docs/assets/install-script.svg +1 -0
  16. package/docs/assets/macos-onboarding/01-macos-warning.jpeg +0 -0
  17. package/docs/assets/macos-onboarding/02-local-networks.jpeg +0 -0
  18. package/docs/assets/macos-onboarding/03-security-notice.png +0 -0
  19. package/docs/assets/macos-onboarding/04-choose-gateway.png +0 -0
  20. package/docs/assets/macos-onboarding/05-permissions.png +0 -0
  21. package/docs/assets/pixel-lobster.svg +60 -0
  22. package/docs/assets/quantumclaw-logo-text-dark.png +0 -0
  23. package/docs/assets/quantumclaw-logo-text-dark.svg +418 -0
  24. package/docs/assets/quantumclaw-logo-text.png +0 -0
  25. package/docs/assets/quantumclaw-logo-text.svg +418 -0
  26. package/docs/assets/showcase/agents-ui.jpg +0 -0
  27. package/docs/assets/showcase/bambu-cli.png +0 -0
  28. package/docs/assets/showcase/codexmonitor.png +0 -0
  29. package/docs/assets/showcase/gohome-grafana.png +0 -0
  30. package/docs/assets/showcase/ios-testflight.jpg +0 -0
  31. package/docs/assets/showcase/oura-health.png +0 -0
  32. package/docs/assets/showcase/padel-cli.svg +11 -0
  33. package/docs/assets/showcase/padel-screenshot.jpg +0 -0
  34. package/docs/assets/showcase/papla-tts.jpg +0 -0
  35. package/docs/assets/showcase/pr-review-telegram.jpg +0 -0
  36. package/docs/assets/showcase/roborock-screenshot.jpg +0 -0
  37. package/docs/assets/showcase/roborock-status.svg +13 -0
  38. package/docs/assets/showcase/roof-camera-sky.jpg +0 -0
  39. package/docs/assets/showcase/snag.png +0 -0
  40. package/docs/assets/showcase/tesco-shop.jpg +0 -0
  41. package/docs/assets/showcase/wienerlinien.png +0 -0
  42. package/docs/assets/showcase/wine-cellar-skill.jpg +0 -0
  43. package/docs/assets/showcase/winix-air-purifier.jpg +0 -0
  44. package/docs/assets/showcase/xuezh-pronunciation.jpeg +0 -0
  45. package/docs/assets/sponsors/blacksmith.svg +14 -0
  46. package/docs/assets/sponsors/convex.svg +16 -0
  47. package/docs/assets/sponsors/openai.svg +3 -0
  48. package/docs/assets/sponsors/vercel.svg +5 -0
  49. package/docs/auth-credential-semantics.md +53 -0
  50. package/docs/automation/auth-monitoring.md +44 -0
  51. package/docs/automation/cron-jobs.md +727 -0
  52. package/docs/automation/cron-vs-heartbeat.md +286 -0
  53. package/docs/automation/gmail-pubsub.md +256 -0
  54. package/docs/automation/hooks.md +1056 -0
  55. package/docs/automation/poll.md +86 -0
  56. package/docs/automation/standing-orders.md +251 -0
  57. package/docs/automation/troubleshooting.md +122 -0
  58. package/docs/automation/webhook.md +217 -0
  59. package/docs/brave-search.md +93 -0
  60. package/docs/channels/bluebubbles.md +347 -0
  61. package/docs/channels/broadcast-groups.md +442 -0
  62. package/docs/channels/channel-routing.md +139 -0
  63. package/docs/channels/discord.md +1229 -0
  64. package/docs/channels/feishu.md +747 -0
  65. package/docs/channels/googlechat.md +261 -0
  66. package/docs/channels/group-messages.md +84 -0
  67. package/docs/channels/groups.md +379 -0
  68. package/docs/channels/imessage.md +367 -0
  69. package/docs/channels/index.md +47 -0
  70. package/docs/channels/irc.md +242 -0
  71. package/docs/channels/line.md +194 -0
  72. package/docs/channels/location.md +56 -0
  73. package/docs/channels/matrix.md +677 -0
  74. package/docs/channels/mattermost.md +427 -0
  75. package/docs/channels/msteams.md +780 -0
  76. package/docs/channels/nextcloud-talk.md +138 -0
  77. package/docs/channels/nostr.md +249 -0
  78. package/docs/channels/pairing.md +114 -0
  79. package/docs/channels/signal.md +329 -0
  80. package/docs/channels/slack.md +603 -0
  81. package/docs/channels/synology-chat.md +134 -0
  82. package/docs/channels/telegram.md +987 -0
  83. package/docs/channels/tlon.md +276 -0
  84. package/docs/channels/troubleshooting.md +118 -0
  85. package/docs/channels/twitch.md +379 -0
  86. package/docs/channels/whatsapp.md +460 -0
  87. package/docs/channels/zalo.md +243 -0
  88. package/docs/channels/zalouser.md +181 -0
  89. package/docs/ci.md +55 -0
  90. package/docs/cli/acp.md +288 -0
  91. package/docs/cli/agent.md +29 -0
  92. package/docs/cli/agents.md +123 -0
  93. package/docs/cli/approvals.md +50 -0
  94. package/docs/cli/backup.md +76 -0
  95. package/docs/cli/browser.md +106 -0
  96. package/docs/cli/channels.md +102 -0
  97. package/docs/cli/clawbot.md +21 -0
  98. package/docs/cli/completion.md +35 -0
  99. package/docs/cli/config.md +295 -0
  100. package/docs/cli/configure.md +36 -0
  101. package/docs/cli/cron.md +77 -0
  102. package/docs/cli/daemon.md +53 -0
  103. package/docs/cli/dashboard.md +22 -0
  104. package/docs/cli/devices.md +139 -0
  105. package/docs/cli/directory.md +63 -0
  106. package/docs/cli/dns.md +23 -0
  107. package/docs/cli/docs.md +15 -0
  108. package/docs/cli/doctor.md +48 -0
  109. package/docs/cli/gateway.md +235 -0
  110. package/docs/cli/health.md +21 -0
  111. package/docs/cli/hooks.md +329 -0
  112. package/docs/cli/index.md +1150 -0
  113. package/docs/cli/logs.md +28 -0
  114. package/docs/cli/memory.md +66 -0
  115. package/docs/cli/message.md +278 -0
  116. package/docs/cli/models.md +81 -0
  117. package/docs/cli/node.md +127 -0
  118. package/docs/cli/nodes.md +75 -0
  119. package/docs/cli/onboard.md +157 -0
  120. package/docs/cli/pairing.md +32 -0
  121. package/docs/cli/plugins.md +210 -0
  122. package/docs/cli/qr.md +46 -0
  123. package/docs/cli/reset.md +20 -0
  124. package/docs/cli/sandbox.md +197 -0
  125. package/docs/cli/secrets.md +188 -0
  126. package/docs/cli/security.md +79 -0
  127. package/docs/cli/sessions.md +110 -0
  128. package/docs/cli/setup.md +29 -0
  129. package/docs/cli/skills.md +36 -0
  130. package/docs/cli/status.md +30 -0
  131. package/docs/cli/system.md +60 -0
  132. package/docs/cli/tui.md +30 -0
  133. package/docs/cli/uninstall.md +20 -0
  134. package/docs/cli/update.md +103 -0
  135. package/docs/cli/voicecall.md +34 -0
  136. package/docs/cli/webhooks.md +25 -0
  137. package/docs/concepts/agent-loop.md +148 -0
  138. package/docs/concepts/agent-workspace.md +236 -0
  139. package/docs/concepts/agent.md +122 -0
  140. package/docs/concepts/architecture.md +137 -0
  141. package/docs/concepts/compaction.md +123 -0
  142. package/docs/concepts/context-engine.md +268 -0
  143. package/docs/concepts/context.md +172 -0
  144. package/docs/concepts/delegate-architecture.md +296 -0
  145. package/docs/concepts/features.md +73 -0
  146. package/docs/concepts/markdown-formatting.md +130 -0
  147. package/docs/concepts/memory.md +108 -0
  148. package/docs/concepts/messages.md +154 -0
  149. package/docs/concepts/model-failover.md +152 -0
  150. package/docs/concepts/model-providers.md +607 -0
  151. package/docs/concepts/models.md +225 -0
  152. package/docs/concepts/multi-agent.md +552 -0
  153. package/docs/concepts/oauth.md +158 -0
  154. package/docs/concepts/presence.md +102 -0
  155. package/docs/concepts/queue.md +89 -0
  156. package/docs/concepts/retry.md +69 -0
  157. package/docs/concepts/session-pruning.md +121 -0
  158. package/docs/concepts/session-tool.md +242 -0
  159. package/docs/concepts/session.md +310 -0
  160. package/docs/concepts/streaming.md +155 -0
  161. package/docs/concepts/system-prompt.md +132 -0
  162. package/docs/concepts/timezone.md +91 -0
  163. package/docs/concepts/typebox.md +291 -0
  164. package/docs/concepts/typing-indicators.md +68 -0
  165. package/docs/concepts/usage-tracking.md +35 -0
  166. package/docs/date-time.md +128 -0
  167. package/docs/debug/node-issue.md +85 -0
  168. package/docs/diagnostics/flags.md +91 -0
  169. package/docs/docs.json +2078 -0
  170. package/docs/gateway/authentication.md +179 -0
  171. package/docs/gateway/background-process.md +97 -0
  172. package/docs/gateway/bonjour.md +177 -0
  173. package/docs/gateway/bridge-protocol.md +91 -0
  174. package/docs/gateway/cli-backends.md +225 -0
  175. package/docs/gateway/configuration-examples.md +651 -0
  176. package/docs/gateway/configuration-reference.md +3123 -0
  177. package/docs/gateway/configuration.md +633 -0
  178. package/docs/gateway/discovery.md +123 -0
  179. package/docs/gateway/doctor.md +362 -0
  180. package/docs/gateway/gateway-lock.md +34 -0
  181. package/docs/gateway/health.md +44 -0
  182. package/docs/gateway/heartbeat.md +393 -0
  183. package/docs/gateway/index.md +261 -0
  184. package/docs/gateway/local-models.md +152 -0
  185. package/docs/gateway/logging.md +113 -0
  186. package/docs/gateway/multiple-gateways.md +112 -0
  187. package/docs/gateway/network-model.md +22 -0
  188. package/docs/gateway/openai-http-api.md +132 -0
  189. package/docs/gateway/openresponses-http-api.md +295 -0
  190. package/docs/gateway/openshell.md +307 -0
  191. package/docs/gateway/pairing.md +99 -0
  192. package/docs/gateway/protocol.md +267 -0
  193. package/docs/gateway/remote-gateway-readme.md +158 -0
  194. package/docs/gateway/remote.md +153 -0
  195. package/docs/gateway/sandbox-vs-tool-policy-vs-elevated.md +134 -0
  196. package/docs/gateway/sandboxing.md +469 -0
  197. package/docs/gateway/secrets-plan-contract.md +116 -0
  198. package/docs/gateway/secrets.md +503 -0
  199. package/docs/gateway/security/index.md +1220 -0
  200. package/docs/gateway/tailscale.md +132 -0
  201. package/docs/gateway/tools-invoke-http-api.md +118 -0
  202. package/docs/gateway/troubleshooting.md +378 -0
  203. package/docs/gateway/trusted-proxy-auth.md +330 -0
  204. package/docs/help/debugging.md +168 -0
  205. package/docs/help/environment.md +163 -0
  206. package/docs/help/faq.md +2997 -0
  207. package/docs/help/index.md +28 -0
  208. package/docs/help/scripts.md +28 -0
  209. package/docs/help/testing.md +526 -0
  210. package/docs/help/troubleshooting.md +297 -0
  211. package/docs/images/configure-model-picker-unsearchable.png +0 -0
  212. package/docs/images/feishu-step2-create-app.png +0 -0
  213. package/docs/images/feishu-step3-credentials.png +0 -0
  214. package/docs/images/feishu-step4-permissions.png +0 -0
  215. package/docs/images/feishu-step5-bot-capability.png +0 -0
  216. package/docs/images/feishu-step6-event-subscription.png +0 -0
  217. package/docs/images/feishu-verification-token.png +0 -0
  218. package/docs/images/groups-flow.svg +52 -0
  219. package/docs/images/mobile-ui-screenshot.png +0 -0
  220. package/docs/index.md +196 -0
  221. package/docs/install/ansible.md +230 -0
  222. package/docs/install/azure.md +311 -0
  223. package/docs/install/bun.md +55 -0
  224. package/docs/install/development-channels.md +120 -0
  225. package/docs/install/digitalocean.md +129 -0
  226. package/docs/install/docker-vm-runtime.md +142 -0
  227. package/docs/install/docker.md +375 -0
  228. package/docs/install/exe-dev.md +126 -0
  229. package/docs/install/fly.md +501 -0
  230. package/docs/install/gcp.md +402 -0
  231. package/docs/install/hetzner.md +251 -0
  232. package/docs/install/index.md +183 -0
  233. package/docs/install/installer.md +415 -0
  234. package/docs/install/kubernetes.md +191 -0
  235. package/docs/install/macos-vm.md +281 -0
  236. package/docs/install/migrating-matrix.md +346 -0
  237. package/docs/install/migrating.md +110 -0
  238. package/docs/install/nix.md +89 -0
  239. package/docs/install/node.md +138 -0
  240. package/docs/install/northflank.mdx +54 -0
  241. package/docs/install/oracle.md +156 -0
  242. package/docs/install/podman.md +133 -0
  243. package/docs/install/railway.mdx +100 -0
  244. package/docs/install/raspberry-pi.md +159 -0
  245. package/docs/install/render.mdx +169 -0
  246. package/docs/install/uninstall.md +128 -0
  247. package/docs/install/updating.md +128 -0
  248. package/docs/ja-JP/index.md +186 -0
  249. package/docs/ja-JP/start/getting-started.md +125 -0
  250. package/docs/ja-JP/start/wizard.md +77 -0
  251. package/docs/logging.md +352 -0
  252. package/docs/nav-tabs-underline.js +100 -0
  253. package/docs/network.md +54 -0
  254. package/docs/nodes/audio.md +187 -0
  255. package/docs/nodes/camera.md +162 -0
  256. package/docs/nodes/images.md +72 -0
  257. package/docs/nodes/index.md +393 -0
  258. package/docs/nodes/location-command.md +98 -0
  259. package/docs/nodes/media-understanding.md +394 -0
  260. package/docs/nodes/talk.md +92 -0
  261. package/docs/nodes/troubleshooting.md +114 -0
  262. package/docs/nodes/voicewake.md +66 -0
  263. package/docs/perplexity.md +174 -0
  264. package/docs/pi-dev.md +80 -0
  265. package/docs/pi.md +567 -0
  266. package/docs/platforms/android.md +168 -0
  267. package/docs/platforms/digitalocean.md +266 -0
  268. package/docs/platforms/index.md +54 -0
  269. package/docs/platforms/ios.md +220 -0
  270. package/docs/platforms/linux.md +94 -0
  271. package/docs/platforms/mac/bundled-gateway.md +73 -0
  272. package/docs/platforms/mac/canvas.md +125 -0
  273. package/docs/platforms/mac/child-process.md +69 -0
  274. package/docs/platforms/mac/dev-setup.md +104 -0
  275. package/docs/platforms/mac/health.md +34 -0
  276. package/docs/platforms/mac/icon.md +31 -0
  277. package/docs/platforms/mac/logging.md +57 -0
  278. package/docs/platforms/mac/menu-bar.md +81 -0
  279. package/docs/platforms/mac/peekaboo.md +65 -0
  280. package/docs/platforms/mac/permissions.md +50 -0
  281. package/docs/platforms/mac/remote.md +84 -0
  282. package/docs/platforms/mac/signing.md +47 -0
  283. package/docs/platforms/mac/skills.md +33 -0
  284. package/docs/platforms/mac/voice-overlay.md +60 -0
  285. package/docs/platforms/mac/voicewake.md +67 -0
  286. package/docs/platforms/mac/webchat.md +43 -0
  287. package/docs/platforms/mac/xpc.md +61 -0
  288. package/docs/platforms/macos.md +226 -0
  289. package/docs/platforms/oracle.md +303 -0
  290. package/docs/platforms/raspberry-pi.md +412 -0
  291. package/docs/platforms/windows.md +241 -0
  292. package/docs/plugins/agent-tools.md +10 -0
  293. package/docs/plugins/architecture.md +1366 -0
  294. package/docs/plugins/building-extensions.md +10 -0
  295. package/docs/plugins/building-plugins.md +239 -0
  296. package/docs/plugins/bundles.md +181 -0
  297. package/docs/plugins/community.md +145 -0
  298. package/docs/plugins/manifest.md +241 -0
  299. package/docs/plugins/sdk-channel-plugins.md +370 -0
  300. package/docs/plugins/sdk-entrypoints.md +161 -0
  301. package/docs/plugins/sdk-migration.md +172 -0
  302. package/docs/plugins/sdk-overview.md +196 -0
  303. package/docs/plugins/sdk-provider-plugins.md +370 -0
  304. package/docs/plugins/sdk-runtime.md +345 -0
  305. package/docs/plugins/sdk-setup.md +331 -0
  306. package/docs/plugins/sdk-testing.md +263 -0
  307. package/docs/plugins/voice-call.md +380 -0
  308. package/docs/plugins/zalouser.md +77 -0
  309. package/docs/prose.md +134 -0
  310. package/docs/providers/anthropic.md +259 -0
  311. package/docs/providers/bedrock.md +176 -0
  312. package/docs/providers/claude-max-api-proxy.md +154 -0
  313. package/docs/providers/cloudflare-ai-gateway.md +71 -0
  314. package/docs/providers/deepgram.md +93 -0
  315. package/docs/providers/github-copilot.md +72 -0
  316. package/docs/providers/glm.md +43 -0
  317. package/docs/providers/google.md +78 -0
  318. package/docs/providers/groq.md +96 -0
  319. package/docs/providers/huggingface.md +209 -0
  320. package/docs/providers/index.md +69 -0
  321. package/docs/providers/kilocode.md +74 -0
  322. package/docs/providers/litellm.md +154 -0
  323. package/docs/providers/minimax.md +224 -0
  324. package/docs/providers/mistral.md +54 -0
  325. package/docs/providers/models.md +45 -0
  326. package/docs/providers/modelstudio.md +66 -0
  327. package/docs/providers/moonshot.md +175 -0
  328. package/docs/providers/nvidia.md +55 -0
  329. package/docs/providers/ollama.md +352 -0
  330. package/docs/providers/openai.md +303 -0
  331. package/docs/providers/opencode-go.md +45 -0
  332. package/docs/providers/opencode.md +64 -0
  333. package/docs/providers/openrouter.md +37 -0
  334. package/docs/providers/perplexity-provider.md +62 -0
  335. package/docs/providers/qianfan.md +38 -0
  336. package/docs/providers/qwen.md +53 -0
  337. package/docs/providers/sglang.md +104 -0
  338. package/docs/providers/synthetic.md +99 -0
  339. package/docs/providers/together.md +66 -0
  340. package/docs/providers/venice.md +282 -0
  341. package/docs/providers/vercel-ai-gateway.md +60 -0
  342. package/docs/providers/vllm.md +92 -0
  343. package/docs/providers/volcengine.md +74 -0
  344. package/docs/providers/xai.md +60 -0
  345. package/docs/providers/xiaomi.md +86 -0
  346. package/docs/providers/zai.md +46 -0
  347. package/docs/reference/AGENTS.default.md +126 -0
  348. package/docs/reference/RELEASING.md +42 -0
  349. package/docs/reference/api-usage-costs.md +144 -0
  350. package/docs/reference/credits.md +30 -0
  351. package/docs/reference/device-models.md +47 -0
  352. package/docs/reference/memory-config.md +711 -0
  353. package/docs/reference/prompt-caching.md +185 -0
  354. package/docs/reference/rpc.md +43 -0
  355. package/docs/reference/secretref-credential-surface.md +140 -0
  356. package/docs/reference/secretref-user-supplied-credentials-matrix.json +563 -0
  357. package/docs/reference/session-management-compaction.md +324 -0
  358. package/docs/reference/templates/AGENTS.dev.md +83 -0
  359. package/docs/reference/templates/AGENTS.md +219 -0
  360. package/docs/reference/templates/BOOT.md +11 -0
  361. package/docs/reference/templates/BOOTSTRAP.md +62 -0
  362. package/docs/reference/templates/HEARTBEAT.md +14 -0
  363. package/docs/reference/templates/IDENTITY.dev.md +47 -0
  364. package/docs/reference/templates/IDENTITY.md +29 -0
  365. package/docs/reference/templates/SOUL.dev.md +76 -0
  366. package/docs/reference/templates/SOUL.md +43 -0
  367. package/docs/reference/templates/TOOLS.dev.md +24 -0
  368. package/docs/reference/templates/TOOLS.md +47 -0
  369. package/docs/reference/templates/USER.dev.md +18 -0
  370. package/docs/reference/templates/USER.md +23 -0
  371. package/docs/reference/test.md +90 -0
  372. package/docs/reference/token-use.md +175 -0
  373. package/docs/reference/transcript-hygiene.md +151 -0
  374. package/docs/reference/wizard.md +235 -0
  375. package/docs/security/CONTRIBUTING-THREAT-MODEL.md +98 -0
  376. package/docs/security/THREAT-MODEL-ATLAS.md +611 -0
  377. package/docs/security/formal-verification.md +167 -0
  378. package/docs/start/bootstrapping.md +41 -0
  379. package/docs/start/docs-directory.md +66 -0
  380. package/docs/start/getting-started.md +116 -0
  381. package/docs/start/hubs.md +198 -0
  382. package/docs/start/lore.md +219 -0
  383. package/docs/start/onboarding-overview.md +67 -0
  384. package/docs/start/onboarding.md +91 -0
  385. package/docs/start/openclaw.md +221 -0
  386. package/docs/start/quickstart.md +22 -0
  387. package/docs/start/setup.md +164 -0
  388. package/docs/start/showcase.md +418 -0
  389. package/docs/start/wizard-cli-automation.md +215 -0
  390. package/docs/start/wizard-cli-reference.md +299 -0
  391. package/docs/start/wizard.md +125 -0
  392. package/docs/style.css +37 -0
  393. package/docs/tools/acp-agents.md +623 -0
  394. package/docs/tools/agent-send.md +100 -0
  395. package/docs/tools/apply-patch.md +51 -0
  396. package/docs/tools/brave-search.md +93 -0
  397. package/docs/tools/browser-linux-troubleshooting.md +138 -0
  398. package/docs/tools/browser-login.md +73 -0
  399. package/docs/tools/browser-wsl2-windows-remote-cdp-troubleshooting.md +211 -0
  400. package/docs/tools/browser.md +731 -0
  401. package/docs/tools/btw.md +142 -0
  402. package/docs/tools/capability-cookbook.md +119 -0
  403. package/docs/tools/clawhub.md +298 -0
  404. package/docs/tools/creating-skills.md +117 -0
  405. package/docs/tools/diffs.md +386 -0
  406. package/docs/tools/elevated.md +114 -0
  407. package/docs/tools/exec-approvals.md +430 -0
  408. package/docs/tools/exec.md +207 -0
  409. package/docs/tools/firecrawl.md +140 -0
  410. package/docs/tools/index.md +137 -0
  411. package/docs/tools/llm-task.md +119 -0
  412. package/docs/tools/lobster.md +340 -0
  413. package/docs/tools/loop-detection.md +100 -0
  414. package/docs/tools/multi-agent-sandbox-tools.md +364 -0
  415. package/docs/tools/pdf.md +156 -0
  416. package/docs/tools/perplexity-search.md +174 -0
  417. package/docs/tools/plugin.md +255 -0
  418. package/docs/tools/reactions.md +64 -0
  419. package/docs/tools/skills-config.md +86 -0
  420. package/docs/tools/skills.md +309 -0
  421. package/docs/tools/slash-commands.md +294 -0
  422. package/docs/tools/subagents.md +295 -0
  423. package/docs/tools/tavily.md +125 -0
  424. package/docs/tools/thinking.md +96 -0
  425. package/docs/tools/tts.md +406 -0
  426. package/docs/tools/web.md +516 -0
  427. package/docs/tts.md +406 -0
  428. package/docs/vps.md +112 -0
  429. package/docs/web/control-ui.md +275 -0
  430. package/docs/web/dashboard.md +54 -0
  431. package/docs/web/index.md +120 -0
  432. package/docs/web/tui.md +170 -0
  433. package/docs/web/webchat.md +61 -0
  434. package/docs/whatsapp-openclaw-ai-zh.jpg +0 -0
  435. package/docs/whatsapp-openclaw.jpg +0 -0
  436. package/docs/zh-CN/AGENTS.md +61 -0
  437. package/docs/zh-CN/automation/auth-monitoring.md +47 -0
  438. package/docs/zh-CN/automation/cron-jobs.md +435 -0
  439. package/docs/zh-CN/automation/cron-vs-heartbeat.md +286 -0
  440. package/docs/zh-CN/automation/gmail-pubsub.md +249 -0
  441. package/docs/zh-CN/automation/hooks.md +1051 -0
  442. package/docs/zh-CN/automation/poll.md +76 -0
  443. package/docs/zh-CN/automation/troubleshooting.md +8 -0
  444. package/docs/zh-CN/automation/webhook.md +163 -0
  445. package/docs/zh-CN/brave-search.md +60 -0
  446. package/docs/zh-CN/channels/bluebubbles.md +354 -0
  447. package/docs/zh-CN/channels/broadcast-groups.md +449 -0
  448. package/docs/zh-CN/channels/channel-routing.md +117 -0
  449. package/docs/zh-CN/channels/discord.md +468 -0
  450. package/docs/zh-CN/channels/feishu.md +728 -0
  451. package/docs/zh-CN/channels/googlechat.md +257 -0
  452. package/docs/zh-CN/channels/grammy.md +38 -0
  453. package/docs/zh-CN/channels/group-messages.md +91 -0
  454. package/docs/zh-CN/channels/groups.md +379 -0
  455. package/docs/zh-CN/channels/imessage.md +302 -0
  456. package/docs/zh-CN/channels/index.md +53 -0
  457. package/docs/zh-CN/channels/line.md +180 -0
  458. package/docs/zh-CN/channels/location.md +63 -0
  459. package/docs/zh-CN/channels/matrix.md +221 -0
  460. package/docs/zh-CN/channels/mattermost.md +144 -0
  461. package/docs/zh-CN/channels/msteams.md +775 -0
  462. package/docs/zh-CN/channels/nextcloud-talk.md +142 -0
  463. package/docs/zh-CN/channels/nostr.md +249 -0
  464. package/docs/zh-CN/channels/pairing.md +89 -0
  465. package/docs/zh-CN/channels/signal.md +209 -0
  466. package/docs/zh-CN/channels/slack.md +531 -0
  467. package/docs/zh-CN/channels/synology-chat.md +138 -0
  468. package/docs/zh-CN/channels/telegram.md +751 -0
  469. package/docs/zh-CN/channels/tlon.md +136 -0
  470. package/docs/zh-CN/channels/troubleshooting.md +36 -0
  471. package/docs/zh-CN/channels/twitch.md +385 -0
  472. package/docs/zh-CN/channels/whatsapp.md +411 -0
  473. package/docs/zh-CN/channels/zalo.md +196 -0
  474. package/docs/zh-CN/channels/zalouser.md +147 -0
  475. package/docs/zh-CN/cli/acp.md +173 -0
  476. package/docs/zh-CN/cli/agent.md +30 -0
  477. package/docs/zh-CN/cli/agents.md +82 -0
  478. package/docs/zh-CN/cli/approvals.md +57 -0
  479. package/docs/zh-CN/cli/browser.md +114 -0
  480. package/docs/zh-CN/cli/channels.md +86 -0
  481. package/docs/zh-CN/cli/config.md +57 -0
  482. package/docs/zh-CN/cli/configure.md +38 -0
  483. package/docs/zh-CN/cli/cron.md +43 -0
  484. package/docs/zh-CN/cli/dashboard.md +23 -0
  485. package/docs/zh-CN/cli/devices.md +74 -0
  486. package/docs/zh-CN/cli/directory.md +70 -0
  487. package/docs/zh-CN/cli/dns.md +30 -0
  488. package/docs/zh-CN/cli/docs.md +22 -0
  489. package/docs/zh-CN/cli/doctor.md +48 -0
  490. package/docs/zh-CN/cli/gateway.md +206 -0
  491. package/docs/zh-CN/cli/health.md +28 -0
  492. package/docs/zh-CN/cli/hooks.md +298 -0
  493. package/docs/zh-CN/cli/index.md +1143 -0
  494. package/docs/zh-CN/cli/logs.md +31 -0
  495. package/docs/zh-CN/cli/memory.md +52 -0
  496. package/docs/zh-CN/cli/message.md +246 -0
  497. package/docs/zh-CN/cli/models.md +85 -0
  498. package/docs/zh-CN/cli/node.md +115 -0
  499. package/docs/zh-CN/cli/nodes.md +80 -0
  500. package/docs/zh-CN/cli/onboard.md +164 -0
  501. package/docs/zh-CN/cli/pairing.md +28 -0
  502. package/docs/zh-CN/cli/plugins.md +66 -0
  503. package/docs/zh-CN/cli/reset.md +24 -0
  504. package/docs/zh-CN/cli/sandbox.md +158 -0
  505. package/docs/zh-CN/cli/security.md +33 -0
  506. package/docs/zh-CN/cli/sessions.md +23 -0
  507. package/docs/zh-CN/cli/setup.md +36 -0
  508. package/docs/zh-CN/cli/skills.md +33 -0
  509. package/docs/zh-CN/cli/status.md +33 -0
  510. package/docs/zh-CN/cli/system.md +63 -0
  511. package/docs/zh-CN/cli/tui.md +30 -0
  512. package/docs/zh-CN/cli/uninstall.md +24 -0
  513. package/docs/zh-CN/cli/update.md +101 -0
  514. package/docs/zh-CN/cli/voicecall.md +41 -0
  515. package/docs/zh-CN/cli/webhooks.md +32 -0
  516. package/docs/zh-CN/concepts/agent-loop.md +146 -0
  517. package/docs/zh-CN/concepts/agent-workspace.md +219 -0
  518. package/docs/zh-CN/concepts/agent.md +115 -0
  519. package/docs/zh-CN/concepts/architecture.md +123 -0
  520. package/docs/zh-CN/concepts/compaction.md +67 -0
  521. package/docs/zh-CN/concepts/context.md +168 -0
  522. package/docs/zh-CN/concepts/features.md +59 -0
  523. package/docs/zh-CN/concepts/markdown-formatting.md +117 -0
  524. package/docs/zh-CN/concepts/memory.md +412 -0
  525. package/docs/zh-CN/concepts/messages.md +141 -0
  526. package/docs/zh-CN/concepts/model-failover.md +145 -0
  527. package/docs/zh-CN/concepts/model-providers.md +606 -0
  528. package/docs/zh-CN/concepts/models.md +225 -0
  529. package/docs/zh-CN/concepts/multi-agent.md +372 -0
  530. package/docs/zh-CN/concepts/oauth.md +164 -0
  531. package/docs/zh-CN/concepts/presence.md +99 -0
  532. package/docs/zh-CN/concepts/queue.md +94 -0
  533. package/docs/zh-CN/concepts/retry.md +76 -0
  534. package/docs/zh-CN/concepts/session-pruning.md +129 -0
  535. package/docs/zh-CN/concepts/session-tool.md +200 -0
  536. package/docs/zh-CN/concepts/session.md +166 -0
  537. package/docs/zh-CN/concepts/streaming.md +133 -0
  538. package/docs/zh-CN/concepts/system-prompt.md +101 -0
  539. package/docs/zh-CN/concepts/timezone.md +96 -0
  540. package/docs/zh-CN/concepts/typebox.md +284 -0
  541. package/docs/zh-CN/concepts/typing-indicators.md +74 -0
  542. package/docs/zh-CN/concepts/usage-tracking.md +42 -0
  543. package/docs/zh-CN/date-time.md +129 -0
  544. package/docs/zh-CN/debug/node-issue.md +90 -0
  545. package/docs/zh-CN/diagnostics/flags.md +98 -0
  546. package/docs/zh-CN/gateway/authentication.md +184 -0
  547. package/docs/zh-CN/gateway/background-process.md +100 -0
  548. package/docs/zh-CN/gateway/bonjour.md +174 -0
  549. package/docs/zh-CN/gateway/bridge-protocol.md +86 -0
  550. package/docs/zh-CN/gateway/cli-backends.md +213 -0
  551. package/docs/zh-CN/gateway/configuration-examples.md +587 -0
  552. package/docs/zh-CN/gateway/configuration-reference.md +3103 -0
  553. package/docs/zh-CN/gateway/configuration.md +640 -0
  554. package/docs/zh-CN/gateway/discovery.md +123 -0
  555. package/docs/zh-CN/gateway/doctor.md +238 -0
  556. package/docs/zh-CN/gateway/gateway-lock.md +41 -0
  557. package/docs/zh-CN/gateway/health.md +42 -0
  558. package/docs/zh-CN/gateway/heartbeat.md +274 -0
  559. package/docs/zh-CN/gateway/index.md +335 -0
  560. package/docs/zh-CN/gateway/local-models.md +159 -0
  561. package/docs/zh-CN/gateway/logging.md +114 -0
  562. package/docs/zh-CN/gateway/multiple-gateways.md +119 -0
  563. package/docs/zh-CN/gateway/network-model.md +23 -0
  564. package/docs/zh-CN/gateway/openai-http-api.md +125 -0
  565. package/docs/zh-CN/gateway/openresponses-http-api.md +317 -0
  566. package/docs/zh-CN/gateway/pairing.md +99 -0
  567. package/docs/zh-CN/gateway/protocol.md +220 -0
  568. package/docs/zh-CN/gateway/remote-gateway-readme.md +164 -0
  569. package/docs/zh-CN/gateway/remote.md +133 -0
  570. package/docs/zh-CN/gateway/sandbox-vs-tool-policy-vs-elevated.md +135 -0
  571. package/docs/zh-CN/gateway/sandboxing.md +188 -0
  572. package/docs/zh-CN/gateway/security/index.md +777 -0
  573. package/docs/zh-CN/gateway/tailscale.md +124 -0
  574. package/docs/zh-CN/gateway/tools-invoke-http-api.md +92 -0
  575. package/docs/zh-CN/gateway/troubleshooting.md +771 -0
  576. package/docs/zh-CN/help/debugging.md +160 -0
  577. package/docs/zh-CN/help/environment.md +88 -0
  578. package/docs/zh-CN/help/faq.md +2640 -0
  579. package/docs/zh-CN/help/index.md +28 -0
  580. package/docs/zh-CN/help/scripts.md +35 -0
  581. package/docs/zh-CN/help/testing.md +375 -0
  582. package/docs/zh-CN/help/troubleshooting.md +104 -0
  583. package/docs/zh-CN/index.md +186 -0
  584. package/docs/zh-CN/install/ansible.md +215 -0
  585. package/docs/zh-CN/install/bun.md +65 -0
  586. package/docs/zh-CN/install/development-channels.md +81 -0
  587. package/docs/zh-CN/install/docker.md +532 -0
  588. package/docs/zh-CN/install/exe-dev.md +133 -0
  589. package/docs/zh-CN/install/fly.md +490 -0
  590. package/docs/zh-CN/install/gcp.md +510 -0
  591. package/docs/zh-CN/install/hetzner.md +337 -0
  592. package/docs/zh-CN/install/index.md +235 -0
  593. package/docs/zh-CN/install/installer.md +422 -0
  594. package/docs/zh-CN/install/macos-vm.md +288 -0
  595. package/docs/zh-CN/install/migrating.md +199 -0
  596. package/docs/zh-CN/install/nix.md +99 -0
  597. package/docs/zh-CN/install/node.md +8 -0
  598. package/docs/zh-CN/install/northflank.mdx +60 -0
  599. package/docs/zh-CN/install/railway.mdx +106 -0
  600. package/docs/zh-CN/install/render.mdx +169 -0
  601. package/docs/zh-CN/install/uninstall.md +135 -0
  602. package/docs/zh-CN/install/updating.md +233 -0
  603. package/docs/zh-CN/logging.md +329 -0
  604. package/docs/zh-CN/network.md +59 -0
  605. package/docs/zh-CN/nodes/audio.md +120 -0
  606. package/docs/zh-CN/nodes/camera.md +162 -0
  607. package/docs/zh-CN/nodes/images.md +79 -0
  608. package/docs/zh-CN/nodes/index.md +348 -0
  609. package/docs/zh-CN/nodes/location-command.md +120 -0
  610. package/docs/zh-CN/nodes/media-understanding.md +380 -0
  611. package/docs/zh-CN/nodes/talk.md +97 -0
  612. package/docs/zh-CN/nodes/troubleshooting.md +8 -0
  613. package/docs/zh-CN/nodes/voicewake.md +72 -0
  614. package/docs/zh-CN/perplexity.md +102 -0
  615. package/docs/zh-CN/pi-dev.md +77 -0
  616. package/docs/zh-CN/pi.md +619 -0
  617. package/docs/zh-CN/platforms/android.md +155 -0
  618. package/docs/zh-CN/platforms/digitalocean.md +273 -0
  619. package/docs/zh-CN/platforms/index.md +60 -0
  620. package/docs/zh-CN/platforms/ios.md +114 -0
  621. package/docs/zh-CN/platforms/linux.md +100 -0
  622. package/docs/zh-CN/platforms/mac/bundled-gateway.md +75 -0
  623. package/docs/zh-CN/platforms/mac/canvas.md +128 -0
  624. package/docs/zh-CN/platforms/mac/child-process.md +73 -0
  625. package/docs/zh-CN/platforms/mac/dev-setup.md +109 -0
  626. package/docs/zh-CN/platforms/mac/health.md +41 -0
  627. package/docs/zh-CN/platforms/mac/icon.md +38 -0
  628. package/docs/zh-CN/platforms/mac/logging.md +64 -0
  629. package/docs/zh-CN/platforms/mac/menu-bar.md +88 -0
  630. package/docs/zh-CN/platforms/mac/peekaboo.md +62 -0
  631. package/docs/zh-CN/platforms/mac/permissions.md +46 -0
  632. package/docs/zh-CN/platforms/mac/remote.md +90 -0
  633. package/docs/zh-CN/platforms/mac/signing.md +54 -0
  634. package/docs/zh-CN/platforms/mac/skills.md +40 -0
  635. package/docs/zh-CN/platforms/mac/voice-overlay.md +67 -0
  636. package/docs/zh-CN/platforms/mac/voicewake.md +74 -0
  637. package/docs/zh-CN/platforms/mac/webchat.md +43 -0
  638. package/docs/zh-CN/platforms/mac/xpc.md +68 -0
  639. package/docs/zh-CN/platforms/macos.md +193 -0
  640. package/docs/zh-CN/platforms/oracle.md +310 -0
  641. package/docs/zh-CN/platforms/raspberry-pi.md +416 -0
  642. package/docs/zh-CN/platforms/windows.md +247 -0
  643. package/docs/zh-CN/plugins/agent-tools.md +99 -0
  644. package/docs/zh-CN/plugins/manifest.md +68 -0
  645. package/docs/zh-CN/plugins/voice-call.md +250 -0
  646. package/docs/zh-CN/plugins/zalouser.md +88 -0
  647. package/docs/zh-CN/prose.md +141 -0
  648. package/docs/zh-CN/providers/anthropic.md +265 -0
  649. package/docs/zh-CN/providers/bedrock.md +170 -0
  650. package/docs/zh-CN/providers/claude-max-api-proxy.md +155 -0
  651. package/docs/zh-CN/providers/cloudflare-ai-gateway.md +78 -0
  652. package/docs/zh-CN/providers/deepgram.md +97 -0
  653. package/docs/zh-CN/providers/github-copilot.md +67 -0
  654. package/docs/zh-CN/providers/glm.md +50 -0
  655. package/docs/zh-CN/providers/huggingface.md +216 -0
  656. package/docs/zh-CN/providers/index.md +69 -0
  657. package/docs/zh-CN/providers/kilocode.md +80 -0
  658. package/docs/zh-CN/providers/litellm.md +160 -0
  659. package/docs/zh-CN/providers/minimax.md +222 -0
  660. package/docs/zh-CN/providers/mistral.md +61 -0
  661. package/docs/zh-CN/providers/models.md +51 -0
  662. package/docs/zh-CN/providers/moonshot.md +182 -0
  663. package/docs/zh-CN/providers/nvidia.md +62 -0
  664. package/docs/zh-CN/providers/ollama.md +359 -0
  665. package/docs/zh-CN/providers/openai.md +308 -0
  666. package/docs/zh-CN/providers/opencode-go.md +52 -0
  667. package/docs/zh-CN/providers/opencode.md +71 -0
  668. package/docs/zh-CN/providers/openrouter.md +44 -0
  669. package/docs/zh-CN/providers/qianfan.md +45 -0
  670. package/docs/zh-CN/providers/qwen.md +55 -0
  671. package/docs/zh-CN/providers/sglang.md +111 -0
  672. package/docs/zh-CN/providers/synthetic.md +106 -0
  673. package/docs/zh-CN/providers/together.md +72 -0
  674. package/docs/zh-CN/providers/venice.md +289 -0
  675. package/docs/zh-CN/providers/vercel-ai-gateway.md +66 -0
  676. package/docs/zh-CN/providers/xiaomi.md +93 -0
  677. package/docs/zh-CN/providers/zai.md +53 -0
  678. package/docs/zh-CN/reference/AGENTS.default.md +131 -0
  679. package/docs/zh-CN/reference/RELEASING.md +48 -0
  680. package/docs/zh-CN/reference/api-usage-costs.md +141 -0
  681. package/docs/zh-CN/reference/credits.md +34 -0
  682. package/docs/zh-CN/reference/device-models.md +54 -0
  683. package/docs/zh-CN/reference/rpc.md +48 -0
  684. package/docs/zh-CN/reference/session-management-compaction.md +287 -0
  685. package/docs/zh-CN/reference/templates/AGENTS.dev.md +89 -0
  686. package/docs/zh-CN/reference/templates/AGENTS.md +225 -0
  687. package/docs/zh-CN/reference/templates/BOOT.md +17 -0
  688. package/docs/zh-CN/reference/templates/BOOTSTRAP.md +68 -0
  689. package/docs/zh-CN/reference/templates/HEARTBEAT.md +18 -0
  690. package/docs/zh-CN/reference/templates/IDENTITY.dev.md +54 -0
  691. package/docs/zh-CN/reference/templates/IDENTITY.md +36 -0
  692. package/docs/zh-CN/reference/templates/SOUL.dev.md +83 -0
  693. package/docs/zh-CN/reference/templates/SOUL.md +49 -0
  694. package/docs/zh-CN/reference/templates/TOOLS.dev.md +31 -0
  695. package/docs/zh-CN/reference/templates/TOOLS.md +53 -0
  696. package/docs/zh-CN/reference/templates/USER.dev.md +25 -0
  697. package/docs/zh-CN/reference/templates/USER.md +30 -0
  698. package/docs/zh-CN/reference/test.md +57 -0
  699. package/docs/zh-CN/reference/token-use.md +119 -0
  700. package/docs/zh-CN/reference/transcript-hygiene.md +109 -0
  701. package/docs/zh-CN/reference/wizard.md +242 -0
  702. package/docs/zh-CN/security/formal-verification.md +171 -0
  703. package/docs/zh-CN/start/bootstrapping.md +9 -0
  704. package/docs/zh-CN/start/docs-directory.md +70 -0
  705. package/docs/zh-CN/start/getting-started.md +143 -0
  706. package/docs/zh-CN/start/hubs.md +194 -0
  707. package/docs/zh-CN/start/lore.md +226 -0
  708. package/docs/zh-CN/start/onboarding-overview.md +58 -0
  709. package/docs/zh-CN/start/onboarding.md +105 -0
  710. package/docs/zh-CN/start/openclaw.md +248 -0
  711. package/docs/zh-CN/start/quickstart.md +88 -0
  712. package/docs/zh-CN/start/setup.md +153 -0
  713. package/docs/zh-CN/start/showcase.md +423 -0
  714. package/docs/zh-CN/start/wizard-cli-automation.md +222 -0
  715. package/docs/zh-CN/start/wizard-cli-reference.md +306 -0
  716. package/docs/zh-CN/start/wizard.md +132 -0
  717. package/docs/zh-CN/tools/agent-send.md +59 -0
  718. package/docs/zh-CN/tools/apply-patch.md +57 -0
  719. package/docs/zh-CN/tools/browser-linux-troubleshooting.md +144 -0
  720. package/docs/zh-CN/tools/browser-login.md +75 -0
  721. package/docs/zh-CN/tools/browser.md +553 -0
  722. package/docs/zh-CN/tools/chrome-extension.md +183 -0
  723. package/docs/zh-CN/tools/clawhub.md +209 -0
  724. package/docs/zh-CN/tools/creating-skills.md +61 -0
  725. package/docs/zh-CN/tools/elevated.md +64 -0
  726. package/docs/zh-CN/tools/exec-approvals.md +234 -0
  727. package/docs/zh-CN/tools/exec.md +169 -0
  728. package/docs/zh-CN/tools/firecrawl.md +68 -0
  729. package/docs/zh-CN/tools/index.md +515 -0
  730. package/docs/zh-CN/tools/llm-task.md +117 -0
  731. package/docs/zh-CN/tools/lobster.md +349 -0
  732. package/docs/zh-CN/tools/multi-agent-sandbox-tools.md +401 -0
  733. package/docs/zh-CN/tools/plugin.md +1612 -0
  734. package/docs/zh-CN/tools/reactions.md +29 -0
  735. package/docs/zh-CN/tools/skills-config.md +78 -0
  736. package/docs/zh-CN/tools/skills.md +279 -0
  737. package/docs/zh-CN/tools/slash-commands.md +205 -0
  738. package/docs/zh-CN/tools/subagents.md +167 -0
  739. package/docs/zh-CN/tools/thinking.md +80 -0
  740. package/docs/zh-CN/tools/web.md +289 -0
  741. package/docs/zh-CN/tts.md +375 -0
  742. package/docs/zh-CN/vps.md +47 -0
  743. package/docs/zh-CN/web/control-ui.md +191 -0
  744. package/docs/zh-CN/web/dashboard.md +53 -0
  745. package/docs/zh-CN/web/index.md +118 -0
  746. package/docs/zh-CN/web/tui.md +166 -0
  747. package/docs/zh-CN/web/webchat.md +56 -0
  748. package/package.json +841 -0
  749. package/quantumclaw.mjs +135 -0
  750. package/skills/1password/SKILL.md +70 -0
  751. package/skills/1password/references/cli-examples.md +29 -0
  752. package/skills/1password/references/get-started.md +17 -0
  753. package/skills/apple-notes/SKILL.md +77 -0
  754. package/skills/apple-reminders/SKILL.md +118 -0
  755. package/skills/bear-notes/SKILL.md +107 -0
  756. package/skills/blogwatcher/SKILL.md +69 -0
  757. package/skills/blucli/SKILL.md +47 -0
  758. package/skills/bluebubbles/SKILL.md +131 -0
  759. package/skills/camsnap/SKILL.md +45 -0
  760. package/skills/canvas/SKILL.md +198 -0
  761. package/skills/clawhub/SKILL.md +77 -0
  762. package/skills/coding-agent/SKILL.md +295 -0
  763. package/skills/discord/SKILL.md +197 -0
  764. package/skills/eightctl/SKILL.md +50 -0
  765. package/skills/gemini/SKILL.md +43 -0
  766. package/skills/gh-issues/SKILL.md +865 -0
  767. package/skills/gifgrep/SKILL.md +79 -0
  768. package/skills/github/SKILL.md +163 -0
  769. package/skills/gog/SKILL.md +116 -0
  770. package/skills/goplaces/SKILL.md +52 -0
  771. package/skills/healthcheck/SKILL.md +245 -0
  772. package/skills/himalaya/SKILL.md +257 -0
  773. package/skills/himalaya/references/configuration.md +184 -0
  774. package/skills/himalaya/references/message-composition.md +199 -0
  775. package/skills/imsg/SKILL.md +122 -0
  776. package/skills/mcporter/SKILL.md +61 -0
  777. package/skills/model-usage/SKILL.md +69 -0
  778. package/skills/model-usage/references/codexbar-cli.md +33 -0
  779. package/skills/model-usage/scripts/model_usage.py +320 -0
  780. package/skills/model-usage/scripts/test_model_usage.py +40 -0
  781. package/skills/nano-pdf/SKILL.md +38 -0
  782. package/skills/node-connect/SKILL.md +142 -0
  783. package/skills/notion/SKILL.md +174 -0
  784. package/skills/obsidian/SKILL.md +81 -0
  785. package/skills/openai-image-gen/SKILL.md +92 -0
  786. package/skills/openai-image-gen/scripts/gen.py +328 -0
  787. package/skills/openai-image-gen/scripts/test_gen.py +140 -0
  788. package/skills/openai-whisper/SKILL.md +38 -0
  789. package/skills/openai-whisper-api/SKILL.md +52 -0
  790. package/skills/openai-whisper-api/scripts/transcribe.sh +85 -0
  791. package/skills/openhue/SKILL.md +112 -0
  792. package/skills/oracle/SKILL.md +125 -0
  793. package/skills/ordercli/SKILL.md +78 -0
  794. package/skills/peekaboo/SKILL.md +190 -0
  795. package/skills/sag/SKILL.md +87 -0
  796. package/skills/session-logs/SKILL.md +115 -0
  797. package/skills/sherpa-onnx-tts/SKILL.md +103 -0
  798. package/skills/sherpa-onnx-tts/bin/sherpa-onnx-tts +178 -0
  799. package/skills/skill-creator/SKILL.md +372 -0
  800. package/skills/skill-creator/license.txt +202 -0
  801. package/skills/skill-creator/scripts/init_skill.py +378 -0
  802. package/skills/skill-creator/scripts/package_skill.py +139 -0
  803. package/skills/skill-creator/scripts/quick_validate.py +159 -0
  804. package/skills/skill-creator/scripts/test_package_skill.py +160 -0
  805. package/skills/skill-creator/scripts/test_quick_validate.py +72 -0
  806. package/skills/slack/SKILL.md +144 -0
  807. package/skills/songsee/SKILL.md +49 -0
  808. package/skills/sonoscli/SKILL.md +65 -0
  809. package/skills/spotify-player/SKILL.md +64 -0
  810. package/skills/summarize/SKILL.md +87 -0
  811. package/skills/things-mac/SKILL.md +86 -0
  812. package/skills/tmux/SKILL.md +153 -0
  813. package/skills/tmux/scripts/find-sessions.sh +112 -0
  814. package/skills/tmux/scripts/wait-for-text.sh +83 -0
  815. package/skills/trello/SKILL.md +95 -0
  816. package/skills/video-frames/SKILL.md +46 -0
  817. package/skills/video-frames/scripts/frame.sh +81 -0
  818. package/skills/voice-call/SKILL.md +45 -0
  819. package/skills/wacli/SKILL.md +72 -0
  820. package/skills/weather/SKILL.md +112 -0
  821. package/skills/xurl/SKILL.md +461 -0
@@ -0,0 +1,412 @@
1
+ ---
2
+ read_when:
3
+ - 你想了解记忆文件布局和工作流程
4
+ - 你想调整自动压缩前的记忆刷新
5
+ summary: QuantumClaw 记忆的工作原理(工作空间文件 + 自动记忆刷新)
6
+ title: 记忆
7
+ x-i18n:
8
+ generated_at: "2026-02-03T07:47:38Z"
9
+ model: claude-opus-4-5
10
+ provider: pi
11
+ source_hash: f3a7f5d9f61f9742eb3a8adbc3ccaddeadb7e48ceccdfb595327d6d1f55cd00e
12
+ source_path: concepts/memory.md
13
+ workflow: 15
14
+ ---
15
+
16
+ # 记忆
17
+
18
+ QuantumClaw 记忆是**智能体工作空间中的纯 Markdown 文件**。这些文件是唯一的事实来源;模型只"记住"写入磁盘的内容。
19
+
20
+ 记忆搜索工具由活动的记忆插件提供(默认:`memory-core`)。使用 `plugins.slots.memory = "none"` 禁用记忆插件。
21
+
22
+ ## 记忆文件(Markdown)
23
+
24
+ 默认工作空间布局使用两个记忆层:
25
+
26
+ - `memory/YYYY-MM-DD.md`
27
+ - 每日日志(仅追加)。
28
+ - 在会话开始时读取今天和昨天的内容。
29
+ - `MEMORY.md`(可选)
30
+ - 精心整理的长期记忆。
31
+ - **仅在主要的私人会话中加载**(绝不在群组上下文中加载)。
32
+
33
+ 这些文件位于工作空间下(`agents.defaults.workspace`,默认 `~/.quantumclaw/workspace`)。完整布局参见[智能体工作空间](/concepts/agent-workspace)。
34
+
35
+ ## 何时写入记忆
36
+
37
+ - 决策、偏好和持久性事实写入 `MEMORY.md`。
38
+ - 日常笔记和运行上下文写入 `memory/YYYY-MM-DD.md`。
39
+ - 如果有人说"记住这个",就写下来(不要只保存在内存中)。
40
+ - 这个领域仍在发展中。提醒模型存储记忆会有帮助;它会知道该怎么做。
41
+ - 如果你想让某些内容持久保存,**请要求机器人将其写入**记忆。
42
+
43
+ ## 自动记忆刷新(压缩前触发)
44
+
45
+ 当会话**接近自动压缩**时,QuantumClaw 会触发一个**静默的智能体回合**,提醒模型在上下文被压缩**之前**写入持久记忆。默认提示明确说明模型*可以回复*,但通常 `NO_REPLY` 是正确的响应,因此用户永远不会看到这个回合。
46
+
47
+ 这由 `agents.defaults.compaction.memoryFlush` 控制:
48
+
49
+ ```json5
50
+ {
51
+ agents: {
52
+ defaults: {
53
+ compaction: {
54
+ reserveTokensFloor: 20000,
55
+ memoryFlush: {
56
+ enabled: true,
57
+ softThresholdTokens: 4000,
58
+ systemPrompt: "Session nearing compaction. Store durable memories now.",
59
+ prompt: "Write any lasting notes to memory/YYYY-MM-DD.md; reply with NO_REPLY if nothing to store.",
60
+ },
61
+ },
62
+ },
63
+ },
64
+ }
65
+ ```
66
+
67
+ 详情:
68
+
69
+ - **软阈值**:当会话 token 估计超过 `contextWindow - reserveTokensFloor - softThresholdTokens` 时触发刷新。
70
+ - 默认**静默**:提示包含 `NO_REPLY`,因此不会发送任何内容。
71
+ - **两个提示**:一个用户提示加一个系统提示附加提醒。
72
+ - **每个压缩周期刷新一次**(在 `sessions.json` 中跟踪)。
73
+ - **工作空间必须可写**:如果会话以 `workspaceAccess: "ro"` 或 `"none"` 在沙箱中运行,则跳过刷新。
74
+
75
+ 完整的压缩生命周期参见[会话管理 + 压缩](/reference/session-management-compaction)。
76
+
77
+ ## 向量记忆搜索
78
+
79
+ QuantumClaw 可以在 `MEMORY.md` 和 `memory/*.md`(以及你选择加入的任何额外目录或文件)上构建小型向量索引,以便语义查询可以找到相关笔记,即使措辞不同。
80
+
81
+ 默认值:
82
+
83
+ - 默认启用。
84
+ - 监视记忆文件的更改(去抖动)。
85
+ - 默认使用远程嵌入。如果未设置 `memorySearch.provider`,QuantumClaw 自动选择:
86
+ 1. 如果配置了 `memorySearch.local.modelPath` 且文件存在,则使用 `local`。
87
+ 2. 如果可以解析 OpenAI 密钥,则使用 `openai`。
88
+ 3. 如果可以解析 Gemini 密钥,则使用 `gemini`。
89
+ 4. 否则记忆搜索保持禁用状态直到配置完成。
90
+ - 本地模式使用 node-llama-cpp,可能需要运行 `pnpm approve-builds`。
91
+ - 使用 sqlite-vec(如果可用)在 SQLite 中加速向量搜索。
92
+
93
+ 远程嵌入**需要**嵌入提供商的 API 密钥。QuantumClaw 从身份验证配置文件、`models.providers.*.apiKey` 或环境变量解析密钥。Codex OAuth 仅涵盖聊天/补全,**不**满足记忆搜索的嵌入需求。对于 Gemini,使用 `GEMINI_API_KEY` 或 `models.providers.google.apiKey`。使用自定义 OpenAI 兼容端点时,设置 `memorySearch.remote.apiKey`(以及可选的 `memorySearch.remote.headers`)。
94
+
95
+ ### 额外记忆路径
96
+
97
+ 如果你想索引默认工作空间布局之外的 Markdown 文件,添加显式路径:
98
+
99
+ ```json5
100
+ agents: {
101
+ defaults: {
102
+ memorySearch: {
103
+ extraPaths: ["../team-docs", "/srv/shared-notes/overview.md"]
104
+ }
105
+ }
106
+ }
107
+ ```
108
+
109
+ 说明:
110
+
111
+ - 路径可以是绝对路径或工作空间相对路径。
112
+ - 目录会递归扫描 `.md` 文件。
113
+ - 仅索引 Markdown 文件。
114
+ - 符号链接被忽略(文件或目录)。
115
+
116
+ ### Gemini 嵌入(原生)
117
+
118
+ 将提供商设置为 `gemini` 以直接使用 Gemini 嵌入 API:
119
+
120
+ ```json5
121
+ agents: {
122
+ defaults: {
123
+ memorySearch: {
124
+ provider: "gemini",
125
+ model: "gemini-embedding-001",
126
+ remote: {
127
+ apiKey: "YOUR_GEMINI_API_KEY"
128
+ }
129
+ }
130
+ }
131
+ }
132
+ ```
133
+
134
+ 说明:
135
+
136
+ - `remote.baseUrl` 是可选的(默认为 Gemini API 基础 URL)。
137
+ - `remote.headers` 让你可以在需要时添加额外的标头。
138
+ - 默认模型:`gemini-embedding-001`。
139
+
140
+ 如果你想使用**自定义 OpenAI 兼容端点**(OpenRouter、vLLM 或代理),可以使用 `remote` 配置与 OpenAI 提供商:
141
+
142
+ ```json5
143
+ agents: {
144
+ defaults: {
145
+ memorySearch: {
146
+ provider: "openai",
147
+ model: "text-embedding-3-small",
148
+ remote: {
149
+ baseUrl: "https://api.example.com/v1/",
150
+ apiKey: "YOUR_OPENAI_COMPAT_API_KEY",
151
+ headers: { "X-Custom-Header": "value" }
152
+ }
153
+ }
154
+ }
155
+ }
156
+ ```
157
+
158
+ 如果你不想设置 API 密钥,使用 `memorySearch.provider = "local"` 或设置 `memorySearch.fallback = "none"`。
159
+
160
+ 回退:
161
+
162
+ - `memorySearch.fallback` 可以是 `openai`、`gemini`、`local` 或 `none`。
163
+ - 回退提供商仅在主嵌入提供商失败时使用。
164
+
165
+ 批量索引(OpenAI + Gemini):
166
+
167
+ - OpenAI 和 Gemini 嵌入默认启用。设置 `agents.defaults.memorySearch.remote.batch.enabled = false` 以禁用。
168
+ - 默认行为等待批处理完成;如果需要可以调整 `remote.batch.wait`、`remote.batch.pollIntervalMs` 和 `remote.batch.timeoutMinutes`。
169
+ - 设置 `remote.batch.concurrency` 以控制我们并行提交多少个批处理作业(默认:2)。
170
+ - 批处理模式在 `memorySearch.provider = "openai"` 或 `"gemini"` 时适用,并使用相应的 API 密钥。
171
+ - Gemini 批处理作业使用异步嵌入批处理端点,需要 Gemini Batch API 可用。
172
+
173
+ 为什么 OpenAI 批处理快速又便宜:
174
+
175
+ - 对于大型回填,OpenAI 通常是我们支持的最快选项,因为我们可以在单个批处理作业中提交许多嵌入请求,让 OpenAI 异步处理它们。
176
+ - OpenAI 为 Batch API 工作负载提供折扣定价,因此大型索引运行通常比同步发送相同请求更便宜。
177
+ - 详情参见 OpenAI Batch API 文档和定价:
178
+ - https://platform.openai.com/docs/api-reference/batch
179
+ - https://platform.openai.com/pricing
180
+
181
+ 配置示例:
182
+
183
+ ```json5
184
+ agents: {
185
+ defaults: {
186
+ memorySearch: {
187
+ provider: "openai",
188
+ model: "text-embedding-3-small",
189
+ fallback: "openai",
190
+ remote: {
191
+ batch: { enabled: true, concurrency: 2 }
192
+ },
193
+ sync: { watch: true }
194
+ }
195
+ }
196
+ }
197
+ ```
198
+
199
+ 工具:
200
+
201
+ - `memory_search` — 返回带有文件 + 行范围的片段。
202
+ - `memory_get` — 按路径读取记忆文件内容。
203
+
204
+ 本地模式:
205
+
206
+ - 设置 `agents.defaults.memorySearch.provider = "local"`。
207
+ - 提供 `agents.defaults.memorySearch.local.modelPath`(GGUF 或 `hf:` URI)。
208
+ - 可选:设置 `agents.defaults.memorySearch.fallback = "none"` 以避免远程回退。
209
+
210
+ ### 记忆工具的工作原理
211
+
212
+ - `memory_search` 从 `MEMORY.md` + `memory/**/*.md` 语义搜索 Markdown 块(目标约 400 个 token,80 个 token 重叠)。它返回片段文本(上限约 700 个字符)、文件路径、行范围、分数、提供商/模型,以及我们是否从本地回退到远程嵌入。不返回完整文件内容。
213
+ - `memory_get` 读取特定的记忆 Markdown 文件(工作空间相对路径),可选从起始行开始读取 N 行。`MEMORY.md` / `memory/` 之外的路径仅在明确列在 `memorySearch.extraPaths` 中时才允许。
214
+ - 两个工具仅在智能体的 `memorySearch.enabled` 解析为 true 时启用。
215
+
216
+ ### 索引内容(及时机)
217
+
218
+ - 文件类型:仅 Markdown(`MEMORY.md`、`memory/**/*.md`,以及 `memorySearch.extraPaths` 下的任何 `.md` 文件)。
219
+ - 索引存储:每个智能体的 SQLite 位于 `~/.quantumclaw/memory/<agentId>.sqlite`(可通过 `agents.defaults.memorySearch.store.path` 配置,支持 `{agentId}` 令牌)。
220
+ - 新鲜度:监视器监视 `MEMORY.md`、`memory/` 和 `memorySearch.extraPaths`,标记索引为脏(去抖动 1.5 秒)。同步在会话开始时、搜索时或按间隔安排,并异步运行。会话记录使用增量阈值触发后台同步。
221
+ - 重新索引触发器:索引存储嵌入的**提供商/模型 + 端点指纹 + 分块参数**。如果其中任何一个发生变化,QuantumClaw 会自动重置并重新索引整个存储。
222
+
223
+ ### 混合搜索(BM25 + 向量)
224
+
225
+ 启用时,QuantumClaw 结合:
226
+
227
+ - **向量相似度**(语义匹配,措辞可以不同)
228
+ - **BM25 关键词相关性**(精确令牌如 ID、环境变量、代码符号)
229
+
230
+ 如果你的平台上全文搜索不可用,QuantumClaw 会回退到纯向量搜索。
231
+
232
+ #### 为什么使用混合搜索?
233
+
234
+ 向量搜索擅长"这意味着同一件事":
235
+
236
+ - "Mac Studio gateway host" vs "运行 gateway 的机器"
237
+ - "debounce file updates" vs "避免每次写入都索引"
238
+
239
+ 但它在精确的高信号令牌上可能较弱:
240
+
241
+ - ID(`a828e60`、`b3b9895a…`)
242
+ - 代码符号(`memorySearch.query.hybrid`)
243
+ - 错误字符串("sqlite-vec unavailable")
244
+
245
+ BM25(全文)正好相反:擅长精确令牌,弱于释义。
246
+ 混合搜索是务实的中间地带:**同时使用两种检索信号**,这样你可以在"自然语言"查询和"大海捞针"查询上都获得好结果。
247
+
248
+ #### 我们如何合并结果(当前设计)
249
+
250
+ 实现概述:
251
+
252
+ 1. 从双方检索候选池:
253
+
254
+ - **向量**:按余弦相似度取前 `maxResults * candidateMultiplier` 个。
255
+ - **BM25**:按 FTS5 BM25 排名取前 `maxResults * candidateMultiplier` 个(越低越好)。
256
+
257
+ 2. 将 BM25 排名转换为 0..1 范围的分数:
258
+
259
+ - `textScore = 1 / (1 + max(0, bm25Rank))`
260
+
261
+ 3. 按块 id 合并候选并计算加权分数:
262
+
263
+ - `finalScore = vectorWeight * vectorScore + textWeight * textScore`
264
+
265
+ 说明:
266
+
267
+ - 在配置解析中 `vectorWeight` + `textWeight` 归一化为 1.0,因此权重表现为百分比。
268
+ - 如果嵌入不可用(或提供商返回零向量),我们仍然运行 BM25 并返回关键词匹配。
269
+ - 如果无法创建 FTS5,我们保持纯向量搜索(不会硬失败)。
270
+
271
+ 这不是"IR 理论完美"的,但它简单、快速,并且往往能提高真实笔记的召回率/精确率。
272
+ 如果我们以后想要更复杂的方案,常见的下一步是倒数排名融合(RRF)或在混合之前进行分数归一化(最小/最大或 z 分数)。
273
+
274
+ 配置:
275
+
276
+ ```json5
277
+ agents: {
278
+ defaults: {
279
+ memorySearch: {
280
+ query: {
281
+ hybrid: {
282
+ enabled: true,
283
+ vectorWeight: 0.7,
284
+ textWeight: 0.3,
285
+ candidateMultiplier: 4
286
+ }
287
+ }
288
+ }
289
+ }
290
+ }
291
+ ```
292
+
293
+ ### 嵌入缓存
294
+
295
+ QuantumClaw 可以在 SQLite 中缓存**块嵌入**,这样重新索引和频繁更新(特别是会话记录)不会重新嵌入未更改的文本。
296
+
297
+ 配置:
298
+
299
+ ```json5
300
+ agents: {
301
+ defaults: {
302
+ memorySearch: {
303
+ cache: {
304
+ enabled: true,
305
+ maxEntries: 50000
306
+ }
307
+ }
308
+ }
309
+ }
310
+ ```
311
+
312
+ ### 会话记忆搜索(实验性)
313
+
314
+ 你可以选择性地索引**会话记录**并通过 `memory_search` 呈现它们。
315
+ 这由实验性标志控制。
316
+
317
+ ```json5
318
+ agents: {
319
+ defaults: {
320
+ memorySearch: {
321
+ experimental: { sessionMemory: true },
322
+ sources: ["memory", "sessions"]
323
+ }
324
+ }
325
+ }
326
+ ```
327
+
328
+ 说明:
329
+
330
+ - 会话索引是**选择加入**的(默认关闭)。
331
+ - 会话更新被去抖动并在超过增量阈值后**异步索引**(尽力而为)。
332
+ - `memory_search` 永远不会阻塞索引;在后台同步完成之前,结果可能略有延迟。
333
+ - 结果仍然只包含片段;`memory_get` 仍然仅限于记忆文件。
334
+ - 会话索引按智能体隔离(仅索引该智能体的会话日志)。
335
+ - 会话日志存储在磁盘上(`~/.quantumclaw/agents/<agentId>/sessions/*.jsonl`)。任何具有文件系统访问权限的进程/用户都可以读取它们,因此将磁盘访问视为信任边界。对于更严格的隔离,在单独的操作系统用户或主机下运行智能体。
336
+
337
+ 增量阈值(显示默认值):
338
+
339
+ ```json5
340
+ agents: {
341
+ defaults: {
342
+ memorySearch: {
343
+ sync: {
344
+ sessions: {
345
+ deltaBytes: 100000, // ~100 KB
346
+ deltaMessages: 50 // JSONL 行数
347
+ }
348
+ }
349
+ }
350
+ }
351
+ }
352
+ ```
353
+
354
+ ### SQLite 向量加速(sqlite-vec)
355
+
356
+ 当 sqlite-vec 扩展可用时,QuantumClaw 将嵌入存储在 SQLite 虚拟表(`vec0`)中,并在数据库中执行向量距离查询。这使搜索保持快速,无需将每个嵌入加载到 JS 中。
357
+
358
+ 配置(可选):
359
+
360
+ ```json5
361
+ agents: {
362
+ defaults: {
363
+ memorySearch: {
364
+ store: {
365
+ vector: {
366
+ enabled: true,
367
+ extensionPath: "/path/to/sqlite-vec"
368
+ }
369
+ }
370
+ }
371
+ }
372
+ }
373
+ ```
374
+
375
+ 说明:
376
+
377
+ - `enabled` 默认为 true;禁用时,搜索回退到对存储嵌入的进程内余弦相似度计算。
378
+ - 如果 sqlite-vec 扩展缺失或加载失败,QuantumClaw 会记录错误并继续使用 JS 回退(无向量表)。
379
+ - `extensionPath` 覆盖捆绑的 sqlite-vec 路径(对于自定义构建或非标准安装位置很有用)。
380
+
381
+ ### 本地嵌入自动下载
382
+
383
+ - 默认本地嵌入模型:`hf:ggml-org/embeddinggemma-300M-GGUF/embeddinggemma-300M-Q8_0.gguf`(约 0.6 GB)。
384
+ - 当 `memorySearch.provider = "local"` 时,`node-llama-cpp` 解析 `modelPath`;如果 GGUF 缺失,它会**自动下载**到缓存(或 `local.modelCacheDir`,如果已设置),然后加载它。下载在重试时会续传。
385
+ - 原生构建要求:运行 `pnpm approve-builds`,选择 `node-llama-cpp`,然后运行 `pnpm rebuild node-llama-cpp`。
386
+ - 回退:如果本地设置失败且 `memorySearch.fallback = "openai"`,我们自动切换到远程嵌入(`openai/text-embedding-3-small`,除非被覆盖)并记录原因。
387
+
388
+ ### 自定义 OpenAI 兼容端点示例
389
+
390
+ ```json5
391
+ agents: {
392
+ defaults: {
393
+ memorySearch: {
394
+ provider: "openai",
395
+ model: "text-embedding-3-small",
396
+ remote: {
397
+ baseUrl: "https://api.example.com/v1/",
398
+ apiKey: "YOUR_REMOTE_API_KEY",
399
+ headers: {
400
+ "X-Organization": "org-id",
401
+ "X-Project": "project-id"
402
+ }
403
+ }
404
+ }
405
+ }
406
+ }
407
+ ```
408
+
409
+ 说明:
410
+
411
+ - `remote.*` 优先于 `models.providers.openai.*`。
412
+ - `remote.headers` 与 OpenAI 标头合并;键冲突时 remote 优先。省略 `remote.headers` 以使用 OpenAI 默认值。
@@ -0,0 +1,141 @@
1
+ ---
2
+ read_when:
3
+ - 解释入站消息如何转化为回复
4
+ - 阐明会话、队列模式或流式传输行为
5
+ - 记录推理可见性和使用影响
6
+ summary: 消息流程、会话、队列和推理可见性
7
+ title: 消息
8
+ x-i18n:
9
+ generated_at: "2026-02-03T10:05:22Z"
10
+ model: claude-opus-4-5
11
+ provider: pi
12
+ source_hash: 147362b61bee21ee6e303654d970a052325f076ddb45814306053f70409737b5
13
+ source_path: concepts/messages.md
14
+ workflow: 15
15
+ ---
16
+
17
+ # 消息
18
+
19
+ 本页汇总了 QuantumClaw 如何处理入站消息、会话、队列、流式传输和推理可见性。
20
+
21
+ ## 消息流程(高层概述)
22
+
23
+ ```
24
+ 入站消息
25
+ -> 路由/绑定 -> 会话密钥
26
+ -> 队列(如果有运行中的任务)
27
+ -> 智能体运行(流式传输 + 工具)
28
+ -> 出站回复(渠道限制 + 分块)
29
+ ```
30
+
31
+ 关键配置项在配置中:
32
+
33
+ - `messages.*` 用于前缀、队列和群组行为。
34
+ - `agents.defaults.*` 用于分块流式传输和分块默认值。
35
+ - 渠道覆盖(`channels.whatsapp.*`、`channels.telegram.*` 等)用于上限和流式传输开关。
36
+
37
+ 完整 schema 参见[配置](/gateway/configuration)。
38
+
39
+ ## 入站去重
40
+
41
+ 渠道可能在重新连接后重复投递同一消息。QuantumClaw 保持一个短期缓存,以渠道/账户/对端/会话/消息 ID 为键,因此重复投递不会触发另一次智能体运行。
42
+
43
+ ## 入站防抖
44
+
45
+ 来自**同一发送者**的快速连续消息可以通过 `messages.inbound` 批量合并为单个智能体轮次。防抖按渠道 + 会话为范围,并使用最近的消息进行回复线程/ID 处理。
46
+
47
+ 配置(全局默认 + 单渠道覆盖):
48
+
49
+ ```json5
50
+ {
51
+ messages: {
52
+ inbound: {
53
+ debounceMs: 2000,
54
+ byChannel: {
55
+ whatsapp: 5000,
56
+ slack: 1500,
57
+ discord: 1500,
58
+ },
59
+ },
60
+ },
61
+ }
62
+ ```
63
+
64
+ 注意事项:
65
+
66
+ - 防抖仅适用于**纯文本**消息;媒体/附件会立即刷新。
67
+ - 控制命令会绕过防抖,保持独立。
68
+
69
+ ## 会话和设备
70
+
71
+ 会话由 Gateway 网关拥有,而非客户端。
72
+
73
+ - 直接聊天合并到智能体主会话密钥。
74
+ - 群组/渠道获得各自的会话密钥。
75
+ - 会话存储和记录保存在 Gateway 网关主机上。
76
+
77
+ 多个设备/渠道可以映射到同一会话,但历史记录不会完全同步回每个客户端。建议:对长对话使用一个主设备,以避免上下文分歧。控制 UI 和 TUI 始终显示 Gateway 网关支持的会话记录,因此它们是事实来源。
78
+
79
+ 详情:[会话管理](/concepts/session)。
80
+
81
+ ## 入站正文和历史上下文
82
+
83
+ QuantumClaw 将**提示正文**与**命令正文**分开:
84
+
85
+ - `Body`:发送给智能体的提示文本。这可能包括渠道信封和可选的历史包装器。
86
+ - `CommandBody`:用于指令/命令解析的原始用户文本。
87
+ - `RawBody`:`CommandBody` 的旧别名(为兼容性保留)。
88
+
89
+ 当渠道提供历史记录时,使用共享包装器:
90
+
91
+ - `[Chat messages since your last reply - for context]`
92
+ - `[Current message - respond to this]`
93
+
94
+ 对于**非直接聊天**(群组/渠道/房间),**当前消息正文**会加上发送者标签前缀(与历史条目使用的样式相同)。这使智能体提示中的实时消息和队列/历史消息保持一致。
95
+
96
+ 历史缓冲区是**仅待处理的**:它们包含*未*触发运行的群组消息(例如,提及门控的消息),并**排除**已在会话记录中的消息。
97
+
98
+ 指令剥离仅适用于**当前消息**部分,因此历史记录保持完整。包装历史记录的渠道应将 `CommandBody`(或 `RawBody`)设置为原始消息文本,并将 `Body` 保留为组合提示。历史缓冲区可通过 `messages.groupChat.historyLimit`(全局默认)和单渠道覆盖(如 `channels.slack.historyLimit` 或 `channels.telegram.accounts.<id>.historyLimit`)进行配置(设置 `0` 表示禁用)。
99
+
100
+ ## 队列和后续消息
101
+
102
+ 如果运行已在进行中,入站消息可以排队、导入当前运行,或收集用于后续轮次。
103
+
104
+ - 通过 `messages.queue`(和 `messages.queue.byChannel`)配置。
105
+ - 模式:`interrupt`、`steer`、`followup`、`collect`,以及积压变体。
106
+
107
+ 详情:[队列](/concepts/queue)。
108
+
109
+ ## 流式传输、分块和批处理
110
+
111
+ 分块流式传输在模型生成文本块时发送部分回复。分块遵循渠道文本限制,避免拆分围栏代码。
112
+
113
+ 关键设置:
114
+
115
+ - `agents.defaults.blockStreamingDefault`(`on|off`,默认 off)
116
+ - `agents.defaults.blockStreamingBreak`(`text_end|message_end`)
117
+ - `agents.defaults.blockStreamingChunk`(`minChars|maxChars|breakPreference`)
118
+ - `agents.defaults.blockStreamingCoalesce`(基于空闲的批处理)
119
+ - `agents.defaults.humanDelay`(块回复之间的拟人化暂停)
120
+ - 渠道覆盖:`*.blockStreaming` 和 `*.blockStreamingCoalesce`(非 Telegram 渠道需要显式设置 `*.blockStreaming: true`)
121
+
122
+ 详情:[流式传输 + 分块](/concepts/streaming)。
123
+
124
+ ## 推理可见性和 token
125
+
126
+ QuantumClaw 可以显示或隐藏模型推理:
127
+
128
+ - `/reasoning on|off|stream` 控制可见性。
129
+ - 当模型产生推理内容时,它仍计入 token 使用量。
130
+ - Telegram 支持将推理流式传输到草稿气泡中。
131
+
132
+ 详情:[思考 + 推理指令](/tools/thinking)和 [Token 使用](/reference/token-use)。
133
+
134
+ ## 前缀、线程和回复
135
+
136
+ 出站消息格式在 `messages` 中集中配置:
137
+
138
+ - `messages.responsePrefix`(出站前缀)和 `channels.whatsapp.messagePrefix`(WhatsApp 入站前缀)
139
+ - 通过 `replyToMode` 和单渠道默认值进行回复线程
140
+
141
+ 详情:[配置](/gateway/configuration#messages)和渠道文档。
@@ -0,0 +1,145 @@
1
+ ---
2
+ read_when:
3
+ - 诊断认证配置文件轮换、冷却时间或模型回退行为
4
+ - 更新认证配置文件或模型的故障转移规则
5
+ summary: QuantumClaw 如何轮换认证配置文件并在模型之间进行回退
6
+ title: 模型故障转移
7
+ x-i18n:
8
+ generated_at: "2026-02-03T07:46:17Z"
9
+ model: claude-opus-4-5
10
+ provider: pi
11
+ source_hash: eab7c0633824d941cf0d6ce4294f0bc8747fbba2ce93650e9643eca327cd04a9
12
+ source_path: concepts/model-failover.md
13
+ workflow: 15
14
+ ---
15
+
16
+ # 模型故障转移
17
+
18
+ QuantumClaw 分两个阶段处理故障:
19
+
20
+ 1. 在当前提供商内进行**认证配置文件轮换**。
21
+ 2. **模型回退**到 `agents.defaults.model.fallbacks` 中的下一个模型。
22
+
23
+ 本文档解释运行时规则及其背后的数据。
24
+
25
+ ## 认证存储(密钥 + OAuth)
26
+
27
+ QuantumClaw 对 API 密钥和 OAuth 令牌都使用**认证配置文件**。
28
+
29
+ - 密钥存储在 `~/.quantumclaw/agents/<agentId>/agent/auth-profiles.json`(旧版:`~/.quantumclaw/agent/auth-profiles.json`)。
30
+ - 配置 `auth.profiles` / `auth.order` **仅用于元数据和路由**(不含密钥)。
31
+ - 旧版仅导入 OAuth 文件:`~/.quantumclaw/credentials/oauth.json`(首次使用时导入到 `auth-profiles.json`)。
32
+
33
+ 更多详情:[/concepts/oauth](/concepts/oauth)
34
+
35
+ 凭证类型:
36
+
37
+ - `type: "api_key"` → `{ provider, key }`
38
+ - `type: "oauth"` → `{ provider, access, refresh, expires, email? }`(某些提供商还有 `projectId`/`enterpriseUrl`)
39
+
40
+ ## 配置文件 ID
41
+
42
+ OAuth 登录创建不同的配置文件,以便多个账户可以共存。
43
+
44
+ - 默认:当没有电子邮件可用时为 `provider:default`。
45
+ - 带电子邮件的 OAuth:`provider:<email>`(例如 `google-antigravity:user@gmail.com`)。
46
+
47
+ 配置文件存储在 `~/.quantumclaw/agents/<agentId>/agent/auth-profiles.json` 的 `profiles` 下。
48
+
49
+ ## 轮换顺序
50
+
51
+ 当一个提供商有多个配置文件时,QuantumClaw 按以下顺序选择:
52
+
53
+ 1. **显式配置**:`auth.order[provider]`(如果设置)。
54
+ 2. **已配置的配置文件**:按提供商过滤的 `auth.profiles`。
55
+ 3. **已存储的配置文件**:`auth-profiles.json` 中该提供商的条目。
56
+
57
+ 如果没有配置显式顺序,QuantumClaw 使用轮询顺序:
58
+
59
+ - **主键:** 配置文件类型(**OAuth 优先于 API 密钥**)。
60
+ - **次键:** `usageStats.lastUsed`(每种类型中最旧的优先)。
61
+ - **冷却/禁用的配置文件**会移到末尾,按最早过期时间排序。
62
+
63
+ ### 会话粘性(缓存友好)
64
+
65
+ QuantumClaw **为每个会话固定所选的认证配置文件**以保持提供商缓存热度。它**不会**在每个请求时轮换。固定的配置文件会被重用直到:
66
+
67
+ - 会话被重置(`/new` / `/reset`)
68
+ - 压缩完成(压缩计数递增)
69
+ - 配置文件处于冷却/禁用状态
70
+
71
+ 通过 `/model …@<profileId>` 手动选择会为该会话设置**用户覆盖**,在新会话开始之前不会自动轮换。
72
+
73
+ 自动固定的配置文件(由会话路由器选择)被视为**偏好**:它们会优先尝试,但 QuantumClaw 可能在速率限制/超时时轮换到另一个配置文件。用户固定的配置文件会锁定到该配置文件;如果失败且配置了模型回退,QuantumClaw 会移动到下一个模型而不是切换配置文件。
74
+
75
+ ### 为什么 OAuth 可能"看起来丢失"
76
+
77
+ 如果你为同一个提供商同时拥有 OAuth 配置文件和 API 密钥配置文件,除非固定,否则轮询可能在消息之间切换它们。要强制使用单个配置文件:
78
+
79
+ - 使用 `auth.order[provider] = ["provider:profileId"]` 固定,或
80
+ - 通过 `/model …` 使用每会话覆盖并指定配置文件覆盖(当你的 UI/聊天界面支持时)。
81
+
82
+ ## 冷却时间
83
+
84
+ 当配置文件因认证/速率限制错误(或看起来像速率限制的超时)而失败时,QuantumClaw 将其标记为冷却状态并移动到下一个配置文件。格式/无效请求错误(例如 Cloud Code Assist 工具调用 ID 验证失败)被视为值得故障转移的情况,使用相同的冷却时间。
85
+
86
+ 冷却时间使用指数退避:
87
+
88
+ - 1 分钟
89
+ - 5 分钟
90
+ - 25 分钟
91
+ - 1 小时(上限)
92
+
93
+ 状态存储在 `auth-profiles.json` 的 `usageStats` 下:
94
+
95
+ ```json
96
+ {
97
+ "usageStats": {
98
+ "provider:profile": {
99
+ "lastUsed": 1736160000000,
100
+ "cooldownUntil": 1736160600000,
101
+ "errorCount": 2
102
+ }
103
+ }
104
+ }
105
+ ```
106
+
107
+ ## 账单禁用
108
+
109
+ 账单/额度失败(例如"insufficient credits"/"credit balance too low")被视为值得故障转移的情况,但它们通常不是暂时性的。QuantumClaw 不使用短冷却时间,而是将配置文件标记为**禁用**(使用更长的退避时间)并轮换到下一个配置文件/提供商。
110
+
111
+ 状态存储在 `auth-profiles.json` 中:
112
+
113
+ ```json
114
+ {
115
+ "usageStats": {
116
+ "provider:profile": {
117
+ "disabledUntil": 1736178000000,
118
+ "disabledReason": "billing"
119
+ }
120
+ }
121
+ }
122
+ ```
123
+
124
+ 默认值:
125
+
126
+ - 账单退避从 **5 小时**开始,每次账单失败翻倍,上限为 **24 小时**。
127
+ - 如果配置文件 **24 小时**内没有失败,退避计数器会重置(可配置)。
128
+
129
+ ## 模型回退
130
+
131
+ 如果某个提供商的所有配置文件都失败,QuantumClaw 会移动到 `agents.defaults.model.fallbacks` 中的下一个模型。这适用于认证失败、速率限制和耗尽配置文件轮换的超时(其他错误不会推进回退)。
132
+
133
+ 当运行以模型覆盖(钩子或 CLI)开始时,在尝试任何配置的回退之后,回退仍会在 `agents.defaults.model.primary` 处结束。
134
+
135
+ ## 相关配置
136
+
137
+ 参阅 [Gateway 网关配置](/gateway/configuration) 了解:
138
+
139
+ - `auth.profiles` / `auth.order`
140
+ - `auth.cooldowns.billingBackoffHours` / `auth.cooldowns.billingBackoffHoursByProvider`
141
+ - `auth.cooldowns.billingMaxHours` / `auth.cooldowns.failureWindowHours`
142
+ - `agents.defaults.model.primary` / `agents.defaults.model.fallbacks`
143
+ - `agents.defaults.imageModel` 路由
144
+
145
+ 参阅[模型](/concepts/models)了解更广泛的模型选择和回退概述。