machinaos 0.0.1 → 0.0.7

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 (422) hide show
  1. package/.env.template +71 -71
  2. package/LICENSE +21 -21
  3. package/README.md +163 -87
  4. package/bin/cli.js +62 -106
  5. package/client/.dockerignore +45 -45
  6. package/client/Dockerfile +68 -68
  7. package/client/dist/assets/index-DFSC53FP.css +1 -0
  8. package/client/dist/assets/index-fJ-1gTf5.js +613 -0
  9. package/client/dist/index.html +14 -0
  10. package/client/eslint.config.js +34 -16
  11. package/client/nginx.conf +66 -66
  12. package/client/package.json +61 -48
  13. package/client/src/App.tsx +27 -27
  14. package/client/src/Dashboard.tsx +1200 -1172
  15. package/client/src/ParameterPanel.tsx +302 -300
  16. package/client/src/components/AIAgentNode.tsx +315 -321
  17. package/client/src/components/APIKeyValidator.tsx +117 -117
  18. package/client/src/components/ClaudeChatModelNode.tsx +17 -17
  19. package/client/src/components/CredentialsModal.tsx +1200 -306
  20. package/client/src/components/GeminiChatModelNode.tsx +17 -17
  21. package/client/src/components/GenericNode.tsx +356 -356
  22. package/client/src/components/LocationParameterPanel.tsx +153 -153
  23. package/client/src/components/ModelNode.tsx +285 -285
  24. package/client/src/components/OpenAIChatModelNode.tsx +17 -17
  25. package/client/src/components/OutputPanel.tsx +470 -470
  26. package/client/src/components/ParameterRenderer.tsx +1873 -1873
  27. package/client/src/components/SkillEditorModal.tsx +3 -3
  28. package/client/src/components/SquareNode.tsx +812 -796
  29. package/client/src/components/ToolkitNode.tsx +365 -365
  30. package/client/src/components/auth/LoginPage.tsx +247 -247
  31. package/client/src/components/auth/ProtectedRoute.tsx +59 -59
  32. package/client/src/components/base/BaseChatModelNode.tsx +270 -270
  33. package/client/src/components/icons/AIProviderIcons.tsx +50 -50
  34. package/client/src/components/maps/GoogleMapsPicker.tsx +136 -136
  35. package/client/src/components/maps/MapsPreviewPanel.tsx +109 -109
  36. package/client/src/components/maps/index.ts +25 -25
  37. package/client/src/components/parameterPanel/InputSection.tsx +1094 -1094
  38. package/client/src/components/parameterPanel/LocationPanelLayout.tsx +64 -64
  39. package/client/src/components/parameterPanel/MapsSection.tsx +91 -91
  40. package/client/src/components/parameterPanel/MiddleSection.tsx +867 -571
  41. package/client/src/components/parameterPanel/OutputSection.tsx +80 -80
  42. package/client/src/components/parameterPanel/ParameterPanelLayout.tsx +81 -81
  43. package/client/src/components/parameterPanel/ToolSchemaEditor.tsx +436 -436
  44. package/client/src/components/parameterPanel/index.ts +41 -41
  45. package/client/src/components/shared/DataPanel.tsx +142 -142
  46. package/client/src/components/shared/JSONTreeRenderer.tsx +105 -105
  47. package/client/src/components/ui/AIResultModal.tsx +203 -203
  48. package/client/src/components/ui/ApiKeyInput.tsx +93 -0
  49. package/client/src/components/ui/CodeEditor.tsx +81 -81
  50. package/client/src/components/ui/CollapsibleSection.tsx +87 -87
  51. package/client/src/components/ui/ComponentItem.tsx +153 -153
  52. package/client/src/components/ui/ComponentPalette.tsx +320 -320
  53. package/client/src/components/ui/ConsolePanel.tsx +151 -43
  54. package/client/src/components/ui/ErrorBoundary.tsx +195 -195
  55. package/client/src/components/ui/InputNodesPanel.tsx +203 -203
  56. package/client/src/components/ui/MapSelector.tsx +313 -313
  57. package/client/src/components/ui/Modal.tsx +151 -148
  58. package/client/src/components/ui/NodeOutputPanel.tsx +1150 -1150
  59. package/client/src/components/ui/OutputDisplayPanel.tsx +381 -381
  60. package/client/src/components/ui/QRCodeDisplay.tsx +182 -0
  61. package/client/src/components/ui/TopToolbar.tsx +736 -736
  62. package/client/src/components/ui/WorkflowSidebar.tsx +293 -293
  63. package/client/src/config/antdTheme.ts +186 -186
  64. package/client/src/contexts/AuthContext.tsx +221 -221
  65. package/client/src/contexts/ThemeContext.tsx +42 -42
  66. package/client/src/contexts/WebSocketContext.tsx +2144 -1971
  67. package/client/src/factories/baseChatModelFactory.ts +255 -255
  68. package/client/src/hooks/useAndroidOperations.ts +118 -164
  69. package/client/src/hooks/useApiKeyValidation.ts +106 -106
  70. package/client/src/hooks/useApiKeys.ts +238 -238
  71. package/client/src/hooks/useAppTheme.ts +17 -17
  72. package/client/src/hooks/useComponentPalette.ts +50 -50
  73. package/client/src/hooks/useDragAndDrop.ts +123 -123
  74. package/client/src/hooks/useDragVariable.ts +88 -88
  75. package/client/src/hooks/useExecution.ts +319 -313
  76. package/client/src/hooks/useParameterPanel.ts +176 -176
  77. package/client/src/hooks/useReactFlowNodes.ts +188 -188
  78. package/client/src/hooks/useToolSchema.ts +209 -209
  79. package/client/src/hooks/useWhatsApp.ts +196 -196
  80. package/client/src/hooks/useWorkflowManagement.ts +45 -45
  81. package/client/src/index.css +314 -314
  82. package/client/src/nodeDefinitions/aiAgentNodes.ts +335 -335
  83. package/client/src/nodeDefinitions/aiModelNodes.ts +340 -340
  84. package/client/src/nodeDefinitions/androidServiceNodes.ts +383 -383
  85. package/client/src/nodeDefinitions/chatNodes.ts +135 -135
  86. package/client/src/nodeDefinitions/codeNodes.ts +54 -54
  87. package/client/src/nodeDefinitions/index.ts +14 -14
  88. package/client/src/nodeDefinitions/locationNodes.ts +462 -462
  89. package/client/src/nodeDefinitions/schedulerNodes.ts +220 -220
  90. package/client/src/nodeDefinitions/skillNodes.ts +17 -5
  91. package/client/src/nodeDefinitions/utilityNodes.ts +284 -284
  92. package/client/src/nodeDefinitions/whatsappNodes.ts +821 -865
  93. package/client/src/nodeDefinitions.ts +101 -103
  94. package/client/src/services/dynamicParameterService.ts +95 -95
  95. package/client/src/services/execution/aiAgentExecutionService.ts +34 -34
  96. package/client/src/services/executionService.ts +227 -231
  97. package/client/src/services/workflowApi.ts +91 -91
  98. package/client/src/store/useAppStore.ts +578 -581
  99. package/client/src/styles/theme.ts +513 -508
  100. package/client/src/styles/zIndex.ts +16 -16
  101. package/client/src/types/ComponentTypes.ts +38 -38
  102. package/client/src/types/INodeProperties.ts +287 -287
  103. package/client/src/types/NodeTypes.ts +27 -27
  104. package/client/src/utils/formatters.ts +32 -32
  105. package/client/src/utils/googleMapsLoader.ts +139 -139
  106. package/client/src/utils/locationUtils.ts +84 -84
  107. package/client/src/utils/nodeUtils.ts +30 -30
  108. package/client/src/utils/workflow.ts +29 -29
  109. package/client/src/vite-env.d.ts +12 -12
  110. package/client/tailwind.config.js +59 -59
  111. package/client/tsconfig.json +25 -25
  112. package/client/vite.config.js +35 -35
  113. package/install.ps1 +308 -0
  114. package/install.sh +343 -0
  115. package/package.json +81 -70
  116. package/scripts/build.js +174 -51
  117. package/scripts/clean.js +40 -40
  118. package/scripts/start.js +234 -210
  119. package/scripts/stop.js +301 -325
  120. package/server/.dockerignore +44 -44
  121. package/server/Dockerfile +45 -45
  122. package/server/constants.py +244 -249
  123. package/server/core/cache.py +460 -460
  124. package/server/core/config.py +127 -127
  125. package/server/core/container.py +98 -98
  126. package/server/core/database.py +1296 -1210
  127. package/server/core/logging.py +313 -313
  128. package/server/main.py +288 -288
  129. package/server/middleware/__init__.py +5 -5
  130. package/server/middleware/auth.py +89 -89
  131. package/server/models/auth.py +52 -52
  132. package/server/models/cache.py +24 -24
  133. package/server/models/database.py +235 -210
  134. package/server/models/nodes.py +435 -455
  135. package/server/pyproject.toml +75 -72
  136. package/server/requirements.txt +83 -83
  137. package/server/routers/android.py +294 -294
  138. package/server/routers/auth.py +203 -203
  139. package/server/routers/database.py +150 -150
  140. package/server/routers/maps.py +141 -141
  141. package/server/routers/nodejs_compat.py +288 -288
  142. package/server/routers/webhook.py +90 -90
  143. package/server/routers/websocket.py +2239 -2127
  144. package/server/routers/whatsapp.py +761 -761
  145. package/server/routers/workflow.py +199 -199
  146. package/server/services/ai.py +2444 -2414
  147. package/server/services/android_service.py +588 -588
  148. package/server/services/auth.py +130 -130
  149. package/server/services/chat_client.py +160 -160
  150. package/server/services/deployment/manager.py +706 -706
  151. package/server/services/event_waiter.py +675 -785
  152. package/server/services/execution/executor.py +1351 -1351
  153. package/server/services/execution/models.py +1 -1
  154. package/server/services/handlers/__init__.py +122 -126
  155. package/server/services/handlers/ai.py +390 -355
  156. package/server/services/handlers/android.py +69 -260
  157. package/server/services/handlers/code.py +278 -278
  158. package/server/services/handlers/http.py +193 -193
  159. package/server/services/handlers/tools.py +146 -32
  160. package/server/services/handlers/triggers.py +107 -107
  161. package/server/services/handlers/utility.py +822 -822
  162. package/server/services/handlers/whatsapp.py +423 -476
  163. package/server/services/maps.py +288 -288
  164. package/server/services/memory_store.py +103 -103
  165. package/server/services/node_executor.py +372 -375
  166. package/server/services/scheduler.py +155 -155
  167. package/server/services/skill_loader.py +1 -1
  168. package/server/services/status_broadcaster.py +834 -826
  169. package/server/services/temporal/__init__.py +23 -23
  170. package/server/services/temporal/activities.py +344 -344
  171. package/server/services/temporal/client.py +76 -76
  172. package/server/services/temporal/executor.py +147 -147
  173. package/server/services/temporal/worker.py +251 -251
  174. package/server/services/temporal/workflow.py +355 -355
  175. package/server/services/temporal/ws_client.py +236 -236
  176. package/server/services/text.py +110 -110
  177. package/server/services/user_auth.py +172 -172
  178. package/server/services/websocket_client.py +29 -29
  179. package/server/services/workflow.py +597 -597
  180. package/server/skills/android-skill/SKILL.md +4 -4
  181. package/server/skills/code-skill/SKILL.md +123 -89
  182. package/server/skills/maps-skill/SKILL.md +3 -3
  183. package/server/skills/memory-skill/SKILL.md +1 -1
  184. package/server/skills/web-search-skill/SKILL.md +154 -0
  185. package/server/skills/whatsapp-skill/SKILL.md +3 -3
  186. package/server/uv.lock +461 -100
  187. package/server/whatsapp-rpc/.dockerignore +30 -30
  188. package/server/whatsapp-rpc/Dockerfile +44 -44
  189. package/server/whatsapp-rpc/Dockerfile.web +17 -17
  190. package/server/whatsapp-rpc/README.md +139 -139
  191. package/server/whatsapp-rpc/bin/whatsapp-rpc-server +0 -0
  192. package/server/whatsapp-rpc/cli.js +95 -95
  193. package/server/whatsapp-rpc/configs/config.yaml +6 -6
  194. package/server/whatsapp-rpc/docker-compose.yml +35 -35
  195. package/server/whatsapp-rpc/docs/API.md +410 -410
  196. package/server/whatsapp-rpc/node_modules/.package-lock.json +259 -0
  197. package/server/whatsapp-rpc/node_modules/chalk/license +9 -0
  198. package/server/whatsapp-rpc/node_modules/chalk/package.json +83 -0
  199. package/server/whatsapp-rpc/node_modules/chalk/readme.md +297 -0
  200. package/server/whatsapp-rpc/node_modules/chalk/source/index.d.ts +325 -0
  201. package/server/whatsapp-rpc/node_modules/chalk/source/index.js +225 -0
  202. package/server/whatsapp-rpc/node_modules/chalk/source/utilities.js +33 -0
  203. package/server/whatsapp-rpc/node_modules/chalk/source/vendor/ansi-styles/index.d.ts +236 -0
  204. package/server/whatsapp-rpc/node_modules/chalk/source/vendor/ansi-styles/index.js +223 -0
  205. package/server/whatsapp-rpc/node_modules/chalk/source/vendor/supports-color/browser.d.ts +1 -0
  206. package/server/whatsapp-rpc/node_modules/chalk/source/vendor/supports-color/browser.js +34 -0
  207. package/server/whatsapp-rpc/node_modules/chalk/source/vendor/supports-color/index.d.ts +55 -0
  208. package/server/whatsapp-rpc/node_modules/chalk/source/vendor/supports-color/index.js +190 -0
  209. package/server/whatsapp-rpc/node_modules/commander/LICENSE +22 -0
  210. package/server/whatsapp-rpc/node_modules/commander/Readme.md +1148 -0
  211. package/server/whatsapp-rpc/node_modules/commander/esm.mjs +16 -0
  212. package/server/whatsapp-rpc/node_modules/commander/index.js +26 -0
  213. package/server/whatsapp-rpc/node_modules/commander/lib/argument.js +145 -0
  214. package/server/whatsapp-rpc/node_modules/commander/lib/command.js +2179 -0
  215. package/server/whatsapp-rpc/node_modules/commander/lib/error.js +43 -0
  216. package/server/whatsapp-rpc/node_modules/commander/lib/help.js +462 -0
  217. package/server/whatsapp-rpc/node_modules/commander/lib/option.js +329 -0
  218. package/server/whatsapp-rpc/node_modules/commander/lib/suggestSimilar.js +100 -0
  219. package/server/whatsapp-rpc/node_modules/commander/package-support.json +16 -0
  220. package/server/whatsapp-rpc/node_modules/commander/package.json +80 -0
  221. package/server/whatsapp-rpc/node_modules/commander/typings/esm.d.mts +3 -0
  222. package/server/whatsapp-rpc/node_modules/commander/typings/index.d.ts +884 -0
  223. package/server/whatsapp-rpc/node_modules/cross-spawn/LICENSE +21 -0
  224. package/server/whatsapp-rpc/node_modules/cross-spawn/README.md +89 -0
  225. package/server/whatsapp-rpc/node_modules/cross-spawn/index.js +39 -0
  226. package/server/whatsapp-rpc/node_modules/cross-spawn/lib/enoent.js +59 -0
  227. package/server/whatsapp-rpc/node_modules/cross-spawn/lib/parse.js +91 -0
  228. package/server/whatsapp-rpc/node_modules/cross-spawn/lib/util/escape.js +47 -0
  229. package/server/whatsapp-rpc/node_modules/cross-spawn/lib/util/readShebang.js +23 -0
  230. package/server/whatsapp-rpc/node_modules/cross-spawn/lib/util/resolveCommand.js +52 -0
  231. package/server/whatsapp-rpc/node_modules/cross-spawn/package.json +73 -0
  232. package/server/whatsapp-rpc/node_modules/execa/index.d.ts +955 -0
  233. package/server/whatsapp-rpc/node_modules/execa/index.js +309 -0
  234. package/server/whatsapp-rpc/node_modules/execa/lib/command.js +119 -0
  235. package/server/whatsapp-rpc/node_modules/execa/lib/error.js +87 -0
  236. package/server/whatsapp-rpc/node_modules/execa/lib/kill.js +102 -0
  237. package/server/whatsapp-rpc/node_modules/execa/lib/pipe.js +42 -0
  238. package/server/whatsapp-rpc/node_modules/execa/lib/promise.js +36 -0
  239. package/server/whatsapp-rpc/node_modules/execa/lib/stdio.js +49 -0
  240. package/server/whatsapp-rpc/node_modules/execa/lib/stream.js +133 -0
  241. package/server/whatsapp-rpc/node_modules/execa/lib/verbose.js +19 -0
  242. package/server/whatsapp-rpc/node_modules/execa/license +9 -0
  243. package/server/whatsapp-rpc/node_modules/execa/package.json +90 -0
  244. package/server/whatsapp-rpc/node_modules/execa/readme.md +822 -0
  245. package/server/whatsapp-rpc/node_modules/get-stream/license +9 -0
  246. package/server/whatsapp-rpc/node_modules/get-stream/package.json +53 -0
  247. package/server/whatsapp-rpc/node_modules/get-stream/readme.md +291 -0
  248. package/server/whatsapp-rpc/node_modules/get-stream/source/array-buffer.js +84 -0
  249. package/server/whatsapp-rpc/node_modules/get-stream/source/array.js +32 -0
  250. package/server/whatsapp-rpc/node_modules/get-stream/source/buffer.js +20 -0
  251. package/server/whatsapp-rpc/node_modules/get-stream/source/contents.js +101 -0
  252. package/server/whatsapp-rpc/node_modules/get-stream/source/index.d.ts +119 -0
  253. package/server/whatsapp-rpc/node_modules/get-stream/source/index.js +5 -0
  254. package/server/whatsapp-rpc/node_modules/get-stream/source/string.js +36 -0
  255. package/server/whatsapp-rpc/node_modules/get-stream/source/utils.js +11 -0
  256. package/server/whatsapp-rpc/node_modules/get-them-args/LICENSE +21 -0
  257. package/server/whatsapp-rpc/node_modules/get-them-args/README.md +95 -0
  258. package/server/whatsapp-rpc/node_modules/get-them-args/index.js +97 -0
  259. package/server/whatsapp-rpc/node_modules/get-them-args/package.json +36 -0
  260. package/server/whatsapp-rpc/node_modules/human-signals/LICENSE +201 -0
  261. package/server/whatsapp-rpc/node_modules/human-signals/README.md +168 -0
  262. package/server/whatsapp-rpc/node_modules/human-signals/build/src/core.js +273 -0
  263. package/server/whatsapp-rpc/node_modules/human-signals/build/src/main.d.ts +73 -0
  264. package/server/whatsapp-rpc/node_modules/human-signals/build/src/main.js +70 -0
  265. package/server/whatsapp-rpc/node_modules/human-signals/build/src/realtime.js +16 -0
  266. package/server/whatsapp-rpc/node_modules/human-signals/build/src/signals.js +34 -0
  267. package/server/whatsapp-rpc/node_modules/human-signals/package.json +61 -0
  268. package/server/whatsapp-rpc/node_modules/is-stream/index.d.ts +81 -0
  269. package/server/whatsapp-rpc/node_modules/is-stream/index.js +29 -0
  270. package/server/whatsapp-rpc/node_modules/is-stream/license +9 -0
  271. package/server/whatsapp-rpc/node_modules/is-stream/package.json +44 -0
  272. package/server/whatsapp-rpc/node_modules/is-stream/readme.md +60 -0
  273. package/server/whatsapp-rpc/node_modules/isexe/LICENSE +15 -0
  274. package/server/whatsapp-rpc/node_modules/isexe/README.md +51 -0
  275. package/server/whatsapp-rpc/node_modules/isexe/index.js +57 -0
  276. package/server/whatsapp-rpc/node_modules/isexe/mode.js +41 -0
  277. package/server/whatsapp-rpc/node_modules/isexe/package.json +31 -0
  278. package/server/whatsapp-rpc/node_modules/isexe/test/basic.js +221 -0
  279. package/server/whatsapp-rpc/node_modules/isexe/windows.js +42 -0
  280. package/server/whatsapp-rpc/node_modules/kill-port/.editorconfig +12 -0
  281. package/server/whatsapp-rpc/node_modules/kill-port/.gitattributes +1 -0
  282. package/server/whatsapp-rpc/node_modules/kill-port/LICENSE +21 -0
  283. package/server/whatsapp-rpc/node_modules/kill-port/README.md +140 -0
  284. package/server/whatsapp-rpc/node_modules/kill-port/cli.js +25 -0
  285. package/server/whatsapp-rpc/node_modules/kill-port/example.js +21 -0
  286. package/server/whatsapp-rpc/node_modules/kill-port/index.js +46 -0
  287. package/server/whatsapp-rpc/node_modules/kill-port/logo.png +0 -0
  288. package/server/whatsapp-rpc/node_modules/kill-port/package.json +41 -0
  289. package/server/whatsapp-rpc/node_modules/kill-port/pnpm-lock.yaml +4606 -0
  290. package/server/whatsapp-rpc/node_modules/kill-port/test.js +16 -0
  291. package/server/whatsapp-rpc/node_modules/merge-stream/LICENSE +21 -0
  292. package/server/whatsapp-rpc/node_modules/merge-stream/README.md +78 -0
  293. package/server/whatsapp-rpc/node_modules/merge-stream/index.js +41 -0
  294. package/server/whatsapp-rpc/node_modules/merge-stream/package.json +19 -0
  295. package/server/whatsapp-rpc/node_modules/mimic-fn/index.d.ts +52 -0
  296. package/server/whatsapp-rpc/node_modules/mimic-fn/index.js +71 -0
  297. package/server/whatsapp-rpc/node_modules/mimic-fn/license +9 -0
  298. package/server/whatsapp-rpc/node_modules/mimic-fn/package.json +45 -0
  299. package/server/whatsapp-rpc/node_modules/mimic-fn/readme.md +90 -0
  300. package/server/whatsapp-rpc/node_modules/npm-run-path/index.d.ts +90 -0
  301. package/server/whatsapp-rpc/node_modules/npm-run-path/index.js +52 -0
  302. package/server/whatsapp-rpc/node_modules/npm-run-path/license +9 -0
  303. package/server/whatsapp-rpc/node_modules/npm-run-path/node_modules/path-key/index.d.ts +31 -0
  304. package/server/whatsapp-rpc/node_modules/npm-run-path/node_modules/path-key/index.js +12 -0
  305. package/server/whatsapp-rpc/node_modules/npm-run-path/node_modules/path-key/license +9 -0
  306. package/server/whatsapp-rpc/node_modules/npm-run-path/node_modules/path-key/package.json +41 -0
  307. package/server/whatsapp-rpc/node_modules/npm-run-path/node_modules/path-key/readme.md +57 -0
  308. package/server/whatsapp-rpc/node_modules/npm-run-path/package.json +49 -0
  309. package/server/whatsapp-rpc/node_modules/npm-run-path/readme.md +104 -0
  310. package/server/whatsapp-rpc/node_modules/onetime/index.d.ts +59 -0
  311. package/server/whatsapp-rpc/node_modules/onetime/index.js +41 -0
  312. package/server/whatsapp-rpc/node_modules/onetime/license +9 -0
  313. package/server/whatsapp-rpc/node_modules/onetime/package.json +45 -0
  314. package/server/whatsapp-rpc/node_modules/onetime/readme.md +94 -0
  315. package/server/whatsapp-rpc/node_modules/path-key/index.d.ts +40 -0
  316. package/server/whatsapp-rpc/node_modules/path-key/index.js +16 -0
  317. package/server/whatsapp-rpc/node_modules/path-key/license +9 -0
  318. package/server/whatsapp-rpc/node_modules/path-key/package.json +39 -0
  319. package/server/whatsapp-rpc/node_modules/path-key/readme.md +61 -0
  320. package/server/whatsapp-rpc/node_modules/shebang-command/index.js +19 -0
  321. package/server/whatsapp-rpc/node_modules/shebang-command/license +9 -0
  322. package/server/whatsapp-rpc/node_modules/shebang-command/package.json +34 -0
  323. package/server/whatsapp-rpc/node_modules/shebang-command/readme.md +34 -0
  324. package/server/whatsapp-rpc/node_modules/shebang-regex/index.d.ts +22 -0
  325. package/server/whatsapp-rpc/node_modules/shebang-regex/index.js +2 -0
  326. package/server/whatsapp-rpc/node_modules/shebang-regex/license +9 -0
  327. package/server/whatsapp-rpc/node_modules/shebang-regex/package.json +35 -0
  328. package/server/whatsapp-rpc/node_modules/shebang-regex/readme.md +33 -0
  329. package/server/whatsapp-rpc/node_modules/shell-exec/LICENSE +21 -0
  330. package/server/whatsapp-rpc/node_modules/shell-exec/README.md +60 -0
  331. package/server/whatsapp-rpc/node_modules/shell-exec/index.js +47 -0
  332. package/server/whatsapp-rpc/node_modules/shell-exec/package.json +29 -0
  333. package/server/whatsapp-rpc/node_modules/signal-exit/LICENSE.txt +16 -0
  334. package/server/whatsapp-rpc/node_modules/signal-exit/README.md +74 -0
  335. package/server/whatsapp-rpc/node_modules/signal-exit/dist/cjs/browser.d.ts +12 -0
  336. package/server/whatsapp-rpc/node_modules/signal-exit/dist/cjs/browser.d.ts.map +1 -0
  337. package/server/whatsapp-rpc/node_modules/signal-exit/dist/cjs/browser.js +10 -0
  338. package/server/whatsapp-rpc/node_modules/signal-exit/dist/cjs/browser.js.map +1 -0
  339. package/server/whatsapp-rpc/node_modules/signal-exit/dist/cjs/index.d.ts +48 -0
  340. package/server/whatsapp-rpc/node_modules/signal-exit/dist/cjs/index.d.ts.map +1 -0
  341. package/server/whatsapp-rpc/node_modules/signal-exit/dist/cjs/index.js +279 -0
  342. package/server/whatsapp-rpc/node_modules/signal-exit/dist/cjs/index.js.map +1 -0
  343. package/server/whatsapp-rpc/node_modules/signal-exit/dist/cjs/package.json +3 -0
  344. package/server/whatsapp-rpc/node_modules/signal-exit/dist/cjs/signals.d.ts +29 -0
  345. package/server/whatsapp-rpc/node_modules/signal-exit/dist/cjs/signals.d.ts.map +1 -0
  346. package/server/whatsapp-rpc/node_modules/signal-exit/dist/cjs/signals.js +42 -0
  347. package/server/whatsapp-rpc/node_modules/signal-exit/dist/cjs/signals.js.map +1 -0
  348. package/server/whatsapp-rpc/node_modules/signal-exit/dist/mjs/browser.d.ts +12 -0
  349. package/server/whatsapp-rpc/node_modules/signal-exit/dist/mjs/browser.d.ts.map +1 -0
  350. package/server/whatsapp-rpc/node_modules/signal-exit/dist/mjs/browser.js +4 -0
  351. package/server/whatsapp-rpc/node_modules/signal-exit/dist/mjs/browser.js.map +1 -0
  352. package/server/whatsapp-rpc/node_modules/signal-exit/dist/mjs/index.d.ts +48 -0
  353. package/server/whatsapp-rpc/node_modules/signal-exit/dist/mjs/index.d.ts.map +1 -0
  354. package/server/whatsapp-rpc/node_modules/signal-exit/dist/mjs/index.js +275 -0
  355. package/server/whatsapp-rpc/node_modules/signal-exit/dist/mjs/index.js.map +1 -0
  356. package/server/whatsapp-rpc/node_modules/signal-exit/dist/mjs/package.json +3 -0
  357. package/server/whatsapp-rpc/node_modules/signal-exit/dist/mjs/signals.d.ts +29 -0
  358. package/server/whatsapp-rpc/node_modules/signal-exit/dist/mjs/signals.d.ts.map +1 -0
  359. package/server/whatsapp-rpc/node_modules/signal-exit/dist/mjs/signals.js +39 -0
  360. package/server/whatsapp-rpc/node_modules/signal-exit/dist/mjs/signals.js.map +1 -0
  361. package/server/whatsapp-rpc/node_modules/signal-exit/package.json +106 -0
  362. package/server/whatsapp-rpc/node_modules/strip-final-newline/index.js +14 -0
  363. package/server/whatsapp-rpc/node_modules/strip-final-newline/license +9 -0
  364. package/server/whatsapp-rpc/node_modules/strip-final-newline/package.json +43 -0
  365. package/server/whatsapp-rpc/node_modules/strip-final-newline/readme.md +35 -0
  366. package/server/whatsapp-rpc/node_modules/which/CHANGELOG.md +166 -0
  367. package/server/whatsapp-rpc/node_modules/which/LICENSE +15 -0
  368. package/server/whatsapp-rpc/node_modules/which/README.md +54 -0
  369. package/server/whatsapp-rpc/node_modules/which/bin/node-which +52 -0
  370. package/server/whatsapp-rpc/node_modules/which/package.json +43 -0
  371. package/server/whatsapp-rpc/node_modules/which/which.js +125 -0
  372. package/server/whatsapp-rpc/package-lock.json +272 -0
  373. package/server/whatsapp-rpc/package.json +30 -30
  374. package/server/whatsapp-rpc/schema.json +1294 -1294
  375. package/server/whatsapp-rpc/scripts/clean.cjs +66 -66
  376. package/server/whatsapp-rpc/scripts/cli.js +162 -162
  377. package/server/whatsapp-rpc/src/go/whatsapp/history.go +166 -166
  378. package/server/whatsapp-rpc/src/python/pyproject.toml +15 -15
  379. package/server/whatsapp-rpc/src/python/whatsapp_rpc/__init__.py +4 -4
  380. package/server/whatsapp-rpc/src/python/whatsapp_rpc/client.py +427 -427
  381. package/server/whatsapp-rpc/web/app.py +609 -609
  382. package/server/whatsapp-rpc/web/requirements.txt +6 -6
  383. package/server/whatsapp-rpc/web/rpc_client.py +427 -427
  384. package/server/whatsapp-rpc/web/static/openapi.yaml +59 -59
  385. package/server/whatsapp-rpc/web/templates/base.html +149 -149
  386. package/server/whatsapp-rpc/web/templates/contacts.html +240 -240
  387. package/server/whatsapp-rpc/web/templates/dashboard.html +319 -319
  388. package/server/whatsapp-rpc/web/templates/groups.html +328 -328
  389. package/server/whatsapp-rpc/web/templates/messages.html +465 -465
  390. package/server/whatsapp-rpc/web/templates/messaging.html +680 -680
  391. package/server/whatsapp-rpc/web/templates/send.html +258 -258
  392. package/server/whatsapp-rpc/web/templates/settings.html +459 -459
  393. package/client/src/components/ui/AndroidSettingsPanel.tsx +0 -401
  394. package/client/src/components/ui/WhatsAppSettingsPanel.tsx +0 -345
  395. package/client/src/nodeDefinitions/androidDeviceNodes.ts +0 -140
  396. package/docker-compose.prod.yml +0 -107
  397. package/docker-compose.yml +0 -104
  398. package/docs-MachinaOs/README.md +0 -85
  399. package/docs-MachinaOs/deployment/docker.mdx +0 -228
  400. package/docs-MachinaOs/deployment/production.mdx +0 -345
  401. package/docs-MachinaOs/docs.json +0 -75
  402. package/docs-MachinaOs/faq.mdx +0 -309
  403. package/docs-MachinaOs/favicon.svg +0 -5
  404. package/docs-MachinaOs/installation.mdx +0 -160
  405. package/docs-MachinaOs/introduction.mdx +0 -114
  406. package/docs-MachinaOs/logo/dark.svg +0 -6
  407. package/docs-MachinaOs/logo/light.svg +0 -6
  408. package/docs-MachinaOs/nodes/ai-agent.mdx +0 -216
  409. package/docs-MachinaOs/nodes/ai-models.mdx +0 -240
  410. package/docs-MachinaOs/nodes/android.mdx +0 -411
  411. package/docs-MachinaOs/nodes/overview.mdx +0 -181
  412. package/docs-MachinaOs/nodes/schedulers.mdx +0 -316
  413. package/docs-MachinaOs/nodes/webhooks.mdx +0 -330
  414. package/docs-MachinaOs/nodes/whatsapp.mdx +0 -305
  415. package/docs-MachinaOs/quickstart.mdx +0 -119
  416. package/docs-MachinaOs/tutorials/ai-agent-workflow.mdx +0 -177
  417. package/docs-MachinaOs/tutorials/android-automation.mdx +0 -242
  418. package/docs-MachinaOs/tutorials/first-workflow.mdx +0 -134
  419. package/docs-MachinaOs/tutorials/whatsapp-automation.mdx +0 -185
  420. package/nul +0 -0
  421. package/scripts/check-ports.ps1 +0 -33
  422. package/scripts/kill-port.ps1 +0 -154
