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,131 @@
1
+ ---
2
+ summary: "Plan and audit checklist for moving Canvas out of core and into a bundled experimental plugin."
3
+ read_when:
4
+ - Moving Canvas host, tools, commands, docs, or protocol ownership
5
+ - Auditing whether Canvas is still core-owned
6
+ - Preparing or reviewing the experimental Canvas plugin PR
7
+ title: "Canvas plugin refactor"
8
+ ---
9
+
10
+ # Canvas plugin refactor
11
+
12
+ Canvas is low-use and experimental. Treat it as a bundled plugin, not a core feature. Core may keep generic gateway, node, HTTP, auth, config, and native-client plumbing, but Canvas-specific behavior should live under `extensions/canvas`.
13
+
14
+ ## Goal
15
+
16
+ Move Canvas ownership to `extensions/canvas` while preserving the current paired-node behavior:
17
+
18
+ - the agent-facing `canvas` tool is registered by the Canvas plugin
19
+ - Canvas node commands are allowed only when the Canvas plugin registers them
20
+ - A2UI host/source files live under the Canvas plugin
21
+ - Canvas document materialization lives under the Canvas plugin
22
+ - CLI command implementation lives under the Canvas plugin, or delegates through a plugin-owned runtime barrel
23
+ - docs and plugin inventory describe Canvas as experimental and plugin-backed
24
+
25
+ ## Non-goals
26
+
27
+ - Do not redesign the native app Canvas UI in this refactor.
28
+ - Do not remove Canvas protocol/client support from iOS, Android, or macOS unless a separate product decision says Canvas should be deleted.
29
+ - Do not build a broad plugin service framework only for Canvas unless at least one other bundled plugin needs the same seam.
30
+
31
+ ## Current branch state
32
+
33
+ Done:
34
+
35
+ - Added bundled plugin package in `extensions/canvas`.
36
+ - Added `extensions/canvas/nodmix.plugin.json`.
37
+ - Moved the agent `canvas` tool from `src/agents/tools/canvas-tool.ts` to `extensions/canvas/src/tool.ts`.
38
+ - Removed core registration of `createCanvasTool` from `src/agents/nodmix-tools.ts`.
39
+ - Moved Canvas host implementation from `src/canvas-host` to `extensions/canvas/src/host`.
40
+ - Kept `extensions/canvas/runtime-api.ts` as the plugin-owned compatibility barrel for tests, packaging, and external public Canvas helpers.
41
+ - Moved Canvas document materialization from `src/gateway/canvas-documents.ts` to `extensions/canvas/src/documents.ts`.
42
+ - Moved Canvas CLI implementation and A2UI JSONL helpers into `extensions/canvas/src/cli.ts`.
43
+ - Moved Canvas host URL and scoped capability helpers into `extensions/canvas/src`.
44
+ - Moved Canvas node command defaults out of hardcoded core lists and into plugin `nodeInvokePolicies`.
45
+ - Added plugin-owned Canvas host config at `plugins.entries.canvas.config.host`.
46
+ - Moved Canvas and A2UI HTTP serving behind Canvas plugin HTTP route registration.
47
+ - Added generic plugin WebSocket upgrade dispatch for plugin-owned HTTP routes.
48
+ - Replaced Canvas-specific gateway host URL and node capability auth with generic hosted plugin surface and node capability helpers.
49
+ - Added plugin-owned hosted media resolvers so Canvas document URLs resolve through the Canvas plugin instead of core importing Canvas document internals.
50
+ - Added `api.registerNodeCliFeature(...)` so Canvas can declare `nodmix nodes canvas` as a plugin-owned node feature without manually spelling the parent command path.
51
+ - Removed production `src/**` imports of `extensions/canvas/runtime-api.js`.
52
+ - Moved the A2UI bundle source from `apps/shared/NodmixKit/Tools/CanvasA2UI` to `extensions/canvas/src/host/a2ui-app`.
53
+ - Moved A2UI build/copy implementation under `extensions/canvas/scripts` and replaced root build wiring with generic bundled-plugin asset hooks.
54
+ - Removed the runtime legacy top-level `canvasHost` config alias.
55
+ - Kept the Canvas doctor migration so `nodmix doctor --fix` rewrites old `canvasHost` configs into `plugins.entries.canvas.config.host`.
56
+ - Removed old-agent Canvas protocol compatibility behind gateway protocol v4. Native clients and gateways now use only `pluginSurfaceUrls.canvas` plus `node.pluginSurface.refresh`; the deprecated `canvasHostUrl`, `canvasCapability`, and `node.canvas.capability.refresh` path is intentionally unsupported in this experimental refactor.
57
+ - Updated generated plugin inventory to include Canvas.
58
+ - Added plugin reference docs at `docs/plugins/reference/canvas.md`.
59
+
60
+ Known remaining core-owned Canvas surfaces:
61
+
62
+ - Native app Canvas handlers under `apps/` still intentionally consume the Canvas plugin surface
63
+ - native app Canvas protocol/client handlers under `apps/`
64
+ - published artifact output still uses `dist/canvas-host/a2ui` for backwards-compatible runtime lookup, but the copy step is now plugin-owned
65
+
66
+ ## Target shape
67
+
68
+ `extensions/canvas` should own:
69
+
70
+ - plugin manifest and package metadata
71
+ - agent tool registration
72
+ - node invoke command policy
73
+ - Canvas host and A2UI runtime
74
+ - Canvas A2UI bundle source and asset build/copy scripts
75
+ - Canvas document creation and asset resolution
76
+ - Canvas CLI implementation
77
+ - Canvas docs page and plugin inventory entry
78
+
79
+ Core should own only generic seams:
80
+
81
+ - plugin discovery and registration
82
+ - generic agent tool registry
83
+ - generic node invoke policy registry
84
+ - generic gateway HTTP/auth and WebSocket upgrade dispatch
85
+ - generic hosted plugin surface URL resolution
86
+ - generic hosted media resolver registration
87
+ - generic node capability transport
88
+ - generic config plumbing
89
+ - generic bundled-plugin asset hook discovery
90
+
91
+ Native apps may keep Canvas command handlers as clients of the protocol. They are not the plugin runtime owner.
92
+
93
+ ## Migration steps
94
+
95
+ 1. Treat `plugins.entries.canvas.config.host` as the plugin-owned config surface.
96
+ 2. Update docs so Canvas is described as an experimental bundled plugin.
97
+ 3. Run focused Canvas tests, plugin inventory checks, plugin SDK API checks, and build/type gates affected by runtime boundaries.
98
+
99
+ ## Audit checklist
100
+
101
+ Before calling the refactor complete:
102
+
103
+ - `rg "src/canvas-host|../canvas-host"` returns no live source imports.
104
+ - `rg "canvas-tool|createCanvasTool" src` finds no core-owned Canvas tool implementation.
105
+ - `rg "canvas.present|canvas.snapshot|canvas.a2ui" src/gateway` finds no hardcoded allowlist defaults outside generic plugin policy tests.
106
+ - `rg "extensions/canvas/runtime-api" src --glob '!**/*.test.ts'` is empty.
107
+ - `rg "canvas-documents" src` is empty.
108
+ - `rg "registerNodesCanvasCommands|nodes-canvas" src` is empty; the Canvas plugin registers `nodmix nodes canvas` through nested plugin CLI metadata.
109
+ - `rg "createCanvasHostHandler|handleA2uiHttpRequest" src/gateway` returns no gateway runtime ownership.
110
+ - `rg "apps/shared/NodmixKit/Tools/CanvasA2UI|canvas-a2ui-copy|extensions/canvas/src/host/a2ui" scripts .github package.json` finds only compatibility wrappers or plugin-owned paths.
111
+ - `pnpm plugins:inventory:check` passes.
112
+ - `pnpm plugin-sdk:api:check` passes, or generated API baselines are intentionally updated and reviewed.
113
+ - Targeted Canvas tests pass.
114
+ - Changed-lanes tests pass for Canvas host/A2UI paths.
115
+ - PR body explicitly says Canvas is experimental and plugin-backed.
116
+
117
+ ## Verification commands
118
+
119
+ Use targeted local checks while iterating:
120
+
121
+ ```sh
122
+ pnpm test extensions/canvas/src/host/server.test.ts extensions/canvas/src/host/server.state-dir.test.ts extensions/canvas/src/host/file-resolver.test.ts
123
+ pnpm test src/gateway/server.plugin-node-capability-auth.test.ts src/gateway/server-import-boundary.test.ts
124
+ pnpm test extensions/canvas/src/config-migration.test.ts src/commands/doctor-legacy-config.migrations.test.ts
125
+ pnpm test test/scripts/changed-lanes.test.ts test/scripts/build-all.test.ts extensions/canvas/scripts/bundle-a2ui.test.ts test/scripts/bundled-plugin-assets.test.ts extensions/canvas/scripts/copy-a2ui.test.ts src/infra/run-node.test.ts
126
+ pnpm tsgo:extensions
127
+ pnpm plugins:inventory:check
128
+ pnpm plugin-sdk:api:check
129
+ ```
130
+
131
+ Run `pnpm build` before push if runtime barrel, lazy import, packaging, or published plugin surfaces change.
@@ -0,0 +1,341 @@
1
+ ---
2
+ summary: "Deletion-first plan for moving repeated channel ingress glue into core."
3
+ read_when:
4
+ - Auditing why the channel ingress refactor added too much code
5
+ - Moving route, command, event, activation, or access-group policy from bundled plugins into core
6
+ - Reviewing whether a channel ingress helper actually deletes bundled plugin code
7
+ title: "Ingress core deletion plan"
8
+ sidebarTitle: "Ingress core deletion"
9
+ ---
10
+
11
+ # Ingress core deletion plan
12
+
13
+ The ingress refactor is not healthy while it adds thousands of net lines. Core
14
+ centralization only counts when bundled plugin production code gets smaller and
15
+ old third-party SDK compatibility is quarantined to SDK/core shims.
16
+
17
+ Desired runtime shape:
18
+
19
+ ```text
20
+ bundled plugin event
21
+ -> extract platform facts locally
22
+ -> resolve shared ingress once when facts are available
23
+ -> branch on generic ingress projections/outcomes
24
+ -> perform platform side effects locally
25
+
26
+ old third-party helper
27
+ -> SDK compatibility shim
28
+ -> shared ingress-compatible projection where possible
29
+ -> old return shape preserved
30
+ ```
31
+
32
+ Bundled plugins should not translate ingress back into local `AccessResult`,
33
+ `GroupAccessDecision`, `CommandAuthDecision`, `DmCommandAccess`, or
34
+ `{ allowed, reasonCode }` shapes unless that type is public plugin API.
35
+
36
+ ## Budget
37
+
38
+ Measured against the PR merge-base with `origin/main`, including untracked
39
+ files.
40
+
41
+ ```text
42
+ merge-base 1671e7532adb
43
+
44
+ current:
45
+ core production +3,922 / -546 = +3,376
46
+ docs +601 / -17 = +584
47
+ other +145 / -2 = +143
48
+ plugin production +4,148 / -5,388 = -1,240
49
+ tests +2,326 / -2,414 = -88
50
+ total +11,142 / -8,367 = +2,775
51
+
52
+ required:
53
+ plugin production <= -1,500
54
+ core production <= +1,500, or paid for by larger plugin deletion
55
+ tests <= +1,000
56
+ total <= +2,000
57
+
58
+ stretch:
59
+ plugin production <= -2,500
60
+ core production <= +1,200
61
+ total <= 0
62
+ ```
63
+
64
+ Minimum remaining cleanup:
65
+
66
+ ```text
67
+ plugin production needs 260 more net deleted lines
68
+ total needs 775 more net deleted lines
69
+ core production still +1,876 over standalone budget, unless paid down by plugin deletion
70
+ ```
71
+
72
+ Comment-only deletion does not count as cleanup. The previous budget pass was
73
+ too generous because it included restored QQBot explanatory comments; this
74
+ document tracks executable/docs/test code movement only.
75
+
76
+ Re-measure after each cleanup wave:
77
+
78
+ ```sh
79
+ base=$(git merge-base HEAD origin/main)
80
+ git diff --shortstat "$base"
81
+ git diff --numstat "$base" -- src/channels/message-access src/plugin-sdk extensions | sort -nr -k1 | head -n 80
82
+ pnpm lint:extensions:no-deprecated-channel-access
83
+ ```
84
+
85
+ ## Diagnosis
86
+
87
+ The first pass added the shared ingress kernel, then left too much plugin-local
88
+ authorization beside it:
89
+
90
+ ```text
91
+ platform facts
92
+ -> shared ingress state and decision
93
+ -> plugin-local DTO or legacy projection
94
+ -> plugin-local if/else ladder
95
+ ```
96
+
97
+ That duplicates the model. Core production grew by about 3,376 lines, while
98
+ bundled plugin production is 1,240 lines smaller. That is better than the first
99
+ pass, but it is not inside the minimum budget. The fix remains deletion-first:
100
+
101
+ - delete plugin DTOs that only rename ingress fields
102
+ - delete tests that only assert wrapper shape
103
+ - add core helpers only when the same patch deletes bundled plugin code
104
+ - keep old SDK compatibility in SDK/core shims only
105
+ - repack core after wrapper deletion exposes the stable shape
106
+
107
+ ## Hotspots
108
+
109
+ Positive bundled production files that still need to shrink:
110
+
111
+ ```text
112
+ extensions/telegram/src/ingress.ts +126
113
+ extensions/discord/src/monitor/dm-command-auth.ts +101
114
+ extensions/signal/src/monitor/access-policy.ts +92
115
+ extensions/feishu/src/policy.ts +85
116
+ extensions/slack/src/monitor/auth.ts +64
117
+ extensions/googlechat/src/monitor-access.ts +59
118
+ extensions/nextcloud-talk/src/inbound.ts +51
119
+ extensions/matrix/src/matrix/monitor/access-state.ts +49
120
+ extensions/irc/src/inbound.ts +44
121
+ extensions/imessage/src/monitor/inbound-processing.ts +36
122
+ extensions/qa-channel/src/inbound.ts +34
123
+ extensions/qqbot/src/bridge/sdk-adapter.ts +33
124
+ extensions/tlon/src/monitor/utils.ts +30
125
+ extensions/twitch/src/access-control.ts +22
126
+ extensions/qqbot/src/engine/commands/slash-command-handler.ts +20
127
+ extensions/telegram/src/bot-handlers.runtime.ts +19
128
+ ```
129
+
130
+ The branch is not inside the minimum budget yet. The remaining review-relevant
131
+ work should delete repeated authorization flow, turn scaffolding, or wrapper
132
+ tests before adding another core abstraction.
133
+
134
+ ## Current Code Read
135
+
136
+ The healthy core seam already exists in `src/channels/message-access/runtime.ts`:
137
+ it owns identity adapters, effective allowlists, pairing-store reads, route
138
+ descriptors, command/event presets, access groups, and the final resolved
139
+ `ResolvedChannelMessageIngress` projection.
140
+
141
+ The remaining growth is mostly plugin glue layered on top of that seam:
142
+
143
+ - `extensions/telegram/src/ingress.ts` wraps core decisions in Telegram-specific
144
+ command/event helpers, then call sites still pass precomputed normalized
145
+ allowlists and owner lists.
146
+ - `extensions/discord/src/monitor/dm-command-auth.ts`,
147
+ `extensions/feishu/src/policy.ts`, `extensions/googlechat/src/monitor-access.ts`,
148
+ and `extensions/matrix/src/matrix/monitor/access-state.ts` still keep
149
+ local policy DTOs or legacy decision names beside ingress.
150
+ - `extensions/signal/src/monitor/access-policy.ts` correctly keeps Signal
151
+ identity normalization and pairing replies local, but still has a wrapper
152
+ seam that should collapse into direct ingress consumption.
153
+ - `extensions/nextcloud-talk/src/inbound.ts`, `extensions/irc/src/inbound.ts`,
154
+ `extensions/qa-channel/src/inbound.ts`, `extensions/zalo/src/monitor.ts`, and
155
+ `extensions/zalouser/src/monitor.ts` still repeat route/envelope/turn
156
+ assembly that can move to shared turn helpers outside the ingress kernel.
157
+
158
+ Conclusion: moving more code into core is only useful if it deletes these
159
+ plugin wrapper layers in the same patch. Adding another abstraction while
160
+ leaving wrapper returns in place repeats the mistake.
161
+
162
+ ## Boundary
163
+
164
+ Core owns generic policy:
165
+
166
+ - allowlist normalization and matching
167
+ - access-group expansion and diagnostics
168
+ - pairing-store DM allowlist reads
169
+ - route, sender, command, event, and activation gates
170
+ - admission mapping: dispatch, drop, skip, observe, pairing
171
+ - redacted state, decisions, diagnostics, and SDK compatibility projections
172
+ - reusable generic descriptors for identity, route, command, event, activation,
173
+ and outcomes
174
+
175
+ Plugins own transport facts and side effects:
176
+
177
+ - webhook/socket/request authenticity
178
+ - platform identity extraction and API lookups
179
+ - channel-specific policy defaults
180
+ - pairing challenge delivery, replies, acks, reactions, typing, media, history,
181
+ setup, doctor, status, logs, and user-facing copy
182
+
183
+ Core must stay channel-agnostic: no Discord, Slack, Telegram, Matrix, room,
184
+ guild, space, API client, or plugin-specific default in
185
+ `src/channels/message-access`.
186
+
187
+ ## Acceptance Rule
188
+
189
+ Every new core helper must delete bundled plugin production code immediately.
190
+
191
+ ```text
192
+ one bundled caller reject; keep plugin-local
193
+ two bundled callers accept only if plugin production LOC drops
194
+ three or more callers plugin deletion must be at least 2x new core LOC
195
+ compatibility-only helper SDK/core shim only; never bundled hot paths
196
+ ```
197
+
198
+ Stop and redesign if:
199
+
200
+ - plugin production LOC increases
201
+ - tests grow faster than production shrinks
202
+ - a bundled hot path returns a DTO that only renames `ResolvedChannelMessageIngress`
203
+ - a core helper needs a channel id, platform object, API client, or
204
+ channel-specific default
205
+
206
+ ## Work Packages
207
+
208
+ 1. Freeze the budget.
209
+ Put LOC in the PR, keep deprecated-ingress lint green, and include before/after
210
+ LOC in cleanup commits.
211
+
212
+ 2. Delete thin DTO seams.
213
+ Replace plugin-local wrapper returns with `ResolvedChannelMessageIngress`,
214
+ `senderAccess`, `commandAccess`, `routeAccess`, or `ingress` directly. Start
215
+ with QQBot, Telegram, Slack, Discord, Signal, Feishu, Matrix, iMessage, and
216
+ Tlon. Delete wrapper-shape tests; keep behavior tests.
217
+
218
+ 3. Add outcome classification only with deletions.
219
+ A generic classifier may expose `dispatch`, `pairing-required`,
220
+ `skip-activation`, `drop-command`, `drop-route`, `drop-sender`, and
221
+ `drop-ingress`. It must derive from the decision graph, not reason strings,
222
+ and migrate at least three plugins in the same patch.
223
+
224
+ 4. Add route descriptor builders only with deletions.
225
+ Generic route target and route sender helpers are acceptable only if they
226
+ immediately shrink route-heavy plugins: Google Chat, IRC, Microsoft Teams,
227
+ Nextcloud Talk, Mattermost, Slack, Zalo, and Zalo Personal.
228
+
229
+ 5. Add command/event presets only with deletions.
230
+ Centralize text-command, native-command, callback, and origin-subject shapes.
231
+ Command consumers must default to unauthorized when no command gate ran;
232
+ events must not start pairing.
233
+
234
+ 6. Add identity presets only where they remove boilerplate.
235
+ Stable-id, stable-id-plus-aliases, phone/e164, and multi-identifier helpers
236
+ are allowed when raw values enter only adapter input and redacted state keeps
237
+ opaque ids/counts.
238
+
239
+ 7. Share authorized turn assembly.
240
+ Outside the ingress kernel, remove repeated route/envelope/context/reply
241
+ scaffolding from QA Channel, IRC, Nextcloud Talk, Zalo, and Zalo Personal.
242
+ Core may own route/session/envelope/dispatch sequencing; plugins keep
243
+ delivery and channel-specific context.
244
+
245
+ 8. Quarantine compatibility.
246
+ Deprecated SDK helpers stay source-compatible, but bundled hot paths must not
247
+ import deprecated ingress or command-auth facades. Compatibility tests should
248
+ use fake third-party plugins, not bundled-plugin internals.
249
+
250
+ 9. Repack core.
251
+ After wrapper deletion, collapse one-use modules, remove unused exports, move
252
+ compatibility projection out of hot paths, and keep focused tests for identity,
253
+ route, command/event, activation, access groups, and compatibility shims.
254
+
255
+ ## Deletion Waves
256
+
257
+ Run these in order. Each wave must lower bundled production LOC.
258
+
259
+ 1. Wrapper collapse, expected plugin delta: -400 to -600.
260
+ Replace plugin-local `resolveXAccess`, `resolveXCommandAccess`, and
261
+ `accessFromIngress` result types with direct reads from
262
+ `ResolvedChannelMessageIngress`. First targets: Discord DM command auth,
263
+ Feishu policy, Matrix access state, Telegram ingress, Signal access policy,
264
+ QQBot SDK adapter.
265
+
266
+ 2. Shared outcome helpers, expected plugin delta: -200 to -350.
267
+ Add one generic classifier only if it deletes repeated
268
+ `shouldBlockControlCommand`, pairing, activation skip, route block, and sender
269
+ block ladders across at least three plugins.
270
+
271
+ 3. Route descriptor builders, expected plugin delta: -200 to -350.
272
+ Move repeated route target and route sender descriptor assembly into core
273
+ helpers. First targets: Google Chat, IRC, Microsoft Teams, Nextcloud Talk,
274
+ Mattermost, Slack, Zalo, Zalo Personal.
275
+
276
+ 4. Turn assembly sharing, expected plugin delta: -250 to -450.
277
+ Use common route/session/envelope/dispatch sequencing for simple inbound
278
+ plugins. First targets: QA Channel, IRC, Nextcloud Talk, Zalo, Zalo Personal.
279
+
280
+ 5. Core repack, expected core delta: -300 to -700.
281
+ After plugins consume runtime projections directly, delete one-use modules,
282
+ merge tiny files back into `runtime.ts` or focused siblings, and keep SDK
283
+ compatibility files separate from bundled hot paths.
284
+
285
+ 6. Test pruning, expected test delta: -300 to -600.
286
+ Delete tests that only assert removed wrapper shapes. Keep behavior tests for
287
+ command denial, group fallback, origin-subject matching, activation skip,
288
+ access groups, pairing, and redaction.
289
+
290
+ Expected minimum landing shape after these waves:
291
+
292
+ ```text
293
+ plugin production <= -1,500
294
+ core production about +1,800 to +2,200 before final repack
295
+ tests <= +500
296
+ total <= +2,000
297
+ ```
298
+
299
+ ## Do Not Move
300
+
301
+ Do not move platform config defaults, setup UX, doctor/fix copy, API lookups,
302
+ Slack owner-presence checks, Matrix alias/verification handling, Telegram
303
+ callback parsing, command syntax parsing, native command registration, reaction
304
+ payload parsing, pairing replies, command replies, acks, typing, media, history,
305
+ or logs.
306
+
307
+ ## Verification
308
+
309
+ Targeted local loop:
310
+
311
+ ```sh
312
+ pnpm lint:extensions:no-deprecated-channel-access
313
+ pnpm test src/channels/message-access/message-access.test.ts src/plugin-sdk/channel-ingress-runtime.test.ts src/plugin-sdk/access-groups.test.ts
314
+ pnpm test extensions/<changed-plugin>/src/...
315
+ pnpm plugin-sdk:api:check
316
+ pnpm config:docs:check
317
+ pnpm check:docs
318
+ git diff --check
319
+ ```
320
+
321
+ Use Testbox for broad changed gates/full-suite proof once the LOC trend is
322
+ inside budget.
323
+
324
+ Each work package records:
325
+
326
+ - before/after LOC by category
327
+ - deleted plugin wrappers
328
+ - new core helper LOC, if any
329
+ - targeted tests run
330
+ - remaining hotspot list
331
+
332
+ ## Exit Criteria
333
+
334
+ - bundled production imports no deprecated channel-access or command-auth facades
335
+ - compatibility code is isolated to SDK/core seams
336
+ - bundled plugins consume ingress projections or generic outcomes directly
337
+ - plugin production LOC is at least 1,500 net negative against `origin/main`
338
+ - core production LOC is `<= +1,500`, or any excess is paid for while total
339
+ stays `<= +2,000`
340
+ - representative tests cover redaction, route, command/event, activation,
341
+ access-group, and channel-specific fallback behavior
@@ -0,0 +1,129 @@
1
+ ---
2
+ summary: "Default Nodmix agent instructions and skills roster for the personal assistant setup"
3
+ title: "Default AGENTS.md"
4
+ read_when:
5
+ - Starting a new Nodmix agent session
6
+ - Enabling or auditing default skills
7
+ ---
8
+
9
+ ## First run (recommended)
10
+
11
+ Nodmix uses a dedicated workspace directory for the agent. Default: `~/.nodmix/workspace` (configurable via `agents.defaults.workspace`).
12
+
13
+ 1. Create the workspace (if it doesn't already exist):
14
+
15
+ ```bash
16
+ mkdir -p ~/.nodmix/workspace
17
+ ```
18
+
19
+ 2. Copy the default workspace templates into the workspace:
20
+
21
+ ```bash
22
+ cp docs/reference/templates/AGENTS.md ~/.nodmix/workspace/AGENTS.md
23
+ cp docs/reference/templates/SOUL.md ~/.nodmix/workspace/SOUL.md
24
+ cp docs/reference/templates/TOOLS.md ~/.nodmix/workspace/TOOLS.md
25
+ ```
26
+
27
+ 3. Optional: if you want the personal assistant skill roster, replace AGENTS.md with this file:
28
+
29
+ ```bash
30
+ cp docs/reference/AGENTS.default.md ~/.nodmix/workspace/AGENTS.md
31
+ ```
32
+
33
+ 4. Optional: choose a different workspace by setting `agents.defaults.workspace` (supports `~`):
34
+
35
+ ```json5
36
+ {
37
+ agents: { defaults: { workspace: "~/.nodmix/workspace" } },
38
+ }
39
+ ```
40
+
41
+ ## Safety defaults
42
+
43
+ - Don't dump directories or secrets into chat.
44
+ - Don't run destructive commands unless explicitly asked.
45
+ - Don't send partial/streaming replies to external messaging surfaces (only final replies).
46
+
47
+ ## Session start (required)
48
+
49
+ - Read `SOUL.md`, `USER.md`, and today+yesterday in `memory/`.
50
+ - Read `MEMORY.md` when present.
51
+ - Do it before responding.
52
+
53
+ ## Soul (required)
54
+
55
+ - `SOUL.md` defines identity, tone, and boundaries. Keep it current.
56
+ - If you change `SOUL.md`, tell the user.
57
+ - You are a fresh instance each session; continuity lives in these files.
58
+
59
+ ## Shared spaces (recommended)
60
+
61
+ - You're not the user's voice; be careful in group chats or public channels.
62
+ - Don't share private data, contact info, or internal notes.
63
+
64
+ ## Memory system (recommended)
65
+
66
+ - Daily log: `memory/YYYY-MM-DD.md` (create `memory/` if needed).
67
+ - Long-term memory: `MEMORY.md` for durable facts, preferences, and decisions.
68
+ - Lowercase `memory.md` is legacy repair input only; do not keep both root files on purpose.
69
+ - On session start, read today + yesterday + `MEMORY.md` when present.
70
+ - Capture: decisions, preferences, constraints, open loops.
71
+ - Avoid secrets unless explicitly requested.
72
+
73
+ ## Tools and skills
74
+
75
+ - Tools live in skills; follow each skill's `SKILL.md` when you need it.
76
+ - Keep environment-specific notes in `TOOLS.md` (Notes for Skills).
77
+
78
+ ## Backup tip (recommended)
79
+
80
+ 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.
81
+
82
+ ```bash
83
+ cd ~/.nodmix/workspace
84
+ git init
85
+ git add AGENTS.md
86
+ git commit -m "Add Clawd workspace"
87
+ # Optional: add a private remote + push
88
+ ```
89
+
90
+ ## What Nodmix does
91
+
92
+ - Runs WhatsApp gateway + Pi coding agent so the assistant can read/write chats, fetch context, and run skills via the host Mac.
93
+ - macOS app manages permissions (screen recording, notifications, microphone) and exposes the `nodmix` CLI via its bundled binary.
94
+ - 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.
95
+
96
+ ## Core skills (enable in Settings → Skills)
97
+
98
+ - **mcporter** - Tool server runtime/CLI for managing external skill backends.
99
+ - **Peekaboo** - Fast macOS screenshots with optional AI vision analysis.
100
+ - **camsnap** - Capture frames, clips, or motion alerts from RTSP/ONVIF security cams.
101
+ - **oracle** - OpenAI-ready agent CLI with session replay and browser control.
102
+ - **eightctl** - Control your sleep, from the terminal.
103
+ - **imsg** - Send, read, stream iMessage & SMS.
104
+ - **wacli** - WhatsApp CLI: sync, search, send.
105
+ - **discord** - Discord actions: react, stickers, polls. Use `user:<id>` or `channel:<id>` targets (bare numeric ids are ambiguous).
106
+ - **gog** - Google Suite CLI: Gmail, Calendar, Drive, Contacts.
107
+ - **spotify-player** - Terminal Spotify client to search/queue/control playback.
108
+ - **sag** - ElevenLabs speech with mac-style say UX; streams to speakers by default.
109
+ - **Sonos CLI** - Control Sonos speakers (discover/status/playback/volume/grouping) from scripts.
110
+ - **blucli** - Play, group, and automate BluOS players from scripts.
111
+ - **OpenHue CLI** - Philips Hue lighting control for scenes and automations.
112
+ - **OpenAI Whisper** - Local speech-to-text for quick dictation and voicemail transcripts.
113
+ - **Gemini CLI** - Google Gemini models from the terminal for fast Q&A.
114
+ - **agent-tools** - Utility toolkit for automations and helper scripts.
115
+
116
+ ## Usage notes
117
+
118
+ - Prefer the `nodmix` CLI for scripting; mac app handles permissions.
119
+ - Run installs from the Skills tab; it hides the button if a binary is already present.
120
+ - Keep heartbeats enabled so the assistant can schedule reminders, monitor inboxes, and trigger camera captures.
121
+ - 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.
122
+ - For browser-driven verification, use `nodmix browser` (tabs/status/screenshot) with the Nodmix-managed Chrome profile.
123
+ - For DOM inspection, use `nodmix browser eval|query|dom|snapshot` (and `--json`/`--out` when you need machine output).
124
+ - For interactions, use `nodmix browser click|type|hover|drag|select|upload|press|wait|navigate|back|evaluate|run` (click/type require snapshot refs; use `evaluate` for CSS selectors).
125
+
126
+ ## Related
127
+
128
+ - [Agent workspace](/concepts/agent-workspace)
129
+ - [Agent runtime](/concepts/agent)