@vicoa/cli 1.3.11-linux-x64 → 1.3.11-win32-x64

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 (304) hide show
  1. package/bin/_internal/81d243bd2c585b0f4821__mypyc.cp312-win_amd64.pyd +0 -0
  2. package/bin/_internal/VCRUNTIME140.dll +0 -0
  3. package/bin/_internal/VCRUNTIME140_1.dll +0 -0
  4. package/bin/_internal/_asyncio.pyd +0 -0
  5. package/bin/_internal/_bz2.pyd +0 -0
  6. package/bin/_internal/_cffi_backend.cp312-win_amd64.pyd +0 -0
  7. package/bin/_internal/_ctypes.pyd +0 -0
  8. package/bin/_internal/_decimal.pyd +0 -0
  9. package/bin/_internal/_hashlib.pyd +0 -0
  10. package/bin/_internal/_lzma.pyd +0 -0
  11. package/bin/_internal/_multiprocessing.pyd +0 -0
  12. package/bin/_internal/_overlapped.pyd +0 -0
  13. package/bin/_internal/_queue.pyd +0 -0
  14. package/bin/_internal/_socket.pyd +0 -0
  15. package/bin/_internal/_ssl.pyd +0 -0
  16. package/bin/_internal/_uuid.pyd +0 -0
  17. package/bin/_internal/_wmi.pyd +0 -0
  18. package/bin/_internal/_zoneinfo.pyd +0 -0
  19. package/bin/_internal/aiohttp/_http_parser.cp312-win_amd64.pyd +0 -0
  20. package/bin/_internal/aiohttp/_http_writer.cp312-win_amd64.pyd +0 -0
  21. package/bin/_internal/aiohttp/_websocket/mask.cp312-win_amd64.pyd +0 -0
  22. package/bin/_internal/aiohttp/_websocket/reader_c.cp312-win_amd64.pyd +0 -0
  23. package/bin/_internal/api-ms-win-core-console-l1-1-0.dll +0 -0
  24. package/bin/_internal/api-ms-win-core-datetime-l1-1-0.dll +0 -0
  25. package/bin/_internal/api-ms-win-core-debug-l1-1-0.dll +0 -0
  26. package/bin/_internal/api-ms-win-core-errorhandling-l1-1-0.dll +0 -0
  27. package/bin/_internal/api-ms-win-core-fibers-l1-1-0.dll +0 -0
  28. package/bin/_internal/api-ms-win-core-fibers-l1-1-1.dll +0 -0
  29. package/bin/_internal/api-ms-win-core-file-l1-1-0.dll +0 -0
  30. package/bin/_internal/api-ms-win-core-file-l1-2-0.dll +0 -0
  31. package/bin/_internal/api-ms-win-core-file-l2-1-0.dll +0 -0
  32. package/bin/_internal/api-ms-win-core-handle-l1-1-0.dll +0 -0
  33. package/bin/_internal/api-ms-win-core-heap-l1-1-0.dll +0 -0
  34. package/bin/_internal/api-ms-win-core-interlocked-l1-1-0.dll +0 -0
  35. package/bin/_internal/api-ms-win-core-kernel32-legacy-l1-1-1.dll +0 -0
  36. package/bin/_internal/api-ms-win-core-libraryloader-l1-1-0.dll +0 -0
  37. package/bin/_internal/api-ms-win-core-localization-l1-2-0.dll +0 -0
  38. package/bin/_internal/api-ms-win-core-memory-l1-1-0.dll +0 -0
  39. package/bin/_internal/api-ms-win-core-namedpipe-l1-1-0.dll +0 -0
  40. package/bin/_internal/api-ms-win-core-processenvironment-l1-1-0.dll +0 -0
  41. package/bin/_internal/api-ms-win-core-processthreads-l1-1-0.dll +0 -0
  42. package/bin/_internal/api-ms-win-core-processthreads-l1-1-1.dll +0 -0
  43. package/bin/_internal/api-ms-win-core-profile-l1-1-0.dll +0 -0
  44. package/bin/_internal/api-ms-win-core-rtlsupport-l1-1-0.dll +0 -0
  45. package/bin/_internal/api-ms-win-core-string-l1-1-0.dll +0 -0
  46. package/bin/_internal/api-ms-win-core-synch-l1-1-0.dll +0 -0
  47. package/bin/_internal/api-ms-win-core-synch-l1-2-0.dll +0 -0
  48. package/bin/_internal/api-ms-win-core-sysinfo-l1-1-0.dll +0 -0
  49. package/bin/_internal/api-ms-win-core-sysinfo-l1-2-0.dll +0 -0
  50. package/bin/_internal/api-ms-win-core-timezone-l1-1-0.dll +0 -0
  51. package/bin/_internal/api-ms-win-core-util-l1-1-0.dll +0 -0
  52. package/bin/_internal/api-ms-win-crt-conio-l1-1-0.dll +0 -0
  53. package/bin/_internal/api-ms-win-crt-convert-l1-1-0.dll +0 -0
  54. package/bin/_internal/api-ms-win-crt-environment-l1-1-0.dll +0 -0
  55. package/bin/_internal/api-ms-win-crt-filesystem-l1-1-0.dll +0 -0
  56. package/bin/_internal/api-ms-win-crt-heap-l1-1-0.dll +0 -0
  57. package/bin/_internal/api-ms-win-crt-locale-l1-1-0.dll +0 -0
  58. package/bin/_internal/api-ms-win-crt-math-l1-1-0.dll +0 -0
  59. package/bin/_internal/api-ms-win-crt-process-l1-1-0.dll +0 -0
  60. package/bin/_internal/api-ms-win-crt-runtime-l1-1-0.dll +0 -0
  61. package/bin/_internal/api-ms-win-crt-stdio-l1-1-0.dll +0 -0
  62. package/bin/_internal/api-ms-win-crt-string-l1-1-0.dll +0 -0
  63. package/bin/_internal/api-ms-win-crt-time-l1-1-0.dll +0 -0
  64. package/bin/_internal/api-ms-win-crt-utility-l1-1-0.dll +0 -0
  65. package/bin/_internal/base_library.zip +0 -0
  66. package/bin/_internal/charset_normalizer/cd.cp312-win_amd64.pyd +0 -0
  67. package/bin/_internal/charset_normalizer/md.cp312-win_amd64.pyd +0 -0
  68. package/bin/_internal/cryptography/hazmat/bindings/_rust.pyd +0 -0
  69. package/bin/_internal/cryptography-46.0.7.dist-info/RECORD +2 -2
  70. package/bin/_internal/cryptography-46.0.7.dist-info/WHEEL +1 -2
  71. package/bin/_internal/email_validator-2.3.0.dist-info/RECORD +1 -1
  72. package/bin/_internal/frozenlist/_frozenlist.cp312-win_amd64.pyd +0 -0
  73. package/bin/_internal/integrations/cli_wrappers/IMPORTANT_USE_CASES.md +32 -32
  74. package/bin/_internal/integrations/github/claude-code-action/CLAUDE.md +136 -136
  75. package/bin/_internal/integrations/github/claude-code-action/CODE_OF_CONDUCT.md +128 -128
  76. package/bin/_internal/integrations/github/claude-code-action/CONTRIBUTING.md +116 -116
  77. package/bin/_internal/integrations/github/claude-code-action/LICENSE +20 -20
  78. package/bin/_internal/integrations/github/claude-code-action/README.md +52 -52
  79. package/bin/_internal/integrations/github/claude-code-action/ROADMAP.md +20 -20
  80. package/bin/_internal/integrations/github/claude-code-action/SECURITY.md +15 -15
  81. package/bin/_internal/integrations/github/claude-code-action/action.yml +294 -294
  82. package/bin/_internal/integrations/github/claude-code-action/base-action/CLAUDE.md +60 -60
  83. package/bin/_internal/integrations/github/claude-code-action/base-action/CODE_OF_CONDUCT.md +128 -128
  84. package/bin/_internal/integrations/github/claude-code-action/base-action/CONTRIBUTING.md +136 -136
  85. package/bin/_internal/integrations/github/claude-code-action/base-action/LICENSE +21 -21
  86. package/bin/_internal/integrations/github/claude-code-action/base-action/MIRROR_DISCLAIMER.md +11 -11
  87. package/bin/_internal/integrations/github/claude-code-action/base-action/README.md +521 -521
  88. package/bin/_internal/integrations/github/claude-code-action/base-action/action.yml +149 -149
  89. package/bin/_internal/integrations/github/claude-code-action/base-action/bun.lock +54 -54
  90. package/bin/_internal/integrations/github/claude-code-action/base-action/examples/issue-triage.yml +108 -108
  91. package/bin/_internal/integrations/github/claude-code-action/base-action/package.json +23 -23
  92. package/bin/_internal/integrations/github/claude-code-action/base-action/scripts/install-hooks.sh +12 -12
  93. package/bin/_internal/integrations/github/claude-code-action/base-action/scripts/pre-push +45 -45
  94. package/bin/_internal/integrations/github/claude-code-action/base-action/src/index.ts +82 -82
  95. package/bin/_internal/integrations/github/claude-code-action/base-action/src/prepare-prompt.ts +82 -82
  96. package/bin/_internal/integrations/github/claude-code-action/base-action/src/run-claude.ts +257 -257
  97. package/bin/_internal/integrations/github/claude-code-action/base-action/src/run-vicoa.ts +300 -300
  98. package/bin/_internal/integrations/github/claude-code-action/base-action/src/setup-claude-code-settings.ts +68 -68
  99. package/bin/_internal/integrations/github/claude-code-action/base-action/src/validate-env.ts +54 -54
  100. package/bin/_internal/integrations/github/claude-code-action/base-action/test-local.sh +11 -11
  101. package/bin/_internal/integrations/github/claude-code-action/base-action/test-mcp-local.sh +17 -17
  102. package/bin/_internal/integrations/github/claude-code-action/base-action/tsconfig.json +30 -30
  103. package/bin/_internal/integrations/github/claude-code-action/bun.lock +384 -384
  104. package/bin/_internal/integrations/github/claude-code-action/docs/capabilities-and-limitations.md +33 -33
  105. package/bin/_internal/integrations/github/claude-code-action/docs/cloud-providers.md +99 -99
  106. package/bin/_internal/integrations/github/claude-code-action/docs/configuration.md +345 -345
  107. package/bin/_internal/integrations/github/claude-code-action/docs/custom-automations.md +113 -113
  108. package/bin/_internal/integrations/github/claude-code-action/docs/experimental.md +128 -128
  109. package/bin/_internal/integrations/github/claude-code-action/docs/faq.md +205 -205
  110. package/bin/_internal/integrations/github/claude-code-action/docs/migration-guide.md +261 -261
  111. package/bin/_internal/integrations/github/claude-code-action/docs/security.md +38 -38
  112. package/bin/_internal/integrations/github/claude-code-action/docs/setup.md +146 -146
  113. package/bin/_internal/integrations/github/claude-code-action/docs/usage.md +213 -213
  114. package/bin/_internal/integrations/github/claude-code-action/examples/auto-fix-ci/auto-fix-ci.yml +97 -97
  115. package/bin/_internal/integrations/github/claude-code-action/examples/auto-fix-ci/commands/fix-ci.md +127 -127
  116. package/bin/_internal/integrations/github/claude-code-action/examples/auto-fix-ci-signed/auto-fix-ci-signed.yml +97 -97
  117. package/bin/_internal/integrations/github/claude-code-action/examples/auto-fix-ci-signed/commands/fix-ci-signed.md +148 -148
  118. package/bin/_internal/integrations/github/claude-code-action/examples/issue-deduplication.yml +63 -63
  119. package/bin/_internal/integrations/github/claude-code-action/examples/issue-triage.yml +75 -75
  120. package/bin/_internal/integrations/github/claude-code-action/examples/vicoa.yml +74 -74
  121. package/bin/_internal/integrations/github/claude-code-action/package.json +31 -31
  122. package/bin/_internal/integrations/github/claude-code-action/scripts/install-hooks.sh +12 -12
  123. package/bin/_internal/integrations/github/claude-code-action/scripts/pre-commit +45 -45
  124. package/bin/_internal/integrations/github/claude-code-action/scripts/setup-network-restrictions.sh +122 -122
  125. package/bin/_internal/integrations/github/claude-code-action/src/create-prompt/index.ts +799 -799
  126. package/bin/_internal/integrations/github/claude-code-action/src/create-prompt/types.ts +102 -102
  127. package/bin/_internal/integrations/github/claude-code-action/src/entrypoints/collect-inputs.ts +58 -58
  128. package/bin/_internal/integrations/github/claude-code-action/src/entrypoints/format-turns.ts +465 -465
  129. package/bin/_internal/integrations/github/claude-code-action/src/entrypoints/prepare.ts +98 -98
  130. package/bin/_internal/integrations/github/claude-code-action/src/entrypoints/update-comment-link.ts +245 -245
  131. package/bin/_internal/integrations/github/claude-code-action/src/github/api/client.ts +23 -23
  132. package/bin/_internal/integrations/github/claude-code-action/src/github/api/config.ts +4 -4
  133. package/bin/_internal/integrations/github/claude-code-action/src/github/api/queries/github.ts +117 -117
  134. package/bin/_internal/integrations/github/claude-code-action/src/github/context.ts +277 -277
  135. package/bin/_internal/integrations/github/claude-code-action/src/github/data/fetcher.ts +233 -233
  136. package/bin/_internal/integrations/github/claude-code-action/src/github/data/formatter.ts +144 -144
  137. package/bin/_internal/integrations/github/claude-code-action/src/github/operations/branch-cleanup.ts +132 -132
  138. package/bin/_internal/integrations/github/claude-code-action/src/github/operations/branch.ts +163 -163
  139. package/bin/_internal/integrations/github/claude-code-action/src/github/operations/comment-logic.ts +203 -203
  140. package/bin/_internal/integrations/github/claude-code-action/src/github/operations/comments/common.ts +33 -33
  141. package/bin/_internal/integrations/github/claude-code-action/src/github/operations/comments/create-initial.ts +111 -111
  142. package/bin/_internal/integrations/github/claude-code-action/src/github/operations/comments/update-claude-comment.ts +70 -70
  143. package/bin/_internal/integrations/github/claude-code-action/src/github/operations/comments/update-with-branch.ts +57 -57
  144. package/bin/_internal/integrations/github/claude-code-action/src/github/operations/git-config.ts +62 -62
  145. package/bin/_internal/integrations/github/claude-code-action/src/github/token.ts +108 -108
  146. package/bin/_internal/integrations/github/claude-code-action/src/github/types.ts +98 -98
  147. package/bin/_internal/integrations/github/claude-code-action/src/github/utils/image-downloader.ts +246 -246
  148. package/bin/_internal/integrations/github/claude-code-action/src/github/utils/sanitizer.ts +100 -100
  149. package/bin/_internal/integrations/github/claude-code-action/src/github/validation/actor.ts +64 -64
  150. package/bin/_internal/integrations/github/claude-code-action/src/github/validation/permissions.ts +47 -47
  151. package/bin/_internal/integrations/github/claude-code-action/src/github/validation/trigger.ts +148 -148
  152. package/bin/_internal/integrations/github/claude-code-action/src/mcp/github-actions-server.ts +279 -279
  153. package/bin/_internal/integrations/github/claude-code-action/src/mcp/github-comment-server.ts +101 -101
  154. package/bin/_internal/integrations/github/claude-code-action/src/mcp/github-file-ops-server.ts +677 -677
  155. package/bin/_internal/integrations/github/claude-code-action/src/mcp/github-inline-comment-server.ts +184 -184
  156. package/bin/_internal/integrations/github/claude-code-action/src/mcp/install-mcp-server.ts +201 -201
  157. package/bin/_internal/integrations/github/claude-code-action/src/modes/agent/index.ts +152 -152
  158. package/bin/_internal/integrations/github/claude-code-action/src/modes/agent/parse-tools.ts +22 -22
  159. package/bin/_internal/integrations/github/claude-code-action/src/modes/detector.ts +66 -66
  160. package/bin/_internal/integrations/github/claude-code-action/src/modes/registry.ts +54 -54
  161. package/bin/_internal/integrations/github/claude-code-action/src/modes/tag/index.ts +187 -187
  162. package/bin/_internal/integrations/github/claude-code-action/src/modes/types.ts +100 -100
  163. package/bin/_internal/integrations/github/claude-code-action/src/prepare/index.ts +20 -20
  164. package/bin/_internal/integrations/github/claude-code-action/src/prepare/types.ts +20 -20
  165. package/bin/_internal/integrations/github/claude-code-action/src/utils/retry.ts +40 -40
  166. package/bin/_internal/integrations/github/claude-code-action/tsconfig.json +30 -30
  167. package/bin/_internal/integrations/n8n/LICENSE +20 -20
  168. package/bin/_internal/integrations/n8n/README.md +297 -297
  169. package/bin/_internal/integrations/n8n/package-lock.json +2989 -2989
  170. package/bin/_internal/integrations/n8n/package.json +68 -68
  171. package/bin/_internal/integrations/n8n/src/credentials/OmnaraApi.credentials.ts +52 -52
  172. package/bin/_internal/integrations/n8n/src/nodes/Omnara/Omnara.node.json +34 -34
  173. package/bin/_internal/integrations/n8n/src/nodes/Omnara/Omnara.node.ts +304 -304
  174. package/bin/_internal/integrations/n8n/src/nodes/Omnara/actions/message/index.ts +37 -37
  175. package/bin/_internal/integrations/n8n/src/nodes/Omnara/actions/message/send.operation.ts +151 -151
  176. package/bin/_internal/integrations/n8n/src/nodes/Omnara/actions/message/sendAndWait.operation.ts +252 -252
  177. package/bin/_internal/integrations/n8n/src/nodes/Omnara/actions/session/end.operation.ts +56 -56
  178. package/bin/_internal/integrations/n8n/src/nodes/Omnara/actions/session/index.ts +29 -29
  179. package/bin/_internal/integrations/n8n/src/utils/GenericFunctions.ts +92 -92
  180. package/bin/_internal/integrations/n8n/src/utils/sendAndWait/configureWaitTillDate.ts +42 -42
  181. package/bin/_internal/integrations/n8n/src/utils/sendAndWait/descriptions.ts +20 -20
  182. package/bin/_internal/integrations/n8n/src/utils/sendAndWaitWebhook.ts +72 -72
  183. package/bin/_internal/integrations/n8n/tsconfig.json +19 -19
  184. package/bin/_internal/jiter/jiter.cp312-win_amd64.pyd +0 -0
  185. package/bin/_internal/jsonschema-4.26.0.dist-info/RECORD +1 -1
  186. package/bin/_internal/libcrypto-3.dll +0 -0
  187. package/bin/_internal/libffi-8.dll +0 -0
  188. package/bin/_internal/libssl-3.dll +0 -0
  189. package/bin/_internal/mcp-1.27.0.dist-info/RECORD +1 -1
  190. package/bin/_internal/multidict/_multidict.cp312-win_amd64.pyd +0 -0
  191. package/bin/_internal/propcache/_helpers_c.cp312-win_amd64.pyd +0 -0
  192. package/bin/_internal/pydantic_core/_pydantic_core.cp312-win_amd64.pyd +0 -0
  193. package/bin/_internal/pyexpat.pyd +0 -0
  194. package/bin/_internal/python3.dll +0 -0
  195. package/bin/_internal/python312.dll +0 -0
  196. package/bin/_internal/pywin32_system32/pythoncom312.dll +0 -0
  197. package/bin/_internal/pywin32_system32/pywintypes312.dll +0 -0
  198. package/bin/_internal/rpds/rpds.cp312-win_amd64.pyd +0 -0
  199. package/bin/_internal/select.pyd +0 -0
  200. package/bin/_internal/ucrtbase.dll +0 -0
  201. package/bin/_internal/{python3.12/lib-dynload/unicodedata.cpython-312-x86_64-linux-gnu.so → unicodedata.pyd} +0 -0
  202. package/bin/_internal/vicoa/_bin/README.md +28 -28
  203. package/bin/_internal/vicoa-1.3.10.dist-info/METADATA +311 -311
  204. package/bin/_internal/vicoa-1.3.10.dist-info/RECORD +6 -6
  205. package/bin/_internal/vicoa-1.3.10.dist-info/WHEEL +1 -1
  206. package/bin/_internal/vicoa-1.3.10.dist-info/direct_url.json +1 -1
  207. package/bin/_internal/vicoa-1.3.10.dist-info/licenses/LICENSE +201 -201
  208. package/bin/_internal/watchfiles/_rust_notify.cp312-win_amd64.pyd +0 -0
  209. package/bin/_internal/websockets/speedups.cp312-win_amd64.pyd +0 -0
  210. package/bin/_internal/websockets-16.0.dist-info/METADATA +179 -179
  211. package/bin/_internal/websockets-16.0.dist-info/RECORD +53 -53
  212. package/bin/_internal/websockets-16.0.dist-info/WHEEL +1 -3
  213. package/bin/_internal/websockets-16.0.dist-info/licenses/LICENSE +24 -24
  214. package/bin/_internal/win32/_win32sysloader.pyd +0 -0
  215. package/bin/_internal/win32/win32api.pyd +0 -0
  216. package/bin/_internal/win32/win32evtlog.pyd +0 -0
  217. package/bin/_internal/win32/win32job.pyd +0 -0
  218. package/bin/_internal/yaml/_yaml.cp312-win_amd64.pyd +0 -0
  219. package/bin/_internal/yarl/_quoting_c.cp312-win_amd64.pyd +0 -0
  220. package/bin/{vicoa → vicoa.exe} +0 -0
  221. package/package.json +3 -3
  222. package/bin/_internal/81d243bd2c585b0f4821__mypyc.cpython-312-x86_64-linux-gnu.so +0 -0
  223. package/bin/_internal/_cffi_backend.cpython-312-x86_64-linux-gnu.so +0 -0
  224. package/bin/_internal/aiohttp/_http_parser.cpython-312-x86_64-linux-gnu.so +0 -0
  225. package/bin/_internal/aiohttp/_http_writer.cpython-312-x86_64-linux-gnu.so +0 -0
  226. package/bin/_internal/aiohttp/_websocket/mask.cpython-312-x86_64-linux-gnu.so +0 -0
  227. package/bin/_internal/aiohttp/_websocket/reader_c.cpython-312-x86_64-linux-gnu.so +0 -0
  228. package/bin/_internal/caio/linux_aio.cpython-312-x86_64-linux-gnu.so +0 -0
  229. package/bin/_internal/caio/thread_aio.cpython-312-x86_64-linux-gnu.so +0 -0
  230. package/bin/_internal/charset_normalizer/cd.cpython-312-x86_64-linux-gnu.so +0 -0
  231. package/bin/_internal/charset_normalizer/md.cpython-312-x86_64-linux-gnu.so +0 -0
  232. package/bin/_internal/cryptography/hazmat/bindings/_rust.abi3.so +0 -0
  233. package/bin/_internal/frozenlist/_frozenlist.cpython-312-x86_64-linux-gnu.so +0 -0
  234. package/bin/_internal/jiter/jiter.cpython-312-x86_64-linux-gnu.so +0 -0
  235. package/bin/_internal/libbz2.so.1.0 +0 -0
  236. package/bin/_internal/libcrypto.so.3 +0 -0
  237. package/bin/_internal/libffi.so.8 +0 -0
  238. package/bin/_internal/libgcc_s.so.1 +0 -0
  239. package/bin/_internal/liblzma.so.5 +0 -0
  240. package/bin/_internal/libpython3.12.so.1.0 +0 -0
  241. package/bin/_internal/libreadline.so.8 +0 -0
  242. package/bin/_internal/libssl.so.3 +0 -0
  243. package/bin/_internal/libstdc++.so.6 +0 -0
  244. package/bin/_internal/libtinfo.so.6 +0 -0
  245. package/bin/_internal/libuuid.so.1 +0 -0
  246. package/bin/_internal/libz.so.1 +0 -0
  247. package/bin/_internal/multidict/_multidict.cpython-312-x86_64-linux-gnu.so +0 -0
  248. package/bin/_internal/propcache/_helpers_c.cpython-312-x86_64-linux-gnu.so +0 -0
  249. package/bin/_internal/pydantic_core/_pydantic_core.cpython-312-x86_64-linux-gnu.so +0 -0
  250. package/bin/_internal/python3.12/lib-dynload/_asyncio.cpython-312-x86_64-linux-gnu.so +0 -0
  251. package/bin/_internal/python3.12/lib-dynload/_bisect.cpython-312-x86_64-linux-gnu.so +0 -0
  252. package/bin/_internal/python3.12/lib-dynload/_blake2.cpython-312-x86_64-linux-gnu.so +0 -0
  253. package/bin/_internal/python3.12/lib-dynload/_bz2.cpython-312-x86_64-linux-gnu.so +0 -0
  254. package/bin/_internal/python3.12/lib-dynload/_codecs_cn.cpython-312-x86_64-linux-gnu.so +0 -0
  255. package/bin/_internal/python3.12/lib-dynload/_codecs_hk.cpython-312-x86_64-linux-gnu.so +0 -0
  256. package/bin/_internal/python3.12/lib-dynload/_codecs_iso2022.cpython-312-x86_64-linux-gnu.so +0 -0
  257. package/bin/_internal/python3.12/lib-dynload/_codecs_jp.cpython-312-x86_64-linux-gnu.so +0 -0
  258. package/bin/_internal/python3.12/lib-dynload/_codecs_kr.cpython-312-x86_64-linux-gnu.so +0 -0
  259. package/bin/_internal/python3.12/lib-dynload/_codecs_tw.cpython-312-x86_64-linux-gnu.so +0 -0
  260. package/bin/_internal/python3.12/lib-dynload/_contextvars.cpython-312-x86_64-linux-gnu.so +0 -0
  261. package/bin/_internal/python3.12/lib-dynload/_csv.cpython-312-x86_64-linux-gnu.so +0 -0
  262. package/bin/_internal/python3.12/lib-dynload/_ctypes.cpython-312-x86_64-linux-gnu.so +0 -0
  263. package/bin/_internal/python3.12/lib-dynload/_datetime.cpython-312-x86_64-linux-gnu.so +0 -0
  264. package/bin/_internal/python3.12/lib-dynload/_decimal.cpython-312-x86_64-linux-gnu.so +0 -0
  265. package/bin/_internal/python3.12/lib-dynload/_hashlib.cpython-312-x86_64-linux-gnu.so +0 -0
  266. package/bin/_internal/python3.12/lib-dynload/_heapq.cpython-312-x86_64-linux-gnu.so +0 -0
  267. package/bin/_internal/python3.12/lib-dynload/_json.cpython-312-x86_64-linux-gnu.so +0 -0
  268. package/bin/_internal/python3.12/lib-dynload/_lzma.cpython-312-x86_64-linux-gnu.so +0 -0
  269. package/bin/_internal/python3.12/lib-dynload/_md5.cpython-312-x86_64-linux-gnu.so +0 -0
  270. package/bin/_internal/python3.12/lib-dynload/_multibytecodec.cpython-312-x86_64-linux-gnu.so +0 -0
  271. package/bin/_internal/python3.12/lib-dynload/_multiprocessing.cpython-312-x86_64-linux-gnu.so +0 -0
  272. package/bin/_internal/python3.12/lib-dynload/_opcode.cpython-312-x86_64-linux-gnu.so +0 -0
  273. package/bin/_internal/python3.12/lib-dynload/_pickle.cpython-312-x86_64-linux-gnu.so +0 -0
  274. package/bin/_internal/python3.12/lib-dynload/_posixshmem.cpython-312-x86_64-linux-gnu.so +0 -0
  275. package/bin/_internal/python3.12/lib-dynload/_posixsubprocess.cpython-312-x86_64-linux-gnu.so +0 -0
  276. package/bin/_internal/python3.12/lib-dynload/_queue.cpython-312-x86_64-linux-gnu.so +0 -0
  277. package/bin/_internal/python3.12/lib-dynload/_random.cpython-312-x86_64-linux-gnu.so +0 -0
  278. package/bin/_internal/python3.12/lib-dynload/_sha1.cpython-312-x86_64-linux-gnu.so +0 -0
  279. package/bin/_internal/python3.12/lib-dynload/_sha2.cpython-312-x86_64-linux-gnu.so +0 -0
  280. package/bin/_internal/python3.12/lib-dynload/_sha3.cpython-312-x86_64-linux-gnu.so +0 -0
  281. package/bin/_internal/python3.12/lib-dynload/_socket.cpython-312-x86_64-linux-gnu.so +0 -0
  282. package/bin/_internal/python3.12/lib-dynload/_ssl.cpython-312-x86_64-linux-gnu.so +0 -0
  283. package/bin/_internal/python3.12/lib-dynload/_statistics.cpython-312-x86_64-linux-gnu.so +0 -0
  284. package/bin/_internal/python3.12/lib-dynload/_struct.cpython-312-x86_64-linux-gnu.so +0 -0
  285. package/bin/_internal/python3.12/lib-dynload/_uuid.cpython-312-x86_64-linux-gnu.so +0 -0
  286. package/bin/_internal/python3.12/lib-dynload/_zoneinfo.cpython-312-x86_64-linux-gnu.so +0 -0
  287. package/bin/_internal/python3.12/lib-dynload/array.cpython-312-x86_64-linux-gnu.so +0 -0
  288. package/bin/_internal/python3.12/lib-dynload/binascii.cpython-312-x86_64-linux-gnu.so +0 -0
  289. package/bin/_internal/python3.12/lib-dynload/fcntl.cpython-312-x86_64-linux-gnu.so +0 -0
  290. package/bin/_internal/python3.12/lib-dynload/grp.cpython-312-x86_64-linux-gnu.so +0 -0
  291. package/bin/_internal/python3.12/lib-dynload/math.cpython-312-x86_64-linux-gnu.so +0 -0
  292. package/bin/_internal/python3.12/lib-dynload/mmap.cpython-312-x86_64-linux-gnu.so +0 -0
  293. package/bin/_internal/python3.12/lib-dynload/pyexpat.cpython-312-x86_64-linux-gnu.so +0 -0
  294. package/bin/_internal/python3.12/lib-dynload/readline.cpython-312-x86_64-linux-gnu.so +0 -0
  295. package/bin/_internal/python3.12/lib-dynload/resource.cpython-312-x86_64-linux-gnu.so +0 -0
  296. package/bin/_internal/python3.12/lib-dynload/select.cpython-312-x86_64-linux-gnu.so +0 -0
  297. package/bin/_internal/python3.12/lib-dynload/syslog.cpython-312-x86_64-linux-gnu.so +0 -0
  298. package/bin/_internal/python3.12/lib-dynload/termios.cpython-312-x86_64-linux-gnu.so +0 -0
  299. package/bin/_internal/python3.12/lib-dynload/zlib.cpython-312-x86_64-linux-gnu.so +0 -0
  300. package/bin/_internal/rpds/rpds.cpython-312-x86_64-linux-gnu.so +0 -0
  301. package/bin/_internal/watchfiles/_rust_notify.cpython-312-x86_64-linux-gnu.so +0 -0
  302. package/bin/_internal/websockets/speedups.cpython-312-x86_64-linux-gnu.so +0 -0
  303. package/bin/_internal/yaml/_yaml.cpython-312-x86_64-linux-gnu.so +0 -0
  304. package/bin/_internal/yarl/_quoting_c.cpython-312-x86_64-linux-gnu.so +0 -0