@@ -13,12 +13,12 @@ This skill provides context for monitoring and controlling Android devices.
13
13
 
14
14
  ## How It Works
15
15
 
16
- This skill provides instructions and context. To execute Android actions, connect the **Android Toolkit** node to the Chat Agent's `input-tools` handle, then connect Android service nodes to the toolkit:
16
+ This skill provides instructions and context. To execute Android actions, connect the **Android Toolkit** node to the Zeenie's `input-tools` handle, then connect Android service nodes to the toolkit:
17
17
 
18
18
  ```
19
19
  [Battery Monitor] --+
20
20
  |
21
- [WiFi Automation] --+--> [Android Toolkit] --> [Chat Agent]
21
+ [WiFi Automation] --+--> [Android Toolkit] --> [Zeenie]
22
22
  |
23
23
  [Location] ---+
24
24
  ```
@@ -76,7 +76,7 @@ Before using Android tools, ensure:
76
76
 
77
77
  ## Setup Requirements
78
78
 
79
- 1. Connect this skill to Chat Agent's `input-skill` handle
80
- 2. Add **Android Toolkit** node and connect to Chat Agent's `input-tools` handle
79
+ 1. Connect this skill to Zeenie's `input-skill` handle
80
+ 2. Add **Android Toolkit** node and connect to Zeenie's `input-tools` handle
81
81
  3. Connect desired Android service nodes to the Android Toolkit
