@vicoa/cli 1.3.21-win32-x64 → 1.3.21

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 (250) hide show
  1. package/README.md +82 -0
  2. package/bin/vicoa.js +38 -0
  3. package/package.json +29 -10
  4. package/bin/_internal/81d243bd2c585b0f4821__mypyc.cp312-win_amd64.pyd +0 -0
  5. package/bin/_internal/VCRUNTIME140.dll +0 -0
  6. package/bin/_internal/VCRUNTIME140_1.dll +0 -0
  7. package/bin/_internal/_asyncio.pyd +0 -0
  8. package/bin/_internal/_bz2.pyd +0 -0
  9. package/bin/_internal/_cffi_backend.cp312-win_amd64.pyd +0 -0
  10. package/bin/_internal/_ctypes.pyd +0 -0
  11. package/bin/_internal/_decimal.pyd +0 -0
  12. package/bin/_internal/_hashlib.pyd +0 -0
  13. package/bin/_internal/_lzma.pyd +0 -0
  14. package/bin/_internal/_multiprocessing.pyd +0 -0
  15. package/bin/_internal/_overlapped.pyd +0 -0
  16. package/bin/_internal/_queue.pyd +0 -0
  17. package/bin/_internal/_socket.pyd +0 -0
  18. package/bin/_internal/_ssl.pyd +0 -0
  19. package/bin/_internal/_uuid.pyd +0 -0
  20. package/bin/_internal/_wmi.pyd +0 -0
  21. package/bin/_internal/_zoneinfo.pyd +0 -0
  22. package/bin/_internal/aiohttp/_http_parser.cp312-win_amd64.pyd +0 -0
  23. package/bin/_internal/aiohttp/_http_writer.cp312-win_amd64.pyd +0 -0
  24. package/bin/_internal/aiohttp/_websocket/mask.cp312-win_amd64.pyd +0 -0
  25. package/bin/_internal/aiohttp/_websocket/reader_c.cp312-win_amd64.pyd +0 -0
  26. package/bin/_internal/api-ms-win-core-console-l1-1-0.dll +0 -0
  27. package/bin/_internal/api-ms-win-core-datetime-l1-1-0.dll +0 -0
  28. package/bin/_internal/api-ms-win-core-debug-l1-1-0.dll +0 -0
  29. package/bin/_internal/api-ms-win-core-errorhandling-l1-1-0.dll +0 -0
  30. package/bin/_internal/api-ms-win-core-fibers-l1-1-0.dll +0 -0
  31. package/bin/_internal/api-ms-win-core-fibers-l1-1-1.dll +0 -0
  32. package/bin/_internal/api-ms-win-core-file-l1-1-0.dll +0 -0
  33. package/bin/_internal/api-ms-win-core-file-l1-2-0.dll +0 -0
  34. package/bin/_internal/api-ms-win-core-file-l2-1-0.dll +0 -0
  35. package/bin/_internal/api-ms-win-core-handle-l1-1-0.dll +0 -0
  36. package/bin/_internal/api-ms-win-core-heap-l1-1-0.dll +0 -0
  37. package/bin/_internal/api-ms-win-core-interlocked-l1-1-0.dll +0 -0
  38. package/bin/_internal/api-ms-win-core-kernel32-legacy-l1-1-1.dll +0 -0
  39. package/bin/_internal/api-ms-win-core-libraryloader-l1-1-0.dll +0 -0
  40. package/bin/_internal/api-ms-win-core-localization-l1-2-0.dll +0 -0
  41. package/bin/_internal/api-ms-win-core-memory-l1-1-0.dll +0 -0
  42. package/bin/_internal/api-ms-win-core-namedpipe-l1-1-0.dll +0 -0
  43. package/bin/_internal/api-ms-win-core-processenvironment-l1-1-0.dll +0 -0
  44. package/bin/_internal/api-ms-win-core-processthreads-l1-1-0.dll +0 -0
  45. package/bin/_internal/api-ms-win-core-processthreads-l1-1-1.dll +0 -0
  46. package/bin/_internal/api-ms-win-core-profile-l1-1-0.dll +0 -0
  47. package/bin/_internal/api-ms-win-core-rtlsupport-l1-1-0.dll +0 -0
  48. package/bin/_internal/api-ms-win-core-string-l1-1-0.dll +0 -0
  49. package/bin/_internal/api-ms-win-core-synch-l1-1-0.dll +0 -0
  50. package/bin/_internal/api-ms-win-core-synch-l1-2-0.dll +0 -0
  51. package/bin/_internal/api-ms-win-core-sysinfo-l1-1-0.dll +0 -0
  52. package/bin/_internal/api-ms-win-core-sysinfo-l1-2-0.dll +0 -0
  53. package/bin/_internal/api-ms-win-core-timezone-l1-1-0.dll +0 -0
  54. package/bin/_internal/api-ms-win-core-util-l1-1-0.dll +0 -0
  55. package/bin/_internal/api-ms-win-crt-conio-l1-1-0.dll +0 -0
  56. package/bin/_internal/api-ms-win-crt-convert-l1-1-0.dll +0 -0
  57. package/bin/_internal/api-ms-win-crt-environment-l1-1-0.dll +0 -0
  58. package/bin/_internal/api-ms-win-crt-filesystem-l1-1-0.dll +0 -0
  59. package/bin/_internal/api-ms-win-crt-heap-l1-1-0.dll +0 -0
  60. package/bin/_internal/api-ms-win-crt-locale-l1-1-0.dll +0 -0
  61. package/bin/_internal/api-ms-win-crt-math-l1-1-0.dll +0 -0
  62. package/bin/_internal/api-ms-win-crt-process-l1-1-0.dll +0 -0
  63. package/bin/_internal/api-ms-win-crt-runtime-l1-1-0.dll +0 -0
  64. package/bin/_internal/api-ms-win-crt-stdio-l1-1-0.dll +0 -0
  65. package/bin/_internal/api-ms-win-crt-string-l1-1-0.dll +0 -0
  66. package/bin/_internal/api-ms-win-crt-time-l1-1-0.dll +0 -0
  67. package/bin/_internal/api-ms-win-crt-utility-l1-1-0.dll +0 -0
  68. package/bin/_internal/attrs-26.1.0.dist-info/INSTALLER +0 -1
  69. package/bin/_internal/attrs-26.1.0.dist-info/METADATA +0 -199
  70. package/bin/_internal/attrs-26.1.0.dist-info/RECORD +0 -55
  71. package/bin/_internal/attrs-26.1.0.dist-info/WHEEL +0 -4
  72. package/bin/_internal/attrs-26.1.0.dist-info/licenses/LICENSE +0 -21
  73. package/bin/_internal/base_library.zip +0 -0
  74. package/bin/_internal/certifi/cacert.pem +0 -3933
  75. package/bin/_internal/certifi/py.typed +0 -0
  76. package/bin/_internal/charset_normalizer/cd.cp312-win_amd64.pyd +0 -0
  77. package/bin/_internal/charset_normalizer/md.cp312-win_amd64.pyd +0 -0
  78. package/bin/_internal/click-8.3.3.dist-info/INSTALLER +0 -1
  79. package/bin/_internal/click-8.3.3.dist-info/METADATA +0 -84
  80. package/bin/_internal/click-8.3.3.dist-info/RECORD +0 -40
  81. package/bin/_internal/click-8.3.3.dist-info/WHEEL +0 -4
  82. package/bin/_internal/click-8.3.3.dist-info/licenses/LICENSE.txt +0 -28
  83. package/bin/_internal/cryptography/hazmat/bindings/_rust.pyd +0 -0
  84. package/bin/_internal/cryptography-48.0.0.dist-info/INSTALLER +0 -1
  85. package/bin/_internal/cryptography-48.0.0.dist-info/METADATA +0 -110
  86. package/bin/_internal/cryptography-48.0.0.dist-info/RECORD +0 -195
  87. package/bin/_internal/cryptography-48.0.0.dist-info/WHEEL +0 -4
  88. package/bin/_internal/cryptography-48.0.0.dist-info/licenses/LICENSE +0 -3
  89. package/bin/_internal/cryptography-48.0.0.dist-info/licenses/LICENSE.APACHE +0 -202
  90. package/bin/_internal/cryptography-48.0.0.dist-info/licenses/LICENSE.BSD +0 -27
  91. package/bin/_internal/cryptography-48.0.0.dist-info/sboms/cryptography-rust.cyclonedx.json +0 -1362
  92. package/bin/_internal/cryptography-48.0.0.dist-info/sboms/sbom.json +0 -43
  93. package/bin/_internal/fastmcp-2.9.2.dist-info/INSTALLER +0 -1
  94. package/bin/_internal/fastmcp-2.9.2.dist-info/METADATA +0 -465
  95. package/bin/_internal/fastmcp-2.9.2.dist-info/RECORD +0 -149
  96. package/bin/_internal/fastmcp-2.9.2.dist-info/WHEEL +0 -4
  97. package/bin/_internal/fastmcp-2.9.2.dist-info/entry_points.txt +0 -2
  98. package/bin/_internal/fastmcp-2.9.2.dist-info/licenses/LICENSE +0 -201
  99. package/bin/_internal/frozenlist/_frozenlist.cp312-win_amd64.pyd +0 -0
  100. package/bin/_internal/integrations/cli_wrappers/IMPORTANT_USE_CASES.md +0 -33
  101. package/bin/_internal/integrations/github/claude-code-action/CLAUDE.md +0 -136
  102. package/bin/_internal/integrations/github/claude-code-action/CODE_OF_CONDUCT.md +0 -128
  103. package/bin/_internal/integrations/github/claude-code-action/CONTRIBUTING.md +0 -116
  104. package/bin/_internal/integrations/github/claude-code-action/LICENSE +0 -21
  105. package/bin/_internal/integrations/github/claude-code-action/README.md +0 -53
  106. package/bin/_internal/integrations/github/claude-code-action/ROADMAP.md +0 -20
  107. package/bin/_internal/integrations/github/claude-code-action/SECURITY.md +0 -15
  108. package/bin/_internal/integrations/github/claude-code-action/action.yml +0 -294
  109. package/bin/_internal/integrations/github/claude-code-action/base-action/CLAUDE.md +0 -60
  110. package/bin/_internal/integrations/github/claude-code-action/base-action/CODE_OF_CONDUCT.md +0 -128
  111. package/bin/_internal/integrations/github/claude-code-action/base-action/CONTRIBUTING.md +0 -136
  112. package/bin/_internal/integrations/github/claude-code-action/base-action/LICENSE +0 -21
  113. package/bin/_internal/integrations/github/claude-code-action/base-action/MIRROR_DISCLAIMER.md +0 -11
  114. package/bin/_internal/integrations/github/claude-code-action/base-action/README.md +0 -521
  115. package/bin/_internal/integrations/github/claude-code-action/base-action/action.yml +0 -149
  116. package/bin/_internal/integrations/github/claude-code-action/base-action/bun.lock +0 -54
  117. package/bin/_internal/integrations/github/claude-code-action/base-action/examples/issue-triage.yml +0 -108
  118. package/bin/_internal/integrations/github/claude-code-action/base-action/package.json +0 -23
  119. package/bin/_internal/integrations/github/claude-code-action/base-action/scripts/install-hooks.sh +0 -13
  120. package/bin/_internal/integrations/github/claude-code-action/base-action/scripts/pre-push +0 -46
  121. package/bin/_internal/integrations/github/claude-code-action/base-action/src/index.ts +0 -82
  122. package/bin/_internal/integrations/github/claude-code-action/base-action/src/prepare-prompt.ts +0 -82
  123. package/bin/_internal/integrations/github/claude-code-action/base-action/src/run-claude.ts +0 -257
  124. package/bin/_internal/integrations/github/claude-code-action/base-action/src/run-vicoa.ts +0 -301
  125. package/bin/_internal/integrations/github/claude-code-action/base-action/src/setup-claude-code-settings.ts +0 -68
  126. package/bin/_internal/integrations/github/claude-code-action/base-action/src/validate-env.ts +0 -54
  127. package/bin/_internal/integrations/github/claude-code-action/base-action/test-local.sh +0 -12
  128. package/bin/_internal/integrations/github/claude-code-action/base-action/test-mcp-local.sh +0 -18
  129. package/bin/_internal/integrations/github/claude-code-action/base-action/tsconfig.json +0 -30
  130. package/bin/_internal/integrations/github/claude-code-action/bun.lock +0 -384
  131. package/bin/_internal/integrations/github/claude-code-action/docs/capabilities-and-limitations.md +0 -33
  132. package/bin/_internal/integrations/github/claude-code-action/docs/cloud-providers.md +0 -99
  133. package/bin/_internal/integrations/github/claude-code-action/docs/configuration.md +0 -345
  134. package/bin/_internal/integrations/github/claude-code-action/docs/custom-automations.md +0 -113
  135. package/bin/_internal/integrations/github/claude-code-action/docs/experimental.md +0 -128
  136. package/bin/_internal/integrations/github/claude-code-action/docs/faq.md +0 -205
  137. package/bin/_internal/integrations/github/claude-code-action/docs/migration-guide.md +0 -261
  138. package/bin/_internal/integrations/github/claude-code-action/docs/security.md +0 -38
  139. package/bin/_internal/integrations/github/claude-code-action/docs/setup.md +0 -146
  140. package/bin/_internal/integrations/github/claude-code-action/docs/usage.md +0 -213
  141. package/bin/_internal/integrations/github/claude-code-action/examples/auto-fix-ci/auto-fix-ci.yml +0 -97
  142. package/bin/_internal/integrations/github/claude-code-action/examples/auto-fix-ci/commands/fix-ci.md +0 -127
  143. package/bin/_internal/integrations/github/claude-code-action/examples/auto-fix-ci-signed/auto-fix-ci-signed.yml +0 -97
  144. package/bin/_internal/integrations/github/claude-code-action/examples/auto-fix-ci-signed/commands/fix-ci-signed.md +0 -148
  145. package/bin/_internal/integrations/github/claude-code-action/examples/issue-deduplication.yml +0 -63
  146. package/bin/_internal/integrations/github/claude-code-action/examples/issue-triage.yml +0 -75
  147. package/bin/_internal/integrations/github/claude-code-action/examples/vicoa.yml +0 -75
  148. package/bin/_internal/integrations/github/claude-code-action/package.json +0 -31
  149. package/bin/_internal/integrations/github/claude-code-action/scripts/install-hooks.sh +0 -13
  150. package/bin/_internal/integrations/github/claude-code-action/scripts/pre-commit +0 -46
  151. package/bin/_internal/integrations/github/claude-code-action/scripts/setup-network-restrictions.sh +0 -123
  152. package/bin/_internal/integrations/github/claude-code-action/src/create-prompt/index.ts +0 -799
  153. package/bin/_internal/integrations/github/claude-code-action/src/create-prompt/types.ts +0 -102
  154. package/bin/_internal/integrations/github/claude-code-action/src/entrypoints/collect-inputs.ts +0 -58
  155. package/bin/_internal/integrations/github/claude-code-action/src/entrypoints/format-turns.ts +0 -465
  156. package/bin/_internal/integrations/github/claude-code-action/src/entrypoints/prepare.ts +0 -98
  157. package/bin/_internal/integrations/github/claude-code-action/src/entrypoints/update-comment-link.ts +0 -245
  158. package/bin/_internal/integrations/github/claude-code-action/src/github/api/client.ts +0 -23
  159. package/bin/_internal/integrations/github/claude-code-action/src/github/api/config.ts +0 -4
  160. package/bin/_internal/integrations/github/claude-code-action/src/github/api/queries/github.ts +0 -117
  161. package/bin/_internal/integrations/github/claude-code-action/src/github/context.ts +0 -277
  162. package/bin/_internal/integrations/github/claude-code-action/src/github/data/fetcher.ts +0 -233
  163. package/bin/_internal/integrations/github/claude-code-action/src/github/data/formatter.ts +0 -144
  164. package/bin/_internal/integrations/github/claude-code-action/src/github/operations/branch-cleanup.ts +0 -132
  165. package/bin/_internal/integrations/github/claude-code-action/src/github/operations/branch.ts +0 -163
  166. package/bin/_internal/integrations/github/claude-code-action/src/github/operations/comment-logic.ts +0 -203
  167. package/bin/_internal/integrations/github/claude-code-action/src/github/operations/comments/common.ts +0 -33
  168. package/bin/_internal/integrations/github/claude-code-action/src/github/operations/comments/create-initial.ts +0 -111
  169. package/bin/_internal/integrations/github/claude-code-action/src/github/operations/comments/update-claude-comment.ts +0 -70
  170. package/bin/_internal/integrations/github/claude-code-action/src/github/operations/comments/update-with-branch.ts +0 -57
  171. package/bin/_internal/integrations/github/claude-code-action/src/github/operations/git-config.ts +0 -62
  172. package/bin/_internal/integrations/github/claude-code-action/src/github/token.ts +0 -108
  173. package/bin/_internal/integrations/github/claude-code-action/src/github/types.ts +0 -98
  174. package/bin/_internal/integrations/github/claude-code-action/src/github/utils/image-downloader.ts +0 -246
  175. package/bin/_internal/integrations/github/claude-code-action/src/github/utils/sanitizer.ts +0 -100
  176. package/bin/_internal/integrations/github/claude-code-action/src/github/validation/actor.ts +0 -64
  177. package/bin/_internal/integrations/github/claude-code-action/src/github/validation/permissions.ts +0 -47
  178. package/bin/_internal/integrations/github/claude-code-action/src/github/validation/trigger.ts +0 -148
  179. package/bin/_internal/integrations/github/claude-code-action/src/mcp/github-actions-server.ts +0 -279
  180. package/bin/_internal/integrations/github/claude-code-action/src/mcp/github-comment-server.ts +0 -101
  181. package/bin/_internal/integrations/github/claude-code-action/src/mcp/github-file-ops-server.ts +0 -677
  182. package/bin/_internal/integrations/github/claude-code-action/src/mcp/github-inline-comment-server.ts +0 -184
  183. package/bin/_internal/integrations/github/claude-code-action/src/mcp/install-mcp-server.ts +0 -201
  184. package/bin/_internal/integrations/github/claude-code-action/src/modes/agent/index.ts +0 -152
  185. package/bin/_internal/integrations/github/claude-code-action/src/modes/agent/parse-tools.ts +0 -22
  186. package/bin/_internal/integrations/github/claude-code-action/src/modes/detector.ts +0 -66
  187. package/bin/_internal/integrations/github/claude-code-action/src/modes/registry.ts +0 -54
  188. package/bin/_internal/integrations/github/claude-code-action/src/modes/tag/index.ts +0 -187
  189. package/bin/_internal/integrations/github/claude-code-action/src/modes/types.ts +0 -100
  190. package/bin/_internal/integrations/github/claude-code-action/src/prepare/index.ts +0 -20
  191. package/bin/_internal/integrations/github/claude-code-action/src/prepare/types.ts +0 -20
  192. package/bin/_internal/integrations/github/claude-code-action/src/utils/retry.ts +0 -40
  193. package/bin/_internal/integrations/github/claude-code-action/tsconfig.json +0 -30
  194. package/bin/_internal/integrations/n8n/LICENSE +0 -21
  195. package/bin/_internal/integrations/n8n/README.md +0 -298
  196. package/bin/_internal/integrations/n8n/package-lock.json +0 -2989
  197. package/bin/_internal/integrations/n8n/package.json +0 -68
  198. package/bin/_internal/integrations/n8n/src/credentials/OmnaraApi.credentials.ts +0 -52
  199. package/bin/_internal/integrations/n8n/src/nodes/Omnara/Omnara.node.json +0 -35
  200. package/bin/_internal/integrations/n8n/src/nodes/Omnara/Omnara.node.ts +0 -304
  201. package/bin/_internal/integrations/n8n/src/nodes/Omnara/actions/message/index.ts +0 -37
  202. package/bin/_internal/integrations/n8n/src/nodes/Omnara/actions/message/send.operation.ts +0 -151
  203. package/bin/_internal/integrations/n8n/src/nodes/Omnara/actions/message/sendAndWait.operation.ts +0 -252
  204. package/bin/_internal/integrations/n8n/src/nodes/Omnara/actions/session/end.operation.ts +0 -56
  205. package/bin/_internal/integrations/n8n/src/nodes/Omnara/actions/session/index.ts +0 -29
  206. package/bin/_internal/integrations/n8n/src/nodes/Omnara/vicoa.png +0 -0
  207. package/bin/_internal/integrations/n8n/src/utils/GenericFunctions.ts +0 -93
  208. package/bin/_internal/integrations/n8n/src/utils/sendAndWait/configureWaitTillDate.ts +0 -42
  209. package/bin/_internal/integrations/n8n/src/utils/sendAndWait/descriptions.ts +0 -20
  210. package/bin/_internal/integrations/n8n/src/utils/sendAndWaitWebhook.ts +0 -72
  211. package/bin/_internal/integrations/n8n/tsconfig.json +0 -20
  212. package/bin/_internal/jiter/jiter.cp312-win_amd64.pyd +0 -0
  213. package/bin/_internal/libcrypto-3.dll +0 -0
  214. package/bin/_internal/libffi-8.dll +0 -0
  215. package/bin/_internal/libssl-3.dll +0 -0
  216. package/bin/_internal/mcp-1.9.4.dist-info/INSTALLER +0 -1
  217. package/bin/_internal/mcp-1.9.4.dist-info/METADATA +0 -939
  218. package/bin/_internal/mcp-1.9.4.dist-info/RECORD +0 -154
  219. package/bin/_internal/mcp-1.9.4.dist-info/WHEEL +0 -4
  220. package/bin/_internal/mcp-1.9.4.dist-info/entry_points.txt +0 -2
  221. package/bin/_internal/mcp-1.9.4.dist-info/licenses/LICENSE +0 -21
  222. package/bin/_internal/multidict/_multidict.cp312-win_amd64.pyd +0 -0
  223. package/bin/_internal/propcache/_helpers_c.cp312-win_amd64.pyd +0 -0
  224. package/bin/_internal/pydantic_core/_pydantic_core.cp312-win_amd64.pyd +0 -0
  225. package/bin/_internal/pyexpat.pyd +0 -0
  226. package/bin/_internal/python3.dll +0 -0
  227. package/bin/_internal/python312.dll +0 -0
  228. package/bin/_internal/select.pyd +0 -0
  229. package/bin/_internal/setuptools/_vendor/importlib_metadata-8.7.1.dist-info/INSTALLER +0 -1
  230. package/bin/_internal/setuptools/_vendor/importlib_metadata-8.7.1.dist-info/METADATA +0 -133
  231. package/bin/_internal/setuptools/_vendor/importlib_metadata-8.7.1.dist-info/RECORD +0 -21
  232. package/bin/_internal/setuptools/_vendor/importlib_metadata-8.7.1.dist-info/REQUESTED +0 -0
  233. package/bin/_internal/setuptools/_vendor/importlib_metadata-8.7.1.dist-info/WHEEL +0 -5
  234. package/bin/_internal/setuptools/_vendor/importlib_metadata-8.7.1.dist-info/licenses/LICENSE +0 -73
  235. package/bin/_internal/setuptools/_vendor/importlib_metadata-8.7.1.dist-info/top_level.txt +0 -1
  236. package/bin/_internal/setuptools/_vendor/jaraco/text/Lorem ipsum.txt +0 -2
  237. package/bin/_internal/ucrtbase.dll +0 -0
  238. package/bin/_internal/unicodedata.pyd +0 -0
  239. package/bin/_internal/vicoa/_bin/README.md +0 -28
  240. package/bin/_internal/vicoa-1.3.21.dist-info/INSTALLER +0 -1
  241. package/bin/_internal/vicoa-1.3.21.dist-info/METADATA +0 -313
  242. package/bin/_internal/vicoa-1.3.21.dist-info/RECORD +0 -11
  243. package/bin/_internal/vicoa-1.3.21.dist-info/REQUESTED +0 -0
  244. package/bin/_internal/vicoa-1.3.21.dist-info/WHEEL +0 -5
  245. package/bin/_internal/vicoa-1.3.21.dist-info/direct_url.json +0 -1
  246. package/bin/_internal/vicoa-1.3.21.dist-info/entry_points.txt +0 -2
  247. package/bin/_internal/vicoa-1.3.21.dist-info/licenses/LICENSE +0 -201
  248. package/bin/_internal/vicoa-1.3.21.dist-info/top_level.txt +0 -3
  249. package/bin/_internal/yarl/_quoting_c.cp312-win_amd64.pyd +0 -0
  250. package/bin/vicoa.exe +0 -0
