@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,86 @@
1
+ ---
2
+ summary: "Poll sending via gateway + CLI"
3
+ read_when:
4
+ - Adding or modifying poll support
5
+ - Debugging poll sends from the CLI or gateway
6
+ title: "Polls"
7
+ ---
8
+
9
+ # Polls
10
+
11
+ ## Supported channels
12
+
13
+ - Telegram
14
+ - WhatsApp (web channel)
15
+ - Discord
16
+ - Microsoft Teams (Adaptive Cards)
17
+
18
+ ## CLI
19
+
20
+ ```bash
21
+ # Telegram
22
+ quantumclaw message poll --channel telegram --target 123456789 \
23
+ --poll-question "Ship it?" --poll-option "Yes" --poll-option "No"
24
+ quantumclaw message poll --channel telegram --target -1001234567890:topic:42 \
25
+ --poll-question "Pick a time" --poll-option "10am" --poll-option "2pm" \
26
+ --poll-duration-seconds 300
27
+
28
+ # WhatsApp
29
+ quantumclaw message poll --target +15555550123 \
30
+ --poll-question "Lunch today?" --poll-option "Yes" --poll-option "No" --poll-option "Maybe"
31
+ quantumclaw message poll --target 123456789@g.us \
32
+ --poll-question "Meeting time?" --poll-option "10am" --poll-option "2pm" --poll-option "4pm" --poll-multi
33
+
34
+ # Discord
35
+ quantumclaw message poll --channel discord --target channel:123456789 \
36
+ --poll-question "Snack?" --poll-option "Pizza" --poll-option "Sushi"
37
+ quantumclaw message poll --channel discord --target channel:123456789 \
38
+ --poll-question "Plan?" --poll-option "A" --poll-option "B" --poll-duration-hours 48
39
+
40
+ # Microsoft Teams
41
+ quantumclaw message poll --channel msteams --target conversation:19:abc@thread.tacv2 \
42
+ --poll-question "Lunch?" --poll-option "Pizza" --poll-option "Sushi"
43
+ ```
44
+
45
+ Options:
46
+
47
+ - `--channel`: `whatsapp` (default), `telegram`, `discord`, or `msteams`
48
+ - `--poll-multi`: allow selecting multiple options
49
+ - `--poll-duration-hours`: Discord-only (defaults to 24 when omitted)
50
+ - `--poll-duration-seconds`: Telegram-only (5-600 seconds)
51
+ - `--poll-anonymous` / `--poll-public`: Telegram-only poll visibility
52
+
53
+ ## Gateway RPC
54
+
55
+ Method: `poll`
56
+
57
+ Params:
58
+
59
+ - `to` (string, required)
60
+ - `question` (string, required)
61
+ - `options` (string[], required)
62
+ - `maxSelections` (number, optional)
63
+ - `durationHours` (number, optional)
64
+ - `durationSeconds` (number, optional, Telegram-only)
65
+ - `isAnonymous` (boolean, optional, Telegram-only)
66
+ - `channel` (string, optional, default: `whatsapp`)
67
+ - `idempotencyKey` (string, required)
68
+
69
+ ## Channel differences
70
+
71
+ - Telegram: 2-10 options. Supports forum topics via `threadId` or `:topic:` targets. Uses `durationSeconds` instead of `durationHours`, limited to 5-600 seconds. Supports anonymous and public polls.
72
+ - WhatsApp: 2-12 options, `maxSelections` must be within option count, ignores `durationHours`.
73
+ - Discord: 2-10 options, `durationHours` clamped to 1-768 hours (default 24). `maxSelections > 1` enables multi-select; Discord does not support a strict selection count.
74
+ - Microsoft Teams: Adaptive Card polls (QuantumClaw-managed). No native poll API; `durationHours` is ignored.
75
+
76
+ ## Agent tool (Message)
77
+
78
+ Use the `message` tool with `poll` action (`to`, `pollQuestion`, `pollOption`, optional `pollMulti`, `pollDurationHours`, `channel`).
79
+
80
+ For Telegram, the tool also accepts `pollDurationSeconds`, `pollAnonymous`, and `pollPublic`.
81
+
82
+ Use `action: "poll"` for poll creation. Poll fields passed with `action: "send"` are rejected.
83
+
84
+ Note: Discord has no “pick exactly N” mode; `pollMulti` maps to multi-select.
85
+ Teams polls are rendered as Adaptive Cards and require the gateway to stay online
86
+ to record votes in `~/.quantumclaw/msteams-polls.json`.
@@ -0,0 +1,251 @@
1
+ ---
2
+ summary: "Define permanent operating authority for autonomous agent programs"
3
+ read_when:
4
+ - Setting up autonomous agent workflows that run without per-task prompting
5
+ - Defining what the agent can do independently vs. what needs human approval
6
+ - Structuring multi-program agents with clear boundaries and escalation rules
7
+ title: "Standing Orders"
8
+ ---
9
+
10
+ # Standing Orders
11
+
12
+ Standing orders grant your agent **permanent operating authority** for defined programs. Instead of giving individual task instructions each time, you define programs with clear scope, triggers, and escalation rules — and the agent executes autonomously within those boundaries.
13
+
14
+ This is the difference between telling your assistant "send the weekly report" every Friday vs. granting standing authority: "You own the weekly report. Compile it every Friday, send it, and only escalate if something looks wrong."
15
+
16
+ ## Why Standing Orders?
17
+
18
+ **Without standing orders:**
19
+
20
+ - You must prompt the agent for every task
21
+ - The agent sits idle between requests
22
+ - Routine work gets forgotten or delayed
23
+ - You become the bottleneck
24
+
25
+ **With standing orders:**
26
+
27
+ - The agent executes autonomously within defined boundaries
28
+ - Routine work happens on schedule without prompting
29
+ - You only get involved for exceptions and approvals
30
+ - The agent fills idle time productively
31
+
32
+ ## How They Work
33
+
34
+ Standing orders are defined in your [agent workspace](/concepts/agent-workspace) files. The recommended approach is to include them directly in `AGENTS.md` (which is auto-injected every session) so the agent always has them in context. For larger configurations, you can also place them in a dedicated file like `standing-orders.md` and reference it from `AGENTS.md`.
35
+
36
+ Each program specifies:
37
+
38
+ 1. **Scope** — what the agent is authorized to do
39
+ 2. **Triggers** — when to execute (schedule, event, or condition)
40
+ 3. **Approval gates** — what requires human sign-off before acting
41
+ 4. **Escalation rules** — when to stop and ask for help
42
+
43
+ The agent loads these instructions every session via the workspace bootstrap files (see [Agent Workspace](/concepts/agent-workspace) for the full list of auto-injected files) and executes against them, combined with [cron jobs](/automation/cron-jobs) for time-based enforcement.
44
+
45
+ <Tip>
46
+ Put standing orders in `AGENTS.md` to guarantee they're loaded every session. The workspace bootstrap automatically injects `AGENTS.md`, `SOUL.md`, `TOOLS.md`, `IDENTITY.md`, `USER.md`, `HEARTBEAT.md`, and `MEMORY.md` — but not arbitrary files in subdirectories.
47
+ </Tip>
48
+
49
+ ## Anatomy of a Standing Order
50
+
51
+ ```markdown
52
+ ## Program: Weekly Status Report
53
+
54
+ **Authority:** Compile data, generate report, deliver to stakeholders
55
+ **Trigger:** Every Friday at 4 PM (enforced via cron job)
56
+ **Approval gate:** None for standard reports. Flag anomalies for human review.
57
+ **Escalation:** If data source is unavailable or metrics look unusual (>2σ from norm)
58
+
59
+ ### Execution Steps
60
+
61
+ 1. Pull metrics from configured sources
62
+ 2. Compare to prior week and targets
63
+ 3. Generate report in Reports/weekly/YYYY-MM-DD.md
64
+ 4. Deliver summary via configured channel
65
+ 5. Log completion to Agent/Logs/
66
+
67
+ ### What NOT to Do
68
+
69
+ - Do not send reports to external parties
70
+ - Do not modify source data
71
+ - Do not skip delivery if metrics look bad — report accurately
72
+ ```
73
+
74
+ ## Standing Orders + Cron Jobs
75
+
76
+ Standing orders define **what** the agent is authorized to do. [Cron jobs](/automation/cron-jobs) define **when** it happens. They work together:
77
+
78
+ ```
79
+ Standing Order: "You own the daily inbox triage"
80
+
81
+ Cron Job (8 AM daily): "Execute inbox triage per standing orders"
82
+
83
+ Agent: Reads standing orders → executes steps → reports results
84
+ ```
85
+
86
+ The cron job prompt should reference the standing order rather than duplicating it:
87
+
88
+ ```bash
89
+ quantumclaw cron create \
90
+ --name daily-inbox-triage \
91
+ --cron "0 8 * * 1-5" \
92
+ --tz America/New_York \
93
+ --timeout-seconds 300 \
94
+ --announce \
95
+ --channel bluebubbles \
96
+ --to "+1XXXXXXXXXX" \
97
+ --message "Execute daily inbox triage per standing orders. Check mail for new alerts. Parse, categorize, and persist each item. Report summary to owner. Escalate unknowns."
98
+ ```
99
+
100
+ ## Examples
101
+
102
+ ### Example 1: Content & Social Media (Weekly Cycle)
103
+
104
+ ```markdown
105
+ ## Program: Content & Social Media
106
+
107
+ **Authority:** Draft content, schedule posts, compile engagement reports
108
+ **Approval gate:** All posts require owner review for first 30 days, then standing approval
109
+ **Trigger:** Weekly cycle (Monday review → mid-week drafts → Friday brief)
110
+
111
+ ### Weekly Cycle
112
+
113
+ - **Monday:** Review platform metrics and audience engagement
114
+ - **Tuesday–Thursday:** Draft social posts, create blog content
115
+ - **Friday:** Compile weekly marketing brief → deliver to owner
116
+
117
+ ### Content Rules
118
+
119
+ - Voice must match the brand (see SOUL.md or brand voice guide)
120
+ - Never identify as AI in public-facing content
121
+ - Include metrics when available
122
+ - Focus on value to audience, not self-promotion
123
+ ```
124
+
125
+ ### Example 2: Finance Operations (Event-Triggered)
126
+
127
+ ```markdown
128
+ ## Program: Financial Processing
129
+
130
+ **Authority:** Process transaction data, generate reports, send summaries
131
+ **Approval gate:** None for analysis. Recommendations require owner approval.
132
+ **Trigger:** New data file detected OR scheduled monthly cycle
133
+
134
+ ### When New Data Arrives
135
+
136
+ 1. Detect new file in designated input directory
137
+ 2. Parse and categorize all transactions
138
+ 3. Compare against budget targets
139
+ 4. Flag: unusual items, threshold breaches, new recurring charges
140
+ 5. Generate report in designated output directory
141
+ 6. Deliver summary to owner via configured channel
142
+
143
+ ### Escalation Rules
144
+
145
+ - Single item > $500: immediate alert
146
+ - Category > budget by 20%: flag in report
147
+ - Unrecognizable transaction: ask owner for categorization
148
+ - Failed processing after 2 retries: report failure, do not guess
149
+ ```
150
+
151
+ ### Example 3: Monitoring & Alerts (Continuous)
152
+
153
+ ```markdown
154
+ ## Program: System Monitoring
155
+
156
+ **Authority:** Check system health, restart services, send alerts
157
+ **Approval gate:** Restart services automatically. Escalate if restart fails twice.
158
+ **Trigger:** Every heartbeat cycle
159
+
160
+ ### Checks
161
+
162
+ - Service health endpoints responding
163
+ - Disk space above threshold
164
+ - Pending tasks not stale (>24 hours)
165
+ - Delivery channels operational
166
+
167
+ ### Response Matrix
168
+
169
+ | Condition | Action | Escalate? |
170
+ | ---------------- | ------------------------ | ------------------------ |
171
+ | Service down | Restart automatically | Only if restart fails 2x |
172
+ | Disk space < 10% | Alert owner | Yes |
173
+ | Stale task > 24h | Remind owner | No |
174
+ | Channel offline | Log and retry next cycle | If offline > 2 hours |
175
+ ```
176
+
177
+ ## The Execute-Verify-Report Pattern
178
+
179
+ Standing orders work best when combined with strict execution discipline. Every task in a standing order should follow this loop:
180
+
181
+ 1. **Execute** — Do the actual work (don't just acknowledge the instruction)
182
+ 2. **Verify** — Confirm the result is correct (file exists, message delivered, data parsed)
183
+ 3. **Report** — Tell the owner what was done and what was verified
184
+
185
+ ```markdown
186
+ ### Execution Rules
187
+
188
+ - Every task follows Execute-Verify-Report. No exceptions.
189
+ - "I'll do that" is not execution. Do it, then report.
190
+ - "Done" without verification is not acceptable. Prove it.
191
+ - If execution fails: retry once with adjusted approach.
192
+ - If still fails: report failure with diagnosis. Never silently fail.
193
+ - Never retry indefinitely — 3 attempts max, then escalate.
194
+ ```
195
+
196
+ This pattern prevents the most common agent failure mode: acknowledging a task without completing it.
197
+
198
+ ## Multi-Program Architecture
199
+
200
+ For agents managing multiple concerns, organize standing orders as separate programs with clear boundaries:
201
+
202
+ ```markdown
203
+ # Standing Orders
204
+
205
+ ## Program 1: [Domain A] (Weekly)
206
+
207
+ ...
208
+
209
+ ## Program 2: [Domain B] (Monthly + On-Demand)
210
+
211
+ ...
212
+
213
+ ## Program 3: [Domain C] (As-Needed)
214
+
215
+ ...
216
+
217
+ ## Escalation Rules (All Programs)
218
+
219
+ - [Common escalation criteria]
220
+ - [Approval gates that apply across programs]
221
+ ```
222
+
223
+ Each program should have:
224
+
225
+ - Its own **trigger cadence** (weekly, monthly, event-driven, continuous)
226
+ - Its own **approval gates** (some programs need more oversight than others)
227
+ - Clear **boundaries** (the agent should know where one program ends and another begins)
228
+
229
+ ## Best Practices
230
+
231
+ ### Do
232
+
233
+ - Start with narrow authority and expand as trust builds
234
+ - Define explicit approval gates for high-risk actions
235
+ - Include "What NOT to do" sections — boundaries matter as much as permissions
236
+ - Combine with cron jobs for reliable time-based execution
237
+ - Review agent logs weekly to verify standing orders are being followed
238
+ - Update standing orders as your needs evolve — they're living documents
239
+
240
+ ### Don't
241
+
242
+ - Grant broad authority on day one ("do whatever you think is best")
243
+ - Skip escalation rules — every program needs a "when to stop and ask" clause
244
+ - Assume the agent will remember verbal instructions — put everything in the file
245
+ - Mix concerns in a single program — separate programs for separate domains
246
+ - Forget to enforce with cron jobs — standing orders without triggers become suggestions
247
+
248
+ ## Related
249
+
250
+ - [Cron Jobs](/automation/cron-jobs) — Schedule enforcement for standing orders
251
+ - [Agent Workspace](/concepts/agent-workspace) — Where standing orders live, including the full list of auto-injected bootstrap files (AGENTS.md, SOUL.md, etc.)
@@ -0,0 +1,122 @@
1
+ ---
2
+ summary: "Troubleshoot cron and heartbeat scheduling and delivery"
3
+ read_when:
4
+ - Cron did not run
5
+ - Cron ran but no message was delivered
6
+ - Heartbeat seems silent or skipped
7
+ title: "Automation Troubleshooting"
8
+ ---
9
+
10
+ # Automation troubleshooting
11
+
12
+ Use this page for scheduler and delivery issues (`cron` + `heartbeat`).
13
+
14
+ ## Command ladder
15
+
16
+ ```bash
17
+ quantumclaw status
18
+ quantumclaw gateway status
19
+ quantumclaw logs --follow
20
+ quantumclaw doctor
21
+ quantumclaw channels status --probe
22
+ ```
23
+
24
+ Then run automation checks:
25
+
26
+ ```bash
27
+ quantumclaw cron status
28
+ quantumclaw cron list
29
+ quantumclaw system heartbeat last
30
+ ```
31
+
32
+ ## Cron not firing
33
+
34
+ ```bash
35
+ quantumclaw cron status
36
+ quantumclaw cron list
37
+ quantumclaw cron runs --id <jobId> --limit 20
38
+ quantumclaw logs --follow
39
+ ```
40
+
41
+ Good output looks like:
42
+
43
+ - `cron status` reports enabled and a future `nextWakeAtMs`.
44
+ - Job is enabled and has a valid schedule/timezone.
45
+ - `cron runs` shows `ok` or explicit skip reason.
46
+
47
+ Common signatures:
48
+
49
+ - `cron: scheduler disabled; jobs will not run automatically` → cron disabled in config/env.
50
+ - `cron: timer tick failed` → scheduler tick crashed; inspect surrounding stack/log context.
51
+ - `reason: not-due` in run output → manual run called without `--force` and job not due yet.
52
+
53
+ ## Cron fired but no delivery
54
+
55
+ ```bash
56
+ quantumclaw cron runs --id <jobId> --limit 20
57
+ quantumclaw cron list
58
+ quantumclaw channels status --probe
59
+ quantumclaw logs --follow
60
+ ```
61
+
62
+ Good output looks like:
63
+
64
+ - Run status is `ok`.
65
+ - Delivery mode/target are set for isolated jobs.
66
+ - Channel probe reports target channel connected.
67
+
68
+ Common signatures:
69
+
70
+ - Run succeeded but delivery mode is `none` → no external message is expected.
71
+ - Delivery target missing/invalid (`channel`/`to`) → run may succeed internally but skip outbound.
72
+ - Channel auth errors (`unauthorized`, `missing_scope`, `Forbidden`) → delivery blocked by channel credentials/permissions.
73
+
74
+ ## Heartbeat suppressed or skipped
75
+
76
+ ```bash
77
+ quantumclaw system heartbeat last
78
+ quantumclaw logs --follow
79
+ quantumclaw config get agents.defaults.heartbeat
80
+ quantumclaw channels status --probe
81
+ ```
82
+
83
+ Good output looks like:
84
+
85
+ - Heartbeat enabled with non-zero interval.
86
+ - Last heartbeat result is `ran` (or skip reason is understood).
87
+
88
+ Common signatures:
89
+
90
+ - `heartbeat skipped` with `reason=quiet-hours` → outside `activeHours`.
91
+ - `requests-in-flight` → main lane busy; heartbeat deferred.
92
+ - `empty-heartbeat-file` → interval heartbeat skipped because `HEARTBEAT.md` has no actionable content and no tagged cron event is queued.
93
+ - `alerts-disabled` → visibility settings suppress outbound heartbeat messages.
94
+
95
+ ## Timezone and activeHours gotchas
96
+
97
+ ```bash
98
+ quantumclaw config get agents.defaults.heartbeat.activeHours
99
+ quantumclaw config get agents.defaults.heartbeat.activeHours.timezone
100
+ quantumclaw config get agents.defaults.userTimezone || echo "agents.defaults.userTimezone not set"
101
+ quantumclaw cron list
102
+ quantumclaw logs --follow
103
+ ```
104
+
105
+ Quick rules:
106
+
107
+ - `Config path not found: agents.defaults.userTimezone` means the key is unset; heartbeat falls back to host timezone (or `activeHours.timezone` if set).
108
+ - Cron without `--tz` uses gateway host timezone.
109
+ - Heartbeat `activeHours` uses configured timezone resolution (`user`, `local`, or explicit IANA tz).
110
+ - ISO timestamps without timezone are treated as UTC for cron `at` schedules.
111
+
112
+ Common signatures:
113
+
114
+ - Jobs run at the wrong wall-clock time after host timezone changes.
115
+ - Heartbeat always skipped during your daytime because `activeHours.timezone` is wrong.
116
+
117
+ Related:
118
+
119
+ - [/automation/cron-jobs](/automation/cron-jobs)
120
+ - [/gateway/heartbeat](/gateway/heartbeat)
121
+ - [/automation/cron-vs-heartbeat](/automation/cron-vs-heartbeat)
122
+ - [/concepts/timezone](/concepts/timezone)
@@ -0,0 +1,217 @@
1
+ ---
2
+ summary: "Webhook ingress for wake and isolated agent runs"
3
+ read_when:
4
+ - Adding or changing webhook endpoints
5
+ - Wiring external systems into QuantumClaw
6
+ title: "Webhooks"
7
+ ---
8
+
9
+ # Webhooks
10
+
11
+ Gateway can expose a small HTTP webhook endpoint for external triggers.
12
+
13
+ ## Enable
14
+
15
+ ```json5
16
+ {
17
+ hooks: {
18
+ enabled: true,
19
+ token: "shared-secret",
20
+ path: "/hooks",
21
+ // Optional: restrict explicit `agentId` routing to this allowlist.
22
+ // Omit or include "*" to allow any agent.
23
+ // Set [] to deny all explicit `agentId` routing.
24
+ allowedAgentIds: ["hooks", "main"],
25
+ },
26
+ }
27
+ ```
28
+
29
+ Notes:
30
+
31
+ - `hooks.token` is required when `hooks.enabled=true`.
32
+ - `hooks.path` defaults to `/hooks`.
33
+
34
+ ## Auth
35
+
36
+ Every request must include the hook token. Prefer headers:
37
+
38
+ - `Authorization: Bearer <token>` (recommended)
39
+ - `x-quantumclaw-token: <token>`
40
+ - Query-string tokens are rejected (`?token=...` returns `400`).
41
+ - Treat `hooks.token` holders as full-trust callers for the hook ingress surface on that gateway. Hook payload content is still untrusted, but this is not a separate non-owner auth boundary.
42
+
43
+ ## Endpoints
44
+
45
+ ### `POST /hooks/wake`
46
+
47
+ Payload:
48
+
49
+ ```json
50
+ { "text": "System line", "mode": "now" }
51
+ ```
52
+
53
+ - `text` **required** (string): The description of the event (e.g., "New email received").
54
+ - `mode` optional (`now` | `next-heartbeat`): Whether to trigger an immediate heartbeat (default `now`) or wait for the next periodic check.
55
+
56
+ Effect:
57
+
58
+ - Enqueues a system event for the **main** session
59
+ - If `mode=now`, triggers an immediate heartbeat
60
+
61
+ ### `POST /hooks/agent`
62
+
63
+ Payload:
64
+
65
+ ```json
66
+ {
67
+ "message": "Run this",
68
+ "name": "Email",
69
+ "agentId": "hooks",
70
+ "sessionKey": "hook:email:msg-123",
71
+ "wakeMode": "now",
72
+ "deliver": true,
73
+ "channel": "last",
74
+ "to": "+15551234567",
75
+ "model": "openai/gpt-5.2-mini",
76
+ "thinking": "low",
77
+ "timeoutSeconds": 120
78
+ }
79
+ ```
80
+
81
+ - `message` **required** (string): The prompt or message for the agent to process.
82
+ - `name` optional (string): Human-readable name for the hook (e.g., "GitHub"), used as a prefix in session summaries.
83
+ - `agentId` optional (string): Route this hook to a specific agent. Unknown IDs fall back to the default agent. When set, the hook runs using the resolved agent's workspace and configuration.
84
+ - `sessionKey` optional (string): The key used to identify the agent's session. By default this field is rejected unless `hooks.allowRequestSessionKey=true`.
85
+ - `wakeMode` optional (`now` | `next-heartbeat`): Whether to trigger an immediate heartbeat (default `now`) or wait for the next periodic check.
86
+ - `deliver` optional (boolean): If `true`, the agent's response will be sent to the messaging channel. Defaults to `true`. Responses that are only heartbeat acknowledgments are automatically skipped.
87
+ - `channel` optional (string): The messaging channel for delivery. One of: `last`, `whatsapp`, `telegram`, `discord`, `slack`, `mattermost` (plugin), `signal`, `imessage`, `msteams`. Defaults to `last`.
88
+ - `to` optional (string): The recipient identifier for the channel (e.g., phone number for WhatsApp/Signal, chat ID for Telegram, channel ID for Discord/Slack/Mattermost (plugin), conversation ID for Microsoft Teams). Defaults to the last recipient in the main session.
89
+ - `model` optional (string): Model override (e.g., `anthropic/claude-3-5-sonnet` or an alias). Must be in the allowed model list if restricted.
90
+ - `thinking` optional (string): Thinking level override (e.g., `low`, `medium`, `high`).
91
+ - `timeoutSeconds` optional (number): Maximum duration for the agent run in seconds.
92
+
93
+ Effect:
94
+
95
+ - Runs an **isolated** agent turn (own session key)
96
+ - Always posts a summary into the **main** session
97
+ - If `wakeMode=now`, triggers an immediate heartbeat
98
+
99
+ ## Session key policy (breaking change)
100
+
101
+ `/hooks/agent` payload `sessionKey` overrides are disabled by default.
102
+
103
+ - Recommended: set a fixed `hooks.defaultSessionKey` and keep request overrides off.
104
+ - Optional: allow request overrides only when needed, and restrict prefixes.
105
+
106
+ Recommended config:
107
+
108
+ ```json5
109
+ {
110
+ hooks: {
111
+ enabled: true,
112
+ token: "${QUANTUMCLAW_HOOKS_TOKEN}",
113
+ defaultSessionKey: "hook:ingress",
114
+ allowRequestSessionKey: false,
115
+ allowedSessionKeyPrefixes: ["hook:"],
116
+ },
117
+ }
118
+ ```
119
+
120
+ Compatibility config (legacy behavior):
121
+
122
+ ```json5
123
+ {
124
+ hooks: {
125
+ enabled: true,
126
+ token: "${QUANTUMCLAW_HOOKS_TOKEN}",
127
+ allowRequestSessionKey: true,
128
+ allowedSessionKeyPrefixes: ["hook:"], // strongly recommended
129
+ },
130
+ }
131
+ ```
132
+
133
+ ### `POST /hooks/<name>` (mapped)
134
+
135
+ Custom hook names are resolved via `hooks.mappings` (see configuration). A mapping can
136
+ turn arbitrary payloads into `wake` or `agent` actions, with optional templates or
137
+ code transforms.
138
+
139
+ Mapping options (summary):
140
+
141
+ - `hooks.presets: ["gmail"]` enables the built-in Gmail mapping.
142
+ - `hooks.mappings` lets you define `match`, `action`, and templates in config.
143
+ - `hooks.transformsDir` + `transform.module` loads a JS/TS module for custom logic.
144
+ - `hooks.transformsDir` (if set) must stay within the transforms root under your QuantumClaw config directory (typically `~/.quantumclaw/hooks/transforms`).
145
+ - `transform.module` must resolve within the effective transforms directory (traversal/escape paths are rejected).
146
+ - Use `match.source` to keep a generic ingest endpoint (payload-driven routing).
147
+ - TS transforms require a TS loader (e.g. `bun` or `tsx`) or precompiled `.js` at runtime.
148
+ - Set `deliver: true` + `channel`/`to` on mappings to route replies to a chat surface
149
+ (`channel` defaults to `last` and falls back to WhatsApp).
150
+ - `agentId` routes the hook to a specific agent; unknown IDs fall back to the default agent.
151
+ - `hooks.allowedAgentIds` restricts explicit `agentId` routing. Omit it (or include `*`) to allow any agent. Set `[]` to deny explicit `agentId` routing.
152
+ - `hooks.defaultSessionKey` sets the default session for hook agent runs when no explicit key is provided.
153
+ - `hooks.allowRequestSessionKey` controls whether `/hooks/agent` payloads may set `sessionKey` (default: `false`).
154
+ - `hooks.allowedSessionKeyPrefixes` optionally restricts explicit `sessionKey` values from request payloads and mappings.
155
+ - `allowUnsafeExternalContent: true` disables the external content safety wrapper for that hook
156
+ (dangerous; only for trusted internal sources).
157
+ - `quantumclaw webhooks gmail setup` writes `hooks.gmail` config for `quantumclaw webhooks gmail run`.
158
+ See [Gmail Pub/Sub](/automation/gmail-pubsub) for the full Gmail watch flow.
159
+
160
+ ## Responses
161
+
162
+ - `200` for `/hooks/wake`
163
+ - `200` for `/hooks/agent` (async run accepted)
164
+ - `401` on auth failure
165
+ - `429` after repeated auth failures from the same client (check `Retry-After`)
166
+ - `400` on invalid payload
167
+ - `413` on oversized payloads
168
+
169
+ ## Examples
170
+
171
+ ```bash
172
+ curl -X POST http://127.0.0.1:18789/hooks/wake \
173
+ -H 'Authorization: Bearer SECRET' \
174
+ -H 'Content-Type: application/json' \
175
+ -d '{"text":"New email received","mode":"now"}'
176
+ ```
177
+
178
+ ```bash
179
+ curl -X POST http://127.0.0.1:18789/hooks/agent \
180
+ -H 'x-quantumclaw-token: SECRET' \
181
+ -H 'Content-Type: application/json' \
182
+ -d '{"message":"Summarize inbox","name":"Email","wakeMode":"next-heartbeat"}'
183
+ ```
184
+
185
+ ### Use a different model
186
+
187
+ Add `model` to the agent payload (or mapping) to override the model for that run:
188
+
189
+ ```bash
190
+ curl -X POST http://127.0.0.1:18789/hooks/agent \
191
+ -H 'x-quantumclaw-token: SECRET' \
192
+ -H 'Content-Type: application/json' \
193
+ -d '{"message":"Summarize inbox","name":"Email","model":"openai/gpt-5.2-mini"}'
194
+ ```
195
+
196
+ If you enforce `agents.defaults.models`, make sure the override model is included there.
197
+
198
+ ```bash
199
+ curl -X POST http://127.0.0.1:18789/hooks/gmail \
200
+ -H 'Authorization: Bearer SECRET' \
201
+ -H 'Content-Type: application/json' \
202
+ -d '{"source":"gmail","messages":[{"from":"Ada","subject":"Hello","snippet":"Hi"}]}'
203
+ ```
204
+
205
+ ## Security
206
+
207
+ - Keep hook endpoints behind loopback, tailnet, or trusted reverse proxy.
208
+ - Use a dedicated hook token; do not reuse gateway auth tokens.
209
+ - Prefer a dedicated hook agent with strict `tools.profile` and sandboxing so hook ingress has a narrower blast radius.
210
+ - Repeated auth failures are rate-limited per client address to slow brute-force attempts.
211
+ - If you use multi-agent routing, set `hooks.allowedAgentIds` to limit explicit `agentId` selection.
212
+ - Keep `hooks.allowRequestSessionKey=false` unless you require caller-selected sessions.
213
+ - If you enable request `sessionKey`, restrict `hooks.allowedSessionKeyPrefixes` (for example, `["hook:"]`).
214
+ - Avoid including sensitive raw payloads in webhook logs.
215
+ - Hook payloads are treated as untrusted and wrapped with safety boundaries by default.
216
+ If you must disable this for a specific hook, set `allowUnsafeExternalContent: true`
217
+ in that hook's mapping (dangerous).