runline 0.11.6 → 0.13.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 (256) 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/_shared/googleSchemas.js +23 -0
  7. package/dist/plugins/actionNetwork/src/index.js +23 -0
  8. package/dist/plugins/activeCampaign/src/index.js +48 -0
  9. package/dist/plugins/adalo/src/index.js +5 -0
  10. package/dist/plugins/affinity/src/index.js +16 -0
  11. package/dist/plugins/agileCrm/src/index.js +15 -0
  12. package/dist/plugins/airtable/src/index.js +10 -0
  13. package/dist/plugins/airtop/src/index.js +24 -0
  14. package/dist/plugins/apiTemplateIo/src/index.js +4 -0
  15. package/dist/plugins/asana/src/index.js +22 -0
  16. package/dist/plugins/autopilot/src/index.js +11 -0
  17. package/dist/plugins/bambooHr/src/index.js +11 -0
  18. package/dist/plugins/bannerbear/src/index.js +4 -0
  19. package/dist/plugins/baserow/src/index.js +8 -0
  20. package/dist/plugins/beeminder/src/index.js +18 -0
  21. package/dist/plugins/bitly/src/index.js +3 -0
  22. package/dist/plugins/bitwarden/src/index.js +19 -0
  23. package/dist/plugins/box/src/index.js +11 -0
  24. package/dist/plugins/brandfetch/src/index.js +5 -0
  25. package/dist/plugins/brevo/src/index.js +15 -0
  26. package/dist/plugins/bubble/src/index.js +5 -0
  27. package/dist/plugins/chargebee/src/index.js +5 -0
  28. package/dist/plugins/circleci/src/index.js +3 -0
  29. package/dist/plugins/ciscoWebex/src/index.js +10 -0
  30. package/dist/plugins/clearbit/src/index.js +3 -0
  31. package/dist/plugins/clickup/src/index.js +61 -0
  32. package/dist/plugins/clockify/src/index.js +25 -0
  33. package/dist/plugins/cloudflare/src/index.js +4 -0
  34. package/dist/plugins/cockpit/src/index.js +5 -0
  35. package/dist/plugins/coda/src/index.js +18 -0
  36. package/dist/plugins/coingecko/src/index.js +10 -0
  37. package/dist/plugins/contentful/src/index.js +7 -0
  38. package/dist/plugins/convertkit/src/index.js +16 -0
  39. package/dist/plugins/copper/src/index.js +7 -0
  40. package/dist/plugins/cortex/src/index.js +4 -0
  41. package/dist/plugins/currents/src/index.js +22 -0
  42. package/dist/plugins/customerIo/src/index.js +9 -0
  43. package/dist/plugins/databricks/src/index.js +34 -0
  44. package/dist/plugins/deepl/src/index.js +2 -0
  45. package/dist/plugins/demio/src/index.js +4 -0
  46. package/dist/plugins/dhl/src/index.js +1 -0
  47. package/dist/plugins/discord/src/index.js +13 -0
  48. package/dist/plugins/discourse/src/index.js +16 -0
  49. package/dist/plugins/disqus/src/index.js +4 -0
  50. package/dist/plugins/docker/src/index.js +5 -0
  51. package/dist/plugins/drift/src/index.js +5 -0
  52. package/dist/plugins/dropbox/src/index.js +9 -0
  53. package/dist/plugins/dropcontact/src/index.js +2 -0
  54. package/dist/plugins/egoi/src/index.js +4 -0
  55. package/dist/plugins/elasticsearch/src/index.js +9 -0
  56. package/dist/plugins/emelia/src/index.js +9 -0
  57. package/dist/plugins/erpnext/src/index.js +5 -0
  58. package/dist/plugins/facebookGraph/src/index.js +1 -0
  59. package/dist/plugins/freshdesk/src/index.js +10 -0
  60. package/dist/plugins/freshservice/src/index.js +7 -0
  61. package/dist/plugins/freshworksCrm/src/index.js +7 -0
  62. package/dist/plugins/getresponse/src/index.js +5 -0
  63. package/dist/plugins/ghost/src/index.js +5 -0
  64. package/dist/plugins/github/src/index.js +37 -0
  65. package/dist/plugins/gitlab/src/index.js +17 -0
  66. package/dist/plugins/gmail/src/index.js +200 -184
  67. package/dist/plugins/gong/src/index.js +4 -0
  68. package/dist/plugins/googleAppsScript/src/index.js +98 -43
  69. package/dist/plugins/googleCalendar/src/index.js +329 -250
  70. package/dist/plugins/googleContacts/src/index.js +144 -145
  71. package/dist/plugins/googleDocs/src/documents.js +31 -38
  72. package/dist/plugins/googleDocs/src/formatting.js +51 -47
  73. package/dist/plugins/googleDocs/src/images.js +23 -26
  74. package/dist/plugins/googleDocs/src/shared.js +55 -0
  75. package/dist/plugins/googleDocs/src/structure.js +111 -123
  76. package/dist/plugins/googleDocs/src/tables.js +103 -154
  77. package/dist/plugins/googleDocs/src/tabs.js +27 -23
  78. package/dist/plugins/googleDocs/src/text.js +106 -136
  79. package/dist/plugins/googleDrive/src/index.js +461 -408
  80. package/dist/plugins/googleImage/src/index.js +14 -16
  81. package/dist/plugins/googleSheets/src/index.js +527 -339
  82. package/dist/plugins/googleSlides/src/index.js +92 -72
  83. package/dist/plugins/googleTasks/src/index.js +94 -92
  84. package/dist/plugins/gotify/src/index.js +3 -0
  85. package/dist/plugins/gotowebinar/src/index.js +20 -0
  86. package/dist/plugins/grafana/src/index.js +17 -0
  87. package/dist/plugins/graphql/src/index.js +2 -0
  88. package/dist/plugins/grist/src/index.js +4 -0
  89. package/dist/plugins/hackernews/src/index.js +6 -0
  90. package/dist/plugins/halopsa/src/index.js +5 -0
  91. package/dist/plugins/harvest/src/index.js +14 -0
  92. package/dist/plugins/helpscout/src/index.js +13 -0
  93. package/dist/plugins/highlevel/src/index.js +17 -0
  94. package/dist/plugins/homeAssistant/src/index.js +13 -0
  95. package/dist/plugins/hubspot/src/index.js +14 -0
  96. package/dist/plugins/humanticAi/src/index.js +3 -0
  97. package/dist/plugins/hunter/src/index.js +3 -0
  98. package/dist/plugins/intercom/src/index.js +10 -0
  99. package/dist/plugins/iterable/src/index.js +6 -0
  100. package/dist/plugins/jenkins/src/index.js +11 -0
  101. package/dist/plugins/jira/src/index.js +16 -0
  102. package/dist/plugins/keap/src/index.js +28 -0
  103. package/dist/plugins/kobotoolbox/src/index.js +17 -0
  104. package/dist/plugins/lemlist/src/index.js +15 -0
  105. package/dist/plugins/linear/src/attachments.js +6 -0
  106. package/dist/plugins/linear/src/comments.js +5 -0
  107. package/dist/plugins/linear/src/cycles.js +2 -0
  108. package/dist/plugins/linear/src/initiatives.js +5 -0
  109. package/dist/plugins/linear/src/issues.js +14 -0
  110. package/dist/plugins/linear/src/labels.js +5 -0
  111. package/dist/plugins/linear/src/organization.js +1 -0
  112. package/dist/plugins/linear/src/projects.js +11 -0
  113. package/dist/plugins/linear/src/shared.js +2 -0
  114. package/dist/plugins/linear/src/states.js +2 -0
  115. package/dist/plugins/linear/src/teams.js +3 -0
  116. package/dist/plugins/linear/src/users.js +2 -0
  117. package/dist/plugins/linear/src/views.js +4 -0
  118. package/dist/plugins/linear/src/webhooks.js +4 -0
  119. package/dist/plugins/lingvanex/src/index.js +1 -0
  120. package/dist/plugins/linkedin/src/index.js +1 -0
  121. package/dist/plugins/lonescale/src/index.js +4 -0
  122. package/dist/plugins/magento/src/index.js +15 -0
  123. package/dist/plugins/mailcheck/src/index.js +1 -0
  124. package/dist/plugins/mailchimp/src/index.js +14 -0
  125. package/dist/plugins/mailerlite/src/index.js +4 -0
  126. package/dist/plugins/mailgun/src/index.js +1 -0
  127. package/dist/plugins/mailjet/src/index.js +3 -0
  128. package/dist/plugins/mandrill/src/index.js +2 -0
  129. package/dist/plugins/marketstack/src/index.js +3 -0
  130. package/dist/plugins/matrix/src/index.js +10 -0
  131. package/dist/plugins/mattermost/src/index.js +19 -0
  132. package/dist/plugins/mautic/src/index.js +20 -0
  133. package/dist/plugins/medium/src/index.js +3 -0
  134. package/dist/plugins/messagebird/src/index.js +2 -0
  135. package/dist/plugins/metabase/src/index.js +10 -0
  136. package/dist/plugins/microsoftCalendar/src/index.js +2 -0
  137. package/dist/plugins/microsoftFiles/src/index.js +5 -0
  138. package/dist/plugins/microsoftMail/src/index.js +4 -0
  139. package/dist/plugins/misp/src/index.js +44 -0
  140. package/dist/plugins/mocean/src/index.js +2 -0
  141. package/dist/plugins/monday/src/index.js +18 -0
  142. package/dist/plugins/monicaCrm/src/index.js +5 -0
  143. package/dist/plugins/msg91/src/index.js +1 -0
  144. package/dist/plugins/nasa/src/index.js +7 -0
  145. package/dist/plugins/netlify/src/index.js +7 -0
  146. package/dist/plugins/netscalerAdc/src/index.js +3 -0
  147. package/dist/plugins/nextcloud/src/index.js +13 -0
  148. package/dist/plugins/nocodb/src/index.js +5 -0
  149. package/dist/plugins/node/src/index.js +38 -0
  150. package/dist/plugins/notion/src/index.js +14 -0
  151. package/dist/plugins/npm/src/index.js +5 -0
  152. package/dist/plugins/odoo/src/index.js +6 -0
  153. package/dist/plugins/okta/src/index.js +5 -0
  154. package/dist/plugins/oneSimpleApi/src/index.js +10 -0
  155. package/dist/plugins/onfleet/src/index.js +24 -0
  156. package/dist/plugins/openThesaurus/src/index.js +1 -0
  157. package/dist/plugins/openai/src/index.js +1 -0
  158. package/dist/plugins/openweathermap/src/index.js +2 -0
  159. package/dist/plugins/oura/src/index.js +2 -0
  160. package/dist/plugins/paddle/src/index.js +9 -0
  161. package/dist/plugins/pagerduty/src/index.js +9 -0
  162. package/dist/plugins/parallel/src/index.js +1 -0
  163. package/dist/plugins/paypal/src/index.js +4 -0
  164. package/dist/plugins/peekalink/src/index.js +2 -0
  165. package/dist/plugins/phantombuster/src/index.js +5 -0
  166. package/dist/plugins/philipsHue/src/index.js +4 -0
  167. package/dist/plugins/pipedrive/src/index.js +14 -0
  168. package/dist/plugins/plivo/src/index.js +3 -0
  169. package/dist/plugins/postbin/src/index.js +6 -0
  170. package/dist/plugins/posthog/src/index.js +5 -0
  171. package/dist/plugins/profitwell/src/index.js +2 -0
  172. package/dist/plugins/pushbullet/src/index.js +4 -0
  173. package/dist/plugins/pushcut/src/index.js +1 -0
  174. package/dist/plugins/pushover/src/index.js +1 -0
  175. package/dist/plugins/quickbase/src/index.js +8 -0
  176. package/dist/plugins/quickbooks/src/index.js +5 -0
  177. package/dist/plugins/quickchart/src/index.js +1 -0
  178. package/dist/plugins/raindrop/src/index.js +13 -0
  179. package/dist/plugins/recraft/src/index.js +1 -0
  180. package/dist/plugins/reddit/src/index.js +10 -0
  181. package/dist/plugins/replicate/src/index.js +1 -0
  182. package/dist/plugins/rocketchat/src/index.js +1 -0
  183. package/dist/plugins/rundeck/src/index.js +2 -0
  184. package/dist/plugins/salesforce/src/metadata.js +4 -0
  185. package/dist/plugins/salesforce/src/query.js +5 -0
  186. package/dist/plugins/salesforce/src/sobjects.js +12 -0
  187. package/dist/plugins/salesmate/src/index.js +5 -0
  188. package/dist/plugins/securityScorecard/src/index.js +14 -0
  189. package/dist/plugins/segment/src/index.js +4 -0
  190. package/dist/plugins/sendgrid/src/index.js +10 -0
  191. package/dist/plugins/sendy/src/index.js +6 -0
  192. package/dist/plugins/sentry/src/index.js +24 -0
  193. package/dist/plugins/servicenow/src/index.js +10 -0
  194. package/dist/plugins/shiftLabs/src/index.js +6 -0
  195. package/dist/plugins/shiftLabs/src/issues.js +4 -0
  196. package/dist/plugins/shiftLabs/src/pages.js +10 -0
  197. package/dist/plugins/shiftLabs/src/shared.js +2 -0
  198. package/dist/plugins/shiftLabs/src/transcription.js +203 -0
  199. package/dist/plugins/shopify/src/index.js +10 -0
  200. package/dist/plugins/signl4/src/index.js +2 -0
  201. package/dist/plugins/slack/src/index.js +38 -0
  202. package/dist/plugins/sms77/src/index.js +2 -0
  203. package/dist/plugins/splunk/src/index.js +16 -0
  204. package/dist/plugins/spotify/src/index.js +30 -0
  205. package/dist/plugins/stackby/src/index.js +4 -0
  206. package/dist/plugins/steel/src/browser.js +7 -0
  207. package/dist/plugins/steel/src/captchas.js +3 -0
  208. package/dist/plugins/steel/src/credentials.js +4 -0
  209. package/dist/plugins/steel/src/extensions.js +5 -0
  210. package/dist/plugins/steel/src/files.js +10 -0
  211. package/dist/plugins/steel/src/profiles.js +4 -0
  212. package/dist/plugins/steel/src/sessions.js +11 -0
  213. package/dist/plugins/storyblok/src/index.js +7 -0
  214. package/dist/plugins/strapi/src/index.js +5 -0
  215. package/dist/plugins/strava/src/index.js +6 -0
  216. package/dist/plugins/stripe/src/index.js +20 -0
  217. package/dist/plugins/supabase/src/index.js +5 -0
  218. package/dist/plugins/syncromsp/src/index.js +20 -0
  219. package/dist/plugins/tapfiliate/src/index.js +11 -0
  220. package/dist/plugins/telegram/src/index.js +21 -0
  221. package/dist/plugins/thehive/src/index.js +23 -0
  222. package/dist/plugins/thehiveProject/src/index.js +31 -0
  223. package/dist/plugins/todoist/src/index.js +31 -0
  224. package/dist/plugins/together/src/index.js +1 -0
  225. package/dist/plugins/travisci/src/index.js +5 -0
  226. package/dist/plugins/trello/src/index.js +37 -0
  227. package/dist/plugins/twake/src/index.js +1 -0
  228. package/dist/plugins/twilio/src/index.js +2 -0
  229. package/dist/plugins/twist/src/index.js +22 -0
  230. package/dist/plugins/twitter/src/index.js +8 -0
  231. package/dist/plugins/unleashedSoftware/src/index.js +3 -0
  232. package/dist/plugins/uplead/src/index.js +2 -0
  233. package/dist/plugins/uproc/src/index.js +1 -0
  234. package/dist/plugins/uptimerobot/src/index.js +22 -0
  235. package/dist/plugins/urlscanio/src/index.js +3 -0
  236. package/dist/plugins/vercel/src/account.js +1 -0
  237. package/dist/plugins/vercel/src/deployments.js +5 -0
  238. package/dist/plugins/vercel/src/env.js +4 -0
  239. package/dist/plugins/vercel/src/projects.js +2 -0
  240. package/dist/plugins/vercel/src/shared.js +1 -0
  241. package/dist/plugins/vero/src/index.js +6 -0
  242. package/dist/plugins/vonage/src/index.js +1 -0
  243. package/dist/plugins/wekan/src/index.js +24 -0
  244. package/dist/plugins/woocommerce/src/index.js +5 -0
  245. package/dist/plugins/wordpress/src/index.js +10 -0
  246. package/dist/plugins/xai/src/index.js +1 -0
  247. package/dist/plugins/xero/src/index.js +8 -0
  248. package/dist/plugins/yourls/src/index.js +3 -0
  249. package/dist/plugins/zammad/src/index.js +12 -0
  250. package/dist/plugins/zendesk/src/index.js +18 -0
  251. package/dist/plugins/zoho/src/index.js +6 -0
  252. package/dist/plugins/zoom/src/index.js +5 -0
  253. package/dist/plugins/zulip/src/index.js +15 -0
  254. package/dist/sdk.d.ts +2 -1
  255. package/dist/sdk.js +1 -0
  256. package/package.json +1 -1