82
82
  4. Ensure Android device is paired (green status indicator)
@@ -1,140 +1,174 @@
1
1
  ---
2
2
  name: code-skill
3
3
  description: Execute Python or JavaScript code for calculations, data processing, and automation. Use when user needs to run code, do calculations, or process data.
4
- allowed-tools: code-python code-javascript
4
+ allowed-tools: python_code javascript_code
5
5
  metadata:
6
6
  author: machina
7
- version: "1.0"
7
+ version: "3.0"
8
8
  category: code
9
9
  ---
10
10
 
11
11
  # Code Execution
12
12
 
13
- This skill enables you to execute Python and JavaScript code for various tasks.
13
+ This skill enables you to execute Python and JavaScript code for various tasks using the `python_code` and `javascript_code` tools.
14
14
 
15
- ## Capabilities
15
+ ## Tool: python_code
16
16
 
17
- - Run Python code with full standard library
18
- - Execute JavaScript code
19
- - Perform complex calculations
20
- - Process and transform data
21
- - Generate outputs and visualizations
17
+ Execute Python code for calculations, data processing, and automation.
22
18
 
23
- ## Tool Reference
19
+ ### Parameters
24
20
 
25
- ### code-python
26
- Execute Python code.
21
+ | Parameter | Type | Required | Description |
22
+ |-----------|------|----------|-------------|
23
+ | `code` | string | Yes | Python code to execute. Set `output` variable with result. Use `print()` for console output. |
27
24
 
