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,94 @@
1
+ ---
2
+ title: "Volcengine (Doubao)"
3
+ summary: "Volcano Engine setup (Doubao models, general + coding endpoints)"
4
+ read_when:
5
+ - You want to use Volcano Engine or Doubao models with Durar
6
+ - You need the Volcengine API key setup
7
+ ---
8
+
9
+ # Volcengine (Doubao)
10
+
11
+ The Volcengine provider gives access to Doubao models and third-party models
12
+ hosted on Volcano Engine, with separate endpoints for general and coding
13
+ workloads.
14
+
15
+ - Providers: `volcengine` (general) + `volcengine-plan` (coding)
16
+ - Auth: `VOLCANO_ENGINE_API_KEY`
17
+ - API: OpenAI-compatible
18
+
19
+ ## Quick start
20
+
21
+ 1. Set the API key:
22
+
23
+ ```bash
24
+ Durar onboard --auth-choice volcengine-api-key
25
+ ```
26
+
27
+ 2. Set a default model:
28
+
29
+ ```json5
30
+ {
31
+ agents: {
32
+ defaults: {
33
+ model: { primary: "volcengine-plan/ark-code-latest" },
34
+ },
35
+ },
36
+ }
37
+ ```
38
+
39
+ ## Non-interactive example
40
+
41
+ ```bash
42
+ Durar onboard --non-interactive \
43
+ --mode local \
44
+ --auth-choice volcengine-api-key \
45
+ --volcengine-api-key "$VOLCANO_ENGINE_API_KEY"
46
+ ```
47
+
48
+ ## Providers and endpoints
49
+
50
+ | Provider | Endpoint | Use case |
51
+ | ----------------- | ----------------------------------------- | -------------- |
52
+ | `volcengine` | `ark.cn-beijing.volces.com/api/v3` | General models |
53
+ | `volcengine-plan` | `ark.cn-beijing.volces.com/api/coding/v3` | Coding models |
54
+
55
+ Both providers are configured from a single API key. Setup registers both
56
+ automatically.
57
+
58
+ ## Available models
59
+
60
+ General provider (`volcengine`):
61
+
62
+ | Model ref | Name | Input | Context |
63
+ | -------------------------------------------- | ------------------------------- | ----------- | ------- |
64
+ | `volcengine/doubao-seed-1-8-251228` | Doubao Seed 1.8 | text, image | 256,000 |
65
+ | `volcengine/doubao-seed-code-preview-251028` | doubao-seed-code-preview-251028 | text, image | 256,000 |
66
+ | `volcengine/kimi-k2-5-260127` | Kimi K2.5 | text, image | 256,000 |
67
+ | `volcengine/glm-4-7-251222` | GLM 4.7 | text, image | 200,000 |
68
+ | `volcengine/deepseek-v3-2-251201` | DeepSeek V3.2 | text, image | 128,000 |
69
+
70
+ Coding provider (`volcengine-plan`):
71
+
72
+ | Model ref | Name | Input | Context |
73
+ | ------------------------------------------------- | ------------------------ | ----- | ------- |
74
+ | `volcengine-plan/ark-code-latest` | Ark Coding Plan | text | 256,000 |
75
+ | `volcengine-plan/doubao-seed-code` | Doubao Seed Code | text | 256,000 |
76
+ | `volcengine-plan/glm-4.7` | GLM 4.7 Coding | text | 200,000 |
77
+ | `volcengine-plan/kimi-k2-thinking` | Kimi K2 Thinking | text | 256,000 |
78
+ | `volcengine-plan/kimi-k2.5` | Kimi K2.5 Coding | text | 256,000 |
79
+ | `volcengine-plan/doubao-seed-code-preview-251028` | Doubao Seed Code Preview | text | 256,000 |
80
+
81
+ `Durar onboard --auth-choice volcengine-api-key` currently sets
82
+ `volcengine-plan/ark-code-latest` as the default model while also registering
83
+ the general `volcengine` catalog.
84
+
85
+ During onboarding/configure model selection, the Volcengine auth choice prefers
86
+ both `volcengine/*` and `volcengine-plan/*` rows. If those models are not
87
+ loaded yet, Durar falls back to the unfiltered catalog instead of showing an
88
+ empty provider-scoped picker.
89
+
90
+ ## Environment note
91
+
92
+ If the Gateway runs as a daemon (launchd/systemd), make sure
93
+ `VOLCANO_ENGINE_API_KEY` is available to that process (for example, in
94
+ `~/.Durar/.env` or via `env.shellEnv`).
@@ -0,0 +1,94 @@
1
+ ---
2
+ summary: "Use xAI Grok models in Durar"
3
+ read_when:
4
+ - You want to use Grok models in Durar
5
+ - You are configuring xAI auth or model ids
6
+ title: "xAI"
7
+ ---
8
+
9
+ # xAI
10
+
11
+ Durar ships a bundled `xai` provider plugin for Grok models.
12
+
13
+ ## Setup
14
+
15
+ 1. Create an API key in the xAI console.
16
+ 2. Set `XAI_API_KEY`, or run:
17
+
18
+ ```bash
19
+ Durar onboard --auth-choice xai-api-key
20
+ ```
21
+
22
+ 3. Pick a model such as:
23
+
24
+ ```json5
25
+ {
26
+ agents: { defaults: { model: { primary: "xai/grok-4" } } },
27
+ }
28
+ ```
29
+
30
+ Durar now uses the xAI Responses API as the bundled xAI transport. The same
31
+ `XAI_API_KEY` can also power Grok-backed `web_search`, first-class `x_search`,
32
+ and remote `code_execution`.
33
+ If you store an xAI key under `plugins.entries.xai.config.webSearch.apiKey`,
34
+ the bundled xAI model provider now reuses that key as a fallback too.
35
+ `code_execution` tuning lives under `plugins.entries.xai.config.codeExecution`.
36
+
37
+ ## Current bundled model catalog
38
+
39
+ Durar now includes these xAI model families out of the box:
40
+
41
+ - `grok-3`, `grok-3-fast`, `grok-3-mini`, `grok-3-mini-fast`
42
+ - `grok-4`, `grok-4-0709`
43
+ - `grok-4-fast`, `grok-4-fast-non-reasoning`
44
+ - `grok-4-1-fast`, `grok-4-1-fast-non-reasoning`
45
+ - `grok-4.20-beta-latest-reasoning`, `grok-4.20-beta-latest-non-reasoning`
46
+ - `grok-code-fast-1`
47
+
48
+ The plugin also forward-resolves newer `grok-4*` and `grok-code-fast*` ids when
49
+ they follow the same API shape.
50
+
51
+ Fast-model notes:
52
+
53
+ - `grok-4-fast`, `grok-4-1-fast`, and the `grok-4.20-beta-*` variants are the
54
+ current image-capable Grok refs in the bundled catalog.
55
+ - `/fast on` or `agents.defaults.models["xai/<model>"].params.fastMode: true`
56
+ rewrites native xAI requests as follows:
57
+ - `grok-3` -> `grok-3-fast`
58
+ - `grok-3-mini` -> `grok-3-mini-fast`
59
+ - `grok-4` -> `grok-4-fast`
60
+ - `grok-4-0709` -> `grok-4-fast`
61
+
62
+ Legacy compatibility aliases still normalize to the canonical bundled ids. For
63
+ example:
64
+
65
+ - `grok-4-fast-reasoning` -> `grok-4-fast`
66
+ - `grok-4-1-fast-reasoning` -> `grok-4-1-fast`
67
+ - `grok-4.20-reasoning` -> `grok-4.20-beta-latest-reasoning`
68
+ - `grok-4.20-non-reasoning` -> `grok-4.20-beta-latest-non-reasoning`
69
+
70
+ ## Web search
71
+
72
+ The bundled `grok` web-search provider uses `XAI_API_KEY` too:
73
+
74
+ ```bash
75
+ Durar config set tools.web.search.provider grok
76
+ ```
77
+
78
+ ## Known limits
79
+
80
+ - Auth is API-key only today. There is no xAI OAuth/device-code flow in Durar yet.
81
+ - `grok-4.20-multi-agent-experimental-beta-0304` is not supported on the normal xAI provider path because it requires a different upstream API surface than the standard Durar xAI transport.
82
+
83
+ ## Notes
84
+
85
+ - Durar applies xAI-specific tool-schema and tool-call compatibility fixes automatically on the shared runner path.
86
+ - Native xAI requests default `tool_stream: true`. Set
87
+ `agents.defaults.models["xai/<model>"].params.tool_stream` to `false` to
88
+ disable it.
89
+ - The bundled xAI wrapper strips unsupported strict tool-schema flags and
90
+ reasoning payload keys before sending native xAI requests.
91
+ - `web_search`, `x_search`, and `code_execution` are exposed as Durar tools. Durar enables the specific xAI built-in it needs inside each tool request instead of attaching all native tools to every chat turn.
92
+ - `x_search` and `code_execution` are owned by the bundled xAI plugin rather than hardcoded into the core model runtime.
93
+ - `code_execution` is remote xAI sandbox execution, not local [`exec`](/tools/exec).
94
+ - For the broader provider overview, see [Model providers](/providers/index).
@@ -0,0 +1,89 @@
1
+ ---
2
+ summary: "Use Xiaomi MiMo models with Durar"
3
+ read_when:
4
+ - You want Xiaomi MiMo models in Durar
5
+ - You need XIAOMI_API_KEY setup
6
+ title: "Xiaomi MiMo"
7
+ ---
8
+
9
+ # Xiaomi MiMo
10
+
11
+ Xiaomi MiMo is the API platform for **MiMo** models. Durar uses the Xiaomi
12
+ OpenAI-compatible endpoint with API-key authentication. Create your API key in the
13
+ [Xiaomi MiMo console](https://platform.xiaomimimo.com/#/console/api-keys), then configure the
14
+ bundled `xiaomi` provider with that key.
15
+
16
+ ## Built-in catalog
17
+
18
+ - Base URL: `https://api.xiaomimimo.com/v1`
19
+ - API: `openai-completions`
20
+ - Authorization: `Bearer $XIAOMI_API_KEY`
21
+
22
+ | Model ref | Input | Context | Max output | Notes |
23
+ | ---------------------- | ----------- | --------- | ---------- | ---------------------------- |
24
+ | `xiaomi/mimo-v2-flash` | text | 262,144 | 8,192 | Default model |
25
+ | `xiaomi/mimo-v2-pro` | text | 1,048,576 | 32,000 | Reasoning-enabled |
26
+ | `xiaomi/mimo-v2-omni` | text, image | 262,144 | 32,000 | Reasoning-enabled multimodal |
27
+
28
+ ## CLI setup
29
+
30
+ ```bash
31
+ Durar onboard --auth-choice xiaomi-api-key
32
+ # or non-interactive
33
+ Durar onboard --auth-choice xiaomi-api-key --xiaomi-api-key "$XIAOMI_API_KEY"
34
+ ```
35
+
36
+ ## Config snippet
37
+
38
+ ```json5
39
+ {
40
+ env: { XIAOMI_API_KEY: "your-key" },
41
+ agents: { defaults: { model: { primary: "xiaomi/mimo-v2-flash" } } },
42
+ models: {
43
+ mode: "merge",
44
+ providers: {
45
+ xiaomi: {
46
+ baseUrl: "https://api.xiaomimimo.com/v1",
47
+ api: "openai-completions",
48
+ apiKey: "XIAOMI_API_KEY",
49
+ models: [
50
+ {
51
+ id: "mimo-v2-flash",
52
+ name: "Xiaomi MiMo V2 Flash",
53
+ reasoning: false,
54
+ input: ["text"],
55
+ cost: { input: 0, output: 0, cacheRead: 0, cacheWrite: 0 },
56
+ contextWindow: 262144,
57
+ maxTokens: 8192,
58
+ },
59
+ {
60
+ id: "mimo-v2-pro",
61
+ name: "Xiaomi MiMo V2 Pro",
62
+ reasoning: true,
63
+ input: ["text"],
64
+ cost: { input: 0, output: 0, cacheRead: 0, cacheWrite: 0 },
65
+ contextWindow: 1048576,
66
+ maxTokens: 32000,
67
+ },
68
+ {
69
+ id: "mimo-v2-omni",
70
+ name: "Xiaomi MiMo V2 Omni",
71
+ reasoning: true,
72
+ input: ["text", "image"],
73
+ cost: { input: 0, output: 0, cacheRead: 0, cacheWrite: 0 },
74
+ contextWindow: 262144,
75
+ maxTokens: 32000,
76
+ },
77
+ ],
78
+ },
79
+ },
80
+ },
81
+ }
82
+ ```
83
+
84
+ ## Notes
85
+
86
+ - Default model ref: `xiaomi/mimo-v2-flash`.
87
+ - Additional built-in models: `xiaomi/mimo-v2-pro`, `xiaomi/mimo-v2-omni`.
88
+ - The provider is injected automatically when `XIAOMI_API_KEY` is set (or an auth profile exists).
89
+ - See [/concepts/model-providers](/concepts/model-providers) for provider rules.
@@ -0,0 +1,75 @@
1
+ ---
2
+ summary: "Use Z.AI (GLM models) with Durar"
3
+ read_when:
4
+ - You want Z.AI / GLM models in Durar
5
+ - You need a simple ZAI_API_KEY setup
6
+ title: "Z.AI"
7
+ ---
8
+
9
+ # Z.AI
10
+
11
+ Z.AI is the API platform for **GLM** models. It provides REST APIs for GLM and uses API keys
12
+ for authentication. Create your API key in the Z.AI console. Durar uses the `zai` provider
13
+ with a Z.AI API key.
14
+
15
+ ## CLI setup
16
+
17
+ ```bash
18
+ # Generic API-key setup with endpoint auto-detection
19
+ Durar onboard --auth-choice zai-api-key
20
+
21
+ # Coding Plan Global, recommended for Coding Plan users
22
+ Durar onboard --auth-choice zai-coding-global
23
+
24
+ # Coding Plan CN (China region), recommended for Coding Plan users
25
+ Durar onboard --auth-choice zai-coding-cn
26
+
27
+ # General API
28
+ Durar onboard --auth-choice zai-global
29
+
30
+ # General API CN (China region)
31
+ Durar onboard --auth-choice zai-cn
32
+ ```
33
+
34
+ ## Config snippet
35
+
36
+ ```json5
37
+ {
38
+ env: { ZAI_API_KEY: "sk-..." },
39
+ agents: { defaults: { model: { primary: "zai/glm-5" } } },
40
+ }
41
+ ```
42
+
43
+ `zai-api-key` lets Durar detect the matching Z.AI endpoint from the key and
44
+ apply the correct base URL automatically. Use the explicit regional choices when
45
+ you want to force a specific Coding Plan or general API surface.
46
+
47
+ ## Bundled GLM catalog
48
+
49
+ Durar currently seeds the bundled `zai` provider with:
50
+
51
+ - `glm-5.1`
52
+ - `glm-5`
53
+ - `glm-5-turbo`
54
+ - `glm-5v-turbo`
55
+ - `glm-4.7`
56
+ - `glm-4.7-flash`
57
+ - `glm-4.7-flashx`
58
+ - `glm-4.6`
59
+ - `glm-4.6v`
60
+ - `glm-4.5`
61
+ - `glm-4.5-air`
62
+ - `glm-4.5-flash`
63
+ - `glm-4.5v`
64
+
65
+ ## Notes
66
+
67
+ - GLM models are available as `zai/<model>` (example: `zai/glm-5`).
68
+ - Default bundled model ref: `zai/glm-5`
69
+ - Unknown `glm-5*` ids still forward-resolve on the bundled provider path by
70
+ synthesizing provider-owned metadata from the `glm-4.7` template when the id
71
+ matches the current GLM-5 family shape.
72
+ - `tool_stream` is enabled by default for Z.AI tool-call streaming. Set
73
+ `agents.defaults.models["zai/<model>"].params.tool_stream` to `false` to disable it.
74
+ - See [/providers/glm](/providers/glm) for the model family overview.
75
+ - Z.AI uses Bearer auth with your API key.
@@ -0,0 +1,126 @@
1
+ ---
2
+ title: "Default AGENTS.md"
3
+ summary: "Default Durar agent instructions and skills roster for the personal assistant setup"
4
+ read_when:
5
+ - Starting a new Durar agent session
6
+ - Enabling or auditing default skills
7
+ ---
8
+
9
+ # AGENTS.md - Durar Personal Assistant (default)
10
+
11
+ ## First run (recommended)
12
+
13
+ Durar uses a dedicated workspace directory for the agent. Default: `~/.Durar/workspace` (configurable via `agents.defaults.workspace`).
14
+
15
+ 1. Create the workspace (if it doesn’t already exist):
16
+
17
+ ```bash
18
+ mkdir -p ~/.Durar/workspace
19
+ ```
20
+
21
+ 2. Copy the default workspace templates into the workspace:
22
+
23
+ ```bash
24
+ cp docs/reference/templates/AGENTS.md ~/.Durar/workspace/AGENTS.md
25
+ cp docs/reference/templates/SOUL.md ~/.Durar/workspace/SOUL.md
26
+ cp docs/reference/templates/TOOLS.md ~/.Durar/workspace/TOOLS.md
27
+ ```
28
+
29
+ 3. Optional: if you want the personal assistant skill roster, replace AGENTS.md with this file:
30
+
31
+ ```bash
32
+ cp docs/reference/AGENTS.default.md ~/.Durar/workspace/AGENTS.md
33
+ ```
34
+
35
+ 4. Optional: choose a different workspace by setting `agents.defaults.workspace` (supports `~`):
36
+
37
+ ```json5
38
+ {
39
+ agents: { defaults: { workspace: "~/.Durar/workspace" } },
40
+ }
41
+ ```
42
+
43
+ ## Safety defaults
44
+
45
+ - Don’t dump directories or secrets into chat.
46
+ - Don’t run destructive commands unless explicitly asked.
47
+ - Don’t send partial/streaming replies to external messaging surfaces (only final replies).
48
+
49
+ ## Session start (required)
50
+
51
+ - Read `SOUL.md`, `USER.md`, and today+yesterday in `memory/`.
52
+ - Read `MEMORY.md` when present; only fall back to lowercase `memory.md` when `MEMORY.md` is absent.
53
+ - Do it before responding.
54
+
55
+ ## Soul (required)
56
+
57
+ - `SOUL.md` defines identity, tone, and boundaries. Keep it current.
58
+ - If you change `SOUL.md`, tell the user.
59
+ - You are a fresh instance each session; continuity lives in these files.
60
+
61
+ ## Shared spaces (recommended)
62
+
63
+ - You’re not the user’s voice; be careful in group chats or public channels.
64
+ - Don’t share private data, contact info, or internal notes.
65
+
66
+ ## Memory system (recommended)
67
+
68
+ - Daily log: `memory/YYYY-MM-DD.md` (create `memory/` if needed).
69
+ - Long-term memory: `MEMORY.md` for durable facts, preferences, and decisions.
70
+ - Lowercase `memory.md` is legacy fallback only; do not keep both root files on purpose.
71
+ - On session start, read today + yesterday + `MEMORY.md` when present, otherwise `memory.md`.
72
+ - Capture: decisions, preferences, constraints, open loops.
73
+ - Avoid secrets unless explicitly requested.
74
+
75
+ ## Tools & skills
76
+
77
+ - Tools live in skills; follow each skill’s `SKILL.md` when you need it.
78
+ - Keep environment-specific notes in `TOOLS.md` (Notes for Skills).
79
+
80
+ ## Backup tip (recommended)
81
+
82
+ If you treat this workspace as Clawd’s “memory”, make it a git repo (ideally private) so `AGENTS.md` and your memory files are backed up.
83
+
84
+ ```bash
85
+ cd ~/.Durar/workspace
86
+ git init
87
+ git add AGENTS.md
88
+ git commit -m "Add Clawd workspace"
89
+ # Optional: add a private remote + push
90
+ ```
91
+
92
+ ## What Durar Does
93
+
94
+ - Runs WhatsApp gateway + Pi coding agent so the assistant can read/write chats, fetch context, and run skills via the host Mac.
95
+ - macOS app manages permissions (screen recording, notifications, microphone) and exposes the `Durar` CLI via its bundled binary.
96
+ - Direct chats collapse into the agent's `main` session by default; groups stay isolated as `agent:<agentId>:<channel>:group:<id>` (rooms/channels: `agent:<agentId>:<channel>:channel:<id>`); heartbeats keep background tasks alive.
97
+
98
+ ## Core Skills (enable in Settings → Skills)
99
+
100
+ - **mcporter** — Tool server runtime/CLI for managing external skill backends.
101
+ - **Peekaboo** — Fast macOS screenshots with optional AI vision analysis.
102
+ - **camsnap** — Capture frames, clips, or motion alerts from RTSP/ONVIF security cams.
103
+ - **oracle** — OpenAI-ready agent CLI with session replay and browser control.
104
+ - **eightctl** — Control your sleep, from the terminal.
105
+ - **imsg** — Send, read, stream iMessage & SMS.
106
+ - **wacli** — WhatsApp CLI: sync, search, send.
107
+ - **discord** — Discord actions: react, stickers, polls. Use `user:<id>` or `channel:<id>` targets (bare numeric ids are ambiguous).
108
+ - **gog** — Google Suite CLI: Gmail, Calendar, Drive, Contacts.
109
+ - **spotify-player** — Terminal Spotify client to search/queue/control playback.
110
+ - **sag** — ElevenLabs speech with mac-style say UX; streams to speakers by default.
111
+ - **Sonos CLI** — Control Sonos speakers (discover/status/playback/volume/grouping) from scripts.
112
+ - **blucli** — Play, group, and automate BluOS players from scripts.
113
+ - **OpenHue CLI** — Philips Hue lighting control for scenes and automations.
114
+ - **OpenAI Whisper** — Local speech-to-text for quick dictation and voicemail transcripts.
115
+ - **Gemini CLI** — Google Gemini models from the terminal for fast Q&A.
116
+ - **agent-tools** — Utility toolkit for automations and helper scripts.
117
+
118
+ ## Usage Notes
119
+
120
+ - Prefer the `Durar` CLI for scripting; mac app handles permissions.
121
+ - Run installs from the Skills tab; it hides the button if a binary is already present.
122
+ - Keep heartbeats enabled so the assistant can schedule reminders, monitor inboxes, and trigger camera captures.
123
+ - Canvas UI runs full-screen with native overlays. Avoid placing critical controls in the top-left/top-right/bottom edges; add explicit gutters in the layout and don’t rely on safe-area insets.
124
+ - For browser-driven verification, use `Durar browser` (tabs/status/screenshot) with the Durar-managed Chrome profile.
125
+ - For DOM inspection, use `Durar browser eval|query|dom|snapshot` (and `--json`/`--out` when you need machine output).
126
+ - For interactions, use `Durar browser click|type|hover|drag|select|upload|press|wait|navigate|back|evaluate|run` (click/type require snapshot refs; use `evaluate` for CSS selectors).
@@ -0,0 +1,138 @@
1
+ ---
2
+ title: "Release Policy"
3
+ summary: "Public release channels, version naming, and cadence"
4
+ read_when:
5
+ - Looking for public release channel definitions
6
+ - Looking for version naming and cadence
7
+ ---
8
+
9
+ # Release Policy
10
+
11
+ Durar has three public release lanes:
12
+
13
+ - stable: tagged releases that publish to npm `beta` by default, or to npm `latest` when explicitly requested
14
+ - beta: prerelease tags that publish to npm `beta`
15
+ - dev: the moving head of `main`
16
+
17
+ ## Version naming
18
+
19
+ - Stable release version: `YYYY.M.D`
20
+ - Git tag: `vYYYY.M.D`
21
+ - Stable correction release version: `YYYY.M.D-N`
22
+ - Git tag: `vYYYY.M.D-N`
23
+ - Beta prerelease version: `YYYY.M.D-beta.N`
24
+ - Git tag: `vYYYY.M.D-beta.N`
25
+ - Do not zero-pad month or day
26
+ - `latest` means the current promoted stable npm release
27
+ - `beta` means the current beta install target
28
+ - Stable and stable correction releases publish to npm `beta` by default; release operators can target `latest` explicitly, or promote a vetted beta build later
29
+ - Every Durar release ships the npm package and macOS app together
30
+
31
+ ## Release cadence
32
+
33
+ - Releases move beta-first
34
+ - Stable follows only after the latest beta is validated
35
+ - Detailed release procedure, approvals, credentials, and recovery notes are
36
+ maintainer-only
37
+
38
+ ## Release preflight
39
+
40
+ - Run `pnpm build && pnpm ui:build` before `pnpm release:check` so the expected
41
+ `dist/*` release artifacts and Control UI bundle exist for the pack
42
+ validation step
43
+ - Run `pnpm release:check` before every tagged release
44
+ - Main-branch npm preflight also runs
45
+ `Durar_LIVE_TEST=1 Durar_LIVE_CACHE_TEST=1 pnpm test:live:cache`
46
+ before packaging the tarball, using both `OPENAI_API_KEY` and
47
+ `ANTHROPIC_API_KEY` workflow secrets
48
+ - Run `RELEASE_TAG=vYYYY.M.D node --import tsx scripts/Durar-npm-release-check.ts`
49
+ (or the matching beta/correction tag) before approval
50
+ - After npm publish, run
51
+ `node --import tsx scripts/Durar-npm-postpublish-verify.ts YYYY.M.D`
52
+ (or the matching beta/correction version) to verify the published registry
53
+ install path in a fresh temp prefix
54
+ - Maintainer release automation now uses preflight-then-promote:
55
+ - real npm publish must pass a successful npm `preflight_run_id`
56
+ - stable npm releases default to `beta`
57
+ - stable npm publish can target `latest` explicitly via workflow input
58
+ - stable npm promotion from `beta` to `latest` is still available as an explicit manual mode on the trusted `Durar NPM Release` workflow
59
+ - that promotion mode still needs a valid `NPM_TOKEN` in the `npm-release` environment because npm `dist-tag` management is separate from trusted publishing
60
+ - public `macOS Release` is validation-only
61
+ - real private mac publish must pass successful private mac
62
+ `preflight_run_id` and `validate_run_id`
63
+ - the real publish paths promote prepared artifacts instead of rebuilding
64
+ them again
65
+ - For stable correction releases like `YYYY.M.D-N`, the post-publish verifier
66
+ also checks the same temp-prefix upgrade path from `YYYY.M.D` to `YYYY.M.D-N`
67
+ so release corrections cannot silently leave older global installs on the
68
+ base stable payload
69
+ - npm release preflight fails closed unless the tarball includes both
70
+ `dist/control-ui/index.html` and a non-empty `dist/control-ui/assets/` payload
71
+ so we do not ship an empty browser dashboard again
72
+ - If the release work touched CI planning, extension timing manifests, or fast
73
+ test matrices, regenerate and review the planner-owned `checks-fast-extensions`
74
+ workflow matrix outputs from `.github/workflows/ci.yml`
75
+ before approval so release notes do not describe a stale CI layout
76
+ - Stable macOS release readiness also includes the updater surfaces:
77
+ - the GitHub release must end up with the packaged `.zip`, `.dmg`, and `.dSYM.zip`
78
+ - `appcast.xml` on `main` must point at the new stable zip after publish
79
+ - the packaged app must keep a non-debug bundle id, a non-empty Sparkle feed
80
+ URL, and a `CFBundleVersion` at or above the canonical Sparkle build floor
81
+ for that release version
82
+
83
+ ## NPM workflow inputs
84
+
85
+ `Durar NPM Release` accepts these operator-controlled inputs:
86
+
87
+ - `tag`: required release tag such as `v2026.4.2`, `v2026.4.2-1`, or
88
+ `v2026.4.2-beta.1`
89
+ - `preflight_only`: `true` for validation/build/package only, `false` for the
90
+ real publish path
91
+ - `preflight_run_id`: required on the real publish path so the workflow reuses
92
+ the prepared tarball from the successful preflight run
93
+ - `npm_dist_tag`: npm target tag for the publish path; defaults to `beta`
94
+ - `promote_beta_to_latest`: `true` to skip publish and move an already-published
95
+ stable `beta` build onto `latest`
96
+
97
+ Rules:
98
+
99
+ - Stable and correction tags may publish to either `beta` or `latest`
100
+ - Beta prerelease tags may publish only to `beta`
101
+ - The real publish path must use the same `npm_dist_tag` used during preflight;
102
+ the workflow verifies that metadata before publish continues
103
+ - Promotion mode must use a stable or correction tag, `preflight_only=false`,
104
+ an empty `preflight_run_id`, and `npm_dist_tag=beta`
105
+ - Promotion mode also requires a valid `NPM_TOKEN` in the `npm-release`
106
+ environment because `npm dist-tag add` still needs regular npm auth
107
+
108
+ ## Stable npm release sequence
109
+
110
+ When cutting a stable npm release:
111
+
112
+ 1. Run `Durar NPM Release` with `preflight_only=true`
113
+ 2. Choose `npm_dist_tag=beta` for the normal beta-first flow, or `latest` only
114
+ when you intentionally want a direct stable publish
115
+ 3. Save the successful `preflight_run_id`
116
+ 4. Run `Durar NPM Release` again with `preflight_only=false`, the same
117
+ `tag`, the same `npm_dist_tag`, and the saved `preflight_run_id`
118
+ 5. If the release landed on `beta`, run `Durar NPM Release` later with the
119
+ same stable `tag`, `promote_beta_to_latest=true`, `preflight_only=false`,
120
+ `preflight_run_id` empty, and `npm_dist_tag=beta` when you want to move that
121
+ published build to `latest`
122
+
123
+ The promotion mode still requires the `npm-release` environment approval and a
124
+ valid `NPM_TOKEN` in that environment.
125
+
126
+ That keeps the direct publish path and the beta-first promotion path both
127
+ documented and operator-visible.
128
+
129
+ ## Public references
130
+
131
+ - [`.github/workflows/Durar-npm-release.yml`](https://github.com/openclaw/openclaw/blob/main/.github/workflows/Durar-npm-release.yml)
132
+ - [`scripts/Durar-npm-release-check.ts`](https://github.com/openclaw/openclaw/blob/main/scripts/Durar-npm-release-check.ts)
133
+ - [`scripts/package-mac-dist.sh`](https://github.com/openclaw/openclaw/blob/main/scripts/package-mac-dist.sh)
134
+ - [`scripts/make_appcast.sh`](https://github.com/openclaw/openclaw/blob/main/scripts/make_appcast.sh)
135
+
136
+ Maintainers use the private release docs in
137
+ [`Durar/maintainers/release/README.md`](https://github.com/Durar/maintainers/blob/main/release/README.md)
138
+ for the actual runbook.