runline 0.11.6 → 0.12.0

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 (251) hide show
  1. package/dist/commands/actions.js +3 -1
  2. package/dist/core/engine.js +3 -0
  3. package/dist/index.d.ts +1 -1
  4. package/dist/plugin/api.d.ts +2 -1
  5. package/dist/plugin/types.d.ts +2 -0
  6. package/dist/plugins/actionNetwork/src/index.js +23 -0
  7. package/dist/plugins/activeCampaign/src/index.js +48 -0
  8. package/dist/plugins/adalo/src/index.js +5 -0
  9. package/dist/plugins/affinity/src/index.js +16 -0
  10. package/dist/plugins/agileCrm/src/index.js +15 -0
  11. package/dist/plugins/airtable/src/index.js +10 -0
  12. package/dist/plugins/airtop/src/index.js +24 -0
  13. package/dist/plugins/apiTemplateIo/src/index.js +4 -0
  14. package/dist/plugins/asana/src/index.js +22 -0
  15. package/dist/plugins/autopilot/src/index.js +11 -0
  16. package/dist/plugins/bambooHr/src/index.js +11 -0
  17. package/dist/plugins/bannerbear/src/index.js +4 -0
  18. package/dist/plugins/baserow/src/index.js +8 -0
  19. package/dist/plugins/beeminder/src/index.js +18 -0
  20. package/dist/plugins/bitly/src/index.js +3 -0
  21. package/dist/plugins/bitwarden/src/index.js +19 -0
  22. package/dist/plugins/box/src/index.js +11 -0
  23. package/dist/plugins/brandfetch/src/index.js +5 -0
  24. package/dist/plugins/brevo/src/index.js +15 -0
  25. package/dist/plugins/bubble/src/index.js +5 -0
  26. package/dist/plugins/chargebee/src/index.js +5 -0
  27. package/dist/plugins/circleci/src/index.js +3 -0
  28. package/dist/plugins/ciscoWebex/src/index.js +10 -0
  29. package/dist/plugins/clearbit/src/index.js +3 -0
  30. package/dist/plugins/clickup/src/index.js +61 -0
  31. package/dist/plugins/clockify/src/index.js +25 -0
  32. package/dist/plugins/cloudflare/src/index.js +4 -0
  33. package/dist/plugins/cockpit/src/index.js +5 -0
  34. package/dist/plugins/coda/src/index.js +18 -0
  35. package/dist/plugins/coingecko/src/index.js +10 -0
  36. package/dist/plugins/contentful/src/index.js +7 -0
  37. package/dist/plugins/convertkit/src/index.js +16 -0
  38. package/dist/plugins/copper/src/index.js +7 -0
  39. package/dist/plugins/cortex/src/index.js +4 -0
  40. package/dist/plugins/currents/src/index.js +22 -0
  41. package/dist/plugins/customerIo/src/index.js +9 -0
  42. package/dist/plugins/databricks/src/index.js +34 -0
  43. package/dist/plugins/deepl/src/index.js +2 -0
  44. package/dist/plugins/demio/src/index.js +4 -0
  45. package/dist/plugins/dhl/src/index.js +1 -0
  46. package/dist/plugins/discord/src/index.js +13 -0
  47. package/dist/plugins/discourse/src/index.js +16 -0
  48. package/dist/plugins/disqus/src/index.js +4 -0
  49. package/dist/plugins/docker/src/index.js +5 -0
  50. package/dist/plugins/drift/src/index.js +5 -0
  51. package/dist/plugins/dropbox/src/index.js +9 -0
  52. package/dist/plugins/dropcontact/src/index.js +2 -0
  53. package/dist/plugins/egoi/src/index.js +4 -0
  54. package/dist/plugins/elasticsearch/src/index.js +9 -0
  55. package/dist/plugins/emelia/src/index.js +9 -0
  56. package/dist/plugins/erpnext/src/index.js +5 -0
  57. package/dist/plugins/facebookGraph/src/index.js +1 -0
  58. package/dist/plugins/freshdesk/src/index.js +10 -0
  59. package/dist/plugins/freshservice/src/index.js +7 -0
  60. package/dist/plugins/freshworksCrm/src/index.js +7 -0
  61. package/dist/plugins/getresponse/src/index.js +5 -0
  62. package/dist/plugins/ghost/src/index.js +5 -0
  63. package/dist/plugins/github/src/index.js +37 -0
  64. package/dist/plugins/gitlab/src/index.js +17 -0
  65. package/dist/plugins/gmail/src/index.js +32 -0
  66. package/dist/plugins/gong/src/index.js +4 -0
  67. package/dist/plugins/googleAppsScript/src/index.js +10 -0
  68. package/dist/plugins/googleCalendar/src/index.js +22 -0
  69. package/dist/plugins/googleContacts/src/index.js +10 -0
  70. package/dist/plugins/googleDocs/src/documents.js +4 -0
  71. package/dist/plugins/googleDocs/src/formatting.js +2 -0
  72. package/dist/plugins/googleDocs/src/images.js +2 -0
  73. package/dist/plugins/googleDocs/src/structure.js +13 -0
  74. package/dist/plugins/googleDocs/src/tables.js +11 -0
  75. package/dist/plugins/googleDocs/src/tabs.js +3 -0
  76. package/dist/plugins/googleDocs/src/text.js +9 -0
  77. package/dist/plugins/googleDrive/src/index.js +47 -0
  78. package/dist/plugins/googleImage/src/index.js +1 -0
  79. package/dist/plugins/googleSheets/src/index.js +23 -0
  80. package/dist/plugins/googleSlides/src/index.js +7 -0
  81. package/dist/plugins/googleTasks/src/index.js +12 -0
  82. package/dist/plugins/gotify/src/index.js +3 -0
  83. package/dist/plugins/gotowebinar/src/index.js +20 -0
  84. package/dist/plugins/grafana/src/index.js +17 -0
  85. package/dist/plugins/graphql/src/index.js +2 -0
  86. package/dist/plugins/grist/src/index.js +4 -0
  87. package/dist/plugins/hackernews/src/index.js +6 -0
  88. package/dist/plugins/halopsa/src/index.js +5 -0
  89. package/dist/plugins/harvest/src/index.js +14 -0
  90. package/dist/plugins/helpscout/src/index.js +13 -0
  91. package/dist/plugins/highlevel/src/index.js +17 -0
  92. package/dist/plugins/homeAssistant/src/index.js +13 -0
  93. package/dist/plugins/hubspot/src/index.js +14 -0
  94. package/dist/plugins/humanticAi/src/index.js +3 -0
  95. package/dist/plugins/hunter/src/index.js +3 -0
  96. package/dist/plugins/intercom/src/index.js +10 -0
  97. package/dist/plugins/iterable/src/index.js +6 -0
  98. package/dist/plugins/jenkins/src/index.js +11 -0
  99. package/dist/plugins/jira/src/index.js +16 -0
  100. package/dist/plugins/keap/src/index.js +28 -0
  101. package/dist/plugins/kobotoolbox/src/index.js +17 -0
  102. package/dist/plugins/lemlist/src/index.js +15 -0
  103. package/dist/plugins/linear/src/attachments.js +6 -0
  104. package/dist/plugins/linear/src/comments.js +5 -0
  105. package/dist/plugins/linear/src/cycles.js +2 -0
  106. package/dist/plugins/linear/src/initiatives.js +5 -0
  107. package/dist/plugins/linear/src/issues.js +14 -0
  108. package/dist/plugins/linear/src/labels.js +5 -0
  109. package/dist/plugins/linear/src/organization.js +1 -0
  110. package/dist/plugins/linear/src/projects.js +11 -0
  111. package/dist/plugins/linear/src/shared.js +2 -0
  112. package/dist/plugins/linear/src/states.js +2 -0
  113. package/dist/plugins/linear/src/teams.js +3 -0
  114. package/dist/plugins/linear/src/users.js +2 -0
  115. package/dist/plugins/linear/src/views.js +4 -0
  116. package/dist/plugins/linear/src/webhooks.js +4 -0
  117. package/dist/plugins/lingvanex/src/index.js +1 -0
  118. package/dist/plugins/linkedin/src/index.js +1 -0
  119. package/dist/plugins/lonescale/src/index.js +4 -0
  120. package/dist/plugins/magento/src/index.js +15 -0
  121. package/dist/plugins/mailcheck/src/index.js +1 -0
  122. package/dist/plugins/mailchimp/src/index.js +14 -0
  123. package/dist/plugins/mailerlite/src/index.js +4 -0
  124. package/dist/plugins/mailgun/src/index.js +1 -0
  125. package/dist/plugins/mailjet/src/index.js +3 -0
  126. package/dist/plugins/mandrill/src/index.js +2 -0
  127. package/dist/plugins/marketstack/src/index.js +3 -0
  128. package/dist/plugins/matrix/src/index.js +10 -0
  129. package/dist/plugins/mattermost/src/index.js +19 -0
  130. package/dist/plugins/mautic/src/index.js +20 -0
  131. package/dist/plugins/medium/src/index.js +3 -0
  132. package/dist/plugins/messagebird/src/index.js +2 -0
  133. package/dist/plugins/metabase/src/index.js +10 -0
  134. package/dist/plugins/microsoftCalendar/src/index.js +2 -0
  135. package/dist/plugins/microsoftFiles/src/index.js +5 -0
  136. package/dist/plugins/microsoftMail/src/index.js +4 -0
  137. package/dist/plugins/misp/src/index.js +44 -0
  138. package/dist/plugins/mocean/src/index.js +2 -0
  139. package/dist/plugins/monday/src/index.js +18 -0
  140. package/dist/plugins/monicaCrm/src/index.js +5 -0
  141. package/dist/plugins/msg91/src/index.js +1 -0
  142. package/dist/plugins/nasa/src/index.js +7 -0
  143. package/dist/plugins/netlify/src/index.js +7 -0
  144. package/dist/plugins/netscalerAdc/src/index.js +3 -0
  145. package/dist/plugins/nextcloud/src/index.js +13 -0
  146. package/dist/plugins/nocodb/src/index.js +5 -0
  147. package/dist/plugins/node/src/index.js +38 -0
  148. package/dist/plugins/notion/src/index.js +14 -0
  149. package/dist/plugins/npm/src/index.js +5 -0
  150. package/dist/plugins/odoo/src/index.js +6 -0
  151. package/dist/plugins/okta/src/index.js +5 -0
  152. package/dist/plugins/oneSimpleApi/src/index.js +10 -0
  153. package/dist/plugins/onfleet/src/index.js +24 -0
  154. package/dist/plugins/openThesaurus/src/index.js +1 -0
  155. package/dist/plugins/openai/src/index.js +1 -0
  156. package/dist/plugins/openweathermap/src/index.js +2 -0
  157. package/dist/plugins/oura/src/index.js +2 -0
  158. package/dist/plugins/paddle/src/index.js +9 -0
  159. package/dist/plugins/pagerduty/src/index.js +9 -0
  160. package/dist/plugins/parallel/src/index.js +1 -0
  161. package/dist/plugins/paypal/src/index.js +4 -0
  162. package/dist/plugins/peekalink/src/index.js +2 -0
  163. package/dist/plugins/phantombuster/src/index.js +5 -0
  164. package/dist/plugins/philipsHue/src/index.js +4 -0
  165. package/dist/plugins/pipedrive/src/index.js +14 -0
  166. package/dist/plugins/plivo/src/index.js +3 -0
  167. package/dist/plugins/postbin/src/index.js +6 -0
  168. package/dist/plugins/posthog/src/index.js +5 -0
  169. package/dist/plugins/profitwell/src/index.js +2 -0
  170. package/dist/plugins/pushbullet/src/index.js +4 -0
  171. package/dist/plugins/pushcut/src/index.js +1 -0
  172. package/dist/plugins/pushover/src/index.js +1 -0
  173. package/dist/plugins/quickbase/src/index.js +8 -0
  174. package/dist/plugins/quickbooks/src/index.js +5 -0
  175. package/dist/plugins/quickchart/src/index.js +1 -0
  176. package/dist/plugins/raindrop/src/index.js +13 -0
  177. package/dist/plugins/recraft/src/index.js +1 -0
  178. package/dist/plugins/reddit/src/index.js +10 -0
  179. package/dist/plugins/replicate/src/index.js +1 -0
  180. package/dist/plugins/rocketchat/src/index.js +1 -0
  181. package/dist/plugins/rundeck/src/index.js +2 -0
  182. package/dist/plugins/salesforce/src/metadata.js +4 -0
  183. package/dist/plugins/salesforce/src/query.js +5 -0
  184. package/dist/plugins/salesforce/src/sobjects.js +12 -0
  185. package/dist/plugins/salesmate/src/index.js +5 -0
  186. package/dist/plugins/securityScorecard/src/index.js +14 -0
  187. package/dist/plugins/segment/src/index.js +4 -0
  188. package/dist/plugins/sendgrid/src/index.js +10 -0
  189. package/dist/plugins/sendy/src/index.js +6 -0
  190. package/dist/plugins/sentry/src/index.js +24 -0
  191. package/dist/plugins/servicenow/src/index.js +10 -0
  192. package/dist/plugins/shiftLabs/src/issues.js +4 -0
  193. package/dist/plugins/shiftLabs/src/pages.js +10 -0
  194. package/dist/plugins/shopify/src/index.js +10 -0
  195. package/dist/plugins/signl4/src/index.js +2 -0
  196. package/dist/plugins/slack/src/index.js +38 -0
  197. package/dist/plugins/sms77/src/index.js +2 -0
  198. package/dist/plugins/splunk/src/index.js +16 -0
  199. package/dist/plugins/spotify/src/index.js +30 -0
  200. package/dist/plugins/stackby/src/index.js +4 -0
  201. package/dist/plugins/steel/src/browser.js +7 -0
  202. package/dist/plugins/steel/src/captchas.js +3 -0
  203. package/dist/plugins/steel/src/credentials.js +4 -0
  204. package/dist/plugins/steel/src/extensions.js +5 -0
  205. package/dist/plugins/steel/src/files.js +10 -0
  206. package/dist/plugins/steel/src/profiles.js +4 -0
  207. package/dist/plugins/steel/src/sessions.js +11 -0
  208. package/dist/plugins/storyblok/src/index.js +7 -0
  209. package/dist/plugins/strapi/src/index.js +5 -0
  210. package/dist/plugins/strava/src/index.js +6 -0
  211. package/dist/plugins/stripe/src/index.js +20 -0
  212. package/dist/plugins/supabase/src/index.js +5 -0
  213. package/dist/plugins/syncromsp/src/index.js +20 -0
  214. package/dist/plugins/tapfiliate/src/index.js +11 -0
  215. package/dist/plugins/telegram/src/index.js +21 -0
  216. package/dist/plugins/thehive/src/index.js +23 -0
  217. package/dist/plugins/thehiveProject/src/index.js +31 -0
  218. package/dist/plugins/todoist/src/index.js +31 -0
  219. package/dist/plugins/together/src/index.js +1 -0
  220. package/dist/plugins/travisci/src/index.js +5 -0
  221. package/dist/plugins/trello/src/index.js +37 -0
  222. package/dist/plugins/twake/src/index.js +1 -0
  223. package/dist/plugins/twilio/src/index.js +2 -0
  224. package/dist/plugins/twist/src/index.js +22 -0
  225. package/dist/plugins/twitter/src/index.js +8 -0
  226. package/dist/plugins/unleashedSoftware/src/index.js +3 -0
  227. package/dist/plugins/uplead/src/index.js +2 -0
  228. package/dist/plugins/uproc/src/index.js +1 -0
  229. package/dist/plugins/uptimerobot/src/index.js +22 -0
  230. package/dist/plugins/urlscanio/src/index.js +3 -0
  231. package/dist/plugins/vercel/src/account.js +1 -0
  232. package/dist/plugins/vercel/src/deployments.js +5 -0
  233. package/dist/plugins/vercel/src/env.js +4 -0
  234. package/dist/plugins/vercel/src/projects.js +2 -0
  235. package/dist/plugins/vercel/src/shared.js +1 -0
  236. package/dist/plugins/vero/src/index.js +6 -0
  237. package/dist/plugins/vonage/src/index.js +1 -0
  238. package/dist/plugins/wekan/src/index.js +24 -0
  239. package/dist/plugins/woocommerce/src/index.js +5 -0
  240. package/dist/plugins/wordpress/src/index.js +10 -0
  241. package/dist/plugins/xai/src/index.js +1 -0
  242. package/dist/plugins/xero/src/index.js +8 -0
  243. package/dist/plugins/yourls/src/index.js +3 -0
  244. package/dist/plugins/zammad/src/index.js +12 -0
  245. package/dist/plugins/zendesk/src/index.js +18 -0
  246. package/dist/plugins/zoho/src/index.js +6 -0
  247. package/dist/plugins/zoom/src/index.js +5 -0
  248. package/dist/plugins/zulip/src/index.js +15 -0
  249. package/dist/sdk.d.ts +2 -1
  250. package/dist/sdk.js +1 -0
  251. package/package.json +1 -1