28
- Parameters:
29
- - `code` (required): Python code to execute
30
- - `input_data` (optional): Data to pass to the script (available as `input_data` variable)
25
+ ### Available Libraries
26
+ - Standard library: `math`, `json`, `datetime`, `timedelta`, `re`, `random`
27
+ - Collections: `Counter`, `defaultdict`
28
+ - All built-in functions
31
29
 
32
- Returns:
33
- - output: Script output (print statements)
34
- - result: Return value if any
35
- - error: Error message if execution failed
30
+ ### Variables Available
31
+ - `input_data` - Data from connected workflow nodes (dict)
32
+ - `output` - Set this variable to return a result
36
33
 
37
- ### code-javascript
38
- Execute JavaScript code.
34
+ ### Returns
39
35
 
40
- Parameters:
41
- - `code` (required): JavaScript code to execute
42
- - `input_data` (optional): Data to pass to the script
36
+ | Field | Type | Description |
37
+ |-------|------|-------------|
38
+ | `success` | boolean | Whether execution succeeded |
39
+ | `result` | any | Value of `output` variable if set |
40
+ | `output` | string | Captured print() statements |
41
+ | `error` | string | Error message if execution failed |
43
42
 
44
- Returns:
45
- - output: Console output
46
- - result: Return value
47
- - error: Error message if execution failed
43
+ ### Example Usage
44
+ ```python
45
+ # Calculate with data
46
+ data = input_data.get("numbers", [1, 2, 3])
47
+ total = sum(data)
48
+ average = total / len(data)
49
+ print(f"Total: {total}, Average: {average}")
50
+ output = {"total": total, "average": average}
51
+ ```
48
52
 