@@ -1,68 +0,0 @@
1
- {
2
- "name": "n8n-nodes-vicoa",
3
- "version": "0.1.6",
4
- "description": "n8n node for Vicoa - communicate with AI agents",
5
- "keywords": [
6
- "n8n",
7
- "n8n-node",
8
- "n8n-community-node-package",
9
- "vicoa",
10
- "ai",
11
- "agents",
12
- "workflow"
13
- ],
14
- "license": "MIT",
15
- "homepage": "https://github.com/vicoa-ai/vicoa/tree/main/src/integrations/n8n",
16
- "author": {
17
- "name": "Vicoa",
18
- "email": "hi@vicoa.ai"
19
- },
20
- "repository": {
21
- "type": "git",
22
- "url": "git+https://github.com/vicoa-ai/vicoa.git",
23
- "directory": "src/integrations/n8n"
24
- },
25
- "main": "dist/index.js",
26
- "scripts": {
27
- "build": "tsc && npm run copy-assets",
28
- "copy-assets": "cp src/nodes/Vicoa/vicoa.png dist/nodes/Vicoa/ && cp src/nodes/Vicoa/Vicoa.node.json dist/nodes/Vicoa/",
29
- "dev": "tsc --watch",
30
- "format": "prettier --write .",
31
- "lint": "eslint . --ext .ts",
32
- "lint:fix": "eslint . --ext .ts --fix",
33
- "prepublishOnly": "npm run build"
34
- },
35
- "files": [
36
- "dist",
37
- "LICENSE"
38
- ],
39
- "n8n": {
40
- "n8nNodesApiVersion": 1,
41
- "credentials": [
42
- "dist/credentials/VicoaApi.credentials.js"
43
- ],
44
- "nodes": [
45
- "dist/nodes/Vicoa/Vicoa.node.js"
46
- ]
47
- },
48
- "devDependencies": {
49
- "@types/node": "^20.10.0",
50
- "@types/uuid": "^9.0.0",
51
- "@typescript-eslint/eslint-plugin": "^6.13.0",
52
- "@typescript-eslint/parser": "^6.13.0",
53
- "eslint": "^8.54.0",
54
- "eslint-config-prettier": "^9.0.0",
55
- "eslint-plugin-prettier": "^5.0.1",
56
- "prettier": "^3.1.0",
57
- "typescript": "^5.3.2"
58
- },
59
- "dependencies": {
60
- "uuid": "^9.0.1"
61
- },
62
- "peerDependencies": {
63
- "n8n-workflow": "*"
64
- },
65
- "engines": {
66
- "node": ">=20.15.0"
67
- }
68
- }
@@ -1,52 +0,0 @@
1
- import {
2
- IAuthenticateGeneric,
3
- ICredentialTestRequest,
4
- ICredentialType,
5
- INodeProperties,
6
- } from 'n8n-workflow';
7
-
8
- export class VicoaApi implements ICredentialType {
9
- name = 'vicoaApi';
10
- displayName = 'Vicoa API';
11
- documentationUrl = 'https://github.com/vicoa-ai/vicoa';
12
- properties: INodeProperties[] = [
13
- {
14
- displayName: 'API Key',
15
- name: 'apiKey',
16
- type: 'string',
17
- typeOptions: {
18
- password: true,
19
- },
20
- default: '',
21
- required: true,
22
- description: 'Your Vicoa API key. Get it from your Vicoa dashboard.',
23
- },
24
- {
25
- displayName: 'API URL',
26
- name: 'serverUrl',
27
- type: 'string',
28
- default: 'https://api.vicoa.ai:8443',
29
- required: true,
30
- description:
31
- 'The Vicoa API URL (without /api/v1). Use the default unless you have a custom deployment.',
32
- placeholder: 'https://api.vicoa.ai:8443',
33
- },
34
- ];
35
-
36
- authenticate: IAuthenticateGeneric = {
37
- type: 'generic',
38
- properties: {
39
- headers: {
40
- Authorization: '=Bearer {{$credentials.apiKey}}',
41
- },
42
- },
43
- };
44
-
45
- test: ICredentialTestRequest = {
46
- request: {
47
- baseURL: '={{$credentials.serverUrl}}',
48
- url: '/api/v1/auth/verify',
49
- method: 'GET',
50
- },
51
- };
52
- }
@@ -1,35 +0,0 @@
1
- {
2
- "node": "n8n-nodes-vicoa.vicoa",
3
- "nodeVersion": "1.0",
4
- "codexVersion": "1.0",
5
- "categories": [
6
- "Communication",
7
- "Development"
8
- ],
9
- "resources": {
10
- "credentialDocumentation": [
11
- {
12
- "url": "https://github.com/vicoa-ai/vicoa"
13
- }
14
- ],
15
- "primaryDocumentation": [
16
- {
17
- "url": "https://github.com/vicoa-ai/vicoa"
18
- }
19
- ]
20
- },
21
- "subcategories": {
22
- "Communication": [
23
- "Chat"
24
- ],
25
- "Development": [
26
- "AI"
27
- ]
28
- },
29
- "alias": [
30
- "AI",
31
- "Agent",
32
- "Claude",
33
- "Assistant"
34
- ]
35
- }
@@ -1,304 +0,0 @@
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,37 +0,0 @@
1
- import * as send from './send.operation';
2
- import * as sendAndWait from './sendAndWait.operation';
3
-
4
- import { INodeProperties } from 'n8n-workflow';
5
-
6
- export { send, sendAndWait };
7
-
8
- export const descriptions: INodeProperties[] = [
9
- {
10
- displayName: 'Operation',
11
- name: 'operation',
12
- type: 'options',
13
- noDataExpression: true,
14
- displayOptions: {
15
- show: {
16
- resource: ['message'],
17
- },
18
- },
19
- options: [
20
- {
21
- name: 'Send',
22
- value: 'send',
23
- description: 'Send a non-blocking message to the user (for status updates, progress reports, or sharing your thought process). Use this when you want to inform the user but do not need their response to continue',
24
- action: 'Send message',
25
- },
26
- {
27
- name: 'Send and Wait',
28
- value: 'sendAndWait',
29
- description: 'Send a message and wait for the user\'s response (for questions, approvals, or conversations). Use this when you need the user\'s input to proceed with your task',
30
- action: 'Send message and wait for response',
31
- },
32
- ],
33
- default: 'send',
34
- },
35
- ...send.sendMessageDescription,
36
- ...sendAndWait.sendAndWaitDescription,
37
- ];
@@ -1,151 +0,0 @@
1
- import {
2
- IExecuteFunctions,
3
- INodeExecutionData,
4
- INodeProperties,
5
- NodeOperationError,
6
- } from 'n8n-workflow';
7
-
8
- import { vicoaApiRequest, formatMessageResponse, generateAgentInstanceId, getAgentType } from '../../../../utils/GenericFunctions';
9
-
10
- export const sendMessageDescription: INodeProperties[] = [
11
- {
12
- displayName: 'Agent Instance ID',
13
- name: 'agentInstanceId',
14
- type: 'string',
15
- default: '',
16
- required: false,
17
- displayOptions: {
18
- show: {
19
- resource: ['message'],
20
- operation: ['send'],
21
- },
22
- },
23
- placeholder: 'e.g. 550e8400-e29b-41d4-a716-446655440000',
24
- description:
25
- 'A unique UUID for this workflow run. Must be the same across all Vicoa nodes in this workflow. Use webhook data or generate with {{ $uuid() }}. If left empty, a default value will be generated.',
26
- },
27
- {
28
- displayName: 'Agent Type',
29
- name: 'agentType',
30
- type: 'string',
31
- default: '',
32
- required: false,
33
- displayOptions: {
34
- show: {
35
- resource: ['message'],
36
- operation: ['send'],
37
- },
38
- },
39
- placeholder: 'e.g. Customer Support',
40
- description:
41
- 'The name of your agent on Vicoa dashboard. Must be the same across all Vicoa nodes. If left empty, the workflow name will be used as the default.',
42
- },
43
- {
44
- displayName: 'Message',
45
- name: 'message',
46
- type: 'string',
47
- default: '',
48
- required: true,
49
- typeOptions: {
50
- rows: 4,
51
- },
52
- displayOptions: {
53
- show: {
54
- resource: ['message'],
55
- operation: ['send'],
56
- },
57
- },
58
- placeholder: 'e.g. Build completed successfully',
59
- description:
60
- 'Status update or informational message to send to the user. This will appear in their Vicoa web/mobile app. The workflow will continue immediately without waiting for a response.',
61
- },
62
- {
63
- displayName: 'Additional Options',
64
- name: 'additionalOptions',
65
- type: 'collection',
66
- placeholder: 'Add Option',
67
- default: {},
68
- displayOptions: {
69
- show: {
70
- resource: ['message'],
71
- operation: ['send'],
72
- },
73
- },
74
- options: [
75
- {
76
- displayName: 'Send Email Notification',
77
- name: 'sendEmail',
78
- type: 'boolean',
79
- default: false,
80
- description: 'Whether to send an email notification',
81
- },
82
- {
83
- displayName: 'Send SMS Notification',
84
- name: 'sendSms',
85
- type: 'boolean',
86
- default: false,
87
- description: 'Whether to send an SMS notification',
88
- },
89
- {
90
- displayName: 'Send Push Notification',
91
- name: 'sendPush',
92
- type: 'boolean',
93
- default: false,
94
- description: 'Whether to send a push notification',
95
- },
96
- ],
97
- },
98
- ];
99
-
100
- export async function execute(
101
- this: IExecuteFunctions,
102
- index: number,
103
- ): Promise<INodeExecutionData[]> {
104
-
105
- const agentType = getAgentType.call(this, 0);
106
- const agentInstanceId = generateAgentInstanceId.call(this, 0, agentType);
107
-
108
- const message = this.getNodeParameter('message', index) as string;
109
- const additionalOptions = this.getNodeParameter('additionalOptions', index, {}) as any;
110
-
111
- if (!message) {
112
- throw new NodeOperationError(this.getNode(), 'Message is required', { itemIndex: index });
113
- }
114
-
115
- const body: any = {
116
- agent_instance_id: agentInstanceId,
117
- agent_type: agentType,
118
- content: message,
119
- requires_user_input: false,
120
- };
121
- if (additionalOptions.sendEmail !== undefined) {
122
- body.send_email = additionalOptions.sendEmail;
123
- }
124
- if (additionalOptions.sendSms !== undefined) {
125
- body.send_sms = additionalOptions.sendSms;
126
- }
127
- if (additionalOptions.sendPush !== undefined) {
128
- body.send_push = additionalOptions.sendPush;
129
- }
130
-
131
- try {
132
- const response = await vicoaApiRequest.call(this, 'POST', '/messages/agent', body);
133
-
134
- const result = {
135
- success: response.success,
136
- agentInstanceId: response.agent_instance_id,
137
- messageId: response.message_id,
138
- queuedUserMessages: response.queued_user_messages
139
- ? response.queued_user_messages.map(formatMessageResponse)
140
- : [],
141
- };
142
-
143
- return [{ json: result }];
144
- } catch (error) {
145
- throw new NodeOperationError(
146
- this.getNode(),
147
- `Failed to send message: ${error instanceof Error ? error.message : String(error)}`,
148
- { itemIndex: index },
149
- );
150
- }
151
- }