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,64 @@
1
+ import { pathToFileURL } from "node:url";
2
+
3
+ const allowedLifecyclePackageManagers = new Set(["pnpm", "npm", "yarn", "bun"]);
4
+
5
+ function normalizeEnvValue(value) {
6
+ return typeof value === "string" ? value.trim() : "";
7
+ }
8
+
9
+ function normalizeLifecyclePackageManagerName(value) {
10
+ const normalized = normalizeEnvValue(value).toLowerCase();
11
+ if (!/^[a-z0-9][a-z0-9._-]*$/u.test(normalized)) {
12
+ return null;
13
+ }
14
+ return allowedLifecyclePackageManagers.has(normalized) ? normalized : null;
15
+ }
16
+
17
+ export function detectLifecyclePackageManager(env = process.env) {
18
+ const userAgent = normalizeEnvValue(env.npm_config_user_agent);
19
+ const userAgentMatch = /^([A-Za-z0-9._-]+)\//u.exec(userAgent);
20
+ if (userAgentMatch) {
21
+ return normalizeLifecyclePackageManagerName(userAgentMatch[1]);
22
+ }
23
+
24
+ const execPath = normalizeEnvValue(env.npm_execpath).toLowerCase();
25
+ if (execPath.includes("pnpm")) {
26
+ return "pnpm";
27
+ }
28
+ if (execPath.includes("npm")) {
29
+ return "npm";
30
+ }
31
+ if (execPath.includes("yarn")) {
32
+ return "yarn";
33
+ }
34
+ if (execPath.includes("bun")) {
35
+ return "bun";
36
+ }
37
+
38
+ return null;
39
+ }
40
+
41
+ export function createPackageManagerWarningMessage(packageManager) {
42
+ if (!packageManager || packageManager === "pnpm") {
43
+ return null;
44
+ }
45
+
46
+ return [
47
+ `[nodmix] warning: detected ${packageManager} for install lifecycle.`,
48
+ "[nodmix] this repo works best with pnpm; npm-compatible installs are slower and much larger here.",
49
+ "[nodmix] prefer: corepack pnpm install",
50
+ ].join("\n");
51
+ }
52
+
53
+ export function warnIfNonPnpmLifecycle(env = process.env, warn = console.warn) {
54
+ const message = createPackageManagerWarningMessage(detectLifecyclePackageManager(env));
55
+ if (!message) {
56
+ return false;
57
+ }
58
+ warn(message);
59
+ return true;
60
+ }
61
+
62
+ if (import.meta.url === pathToFileURL(process.argv[1] ?? "").href) {
63
+ warnIfNonPnpmLifecycle();
64
+ }
@@ -0,0 +1,20 @@
1
+ const WINDOWS_UNSAFE_CMD_CHARS_RE = /[&|<>%\r\n]/;
2
+
3
+ export function resolvePathEnvKey(env) {
4
+ return Object.keys(env).find((key) => key.toLowerCase() === "path") ?? "PATH";
5
+ }
6
+
7
+ function escapeForCmdExe(arg) {
8
+ if (WINDOWS_UNSAFE_CMD_CHARS_RE.test(arg)) {
9
+ throw new Error(`unsafe Windows cmd.exe argument detected: ${JSON.stringify(arg)}`);
10
+ }
11
+ const escaped = arg.replace(/\^/g, "^^");
12
+ if (!escaped.includes(" ") && !escaped.includes('"')) {
13
+ return escaped;
14
+ }
15
+ return `"${escaped.replace(/"/g, '""')}"`;
16
+ }
17
+
18
+ export function buildCmdExeCommandLine(command, args) {
19
+ return [escapeForCmdExe(command), ...args.map(escapeForCmdExe)].join(" ");
20
+ }
@@ -0,0 +1,70 @@
1
+ ---
2
+ name: 1password
3
+ description: "Set up and use 1Password CLI for sign-in, desktop integration, and reading or injecting secrets."
4
+ homepage: https://developer.1password.com/docs/cli/get-started/
5
+ metadata:
6
+ {
7
+ "nodmix":
8
+ {
9
+ "emoji": "🔐",
10
+ "requires": { "bins": ["op"] },
11
+ "install":
12
+ [
13
+ {
14
+ "id": "brew",
15
+ "kind": "brew",
16
+ "formula": "1password-cli",
17
+ "bins": ["op"],
18
+ "label": "Install 1Password CLI (brew)",
19
+ },
20
+ ],
21
+ },
22
+ }
23
+ ---
24
+
25
+ # 1Password CLI
26
+
27
+ Follow the official CLI get-started steps. Don't guess install commands.
28
+
29
+ ## References
30
+
31
+ - `references/get-started.md` (install + app integration + sign-in flow)
32
+ - `references/cli-examples.md` (real `op` examples)
33
+
34
+ ## Workflow
35
+
36
+ 1. Check OS + shell.
37
+ 2. Verify CLI present: `op --version`.
38
+ 3. Confirm desktop app integration is enabled (per get-started) and the app is unlocked.
39
+ 4. REQUIRED: create a fresh tmux session for all `op` commands (no direct `op` calls outside tmux).
40
+ 5. Sign in / authorize inside tmux: `op signin` (expect app prompt).
41
+ 6. Verify access inside tmux: `op whoami` (must succeed before any secret read).
42
+ 7. If multiple accounts: use `--account` or `OP_ACCOUNT`.
43
+
44
+ ## REQUIRED tmux session (tmux)
45
+
46
+ The shell tool uses a fresh TTY per command. To avoid re-prompts and failures, always run `op` inside a dedicated tmux session with a fresh socket/session name.
47
+
48
+ Example (see `tmux` skill for socket conventions, do not reuse old session names):
49
+
50
+ ```bash
51
+ SOCKET_DIR="${NODMIX_TMUX_SOCKET_DIR:-${TMPDIR:-/tmp}/nodmix-tmux-sockets}"
52
+ mkdir -p "$SOCKET_DIR"
53
+ SOCKET="$SOCKET_DIR/nodmix-op.sock"
54
+ SESSION="op-auth-$(date +%Y%m%d-%H%M%S)"
55
+
56
+ tmux -S "$SOCKET" new -d -s "$SESSION" -n shell
57
+ tmux -S "$SOCKET" send-keys -t "$SESSION":0.0 -- "op signin --account my.1password.com" Enter
58
+ tmux -S "$SOCKET" send-keys -t "$SESSION":0.0 -- "op whoami" Enter
59
+ tmux -S "$SOCKET" send-keys -t "$SESSION":0.0 -- "op vault list" Enter
60
+ tmux -S "$SOCKET" capture-pane -p -J -t "$SESSION":0.0 -S -200
61
+ tmux -S "$SOCKET" kill-session -t "$SESSION"
62
+ ```
63
+
64
+ ## Guardrails
65
+
66
+ - Never paste secrets into logs, chat, or code.
67
+ - Prefer `op run` / `op inject` over writing secrets to disk.
68
+ - If sign-in without app integration is needed, use `op account add`.
69
+ - If a command returns "account is not signed in", re-run `op signin` inside tmux and authorize in the app.
70
+ - Do not run `op` outside tmux; stop and ask if tmux is unavailable.
@@ -0,0 +1,29 @@
1
+ # op CLI examples (from op help)
2
+
3
+ ## Sign in
4
+
5
+ - `op signin`
6
+ - `op signin --account <shorthand|signin-address|account-id|user-id>`
7
+
8
+ ## Read
9
+
10
+ - `op read op://app-prod/db/password`
11
+ - `op read "op://app-prod/db/one-time password?attribute=otp"`
12
+ - `op read "op://app-prod/ssh key/private key?ssh-format=openssh"`
13
+ - `op read --out-file ./key.pem op://app-prod/server/ssh/key.pem`
14
+
15
+ ## Run
16
+
17
+ - `export DB_PASSWORD="op://app-prod/db/password"`
18
+ - `op run --no-masking -- printenv DB_PASSWORD`
19
+ - `op run --env-file="./.env" -- printenv DB_PASSWORD`
20
+
21
+ ## Inject
22
+
23
+ - `echo "db_password: {{ op://app-prod/db/password }}" | op inject`
24
+ - `op inject -i config.yml.tpl -o config.yml`
25
+
26
+ ## Whoami / accounts
27
+
28
+ - `op whoami`
29
+ - `op account list`
@@ -0,0 +1,17 @@
1
+ # 1Password CLI get-started (summary)
2
+
3
+ - Works on macOS, Windows, and Linux.
4
+ - macOS/Linux shells: bash, zsh, sh, fish.
5
+ - Windows shell: PowerShell.
6
+ - Requires a 1Password subscription and the desktop app to use app integration.
7
+ - macOS requirement: Big Sur 11.0.0 or later.
8
+ - Linux app integration requires PolKit + an auth agent.
9
+ - Install the CLI per the official doc for your OS.
10
+ - Enable desktop app integration in the 1Password app:
11
+ - Open and unlock the app, then select your account/collection.
12
+ - macOS: Settings > Developer > Integrate with 1Password CLI (Touch ID optional).
13
+ - Windows: turn on Windows Hello, then Settings > Developer > Integrate.
14
+ - Linux: Settings > Security > Unlock using system authentication, then Settings > Developer > Integrate.
15
+ - After integration, run any command to sign in (example in docs: `op vault list`).
16
+ - If multiple accounts: use `op signin` to pick one, or `--account` / `OP_ACCOUNT`.
17
+ - For non-integration auth, use `op account add`.
@@ -0,0 +1,77 @@
1
+ ---
2
+ name: apple-notes
3
+ description: "Create, view, edit, delete, search, move, or export Apple Notes via the memo CLI on macOS."
4
+ homepage: https://github.com/antoniorodr/memo
5
+ metadata:
6
+ {
7
+ "nodmix":
8
+ {
9
+ "emoji": "📝",
10
+ "os": ["darwin"],
11
+ "requires": { "bins": ["memo"] },
12
+ "install":
13
+ [
14
+ {
15
+ "id": "brew",
16
+ "kind": "brew",
17
+ "formula": "antoniorodr/memo/memo",
18
+ "bins": ["memo"],
19
+ "label": "Install memo via Homebrew",
20
+ },
21
+ ],
22
+ },
23
+ }
24
+ ---
25
+
26
+ # Apple Notes CLI
27
+
28
+ Use `memo notes` to manage Apple Notes directly from the terminal. Create, view, edit, delete, search, move notes between folders, and export to HTML/Markdown.
29
+
30
+ Setup
31
+
32
+ - Install (Homebrew): `brew tap antoniorodr/memo && brew install antoniorodr/memo/memo`
33
+ - Manual (pip): `pip install .` (after cloning the repo)
34
+ - macOS-only; if prompted, grant Automation access to Notes.app.
35
+
36
+ View Notes
37
+
38
+ - List all notes: `memo notes`
39
+ - Filter by folder: `memo notes -f "Folder Name"`
40
+ - Search notes (fuzzy): `memo notes -s "query"`
41
+
42
+ Create Notes
43
+
44
+ - Add a new note: `memo notes -a`
45
+ - Opens an interactive editor to compose the note.
46
+ - Quick add with title: `memo notes -a "Note Title"`
47
+
48
+ Edit Notes
49
+
50
+ - Edit existing note: `memo notes -e`
51
+ - Interactive selection of note to edit.
52
+
53
+ Delete Notes
54
+
55
+ - Delete a note: `memo notes -d`
56
+ - Interactive selection of note to delete.
57
+
58
+ Move Notes
59
+
60
+ - Move note to folder: `memo notes -m`
61
+ - Interactive selection of note and destination folder.
62
+
63
+ Export Notes
64
+
65
+ - Export to HTML/Markdown: `memo notes -ex`
66
+ - Exports selected note; uses Mistune for markdown processing.
67
+
68
+ Limitations
69
+
70
+ - Cannot edit notes containing images or attachments.
71
+ - Interactive prompts may require terminal access.
72
+
73
+ Notes
74
+
75
+ - macOS-only.
76
+ - Requires Apple Notes.app to be accessible.
77
+ - For automation, grant permissions in System Settings > Privacy & Security > Automation.
@@ -0,0 +1,118 @@
1
+ ---
2
+ name: apple-reminders
3
+ description: "List, add, edit, complete, or delete Apple Reminders and reminder lists via remindctl."
4
+ homepage: https://github.com/steipete/remindctl
5
+ metadata:
6
+ {
7
+ "nodmix":
8
+ {
9
+ "emoji": "⏰",
10
+ "os": ["darwin"],
11
+ "requires": { "bins": ["remindctl"] },
12
+ "install":
13
+ [
14
+ {
15
+ "id": "brew",
16
+ "kind": "brew",
17
+ "formula": "steipete/tap/remindctl",
18
+ "bins": ["remindctl"],
19
+ "label": "Install remindctl via Homebrew",
20
+ },
21
+ ],
22
+ },
23
+ }
24
+ ---
25
+
26
+ # Apple Reminders CLI (remindctl)
27
+
28
+ Use `remindctl` to manage Apple Reminders directly from the terminal.
29
+
30
+ ## When to Use
31
+
32
+ Use when:
33
+
34
+ - User explicitly mentions "reminder" or "Reminders app"
35
+ - Creating personal to-dos with due dates that sync to iOS
36
+ - Managing Apple Reminders lists
37
+ - User wants tasks to appear in their iPhone/iPad Reminders app
38
+
39
+ ## When NOT to Use
40
+
41
+ Do not use when:
42
+
43
+ - Scheduling Nodmix tasks or alerts -> use `cron` tool with systemEvent instead
44
+ - Calendar events or appointments -> use Apple Calendar
45
+ - Project/work task management -> use Notion, GitHub Issues, or task queue
46
+ - One-time notifications -> use `cron` tool for timed alerts
47
+ - User says "remind me" but means an Nodmix alert -> clarify first
48
+
49
+ ## Setup
50
+
51
+ - Install: `brew install steipete/tap/remindctl`
52
+ - macOS-only; grant Reminders permission when prompted
53
+ - Check status: `remindctl status`
54
+ - Request access: `remindctl authorize`
55
+
56
+ ## Common Commands
57
+
58
+ ### View Reminders
59
+
60
+ ```bash
61
+ remindctl # Today's reminders
62
+ remindctl today # Today
63
+ remindctl tomorrow # Tomorrow
64
+ remindctl week # This week
65
+ remindctl overdue # Past due
66
+ remindctl all # Everything
67
+ remindctl 2026-01-04 # Specific date
68
+ ```
69
+
70
+ ### Manage Lists
71
+
72
+ ```bash
73
+ remindctl list # List all lists
74
+ remindctl list Work # Show specific list
75
+ remindctl list Projects --create # Create list
76
+ remindctl list Work --delete # Delete list
77
+ ```
78
+
79
+ ### Create Reminders
80
+
81
+ ```bash
82
+ remindctl add "Buy milk"
83
+ remindctl add --title "Call mom" --list Personal --due tomorrow
84
+ remindctl add --title "Meeting prep" --due "2026-02-15 09:00"
85
+ ```
86
+
87
+ ### Complete/Delete
88
+
89
+ ```bash
90
+ remindctl complete 1 2 3 # Complete by ID
91
+ remindctl delete 4A83 --force # Delete by ID
92
+ ```
93
+
94
+ ### Output Formats
95
+
96
+ ```bash
97
+ remindctl today --json # JSON for scripting
98
+ remindctl today --plain # TSV format
99
+ remindctl today --quiet # Counts only
100
+ ```
101
+
102
+ ## Date Formats
103
+
104
+ Accepted by `--due` and date filters:
105
+
106
+ - `today`, `tomorrow`, `yesterday`
107
+ - `YYYY-MM-DD`
108
+ - `YYYY-MM-DD HH:mm`
109
+ - ISO 8601 (`2026-01-04T12:34:56Z`)
110
+
111
+ ## Example: Clarifying User Intent
112
+
113
+ User: "Remind me to check on the deploy in 2 hours"
114
+
115
+ **Ask:** "Do you want this in Apple Reminders (syncs to your phone) or as an Nodmix alert (I'll message you here)?"
116
+
117
+ - Apple Reminders -> use this skill
118
+ - Nodmix alert -> use `cron` tool with systemEvent
@@ -0,0 +1,107 @@
1
+ ---
2
+ name: bear-notes
3
+ description: "Create, search, and manage Bear notes via grizzly CLI."
4
+ homepage: https://bear.app
5
+ metadata:
6
+ {
7
+ "nodmix":
8
+ {
9
+ "emoji": "🐻",
10
+ "os": ["darwin"],
11
+ "requires": { "bins": ["grizzly"] },
12
+ "install":
13
+ [
14
+ {
15
+ "id": "go",
16
+ "kind": "go",
17
+ "module": "github.com/tylerwince/grizzly/cmd/grizzly@latest",
18
+ "bins": ["grizzly"],
19
+ "label": "Install grizzly (go)",
20
+ },
21
+ ],
22
+ },
23
+ }
24
+ ---
25
+
26
+ # Bear Notes
27
+
28
+ Use `grizzly` to create, read, and manage notes in Bear on macOS.
29
+
30
+ Requirements
31
+
32
+ - Bear app installed and running
33
+ - For some operations (add-text, tags, open-note --selected), a Bear app token (stored in `~/.config/grizzly/token`)
34
+
35
+ ## Getting a Bear Token
36
+
37
+ For operations that require a token (add-text, tags, open-note --selected), you need an authentication token:
38
+
39
+ 1. Open Bear -> Help -> API Token -> Copy Token
40
+ 2. Save it: `echo "YOUR_TOKEN" > ~/.config/grizzly/token`
41
+
42
+ ## Common Commands
43
+
44
+ Create a note
45
+
46
+ ```bash
47
+ echo "Note content here" | grizzly create --title "My Note" --tag work
48
+ grizzly create --title "Quick Note" --tag inbox < /dev/null
49
+ ```
50
+
51
+ Open/read a note by ID
52
+
53
+ ```bash
54
+ grizzly open-note --id "NOTE_ID" --enable-callback --json
55
+ ```
56
+
57
+ Append text to a note
58
+
59
+ ```bash
60
+ echo "Additional content" | grizzly add-text --id "NOTE_ID" --mode append --token-file ~/.config/grizzly/token
61
+ ```
62
+
63
+ List all tags
64
+
65
+ ```bash
66
+ grizzly tags --enable-callback --json --token-file ~/.config/grizzly/token
67
+ ```
68
+
69
+ Search notes (via open-tag)
70
+
71
+ ```bash
72
+ grizzly open-tag --name "work" --enable-callback --json
73
+ ```
74
+
75
+ ## Options
76
+
77
+ Common flags:
78
+
79
+ - `--dry-run` - Preview the URL without executing
80
+ - `--print-url` - Show the x-callback-url
81
+ - `--enable-callback` - Wait for Bear's response (needed for reading data)
82
+ - `--json` - Output as JSON (when using callbacks)
83
+ - `--token-file PATH` - Path to Bear API token file
84
+
85
+ ## Configuration
86
+
87
+ Grizzly reads config from (in priority order):
88
+
89
+ 1. CLI flags
90
+ 2. Environment variables (`GRIZZLY_TOKEN_FILE`, `GRIZZLY_CALLBACK_URL`, `GRIZZLY_TIMEOUT`)
91
+ 3. `.grizzly.toml` in current directory
92
+ 4. `~/.config/grizzly/config.toml`
93
+
94
+ Example `~/.config/grizzly/config.toml`:
95
+
96
+ ```toml
97
+ token_file = "~/.config/grizzly/token"
98
+ callback_url = "http://127.0.0.1:42123/success"
99
+ timeout = "5s"
100
+ ```
101
+
102
+ ## Notes
103
+
104
+ - Bear must be running for commands to work
105
+ - Note IDs are Bear's internal identifiers (visible in note info or via callbacks)
106
+ - Use `--enable-callback` when you need to read data back from Bear
107
+ - Some operations require a valid token (add-text, tags, open-note --selected)
@@ -0,0 +1,69 @@
1
+ ---
2
+ name: blogwatcher
3
+ description: "Monitor blogs and RSS/Atom feeds for updates using the blogwatcher CLI."
4
+ homepage: https://github.com/Hyaxia/blogwatcher
5
+ metadata:
6
+ {
7
+ "nodmix":
8
+ {
9
+ "emoji": "📰",
10
+ "requires": { "bins": ["blogwatcher"] },
11
+ "install":
12
+ [
13
+ {
14
+ "id": "go",
15
+ "kind": "go",
16
+ "module": "github.com/Hyaxia/blogwatcher/cmd/blogwatcher@latest",
17
+ "bins": ["blogwatcher"],
18
+ "label": "Install blogwatcher (go)",
19
+ },
20
+ ],
21
+ },
22
+ }
23
+ ---
24
+
25
+ # blogwatcher
26
+
27
+ Track blog and RSS/Atom feed updates with the `blogwatcher` CLI.
28
+
29
+ Install
30
+
31
+ - Go: `go install github.com/Hyaxia/blogwatcher/cmd/blogwatcher@latest`
32
+
33
+ Quick start
34
+
35
+ - `blogwatcher --help`
36
+
37
+ Common commands
38
+
39
+ - Add a blog: `blogwatcher add "My Blog" https://example.com`
40
+ - List blogs: `blogwatcher blogs`
41
+ - Scan for updates: `blogwatcher scan`
42
+ - List articles: `blogwatcher articles`
43
+ - Mark an article read: `blogwatcher read 1`
44
+ - Mark all articles read: `blogwatcher read-all`
45
+ - Remove a blog: `blogwatcher remove "My Blog"`
46
+
47
+ Example output
48
+
49
+ ```
50
+ $ blogwatcher blogs
51
+ Tracked blogs (1):
52
+
53
+ xkcd
54
+ URL: https://xkcd.com
55
+ ```
56
+
57
+ ```
58
+ $ blogwatcher scan
59
+ Scanning 1 blog(s)...
60
+
61
+ xkcd
62
+ Source: RSS | Found: 4 | New: 4
63
+
64
+ Found 4 new article(s) total!
65
+ ```
66
+
67
+ Notes
68
+
69
+ - Use `blogwatcher <command> --help` to discover flags and options.
@@ -0,0 +1,47 @@
1
+ ---
2
+ name: blucli
3
+ description: "BluOS CLI (blu) for discovery, playback, grouping, and volume."
4
+ homepage: https://blucli.sh
5
+ metadata:
6
+ {
7
+ "nodmix":
8
+ {
9
+ "emoji": "🫐",
10
+ "requires": { "bins": ["blu"] },
11
+ "install":
12
+ [
13
+ {
14
+ "id": "go",
15
+ "kind": "go",
16
+ "module": "github.com/steipete/blucli/cmd/blu@latest",
17
+ "bins": ["blu"],
18
+ "label": "Install blucli (go)",
19
+ },
20
+ ],
21
+ },
22
+ }
23
+ ---
24
+
25
+ # blucli (blu)
26
+
27
+ Use `blu` to control Bluesound/NAD players.
28
+
29
+ Quick start
30
+
31
+ - `blu devices` (pick target)
32
+ - `blu --device <id> status`
33
+ - `blu play|pause|stop`
34
+ - `blu volume set 15`
35
+
36
+ Target selection (in priority order)
37
+
38
+ - `--device <id|name|alias>`
39
+ - `BLU_DEVICE`
40
+ - config default (if set)
41
+
42
+ Common tasks
43
+
44
+ - Grouping: `blu group status|add|remove`
45
+ - TuneIn search/play: `blu tunein search "query"`, `blu tunein play "query"`
46
+
47
+ Prefer `--json` for scripts. Confirm the target device before changing playback.
@@ -0,0 +1,45 @@
1
+ ---
2
+ name: camsnap
3
+ description: "Capture frames or clips from RTSP/ONVIF cameras."
4
+ homepage: https://camsnap.ai
5
+ metadata:
6
+ {
7
+ "nodmix":
8
+ {
9
+ "emoji": "📸",
10
+ "requires": { "bins": ["camsnap"] },
11
+ "install":
12
+ [
13
+ {
14
+ "id": "brew",
15
+ "kind": "brew",
16
+ "formula": "steipete/tap/camsnap",
17
+ "bins": ["camsnap"],
18
+ "label": "Install camsnap (brew)",
19
+ },
20
+ ],
21
+ },
22
+ }
23
+ ---
24
+
25
+ # camsnap
26
+
27
+ Use `camsnap` to grab snapshots, clips, or motion events from configured cameras.
28
+
29
+ Setup
30
+
31
+ - Config file: `~/.config/camsnap/config.yaml`
32
+ - Add camera: `camsnap add --name kitchen --host 192.168.0.10 --user user --pass pass`
33
+
34
+ Common commands
35
+
36
+ - Discover: `camsnap discover --info`
37
+ - Snapshot: `camsnap snap kitchen --out shot.jpg`
38
+ - Clip: `camsnap clip kitchen --dur 5s --out clip.mp4`
39
+ - Motion watch: `camsnap watch kitchen --threshold 0.2 --action '...'`
40
+ - Doctor: `camsnap doctor --probe`
41
+
42
+ Notes
43
+
44
+ - Requires `ffmpeg` on PATH.
45
+ - Prefer a short test capture before longer clips.