49
- ## Python Guidelines
53
+ ---
50
54
 
51
- ### Available Libraries
52
- - Standard library (math, json, datetime, re, etc.)
53
- - Data processing (collections, itertools)
54
- - String manipulation
55
+ ## Tool: javascript_code
55
56
 
56
- ### Input Data Access
57
- ```python
58
- # Access input data from previous nodes
59
- data = input_data # Available as global variable
60
- print(f"Received: {data}")
61
- ```
57
+ Execute JavaScript code for calculations, data processing, and JSON manipulation.
62
58
 
63
- ### Output
64
- ```python
65
- # Print for output display
66
- print("Hello, World!")
59
+ ### Parameters
67
60
 
68
- # Return value for downstream nodes
69
- result = {"status": "success", "value": 42}
70
- ```
61
+ | Parameter | Type | Required | Description |
62
+ |-----------|------|----------|-------------|
63
+ | `code` | string | Yes | JavaScript code to execute. Set `output` variable with result. Use `console.log()` for output. |
71
64
 
72
- ## JavaScript Guidelines
65
+ ### Variables Available
66
+ - `input_data` - Data from connected workflow nodes (object)
67
+ - `output` - Set this variable to return a result
73
68
 
74
- ### Input Data Access
75
- ```javascript
76
- // Access input data from previous nodes
77
- const data = input_data;
78
- console.log(`Received: ${JSON.stringify(data)}`);
79
- ```
69
+ ### Returns
80
70
 
