nodmix 2026.5.25

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 (827) hide show
  1. package/CHANGELOG.md +11573 -0
  2. package/LICENSE +21 -0
  3. package/README.md +486 -0
  4. package/docs/.i18n/README.md +81 -0
  5. package/docs/.i18n/ar-navigation.json +18 -0
  6. package/docs/.i18n/de-navigation.json +18 -0
  7. package/docs/.i18n/es-navigation.json +18 -0
  8. package/docs/.i18n/fr-navigation.json +18 -0
  9. package/docs/.i18n/glossary.ar.json +78 -0
  10. package/docs/.i18n/glossary.de.json +78 -0
  11. package/docs/.i18n/glossary.es.json +78 -0
  12. package/docs/.i18n/glossary.fa.json +78 -0
  13. package/docs/.i18n/glossary.fr.json +78 -0
  14. package/docs/.i18n/glossary.id.json +78 -0
  15. package/docs/.i18n/glossary.it.json +78 -0
  16. package/docs/.i18n/glossary.ja-JP.json +98 -0
  17. package/docs/.i18n/glossary.ko.json +78 -0
  18. package/docs/.i18n/glossary.nl.json +78 -0
  19. package/docs/.i18n/glossary.pl.json +78 -0
  20. package/docs/.i18n/glossary.pt-BR.json +78 -0
  21. package/docs/.i18n/glossary.th.json +78 -0
  22. package/docs/.i18n/glossary.tr.json +78 -0
  23. package/docs/.i18n/glossary.uk.json +78 -0
  24. package/docs/.i18n/glossary.vi.json +78 -0
  25. package/docs/.i18n/glossary.zh-CN.json +1002 -0
  26. package/docs/.i18n/glossary.zh-TW.json +78 -0
  27. package/docs/.i18n/id-navigation.json +18 -0
  28. package/docs/.i18n/it-navigation.json +18 -0
  29. package/docs/.i18n/ja-navigation.json +18 -0
  30. package/docs/.i18n/ko-navigation.json +18 -0
  31. package/docs/.i18n/pl-navigation.json +18 -0
  32. package/docs/.i18n/pt-BR-navigation.json +18 -0
  33. package/docs/.i18n/tr-navigation.json +18 -0
  34. package/docs/.i18n/translation-workflow.md +111 -0
  35. package/docs/.i18n/zh-Hans-navigation.json +542 -0
  36. package/docs/AGENTS.md +36 -0
  37. package/docs/announcements/bluebubbles-imessage.md +79 -0
  38. package/docs/assets/install-script.svg +1 -0
  39. package/docs/assets/macos-onboarding/01-macos-warning.jpeg +0 -0
  40. package/docs/assets/macos-onboarding/02-local-networks.jpeg +0 -0
  41. package/docs/assets/macos-onboarding/03-security-notice.png +0 -0
  42. package/docs/assets/macos-onboarding/04-choose-gateway.png +0 -0
  43. package/docs/assets/macos-onboarding/05-permissions.png +0 -0
  44. package/docs/assets/openclaw-logo-text-dark.png +0 -0
  45. package/docs/assets/openclaw-logo-text-dark.svg +418 -0
  46. package/docs/assets/openclaw-logo-text.png +0 -0
  47. package/docs/assets/openclaw-logo-text.svg +418 -0
  48. package/docs/assets/pixel-lobster.svg +60 -0
  49. package/docs/assets/pr/quick-settings-browser-tools.png +0 -0
  50. package/docs/assets/showcase/agents-ui.jpg +0 -0
  51. package/docs/assets/showcase/bambu-cli.png +0 -0
  52. package/docs/assets/showcase/codexmonitor.png +0 -0
  53. package/docs/assets/showcase/gohome-grafana.png +0 -0
  54. package/docs/assets/showcase/ios-testflight.jpg +0 -0
  55. package/docs/assets/showcase/oura-health.png +0 -0
  56. package/docs/assets/showcase/padel-cli.svg +11 -0
  57. package/docs/assets/showcase/padel-screenshot.jpg +0 -0
  58. package/docs/assets/showcase/papla-tts.jpg +0 -0
  59. package/docs/assets/showcase/pr-review-telegram.jpg +0 -0
  60. package/docs/assets/showcase/roborock-screenshot.jpg +0 -0
  61. package/docs/assets/showcase/roborock-status.svg +13 -0
  62. package/docs/assets/showcase/roof-camera-sky.jpg +0 -0
  63. package/docs/assets/showcase/snag.png +0 -0
  64. package/docs/assets/showcase/tesco-shop.jpg +0 -0
  65. package/docs/assets/showcase/wienerlinien.png +0 -0
  66. package/docs/assets/showcase/wine-cellar-skill.jpg +0 -0
  67. package/docs/assets/showcase/winix-air-purifier.jpg +0 -0
  68. package/docs/assets/showcase/xuezh-pronunciation.jpeg +0 -0
  69. package/docs/assets/sponsors/blacksmith-light.svg +14 -0
  70. package/docs/assets/sponsors/blacksmith.svg +14 -0
  71. package/docs/assets/sponsors/convex-light.svg +16 -0
  72. package/docs/assets/sponsors/convex.svg +16 -0
  73. package/docs/assets/sponsors/github-light.svg +3 -0
  74. package/docs/assets/sponsors/github.svg +3 -0
  75. package/docs/assets/sponsors/nvidia-dark.svg +9 -0
  76. package/docs/assets/sponsors/nvidia.svg +9 -0
  77. package/docs/assets/sponsors/openai-light.svg +3 -0
  78. package/docs/assets/sponsors/openai.svg +3 -0
  79. package/docs/assets/sponsors/vercel-light.svg +5 -0
  80. package/docs/assets/sponsors/vercel.svg +5 -0
  81. package/docs/auth-credential-semantics.md +124 -0
  82. package/docs/automation/auth-monitoring.md +11 -0
  83. package/docs/automation/clawflow.md +12 -0
  84. package/docs/automation/cron-jobs.md +500 -0
  85. package/docs/automation/cron-vs-heartbeat.md +11 -0
  86. package/docs/automation/gmail-pubsub.md +11 -0
  87. package/docs/automation/hooks.md +365 -0
  88. package/docs/automation/index.md +135 -0
  89. package/docs/automation/poll.md +12 -0
  90. package/docs/automation/standing-orders.md +250 -0
  91. package/docs/automation/taskflow.md +155 -0
  92. package/docs/automation/tasks.md +374 -0
  93. package/docs/automation/troubleshooting.md +12 -0
  94. package/docs/automation/webhook.md +12 -0
  95. package/docs/brave-search.md +11 -0
  96. package/docs/channels/access-groups.md +201 -0
  97. package/docs/channels/ambient-room-events.md +214 -0
  98. package/docs/channels/bot-loop-protection.md +131 -0
  99. package/docs/channels/broadcast-groups.md +472 -0
  100. package/docs/channels/channel-routing.md +162 -0
  101. package/docs/channels/clickclack.md +138 -0
  102. package/docs/channels/discord.md +1762 -0
  103. package/docs/channels/feishu.md +502 -0
  104. package/docs/channels/googlechat.md +284 -0
  105. package/docs/channels/group-messages.md +95 -0
  106. package/docs/channels/groups.md +519 -0
  107. package/docs/channels/imessage-from-bluebubbles.md +259 -0
  108. package/docs/channels/imessage.md +813 -0
  109. package/docs/channels/index.md +64 -0
  110. package/docs/channels/irc.md +253 -0
  111. package/docs/channels/line.md +243 -0
  112. package/docs/channels/location.md +71 -0
  113. package/docs/channels/matrix-migration.md +370 -0
  114. package/docs/channels/matrix-presentation.md +77 -0
  115. package/docs/channels/matrix-push-rules.md +150 -0
  116. package/docs/channels/matrix.md +921 -0
  117. package/docs/channels/mattermost.md +542 -0
  118. package/docs/channels/msteams.md +1042 -0
  119. package/docs/channels/nextcloud-talk.md +176 -0
  120. package/docs/channels/nostr.md +253 -0
  121. package/docs/channels/pairing.md +214 -0
  122. package/docs/channels/qqbot.md +309 -0
  123. package/docs/channels/signal.md +400 -0
  124. package/docs/channels/slack.md +1564 -0
  125. package/docs/channels/synology-chat.md +187 -0
  126. package/docs/channels/telegram.md +1107 -0
  127. package/docs/channels/tlon.md +296 -0
  128. package/docs/channels/troubleshooting.md +161 -0
  129. package/docs/channels/twitch.md +431 -0
  130. package/docs/channels/wechat.md +171 -0
  131. package/docs/channels/whatsapp.md +739 -0
  132. package/docs/channels/yuanbao.md +416 -0
  133. package/docs/channels/zalo.md +253 -0
  134. package/docs/channels/zalouser.md +199 -0
  135. package/docs/ci.md +612 -0
  136. package/docs/clawhub/publishing.md +96 -0
  137. package/docs/cli/acp.md +370 -0
  138. package/docs/cli/agent.md +103 -0
  139. package/docs/cli/agents.md +232 -0
  140. package/docs/cli/approvals.md +190 -0
  141. package/docs/cli/backup.md +97 -0
  142. package/docs/cli/browser.md +307 -0
  143. package/docs/cli/channels.md +154 -0
  144. package/docs/cli/clawbot.md +25 -0
  145. package/docs/cli/commitments.md +90 -0
  146. package/docs/cli/completion.md +39 -0
  147. package/docs/cli/config.md +504 -0
  148. package/docs/cli/configure.md +77 -0
  149. package/docs/cli/crestodian.md +332 -0
  150. package/docs/cli/cron.md +281 -0
  151. package/docs/cli/daemon.md +67 -0
  152. package/docs/cli/dashboard.md +33 -0
  153. package/docs/cli/devices.md +204 -0
  154. package/docs/cli/directory.md +68 -0
  155. package/docs/cli/dns.md +53 -0
  156. package/docs/cli/docs.md +73 -0
  157. package/docs/cli/doctor.md +237 -0
  158. package/docs/cli/flows.md +52 -0
  159. package/docs/cli/gateway.md +567 -0
  160. package/docs/cli/health.md +43 -0
  161. package/docs/cli/hooks.md +345 -0
  162. package/docs/cli/index.md +396 -0
  163. package/docs/cli/infer.md +364 -0
  164. package/docs/cli/logs.md +65 -0
  165. package/docs/cli/mcp.md +529 -0
  166. package/docs/cli/memory.md +183 -0
  167. package/docs/cli/message.md +317 -0
  168. package/docs/cli/migrate.md +290 -0
  169. package/docs/cli/models.md +224 -0
  170. package/docs/cli/node.md +177 -0
  171. package/docs/cli/nodes.md +76 -0
  172. package/docs/cli/onboard.md +245 -0
  173. package/docs/cli/pairing.md +77 -0
  174. package/docs/cli/path.md +502 -0
  175. package/docs/cli/plugins.md +454 -0
  176. package/docs/cli/policy.md +418 -0
  177. package/docs/cli/proxy.md +89 -0
  178. package/docs/cli/qr.md +56 -0
  179. package/docs/cli/reset.md +39 -0
  180. package/docs/cli/sandbox.md +208 -0
  181. package/docs/cli/secrets.md +202 -0
  182. package/docs/cli/security.md +124 -0
  183. package/docs/cli/sessions.md +164 -0
  184. package/docs/cli/setup.md +59 -0
  185. package/docs/cli/skills.md +102 -0
  186. package/docs/cli/status.md +45 -0
  187. package/docs/cli/system.md +89 -0
  188. package/docs/cli/tasks.md +111 -0
  189. package/docs/cli/tui.md +89 -0
  190. package/docs/cli/uninstall.md +44 -0
  191. package/docs/cli/update.md +242 -0
  192. package/docs/cli/voicecall.md +204 -0
  193. package/docs/cli/webhooks.md +117 -0
  194. package/docs/cli/wiki.md +256 -0
  195. package/docs/concepts/active-memory.md +856 -0
  196. package/docs/concepts/agent-loop.md +185 -0
  197. package/docs/concepts/agent-runtimes.md +243 -0
  198. package/docs/concepts/agent-workspace.md +230 -0
  199. package/docs/concepts/agent.md +136 -0
  200. package/docs/concepts/architecture.md +154 -0
  201. package/docs/concepts/channel-docking.md +145 -0
  202. package/docs/concepts/commitments.md +150 -0
  203. package/docs/concepts/compaction.md +203 -0
  204. package/docs/concepts/context-engine.md +306 -0
  205. package/docs/concepts/context.md +199 -0
  206. package/docs/concepts/delegate-architecture.md +319 -0
  207. package/docs/concepts/dreaming.md +261 -0
  208. package/docs/concepts/experimental-features.md +108 -0
  209. package/docs/concepts/features.md +91 -0
  210. package/docs/concepts/mantis-slack-desktop-runbook.md +202 -0
  211. package/docs/concepts/mantis.md +740 -0
  212. package/docs/concepts/markdown-formatting.md +139 -0
  213. package/docs/concepts/memory-builtin.md +146 -0
  214. package/docs/concepts/memory-honcho.md +144 -0
  215. package/docs/concepts/memory-qmd.md +271 -0
  216. package/docs/concepts/memory-search.md +166 -0
  217. package/docs/concepts/memory.md +258 -0
  218. package/docs/concepts/message-lifecycle-refactor.md +1128 -0
  219. package/docs/concepts/messages.md +214 -0
  220. package/docs/concepts/model-failover.md +385 -0
  221. package/docs/concepts/model-providers.md +715 -0
  222. package/docs/concepts/models.md +370 -0
  223. package/docs/concepts/multi-agent.md +619 -0
  224. package/docs/concepts/oauth.md +198 -0
  225. package/docs/concepts/openclaw-sdk.md +323 -0
  226. package/docs/concepts/parallel-specialist-lanes.md +127 -0
  227. package/docs/concepts/personal-agent-benchmark-pack.md +74 -0
  228. package/docs/concepts/presence.md +117 -0
  229. package/docs/concepts/progress-drafts.md +362 -0
  230. package/docs/concepts/qa-e2e-automation.md +820 -0
  231. package/docs/concepts/qa-matrix.md +139 -0
  232. package/docs/concepts/queue-steering.md +90 -0
  233. package/docs/concepts/queue.md +122 -0
  234. package/docs/concepts/retry.md +86 -0
  235. package/docs/concepts/session-pruning.md +104 -0
  236. package/docs/concepts/session-tool.md +190 -0
  237. package/docs/concepts/session.md +164 -0
  238. package/docs/concepts/soul.md +116 -0
  239. package/docs/concepts/streaming.md +251 -0
  240. package/docs/concepts/system-prompt.md +310 -0
  241. package/docs/concepts/timezone.md +47 -0
  242. package/docs/concepts/typebox.md +309 -0
  243. package/docs/concepts/typing-indicators.md +88 -0
  244. package/docs/concepts/usage-tracking.md +66 -0
  245. package/docs/date-time.md +126 -0
  246. package/docs/debug/node-issue.md +90 -0
  247. package/docs/diagnostics/flags.md +138 -0
  248. package/docs/docs.json +1832 -0
  249. package/docs/gateway/authentication.md +239 -0
  250. package/docs/gateway/background-process.md +147 -0
  251. package/docs/gateway/bonjour.md +303 -0
  252. package/docs/gateway/bridge-protocol.md +94 -0
  253. package/docs/gateway/cli-backends.md +420 -0
  254. package/docs/gateway/config-agents.md +1514 -0
  255. package/docs/gateway/config-channels.md +945 -0
  256. package/docs/gateway/config-tools.md +769 -0
  257. package/docs/gateway/configuration-examples.md +705 -0
  258. package/docs/gateway/configuration-reference.md +1393 -0
  259. package/docs/gateway/configuration.md +737 -0
  260. package/docs/gateway/diagnostics.md +213 -0
  261. package/docs/gateway/discovery.md +154 -0
  262. package/docs/gateway/doctor.md +574 -0
  263. package/docs/gateway/gateway-lock.md +37 -0
  264. package/docs/gateway/health.md +73 -0
  265. package/docs/gateway/heartbeat.md +493 -0
  266. package/docs/gateway/index.md +383 -0
  267. package/docs/gateway/local-model-services.md +205 -0
  268. package/docs/gateway/local-models.md +355 -0
  269. package/docs/gateway/logging.md +149 -0
  270. package/docs/gateway/multiple-gateways.md +178 -0
  271. package/docs/gateway/network-model.md +15 -0
  272. package/docs/gateway/openai-http-api.md +350 -0
  273. package/docs/gateway/openresponses-http-api.md +347 -0
  274. package/docs/gateway/openshell.md +316 -0
  275. package/docs/gateway/opentelemetry.md +404 -0
  276. package/docs/gateway/operator-scopes.md +111 -0
  277. package/docs/gateway/pairing.md +207 -0
  278. package/docs/gateway/prometheus.md +230 -0
  279. package/docs/gateway/protocol.md +803 -0
  280. package/docs/gateway/remote-gateway-readme.md +169 -0
  281. package/docs/gateway/remote.md +280 -0
  282. package/docs/gateway/sandbox-vs-tool-policy-vs-elevated.md +146 -0
  283. package/docs/gateway/sandboxing.md +545 -0
  284. package/docs/gateway/secrets-plan-contract.md +114 -0
  285. package/docs/gateway/secrets.md +609 -0
  286. package/docs/gateway/security/audit-checks.md +127 -0
  287. package/docs/gateway/security/index.md +1326 -0
  288. package/docs/gateway/security/secure-file-operations.md +76 -0
  289. package/docs/gateway/tailscale.md +156 -0
  290. package/docs/gateway/tools-invoke-http-api.md +169 -0
  291. package/docs/gateway/troubleshooting.md +772 -0
  292. package/docs/gateway/trusted-proxy-auth.md +451 -0
  293. package/docs/help/debugging.md +344 -0
  294. package/docs/help/environment.md +214 -0
  295. package/docs/help/faq-first-run.md +867 -0
  296. package/docs/help/faq-models.md +553 -0
  297. package/docs/help/faq.md +1975 -0
  298. package/docs/help/gpt55-codex-agentic-parity-maintainers.md +196 -0
  299. package/docs/help/gpt55-codex-agentic-parity.md +230 -0
  300. package/docs/help/index.md +39 -0
  301. package/docs/help/scripts.md +56 -0
  302. package/docs/help/testing-live.md +580 -0
  303. package/docs/help/testing-updates-plugins.md +291 -0
  304. package/docs/help/testing.md +928 -0
  305. package/docs/help/troubleshooting.md +424 -0
  306. package/docs/images/configure-model-picker-unsearchable.png +0 -0
  307. package/docs/images/feishu-get-group-id.png +0 -0
  308. package/docs/images/groups-flow.svg +52 -0
  309. package/docs/images/mobile-ui-screenshot.png +0 -0
  310. package/docs/index.md +196 -0
  311. package/docs/install/ansible.md +233 -0
  312. package/docs/install/azure.md +315 -0
  313. package/docs/install/bun.md +59 -0
  314. package/docs/install/clawdock.md +112 -0
  315. package/docs/install/development-channels.md +135 -0
  316. package/docs/install/digitalocean.md +174 -0
  317. package/docs/install/docker-vm-runtime.md +154 -0
  318. package/docs/install/docker.md +562 -0
  319. package/docs/install/exe-dev.md +201 -0
  320. package/docs/install/fly.md +524 -0
  321. package/docs/install/gcp.md +418 -0
  322. package/docs/install/hetzner.md +285 -0
  323. package/docs/install/hostinger.md +98 -0
  324. package/docs/install/index.md +221 -0
  325. package/docs/install/installer.md +455 -0
  326. package/docs/install/kubernetes.md +196 -0
  327. package/docs/install/macos-vm.md +281 -0
  328. package/docs/install/migrating-claude.md +165 -0
  329. package/docs/install/migrating-hermes.md +177 -0
  330. package/docs/install/migrating.md +137 -0
  331. package/docs/install/nix.md +112 -0
  332. package/docs/install/node.md +142 -0
  333. package/docs/install/northflank.mdx +44 -0
  334. package/docs/install/oracle.md +218 -0
  335. package/docs/install/podman.md +210 -0
  336. package/docs/install/railway.mdx +92 -0
  337. package/docs/install/raspberry-pi.md +234 -0
  338. package/docs/install/render.mdx +167 -0
  339. package/docs/install/uninstall.md +131 -0
  340. package/docs/install/updating.md +280 -0
  341. package/docs/logging.md +318 -0
  342. package/docs/nav-tabs-underline.js +100 -0
  343. package/docs/network.md +72 -0
  344. package/docs/nodes/audio.md +215 -0
  345. package/docs/nodes/camera.md +166 -0
  346. package/docs/nodes/images.md +77 -0
  347. package/docs/nodes/index.md +439 -0
  348. package/docs/nodes/location-command.md +102 -0
  349. package/docs/nodes/media-understanding.md +469 -0
  350. package/docs/nodes/talk.md +154 -0
  351. package/docs/nodes/troubleshooting.md +123 -0
  352. package/docs/nodes/voicewake.md +93 -0
  353. package/docs/perplexity.md +11 -0
  354. package/docs/pi-dev.md +82 -0
  355. package/docs/pi.md +573 -0
  356. package/docs/plan/codex-context-engine-harness.md +624 -0
  357. package/docs/plan/ui-channels.md +284 -0
  358. package/docs/platforms/android.md +285 -0
  359. package/docs/platforms/digitalocean.md +12 -0
  360. package/docs/platforms/index.md +60 -0
  361. package/docs/platforms/ios.md +283 -0
  362. package/docs/platforms/linux.md +141 -0
  363. package/docs/platforms/mac/bundled-gateway.md +79 -0
  364. package/docs/platforms/mac/canvas.md +128 -0
  365. package/docs/platforms/mac/child-process.md +72 -0
  366. package/docs/platforms/mac/dev-setup.md +112 -0
  367. package/docs/platforms/mac/health.md +39 -0
  368. package/docs/platforms/mac/icon.md +36 -0
  369. package/docs/platforms/mac/logging.md +62 -0
  370. package/docs/platforms/mac/menu-bar.md +93 -0
  371. package/docs/platforms/mac/peekaboo.md +92 -0
  372. package/docs/platforms/mac/permissions.md +53 -0
  373. package/docs/platforms/mac/remote.md +123 -0
  374. package/docs/platforms/mac/signing.md +52 -0
  375. package/docs/platforms/mac/skills.md +43 -0
  376. package/docs/platforms/mac/voice-overlay.md +66 -0
  377. package/docs/platforms/mac/voicewake.md +73 -0
  378. package/docs/platforms/mac/webchat.md +54 -0
  379. package/docs/platforms/mac/xpc.md +66 -0
  380. package/docs/platforms/macos.md +226 -0
  381. package/docs/platforms/oracle.md +12 -0
  382. package/docs/platforms/raspberry-pi.md +13 -0
  383. package/docs/platforms/windows.md +286 -0
  384. package/docs/plugins/adding-capabilities.md +133 -0
  385. package/docs/plugins/admin-http-rpc.md +216 -0
  386. package/docs/plugins/agent-tools.md +13 -0
  387. package/docs/plugins/architecture-internals.md +1195 -0
  388. package/docs/plugins/architecture.md +481 -0
  389. package/docs/plugins/building-extensions.md +13 -0
  390. package/docs/plugins/building-plugins.md +330 -0
  391. package/docs/plugins/bundles.md +310 -0
  392. package/docs/plugins/cli-backend-plugins.md +310 -0
  393. package/docs/plugins/codex-computer-use.md +293 -0
  394. package/docs/plugins/codex-harness-reference.md +409 -0
  395. package/docs/plugins/codex-harness-runtime.md +247 -0
  396. package/docs/plugins/codex-harness.md +746 -0
  397. package/docs/plugins/codex-native-plugins.md +276 -0
  398. package/docs/plugins/community.md +77 -0
  399. package/docs/plugins/compatibility.md +164 -0
  400. package/docs/plugins/dependency-resolution.md +143 -0
  401. package/docs/plugins/google-meet.md +1737 -0
  402. package/docs/plugins/hooks.md +459 -0
  403. package/docs/plugins/install-overrides.md +80 -0
  404. package/docs/plugins/manage-plugins.md +210 -0
  405. package/docs/plugins/manifest.md +1359 -0
  406. package/docs/plugins/memory-lancedb.md +385 -0
  407. package/docs/plugins/memory-wiki.md +529 -0
  408. package/docs/plugins/message-presentation.md +473 -0
  409. package/docs/plugins/oc-path.md +166 -0
  410. package/docs/plugins/plugin-inventory.md +182 -0
  411. package/docs/plugins/reference/acpx.md +23 -0
  412. package/docs/plugins/reference/admin-http-rpc.md +23 -0
  413. package/docs/plugins/reference/alibaba.md +23 -0
  414. package/docs/plugins/reference/amazon-bedrock-mantle.md +23 -0
  415. package/docs/plugins/reference/amazon-bedrock.md +23 -0
  416. package/docs/plugins/reference/anthropic-vertex.md +19 -0
  417. package/docs/plugins/reference/anthropic.md +23 -0
  418. package/docs/plugins/reference/arcee.md +23 -0
  419. package/docs/plugins/reference/azure-speech.md +23 -0
  420. package/docs/plugins/reference/bonjour.md +19 -0
  421. package/docs/plugins/reference/brave.md +23 -0
  422. package/docs/plugins/reference/browser.md +23 -0
  423. package/docs/plugins/reference/byteplus.md +19 -0
  424. package/docs/plugins/reference/canvas.md +19 -0
  425. package/docs/plugins/reference/cerebras.md +23 -0
  426. package/docs/plugins/reference/chutes.md +23 -0
  427. package/docs/plugins/reference/clickclack.md +23 -0
  428. package/docs/plugins/reference/cloudflare-ai-gateway.md +23 -0
  429. package/docs/plugins/reference/codex.md +23 -0
  430. package/docs/plugins/reference/comfy.md +23 -0
  431. package/docs/plugins/reference/copilot-proxy.md +19 -0
  432. package/docs/plugins/reference/deepgram.md +23 -0
  433. package/docs/plugins/reference/deepinfra.md +23 -0
  434. package/docs/plugins/reference/deepseek.md +23 -0
  435. package/docs/plugins/reference/diagnostics-otel.md +19 -0
  436. package/docs/plugins/reference/diagnostics-prometheus.md +19 -0
  437. package/docs/plugins/reference/diffs.md +19 -0
  438. package/docs/plugins/reference/discord.md +23 -0
  439. package/docs/plugins/reference/document-extract.md +23 -0
  440. package/docs/plugins/reference/duckduckgo.md +23 -0
  441. package/docs/plugins/reference/elevenlabs.md +23 -0
  442. package/docs/plugins/reference/exa.md +23 -0
  443. package/docs/plugins/reference/fal.md +23 -0
  444. package/docs/plugins/reference/feishu.md +23 -0
  445. package/docs/plugins/reference/file-transfer.md +19 -0
  446. package/docs/plugins/reference/firecrawl.md +23 -0
  447. package/docs/plugins/reference/fireworks.md +23 -0
  448. package/docs/plugins/reference/github-copilot.md +23 -0
  449. package/docs/plugins/reference/google-meet.md +23 -0
  450. package/docs/plugins/reference/google.md +23 -0
  451. package/docs/plugins/reference/googlechat.md +23 -0
  452. package/docs/plugins/reference/gradium.md +23 -0
  453. package/docs/plugins/reference/groq.md +23 -0
  454. package/docs/plugins/reference/huggingface.md +23 -0
  455. package/docs/plugins/reference/imessage.md +23 -0
  456. package/docs/plugins/reference/inworld.md +23 -0
  457. package/docs/plugins/reference/irc.md +23 -0
  458. package/docs/plugins/reference/kilocode.md +23 -0
  459. package/docs/plugins/reference/kimi.md +23 -0
  460. package/docs/plugins/reference/line.md +23 -0
  461. package/docs/plugins/reference/litellm.md +23 -0
  462. package/docs/plugins/reference/llm-task.md +19 -0
  463. package/docs/plugins/reference/lmstudio.md +23 -0
  464. package/docs/plugins/reference/lobster.md +19 -0
  465. package/docs/plugins/reference/matrix.md +23 -0
  466. package/docs/plugins/reference/mattermost.md +23 -0
  467. package/docs/plugins/reference/memory-core.md +19 -0
  468. package/docs/plugins/reference/memory-lancedb.md +23 -0
  469. package/docs/plugins/reference/memory-wiki.md +23 -0
  470. package/docs/plugins/reference/microsoft-foundry.md +19 -0
  471. package/docs/plugins/reference/microsoft.md +19 -0
  472. package/docs/plugins/reference/migrate-claude.md +19 -0
  473. package/docs/plugins/reference/migrate-hermes.md +19 -0
  474. package/docs/plugins/reference/minimax.md +23 -0
  475. package/docs/plugins/reference/mistral.md +23 -0
  476. package/docs/plugins/reference/moonshot.md +23 -0
  477. package/docs/plugins/reference/msteams.md +23 -0
  478. package/docs/plugins/reference/nextcloud-talk.md +23 -0
  479. package/docs/plugins/reference/nostr.md +23 -0
  480. package/docs/plugins/reference/nvidia.md +23 -0
  481. package/docs/plugins/reference/oc-path.md +23 -0
  482. package/docs/plugins/reference/ollama.md +23 -0
  483. package/docs/plugins/reference/open-prose.md +19 -0
  484. package/docs/plugins/reference/openai.md +23 -0
  485. package/docs/plugins/reference/opencode-go.md +23 -0
  486. package/docs/plugins/reference/opencode.md +23 -0
  487. package/docs/plugins/reference/openrouter.md +23 -0
  488. package/docs/plugins/reference/openshell.md +19 -0
  489. package/docs/plugins/reference/perplexity.md +23 -0
  490. package/docs/plugins/reference/policy.md +23 -0
  491. package/docs/plugins/reference/qa-channel.md +23 -0
  492. package/docs/plugins/reference/qa-lab.md +19 -0
  493. package/docs/plugins/reference/qa-matrix.md +19 -0
  494. package/docs/plugins/reference/qianfan.md +23 -0
  495. package/docs/plugins/reference/qqbot.md +23 -0
  496. package/docs/plugins/reference/qwen.md +23 -0
  497. package/docs/plugins/reference/runway.md +23 -0
  498. package/docs/plugins/reference/searxng.md +19 -0
  499. package/docs/plugins/reference/senseaudio.md +23 -0
  500. package/docs/plugins/reference/sglang.md +23 -0
  501. package/docs/plugins/reference/signal.md +23 -0
  502. package/docs/plugins/reference/skill-workshop.md +23 -0
  503. package/docs/plugins/reference/slack.md +23 -0
  504. package/docs/plugins/reference/stepfun.md +23 -0
  505. package/docs/plugins/reference/synology-chat.md +23 -0
  506. package/docs/plugins/reference/synthetic.md +23 -0
  507. package/docs/plugins/reference/tavily.md +23 -0
  508. package/docs/plugins/reference/telegram.md +23 -0
  509. package/docs/plugins/reference/tencent.md +23 -0
  510. package/docs/plugins/reference/tlon.md +23 -0
  511. package/docs/plugins/reference/together.md +23 -0
  512. package/docs/plugins/reference/tokenjuice.md +23 -0
  513. package/docs/plugins/reference/tts-local-cli.md +19 -0
  514. package/docs/plugins/reference/twitch.md +23 -0
  515. package/docs/plugins/reference/venice.md +23 -0
  516. package/docs/plugins/reference/vercel-ai-gateway.md +23 -0
  517. package/docs/plugins/reference/vllm.md +23 -0
  518. package/docs/plugins/reference/voice-call.md +23 -0
  519. package/docs/plugins/reference/volcengine.md +23 -0
  520. package/docs/plugins/reference/voyage.md +19 -0
  521. package/docs/plugins/reference/vydra.md +23 -0
  522. package/docs/plugins/reference/web-readability.md +19 -0
  523. package/docs/plugins/reference/webhooks.md +23 -0
  524. package/docs/plugins/reference/whatsapp.md +23 -0
  525. package/docs/plugins/reference/xai.md +23 -0
  526. package/docs/plugins/reference/xiaomi.md +23 -0
  527. package/docs/plugins/reference/zai.md +23 -0
  528. package/docs/plugins/reference/zalo.md +23 -0
  529. package/docs/plugins/reference/zalouser.md +24 -0
  530. package/docs/plugins/reference.md +138 -0
  531. package/docs/plugins/sdk-agent-harness.md +339 -0
  532. package/docs/plugins/sdk-channel-ingress.md +137 -0
  533. package/docs/plugins/sdk-channel-message.md +458 -0
  534. package/docs/plugins/sdk-channel-plugins.md +762 -0
  535. package/docs/plugins/sdk-channel-turn.md +580 -0
  536. package/docs/plugins/sdk-entrypoints.md +333 -0
  537. package/docs/plugins/sdk-migration.md +949 -0
  538. package/docs/plugins/sdk-overview.md +501 -0
  539. package/docs/plugins/sdk-provider-plugins.md +807 -0
  540. package/docs/plugins/sdk-runtime.md +676 -0
  541. package/docs/plugins/sdk-setup.md +550 -0
  542. package/docs/plugins/sdk-subpaths.md +396 -0
  543. package/docs/plugins/sdk-testing.md +401 -0
  544. package/docs/plugins/skill-workshop.md +713 -0
  545. package/docs/plugins/tool-plugins.md +411 -0
  546. package/docs/plugins/voice-call.md +943 -0
  547. package/docs/plugins/webhooks.md +192 -0
  548. package/docs/plugins/zalouser.md +86 -0
  549. package/docs/prose.md +137 -0
  550. package/docs/providers/alibaba.md +158 -0
  551. package/docs/providers/anthropic.md +344 -0
  552. package/docs/providers/arcee.md +144 -0
  553. package/docs/providers/azure-speech.md +119 -0
  554. package/docs/providers/bedrock-mantle.md +211 -0
  555. package/docs/providers/bedrock.md +414 -0
  556. package/docs/providers/cerebras.md +130 -0
  557. package/docs/providers/chutes.md +153 -0
  558. package/docs/providers/claude-max-api-proxy.md +188 -0
  559. package/docs/providers/cloudflare-ai-gateway.md +119 -0
  560. package/docs/providers/comfy.md +362 -0
  561. package/docs/providers/deepgram.md +184 -0
  562. package/docs/providers/deepinfra.md +87 -0
  563. package/docs/providers/deepseek.md +146 -0
  564. package/docs/providers/ds4.md +309 -0
  565. package/docs/providers/elevenlabs.md +130 -0
  566. package/docs/providers/fal.md +204 -0
  567. package/docs/providers/fireworks.md +144 -0
  568. package/docs/providers/github-copilot.md +225 -0
  569. package/docs/providers/glm.md +137 -0
  570. package/docs/providers/google.md +472 -0
  571. package/docs/providers/gradium.md +123 -0
  572. package/docs/providers/groq.md +180 -0
  573. package/docs/providers/huggingface.md +235 -0
  574. package/docs/providers/index.md +102 -0
  575. package/docs/providers/inferrs.md +272 -0
  576. package/docs/providers/inworld.md +120 -0
  577. package/docs/providers/kilocode.md +135 -0
  578. package/docs/providers/litellm.md +234 -0
  579. package/docs/providers/lmstudio.md +224 -0
  580. package/docs/providers/minimax.md +505 -0
  581. package/docs/providers/mistral.md +235 -0
  582. package/docs/providers/models.md +65 -0
  583. package/docs/providers/moonshot.md +413 -0
  584. package/docs/providers/nvidia.md +140 -0
  585. package/docs/providers/ollama.md +1180 -0
  586. package/docs/providers/openai.md +1057 -0
  587. package/docs/providers/opencode-go.md +123 -0
  588. package/docs/providers/opencode.md +149 -0
  589. package/docs/providers/openrouter.md +349 -0
  590. package/docs/providers/perplexity-provider.md +123 -0
  591. package/docs/providers/qianfan.md +132 -0
  592. package/docs/providers/qwen.md +332 -0
  593. package/docs/providers/runway.md +103 -0
  594. package/docs/providers/senseaudio.md +68 -0
  595. package/docs/providers/sglang.md +161 -0
  596. package/docs/providers/stepfun.md +229 -0
  597. package/docs/providers/synthetic.md +154 -0
  598. package/docs/providers/tencent.md +130 -0
  599. package/docs/providers/together.md +141 -0
  600. package/docs/providers/venice.md +315 -0
  601. package/docs/providers/vercel-ai-gateway.md +128 -0
  602. package/docs/providers/vllm.md +383 -0
  603. package/docs/providers/volcengine.md +199 -0
  604. package/docs/providers/vydra.md +180 -0
  605. package/docs/providers/xai.md +560 -0
  606. package/docs/providers/xiaomi.md +188 -0
  607. package/docs/providers/zai.md +203 -0
  608. package/docs/refactor/access.md +9 -0
  609. package/docs/refactor/acp.md +298 -0
  610. package/docs/refactor/canvas.md +131 -0
  611. package/docs/refactor/ingress-core.md +341 -0
  612. package/docs/reference/AGENTS.default.md +129 -0
  613. package/docs/reference/RELEASING.md +767 -0
  614. package/docs/reference/api-usage-costs.md +202 -0
  615. package/docs/reference/application-modernization-plan.md +208 -0
  616. package/docs/reference/code-mode.md +757 -0
  617. package/docs/reference/credits.md +33 -0
  618. package/docs/reference/device-models.md +50 -0
  619. package/docs/reference/full-release-validation.md +202 -0
  620. package/docs/reference/memory-config.md +630 -0
  621. package/docs/reference/openclaw-sdk-api-design.md +390 -0
  622. package/docs/reference/prompt-caching.md +358 -0
  623. package/docs/reference/rich-output-protocol.md +79 -0
  624. package/docs/reference/rpc.md +43 -0
  625. package/docs/reference/secretref-credential-surface.md +159 -0
  626. package/docs/reference/secretref-user-supplied-credentials-matrix.json +663 -0
  627. package/docs/reference/session-management-compaction.md +461 -0
  628. package/docs/reference/templates/AGENTS.dev.md +89 -0
  629. package/docs/reference/templates/AGENTS.md +225 -0
  630. package/docs/reference/templates/BOOT.md +16 -0
  631. package/docs/reference/templates/BOOTSTRAP.md +66 -0
  632. package/docs/reference/templates/HEARTBEAT.md +16 -0
  633. package/docs/reference/templates/IDENTITY.dev.md +52 -0
  634. package/docs/reference/templates/IDENTITY.md +34 -0
  635. package/docs/reference/templates/SOUL.dev.md +82 -0
  636. package/docs/reference/templates/SOUL.md +49 -0
  637. package/docs/reference/templates/TOOLS.dev.md +29 -0
  638. package/docs/reference/templates/TOOLS.md +51 -0
  639. package/docs/reference/templates/USER.dev.md +23 -0
  640. package/docs/reference/templates/USER.md +28 -0
  641. package/docs/reference/test.md +239 -0
  642. package/docs/reference/token-use.md +233 -0
  643. package/docs/reference/transcript-hygiene.md +214 -0
  644. package/docs/reference/wizard.md +252 -0
  645. package/docs/security/CONTRIBUTING-THREAT-MODEL.md +101 -0
  646. package/docs/security/THREAT-MODEL-ATLAS.md +611 -0
  647. package/docs/security/formal-verification.md +170 -0
  648. package/docs/security/incident-response.md +59 -0
  649. package/docs/security/network-proxy.md +268 -0
  650. package/docs/snippets/plugin-publish/minimal-openclaw.plugin.json +12 -0
  651. package/docs/snippets/plugin-publish/minimal-package.json +16 -0
  652. package/docs/start/bootstrapping.md +49 -0
  653. package/docs/start/docs-directory.md +69 -0
  654. package/docs/start/getting-started.md +152 -0
  655. package/docs/start/hubs.md +201 -0
  656. package/docs/start/lore.md +223 -0
  657. package/docs/start/onboarding-overview.md +72 -0
  658. package/docs/start/onboarding.md +95 -0
  659. package/docs/start/openclaw.md +244 -0
  660. package/docs/start/quickstart.md +25 -0
  661. package/docs/start/setup.md +178 -0
  662. package/docs/start/showcase.md +383 -0
  663. package/docs/start/wizard-cli-automation.md +232 -0
  664. package/docs/start/wizard-cli-reference.md +331 -0
  665. package/docs/start/wizard.md +141 -0
  666. package/docs/style.css +184 -0
  667. package/docs/superpowers/specs/2026-04-22-tweakcn-custom-theme-import-design.md +316 -0
  668. package/docs/tools/acp-agents-setup.md +352 -0
  669. package/docs/tools/acp-agents.md +847 -0
  670. package/docs/tools/agent-send.md +112 -0
  671. package/docs/tools/apply-patch.md +64 -0
  672. package/docs/tools/brave-search.md +139 -0
  673. package/docs/tools/browser-control.md +391 -0
  674. package/docs/tools/browser-linux-troubleshooting.md +173 -0
  675. package/docs/tools/browser-login.md +77 -0
  676. package/docs/tools/browser-wsl2-windows-remote-cdp-troubleshooting.md +219 -0
  677. package/docs/tools/browser.md +769 -0
  678. package/docs/tools/btw.md +159 -0
  679. package/docs/tools/capability-cookbook.md +12 -0
  680. package/docs/tools/clawhub.md +5 -0
  681. package/docs/tools/code-execution.md +173 -0
  682. package/docs/tools/creating-skills.md +120 -0
  683. package/docs/tools/diffs.md +506 -0
  684. package/docs/tools/duckduckgo-search.md +109 -0
  685. package/docs/tools/elevated.md +128 -0
  686. package/docs/tools/exa-search.md +152 -0
  687. package/docs/tools/exec-approvals-advanced.md +360 -0
  688. package/docs/tools/exec-approvals.md +474 -0
  689. package/docs/tools/exec.md +282 -0
  690. package/docs/tools/firecrawl.md +155 -0
  691. package/docs/tools/gemini-search.md +114 -0
  692. package/docs/tools/grok-search.md +113 -0
  693. package/docs/tools/image-generation.md +433 -0
  694. package/docs/tools/index.md +178 -0
  695. package/docs/tools/kimi-search.md +105 -0
  696. package/docs/tools/llm-task.md +137 -0
  697. package/docs/tools/lobster.md +365 -0
  698. package/docs/tools/loop-detection.md +154 -0
  699. package/docs/tools/media-overview.md +157 -0
  700. package/docs/tools/minimax-search.md +102 -0
  701. package/docs/tools/multi-agent-sandbox-tools.md +409 -0
  702. package/docs/tools/music-generation.md +371 -0
  703. package/docs/tools/ollama-search.md +153 -0
  704. package/docs/tools/pdf.md +195 -0
  705. package/docs/tools/perplexity-search.md +220 -0
  706. package/docs/tools/plugin.md +327 -0
  707. package/docs/tools/reactions.md +100 -0
  708. package/docs/tools/searxng-search.md +141 -0
  709. package/docs/tools/skills-config.md +195 -0
  710. package/docs/tools/skills.md +535 -0
  711. package/docs/tools/slash-commands.md +488 -0
  712. package/docs/tools/steer.md +84 -0
  713. package/docs/tools/subagents.md +650 -0
  714. package/docs/tools/tavily.md +162 -0
  715. package/docs/tools/thinking.md +140 -0
  716. package/docs/tools/tokenjuice.md +81 -0
  717. package/docs/tools/tool-search.md +269 -0
  718. package/docs/tools/trajectory.md +229 -0
  719. package/docs/tools/tts.md +1004 -0
  720. package/docs/tools/video-generation.md +552 -0
  721. package/docs/tools/web-fetch.md +195 -0
  722. package/docs/tools/web.md +459 -0
  723. package/docs/tts.md +11 -0
  724. package/docs/vps.md +139 -0
  725. package/docs/web/control-ui.md +503 -0
  726. package/docs/web/dashboard.md +107 -0
  727. package/docs/web/index.md +133 -0
  728. package/docs/web/tui.md +246 -0
  729. package/docs/web/webchat.md +99 -0
  730. package/docs/whatsapp-openclaw-ai-zh.jpg +0 -0
  731. package/docs/whatsapp-openclaw.jpg +0 -0
  732. package/nodmix.mjs +487 -0
  733. package/package.json +1852 -0
  734. package/patches/.gitkeep +0 -0
  735. package/patches/@agentclientprotocol__claude-agent-acp@0.36.1.patch +41 -0
  736. package/pnpm-workspace.yaml +63 -0
  737. package/scripts/crabbox-wrapper.mjs +353 -0
  738. package/scripts/lib/official-external-channel-catalog.json +559 -0
  739. package/scripts/lib/official-external-plugin-catalog.json +192 -0
  740. package/scripts/lib/official-external-provider-catalog.json +117 -0
  741. package/scripts/lib/package-dist-imports.mjs +171 -0
  742. package/scripts/npm-runner.mjs +91 -0
  743. package/scripts/postinstall-bundled-plugins.mjs +978 -0
  744. package/scripts/preinstall-package-manager-warning.mjs +64 -0
  745. package/scripts/windows-cmd-helpers.mjs +20 -0
  746. package/skills/1password/SKILL.md +70 -0
  747. package/skills/1password/references/cli-examples.md +29 -0
  748. package/skills/1password/references/get-started.md +17 -0
  749. package/skills/apple-notes/SKILL.md +77 -0
  750. package/skills/apple-reminders/SKILL.md +118 -0
  751. package/skills/bear-notes/SKILL.md +107 -0
  752. package/skills/blogwatcher/SKILL.md +69 -0
  753. package/skills/blucli/SKILL.md +47 -0
  754. package/skills/camsnap/SKILL.md +45 -0
  755. package/skills/canvas/SKILL.md +78 -0
  756. package/skills/clawhub/SKILL.md +77 -0
  757. package/skills/coding-agent/SKILL.md +149 -0
  758. package/skills/diagram-maker/SKILL.md +53 -0
  759. package/skills/diagram-maker/references/excalidraw-patterns.md +85 -0
  760. package/skills/diagram-maker/references/svg-template.md +112 -0
  761. package/skills/discord/SKILL.md +136 -0
  762. package/skills/eightctl/SKILL.md +50 -0
  763. package/skills/gemini/SKILL.md +47 -0
  764. package/skills/gh-issues/SKILL.md +213 -0
  765. package/skills/gifgrep/SKILL.md +85 -0
  766. package/skills/github/SKILL.md +84 -0
  767. package/skills/gog/SKILL.md +116 -0
  768. package/skills/goplaces/SKILL.md +52 -0
  769. package/skills/healthcheck/SKILL.md +105 -0
  770. package/skills/himalaya/SKILL.md +80 -0
  771. package/skills/himalaya/references/configuration.md +184 -0
  772. package/skills/himalaya/references/message-composition.md +199 -0
  773. package/skills/imsg/SKILL.md +122 -0
  774. package/skills/mcporter/SKILL.md +61 -0
  775. package/skills/meme-maker/SKILL.md +42 -0
  776. package/skills/meme-maker/references/templates.json +358 -0
  777. package/skills/meme-maker/scripts/meme.mjs +398 -0
  778. package/skills/model-usage/SKILL.md +69 -0
  779. package/skills/model-usage/references/codexbar-cli.md +33 -0
  780. package/skills/model-usage/scripts/model_usage.py +319 -0
  781. package/skills/model-usage/scripts/test_model_usage.py +40 -0
  782. package/skills/nano-pdf/SKILL.md +38 -0
  783. package/skills/node-connect/SKILL.md +142 -0
  784. package/skills/node-inspect-debugger/SKILL.md +85 -0
  785. package/skills/notion/SKILL.md +150 -0
  786. package/skills/obsidian/SKILL.md +119 -0
  787. package/skills/openai-whisper/SKILL.md +38 -0
  788. package/skills/openai-whisper-api/SKILL.md +71 -0
  789. package/skills/openai-whisper-api/scripts/transcribe.sh +154 -0
  790. package/skills/openhue/SKILL.md +112 -0
  791. package/skills/oracle/SKILL.md +126 -0
  792. package/skills/ordercli/SKILL.md +78 -0
  793. package/skills/peekaboo/SKILL.md +190 -0
  794. package/skills/pyproject.toml +10 -0
  795. package/skills/python-debugpy/SKILL.md +73 -0
  796. package/skills/sag/SKILL.md +87 -0
  797. package/skills/session-logs/SKILL.md +151 -0
  798. package/skills/sherpa-onnx-tts/SKILL.md +109 -0
  799. package/skills/sherpa-onnx-tts/bin/sherpa-onnx-tts +178 -0
  800. package/skills/skill-creator/SKILL.md +78 -0
  801. package/skills/skill-creator/license.txt +202 -0
  802. package/skills/skill-creator/scripts/init_skill.py +378 -0
  803. package/skills/skill-creator/scripts/package_skill.py +139 -0
  804. package/skills/skill-creator/scripts/quick_validate.py +169 -0
  805. package/skills/skill-creator/scripts/test_package_skill.py +161 -0
  806. package/skills/skill-creator/scripts/test_quick_validate.py +116 -0
  807. package/skills/slack/SKILL.md +78 -0
  808. package/skills/songsee/SKILL.md +49 -0
  809. package/skills/sonoscli/SKILL.md +65 -0
  810. package/skills/spike/SKILL.md +51 -0
  811. package/skills/spotify-player/SKILL.md +64 -0
  812. package/skills/summarize/SKILL.md +87 -0
  813. package/skills/taskflow/SKILL.md +149 -0
  814. package/skills/taskflow/examples/inbox-triage.lobster +33 -0
  815. package/skills/taskflow/examples/pr-intake.lobster +32 -0
  816. package/skills/taskflow-inbox-triage/SKILL.md +119 -0
  817. package/skills/things-mac/SKILL.md +86 -0
  818. package/skills/tmux/SKILL.md +91 -0
  819. package/skills/tmux/scripts/find-sessions.sh +112 -0
  820. package/skills/tmux/scripts/wait-for-text.sh +83 -0
  821. package/skills/trello/SKILL.md +108 -0
  822. package/skills/video-frames/SKILL.md +46 -0
  823. package/skills/video-frames/scripts/frame.sh +81 -0
  824. package/skills/voice-call/SKILL.md +45 -0
  825. package/skills/wacli/SKILL.md +72 -0
  826. package/skills/weather/SKILL.md +64 -0
  827. package/skills/xurl/SKILL.md +120 -0