@@ -1,304 +1,304 @@
1
- import {
2
- IExecuteFunctions,
3
- INodeExecutionData,
4
- INodeType,
5
- INodeTypeDescription,
6
- NodeConnectionTypes,
7
- NodeOperationError,
8
- SEND_AND_WAIT_OPERATION
9
- } from 'n8n-workflow';
10
-
11
- import * as message from './actions/message';
12
- import * as session from './actions/session';
13
- import { vicoaSendAndWaitWebhook } from '../../utils/sendAndWaitWebhook';
14
- import { sendAndWaitWebhooksDescription } from '../../utils/sendAndWait/descriptions';
15
- import { configureWaitTillDate } from '../../utils/sendAndWait/configureWaitTillDate';
16
- import { vicoaApiRequest, generateAgentInstanceId, getAgentType } from '../../utils/GenericFunctions';
17
-
18
-
19
- export class Vicoa implements INodeType {
20
- webhook = vicoaSendAndWaitWebhook;
21
-
22
- description: INodeTypeDescription = {
23
- displayName: 'Vicoa',
24
- name: 'vicoa',
25
- icon: 'file:vicoa.png',
26
- group: ['transform'],
27
- version: 1,
28
- subtitle: '={{$parameter["operation"] + ": " + $parameter["resource"]}}',
29
- description:
30
- 'Send messages to users via Vicoa - a web and mobile platform for human-AI communication',
31
- defaults: {
32
- name: 'Vicoa',
33
- },
34
- inputs: [NodeConnectionTypes.Main],
35
- outputs: [NodeConnectionTypes.Main],
36
- webhooks: sendAndWaitWebhooksDescription,
37
- credentials: [
38
- {
39
- name: 'vicoaApi',
40
- required: true,
41
- },
42
- ],
43
- properties: [
44
- {
45
- displayName: 'Resource',
46
- name: 'resource',
47
- type: 'options',
48
- noDataExpression: true,
49
- options: [
50
- {
51
- name: 'Message',
52
- value: 'message',
53
- description: 'Send messages to Vicoa agents',
54
- },
55
- {
56
- name: 'Session',
57
- value: 'session',
58
- description: 'Manage agent sessions',
59
- },
60
- ],
61
- default: 'message',
62
- },
63
- ...message.descriptions,
64
- ...session.descriptions,
65
- ],
66
- usableAsTool: true,
67
- };
68
-
69
- async execute(this: IExecuteFunctions): Promise<INodeExecutionData[][]> {
70
- const items = this.getInputData();
71
- const returnData: INodeExecutionData[] = [];
72
- const resource = this.getNodeParameter('resource', 0) as string;
73
- const operation = this.getNodeParameter('operation', 0) as string;
74
- for (let i = 0; i < items.length; i++) {
75
- try {
76
- let responseData: INodeExecutionData[] = [];
77
- if (resource === 'message') {
78
- if (operation === 'send') {
79
- responseData = await message.send.execute.call(this, i);
80
- } else if (operation === SEND_AND_WAIT_OPERATION || operation === 'sendAndWait') {
81
- // FOLLOWING SLACK PATTERN EXACTLY
82
- const agentType = getAgentType.call(this, 0);
83
- const agentInstanceId = generateAgentInstanceId.call(this, 0, agentType);
84
- const messageContent = this.getNodeParameter('message', 0) as string;
85
- const options = this.getNodeParameter('options', 0, {}) as any;
86
-
87
- // Check if sync mode is enabled (for AI Agent compatibility)
88
- const syncMode = options.syncMode === true;
89
-
90
- if (syncMode) {
91
- // Sync mode: Poll for responses instead of using putExecutionToWait
92
- // This is necessary for AI Agents which don't support async/await properly
93
- const syncTimeout = options.syncTimeout || 7200; // Default 2 hours
94
- const pollInterval = options.pollInterval || 5; // Default 5 seconds
95
-
96
- // Send the message first
97
- const body: any = {
98
- agent_instance_id: agentInstanceId,
99
- agent_type: agentType,
100
- content: messageContent,
101
- requires_user_input: true,
102
- // Don't send webhook URL in sync mode
103
- message_metadata: {
104
- sync_mode: true,
105
- node_id: this.getNode().id,
106
- },
107
- };
108
-
109
- if (options.sendEmail !== undefined) {
110
- body.send_email = options.sendEmail;
111
- }
112
- if (options.sendSms !== undefined) {
113
- body.send_sms = options.sendSms;
114
- }
115
- if (options.sendPush !== undefined) {
116
- body.send_push = options.sendPush;
117
- }
118
-
119
- const sendResponse = await vicoaApiRequest.call(
120
- this,
121
- 'POST',
122
- '/messages/agent',
123
- body,
124
- );
125
-
126
- const messageId = sendResponse.message_id;
127
-
128
- // Now poll for responses
129
- const startTime = Date.now();
130
- const timeoutMs = syncTimeout * 1000;
131
- const lastReadMessageId = messageId;
132
-
133
- while (Date.now() - startTime < timeoutMs) {
134
- // Wait for poll interval using Date.now()
135
- // Community nodes must avoid restricted globals
136
- const pollStart = Date.now();
137
- const pollMs = pollInterval * 1000;
138
- while (Date.now() - pollStart < pollMs) {
139
- // Small delay to avoid blocking
140
- await new Promise((resolve) => resolve(undefined));
141
- }
142
-
143
- // Check for pending messages
144
- try {
145
- const pendingResponse = await vicoaApiRequest.call(
146
- this,
147
- 'GET',
148
- '/messages/pending',
149
- {},
150
- {
151
- agent_instance_id: agentInstanceId,
152
- last_read_message_id: lastReadMessageId,
153
- },
154
- );
155
-
156
- // Check if we got any user messages
157
- if (pendingResponse.messages && pendingResponse.messages.length > 0) {
158
- // Return the last user message as the result
159
- const lastMessage =
160
- pendingResponse.messages[pendingResponse.messages.length - 1];
161
-
162
- // Return the response in a format compatible with the workflow
163
- return [
164
- [
165
- {
166
- json: {
167
- success: true,
168
- agent_instance_id: agentInstanceId,
169
- user_response: lastMessage.content,
170
- message_id: lastMessage.id,
171
- response_time: lastMessage.created_at,
172
- all_responses: pendingResponse.messages.map((m: any) => ({
173
- content: m.content,
174
- id: m.id,
175
- created_at: m.created_at,
176
- })),
177
- },
178
- pairedItem: i,
179
- },
180
- ],
181
- ];
182
- }
183
-
184
- // If status is 'stale', continue polling
185
- if (pendingResponse.status === 'stale') {
186
- // We might need to re-fetch to get the current state
187
- // For now, continue polling
188
- }
189
- } catch (pollError) {
190
- // Continue polling on error
191
- }
192
- }
193
-
194
- // Timeout reached without response
195
- return [
196
- [
197
- {
198
- json: {
199
- success: false,
200
- agent_instance_id: agentInstanceId,
201
- error: 'Timeout waiting for user response',
202
- timeout_seconds: syncTimeout,
203
- },
204
- pairedItem: i,
205
- },
206
- ],
207
- ];
208
- } else {
209
- // Original async mode with putExecutionToWait
210
- // Get the webhook URL from n8n's execution context
211
- // This automatically provides the correct URL for any n8n instance
212
- const resumeUrl = this.evaluateExpression('{{ $execution?.resumeUrl }}', 0) as string;
213
- const nodeId = this.evaluateExpression('{{ $nodeId }}', 0) as string;
214
- const executionId = this.getExecutionId();
215
-
216
- // Construct the full webhook URL with node ID appended
217
- const webhookUrl = `${resumeUrl}/${nodeId}`;
218
-
219
- const body: any = {
220
- agent_instance_id: agentInstanceId,
221
- agent_type: agentType,
222
- content: messageContent,
223
- requires_user_input: true,
224
- // Send webhook URL in metadata so Vicoa knows where to send the response
225
- message_metadata: {
226
- webhook_url: webhookUrl, // Full URL with execution ID and node ID
227
- execution_id: executionId,
228
- node_id: nodeId,
229
- webhook_type: 'n8n_send_and_wait',
230
- },
231
- };
232
-
233
- if (options.sendEmail !== undefined) {
234
- body.send_email = options.sendEmail;
235
- }
236
- if (options.sendSms !== undefined) {
237
- body.send_sms = options.sendSms;
238
- }
239
- if (options.sendPush !== undefined) {
240
- body.send_push = options.sendPush;
241
- }
242
-
243
- // Send message to Vicoa (like Slack sends to chat.postMessage)
244
- await vicoaApiRequest.call(this, 'POST', '/messages/agent', body);
245
-
246
- // Configure wait time
247
- const waitTill = configureWaitTillDate(this, 0);
248
-
249
- // Put execution to wait
250
- if (waitTill === 'WAIT_INDEFINITELY') {
251
- await this.putExecutionToWait(new Date(Date.now() + 365 * 24 * 60 * 60 * 1000));
252
- } else {
253
- await this.putExecutionToWait(waitTill as Date);
254
- }
255
-
256
- // Return input data
257
- return [this.getInputData()];
258
- }
259
- } else {
260
- throw new NodeOperationError(
261
- this.getNode(),
262
- `The operation "${operation}" is not supported for resource "${resource}"`,
263
- { itemIndex: i },
264
- );
265
- }
266
- } else if (resource === 'session') {
267
- if (operation === 'end') {
268
- responseData = await session.end.execute.call(this, i);
269
- } else {
270
- throw new NodeOperationError(
271
- this.getNode(),
272
- `The operation "${operation}" is not supported for resource "${resource}"`,
273
- { itemIndex: i },
274
- );
275
- }
276
- } else {
277
- throw new NodeOperationError(
278
- this.getNode(),
279
- `The resource "${resource}" is not supported`,
280
- { itemIndex: i },
281
- );
282
- }
283
-
284
- returnData.push(...responseData);
285
- } catch (error) {
286
- if (this.continueOnFail()) {
287
- returnData.push({
288
- json: {
289
- error: error instanceof Error ? error.message : String(error),
290
- resource,
291
- operation,
292
- itemIndex: i,
293
- },
294
- pairedItem: i,
295
- });
296
- continue;
297
- }
298
- throw error;
299
- }
300
- }
301
-
302
- return [returnData];
303
- }
304
- }
1
+ import {
2
+ IExecuteFunctions,
3
+ INodeExecutionData,
4
+ INodeType,
5
+ INodeTypeDescription,
6
+ NodeConnectionTypes,
7
+ NodeOperationError,
8
+ SEND_AND_WAIT_OPERATION
9
+ } from 'n8n-workflow';
10
+
11
+ import * as message from './actions/message';
12
+ import * as session from './actions/session';
13
+ import { vicoaSendAndWaitWebhook } from '../../utils/sendAndWaitWebhook';
14
+ import { sendAndWaitWebhooksDescription } from '../../utils/sendAndWait/descriptions';
15
+ import { configureWaitTillDate } from '../../utils/sendAndWait/configureWaitTillDate';
16
+ import { vicoaApiRequest, generateAgentInstanceId, getAgentType } from '../../utils/GenericFunctions';
17
+
18
+
19
+ export class Vicoa implements INodeType {
20
+ webhook = vicoaSendAndWaitWebhook;
21
+
22
+ description: INodeTypeDescription = {
23
+ displayName: 'Vicoa',
24
+ name: 'vicoa',
25
+ icon: 'file:vicoa.png',
26
+ group: ['transform'],
27
+ version: 1,
28
+ subtitle: '={{$parameter["operation"] + ": " + $parameter["resource"]}}',
29
+ description:
30
+ 'Send messages to users via Vicoa - a web and mobile platform for human-AI communication',
31
+ defaults: {
32
+ name: 'Vicoa',
33
+ },
34
+ inputs: [NodeConnectionTypes.Main],
35
+ outputs: [NodeConnectionTypes.Main],
36
+ webhooks: sendAndWaitWebhooksDescription,
37
+ credentials: [
38
+ {
39
+ name: 'vicoaApi',
40
+ required: true,
41
+ },
42
+ ],
43
+ properties: [
44
+ {
45
+ displayName: 'Resource',
46
+ name: 'resource',
47
+ type: 'options',
48
+ noDataExpression: true,
49
+ options: [
50
+ {
51
+ name: 'Message',
52
+ value: 'message',
53
+ description: 'Send messages to Vicoa agents',
54
+ },
55
+ {
56
+ name: 'Session',
57
+ value: 'session',
58
+ description: 'Manage agent sessions',
59
+ },
60
+ ],
61
+ default: 'message',
62
+ },
63
+ ...message.descriptions,
64
+ ...session.descriptions,
65
+ ],
66
+ usableAsTool: true,
67
+ };
68
+
69
+ async execute(this: IExecuteFunctions): Promise<INodeExecutionData[][]> {
70
+ const items = this.getInputData();
71
+ const returnData: INodeExecutionData[] = [];
72
+ const resource = this.getNodeParameter('resource', 0) as string;
73
+ const operation = this.getNodeParameter('operation', 0) as string;
74
+ for (let i = 0; i < items.length; i++) {
75
+ try {
76
+ let responseData: INodeExecutionData[] = [];
77
+ if (resource === 'message') {
78
+ if (operation === 'send') {
79
+ responseData = await message.send.execute.call(this, i);
80
+ } else if (operation === SEND_AND_WAIT_OPERATION || operation === 'sendAndWait') {
81
+ // FOLLOWING SLACK PATTERN EXACTLY
82
+ const agentType = getAgentType.call(this, 0);
83
+ const agentInstanceId = generateAgentInstanceId.call(this, 0, agentType);
84
+ const messageContent = this.getNodeParameter('message', 0) as string;
85
+ const options = this.getNodeParameter('options', 0, {}) as any;
86
+
87
+ // Check if sync mode is enabled (for AI Agent compatibility)
88
+ const syncMode = options.syncMode === true;
89
+
90
+ if (syncMode) {
91
+ // Sync mode: Poll for responses instead of using putExecutionToWait
92
+ // This is necessary for AI Agents which don't support async/await properly
93
+ const syncTimeout = options.syncTimeout || 7200; // Default 2 hours
94
+ const pollInterval = options.pollInterval || 5; // Default 5 seconds
95
+
96
+ // Send the message first
97
+ const body: any = {
98
+ agent_instance_id: agentInstanceId,
99
+ agent_type: agentType,
100
+ content: messageContent,
101
+ requires_user_input: true,
102
+ // Don't send webhook URL in sync mode
103
+ message_metadata: {
104
+ sync_mode: true,
105
+ node_id: this.getNode().id,
106
+ },
107
+ };
108
+
109
+ if (options.sendEmail !== undefined) {
110
+ body.send_email = options.sendEmail;
111
+ }
112
+ if (options.sendSms !== undefined) {
113
+ body.send_sms = options.sendSms;
114
+ }
115
+ if (options.sendPush !== undefined) {
116
+ body.send_push = options.sendPush;
117
+ }
118
+
119
+ const sendResponse = await vicoaApiRequest.call(
120
+ this,
121
+ 'POST',
122
+ '/messages/agent',
123
+ body,
124
+ );
125
+
126
+ const messageId = sendResponse.message_id;
127
+
128
+ // Now poll for responses
129
+ const startTime = Date.now();
130
+ const timeoutMs = syncTimeout * 1000;
131
+ const lastReadMessageId = messageId;
132
+
133
+ while (Date.now() - startTime < timeoutMs) {
134
+ // Wait for poll interval using Date.now()
135
+ // Community nodes must avoid restricted globals
136
+ const pollStart = Date.now();
137
+ const pollMs = pollInterval * 1000;
138
+ while (Date.now() - pollStart < pollMs) {
139
+ // Small delay to avoid blocking
140
+ await new Promise((resolve) => resolve(undefined));
141
+ }
142
+
143
+ // Check for pending messages
144
+ try {
145
+ const pendingResponse = await vicoaApiRequest.call(
146
+ this,
147
+ 'GET',
148
+ '/messages/pending',
149
+ {},
150
+ {
151
+ agent_instance_id: agentInstanceId,
152
+ last_read_message_id: lastReadMessageId,
153
+ },
154
+ );
155
+
156
+ // Check if we got any user messages
157
+ if (pendingResponse.messages && pendingResponse.messages.length > 0) {
158
+ // Return the last user message as the result
159
+ const lastMessage =
160
+ pendingResponse.messages[pendingResponse.messages.length - 1];
161
+
162
+ // Return the response in a format compatible with the workflow
163
+ return [
164
+ [
165
+ {
166
+ json: {
167
+ success: true,
168
+ agent_instance_id: agentInstanceId,
169
+ user_response: lastMessage.content,
170
+ message_id: lastMessage.id,
171
+ response_time: lastMessage.created_at,
172
+ all_responses: pendingResponse.messages.map((m: any) => ({
173
+ content: m.content,
174
+ id: m.id,
175
+ created_at: m.created_at,
176
+ })),
177
+ },
178
+ pairedItem: i,
179
+ },
180
+ ],
181
+ ];
182
+ }
183
+
184
+ // If status is 'stale', continue polling
185
+ if (pendingResponse.status === 'stale') {
186
+ // We might need to re-fetch to get the current state
187
+ // For now, continue polling
188
+ }
189
+ } catch (pollError) {
190
+ // Continue polling on error
191
+ }
192
+ }
193
+
194
+ // Timeout reached without response
195
+ return [
196
+ [
197
+ {
198
+ json: {
199
+ success: false,
200
+ agent_instance_id: agentInstanceId,
201
+ error: 'Timeout waiting for user response',
202
+ timeout_seconds: syncTimeout,
203
+ },
204
+ pairedItem: i,
205
+ },
206
+ ],
207
+ ];
208
+ } else {
209
+ // Original async mode with putExecutionToWait
210
+ // Get the webhook URL from n8n's execution context
211
+ // This automatically provides the correct URL for any n8n instance
212
+ const resumeUrl = this.evaluateExpression('{{ $execution?.resumeUrl }}', 0) as string;
213
+ const nodeId = this.evaluateExpression('{{ $nodeId }}', 0) as string;
214
+ const executionId = this.getExecutionId();
215
+
216
+ // Construct the full webhook URL with node ID appended
217
+ const webhookUrl = `${resumeUrl}/${nodeId}`;
218
+
219
+ const body: any = {
220
+ agent_instance_id: agentInstanceId,
221
+ agent_type: agentType,
222
+ content: messageContent,
223
+ requires_user_input: true,
224
+ // Send webhook URL in metadata so Vicoa knows where to send the response
225
+ message_metadata: {
226
+ webhook_url: webhookUrl, // Full URL with execution ID and node ID
227
+ execution_id: executionId,
228
+ node_id: nodeId,
229
+ webhook_type: 'n8n_send_and_wait',
230
+ },
231
+ };
232
+
233
+ if (options.sendEmail !== undefined) {
234
+ body.send_email = options.sendEmail;
235
+ }
236
+ if (options.sendSms !== undefined) {
237
+ body.send_sms = options.sendSms;
238
+ }
239
+ if (options.sendPush !== undefined) {
240
+ body.send_push = options.sendPush;
241
+ }
242
+
243
+ // Send message to Vicoa (like Slack sends to chat.postMessage)
244
+ await vicoaApiRequest.call(this, 'POST', '/messages/agent', body);
245
+
246
+ // Configure wait time
247
+ const waitTill = configureWaitTillDate(this, 0);
248
+
249
+ // Put execution to wait
250
+ if (waitTill === 'WAIT_INDEFINITELY') {
251
+ await this.putExecutionToWait(new Date(Date.now() + 365 * 24 * 60 * 60 * 1000));
252
+ } else {
253
+ await this.putExecutionToWait(waitTill as Date);
254
+ }
255
+
256
+ // Return input data
257
+ return [this.getInputData()];
258
+ }
259
+ } else {
260
+ throw new NodeOperationError(
261
+ this.getNode(),
262
+ `The operation "${operation}" is not supported for resource "${resource}"`,
263
+ { itemIndex: i },
264
+ );
265
+ }
266
+ } else if (resource === 'session') {
267
+ if (operation === 'end') {
268
+ responseData = await session.end.execute.call(this, i);
269
+ } else {
270
+ throw new NodeOperationError(
271
+ this.getNode(),
272
+ `The operation "${operation}" is not supported for resource "${resource}"`,
273
+ { itemIndex: i },
274
+ );
275
+ }
276
+ } else {
277
+ throw new NodeOperationError(
278
+ this.getNode(),
279
+ `The resource "${resource}" is not supported`,
280
+ { itemIndex: i },
281
+ );
282
+ }
283
+
284
+ returnData.push(...responseData);
285
+ } catch (error) {
286
+ if (this.continueOnFail()) {
287
+ returnData.push({
288
+ json: {
289
+ error: error instanceof Error ? error.message : String(error),
290
+ resource,
291
+ operation,
292
+ itemIndex: i,
293
+ },
294
+ pairedItem: i,
295
+ });
296
+ continue;
297
+ }
298
+ throw error;
299
+ }
300
+ }
301
+
302
+ return [returnData];
303
+ }
304
+ }