81
- ### Output
82
- ```javascript
83
- // Console for output display
84
- console.log("Hello, World!");
71
+ | Field | Type | Description |
72
+ |-------|------|-------------|
73
+ | `success` | boolean | Whether execution succeeded |
74
+ | `result` | any | Value of `output` variable if set |
75
+ | `output` | string | Captured console.log() statements |
76
+ | `error` | string | Error message if execution failed |
85
77
 
86
- // Return value for downstream nodes
87
- return { status: "success", value: 42 };
78
+ ### Example Usage
79
+ ```javascript
80
+ // Process JSON data
81
+ const data = input_data.numbers || [1, 2, 3];
82
+ const total = data.reduce((a, b) => a + b, 0);
83
+ const average = total / data.length;
84
+ console.log(`Total: ${total}, Average: ${average}`);
85
+ output = { total, average };
88
86
  ```
89
87
 
88
+ ---
89
+
90
90
  ## Examples
91
91
 
92
+ ### Calculate a tip (Python)
92
93
  **User**: "Calculate 15% tip on $85.50"
93
- **Action**: Use code-python with:
94
- ```python
95
- bill = 85.50
96
- tip_percent = 15
97
- tip = bill * (tip_percent / 100)
98
- total = bill + tip
99
- print(f"Tip: ${tip:.2f}")
100
- print(f"Total: ${total:.2f}")
101
- ```
102
94
 
103
- **User**: "Convert this JSON to CSV"
104
- **Action**: Use code-python with:
105
- ```python
106
- import json
107
- import csv
108
- import io
109
-
110
- data = input_data # JSON from previous node
111
- output = io.StringIO()
112
- writer = csv.DictWriter(output, fieldnames=data[0].keys())
113
- writer.writeheader()
114
- writer.writerows(data)
115
- print(output.getvalue())
95
+ **Tool Call** (python_code):
96
+ ```json
97
+ {
98
+ "code": "bill = 85.50\ntip_percent = 15\ntip = bill * (tip_percent / 100)\ntotal = bill + tip\nprint(f\"Tip: ${tip:.2f}\")\nprint(f\"Total: ${total:.2f}\")\noutput = {\"tip\": tip, \"total\": total}"
99
+ }
116
100
  ```