@@ -39,6 +39,7 @@ export default function metabase(rl) {
39
39
  });
40
40
  // ── Question (Card) ─────────────────────────────────
41
41
  rl.registerAction("question.get", {
42
+ access: "read",
42
43
  description: "Get a specific question/card",
43
44
  inputSchema: { questionId: { type: "number", required: true } },
44
45
  async execute(input, ctx) {
@@ -47,6 +48,7 @@ export default function metabase(rl) {
47
48
  },
48
49
  });
49
50
  rl.registerAction("question.list", {
51
+ access: "read",
50
52
  description: "List all questions/cards",
51
53
  async execute(_input, ctx) {
52
54
  const { baseUrl, token } = conn(ctx);
@@ -54,6 +56,7 @@ export default function metabase(rl) {
54
56
  },
55
57
  });
56
58
  rl.registerAction("question.getResults", {
59
+ access: "read",
57
60
  description: "Get the results of a question as JSON",
58
61
  inputSchema: {
59
62
  questionId: { type: "number", required: true },
@@ -71,6 +74,7 @@ export default function metabase(rl) {
71
74
  });
72
75
  // ── Alert ───────────────────────────────────────────
73
76
  rl.registerAction("alert.get", {
77
+ access: "read",
74
78
  description: "Get a specific alert",
75
79
  inputSchema: { alertId: { type: "number", required: true } },
76
80
  async execute(input, ctx) {
@@ -79,6 +83,7 @@ export default function metabase(rl) {
79
83
  },
80
84
  });
81
85
  rl.registerAction("alert.list", {
86
+ access: "read",
82
87
  description: "List all alerts",
83
88
  async execute(_input, ctx) {
84
89
  const { baseUrl, token } = conn(ctx);
@@ -87,6 +92,7 @@ export default function metabase(rl) {
87
92
  });
88
93
  // ── Database ────────────────────────────────────────
89
94
  rl.registerAction("database.list", {
95
+ access: "read",
90
96
  description: "List all databases",
91
97
  async execute(_input, ctx) {
92
98
  const { baseUrl, token } = conn(ctx);
@@ -95,6 +101,7 @@ export default function metabase(rl) {
95
101
  },
96
102
  });
97
103
  rl.registerAction("database.getFields", {
104
+ access: "read",
98
105
  description: "Get fields from a database",
99
106
  inputSchema: { databaseId: { type: "number", required: true } },
100
107
  async execute(input, ctx) {
@@ -103,6 +110,7 @@ export default function metabase(rl) {
103
110
  },
104
111
  });
105
112
  rl.registerAction("database.add", {
113
+ access: "write",
106
114
  description: "Add a new database/datasource",
107
115
  inputSchema: {
108
116
  name: { type: "string", required: true, description: "Display name" },
@@ -158,6 +166,7 @@ export default function metabase(rl) {
158
166
  });
159
167
  // ── Metric ──────────────────────────────────────────
160
168
  rl.registerAction("metric.get", {
169
+ access: "read",
161
170
  description: "Get a specific metric",
162
171
  inputSchema: { metricId: { type: "number", required: true } },
163
172
  async execute(input, ctx) {
@@ -166,6 +175,7 @@ export default function metabase(rl) {
166
175
  },
167
176
  });
168
177
  rl.registerAction("metric.list", {
178
+ access: "read",
169
179
  description: "List all metrics",
170
180
  async execute(_input, ctx) {
171
181
  const { baseUrl, token } = conn(ctx);
@@ -18,6 +18,7 @@ export default function microsoftCalendar(rl) {
18
18
  setupHelp: microsoftSetupHelp("Calendars.Read"),
19
19
  });
20
20
  rl.registerAction("calendar.list", {
21
+ access: "read",
21
22
  description: "List calendar events in a date range. Returns [{id,subject,start,end,location,organizer,attendees}].",
22
23
  inputSchema: {
23
24
  start: { type: "string", required: true, description: "ISO start datetime, e.g. 2026-05-01T00:00:00Z" },
@@ -37,6 +38,7 @@ export default function microsoftCalendar(rl) {
37
38
  },
38
39
  });
39
40
  rl.registerAction("event.get", {
41
+ access: "read",
40
42
  description: "Get one calendar event by id (full details incl. body).",
41
43
  inputSchema: { id: { type: "string", required: true } },
42
44
  async execute(input, ctx) {
@@ -45,6 +45,7 @@ export default function microsoftFiles(rl) {
45
45
  setupHelp: microsoftSetupHelp("Files.ReadWrite.All, Sites.ReadWrite.All"),
46
46
  });
47
47
  rl.registerAction("files.search", {
48
+ access: "read",
48
49
  description: "Search the drive for files/folders by text. Returns [{id,name,size,lastModifiedDateTime,webUrl,folder?}].",
49
50
  inputSchema: {
50
51
  query: { type: "string", required: true },
@@ -61,6 +62,7 @@ export default function microsoftFiles(rl) {
61
62
  },
62
63
  });
63
64
  rl.registerAction("files.list", {
65
+ access: "read",
64
66
  description: "List children of a folder (default the drive root, or pass folderId).",
65
67
  inputSchema: {
66
68
  folderId: { type: "string", required: false, description: "Folder item id; omit for root" },
@@ -77,6 +79,7 @@ export default function microsoftFiles(rl) {
77
79
  },
78
80
  });
79
81
  rl.registerAction("files.get", {
82
+ access: "read",
80
83
  description: "Download a file by id. Returns {id,name,size,contentType,base64}. base64 is the file bytes.",
81
84
  inputSchema: { id: { type: "string", required: true } },
82
85
  async execute(input, ctx) {
@@ -95,6 +98,7 @@ export default function microsoftFiles(rl) {
95
98
  },
96
99
  });
97
100
  rl.registerAction("files.upload", {
101
+ access: "write",
98
102
  description: "Upload a file (base64) to a path in the drive, e.g. a dedicated output folder. Returns the created item. For files up to ~4MB.",
99
103
  inputSchema: {
100
104
  path: { type: "string", required: true, description: "Drive-relative path incl. filename, e.g. 'Agent Output/report.docx'" },
@@ -110,6 +114,7 @@ export default function microsoftFiles(rl) {
110
114
  },
111
115
  });
112
116
  rl.registerAction("folder.create", {
117
+ access: "write",
113
118
  description: "Create a folder (e.g. a dedicated agent output folder) under the drive root or a parent.",
114
119
  inputSchema: {
115
120
  name: { type: "string", required: true },
@@ -33,6 +33,7 @@ export default function microsoftMail(rl) {
33
33
  setupHelp: microsoftSetupHelp("Mail.Send, Mail.ReadWrite, Mail.Read"),
34
34
  });
35
35
  rl.registerAction("mail.send", {
36
+ access: "write",
36
37
  description: "Send an email as the connected mailbox. Returns {success}. Get user approval before sending external mail.",
37
38
  inputSchema: {
38
39
  to: { type: "array", required: true, description: "Recipient address(es)" },
@@ -50,6 +51,7 @@ export default function microsoftMail(rl) {
50
51
  },
51
52
  });
52
53
  rl.registerAction("mail.draft", {
54
+ access: "write",
53
55
  description: "Create a draft email (not sent). Returns {id, webLink}.",
54
56
  inputSchema: {
55
57
  to: { type: "array", required: false },
@@ -64,6 +66,7 @@ export default function microsoftMail(rl) {
64
66
  },
65
67
  });
66
68
  rl.registerAction("mail.list", {
69
+ access: "read",
67
70
  description: "List recent messages. Optional KQL search. Returns [{id,subject,from,receivedDateTime,bodyPreview,hasAttachments}].",
68
71
  inputSchema: {
69
72
  search: { type: "string", required: false, description: "KQL search across the mailbox" },
@@ -82,6 +85,7 @@ export default function microsoftMail(rl) {
82
85
  },
83
86
  });
84
87
  rl.registerAction("mail.get", {
88
+ access: "read",
85
89
  description: "Get one message with full body by id.",
86
90
  inputSchema: { id: { type: "string", required: true } },
87
91
  async execute(input, ctx) {
@@ -44,6 +44,7 @@ export default function misp(rl) {
44
44
  };
45
45
  // ── Attribute ───────────────────────────────────────
46
46
  rl.registerAction("attribute.create", {
47
+ access: "write",
47
48
  description: "Add an attribute to an event",
48
49
  inputSchema: {
49
50
  eventId: { type: "string", required: true },
@@ -69,6 +70,7 @@ export default function misp(rl) {
69
70
  },
70
71
  });
71
72
  rl.registerAction("attribute.get", {
73
+ access: "read",
72
74
  description: "Get an attribute by ID",
73
75
  inputSchema: { attributeId: { type: "string", required: true } },
74
76
  async execute(input, ctx) {
@@ -77,6 +79,7 @@ export default function misp(rl) {
77
79
  },
78
80
  });
79
81
  rl.registerAction("attribute.list", {
82
+ access: "read",
80
83
  description: "List all attributes",
81
84
  inputSchema: { limit: { type: "number", required: false } },
82
85
  async execute(input, ctx) {
@@ -87,6 +90,7 @@ export default function misp(rl) {
87
90
  },
88
91
  });
89
92
  rl.registerAction("attribute.search", {
93
+ access: "read",
90
94
  description: "Search attributes via restSearch",
91
95
  inputSchema: {
92
96
  value: { type: "string", required: false },
@@ -106,6 +110,7 @@ export default function misp(rl) {
106
110
  },
107
111
  });
108
112
  rl.registerAction("attribute.update", {
113
+ access: "write",
109
114
  description: "Update an attribute",
110
115
  inputSchema: {
111
116
  attributeId: { type: "string", required: true },
@@ -118,6 +123,7 @@ export default function misp(rl) {
118
123
  },
119
124
  });
120
125
  rl.registerAction("attribute.delete", {
126
+ access: "write",
121
127
  description: "Delete an attribute",
122
128
  inputSchema: { attributeId: { type: "string", required: true } },
123
129
  async execute(input, ctx) {
@@ -126,6 +132,7 @@ export default function misp(rl) {
126
132
  });
127
133
  // ── Event ───────────────────────────────────────────
128
134
  rl.registerAction("event.create", {
135
+ access: "write",
129
136
  description: "Create an event",
130
137
  inputSchema: {
131
138
  orgId: { type: "string", required: true, description: "Organisation ID" },
@@ -150,6 +157,7 @@ export default function misp(rl) {
150
157
  },
151
158
  });
152
159
  rl.registerAction("event.get", {
160
+ access: "read",
153
161
  description: "Get an event by ID",
154
162
  inputSchema: { eventId: { type: "string", required: true } },
155
163
  async execute(input, ctx) {
@@ -160,6 +168,7 @@ export default function misp(rl) {
160
168
  },
161
169
  });
162
170
  rl.registerAction("event.list", {
171
+ access: "read",
163
172
  description: "List all events",
164
173
  inputSchema: { limit: { type: "number", required: false } },
165
174
  async execute(input, ctx) {
@@ -170,6 +179,7 @@ export default function misp(rl) {
170
179
  },
171
180
  });
172
181
  rl.registerAction("event.search", {
182
+ access: "read",
173
183
  description: "Search events via restSearch",
174
184
  inputSchema: {
175
185
  value: { type: "string", required: false },
@@ -190,6 +200,7 @@ export default function misp(rl) {
190
200
  },
191
201
  });
192
202
  rl.registerAction("event.update", {
203
+ access: "write",
193
204
  description: "Update an event",
194
205
  inputSchema: {
195
206
  eventId: { type: "string", required: true },
@@ -204,6 +215,7 @@ export default function misp(rl) {
204
215
  },
205
216
  });
206
217
  rl.registerAction("event.publish", {
218
+ access: "write",
207
219
  description: "Publish an event",
208
220
  inputSchema: { eventId: { type: "string", required: true } },
209
221
  async execute(input, ctx) {
@@ -211,6 +223,7 @@ export default function misp(rl) {
211
223
  },
212
224
  });
213
225
  rl.registerAction("event.unpublish", {
226
+ access: "write",
214
227
  description: "Unpublish an event",
215
228
  inputSchema: { eventId: { type: "string", required: true } },
216
229
  async execute(input, ctx) {
@@ -218,6 +231,7 @@ export default function misp(rl) {
218
231
  },
219
232
  });
220
233
  rl.registerAction("event.delete", {
234
+ access: "write",
221
235
  description: "Delete an event",
222
236
  inputSchema: { eventId: { type: "string", required: true } },
223
237
  async execute(input, ctx) {
@@ -226,6 +240,7 @@ export default function misp(rl) {
226
240
  });
227
241
  // ── Event Tag ───────────────────────────────────────
228
242
  rl.registerAction("eventTag.add", {
243
+ access: "write",
229
244
  description: "Add a tag to an event",
230
245
  inputSchema: {
231
246
  eventId: { type: "string", required: true },
@@ -237,6 +252,7 @@ export default function misp(rl) {
237
252
  },
238
253
  });
239
254
  rl.registerAction("eventTag.remove", {
255
+ access: "write",
240
256
  description: "Remove a tag from an event",
241
257
  inputSchema: {
242
258
  eventId: { type: "string", required: true },
@@ -249,6 +265,7 @@ export default function misp(rl) {
249
265
  });
250
266
  // ── Feed ────────────────────────────────────────────
251
267
  rl.registerAction("feed.create", {
268
+ access: "write",
252
269
  description: "Create a feed",
253
270
  inputSchema: {
254
271
  name: { type: "string", required: true },
@@ -270,6 +287,7 @@ export default function misp(rl) {
270
287
  },
271
288
  });
272
289
  rl.registerAction("feed.get", {
290
+ access: "read",
273
291
  description: "Get a feed by ID",
274
292
  inputSchema: { feedId: { type: "string", required: true } },
275
293
  async execute(input, ctx) {
@@ -278,6 +296,7 @@ export default function misp(rl) {
278
296
  },
279
297
  });
280
298
  rl.registerAction("feed.list", {
299
+ access: "read",
281
300
  description: "List all feeds",
282
301
  inputSchema: { limit: { type: "number", required: false } },
283
302
  async execute(input, ctx) {
@@ -289,6 +308,7 @@ export default function misp(rl) {
289
308
  },
290
309
  });
291
310
  rl.registerAction("feed.update", {
311
+ access: "write",
292
312
  description: "Update a feed",
293
313
  inputSchema: {
294
314
  feedId: { type: "string", required: true },
@@ -301,6 +321,7 @@ export default function misp(rl) {
301
321
  },
302
322
  });
303
323
  rl.registerAction("feed.enable", {
324
+ access: "write",
304
325
  description: "Enable a feed",
305
326
  inputSchema: { feedId: { type: "string", required: true } },
306
327
  async execute(input, ctx) {
@@ -308,6 +329,7 @@ export default function misp(rl) {
308
329
  },
309
330
  });
310
331
  rl.registerAction("feed.disable", {
332
+ access: "write",
311
333
  description: "Disable a feed",
312
334
  inputSchema: { feedId: { type: "string", required: true } },
313
335
  async execute(input, ctx) {
@@ -316,6 +338,7 @@ export default function misp(rl) {
316
338
  });
317
339
  // ── Galaxy ──────────────────────────────────────────
318
340
  rl.registerAction("galaxy.get", {
341
+ access: "read",
319
342
  description: "Get a galaxy by ID",
320
343
  inputSchema: { galaxyId: { type: "string", required: true } },
321
344
  async execute(input, ctx) {
@@ -324,6 +347,7 @@ export default function misp(rl) {
324
347
  },
325
348
  });
326
349
  rl.registerAction("galaxy.list", {
350
+ access: "read",
327
351
  description: "List all galaxies",
328
352
  inputSchema: { limit: { type: "number", required: false } },
329
353
  async execute(input, ctx) {
@@ -335,6 +359,7 @@ export default function misp(rl) {
335
359
  },
336
360
  });
337
361
  rl.registerAction("galaxy.delete", {
362
+ access: "write",
338
363
  description: "Delete a galaxy",
339
364
  inputSchema: { galaxyId: { type: "string", required: true } },
340
365
  async execute(input, ctx) {
@@ -343,6 +368,7 @@ export default function misp(rl) {
343
368
  });
344
369
  // ── Noticelist ──────────────────────────────────────
345
370
  rl.registerAction("noticelist.get", {
371
+ access: "read",
346
372
  description: "Get a noticelist by ID",
347
373
  inputSchema: { noticelistId: { type: "string", required: true } },
348
374
  async execute(input, ctx) {
@@ -351,6 +377,7 @@ export default function misp(rl) {
351
377
  },
352
378
  });
353
379
  rl.registerAction("noticelist.list", {
380
+ access: "read",
354
381
  description: "List all noticelists",
355
382
  inputSchema: { limit: { type: "number", required: false } },
356
383
  async execute(input, ctx) {
@@ -363,6 +390,7 @@ export default function misp(rl) {
363
390
  });
364
391
  // ── Object ──────────────────────────────────────────
365
392
  rl.registerAction("object.search", {
393
+ access: "read",
366
394
  description: "Search objects via restSearch",
367
395
  inputSchema: {
368
396
  value: { type: "string", required: false },
@@ -380,6 +408,7 @@ export default function misp(rl) {
380
408
  });
381
409
  // ── Organisation ────────────────────────────────────
382
410
  rl.registerAction("organisation.create", {
411
+ access: "write",
383
412
  description: "Create an organisation",
384
413
  inputSchema: {
385
414
  name: { type: "string", required: true },
@@ -399,6 +428,7 @@ export default function misp(rl) {
399
428
  },
400
429
  });
401
430
  rl.registerAction("organisation.get", {
431
+ access: "read",
402
432
  description: "Get an organisation by ID",
403
433
  inputSchema: { organisationId: { type: "string", required: true } },
404
434
  async execute(input, ctx) {
@@ -407,6 +437,7 @@ export default function misp(rl) {
407
437
  },
408
438
  });
409
439
  rl.registerAction("organisation.list", {
440
+ access: "read",
410
441
  description: "List all organisations",
411
442
  inputSchema: { limit: { type: "number", required: false } },
412
443
  async execute(input, ctx) {
@@ -418,6 +449,7 @@ export default function misp(rl) {
418
449
  },
419
450
  });
420
451
  rl.registerAction("organisation.update", {
452
+ access: "write",
421
453
  description: "Update an organisation",
422
454
  inputSchema: {
423
455
  organisationId: { type: "string", required: true },
@@ -430,6 +462,7 @@ export default function misp(rl) {
430
462
  },
431
463
  });
432
464
  rl.registerAction("organisation.delete", {
465
+ access: "write",
433
466
  description: "Delete an organisation",
434
467
  inputSchema: { organisationId: { type: "string", required: true } },
435
468
  async execute(input, ctx) {
@@ -438,6 +471,7 @@ export default function misp(rl) {
438
471
  });
439
472
  // ── Tag ─────────────────────────────────────────────
440
473
  rl.registerAction("tag.create", {
474
+ access: "write",
441
475
  description: "Create a tag",
442
476
  inputSchema: {
443
477
  name: { type: "string", required: true },
@@ -459,6 +493,7 @@ export default function misp(rl) {
459
493
  },
460
494
  });
461
495
  rl.registerAction("tag.list", {
496
+ access: "read",
462
497
  description: "List all tags",
463
498
  inputSchema: { limit: { type: "number", required: false } },
464
499
  async execute(input, ctx) {
@@ -470,6 +505,7 @@ export default function misp(rl) {
470
505
  },
471
506
  });
472
507
  rl.registerAction("tag.update", {
508
+ access: "write",
473
509
  description: "Update a tag",
474
510
  inputSchema: {
475
511
  tagId: { type: "string", required: true },
@@ -490,6 +526,7 @@ export default function misp(rl) {
490
526
  },
491
527
  });
492
528
  rl.registerAction("tag.delete", {
529
+ access: "write",
493
530
  description: "Delete a tag",
494
531
  inputSchema: { tagId: { type: "string", required: true } },
495
532
  async execute(input, ctx) {
@@ -498,6 +535,7 @@ export default function misp(rl) {
498
535
  });
499
536
  // ── User ────────────────────────────────────────────
500
537
  rl.registerAction("user.create", {
538
+ access: "write",
501
539
  description: "Create a user",
502
540
  inputSchema: {
503
541
  email: { type: "string", required: true },
@@ -518,6 +556,7 @@ export default function misp(rl) {
518
556
  },
519
557
  });
520
558
  rl.registerAction("user.get", {
559
+ access: "read",
521
560
  description: "Get a user by ID",
522
561
  inputSchema: { userId: { type: "string", required: true } },
523
562
  async execute(input, ctx) {
@@ -526,6 +565,7 @@ export default function misp(rl) {
526
565
  },
527
566
  });
528
567
  rl.registerAction("user.list", {
568
+ access: "read",
529
569
  description: "List all users",
530
570
  inputSchema: { limit: { type: "number", required: false } },
531
571
  async execute(input, ctx) {
@@ -537,6 +577,7 @@ export default function misp(rl) {
537
577
  },
538
578
  });
539
579
  rl.registerAction("user.update", {
580
+ access: "write",
540
581
  description: "Update a user",
541
582
  inputSchema: {
542
583
  userId: { type: "string", required: true },
@@ -549,6 +590,7 @@ export default function misp(rl) {
549
590
  },
550
591
  });
551
592
  rl.registerAction("user.delete", {
593
+ access: "write",
552
594
  description: "Delete a user",
553
595
  inputSchema: { userId: { type: "string", required: true } },
554
596
  async execute(input, ctx) {
@@ -557,6 +599,7 @@ export default function misp(rl) {
557
599
  });
558
600
  // ── Warninglist ─────────────────────────────────────
559
601
  rl.registerAction("warninglist.get", {
602
+ access: "read",
560
603
  description: "Get a warninglist by ID",
561
604
  inputSchema: { warninglistId: { type: "string", required: true } },
562
605
  async execute(input, ctx) {
@@ -565,6 +608,7 @@ export default function misp(rl) {
565
608
  },
566
609
  });
567
610
  rl.registerAction("warninglist.list", {
611
+ access: "read",
568
612
  description: "List all warninglists",
569
613
  inputSchema: { limit: { type: "number", required: false } },
570
614
  async execute(input, ctx) {
@@ -38,6 +38,7 @@ export default function mocean(rl) {
38
38
  apiSecret: ctx.connection.config.apiSecret,
39
39
  });
40
40
  rl.registerAction("sms.send", {
41
+ access: "write",
41
42
  description: "Send an SMS message",
42
43
  inputSchema: {
43
44
  from: { type: "string", required: true, description: "Sender number" },
@@ -66,6 +67,7 @@ export default function mocean(rl) {
66
67
  },
67
68
  });
68
69
  rl.registerAction("voice.send", {
70
+ access: "write",
69
71
  description: "Make a voice call with text-to-speech",
70
72
  inputSchema: {
71
73
  from: { type: "string", required: true, description: "Caller number" },
@@ -29,6 +29,7 @@ export default function monday(rl) {
29
29
  const tok = (ctx) => ctx.connection.config.apiToken;
30
30
  // ── Board ───────────────────────────────────────────
31
31
  rl.registerAction("board.create", {
32
+ access: "write",
32
33
  description: "Create a board",
33
34
  inputSchema: {
34
35
  name: { type: "string", required: true },
@@ -49,6 +50,7 @@ export default function monday(rl) {
49
50
  },
50
51
  });
51
52
  rl.registerAction("board.archive", {
53
+ access: "write",
52
54
  description: "Archive a board",
53
55
  inputSchema: { boardId: { type: "string", required: true } },
54
56
  async execute(input, ctx) {
@@ -57,6 +59,7 @@ export default function monday(rl) {
57
59
  },
58
60
  });
59
61
  rl.registerAction("board.get", {
62
+ access: "read",
60
63
  description: "Get a board by ID",
61
64
  inputSchema: { boardId: { type: "string", required: true } },
62
65
  async execute(input, ctx) {
@@ -65,6 +68,7 @@ export default function monday(rl) {
65
68
  },
66
69
  });
67
70
  rl.registerAction("board.list", {
71
+ access: "read",
68
72
  description: "List boards",
69
73
  inputSchema: { limit: { type: "number", required: false } },
70
74
  async execute(input, ctx) {
@@ -75,6 +79,7 @@ export default function monday(rl) {
75
79
  });
76
80
  // ── Board Column ────────────────────────────────────
77
81
  rl.registerAction("boardColumn.create", {
82
+ access: "write",
78
83
  description: "Create a column on a board",
79
84
  inputSchema: {
80
85
  boardId: { type: "string", required: true },
@@ -100,6 +105,7 @@ export default function monday(rl) {
100
105
  },
101
106
  });
102
107
  rl.registerAction("boardColumn.list", {
108
+ access: "read",
103
109
  description: "List columns on a board",
104
110
  inputSchema: { boardId: { type: "string", required: true } },
105
111
  async execute(input, ctx) {
@@ -109,6 +115,7 @@ export default function monday(rl) {
109
115
  });
110
116
  // ── Board Group ─────────────────────────────────────
111
117
  rl.registerAction("boardGroup.create", {
118
+ access: "write",
112
119
  description: "Create a group on a board",
113
120
  inputSchema: {
114
121
  boardId: { type: "string", required: true },
@@ -121,6 +128,7 @@ export default function monday(rl) {
121
128
  },
122
129
  });
123
130
  rl.registerAction("boardGroup.delete", {
131
+ access: "write",
124
132
  description: "Delete a group from a board",
125
133
  inputSchema: {
126
134
  boardId: { type: "string", required: true },
@@ -133,6 +141,7 @@ export default function monday(rl) {
133
141
  },
134
142
  });
135
143
  rl.registerAction("boardGroup.list", {
144
+ access: "read",
136
145
  description: "List groups on a board",
137
146
  inputSchema: { boardId: { type: "string", required: true } },
138
147
  async execute(input, ctx) {
@@ -142,6 +151,7 @@ export default function monday(rl) {
142
151
  });
143
152
  // ── Board Item ──────────────────────────────────────
144
153
  rl.registerAction("boardItem.create", {
154
+ access: "write",
145
155
  description: "Create an item in a board group",
146
156
  inputSchema: {
147
157
  boardId: { type: "string", required: true },
@@ -167,6 +177,7 @@ export default function monday(rl) {
167
177
  },
168
178
  });
169
179
  rl.registerAction("boardItem.get", {
180
+ access: "read",
170
181
  description: "Get item(s) by ID",
171
182
  inputSchema: {
172
183
  itemIds: {
@@ -184,6 +195,7 @@ export default function monday(rl) {
184
195
  },
185
196
  });
186
197
  rl.registerAction("boardItem.list", {
198
+ access: "read",
187
199
  description: "List items in a board group",
188
200
  inputSchema: {
189
201
  boardId: { type: "string", required: true },
@@ -208,6 +220,7 @@ export default function monday(rl) {
208
220
  },
209
221
  });
210
222
  rl.registerAction("boardItem.delete", {
223
+ access: "write",
211
224
  description: "Delete an item",
212
225
  inputSchema: { itemId: { type: "string", required: true } },
213
226
  async execute(input, ctx) {
@@ -216,6 +229,7 @@ export default function monday(rl) {
216
229
  },
217
230
  });
218
231
  rl.registerAction("boardItem.move", {
232
+ access: "write",
219
233
  description: "Move an item to a different group",
220
234
  inputSchema: {
221
235
  itemId: { type: "string", required: true },
@@ -228,6 +242,7 @@ export default function monday(rl) {
228
242
  },
229
243
  });
230
244
  rl.registerAction("boardItem.addUpdate", {
245
+ access: "write",
231
246
  description: "Add an update (comment) to an item",
232
247
  inputSchema: {
233
248
  itemId: { type: "string", required: true },
@@ -244,6 +259,7 @@ export default function monday(rl) {
244
259
  },
245
260
  });
246
261
  rl.registerAction("boardItem.changeColumnValue", {
262
+ access: "write",
247
263
  description: "Change a single column value on an item",
248
264
  inputSchema: {
249
265
  boardId: { type: "string", required: true },
@@ -267,6 +283,7 @@ export default function monday(rl) {
267
283
  },
268
284
  });
269
285
  rl.registerAction("boardItem.changeMultipleColumnValues", {
286
+ access: "write",
270
287
  description: "Change multiple column values on an item",
271
288
  inputSchema: {
272
289
  boardId: { type: "string", required: true },
@@ -288,6 +305,7 @@ export default function monday(rl) {
288
305
  },
289
306
  });
290
307
  rl.registerAction("boardItem.getByColumnValue", {
308
+ access: "read",
291
309
  description: "Search items by column value",
292
310
  inputSchema: {
293
311
  boardId: { type: "string", required: true },