durar-ai 2026.4.4

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 (571) hide show
  1. package/CHANGELOG.md +5497 -0
  2. package/LICENSE +21 -0
  3. package/README.md +614 -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 +72 -0
  12. package/docs/.i18n/ar-navigation.json +18 -0
  13. package/docs/.i18n/de-navigation.json +18 -0
  14. package/docs/.i18n/es-navigation.json +18 -0
  15. package/docs/.i18n/fr-navigation.json +18 -0
  16. package/docs/.i18n/glossary.ar.json +5 -0
  17. package/docs/.i18n/glossary.de.json +5 -0
  18. package/docs/.i18n/glossary.es.json +5 -0
  19. package/docs/.i18n/glossary.fr.json +5 -0
  20. package/docs/.i18n/glossary.id.json +5 -0
  21. package/docs/.i18n/glossary.it.json +5 -0
  22. package/docs/.i18n/glossary.ja-JP.json +14 -0
  23. package/docs/.i18n/glossary.ko.json +5 -0
  24. package/docs/.i18n/glossary.pl.json +5 -0
  25. package/docs/.i18n/glossary.pt-BR.json +5 -0
  26. package/docs/.i18n/glossary.tr.json +5 -0
  27. package/docs/.i18n/glossary.zh-CN.json +358 -0
  28. package/docs/.i18n/id-navigation.json +18 -0
  29. package/docs/.i18n/it-navigation.json +18 -0
  30. package/docs/.i18n/ja-navigation.json +18 -0
  31. package/docs/.i18n/ko-navigation.json +18 -0
  32. package/docs/.i18n/pl-navigation.json +18 -0
  33. package/docs/.i18n/pt-BR-navigation.json +18 -0
  34. package/docs/.i18n/tr-navigation.json +18 -0
  35. package/docs/.i18n/zh-Hans-navigation.json +544 -0
  36. package/docs/assets/install-script.svg +1 -0
  37. package/docs/assets/macos-onboarding/01-macos-warning.jpeg +0 -0
  38. package/docs/assets/macos-onboarding/02-local-networks.jpeg +0 -0
  39. package/docs/assets/macos-onboarding/03-security-notice.png +0 -0
  40. package/docs/assets/macos-onboarding/04-choose-gateway.png +0 -0
  41. package/docs/assets/macos-onboarding/05-permissions.png +0 -0
  42. package/docs/assets/openclaw-logo-text-dark.png +0 -0
  43. package/docs/assets/openclaw-logo-text-dark.svg +418 -0
  44. package/docs/assets/openclaw-logo-text.png +0 -0
  45. package/docs/assets/openclaw-logo-text.svg +418 -0
  46. package/docs/assets/pixel-lobster.svg +60 -0
  47. package/docs/assets/showcase/agents-ui.jpg +0 -0
  48. package/docs/assets/showcase/bambu-cli.png +0 -0
  49. package/docs/assets/showcase/codexmonitor.png +0 -0
  50. package/docs/assets/showcase/gohome-grafana.png +0 -0
  51. package/docs/assets/showcase/ios-testflight.jpg +0 -0
  52. package/docs/assets/showcase/oura-health.png +0 -0
  53. package/docs/assets/showcase/padel-cli.svg +11 -0
  54. package/docs/assets/showcase/padel-screenshot.jpg +0 -0
  55. package/docs/assets/showcase/papla-tts.jpg +0 -0
  56. package/docs/assets/showcase/pr-review-telegram.jpg +0 -0
  57. package/docs/assets/showcase/roborock-screenshot.jpg +0 -0
  58. package/docs/assets/showcase/roborock-status.svg +13 -0
  59. package/docs/assets/showcase/roof-camera-sky.jpg +0 -0
  60. package/docs/assets/showcase/snag.png +0 -0
  61. package/docs/assets/showcase/tesco-shop.jpg +0 -0
  62. package/docs/assets/showcase/wienerlinien.png +0 -0
  63. package/docs/assets/showcase/wine-cellar-skill.jpg +0 -0
  64. package/docs/assets/showcase/winix-air-purifier.jpg +0 -0
  65. package/docs/assets/showcase/xuezh-pronunciation.jpeg +0 -0
  66. package/docs/assets/sponsors/blacksmith-light.svg +14 -0
  67. package/docs/assets/sponsors/blacksmith.svg +14 -0
  68. package/docs/assets/sponsors/convex-light.svg +16 -0
  69. package/docs/assets/sponsors/convex.svg +16 -0
  70. package/docs/assets/sponsors/github-light.svg +3 -0
  71. package/docs/assets/sponsors/github.svg +3 -0
  72. package/docs/assets/sponsors/nvidia-dark.svg +9 -0
  73. package/docs/assets/sponsors/nvidia.svg +9 -0
  74. package/docs/assets/sponsors/openai-light.svg +3 -0
  75. package/docs/assets/sponsors/openai.svg +3 -0
  76. package/docs/assets/sponsors/vercel-light.svg +5 -0
  77. package/docs/assets/sponsors/vercel.svg +5 -0
  78. package/docs/auth-credential-semantics.md +80 -0
  79. package/docs/automation/auth-monitoring.md +8 -0
  80. package/docs/automation/clawflow.md +8 -0
  81. package/docs/automation/cron-jobs.md +410 -0
  82. package/docs/automation/cron-vs-heartbeat.md +8 -0
  83. package/docs/automation/gmail-pubsub.md +8 -0
  84. package/docs/automation/hooks.md +303 -0
  85. package/docs/automation/index.md +115 -0
  86. package/docs/automation/poll.md +8 -0
  87. package/docs/automation/standing-orders.md +254 -0
  88. package/docs/automation/taskflow.md +82 -0
  89. package/docs/automation/tasks.md +323 -0
  90. package/docs/automation/troubleshooting.md +8 -0
  91. package/docs/automation/webhook.md +8 -0
  92. package/docs/brave-search.md +103 -0
  93. package/docs/channels/bluebubbles.md +435 -0
  94. package/docs/channels/broadcast-groups.md +442 -0
  95. package/docs/channels/channel-routing.md +139 -0
  96. package/docs/channels/discord.md +1254 -0
  97. package/docs/channels/feishu.md +793 -0
  98. package/docs/channels/googlechat.md +270 -0
  99. package/docs/channels/group-messages.md +84 -0
  100. package/docs/channels/groups.md +410 -0
  101. package/docs/channels/imessage.md +427 -0
  102. package/docs/channels/index.md +50 -0
  103. package/docs/channels/irc.md +252 -0
  104. package/docs/channels/line.md +225 -0
  105. package/docs/channels/location.md +56 -0
  106. package/docs/channels/matrix.md +869 -0
  107. package/docs/channels/mattermost.md +472 -0
  108. package/docs/channels/msteams.md +805 -0
  109. package/docs/channels/nextcloud-talk.md +149 -0
  110. package/docs/channels/nostr.md +252 -0
  111. package/docs/channels/pairing.md +129 -0
  112. package/docs/channels/qqbot.md +193 -0
  113. package/docs/channels/signal.md +337 -0
  114. package/docs/channels/slack.md +681 -0
  115. package/docs/channels/synology-chat.md +185 -0
  116. package/docs/channels/telegram.md +1072 -0
  117. package/docs/channels/tlon.md +290 -0
  118. package/docs/channels/troubleshooting.md +133 -0
  119. package/docs/channels/twitch.md +394 -0
  120. package/docs/channels/whatsapp.md +488 -0
  121. package/docs/channels/zalo.md +254 -0
  122. package/docs/channels/zalouser.md +195 -0
  123. package/docs/ci.md +66 -0
  124. package/docs/cli/acp.md +316 -0
  125. package/docs/cli/agent.md +57 -0
  126. package/docs/cli/agents.md +220 -0
  127. package/docs/cli/approvals.md +136 -0
  128. package/docs/cli/backup.md +84 -0
  129. package/docs/cli/browser.md +233 -0
  130. package/docs/cli/channels.md +131 -0
  131. package/docs/cli/clawbot.md +21 -0
  132. package/docs/cli/completion.md +35 -0
  133. package/docs/cli/config.md +353 -0
  134. package/docs/cli/configure.md +70 -0
  135. package/docs/cli/cron.md +167 -0
  136. package/docs/cli/daemon.md +57 -0
  137. package/docs/cli/dashboard.md +22 -0
  138. package/docs/cli/devices.md +171 -0
  139. package/docs/cli/directory.md +63 -0
  140. package/docs/cli/dns.md +48 -0
  141. package/docs/cli/docs.md +28 -0
  142. package/docs/cli/doctor.md +63 -0
  143. package/docs/cli/flows.md +18 -0
  144. package/docs/cli/gateway.md +307 -0
  145. package/docs/cli/health.md +36 -0
  146. package/docs/cli/hooks.md +337 -0
  147. package/docs/cli/index.md +1836 -0
  148. package/docs/cli/logs.md +59 -0
  149. package/docs/cli/mcp.md +505 -0
  150. package/docs/cli/memory.md +139 -0
  151. package/docs/cli/message.md +300 -0
  152. package/docs/cli/models.md +136 -0
  153. package/docs/cli/node.md +137 -0
  154. package/docs/cli/nodes.md +66 -0
  155. package/docs/cli/onboard.md +171 -0
  156. package/docs/cli/pairing.md +65 -0
  157. package/docs/cli/plugins.md +305 -0
  158. package/docs/cli/qr.md +52 -0
  159. package/docs/cli/reset.md +35 -0
  160. package/docs/cli/sandbox.md +197 -0
  161. package/docs/cli/secrets.md +197 -0
  162. package/docs/cli/security.md +86 -0
  163. package/docs/cli/sessions.md +113 -0
  164. package/docs/cli/setup.md +45 -0
  165. package/docs/cli/skills.md +59 -0
  166. package/docs/cli/status.md +35 -0
  167. package/docs/cli/system.md +71 -0
  168. package/docs/cli/tui.md +30 -0
  169. package/docs/cli/uninstall.md +39 -0
  170. package/docs/cli/update.md +113 -0
  171. package/docs/cli/voicecall.md +34 -0
  172. package/docs/cli/webhooks.md +91 -0
  173. package/docs/concepts/agent-loop.md +168 -0
  174. package/docs/concepts/agent-workspace.md +246 -0
  175. package/docs/concepts/agent.md +129 -0
  176. package/docs/concepts/architecture.md +156 -0
  177. package/docs/concepts/compaction.md +122 -0
  178. package/docs/concepts/context-engine.md +274 -0
  179. package/docs/concepts/context.md +179 -0
  180. package/docs/concepts/delegate-architecture.md +307 -0
  181. package/docs/concepts/dreaming.md +173 -0
  182. package/docs/concepts/features.md +76 -0
  183. package/docs/concepts/markdown-formatting.md +130 -0
  184. package/docs/concepts/memory-builtin.md +105 -0
  185. package/docs/concepts/memory-honcho.md +140 -0
  186. package/docs/concepts/memory-qmd.md +163 -0
  187. package/docs/concepts/memory-search.md +141 -0
  188. package/docs/concepts/memory.md +121 -0
  189. package/docs/concepts/messages.md +161 -0
  190. package/docs/concepts/model-failover.md +349 -0
  191. package/docs/concepts/model-providers.md +799 -0
  192. package/docs/concepts/models.md +255 -0
  193. package/docs/concepts/multi-agent.md +615 -0
  194. package/docs/concepts/oauth.md +225 -0
  195. package/docs/concepts/presence.md +102 -0
  196. package/docs/concepts/queue.md +89 -0
  197. package/docs/concepts/retry.md +69 -0
  198. package/docs/concepts/session-pruning.md +92 -0
  199. package/docs/concepts/session-tool.md +141 -0
  200. package/docs/concepts/session.md +116 -0
  201. package/docs/concepts/soul.md +110 -0
  202. package/docs/concepts/streaming.md +161 -0
  203. package/docs/concepts/system-prompt.md +182 -0
  204. package/docs/concepts/timezone.md +97 -0
  205. package/docs/concepts/typebox.md +307 -0
  206. package/docs/concepts/typing-indicators.md +69 -0
  207. package/docs/concepts/usage-tracking.md +59 -0
  208. package/docs/date-time.md +128 -0
  209. package/docs/debug/node-issue.md +85 -0
  210. package/docs/diagnostics/flags.md +91 -0
  211. package/docs/docs.json +1601 -0
  212. package/docs/gateway/authentication.md +218 -0
  213. package/docs/gateway/background-process.md +131 -0
  214. package/docs/gateway/bonjour.md +179 -0
  215. package/docs/gateway/bridge-protocol.md +89 -0
  216. package/docs/gateway/cli-backends.md +310 -0
  217. package/docs/gateway/configuration-examples.md +631 -0
  218. package/docs/gateway/configuration-reference.md +3618 -0
  219. package/docs/gateway/configuration.md +698 -0
  220. package/docs/gateway/discovery.md +141 -0
  221. package/docs/gateway/doctor.md +494 -0
  222. package/docs/gateway/gateway-lock.md +37 -0
  223. package/docs/gateway/health.md +61 -0
  224. package/docs/gateway/heartbeat.md +443 -0
  225. package/docs/gateway/index.md +367 -0
  226. package/docs/gateway/local-models.md +163 -0
  227. package/docs/gateway/logging.md +113 -0
  228. package/docs/gateway/multiple-gateways.md +120 -0
  229. package/docs/gateway/network-model.md +25 -0
  230. package/docs/gateway/openai-http-api.md +280 -0
  231. package/docs/gateway/openresponses-http-api.md +340 -0
  232. package/docs/gateway/openshell.md +307 -0
  233. package/docs/gateway/pairing.md +138 -0
  234. package/docs/gateway/protocol.md +588 -0
  235. package/docs/gateway/remote-gateway-readme.md +164 -0
  236. package/docs/gateway/remote.md +251 -0
  237. package/docs/gateway/sandbox-vs-tool-policy-vs-elevated.md +141 -0
  238. package/docs/gateway/sandboxing.md +473 -0
  239. package/docs/gateway/secrets-plan-contract.md +116 -0
  240. package/docs/gateway/secrets.md +541 -0
  241. package/docs/gateway/security/index.md +1362 -0
  242. package/docs/gateway/tailscale.md +136 -0
  243. package/docs/gateway/tools-invoke-http-api.md +161 -0
  244. package/docs/gateway/troubleshooting.md +451 -0
  245. package/docs/gateway/trusted-proxy-auth.md +399 -0
  246. package/docs/help/debugging.md +168 -0
  247. package/docs/help/environment.md +165 -0
  248. package/docs/help/faq.md +3244 -0
  249. package/docs/help/index.md +28 -0
  250. package/docs/help/scripts.md +27 -0
  251. package/docs/help/testing.md +640 -0
  252. package/docs/help/troubleshooting.md +372 -0
  253. package/docs/images/configure-model-picker-unsearchable.png +0 -0
  254. package/docs/images/feishu-step2-create-app.png +0 -0
  255. package/docs/images/feishu-step3-credentials.png +0 -0
  256. package/docs/images/feishu-step4-permissions.png +0 -0
  257. package/docs/images/feishu-step5-bot-capability.png +0 -0
  258. package/docs/images/feishu-step6-event-subscription.png +0 -0
  259. package/docs/images/feishu-verification-token.png +0 -0
  260. package/docs/images/groups-flow.svg +52 -0
  261. package/docs/images/mobile-ui-screenshot.png +0 -0
  262. package/docs/index.md +196 -0
  263. package/docs/install/ansible.md +230 -0
  264. package/docs/install/azure.md +311 -0
  265. package/docs/install/bun.md +55 -0
  266. package/docs/install/clawdock.md +106 -0
  267. package/docs/install/development-channels.md +131 -0
  268. package/docs/install/digitalocean.md +129 -0
  269. package/docs/install/docker-vm-runtime.md +142 -0
  270. package/docs/install/docker.md +412 -0
  271. package/docs/install/exe-dev.md +133 -0
  272. package/docs/install/fly.md +504 -0
  273. package/docs/install/gcp.md +412 -0
  274. package/docs/install/hetzner.md +259 -0
  275. package/docs/install/index.md +212 -0
  276. package/docs/install/installer.md +443 -0
  277. package/docs/install/kubernetes.md +192 -0
  278. package/docs/install/macos-vm.md +281 -0
  279. package/docs/install/migrating-matrix.md +349 -0
  280. package/docs/install/migrating.md +112 -0
  281. package/docs/install/nix.md +89 -0
  282. package/docs/install/node.md +144 -0
  283. package/docs/install/northflank.mdx +42 -0
  284. package/docs/install/oracle.md +158 -0
  285. package/docs/install/podman.md +210 -0
  286. package/docs/install/railway.mdx +90 -0
  287. package/docs/install/raspberry-pi.md +159 -0
  288. package/docs/install/render.mdx +165 -0
  289. package/docs/install/uninstall.md +128 -0
  290. package/docs/install/updating.md +142 -0
  291. package/docs/logging.md +389 -0
  292. package/docs/nav-tabs-underline.js +100 -0
  293. package/docs/network.md +69 -0
  294. package/docs/nodes/audio.md +191 -0
  295. package/docs/nodes/camera.md +162 -0
  296. package/docs/nodes/images.md +73 -0
  297. package/docs/nodes/index.md +408 -0
  298. package/docs/nodes/location-command.md +98 -0
  299. package/docs/nodes/media-understanding.md +432 -0
  300. package/docs/nodes/talk.md +92 -0
  301. package/docs/nodes/troubleshooting.md +123 -0
  302. package/docs/nodes/voicewake.md +66 -0
  303. package/docs/perplexity.md +181 -0
  304. package/docs/pi-dev.md +80 -0
  305. package/docs/pi.md +570 -0
  306. package/docs/platforms/android.md +244 -0
  307. package/docs/platforms/digitalocean.md +266 -0
  308. package/docs/platforms/index.md +55 -0
  309. package/docs/platforms/ios.md +223 -0
  310. package/docs/platforms/linux.md +100 -0
  311. package/docs/platforms/mac/bundled-gateway.md +75 -0
  312. package/docs/platforms/mac/canvas.md +125 -0
  313. package/docs/platforms/mac/child-process.md +69 -0
  314. package/docs/platforms/mac/dev-setup.md +107 -0
  315. package/docs/platforms/mac/health.md +34 -0
  316. package/docs/platforms/mac/icon.md +31 -0
  317. package/docs/platforms/mac/logging.md +57 -0
  318. package/docs/platforms/mac/menu-bar.md +81 -0
  319. package/docs/platforms/mac/peekaboo.md +65 -0
  320. package/docs/platforms/mac/permissions.md +50 -0
  321. package/docs/platforms/mac/remote.md +84 -0
  322. package/docs/platforms/mac/signing.md +47 -0
  323. package/docs/platforms/mac/skills.md +40 -0
  324. package/docs/platforms/mac/voice-overlay.md +60 -0
  325. package/docs/platforms/mac/voicewake.md +67 -0
  326. package/docs/platforms/mac/webchat.md +51 -0
  327. package/docs/platforms/mac/xpc.md +61 -0
  328. package/docs/platforms/macos.md +229 -0
  329. package/docs/platforms/oracle.md +305 -0
  330. package/docs/platforms/raspberry-pi.md +420 -0
  331. package/docs/platforms/windows.md +241 -0
  332. package/docs/plugins/agent-tools.md +10 -0
  333. package/docs/plugins/architecture.md +1609 -0
  334. package/docs/plugins/building-extensions.md +10 -0
  335. package/docs/plugins/building-plugins.md +319 -0
  336. package/docs/plugins/bundles.md +292 -0
  337. package/docs/plugins/community.md +149 -0
  338. package/docs/plugins/manifest.md +412 -0
  339. package/docs/plugins/sdk-channel-plugins.md +508 -0
  340. package/docs/plugins/sdk-entrypoints.md +210 -0
  341. package/docs/plugins/sdk-migration.md +359 -0
  342. package/docs/plugins/sdk-overview.md +475 -0
  343. package/docs/plugins/sdk-provider-plugins.md +712 -0
  344. package/docs/plugins/sdk-runtime.md +381 -0
  345. package/docs/plugins/sdk-setup.md +516 -0
  346. package/docs/plugins/sdk-testing.md +263 -0
  347. package/docs/plugins/voice-call.md +466 -0
  348. package/docs/plugins/zalouser.md +78 -0
  349. package/docs/prose.md +134 -0
  350. package/docs/providers/anthropic.md +402 -0
  351. package/docs/providers/bedrock-mantle.md +91 -0
  352. package/docs/providers/bedrock.md +273 -0
  353. package/docs/providers/chutes.md +103 -0
  354. package/docs/providers/claude-max-api-proxy.md +163 -0
  355. package/docs/providers/cloudflare-ai-gateway.md +71 -0
  356. package/docs/providers/deepgram.md +93 -0
  357. package/docs/providers/deepseek.md +53 -0
  358. package/docs/providers/fireworks.md +69 -0
  359. package/docs/providers/github-copilot.md +80 -0
  360. package/docs/providers/glm.md +68 -0
  361. package/docs/providers/google.md +149 -0
  362. package/docs/providers/groq.md +105 -0
  363. package/docs/providers/huggingface.md +193 -0
  364. package/docs/providers/index.md +81 -0
  365. package/docs/providers/kilocode.md +89 -0
  366. package/docs/providers/litellm.md +159 -0
  367. package/docs/providers/minimax.md +281 -0
  368. package/docs/providers/mistral.md +68 -0
  369. package/docs/providers/models.md +56 -0
  370. package/docs/providers/moonshot.md +224 -0
  371. package/docs/providers/nvidia.md +58 -0
  372. package/docs/providers/ollama.md +379 -0
  373. package/docs/providers/openai.md +472 -0
  374. package/docs/providers/opencode-go.md +45 -0
  375. package/docs/providers/opencode.md +68 -0
  376. package/docs/providers/openrouter.md +59 -0
  377. package/docs/providers/perplexity-provider.md +62 -0
  378. package/docs/providers/qianfan.md +90 -0
  379. package/docs/providers/qwen.md +128 -0
  380. package/docs/providers/qwen_modelstudio.md +137 -0
  381. package/docs/providers/sglang.md +115 -0
  382. package/docs/providers/stepfun.md +152 -0
  383. package/docs/providers/synthetic.md +101 -0
  384. package/docs/providers/together.md +70 -0
  385. package/docs/providers/venice.md +282 -0
  386. package/docs/providers/vercel-ai-gateway.md +60 -0
  387. package/docs/providers/vllm.md +103 -0
  388. package/docs/providers/volcengine.md +94 -0
  389. package/docs/providers/xai.md +94 -0
  390. package/docs/providers/xiaomi.md +89 -0
  391. package/docs/providers/zai.md +75 -0
  392. package/docs/reference/AGENTS.default.md +126 -0
  393. package/docs/reference/RELEASING.md +138 -0
  394. package/docs/reference/api-usage-costs.md +198 -0
  395. package/docs/reference/credits.md +30 -0
  396. package/docs/reference/device-models.md +47 -0
  397. package/docs/reference/memory-config.md +421 -0
  398. package/docs/reference/prompt-caching.md +344 -0
  399. package/docs/reference/rpc.md +43 -0
  400. package/docs/reference/secretref-credential-surface.md +148 -0
  401. package/docs/reference/secretref-user-supplied-credentials-matrix.json +607 -0
  402. package/docs/reference/session-management-compaction.md +352 -0
  403. package/docs/reference/templates/AGENTS.dev.md +84 -0
  404. package/docs/reference/templates/AGENTS.md +219 -0
  405. package/docs/reference/templates/BOOT.md +12 -0
  406. package/docs/reference/templates/BOOTSTRAP.md +62 -0
  407. package/docs/reference/templates/CLAUDE.md +1 -0
  408. package/docs/reference/templates/HEARTBEAT.md +14 -0
  409. package/docs/reference/templates/IDENTITY.dev.md +48 -0
  410. package/docs/reference/templates/IDENTITY.md +30 -0
  411. package/docs/reference/templates/SOUL.dev.md +77 -0
  412. package/docs/reference/templates/SOUL.md +45 -0
  413. package/docs/reference/templates/TOOLS.dev.md +25 -0
  414. package/docs/reference/templates/TOOLS.md +47 -0
  415. package/docs/reference/templates/USER.dev.md +19 -0
  416. package/docs/reference/templates/USER.md +24 -0
  417. package/docs/reference/test.md +119 -0
  418. package/docs/reference/token-use.md +197 -0
  419. package/docs/reference/transcript-hygiene.md +151 -0
  420. package/docs/reference/wizard.md +245 -0
  421. package/docs/security/CONTRIBUTING-THREAT-MODEL.md +98 -0
  422. package/docs/security/THREAT-MODEL-ATLAS.md +608 -0
  423. package/docs/security/formal-verification.md +167 -0
  424. package/docs/snippets/plugin-publish/minimal-openclaw.plugin.json +9 -0
  425. package/docs/snippets/plugin-publish/minimal-package.json +16 -0
  426. package/docs/start/bootstrapping.md +41 -0
  427. package/docs/start/docs-directory.md +67 -0
  428. package/docs/start/getting-started.md +148 -0
  429. package/docs/start/hubs.md +199 -0
  430. package/docs/start/lore.md +219 -0
  431. package/docs/start/onboarding-overview.md +69 -0
  432. package/docs/start/onboarding.md +92 -0
  433. package/docs/start/openclaw.md +225 -0
  434. package/docs/start/quickstart.md +22 -0
  435. package/docs/start/setup.md +172 -0
  436. package/docs/start/showcase.md +418 -0
  437. package/docs/start/wizard-cli-automation.md +233 -0
  438. package/docs/start/wizard-cli-reference.md +324 -0
  439. package/docs/start/wizard.md +127 -0
  440. package/docs/style.css +37 -0
  441. package/docs/tools/acp-agents.md +837 -0
  442. package/docs/tools/agent-send.md +100 -0
  443. package/docs/tools/apply-patch.md +52 -0
  444. package/docs/tools/brave-search.md +107 -0
  445. package/docs/tools/browser-linux-troubleshooting.md +145 -0
  446. package/docs/tools/browser-login.md +73 -0
  447. package/docs/tools/browser-wsl2-windows-remote-cdp-troubleshooting.md +221 -0
  448. package/docs/tools/browser.md +890 -0
  449. package/docs/tools/btw.md +142 -0
  450. package/docs/tools/capability-cookbook.md +119 -0
  451. package/docs/tools/clawhub.md +348 -0
  452. package/docs/tools/code-execution.md +90 -0
  453. package/docs/tools/creating-skills.md +119 -0
  454. package/docs/tools/diffs.md +434 -0
  455. package/docs/tools/duckduckgo-search.md +102 -0
  456. package/docs/tools/elevated.md +116 -0
  457. package/docs/tools/exa-search.md +127 -0
  458. package/docs/tools/exec-approvals.md +635 -0
  459. package/docs/tools/exec.md +237 -0
  460. package/docs/tools/firecrawl.md +147 -0
  461. package/docs/tools/gemini-search.md +98 -0
  462. package/docs/tools/grok-search.md +102 -0
  463. package/docs/tools/image-generation.md +139 -0
  464. package/docs/tools/index.md +174 -0
  465. package/docs/tools/kimi-search.md +98 -0
  466. package/docs/tools/llm-task.md +119 -0
  467. package/docs/tools/lobster.md +348 -0
  468. package/docs/tools/loop-detection.md +100 -0
  469. package/docs/tools/minimax-search.md +99 -0
  470. package/docs/tools/multi-agent-sandbox-tools.md +373 -0
  471. package/docs/tools/ollama-search.md +100 -0
  472. package/docs/tools/pdf.md +176 -0
  473. package/docs/tools/perplexity-search.md +185 -0
  474. package/docs/tools/plugin.md +348 -0
  475. package/docs/tools/reactions.md +78 -0
  476. package/docs/tools/searxng-search.md +132 -0
  477. package/docs/tools/skills-config.md +133 -0
  478. package/docs/tools/skills.md +377 -0
  479. package/docs/tools/slash-commands.md +322 -0
  480. package/docs/tools/subagents.md +341 -0
  481. package/docs/tools/tavily.md +129 -0
  482. package/docs/tools/thinking.md +102 -0
  483. package/docs/tools/tts.md +452 -0
  484. package/docs/tools/web-fetch.md +159 -0
  485. package/docs/tools/web.md +417 -0
  486. package/docs/tts.md +452 -0
  487. package/docs/vps.md +115 -0
  488. package/docs/web/control-ui.md +318 -0
  489. package/docs/web/dashboard.md +93 -0
  490. package/docs/web/index.md +126 -0
  491. package/docs/web/tui.md +176 -0
  492. package/docs/web/webchat.md +77 -0
  493. package/docs/whatsapp-openclaw-ai-zh.jpg +0 -0
  494. package/docs/whatsapp-openclaw.jpg +0 -0
  495. package/durar.mjs +180 -0
  496. package/package.json +1259 -0
  497. package/scripts/npm-runner.mjs +111 -0
  498. package/scripts/postinstall-bundled-plugins.mjs +188 -0
  499. package/skills/1password/SKILL.md +70 -0
  500. package/skills/1password/references/cli-examples.md +29 -0
  501. package/skills/1password/references/get-started.md +17 -0
  502. package/skills/apple-notes/SKILL.md +77 -0
  503. package/skills/apple-reminders/SKILL.md +118 -0
  504. package/skills/bear-notes/SKILL.md +107 -0
  505. package/skills/blogwatcher/SKILL.md +69 -0
  506. package/skills/blucli/SKILL.md +47 -0
  507. package/skills/bluebubbles/SKILL.md +131 -0
  508. package/skills/camsnap/SKILL.md +45 -0
  509. package/skills/canvas/SKILL.md +199 -0
  510. package/skills/clawhub/SKILL.md +77 -0
  511. package/skills/coding-agent/SKILL.md +316 -0
  512. package/skills/discord/SKILL.md +197 -0
  513. package/skills/eightctl/SKILL.md +50 -0
  514. package/skills/gemini/SKILL.md +43 -0
  515. package/skills/gh-issues/SKILL.md +885 -0
  516. package/skills/gifgrep/SKILL.md +79 -0
  517. package/skills/github/SKILL.md +163 -0
  518. package/skills/gog/SKILL.md +116 -0
  519. package/skills/goplaces/SKILL.md +52 -0
  520. package/skills/healthcheck/SKILL.md +245 -0
  521. package/skills/himalaya/SKILL.md +257 -0
  522. package/skills/himalaya/references/configuration.md +184 -0
  523. package/skills/himalaya/references/message-composition.md +199 -0
  524. package/skills/imsg/SKILL.md +122 -0
  525. package/skills/mcporter/SKILL.md +61 -0
  526. package/skills/model-usage/SKILL.md +69 -0
  527. package/skills/model-usage/references/codexbar-cli.md +33 -0
  528. package/skills/model-usage/scripts/model_usage.py +320 -0
  529. package/skills/model-usage/scripts/test_model_usage.py +40 -0
  530. package/skills/nano-pdf/SKILL.md +38 -0
  531. package/skills/node-connect/SKILL.md +142 -0
  532. package/skills/notion/SKILL.md +174 -0
  533. package/skills/obsidian/SKILL.md +81 -0
  534. package/skills/openai-whisper/SKILL.md +38 -0
  535. package/skills/openai-whisper-api/SKILL.md +62 -0
  536. package/skills/openai-whisper-api/scripts/transcribe.sh +88 -0
  537. package/skills/openhue/SKILL.md +112 -0
  538. package/skills/oracle/SKILL.md +125 -0
  539. package/skills/ordercli/SKILL.md +78 -0
  540. package/skills/peekaboo/SKILL.md +190 -0
  541. package/skills/sag/SKILL.md +87 -0
  542. package/skills/session-logs/SKILL.md +151 -0
  543. package/skills/sherpa-onnx-tts/SKILL.md +109 -0
  544. package/skills/sherpa-onnx-tts/bin/sherpa-onnx-tts +178 -0
  545. package/skills/skill-creator/SKILL.md +372 -0
  546. package/skills/skill-creator/license.txt +202 -0
  547. package/skills/skill-creator/scripts/init_skill.py +378 -0
  548. package/skills/skill-creator/scripts/package_skill.py +139 -0
  549. package/skills/skill-creator/scripts/quick_validate.py +159 -0
  550. package/skills/skill-creator/scripts/test_package_skill.py +160 -0
  551. package/skills/skill-creator/scripts/test_quick_validate.py +72 -0
  552. package/skills/slack/SKILL.md +144 -0
  553. package/skills/songsee/SKILL.md +49 -0
  554. package/skills/sonoscli/SKILL.md +65 -0
  555. package/skills/spotify-player/SKILL.md +64 -0
  556. package/skills/summarize/SKILL.md +87 -0
  557. package/skills/taskflow/SKILL.md +149 -0
  558. package/skills/taskflow/examples/inbox-triage.lobster +33 -0
  559. package/skills/taskflow/examples/pr-intake.lobster +32 -0
  560. package/skills/taskflow-inbox-triage/SKILL.md +119 -0
  561. package/skills/things-mac/SKILL.md +86 -0
  562. package/skills/tmux/SKILL.md +170 -0
  563. package/skills/tmux/scripts/find-sessions.sh +112 -0
  564. package/skills/tmux/scripts/wait-for-text.sh +83 -0
  565. package/skills/trello/SKILL.md +108 -0
  566. package/skills/video-frames/SKILL.md +46 -0
  567. package/skills/video-frames/scripts/frame.sh +81 -0
  568. package/skills/voice-call/SKILL.md +45 -0
  569. package/skills/wacli/SKILL.md +72 -0
  570. package/skills/weather/SKILL.md +129 -0
  571. package/skills/xurl/SKILL.md +461 -0