117
101
 
102
+ ### Generate random numbers (Python)
118
103
  **User**: "Generate 5 random numbers between 1 and 100"
119
- **Action**: Use code-python with:
120
- ```python
121
- import random
122
- numbers = [random.randint(1, 100) for _ in range(5)]
123
- print(f"Random numbers: {numbers}")
104
+
105
+ **Tool Call** (python_code):
106
+ ```json
107
+ {
108
+ "code": "import random\nnumbers = [random.randint(1, 100) for _ in range(5)]\nprint(f\"Random numbers: {numbers}\")\noutput = numbers"
109
+ }
110
+ ```
111
+
112
+ ### Process JSON data (JavaScript)
113
+ **User**: "Sum all the values in this object"
114
+
115
+ **Tool Call** (javascript_code):
116
+ ```json
117
+ {
118
+ "code": "const values = Object.values(input_data);\nconst sum = values.reduce((a, b) => a + b, 0);\nconsole.log(`Sum: ${sum}`);\noutput = sum;"
119
+ }
124
120
  ```
125
121
 
122
+ ### Date calculations (Python)
123
+ **User**: "What date is 30 days from now?"
124
+
125
+ **Tool Call** (python_code):
126
+ ```json
127
+ {
128
+ "code": "from datetime import datetime, timedelta\ntoday = datetime.now()\nfuture = today + timedelta(days=30)\nresult = future.strftime('%Y-%m-%d')\nprint(f\"30 days from now: {result}\")\noutput = result"
129
+ }
130
+ ```
131
+
132
+ ### Array manipulation (JavaScript)
133
+ **User**: "Filter this array to only even numbers"
134
+
135
+ **Tool Call** (javascript_code):
136
+ ```json
137
+ {
138
+ "code": "const numbers = input_data.numbers || [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];\nconst evens = numbers.filter(n => n % 2 === 0);\nconsole.log(`Even numbers: ${evens}`);\noutput = evens;"
139
+ }
140
+ ```
141
+
142
+ ---
143
+
144
+ ## When to Use Each Tool
145
+
146
+ | Use Case | Recommended Tool |
147
+ |----------|------------------|
148
+ | Math calculations | `python_code` |
149
+ | Date/time operations | `python_code` |
150
+ | Data analysis | `python_code` |
151
+ | Random number generation | `python_code` |
152
+ | JSON manipulation | `javascript_code` |
153
+ | Array operations | Either |
154
+ | String processing | Either |
155
+
156
+ ---
157
+
126
158
  ## Security Guidelines
127
159
 
128
160
  1. **No file system access** outside designated directories
129
161
  2. **No network requests** from code (use http-skill instead)
130
162
  3. **No system commands** or shell access
131
- 4. **Limited execution time** (timeout after 30 seconds)
163
+ 4. **Limited execution time** (timeout configurable, default 30 seconds)
132
164
  5. **No sensitive data** in code outputs
133
165
 
134
166
  ## Best Practices
135
167
 
136
168
  1. Keep code simple and focused on one task
137
169
  2. Use descriptive variable names
138
- 3. Add comments for complex logic
139
- 4. Validate input data before processing
170
+ 3. Always set the `output` variable with your result
171
+ 4. Use `print()` / `console.log()` for debugging
140
172
  5. Handle potential errors gracefully
173
+ 6. Prefer Python for math, dates, and data processing
174
+ 7. Prefer JavaScript for JSON manipulation
@@ -13,7 +13,7 @@ This skill provides context for location-based capabilities using Google Maps se
13
13
 
14
14
  ## How It Works
15
15
 
16
- This skill provides instructions and context. To execute location actions, connect the appropriate **tool nodes** to the Chat Agent's `input-tools` handle:
16
+ This skill provides instructions and context. To execute location actions, connect the appropriate **tool nodes** to the Zeenie's `input-tools` handle:
17
17
 
18
18
  - **Add Locations** node - Geocode addresses to coordinates or reverse geocode
19
19
  - **Show Nearby Places** node - Search for nearby places
@@ -165,6 +165,6 @@ When presenting location results:
165
165
 
166
166
  ## Setup Requirements
167
167
 
168
- 1. Connect this skill to Chat Agent's `input-skill` handle
169
- 2. Connect location tool nodes to Chat Agent's `input-tools` handle
168
+ 1. Connect this skill to Zeenie's `input-skill` handle
169
+ 2. Connect location tool nodes to Zeenie's `input-tools` handle
170
170
  3. Ensure Google Maps API key is configured in credentials
@@ -140,7 +140,7 @@ User prefers formal language.
140
140
 
141
141
  ## Integration with SimpleMemory Node
142
142
 
143
- When connected to a Chat Agent:
143
+ When connected to a Zeenie:
144
144
  1. Conversation is automatically logged to markdown
145
145
  2. Window size limits short-term memory
146
146
  3. Overflow archives to vector DB (if long-term enabled)
@@ -0,0 +1,154 @@
1
+ ---
2
+ name: web-search-skill
3
+ description: Search the web for current information, news, facts, and real-time data that may not be in your training data.
4
+ allowed-tools: web_search
5
+ metadata:
6
+ author: machina
7
+ version: "1.0"
8
+ category: search
9
+ ---
10
+
11
+ # Web Search Skill
12
+
13
+ This skill enables you to search the web for current, up-to-date information.
14
+
15
+ ## How It Works
16
+
17
+ This skill provides instructions and context. To execute web searches, connect the **Web Search Tool** node to the Zeenie's `input-tools` handle.
18
+
19
+ ## web_search Tool
20
+
21
+ Search the web and get relevant results.
22
+
23
+ ### Schema Fields
24
+
25
+ | Field | Type | Required | Description |
26
+ |-------|------|----------|-------------|
27
+ | query | string | Yes | The search query to look up on the web |
28
+
29
+ ### Examples
30
+
31
+ **Basic search:**
32
+ ```json
33
+ {
34
+ "query": "latest news about artificial intelligence"
35
+ }
36
+ ```
37
+
38
+ **Factual search:**
39
+ ```json
40
+ {
41
+ "query": "population of Tokyo 2024"
42
+ }
43
+ ```
44
+
45
+ **Current events:**
46
+ ```json
47
+ {
48
+ "query": "weather forecast New York today"
49
+ }
50
+ ```
51
+
52
+ **Technical search:**
53
+ ```json
54
+ {
55
+ "query": "how to use Python asyncio gather"
56
+ }
57
+ ```
58
+
59
+ ### Response Format
60
+
61
+ ```json
62
+ {
63
+ "query": "artificial intelligence news",
64
+ "results": [
65
+ {
66
+ "title": "AI Breakthrough in Medical Research",
67
+ "snippet": "Researchers have developed a new AI model that can predict...",
68
+ "url": "https://example.com/ai-medical-research"
69
+ },
70
+ {
71
+ "title": "OpenAI Announces New Model",
72
+ "snippet": "The company revealed its latest advancement in...",
73
+ "url": "https://example.com/openai-announcement"
74
+ }
75
+ ],
76
+ "provider": "duckduckgo"
77
+ }
78
+ ```
79
+
80
+ ## When to Use Web Search
81
+
82
+ Use web search when the user asks about:
83
+
84
+ 1. **Current events and news** - Recent happenings, breaking news, current affairs
85
+ 2. **Real-time data** - Stock prices, weather, sports scores, exchange rates
86
+ 3. **Recent information** - Events, releases, or changes after your knowledge cutoff
87
+ 4. **Specific facts** - Population, statistics, dates that may have changed
88
+ 5. **Technical documentation** - Latest API docs, library versions, tutorials
89
+ 6. **Local information** - Business hours, addresses, phone numbers
90
+ 7. **Product information** - Prices, availability, reviews
91
+
92
+ ## When NOT to Use Web Search
93
+
94
+ Avoid searching when:
95
+
96
+ 1. **General knowledge** - Well-established facts that won't change
97
+ 2. **Simple calculations** - Use the calculator tool instead
98
+ 3. **Creative tasks** - Writing, brainstorming, analysis
99
+ 4. **Personal advice** - Relationship, life decisions
100
+ 5. **Subjective opinions** - Preferences, recommendations without factual basis
101
+
102
+ ## Search Query Best Practices
103
+
104
+ ### Do:
105
+ - Use specific, focused queries
106
+ - Include relevant keywords
107
+ - Add context like dates, locations, or names
108
+ - Break complex questions into simpler searches
109
+
110
+ ### Don't:
111
+ - Use overly long queries (keep under 10 words when possible)
112
+ - Include unnecessary words like "please" or "can you tell me"
113
+ - Ask questions as full sentences (use keywords instead)
114
+
115
+ ### Examples of Good vs Bad Queries
116
+
117
+ | Bad Query | Good Query |
118
+ |-----------|------------|
119
+ | "Can you please tell me what the weather is like in London today?" | "London weather today" |
120
+ | "I want to know about the latest iPhone model and its features" | "iPhone 15 Pro specifications" |
121
+ | "What is happening in the stock market right now?" | "stock market news today" |
122
+
123
+ ## Handling Results
124
+
125
+ 1. **Summarize** the key findings from search results
126
+ 2. **Cite sources** when providing specific information
127
+ 3. **Indicate uncertainty** if results are conflicting or unclear
128
+ 4. **Suggest follow-up searches** if the initial results are insufficient
129
+ 5. **Combine multiple searches** for comprehensive answers
130
+
131
+ ## Provider Information
132
+
133
+ The Web Search Tool supports multiple providers:
134
+
135
+ | Provider | API Key Required | Notes |
136
+ |----------|-----------------|-------|
137
+ | DuckDuckGo | No | Free, privacy-focused, good general results |
138
+ | Serper API | Yes | Google-powered, high quality, requires API key |
139
+ | Google Custom Search | Yes | Direct Google results, requires setup |
140
+
141
+ The default provider (DuckDuckGo) works without any API key.
142
+
143
+ ## Limitations
144
+
145
+ - Results depend on the search provider's index
146
+ - Some recent events may not be indexed immediately
147
+ - Paywalled content may show limited snippets
148
+ - Results are in English by default
149
+
150
+ ## Setup Requirements
151
+
152
+ 1. Connect this skill to Zeenie's `input-skill` handle
153
+ 2. Connect the Web Search Tool node to Zeenie's `input-tools` handle
154
+ 3. (Optional) Configure API key in the tool node for Serper or Google
@@ -13,7 +13,7 @@ This skill provides context for WhatsApp messaging capabilities.
13
13
 
14
14
  ## How It Works
15
15
 
16
- This skill provides instructions and context. To execute WhatsApp actions, connect the appropriate **tool nodes** to the Chat Agent's `input-tools` handle:
16
+ This skill provides instructions and context. To execute WhatsApp actions, connect the appropriate **tool nodes** to the Zeenie's `input-tools` handle:
17
17
 
18
18
  - **WhatsApp Send** node - Send messages to contacts or groups
19
19
  - **WhatsApp DB** node - Query contacts, groups, and chat history
@@ -278,6 +278,6 @@ Check WhatsApp registration status.
278
278
 
279
279
  ## Setup Requirements
280
280
 
281
- 1. Connect this skill to Chat Agent's `input-skill` handle
282
- 2. Connect WhatsApp tool nodes to Chat Agent's `input-tools` handle
281
+ 1. Connect this skill to Zeenie's `input-skill` handle
282
+ 2. Connect WhatsApp tool nodes to Zeenie's `input-tools` handle
283
283
  3. Ensure WhatsApp is connected (green status indicator)