@@ -0,0 +1,344 @@
1
+ ---
2
+ summary: "Debugging tools: watch mode, raw model streams, and tracing reasoning leakage"
3
+ read_when:
4
+ - You need to inspect raw model output for reasoning leakage
5
+ - You want to run the Gateway in watch mode while iterating
6
+ - You need a repeatable debugging workflow
7
+ title: "Debugging"
8
+ ---
9
+
10
+ Debugging helpers for streaming output, especially when a provider mixes reasoning into normal text.
11
+
12
+ ## Runtime debug overrides
13
+
14
+ Use `/debug` in chat to set **runtime-only** config overrides (memory, not disk).
15
+ `/debug` is disabled by default; enable with `commands.debug: true`.
16
+ This is handy when you need to toggle obscure settings without editing `nodmix.json`.
17
+
18
+ Examples:
19
+
20
+ ```
21
+ /debug show
22
+ /debug set messages.responsePrefix="[nodmix]"
23
+ /debug unset messages.responsePrefix
24
+ /debug reset
25
+ ```
26
+
27
+ `/debug reset` clears all overrides and returns to the on-disk config.
28
+
29
+ ## Session trace output
30
+
31
+ Use `/trace` when you want to see plugin-owned trace/debug lines in one session
32
+ without turning on full verbose mode.
33
+
34
+ Examples:
35
+
36
+ ```text
37
+ /trace
38
+ /trace on
39
+ /trace off
40
+ ```
41
+
42
+ Use `/trace` for plugin diagnostics such as Active Memory debug summaries.
43
+ Keep using `/verbose` for normal verbose status/tool output, and keep using
44
+ `/debug` for runtime-only config overrides.
45
+
46
+ ## Plugin lifecycle trace
47
+
48
+ Use `NODMIX_PLUGIN_LIFECYCLE_TRACE=1` when plugin lifecycle commands feel slow
49
+ and you need a built-in phase breakdown for plugin metadata, discovery, registry,
50
+ runtime mirror, config mutation, and refresh work. The trace is opt-in and writes
51
+ to stderr, so JSON command output remains parseable.
52
+
53
+ Example:
54
+
55
+ ```bash
56
+ NODMIX_PLUGIN_LIFECYCLE_TRACE=1 nodmix plugins install tokenjuice --force
57
+ ```
58
+
59
+ Example output:
60
+
61
+ ```text
62
+ [plugins:lifecycle] phase="config read" ms=6.83 status=ok command="install"
63
+ [plugins:lifecycle] phase="slot selection" ms=94.31 status=ok command="install" pluginId="tokenjuice"
64
+ [plugins:lifecycle] phase="registry refresh" ms=51.56 status=ok command="install" reason="source-changed"
65
+ ```
66
+
67
+ Use this for plugin lifecycle investigation before reaching for a CPU profiler.
68
+ If the command is running from a source checkout, prefer measuring the built
69
+ runtime with `node dist/entry.js ...` after `pnpm build`; `pnpm nodmix ...`
70
+ also measures source-runner overhead.
71
+
72
+ ## CLI startup and command profiling
73
+
74
+ Use the checked-in startup benchmark when a command feels slow:
75
+
76
+ ```bash
77
+ pnpm test:startup:bench:smoke
78
+ pnpm tsx scripts/bench-cli-startup.ts --preset real --case status --runs 3
79
+ pnpm tsx scripts/bench-cli-startup.ts --preset real --cpu-prof-dir .artifacts/cli-cpu
80
+ ```
81
+
82
+ For one-off profiling through the normal source runner, set
83
+ `NODMIX_RUN_NODE_CPU_PROF_DIR`:
84
+
85
+ ```bash
86
+ NODMIX_RUN_NODE_CPU_PROF_DIR=.artifacts/cli-cpu pnpm nodmix status
87
+ ```
88
+
89
+ The source runner adds Node CPU profile flags and writes a `.cpuprofile` for the
90
+ command. Use this before adding temporary instrumentation to command code.
91
+
92
+ For startup stalls that look like synchronous filesystem or module-loader work,
93
+ add Node's sync I/O trace flag through the source runner:
94
+
95
+ ```bash
96
+ NODMIX_TRACE_SYNC_IO=1 pnpm nodmix gateway --force
97
+ ```
98
+
99
+ `pnpm gateway:watch` leaves this flag disabled by default for the watched
100
+ Gateway child. Set `NODMIX_TRACE_SYNC_IO=1` when you explicitly want Node
101
+ sync I/O trace output in watch mode.
102
+
103
+ ## Gateway watch mode
104
+
105
+ For fast iteration, run the gateway under the file watcher:
106
+
107
+ ```bash
108
+ pnpm gateway:watch
109
+ ```
110
+
111
+ By default, this starts or restarts a tmux session named
112
+ `nodmix-gateway-watch-main` (or a profile/port-specific variant such as
113
+ `nodmix-gateway-watch-dev-19001`) and auto-attaches from interactive terminals.
114
+ Non-interactive shells, CI, and agent exec calls stay detached and print attach
115
+ instructions instead. Attach manually when needed:
116
+
117
+ ```bash
118
+ tmux attach -t nodmix-gateway-watch-main
119
+ ```
120
+
121
+ The tmux pane runs the raw watcher:
122
+
123
+ ```bash
124
+ node scripts/watch-node.mjs gateway --force
125
+ ```
126
+
127
+ Use foreground mode when tmux is not wanted:
128
+
129
+ ```bash
130
+ pnpm gateway:watch:raw
131
+ # or
132
+ NODMIX_GATEWAY_WATCH_TMUX=0 pnpm gateway:watch
133
+ ```
134
+
135
+ Disable auto-attach while keeping tmux management:
136
+
137
+ ```bash
138
+ NODMIX_GATEWAY_WATCH_ATTACH=0 pnpm gateway:watch
139
+ ```
140
+
141
+ Profile watched Gateway CPU time when debugging startup/runtime hotspots:
142
+
143
+ ```bash
144
+ pnpm gateway:watch --benchmark
145
+ ```
146
+
147
+ The watch wrapper consumes `--benchmark` before invoking the Gateway and writes
148
+ one V8 `.cpuprofile` per Gateway child exit under
149
+ `.artifacts/gateway-watch-profiles/`. Stop or restart the watched gateway to
150
+ flush the current profile, then open it with Chrome DevTools or Speedscope:
151
+
152
+ ```bash
153
+ npx speedscope .artifacts/gateway-watch-profiles/*.cpuprofile
154
+ ```
155
+
156
+ Use `--benchmark-dir <path>` when you want profiles somewhere else.
157
+ Use `--benchmark-no-force` when you want the benchmarked child to skip the
158
+ default `--force` port cleanup and fail fast if the Gateway port is already in
159
+ use.
160
+ Benchmark mode suppresses sync-I/O trace spam by default. Set
161
+ `NODMIX_TRACE_SYNC_IO=1` with `--benchmark` when you explicitly want both CPU
162
+ profiles and Node sync-I/O stack traces. In benchmark mode those trace blocks
163
+ are written to `gateway-watch-output.log` under the benchmark directory and
164
+ filtered from the terminal pane; normal Gateway logs remain visible.
165
+
166
+ The tmux wrapper carries common non-secret runtime selectors such as
167
+ `NODMIX_PROFILE`, `NODMIX_CONFIG_PATH`, `NODMIX_STATE_DIR`,
168
+ `NODMIX_GATEWAY_PORT`, and `NODMIX_SKIP_CHANNELS` into the pane. Put
169
+ provider credentials in your normal profile/config, or use raw foreground mode
170
+ for one-off ephemeral secrets.
171
+ If the watched Gateway exits during startup, the watcher runs
172
+ `nodmix doctor --fix --non-interactive` once and restarts the Gateway child.
173
+ Use `NODMIX_GATEWAY_WATCH_AUTO_DOCTOR=0` when you want the original startup
174
+ failure without the dev-only repair pass.
175
+ The managed tmux pane also defaults to colored Gateway logs for readability;
176
+ set `FORCE_COLOR=0` when starting `pnpm gateway:watch` to disable ANSI output.
177
+
178
+ The watcher restarts on build-relevant files under `src/`, extension source files,
179
+ extension `package.json` and `nodmix.plugin.json` metadata, `tsconfig.json`,
180
+ `package.json`, and `tsdown.config.ts`. Extension metadata changes restart the
181
+ gateway without forcing a `tsdown` rebuild; source and config changes still
182
+ rebuild `dist` first.
183
+
184
+ Add any gateway CLI flags after `gateway:watch` and they will be passed through on
185
+ each restart. Re-running the same watch command respawns the named tmux pane, and
186
+ the raw watcher still keeps its single-watcher lock so duplicate watcher parents
187
+ are replaced instead of piling up.
188
+
189
+ ## Dev profile + dev gateway (--dev)
190
+
191
+ Use the dev profile to isolate state and spin up a safe, disposable setup for
192
+ debugging. There are **two** `--dev` flags:
193
+
194
+ - **Global `--dev` (profile):** isolates state under `~/.nodmix-dev` and
195
+ defaults the gateway port to `19001` (derived ports shift with it).
196
+ - **`gateway --dev`: tells the Gateway to auto-create a default config +
197
+ workspace** when missing (and skip BOOTSTRAP.md).
198
+
199
+ Recommended flow (dev profile + dev bootstrap):
200
+
201
+ ```bash
202
+ pnpm gateway:dev
203
+ NODMIX_PROFILE=dev nodmix tui
204
+ ```
205
+
206
+ If you don't have a global install yet, run the CLI via `pnpm nodmix ...`.
207
+
208
+ What this does:
209
+
210
+ 1. **Profile isolation** (global `--dev`)
211
+ - `NODMIX_PROFILE=dev`
212
+ - `NODMIX_STATE_DIR=~/.nodmix-dev`
213
+ - `NODMIX_CONFIG_PATH=~/.nodmix-dev/nodmix.json`
214
+ - `NODMIX_GATEWAY_PORT=19001` (browser/canvas shift accordingly)
215
+
216
+ 2. **Dev bootstrap** (`gateway --dev`)
217
+ - Writes a minimal config if missing (`gateway.mode=local`, bind loopback).
218
+ - Sets `agent.workspace` to the dev workspace.
219
+ - Sets `agent.skipBootstrap=true` (no BOOTSTRAP.md).
220
+ - Seeds the workspace files if missing:
221
+ `AGENTS.md`, `SOUL.md`, `TOOLS.md`, `IDENTITY.md`, `USER.md`, `HEARTBEAT.md`.
222
+ - Default identity: **C3-PO** (protocol droid).
223
+ - Skips channel providers in dev mode (`NODMIX_SKIP_CHANNELS=1`).
224
+
225
+ Reset flow (fresh start):
226
+
227
+ ```bash
228
+ pnpm gateway:dev:reset
229
+ ```
230
+
231
+ <Note>
232
+ `--dev` is a **global** profile flag and gets eaten by some runners. If you need to spell it out, use the env var form:
233
+
234
+ ```bash
235
+ NODMIX_PROFILE=dev nodmix gateway --dev --reset
236
+ ```
237
+
238
+ </Note>
239
+
240
+ `--reset` wipes config, credentials, sessions, and the dev workspace (using
241
+ `trash`, not `rm`), then recreates the default dev setup.
242
+
243
+ <Tip>
244
+ If a non-dev gateway is already running (launchd or systemd), stop it first:
245
+
246
+ ```bash
247
+ nodmix gateway stop
248
+ ```
249
+
250
+ </Tip>
251
+
252
+ ## Raw stream logging (Nodmix)
253
+
254
+ Nodmix can log the **raw assistant stream** before any filtering/formatting.
255
+ This is the best way to see whether reasoning is arriving as plain text deltas
256
+ (or as separate thinking blocks).
257
+
258
+ Enable it via CLI:
259
+
260
+ ```bash
261
+ pnpm gateway:watch --raw-stream
262
+ ```
263
+
264
+ Optional path override:
265
+
266
+ ```bash
267
+ pnpm gateway:watch --raw-stream --raw-stream-path ~/.nodmix/logs/raw-stream.jsonl
268
+ ```
269
+
270
+ Equivalent env vars:
271
+
272
+ ```bash
273
+ NODMIX_RAW_STREAM=1
274
+ NODMIX_RAW_STREAM_PATH=~/.nodmix/logs/raw-stream.jsonl
275
+ ```
276
+
277
+ Default file:
278
+
279
+ `~/.nodmix/logs/raw-stream.jsonl`
280
+
281
+ ## Raw chunk logging (pi-mono)
282
+
283
+ To capture **raw OpenAI-compat chunks** before they are parsed into blocks,
284
+ pi-mono exposes a separate logger:
285
+
286
+ ```bash
287
+ PI_RAW_STREAM=1
288
+ ```
289
+
290
+ Optional path:
291
+
292
+ ```bash
293
+ PI_RAW_STREAM_PATH=~/.pi-mono/logs/raw-openai-completions.jsonl
294
+ ```
295
+
296
+ Default file:
297
+
298
+ `~/.pi-mono/logs/raw-openai-completions.jsonl`
299
+
300
+ > Note: this is only emitted by processes using pi-mono's
301
+ > `openai-completions` provider.
302
+
303
+ ## Safety notes
304
+
305
+ - Raw stream logs can include full prompts, tool output, and user data.
306
+ - Keep logs local and delete them after debugging.
307
+ - If you share logs, scrub secrets and PII first.
308
+
309
+ ## Debugging in VSCode
310
+
311
+ Source maps are required to enable debugging in VSCode-based IDEs because many of the generated files end up with hashed names as part of the build process. The included `launch.json` configurations target the Gateway service, but can be adapted quickly for other purposes:
312
+
313
+ 1. **Rebuild and Debug Gateway** - Debugs the Gateway service after creating a new build
314
+ 2. **Debug Gateway** - Debugs the Gateway service of a pre-existing build
315
+
316
+ ### Setup
317
+
318
+ The default **Rebuild and Debug Gateway** configuration is batteries-included, it will automatically delete the `/dist` folder and rebuild the project with debugging enabled:
319
+
320
+ 1. Open the **Run and Debug** panel from the Activity Bar or press `Ctrl`+`Shift`+`D`
321
+ 2. In the IDE, ensure **Rebuild and Debug Gateway** is selected in the configuration dropdown and then press the **Start Debugging** button
322
+
323
+ Alternatively - if you prefer to manage the build and debug processes manually:
324
+
325
+ 1. Open a terminal and enable source maps:
326
+ - **Linux/macOS**: `export OUTPUT_SOURCE_MAPS=1`
327
+ - **Windows (PowerShell)**: `$env:OUTPUT_SOURCE_MAPS="1"`
328
+ - **Windows (CMD)**: `set OUTPUT_SOURCE_MAPS=1`
329
+ 2. In the same terminal, rebuild the project: `pnpm clean:dist && pnpm build`
330
+ 3. In the IDE, select the **Debug Gateway** option in the **Run and Debug** configuration dropdown and then press the **Start Debugging** button
331
+
332
+ You can now set breakpoints in your TypeScript source files (`src/` directory) and the debugger will correctly map breakpoints to the compiled JavaScript via source maps. You'll be able to inspect variables, step through code, and examine call stacks as expected.
333
+
334
+ ### Notes
335
+
336
+ - If using the **"Rebuild and Debug Gateway"** option - each time the debugger is launched it will completely delete the `/dist` folder and run a full `pnpm build` with source maps enabled before starting the Gateway
337
+ - If using the **"Debug Gateway"** option - debug sessions can be started and stopped at any time without affecting the `/dist` folder, but you must use a separate terminal process to both enable debugging and manage the build cycle
338
+ - Modify the `launch.json` settings for `args` to debug other sections of the project
339
+ - If you need to use the built Nodmix CLI for other tasks (i.e. `dashboard --no-open` if your debug session spawns a new auth token), you can execute it in another terminal as `node ./nodmix.mjs` or create a shell alias like `alias nodmix-build="node $(pwd)/nodmix.mjs"`
340
+
341
+ ## Related
342
+
343
+ - [Troubleshooting](/help/troubleshooting)
344
+ - [FAQ](/help/faq)
@@ -0,0 +1,214 @@
1
+ ---
2
+ summary: "Where Nodmix loads environment variables and the precedence order"
3
+ read_when:
4
+ - You need to know which env vars are loaded, and in what order
5
+ - You are debugging missing API keys in the Gateway
6
+ - You are documenting provider auth or deployment environments
7
+ title: "Environment variables"
8
+ ---
9
+
10
+ Nodmix pulls environment variables from multiple sources. The rule is **never override existing values**.
11
+
12
+ ## Precedence (highest → lowest)
13
+
14
+ 1. **Process environment** (what the Gateway process already has from the parent shell/daemon).
15
+ 2. **`.env` in the current working directory** (dotenv default; does not override).
16
+ 3. **Global `.env`** at `~/.nodmix/.env` (aka `$NODMIX_STATE_DIR/.env`; does not override).
17
+ 4. **Config `env` block** in `~/.nodmix/nodmix.json` (applied only if missing).
18
+ 5. **Optional login-shell import** (`env.shellEnv.enabled` or `NODMIX_LOAD_SHELL_ENV=1`), applied only for missing expected keys.
19
+
20
+ On Ubuntu fresh installs that use the default state dir, Nodmix also treats `~/.config/nodmix/gateway.env` as a compatibility fallback after the global `.env`. If both files exist and disagree, Nodmix keeps `~/.nodmix/.env` and prints a warning.
21
+
22
+ If the config file is missing entirely, step 4 is skipped; shell import still runs if enabled.
23
+
24
+ ## Config `env` block
25
+
26
+ Two equivalent ways to set inline env vars (both are non-overriding):
27
+
28
+ ```json5
29
+ {
30
+ env: {
31
+ OPENROUTER_API_KEY: "sk-or-...",
32
+ vars: {
33
+ GROQ_API_KEY: "gsk-...",
34
+ },
35
+ },
36
+ }
37
+ ```
38
+
39
+ The config `env` block accepts literal string values only. It does not expand
40
+ `file:...` values; for example, `XAI_API_KEY: "file:secrets/xai-api-key.txt"`
41
+ is passed to providers as that exact string.
42
+
43
+ For file-backed provider keys, use a SecretRef on the credential field that
44
+ supports it:
45
+
46
+ ```json5
47
+ {
48
+ secrets: {
49
+ providers: {
50
+ xai_key_file: {
51
+ source: "file",
52
+ path: "~/.nodmix/secrets/xai-api-key.txt",
53
+ mode: "singleValue",
54
+ },
55
+ },
56
+ },
57
+ models: {
58
+ providers: {
59
+ xai: {
60
+ apiKey: { source: "file", provider: "xai_key_file", id: "value" },
61
+ },
62
+ },
63
+ },
64
+ }
65
+ ```
66
+
67
+ See [Secrets Management](/gateway/secrets) and the
68
+ [SecretRef credential surface](/reference/secretref-credential-surface) for
69
+ supported fields.
70
+
71
+ ## Shell env import
72
+
73
+ `env.shellEnv` runs your login shell and imports only **missing** expected keys:
74
+
75
+ ```json5
76
+ {
77
+ env: {
78
+ shellEnv: {
79
+ enabled: true,
80
+ timeoutMs: 15000,
81
+ },
82
+ },
83
+ }
84
+ ```
85
+
86
+ Env var equivalents:
87
+
88
+ - `NODMIX_LOAD_SHELL_ENV=1`
89
+ - `NODMIX_SHELL_ENV_TIMEOUT_MS=15000`
90
+
91
+ ## Runtime-injected env vars
92
+
93
+ Nodmix also injects context markers into spawned child processes:
94
+
95
+ - `NODMIX_SHELL=exec`: set for commands run through the `exec` tool.
96
+ - `NODMIX_SHELL=acp`: set for ACP runtime backend process spawns (for example `acpx`).
97
+ - `NODMIX_SHELL=acp-client`: set for `nodmix acp client` when it spawns the ACP bridge process.
98
+ - `NODMIX_SHELL=tui-local`: set for local TUI `!` shell commands.
99
+
100
+ These are runtime markers (not required user config). They can be used in shell/profile logic
101
+ to apply context-specific rules.
102
+
103
+ ## UI env vars
104
+
105
+ - `NODMIX_THEME=light`: force the light TUI palette when your terminal has a light background.
106
+ - `NODMIX_THEME=dark`: force the dark TUI palette.
107
+ - `COLORFGBG`: if your terminal exports it, Nodmix uses the background color hint to auto-pick the TUI palette.
108
+
109
+ ## Env var substitution in config
110
+
111
+ You can reference env vars directly in config string values using `${VAR_NAME}` syntax:
112
+
113
+ ```json5
114
+ {
115
+ models: {
116
+ providers: {
117
+ "vercel-gateway": {
118
+ apiKey: "${VERCEL_GATEWAY_API_KEY}",
119
+ },
120
+ },
121
+ },
122
+ }
123
+ ```
124
+
125
+ See [Configuration: Env var substitution](/gateway/configuration-reference#env-var-substitution) for full details.
126
+
127
+ ## Secret refs vs `${ENV}` strings
128
+
129
+ Nodmix supports two env-driven patterns:
130
+
131
+ - `${VAR}` string substitution in config values.
132
+ - SecretRef objects (`{ source: "env", provider: "default", id: "VAR" }`) for fields that support secrets references.
133
+
134
+ Both resolve from process env at activation time. SecretRef details are documented in [Secrets Management](/gateway/secrets).
135
+ The config `env` block itself does not resolve SecretRefs or `file:...`
136
+ shorthand values.
137
+
138
+ ## Path-related env vars
139
+
140
+ | Variable | Purpose |
141
+ | ------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
142
+ | `NODMIX_HOME` | Override the home directory used for all internal path resolution (`~/.nodmix/`, agent dirs, sessions, credentials). Useful when running Nodmix as a dedicated service user. |
143
+ | `NODMIX_STATE_DIR` | Override the state directory (default `~/.nodmix`). |
144
+ | `NODMIX_CONFIG_PATH` | Override the config file path (default `~/.nodmix/nodmix.json`). |
145
+ | `NODMIX_INCLUDE_ROOTS` | Path-list of directories where `$include` directives may resolve files outside the config directory (default: none — `$include` is confined to the config dir). Tilde-expanded. |
146
+
147
+ ## Logging
148
+
149
+ | Variable | Purpose |
150
+ | -------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
151
+ | `NODMIX_LOG_LEVEL` | Override log level for both file and console (e.g. `debug`, `trace`). Takes precedence over `logging.level` and `logging.consoleLevel` in config. Invalid values are ignored with a warning. |
152
+ | `NODMIX_DEBUG_MODEL_TRANSPORT` | Emit targeted model request/response timing diagnostics at `info` level without enabling global debug logs. |
153
+ | `NODMIX_DEBUG_MODEL_PAYLOAD` | Model payload diagnostics: `summary`, `tools`, or `full-redacted`. `full-redacted` is capped and redacted but may include prompt/message text. |
154
+ | `NODMIX_DEBUG_SSE` | Streaming diagnostics: `events` for first/done timing, `peek` to include the first five redacted SSE events. |
155
+ | `NODMIX_DEBUG_CODE_MODE` | Code-mode model-surface diagnostics, including provider-tool hiding and exec/wait-only enforcement. |
156
+
157
+ ### `NODMIX_HOME`
158
+
159
+ When set, `NODMIX_HOME` replaces the system home directory (`$HOME` / `os.homedir()`) for all internal path resolution. This enables full filesystem isolation for headless service accounts.
160
+
161
+ **Precedence:** `NODMIX_HOME` > `$HOME` > `USERPROFILE` > `os.homedir()`
162
+
163
+ **Example** (macOS LaunchDaemon):
164
+
165
+ ```xml
166
+ <key>EnvironmentVariables</key>
167
+ <dict>
168
+ <key>NODMIX_HOME</key>
169
+ <string>/Users/user</string>
170
+ </dict>
171
+ ```
172
+
173
+ `NODMIX_HOME` can also be set to a tilde path (e.g. `~/svc`), which gets expanded using `$HOME` before use.
174
+
175
+ ## nvm users: web_fetch TLS failures
176
+
177
+ If Node.js was installed via **nvm** (not the system package manager), the built-in `fetch()` uses
178
+ nvm's bundled CA store, which may be missing modern root CAs (ISRG Root X1/X2 for Let's Encrypt,
179
+ DigiCert Global Root G2, etc.). This causes `web_fetch` to fail with `"fetch failed"` on most HTTPS sites.
180
+
181
+ On Linux, Nodmix automatically detects nvm and applies the fix in the actual startup environment:
182
+
183
+ - `nodmix gateway install` writes `NODE_EXTRA_CA_CERTS` into the systemd service environment
184
+ - the `nodmix` CLI entrypoint re-execs itself with `NODE_EXTRA_CA_CERTS` set before Node startup
185
+
186
+ **Manual fix (for older versions or direct `node ...` launches):**
187
+
188
+ Export the variable before starting Nodmix:
189
+
190
+ ```bash
191
+ export NODE_EXTRA_CA_CERTS=/etc/ssl/certs/ca-certificates.crt
192
+ nodmix gateway run
193
+ ```
194
+
195
+ Do not rely on writing only to `~/.nodmix/.env` for this variable; Node reads
196
+ `NODE_EXTRA_CA_CERTS` at process startup.
197
+
198
+ ## Legacy environment variables
199
+
200
+ Nodmix only reads `NODMIX_*` environment variables. The legacy
201
+ `CLAWDBOT_*` and `MOLTBOT_*` prefixes from earlier releases are silently
202
+ ignored.
203
+
204
+ If any are still set on the Gateway process at startup, Nodmix emits a
205
+ single Node deprecation warning (`NODMIX_LEGACY_ENV_VARS`) listing the
206
+ detected prefixes and the total count. Rename each value by replacing the
207
+ legacy prefix with `NODMIX_` (for example `CLAWDBOT_GATEWAY_TOKEN` →
208
+ `NODMIX_GATEWAY_TOKEN`); the old names take no effect.
209
+
210
+ ## Related
211
+
212
+ - [Gateway configuration](/gateway/configuration)
213
+ - [FAQ: env vars and .env loading](/help/faq#env-vars-and-env-loading)
214
+ - [Models overview](/concepts/models)