@@ -0,0 +1,136 @@
1
+ ---
2
+ summary: "CLI reference for `Durar approvals` (exec approvals for gateway or node hosts)"
3
+ read_when:
4
+ - You want to edit exec approvals from the CLI
5
+ - You need to manage allowlists on gateway or node hosts
6
+ title: "approvals"
7
+ ---
8
+
9
+ # `Durar approvals`
10
+
11
+ Manage exec approvals for the **local host**, **gateway host**, or a **node host**.
12
+ By default, commands target the local approvals file on disk. Use `--gateway` to target the gateway, or `--node` to target a specific node.
13
+
14
+ Alias: `Durar exec-approvals`
15
+
16
+ Related:
17
+
18
+ - Exec approvals: [Exec approvals](/tools/exec-approvals)
19
+ - Nodes: [Nodes](/nodes)
20
+
21
+ ## Common commands
22
+
23
+ ```bash
24
+ Durar approvals get
25
+ Durar approvals get --node <id|name|ip>
26
+ Durar approvals get --gateway
27
+ ```
28
+
29
+ `Durar approvals get` now shows the effective exec policy for local, gateway, and node targets:
30
+
31
+ - requested `tools.exec` policy
32
+ - host approvals-file policy
33
+ - effective result after precedence rules are applied
34
+
35
+ Precedence is intentional:
36
+
37
+ - the host approvals file is the enforceable source of truth
38
+ - requested `tools.exec` policy can narrow or broaden intent, but the effective result is still derived from the host rules
39
+ - `--node` combines the node host approvals file with gateway `tools.exec` policy, because both still apply at runtime
40
+ - if gateway config is unavailable, the CLI falls back to the node approvals snapshot and notes that the final runtime policy could not be computed
41
+
42
+ ## Replace approvals from a file
43
+
44
+ ```bash
45
+ Durar approvals set --file ./exec-approvals.json
46
+ Durar approvals set --stdin <<'EOF'
47
+ { version: 1, defaults: { security: "full", ask: "off" } }
48
+ EOF
49
+ Durar approvals set --node <id|name|ip> --file ./exec-approvals.json
50
+ Durar approvals set --gateway --file ./exec-approvals.json
51
+ ```
52
+
53
+ `set` accepts JSON5, not only strict JSON. Use either `--file` or `--stdin`, not both.
54
+
55
+ ## "Never prompt" / YOLO example
56
+
57
+ For a host that should never stop on exec approvals, set the host approvals defaults to `full` + `off`:
58
+
59
+ ```bash
60
+ Durar approvals set --stdin <<'EOF'
61
+ {
62
+ version: 1,
63
+ defaults: {
64
+ security: "full",
65
+ ask: "off",
66
+ askFallback: "full"
67
+ }
68
+ }
69
+ EOF
70
+ ```
71
+
72
+ Node variant:
73
+
74
+ ```bash
75
+ Durar approvals set --node <id|name|ip> --stdin <<'EOF'
76
+ {
77
+ version: 1,
78
+ defaults: {
79
+ security: "full",
80
+ ask: "off",
81
+ askFallback: "full"
82
+ }
83
+ }
84
+ EOF
85
+ ```
86
+
87
+ This changes the **host approvals file** only. To keep the requested Durar policy aligned, also set:
88
+
89
+ ```bash
90
+ Durar config set tools.exec.host gateway
91
+ Durar config set tools.exec.security full
92
+ Durar config set tools.exec.ask off
93
+ ```
94
+
95
+ Why `tools.exec.host=gateway` in this example:
96
+
97
+ - `host=auto` still means "sandbox when available, otherwise gateway".
98
+ - YOLO is about approvals, not routing.
99
+ - If you want host exec even when a sandbox is configured, make the host choice explicit with `gateway` or `/exec host=gateway`.
100
+
101
+ This matches the current host-default YOLO behavior. Tighten it if you want approvals.
102
+
103
+ ## Allowlist helpers
104
+
105
+ ```bash
106
+ Durar approvals allowlist add "~/Projects/**/bin/rg"
107
+ Durar approvals allowlist add --agent main --node <id|name|ip> "/usr/bin/uptime"
108
+ Durar approvals allowlist add --agent "*" "/usr/bin/uname"
109
+
110
+ Durar approvals allowlist remove "~/Projects/**/bin/rg"
111
+ ```
112
+
113
+ ## Common options
114
+
115
+ `get`, `set`, and `allowlist add|remove` all support:
116
+
117
+ - `--node <id|name|ip>`
118
+ - `--gateway`
119
+ - shared node RPC options: `--url`, `--token`, `--timeout`, `--json`
120
+
121
+ Targeting notes:
122
+
123
+ - no target flags means the local approvals file on disk
124
+ - `--gateway` targets the gateway host approvals file
125
+ - `--node` targets one node host after resolving id, name, IP, or id prefix
126
+
127
+ `allowlist add|remove` also supports:
128
+
129
+ - `--agent <id>` (defaults to `*`)
130
+
131
+ ## Notes
132
+
133
+ - `--node` uses the same resolver as `Durar nodes` (id, name, ip, or id prefix).
134
+ - `--agent` defaults to `"*"`, which applies to all agents.
135
+ - The node host must advertise `system.execApprovals.get/set` (macOS app or headless node host).
136
+ - Approvals files are stored per host at `~/.Durar/exec-approvals.json`.
@@ -0,0 +1,84 @@
1
+ ---
2
+ summary: "CLI reference for `Durar backup` (create local backup archives)"
3
+ read_when:
4
+ - You want a first-class backup archive for local Durar state
5
+ - You want to preview which paths would be included before reset or uninstall
6
+ title: "backup"
7
+ ---
8
+
9
+ # `Durar backup`
10
+
11
+ Create a local backup archive for Durar state, config, auth profiles, channel/provider credentials, sessions, and optionally workspaces.
12
+
13
+ ```bash
14
+ Durar backup create
15
+ Durar backup create --output ~/Backups
16
+ Durar backup create --dry-run --json
17
+ Durar backup create --verify
18
+ Durar backup create --no-include-workspace
19
+ Durar backup create --only-config
20
+ Durar backup verify ./2026-03-09T00-00-00.000Z-Durar-backup.tar.gz
21
+ ```
22
+
23
+ ## Notes
24
+
25
+ - The archive includes a `manifest.json` file with the resolved source paths and archive layout.
26
+ - Default output is a timestamped `.tar.gz` archive in the current working directory.
27
+ - If the current working directory is inside a backed-up source tree, Durar falls back to your home directory for the default archive location.
28
+ - Existing archive files are never overwritten.
29
+ - Output paths inside the source state/workspace trees are rejected to avoid self-inclusion.
30
+ - `Durar backup verify <archive>` validates that the archive contains exactly one root manifest, rejects traversal-style archive paths, and checks that every manifest-declared payload exists in the tarball.
31
+ - `Durar backup create --verify` runs that validation immediately after writing the archive.
32
+ - `Durar backup create --only-config` backs up just the active JSON config file.
33
+
34
+ ## What gets backed up
35
+
36
+ `Durar backup create` plans backup sources from your local Durar install:
37
+
38
+ - The state directory returned by Durar's local state resolver, usually `~/.Durar`
39
+ - The active config file path
40
+ - The resolved `credentials/` directory when it exists outside the state directory
41
+ - Workspace directories discovered from the current config, unless you pass `--no-include-workspace`
42
+
43
+ Model auth profiles are already part of the state directory under
44
+ `agents/<agentId>/agent/auth-profiles.json`, so they are normally covered by the
45
+ state backup entry.
46
+
47
+ If you use `--only-config`, Durar skips state, credentials-directory, and workspace discovery and archives only the active config file path.
48
+
49
+ Durar canonicalizes paths before building the archive. If config, the
50
+ credentials directory, or a workspace already live inside the state directory,
51
+ they are not duplicated as separate top-level backup sources. Missing paths are
52
+ skipped.
53
+
54
+ The archive payload stores file contents from those source trees, and the embedded `manifest.json` records the resolved absolute source paths plus the archive layout used for each asset.
55
+
56
+ ## Invalid config behavior
57
+
58
+ `Durar backup` intentionally bypasses the normal config preflight so it can still help during recovery. Because workspace discovery depends on a valid config, `Durar backup create` now fails fast when the config file exists but is invalid and workspace backup is still enabled.
59
+
60
+ If you still want a partial backup in that situation, rerun:
61
+
62
+ ```bash
63
+ Durar backup create --no-include-workspace
64
+ ```
65
+
66
+ That keeps state, config, and the external credentials directory in scope while
67
+ skipping workspace discovery entirely.
68
+
69
+ If you only need a copy of the config file itself, `--only-config` also works when the config is malformed because it does not rely on parsing the config for workspace discovery.
70
+
71
+ ## Size and performance
72
+
73
+ Durar does not enforce a built-in maximum backup size or per-file size limit.
74
+
75
+ Practical limits come from the local machine and destination filesystem:
76
+
77
+ - Available space for the temporary archive write plus the final archive
78
+ - Time to walk large workspace trees and compress them into a `.tar.gz`
79
+ - Time to rescan the archive if you use `Durar backup create --verify` or run `Durar backup verify`
80
+ - Filesystem behavior at the destination path. Durar prefers a no-overwrite hard-link publish step and falls back to exclusive copy when hard links are unsupported
81
+
82
+ Large workspaces are usually the main driver of archive size. If you want a smaller or faster backup, use `--no-include-workspace`.
83
+
84
+ For the smallest archive, use `--only-config`.
@@ -0,0 +1,233 @@
1
+ ---
2
+ summary: "CLI reference for `Durar browser` (lifecycle, profiles, tabs, actions, state, and debugging)"
3
+ read_when:
4
+ - You use `Durar browser` and want examples for common tasks
5
+ - You want to control a browser running on another machine via a node host
6
+ - You want to attach to your local signed-in Chrome via Chrome MCP
7
+ title: "browser"
8
+ ---
9
+
10
+ # `Durar browser`
11
+
12
+ Manage Durar's browser control surface and run browser actions (lifecycle, profiles, tabs, snapshots, screenshots, navigation, input, state emulation, and debugging).
13
+
14
+ Related:
15
+
16
+ - Browser tool + API: [Browser tool](/tools/browser)
17
+
18
+ ## Common flags
19
+
20
+ - `--url <gatewayWsUrl>`: Gateway WebSocket URL (defaults to config).
21
+ - `--token <token>`: Gateway token (if required).
22
+ - `--timeout <ms>`: request timeout (ms).
23
+ - `--expect-final`: wait for a final Gateway response.
24
+ - `--browser-profile <name>`: choose a browser profile (default from config).
25
+ - `--json`: machine-readable output (where supported).
26
+
27
+ ## Quick start (local)
28
+
29
+ ```bash
30
+ Durar browser profiles
31
+ Durar browser --browser-profile Durar start
32
+ Durar browser --browser-profile Durar open https://example.com
33
+ Durar browser --browser-profile Durar snapshot
34
+ ```
35
+
36
+ ## Lifecycle
37
+
38
+ ```bash
39
+ Durar browser status
40
+ Durar browser start
41
+ Durar browser stop
42
+ Durar browser --browser-profile Durar reset-profile
43
+ ```
44
+
45
+ Notes:
46
+
47
+ - For `attachOnly` and remote CDP profiles, `Durar browser stop` closes the
48
+ active control session and clears temporary emulation overrides even when
49
+ Durar did not launch the browser process itself.
50
+ - For local managed profiles, `Durar browser stop` stops the spawned browser
51
+ process.
52
+
53
+ ## If the command is missing
54
+
55
+ If `Durar browser` is an unknown command, check `plugins.allow` in
56
+ `~/.Durar/Durar.json`.
57
+
58
+ When `plugins.allow` is present, the bundled browser plugin must be listed
59
+ explicitly:
60
+
61
+ ```json5
62
+ {
63
+ plugins: {
64
+ allow: ["telegram", "browser"],
65
+ },
66
+ }
67
+ ```
68
+
69
+ `browser.enabled=true` does not restore the CLI subcommand when the plugin
70
+ allowlist excludes `browser`.
71
+
72
+ Related: [Browser tool](/tools/browser#missing-browser-command-or-tool)
73
+
74
+ ## Profiles
75
+
76
+ Profiles are named browser routing configs. In practice:
77
+
78
+ - `Durar`: launches or attaches to a dedicated Durar-managed Chrome instance (isolated user data dir).
79
+ - `user`: controls your existing signed-in Chrome session via Chrome DevTools MCP.
80
+ - custom CDP profiles: point at a local or remote CDP endpoint.
81
+
82
+ ```bash
83
+ Durar browser profiles
84
+ Durar browser create-profile --name work --color "#FF5A36"
85
+ Durar browser create-profile --name chrome-live --driver existing-session
86
+ Durar browser create-profile --name remote --cdp-url https://browser-host.example.com
87
+ Durar browser delete-profile --name work
88
+ ```
89
+
90
+ Use a specific profile:
91
+
92
+ ```bash
93
+ Durar browser --browser-profile work tabs
94
+ ```
95
+
96
+ ## Tabs
97
+
98
+ ```bash
99
+ Durar browser tabs
100
+ Durar browser tab new
101
+ Durar browser tab select 2
102
+ Durar browser tab close 2
103
+ Durar browser open https://docs.Durar.ai
104
+ Durar browser focus <targetId>
105
+ Durar browser close <targetId>
106
+ ```
107
+
108
+ ## Snapshot / screenshot / actions
109
+
110
+ Snapshot:
111
+
112
+ ```bash
113
+ Durar browser snapshot
114
+ ```
115
+
116
+ Screenshot:
117
+
118
+ ```bash
119
+ Durar browser screenshot
120
+ Durar browser screenshot --full-page
121
+ Durar browser screenshot --ref e12
122
+ ```
123
+
124
+ Notes:
125
+
126
+ - `--full-page` is for page captures only; it cannot be combined with `--ref`
127
+ or `--element`.
128
+ - `existing-session` / `user` profiles support page screenshots and `--ref`
129
+ screenshots from snapshot output, but not CSS `--element` screenshots.
130
+
131
+ Navigate/click/type (ref-based UI automation):
132
+
133
+ ```bash
134
+ Durar browser navigate https://example.com
135
+ Durar browser click <ref>
136
+ Durar browser type <ref> "hello"
137
+ Durar browser press Enter
138
+ Durar browser hover <ref>
139
+ Durar browser scrollintoview <ref>
140
+ Durar browser drag <startRef> <endRef>
141
+ Durar browser select <ref> OptionA OptionB
142
+ Durar browser fill --fields '[{"ref":"1","value":"Ada"}]'
143
+ Durar browser wait --text "Done"
144
+ Durar browser evaluate --fn '(el) => el.textContent' --ref <ref>
145
+ ```
146
+
147
+ File + dialog helpers:
148
+
149
+ ```bash
150
+ Durar browser upload /tmp/Durar/uploads/file.pdf --ref <ref>
151
+ Durar browser waitfordownload
152
+ Durar browser download <ref> report.pdf
153
+ Durar browser dialog --accept
154
+ ```
155
+
156
+ ## State and storage
157
+
158
+ Viewport + emulation:
159
+
160
+ ```bash
161
+ Durar browser resize 1280 720
162
+ Durar browser set viewport 1280 720
163
+ Durar browser set offline on
164
+ Durar browser set media dark
165
+ Durar browser set timezone Europe/London
166
+ Durar browser set locale en-GB
167
+ Durar browser set geo 51.5074 -0.1278 --accuracy 25
168
+ Durar browser set device "iPhone 14"
169
+ Durar browser set headers '{"x-test":"1"}'
170
+ Durar browser set credentials myuser mypass
171
+ ```
172
+
173
+ Cookies + storage:
174
+
175
+ ```bash
176
+ Durar browser cookies
177
+ Durar browser cookies set session abc123 --url https://example.com
178
+ Durar browser cookies clear
179
+ Durar browser storage local get
180
+ Durar browser storage local set token abc123
181
+ Durar browser storage session clear
182
+ ```
183
+
184
+ ## Debugging
185
+
186
+ ```bash
187
+ Durar browser console --level error
188
+ Durar browser pdf
189
+ Durar browser responsebody "**/api"
190
+ Durar browser highlight <ref>
191
+ Durar browser errors --clear
192
+ Durar browser requests --filter api
193
+ Durar browser trace start
194
+ Durar browser trace stop --out trace.zip
195
+ ```
196
+
197
+ ## Existing Chrome via MCP
198
+
199
+ Use the built-in `user` profile, or create your own `existing-session` profile:
200
+
201
+ ```bash
202
+ Durar browser --browser-profile user tabs
203
+ Durar browser create-profile --name chrome-live --driver existing-session
204
+ Durar browser create-profile --name brave-live --driver existing-session --user-data-dir "~/Library/Application Support/BraveSoftware/Brave-Browser"
205
+ Durar browser --browser-profile chrome-live tabs
206
+ ```
207
+
208
+ This path is host-only. For Docker, headless servers, Browserless, or other remote setups, use a CDP profile instead.
209
+
210
+ Current existing-session limits:
211
+
212
+ - snapshot-driven actions use refs, not CSS selectors
213
+ - `click` is left-click only
214
+ - `type` does not support `slowly=true`
215
+ - `press` does not support `delayMs`
216
+ - `hover`, `scrollintoview`, `drag`, `select`, `fill`, and `evaluate` reject
217
+ per-call timeout overrides
218
+ - `select` supports one value only
219
+ - `wait --load networkidle` is not supported
220
+ - file uploads require `--ref` / `--input-ref`, do not support CSS
221
+ `--element`, and currently support one file at a time
222
+ - dialog hooks do not support `--timeout`
223
+ - screenshots support page captures and `--ref`, but not CSS `--element`
224
+ - `responsebody`, download interception, PDF export, and batch actions still
225
+ require a managed browser or raw CDP profile
226
+
227
+ ## Remote browser control (node host proxy)
228
+
229
+ If the Gateway runs on a different machine than the browser, run a **node host** on the machine that has Chrome/Brave/Edge/Chromium. The Gateway will proxy browser actions to that node (no separate browser control server required).
230
+
231
+ Use `gateway.nodes.browser.mode` to control auto-routing and `gateway.nodes.browser.node` to pin a specific node if multiple are connected.
232
+
233
+ Security + remote setup: [Browser tool](/tools/browser), [Remote access](/gateway/remote), [Tailscale](/gateway/tailscale), [Security](/gateway/security)
@@ -0,0 +1,131 @@
1
+ ---
2
+ summary: "CLI reference for `Durar channels` (accounts, status, login/logout, logs)"
3
+ read_when:
4
+ - You want to add/remove channel accounts (WhatsApp/Telegram/Discord/Google Chat/Slack/Mattermost (plugin)/Signal/iMessage/Matrix)
5
+ - You want to check channel status or tail channel logs
6
+ title: "channels"
7
+ ---
8
+
9
+ # `Durar channels`
10
+
11
+ Manage chat channel accounts and their runtime status on the Gateway.
12
+
13
+ Related docs:
14
+
15
+ - Channel guides: [Channels](/channels/index)
16
+ - Gateway configuration: [Configuration](/gateway/configuration)
17
+
18
+ ## Common commands
19
+
20
+ ```bash
21
+ Durar channels list
22
+ Durar channels status
23
+ Durar channels capabilities
24
+ Durar channels capabilities --channel discord --target channel:123
25
+ Durar channels resolve --channel slack "#general" "@jane"
26
+ Durar channels logs --channel all
27
+ ```
28
+
29
+ ## Status / capabilities / resolve / logs
30
+
31
+ - `channels status`: `--probe`, `--timeout <ms>`, `--json`
32
+ - `channels capabilities`: `--channel <name>`, `--account <id>` (only with `--channel`), `--target <dest>`, `--timeout <ms>`, `--json`
33
+ - `channels resolve`: `<entries...>`, `--channel <name>`, `--account <id>`, `--kind <auto|user|group>`, `--json`
34
+ - `channels logs`: `--channel <name|all>`, `--lines <n>`, `--json`
35
+
36
+ `channels status --probe` is the live path: on a reachable gateway it runs per-account
37
+ `probeAccount` and optional `auditAccount` checks, so output can include transport
38
+ state plus probe results such as `works`, `probe failed`, `audit ok`, or `audit failed`.
39
+ If the gateway is unreachable, `channels status` falls back to config-only summaries
40
+ instead of live probe output.
41
+
42
+ ## Add / remove accounts
43
+
44
+ ```bash
45
+ Durar channels add --channel telegram --token <bot-token>
46
+ Durar channels add --channel nostr --private-key "$NOSTR_PRIVATE_KEY"
47
+ Durar channels remove --channel telegram --delete
48
+ ```
49
+
50
+ Tip: `Durar channels add --help` shows per-channel flags (token, private key, app token, signal-cli paths, etc).
51
+
52
+ Common non-interactive add surfaces include:
53
+
54
+ - bot-token channels: `--token`, `--bot-token`, `--app-token`, `--token-file`
55
+ - Signal/iMessage transport fields: `--signal-number`, `--cli-path`, `--http-url`, `--http-host`, `--http-port`, `--db-path`, `--service`, `--region`
56
+ - Google Chat fields: `--webhook-path`, `--webhook-url`, `--audience-type`, `--audience`
57
+ - Matrix fields: `--homeserver`, `--user-id`, `--access-token`, `--password`, `--device-name`, `--initial-sync-limit`
58
+ - Nostr fields: `--private-key`, `--relay-urls`
59
+ - Tlon fields: `--ship`, `--url`, `--code`, `--group-channels`, `--dm-allowlist`, `--auto-discover-channels`
60
+ - `--use-env` for default-account env-backed auth where supported
61
+
62
+ When you run `Durar channels add` without flags, the interactive wizard can prompt:
63
+
64
+ - account ids per selected channel
65
+ - optional display names for those accounts
66
+ - `Bind configured channel accounts to agents now?`
67
+
68
+ If you confirm bind now, the wizard asks which agent should own each configured channel account and writes account-scoped routing bindings.
69
+
70
+ You can also manage the same routing rules later with `Durar agents bindings`, `Durar agents bind`, and `Durar agents unbind` (see [agents](/cli/agents)).
71
+
72
+ When you add a non-default account to a channel that is still using single-account top-level settings, Durar promotes account-scoped top-level values into the channel's account map before writing the new account. Most channels land those values in `channels.<channel>.accounts.default`, but bundled channels can preserve an existing matching promoted account instead. Matrix is the current example: if one named account already exists, or `defaultAccount` points at an existing named account, promotion preserves that account instead of creating a new `accounts.default`.
73
+
74
+ Routing behavior stays consistent:
75
+
76
+ - Existing channel-only bindings (no `accountId`) continue to match the default account.
77
+ - `channels add` does not auto-create or rewrite bindings in non-interactive mode.
78
+ - Interactive setup can optionally add account-scoped bindings.
79
+
80
+ If your config was already in a mixed state (named accounts present and top-level single-account values still set), run `Durar doctor --fix` to move account-scoped values into the promoted account chosen for that channel. Most channels promote into `accounts.default`; Matrix can preserve an existing named/default target instead.
81
+
82
+ ## Login / logout (interactive)
83
+
84
+ ```bash
85
+ Durar channels login --channel whatsapp
86
+ Durar channels logout --channel whatsapp
87
+ ```
88
+
89
+ Notes:
90
+
91
+ - `channels login` supports `--verbose`.
92
+ - `channels login` / `logout` can infer the channel when only one supported login target is configured.
93
+
94
+ ## Troubleshooting
95
+
96
+ - Run `Durar status --deep` for a broad probe.
97
+ - Use `Durar doctor` for guided fixes.
98
+ - `Durar channels list` prints `Claude: HTTP 403 ... user:profile` → usage snapshot needs the `user:profile` scope. Use `--no-usage`, or provide a claude.ai session key (`CLAUDE_WEB_SESSION_KEY` / `CLAUDE_WEB_COOKIE`), or re-auth via Claude CLI.
99
+ - `Durar channels status` falls back to config-only summaries when the gateway is unreachable. If a supported channel credential is configured via SecretRef but unavailable in the current command path, it reports that account as configured with degraded notes instead of showing it as not configured.
100
+
101
+ ## Capabilities probe
102
+
103
+ Fetch provider capability hints (intents/scopes where available) plus static feature support:
104
+
105
+ ```bash
106
+ Durar channels capabilities
107
+ Durar channels capabilities --channel discord --target channel:123
108
+ ```
109
+
110
+ Notes:
111
+
112
+ - `--channel` is optional; omit it to list every channel (including extensions).
113
+ - `--account` is only valid with `--channel`.
114
+ - `--target` accepts `channel:<id>` or a raw numeric channel id and only applies to Discord.
115
+ - Probes are provider-specific: Discord intents + optional channel permissions; Slack bot + user scopes; Telegram bot flags + webhook; Signal daemon version; Microsoft Teams app token + Graph roles/scopes (annotated where known). Channels without probes report `Probe: unavailable`.
116
+
117
+ ## Resolve names to IDs
118
+
119
+ Resolve channel/user names to IDs using the provider directory:
120
+
121
+ ```bash
122
+ Durar channels resolve --channel slack "#general" "@jane"
123
+ Durar channels resolve --channel discord "My Server/#support" "@someone"
124
+ Durar channels resolve --channel matrix "Project Room"
125
+ ```
126
+
127
+ Notes:
128
+
129
+ - Use `--kind user|group|auto` to force the target type.
130
+ - Resolution prefers active matches when multiple entries share the same name.
131
+ - `channels resolve` is read-only. If a selected account is configured via SecretRef but that credential is unavailable in the current command path, the command returns degraded unresolved results with notes instead of aborting the entire run.
@@ -0,0 +1,21 @@
1
+ ---
2
+ summary: "CLI reference for `Durar clawbot` (legacy alias namespace)"
3
+ read_when:
4
+ - You maintain older scripts using `Durar clawbot ...`
5
+ - You need migration guidance to current commands
6
+ title: "clawbot"
7
+ ---
8
+
9
+ # `Durar clawbot`
10
+
11
+ Legacy alias namespace kept for backwards compatibility.
12
+
13
+ Current supported alias:
14
+
15
+ - `Durar clawbot qr` (same behavior as [`Durar qr`](/cli/qr))
16
+
17
+ ## Migration
18
+
19
+ Prefer modern top-level commands directly:
20
+
21
+ - `Durar clawbot qr` -> `Durar qr`
@@ -0,0 +1,35 @@
1
+ ---
2
+ summary: "CLI reference for `Durar completion` (generate/install shell completion scripts)"
3
+ read_when:
4
+ - You want shell completions for zsh/bash/fish/PowerShell
5
+ - You need to cache completion scripts under Durar state
6
+ title: "completion"
7
+ ---
8
+
9
+ # `Durar completion`
10
+
11
+ Generate shell completion scripts and optionally install them into your shell profile.
12
+
13
+ ## Usage
14
+
15
+ ```bash
16
+ Durar completion
17
+ Durar completion --shell zsh
18
+ Durar completion --install
19
+ Durar completion --shell fish --install
20
+ Durar completion --write-state
21
+ Durar completion --shell bash --write-state
22
+ ```
23
+
24
+ ## Options
25
+
26
+ - `-s, --shell <shell>`: shell target (`zsh`, `bash`, `powershell`, `fish`; default: `zsh`)
27
+ - `-i, --install`: install completion by adding a source line to your shell profile
28
+ - `--write-state`: write completion script(s) to `$Durar_STATE_DIR/completions` without printing to stdout
29
+ - `-y, --yes`: skip install confirmation prompts
30
+
31
+ ## Notes
32
+
33
+ - `--install` writes a small "Durar Completion" block into your shell profile and points it at the cached script.
34
+ - Without `--install` or `--write-state`, the command prints the script to stdout.
35
+ - Completion generation eagerly loads command trees so nested subcommands are included.