@@ -38,6 +38,7 @@ export default function telegram(rl) {
38
38
  });
39
39
  // ── Message ─────────────────────────────────────────
40
40
  rl.registerAction("message.send", {
41
+ access: "write",
41
42
  description: "Send a text message",
42
43
  inputSchema: {
43
44
  chatId: { type: "string", required: true },
@@ -66,6 +67,7 @@ export default function telegram(rl) {
66
67
  },
67
68
  });
68
69
  rl.registerAction("message.edit", {
70
+ access: "write",
69
71
  description: "Edit a text message",
70
72
  inputSchema: {
71
73
  chatId: { type: "string", required: true },
@@ -86,6 +88,7 @@ export default function telegram(rl) {
86
88
  },
87
89
  });
88
90
  rl.registerAction("message.delete", {
91
+ access: "write",
89
92
  description: "Delete a message",
90
93
  inputSchema: {
91
94
  chatId: { type: "string", required: true },
@@ -100,6 +103,7 @@ export default function telegram(rl) {
100
103
  },
101
104
  });
102
105
  rl.registerAction("message.pin", {
106
+ access: "write",
103
107
  description: "Pin a message in a chat",
104
108
  inputSchema: {
105
109
  chatId: { type: "string", required: true },
@@ -118,6 +122,7 @@ export default function telegram(rl) {
118
122
  },
119
123
  });
120
124
  rl.registerAction("message.unpin", {
125
+ access: "write",
121
126
  description: "Unpin a message in a chat",
122
127
  inputSchema: {
123
128
  chatId: { type: "string", required: true },
@@ -132,6 +137,7 @@ export default function telegram(rl) {
132
137
  },
133
138
  });
134
139
  rl.registerAction("message.sendLocation", {
140
+ access: "write",
135
141
  description: "Send a location",
136
142
  inputSchema: {
137
143
  chatId: { type: "string", required: true },
@@ -148,6 +154,7 @@ export default function telegram(rl) {
148
154
  },
149
155
  });
150
156
  rl.registerAction("message.sendChatAction", {
157
+ access: "write",
151
158
  description: "Send a chat action (typing, upload_photo, etc.)",
152
159
  inputSchema: {
153
160
  chatId: { type: "string", required: true },
@@ -166,6 +173,7 @@ export default function telegram(rl) {
166
173
  },
167
174
  });
168
175
  rl.registerAction("message.sendPhoto", {
176
+ access: "write",
169
177
  description: "Send a photo by URL",
170
178
  inputSchema: {
171
179
  chatId: { type: "string", required: true },
@@ -188,6 +196,7 @@ export default function telegram(rl) {
188
196
  },
189
197
  });
190
198
  rl.registerAction("message.sendDocument", {
199
+ access: "write",
191
200
  description: "Send a document by URL",
192
201
  inputSchema: {
193
202
  chatId: { type: "string", required: true },
@@ -210,6 +219,7 @@ export default function telegram(rl) {
210
219
  },
211
220
  });
212
221
  rl.registerAction("message.sendVideo", {
222
+ access: "write",
213
223
  description: "Send a video by URL",
214
224
  inputSchema: {
215
225
  chatId: { type: "string", required: true },
@@ -232,6 +242,7 @@ export default function telegram(rl) {
232
242
  },
233
243
  });
234
244
  rl.registerAction("message.sendSticker", {
245
+ access: "write",
235
246
  description: "Send a sticker",
236
247
  inputSchema: {
237
248
  chatId: { type: "string", required: true },
@@ -250,6 +261,7 @@ export default function telegram(rl) {
250
261
  },
251
262
  });
252
263
  rl.registerAction("message.sendAnimation", {
264
+ access: "write",
253
265
  description: "Send a GIF/animation",
254
266
  inputSchema: {
255
267
  chatId: { type: "string", required: true },
@@ -272,6 +284,7 @@ export default function telegram(rl) {
272
284
  },
273
285
  });
274
286
  rl.registerAction("message.sendAudio", {
287
+ access: "write",
275
288
  description: "Send audio by URL",
276
289
  inputSchema: {
277
290
  chatId: { type: "string", required: true },
@@ -295,6 +308,7 @@ export default function telegram(rl) {
295
308
  });
296
309
  // ── Chat ────────────────────────────────────────────
297
310
  rl.registerAction("chat.get", {
311
+ access: "read",
298
312
  description: "Get chat info",
299
313
  inputSchema: { chatId: { type: "string", required: true } },
300
314
  async execute(input, ctx) {
@@ -304,6 +318,7 @@ export default function telegram(rl) {
304
318
  },
305
319
  });
306
320
  rl.registerAction("chat.getAdministrators", {
321
+ access: "read",
307
322
  description: "Get chat administrators",
308
323
  inputSchema: { chatId: { type: "string", required: true } },
309
324
  async execute(input, ctx) {
@@ -313,6 +328,7 @@ export default function telegram(rl) {
313
328
  },
314
329
  });
315
330
  rl.registerAction("chat.getMember", {
331
+ access: "read",
316
332
  description: "Get a chat member",
317
333
  inputSchema: {
318
334
  chatId: { type: "string", required: true },
@@ -327,6 +343,7 @@ export default function telegram(rl) {
327
343
  },
328
344
  });
329
345
  rl.registerAction("chat.leave", {
346
+ access: "write",
330
347
  description: "Leave a chat",
331
348
  inputSchema: { chatId: { type: "string", required: true } },
332
349
  async execute(input, ctx) {
@@ -336,6 +353,7 @@ export default function telegram(rl) {
336
353
  },
337
354
  });
338
355
  rl.registerAction("chat.setDescription", {
356
+ access: "write",
339
357
  description: "Set chat description",
340
358
  inputSchema: {
341
359
  chatId: { type: "string", required: true },
@@ -350,6 +368,7 @@ export default function telegram(rl) {
350
368
  },
351
369
  });
352
370
  rl.registerAction("chat.setTitle", {
371
+ access: "write",
353
372
  description: "Set chat title",
354
373
  inputSchema: {
355
374
  chatId: { type: "string", required: true },
@@ -365,6 +384,7 @@ export default function telegram(rl) {
365
384
  });
366
385
  // ── Callback ────────────────────────────────────────
367
386
  rl.registerAction("callback.answer", {
387
+ access: "write",
368
388
  description: "Answer a callback query",
369
389
  inputSchema: {
370
390
  callbackQueryId: { type: "string", required: true },
@@ -385,6 +405,7 @@ export default function telegram(rl) {
385
405
  });
386
406
  // ── File ────────────────────────────────────────────
387
407
  rl.registerAction("file.get", {
408
+ access: "read",
388
409
  description: "Get file metadata (use result.file_path to download)",
389
410
  inputSchema: { fileId: { type: "string", required: true } },
390
411
  async execute(input, ctx) {
@@ -46,6 +46,7 @@ export default function thehive(rl) {
46
46
  });
47
47
  // ── Alert ───────────────────────────────────────────
48
48
  rl.registerAction("alert.create", {
49
+ access: "write",
49
50
  description: "Create an alert",
50
51
  inputSchema: {
51
52
  title: { type: "string", required: true },
@@ -66,6 +67,7 @@ export default function thehive(rl) {
66
67
  },
67
68
  });
68
69
  rl.registerAction("alert.get", {
70
+ access: "read",
69
71
  description: "Get an alert by ID",
70
72
  inputSchema: { id: { type: "string", required: true } },
71
73
  async execute(input, ctx) {
@@ -73,6 +75,7 @@ export default function thehive(rl) {
73
75
  },
74
76
  });
75
77
  rl.registerAction("alert.list", {
78
+ access: "read",
76
79
  description: "List alerts",
77
80
  inputSchema: { limit: { type: "number", required: false } },
78
81
  async execute(input, ctx) {
@@ -84,6 +87,7 @@ export default function thehive(rl) {
84
87
  },
85
88
  });
86
89
  rl.registerAction("alert.update", {
90
+ access: "write",
87
91
  description: "Update an alert",
88
92
  inputSchema: {
89
93
  id: { type: "string", required: true },
@@ -95,6 +99,7 @@ export default function thehive(rl) {
95
99
  },
96
100
  });
97
101
  rl.registerAction("alert.markAsRead", {
102
+ access: "write",
98
103
  description: "Mark an alert as read",
99
104
  inputSchema: { id: { type: "string", required: true } },
100
105
  async execute(input, ctx) {
@@ -102,6 +107,7 @@ export default function thehive(rl) {
102
107
  },
103
108
  });
104
109
  rl.registerAction("alert.markAsUnread", {
110
+ access: "write",
105
111
  description: "Mark an alert as unread",
106
112
  inputSchema: { id: { type: "string", required: true } },
107
113
  async execute(input, ctx) {
@@ -109,6 +115,7 @@ export default function thehive(rl) {
109
115
  },
110
116
  });
111
117
  rl.registerAction("alert.promote", {
118
+ access: "write",
112
119
  description: "Promote an alert to a case",
113
120
  inputSchema: { id: { type: "string", required: true } },
114
121
  async execute(input, ctx) {
@@ -116,6 +123,7 @@ export default function thehive(rl) {
116
123
  },
117
124
  });
118
125
  rl.registerAction("alert.merge", {
126
+ access: "write",
119
127
  description: "Merge an alert into an existing case",
120
128
  inputSchema: {
121
129
  alertId: { type: "string", required: true },
@@ -128,6 +136,7 @@ export default function thehive(rl) {
128
136
  });
129
137
  // ── Case ────────────────────────────────────────────
130
138
  rl.registerAction("case.create", {
139
+ access: "write",
131
140
  description: "Create a case",
132
141
  inputSchema: {
133
142
  title: { type: "string", required: true },
@@ -146,6 +155,7 @@ export default function thehive(rl) {
146
155
  },
147
156
  });
148
157
  rl.registerAction("case.get", {
158
+ access: "read",
149
159
  description: "Get a case",
150
160
  inputSchema: { id: { type: "string", required: true } },
151
161
  async execute(input, ctx) {
@@ -153,6 +163,7 @@ export default function thehive(rl) {
153
163
  },
154
164
  });
155
165
  rl.registerAction("case.list", {
166
+ access: "read",
156
167
  description: "List cases",
157
168
  inputSchema: { limit: { type: "number", required: false } },
158
169
  async execute(input, ctx) {
@@ -164,6 +175,7 @@ export default function thehive(rl) {
164
175
  },
165
176
  });
166
177
  rl.registerAction("case.update", {
178
+ access: "write",
167
179
  description: "Update a case",
168
180
  inputSchema: {
169
181
  id: { type: "string", required: true },
@@ -176,6 +188,7 @@ export default function thehive(rl) {
176
188
  });
177
189
  // ── Observable ──────────────────────────────────────
178
190
  rl.registerAction("observable.create", {
191
+ access: "write",
179
192
  description: "Create an observable on a case",
180
193
  inputSchema: {
181
194
  caseId: { type: "string", required: true },
@@ -192,6 +205,7 @@ export default function thehive(rl) {
192
205
  },
193
206
  });
194
207
  rl.registerAction("observable.get", {
208
+ access: "read",
195
209
  description: "Get an observable",
196
210
  inputSchema: { id: { type: "string", required: true } },
197
211
  async execute(input, ctx) {
@@ -206,6 +220,7 @@ export default function thehive(rl) {
206
220
  },
207
221
  });
208
222
  rl.registerAction("observable.list", {
223
+ access: "read",
209
224
  description: "List observables for a case",
210
225
  inputSchema: {
211
226
  caseId: { type: "string", required: true },
@@ -227,6 +242,7 @@ export default function thehive(rl) {
227
242
  },
228
243
  });
229
244
  rl.registerAction("observable.update", {
245
+ access: "write",
230
246
  description: "Update an observable",
231
247
  inputSchema: {
232
248
  id: { type: "string", required: true },
@@ -239,6 +255,7 @@ export default function thehive(rl) {
239
255
  });
240
256
  // ── Task ────────────────────────────────────────────
241
257
  rl.registerAction("task.create", {
258
+ access: "write",
242
259
  description: "Create a task on a case",
243
260
  inputSchema: {
244
261
  caseId: { type: "string", required: true },
@@ -256,6 +273,7 @@ export default function thehive(rl) {
256
273
  },
257
274
  });
258
275
  rl.registerAction("task.get", {
276
+ access: "read",
259
277
  description: "Get a task",
260
278
  inputSchema: { id: { type: "string", required: true } },
261
279
  async execute(input, ctx) {
@@ -270,6 +288,7 @@ export default function thehive(rl) {
270
288
  },
271
289
  });
272
290
  rl.registerAction("task.list", {
291
+ access: "read",
273
292
  description: "List tasks for a case",
274
293
  inputSchema: {
275
294
  caseId: { type: "string", required: true },
@@ -288,6 +307,7 @@ export default function thehive(rl) {
288
307
  },
289
308
  });
290
309
  rl.registerAction("task.update", {
310
+ access: "write",
291
311
  description: "Update a task",
292
312
  inputSchema: {
293
313
  id: { type: "string", required: true },
@@ -300,6 +320,7 @@ export default function thehive(rl) {
300
320
  });
301
321
  // ── Log ─────────────────────────────────────────────
302
322
  rl.registerAction("log.create", {
323
+ access: "write",
303
324
  description: "Create a log entry on a task",
304
325
  inputSchema: {
305
326
  taskId: { type: "string", required: true },
@@ -313,6 +334,7 @@ export default function thehive(rl) {
313
334
  },
314
335
  });
315
336
  rl.registerAction("log.get", {
337
+ access: "read",
316
338
  description: "Get a log entry",
317
339
  inputSchema: { id: { type: "string", required: true } },
318
340
  async execute(input, ctx) {
@@ -327,6 +349,7 @@ export default function thehive(rl) {
327
349
  },
328
350
  });
329
351
  rl.registerAction("log.list", {
352
+ access: "read",
330
353
  description: "List logs for a task",
331
354
  inputSchema: {
332
355
  taskId: { type: "string", required: true },
@@ -60,6 +60,7 @@ async function query(url, apiKey, scope, filters, sortFields, limit) {
60
60
  }
61
61
  function searchAction(rl, name, scope, description, extraInputs) {
62
62
  rl.registerAction(name, {
63
+ access: "read",
63
64
  description,
64
65
  inputSchema: {
65
66
  limit: { type: "number", required: false },
@@ -116,6 +117,7 @@ export default function theHiveProject(rl) {
116
117
  });
117
118
  // ── Alert ───────────────────────────────────────────
118
119
  rl.registerAction("alert.create", {
120
+ access: "write",
119
121
  description: "Create an alert",
120
122
  inputSchema: {
121
123
  type: { type: "string", required: true },
@@ -134,6 +136,7 @@ export default function theHiveProject(rl) {
134
136
  },
135
137
  });
136
138
  rl.registerAction("alert.get", {
139
+ access: "read",
137
140
  description: "Get an alert by ID",
138
141
  inputSchema: { id: { type: "string", required: true } },
139
142
  async execute(input, ctx) {
@@ -142,6 +145,7 @@ export default function theHiveProject(rl) {
142
145
  },
143
146
  });
144
147
  rl.registerAction("alert.update", {
148
+ access: "write",
145
149
  description: "Update an alert by ID",
146
150
  inputSchema: {
147
151
  id: { type: "string", required: true },
@@ -161,6 +165,7 @@ export default function theHiveProject(rl) {
161
165
  },
162
166
  });
163
167
  rl.registerAction("alert.delete", {
168
+ access: "write",
164
169
  description: "Delete an alert",
165
170
  inputSchema: { id: { type: "string", required: true } },
166
171
  async execute(input, ctx) {
@@ -171,6 +176,7 @@ export default function theHiveProject(rl) {
171
176
  });
172
177
  searchAction(rl, "alert.search", "listAlert", "Search alerts");
173
178
  rl.registerAction("alert.merge", {
179
+ access: "write",
174
180
  description: "Merge an alert into a case",
175
181
  inputSchema: {
176
182
  alertId: { type: "string", required: true },
@@ -183,6 +189,7 @@ export default function theHiveProject(rl) {
183
189
  },
184
190
  });
185
191
  rl.registerAction("alert.promote", {
192
+ access: "write",
186
193
  description: "Promote an alert to a case",
187
194
  inputSchema: {
188
195
  id: { type: "string", required: true },
@@ -198,6 +205,7 @@ export default function theHiveProject(rl) {
198
205
  },
199
206
  });
200
207
  rl.registerAction("alert.setStatus", {
208
+ access: "write",
201
209
  description: "Set alert status",
202
210
  inputSchema: {
203
211
  id: { type: "string", required: true },
@@ -214,6 +222,7 @@ export default function theHiveProject(rl) {
214
222
  });
215
223
  // ── Case ────────────────────────────────────────────
216
224
  rl.registerAction("case.create", {
225
+ access: "write",
217
226
  description: "Create a case",
218
227
  inputSchema: {
219
228
  title: { type: "string", required: true },
@@ -230,6 +239,7 @@ export default function theHiveProject(rl) {
230
239
  },
231
240
  });
232
241
  rl.registerAction("case.get", {
242
+ access: "read",
233
243
  description: "Get a case by ID",
234
244
  inputSchema: { id: { type: "string", required: true } },
235
245
  async execute(input, ctx) {
@@ -243,6 +253,7 @@ export default function theHiveProject(rl) {
243
253
  },
244
254
  });
245
255
  rl.registerAction("case.update", {
256
+ access: "write",
246
257
  description: "Update a case by ID",
247
258
  inputSchema: {
248
259
  id: { type: "string", required: true },
@@ -263,6 +274,7 @@ export default function theHiveProject(rl) {
263
274
  },
264
275
  });
265
276
  rl.registerAction("case.delete", {
277
+ access: "write",
266
278
  description: "Delete a case",
267
279
  inputSchema: { id: { type: "string", required: true } },
268
280
  async execute(input, ctx) {
@@ -273,6 +285,7 @@ export default function theHiveProject(rl) {
273
285
  });
274
286
  searchAction(rl, "case.search", "listCase", "Search cases");
275
287
  rl.registerAction("case.getTimeline", {
288
+ access: "read",
276
289
  description: "Get case timeline",
277
290
  inputSchema: { id: { type: "string", required: true } },
278
291
  async execute(input, ctx) {
@@ -282,6 +295,7 @@ export default function theHiveProject(rl) {
282
295
  });
283
296
  // ── Task ────────────────────────────────────────────
284
297
  rl.registerAction("task.create", {
298
+ access: "write",
285
299
  description: "Create a task in a case",
286
300
  inputSchema: {
287
301
  caseId: { type: "string", required: true },
@@ -298,6 +312,7 @@ export default function theHiveProject(rl) {
298
312
  },
299
313
  });
300
314
  rl.registerAction("task.get", {
315
+ access: "read",
301
316
  description: "Get a task by ID",
302
317
  inputSchema: { id: { type: "string", required: true } },
303
318
  async execute(input, ctx) {
@@ -310,6 +325,7 @@ export default function theHiveProject(rl) {
310
325
  },
311
326
  });
312
327
  rl.registerAction("task.update", {
328
+ access: "write",
313
329
  description: "Update a task by ID",
314
330
  inputSchema: {
315
331
  id: { type: "string", required: true },
@@ -327,6 +343,7 @@ export default function theHiveProject(rl) {
327
343
  },
328
344
  });
329
345
  rl.registerAction("task.delete", {
346
+ access: "write",
330
347
  description: "Delete a task",
331
348
  inputSchema: { id: { type: "string", required: true } },
332
349
  async execute(input, ctx) {
@@ -338,6 +355,7 @@ export default function theHiveProject(rl) {
338
355
  searchAction(rl, "task.search", "listTask", "Search tasks");
339
356
  // ── Observable ──────────────────────────────────────
340
357
  rl.registerAction("observable.create", {
358
+ access: "write",
341
359
  description: "Create an observable in a case or alert",
342
360
  inputSchema: {
343
361
  createIn: {
@@ -368,6 +386,7 @@ export default function theHiveProject(rl) {
368
386
  },
369
387
  });
370
388
  rl.registerAction("observable.get", {
389
+ access: "read",
371
390
  description: "Get an observable by ID",
372
391
  inputSchema: { id: { type: "string", required: true } },
373
392
  async execute(input, ctx) {
@@ -383,6 +402,7 @@ export default function theHiveProject(rl) {
383
402
  },
384
403
  });
385
404
  rl.registerAction("observable.update", {
405
+ access: "write",
386
406
  description: "Update an observable by ID",
387
407
  inputSchema: {
388
408
  id: { type: "string", required: true },
@@ -400,6 +420,7 @@ export default function theHiveProject(rl) {
400
420
  },
401
421
  });
402
422
  rl.registerAction("observable.delete", {
423
+ access: "write",
403
424
  description: "Delete an observable",
404
425
  inputSchema: { id: { type: "string", required: true } },
405
426
  async execute(input, ctx) {
@@ -411,6 +432,7 @@ export default function theHiveProject(rl) {
411
432
  searchAction(rl, "observable.search", "listObservable", "Search observables");
412
433
  // ── Comment ─────────────────────────────────────────
413
434
  rl.registerAction("comment.add", {
435
+ access: "write",
414
436
  description: "Add a comment to a case or alert",
415
437
  inputSchema: {
416
438
  addTo: { type: "string", required: true, description: "case or alert" },
@@ -426,6 +448,7 @@ export default function theHiveProject(rl) {
426
448
  },
427
449
  });
428
450
  rl.registerAction("comment.update", {
451
+ access: "write",
429
452
  description: "Update a comment",
430
453
  inputSchema: {
431
454
  id: { type: "string", required: true },
@@ -440,6 +463,7 @@ export default function theHiveProject(rl) {
440
463
  },
441
464
  });
442
465
  rl.registerAction("comment.delete", {
466
+ access: "write",
443
467
  description: "Delete a comment",
444
468
  inputSchema: { id: { type: "string", required: true } },
445
469
  async execute(input, ctx) {
@@ -451,6 +475,7 @@ export default function theHiveProject(rl) {
451
475
  searchAction(rl, "comment.search", "listComment", "Search comments");
452
476
  // ── Task Log ────────────────────────────────────────
453
477
  rl.registerAction("log.create", {
478
+ access: "write",
454
479
  description: "Create a task log entry",
455
480
  inputSchema: {
456
481
  taskId: { type: "string", required: true },
@@ -465,6 +490,7 @@ export default function theHiveProject(rl) {
465
490
  },
466
491
  });
467
492
  rl.registerAction("log.get", {
493
+ access: "read",
468
494
  description: "Get a log entry by ID",
469
495
  inputSchema: { id: { type: "string", required: true } },
470
496
  async execute(input, ctx) {
@@ -477,6 +503,7 @@ export default function theHiveProject(rl) {
477
503
  },
478
504
  });
479
505
  rl.registerAction("log.delete", {
506
+ access: "write",
480
507
  description: "Delete a log entry",
481
508
  inputSchema: { id: { type: "string", required: true } },
482
509
  async execute(input, ctx) {
@@ -488,6 +515,7 @@ export default function theHiveProject(rl) {
488
515
  searchAction(rl, "log.search", "listLog", "Search task logs");
489
516
  // ── Page ────────────────────────────────────────────
490
517
  rl.registerAction("page.create", {
518
+ access: "write",
491
519
  description: "Create a page (case page or knowledge base)",
492
520
  inputSchema: {
493
521
  caseId: {
@@ -507,6 +535,7 @@ export default function theHiveProject(rl) {
507
535
  },
508
536
  });
509
537
  rl.registerAction("page.update", {
538
+ access: "write",
510
539
  description: "Update a page",
511
540
  inputSchema: {
512
541
  pageId: { type: "string", required: true },
@@ -526,6 +555,7 @@ export default function theHiveProject(rl) {
526
555
  },
527
556
  });
528
557
  rl.registerAction("page.delete", {
558
+ access: "write",
529
559
  description: "Delete a page",
530
560
  inputSchema: {
531
561
  pageId: { type: "string", required: true },
@@ -544,6 +574,7 @@ export default function theHiveProject(rl) {
544
574
  searchAction(rl, "page.search", "listOrganisationPage", "Search pages");
545
575
  // ── Query ───────────────────────────────────────────
546
576
  rl.registerAction("query.execute", {
577
+ access: "read",
547
578
  description: "Execute a raw TheHive Query API request",
548
579
  inputSchema: {
549
580
  query: {