runline 0.11.5 → 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 (253) 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/index.js +15 -0
  193. package/dist/plugins/shiftLabs/src/issues.js +74 -0
  194. package/dist/plugins/shiftLabs/src/pages.js +148 -0
  195. package/dist/plugins/shiftLabs/src/shared.js +69 -0
  196. package/dist/plugins/shopify/src/index.js +10 -0
  197. package/dist/plugins/signl4/src/index.js +2 -0
  198. package/dist/plugins/slack/src/index.js +38 -0
  199. package/dist/plugins/sms77/src/index.js +2 -0
  200. package/dist/plugins/splunk/src/index.js +16 -0
  201. package/dist/plugins/spotify/src/index.js +30 -0
  202. package/dist/plugins/stackby/src/index.js +4 -0
  203. package/dist/plugins/steel/src/browser.js +7 -0
  204. package/dist/plugins/steel/src/captchas.js +3 -0
  205. package/dist/plugins/steel/src/credentials.js +4 -0
  206. package/dist/plugins/steel/src/extensions.js +5 -0
  207. package/dist/plugins/steel/src/files.js +10 -0
  208. package/dist/plugins/steel/src/profiles.js +4 -0
  209. package/dist/plugins/steel/src/sessions.js +11 -0
  210. package/dist/plugins/storyblok/src/index.js +7 -0
  211. package/dist/plugins/strapi/src/index.js +5 -0
  212. package/dist/plugins/strava/src/index.js +6 -0
  213. package/dist/plugins/stripe/src/index.js +20 -0
  214. package/dist/plugins/supabase/src/index.js +5 -0
  215. package/dist/plugins/syncromsp/src/index.js +20 -0
  216. package/dist/plugins/tapfiliate/src/index.js +11 -0
  217. package/dist/plugins/telegram/src/index.js +21 -0
  218. package/dist/plugins/thehive/src/index.js +23 -0
  219. package/dist/plugins/thehiveProject/src/index.js +31 -0
  220. package/dist/plugins/todoist/src/index.js +31 -0
  221. package/dist/plugins/together/src/index.js +1 -0
  222. package/dist/plugins/travisci/src/index.js +5 -0
  223. package/dist/plugins/trello/src/index.js +37 -0
  224. package/dist/plugins/twake/src/index.js +1 -0
  225. package/dist/plugins/twilio/src/index.js +2 -0
  226. package/dist/plugins/twist/src/index.js +22 -0
  227. package/dist/plugins/twitter/src/index.js +8 -0
  228. package/dist/plugins/unleashedSoftware/src/index.js +3 -0
  229. package/dist/plugins/uplead/src/index.js +2 -0
  230. package/dist/plugins/uproc/src/index.js +1 -0
  231. package/dist/plugins/uptimerobot/src/index.js +22 -0
  232. package/dist/plugins/urlscanio/src/index.js +3 -0
  233. package/dist/plugins/vercel/src/account.js +1 -0
  234. package/dist/plugins/vercel/src/deployments.js +5 -0
  235. package/dist/plugins/vercel/src/env.js +4 -0
  236. package/dist/plugins/vercel/src/projects.js +2 -0
  237. package/dist/plugins/vercel/src/shared.js +1 -0
  238. package/dist/plugins/vero/src/index.js +6 -0
  239. package/dist/plugins/vonage/src/index.js +1 -0
  240. package/dist/plugins/wekan/src/index.js +24 -0
  241. package/dist/plugins/woocommerce/src/index.js +5 -0
  242. package/dist/plugins/wordpress/src/index.js +10 -0
  243. package/dist/plugins/xai/src/index.js +1 -0
  244. package/dist/plugins/xero/src/index.js +8 -0
  245. package/dist/plugins/yourls/src/index.js +3 -0
  246. package/dist/plugins/zammad/src/index.js +12 -0
  247. package/dist/plugins/zendesk/src/index.js +18 -0
  248. package/dist/plugins/zoho/src/index.js +6 -0
  249. package/dist/plugins/zoom/src/index.js +5 -0
  250. package/dist/plugins/zulip/src/index.js +15 -0
  251. package/dist/sdk.d.ts +2 -1
  252. package/dist/sdk.js +1 -0
  253. package/package.json +1 -1
@@ -26,6 +26,7 @@ export default function oneSimpleApi(rl) {
26
26
  const key = (ctx) => ctx.connection.config.apiToken;
27
27
  // ── Website ─────────────────────────────────────────
28
28
  rl.registerAction("website.pdf", {
29
+ access: "write",
29
30
  description: "Generate a PDF from a webpage (returns URL to the PDF)",
30
31
  inputSchema: {
31
32
  url: { type: "string", required: true, description: "Webpage URL" },
@@ -50,6 +51,7 @@ export default function oneSimpleApi(rl) {
50
51
  },
51
52
  });
52
53
  rl.registerAction("website.screenshot", {
54
+ access: "write",
53
55
  description: "Take a screenshot of a webpage (returns URL to the image)",
54
56
  inputSchema: {
55
57
  url: { type: "string", required: true, description: "Webpage URL" },
@@ -80,6 +82,7 @@ export default function oneSimpleApi(rl) {
80
82
  },
81
83
  });
82
84
  rl.registerAction("website.seo", {
85
+ access: "read",
83
86
  description: "Get SEO information from a webpage",
84
87
  inputSchema: {
85
88
  url: { type: "string", required: true, description: "Webpage URL" },
@@ -99,6 +102,7 @@ export default function oneSimpleApi(rl) {
99
102
  });
100
103
  // ── Social Profile ──────────────────────────────────
101
104
  rl.registerAction("socialProfile.instagram", {
105
+ access: "read",
102
106
  description: "Get details about an Instagram profile",
103
107
  inputSchema: {
104
108
  profile: {
@@ -113,6 +117,7 @@ export default function oneSimpleApi(rl) {
113
117
  },
114
118
  });
115
119
  rl.registerAction("socialProfile.spotify", {
120
+ access: "read",
116
121
  description: "Get details about a Spotify artist",
117
122
  inputSchema: {
118
123
  profile: {
@@ -128,6 +133,7 @@ export default function oneSimpleApi(rl) {
128
133
  });
129
134
  // ── Information ─────────────────────────────────────
130
135
  rl.registerAction("information.exchangeRate", {
136
+ access: "read",
131
137
  description: "Convert a value between currencies",
132
138
  inputSchema: {
133
139
  value: {
@@ -156,6 +162,7 @@ export default function oneSimpleApi(rl) {
156
162
  },
157
163
  });
158
164
  rl.registerAction("information.imageMetadata", {
165
+ access: "read",
159
166
  description: "Get metadata from an image URL",
160
167
  inputSchema: {
161
168
  url: { type: "string", required: true, description: "Image URL" },
@@ -167,6 +174,7 @@ export default function oneSimpleApi(rl) {
167
174
  });
168
175
  // ── Utility ─────────────────────────────────────────
169
176
  rl.registerAction("utility.validateEmail", {
177
+ access: "read",
170
178
  description: "Validate an email address",
171
179
  inputSchema: {
172
180
  email: {
@@ -181,6 +189,7 @@ export default function oneSimpleApi(rl) {
181
189
  },
182
190
  });
183
191
  rl.registerAction("utility.expandUrl", {
192
+ access: "read",
184
193
  description: "Expand a shortened URL",
185
194
  inputSchema: {
186
195
  url: { type: "string", required: true, description: "Shortened URL" },
@@ -191,6 +200,7 @@ export default function oneSimpleApi(rl) {
191
200
  },
192
201
  });
193
202
  rl.registerAction("utility.qrCode", {
203
+ access: "write",
194
204
  description: "Generate a QR code (returns URL to the image)",
195
205
  inputSchema: {
196
206
  message: {
@@ -25,6 +25,7 @@ async function apiRequest(apiKey, method, endpoint, body, qs) {
25
25
  }
26
26
  function registerCrud(rl, resource, plural, key, createSchema) {
27
27
  rl.registerAction(`${resource}.create`, {
28
+ access: "write",
28
29
  description: `Create a ${resource}`,
29
30
  inputSchema: createSchema,
30
31
  async execute(input, ctx) {
@@ -32,6 +33,7 @@ function registerCrud(rl, resource, plural, key, createSchema) {
32
33
  },
33
34
  });
34
35
  rl.registerAction(`${resource}.get`, {
36
+ access: "read",
35
37
  description: `Get a ${resource} by ID`,
36
38
  inputSchema: { id: { type: "string", required: true } },
37
39
  async execute(input, ctx) {
@@ -39,6 +41,7 @@ function registerCrud(rl, resource, plural, key, createSchema) {
39
41
  },
40
42
  });
41
43
  rl.registerAction(`${resource}.list`, {
44
+ access: "read",
42
45
  description: `List ${plural}`,
43
46
  inputSchema: { limit: { type: "number", required: false } },
44
47
  async execute(input, ctx) {
@@ -48,6 +51,7 @@ function registerCrud(rl, resource, plural, key, createSchema) {
48
51
  },
49
52
  });
50
53
  rl.registerAction(`${resource}.update`, {
54
+ access: "write",
51
55
  description: `Update a ${resource}`,
52
56
  inputSchema: {
53
57
  id: { type: "string", required: true },
@@ -59,6 +63,7 @@ function registerCrud(rl, resource, plural, key, createSchema) {
59
63
  },
60
64
  });
61
65
  rl.registerAction(`${resource}.delete`, {
66
+ access: "write",
62
67
  description: `Delete a ${resource}`,
63
68
  inputSchema: { id: { type: "string", required: true } },
64
69
  async execute(input, ctx) {
@@ -81,6 +86,7 @@ export default function onfleet(rl) {
81
86
  const key = (ctx) => ctx.connection.config.apiKey;
82
87
  // ── Organization ────────────────────────────────────
83
88
  rl.registerAction("organization.get", {
89
+ access: "read",
84
90
  description: "Get organization details",
85
91
  inputSchema: {},
86
92
  async execute(_input, ctx) {
@@ -89,6 +95,7 @@ export default function onfleet(rl) {
89
95
  });
90
96
  // ── Task ────────────────────────────────────────────
91
97
  rl.registerAction("task.create", {
98
+ access: "write",
92
99
  description: "Create a task",
93
100
  inputSchema: {
94
101
  destination: {
@@ -118,6 +125,7 @@ export default function onfleet(rl) {
118
125
  },
119
126
  });
120
127
  rl.registerAction("task.get", {
128
+ access: "read",
121
129
  description: "Get a task by ID",
122
130
  inputSchema: { id: { type: "string", required: true } },
123
131
  async execute(input, ctx) {
@@ -127,6 +135,7 @@ export default function onfleet(rl) {
127
135
  },
128
136
  });
129
137
  rl.registerAction("task.list", {
138
+ access: "read",
130
139
  description: "List tasks",
131
140
  inputSchema: {
132
141
  from: { type: "number", required: false, description: "Unix ms start" },
@@ -148,6 +157,7 @@ export default function onfleet(rl) {
148
157
  },
149
158
  });
150
159
  rl.registerAction("task.update", {
160
+ access: "write",
151
161
  description: "Update a task",
152
162
  inputSchema: {
153
163
  id: { type: "string", required: true },
@@ -159,6 +169,7 @@ export default function onfleet(rl) {
159
169
  },
160
170
  });
161
171
  rl.registerAction("task.delete", {
172
+ access: "write",
162
173
  description: "Delete a task",
163
174
  inputSchema: { id: { type: "string", required: true } },
164
175
  async execute(input, ctx) {
@@ -167,6 +178,7 @@ export default function onfleet(rl) {
167
178
  },
168
179
  });
169
180
  rl.registerAction("task.complete", {
181
+ access: "write",
170
182
  description: "Force-complete a task",
171
183
  inputSchema: {
172
184
  id: { type: "string", required: true },
@@ -197,6 +209,7 @@ export default function onfleet(rl) {
197
209
  });
198
210
  // ── Hub ─────────────────────────────────────────────
199
211
  rl.registerAction("hub.create", {
212
+ access: "write",
200
213
  description: "Create a hub",
201
214
  inputSchema: {
202
215
  name: { type: "string", required: true },
@@ -207,6 +220,7 @@ export default function onfleet(rl) {
207
220
  },
208
221
  });
209
222
  rl.registerAction("hub.list", {
223
+ access: "read",
210
224
  description: "List hubs",
211
225
  inputSchema: { limit: { type: "number", required: false } },
212
226
  async execute(input, ctx) {
@@ -216,6 +230,7 @@ export default function onfleet(rl) {
216
230
  },
217
231
  });
218
232
  rl.registerAction("hub.update", {
233
+ access: "write",
219
234
  description: "Update a hub",
220
235
  inputSchema: {
221
236
  id: { type: "string", required: true },
@@ -242,6 +257,7 @@ export default function onfleet(rl) {
242
257
  });
243
258
  // ── Recipient ───────────────────────────────────────
244
259
  rl.registerAction("recipient.create", {
260
+ access: "write",
245
261
  description: "Create a recipient",
246
262
  inputSchema: {
247
263
  name: { type: "string", required: true },
@@ -253,6 +269,7 @@ export default function onfleet(rl) {
253
269
  },
254
270
  });
255
271
  rl.registerAction("recipient.get", {
272
+ access: "read",
256
273
  description: "Get a recipient by ID",
257
274
  inputSchema: { id: { type: "string", required: true } },
258
275
  async execute(input, ctx) {
@@ -260,6 +277,7 @@ export default function onfleet(rl) {
260
277
  },
261
278
  });
262
279
  rl.registerAction("recipient.update", {
280
+ access: "write",
263
281
  description: "Update a recipient",
264
282
  inputSchema: {
265
283
  id: { type: "string", required: true },
@@ -272,6 +290,7 @@ export default function onfleet(rl) {
272
290
  });
273
291
  // ── Container ────────────────────────────────────────
274
292
  rl.registerAction("container.get", {
293
+ access: "read",
275
294
  description: "Get a container by type and ID",
276
295
  inputSchema: {
277
296
  containerType: {
@@ -287,6 +306,7 @@ export default function onfleet(rl) {
287
306
  },
288
307
  });
289
308
  rl.registerAction("container.updateTasks", {
309
+ access: "write",
290
310
  description: "Update tasks in a container",
291
311
  inputSchema: {
292
312
  containerType: {
@@ -307,6 +327,7 @@ export default function onfleet(rl) {
307
327
  },
308
328
  });
309
329
  rl.registerAction("team.getTimeEstimates", {
330
+ access: "read",
310
331
  description: "Get driver time estimates for a team",
311
332
  inputSchema: {
312
333
  id: { type: "string", required: true },
@@ -327,6 +348,7 @@ export default function onfleet(rl) {
327
348
  },
328
349
  });
329
350
  rl.registerAction("team.autoDispatch", {
351
+ access: "write",
330
352
  description: "Auto-dispatch tasks for a team",
331
353
  inputSchema: {
332
354
  id: { type: "string", required: true },
@@ -339,6 +361,7 @@ export default function onfleet(rl) {
339
361
  });
340
362
  // ── Destination ─────────────────────────────────────
341
363
  rl.registerAction("destination.create", {
364
+ access: "write",
342
365
  description: "Create a destination",
343
366
  inputSchema: {
344
367
  address: {
@@ -352,6 +375,7 @@ export default function onfleet(rl) {
352
375
  },
353
376
  });
354
377
  rl.registerAction("destination.get", {
378
+ access: "read",
355
379
  description: "Get a destination by ID",
356
380
  inputSchema: { id: { type: "string", required: true } },
357
381
  async execute(input, ctx) {
@@ -3,6 +3,7 @@ export default function openThesaurus(rl) {
3
3
  rl.setVersion("0.1.0");
4
4
  rl.setConnectionSchema({});
5
5
  rl.registerAction("synonyms.get", {
6
+ access: "read",
6
7
  description: "Get synonyms for a German word (OpenThesaurus API, no auth required)",
7
8
  inputSchema: {
8
9
  text: {
@@ -36,6 +36,7 @@ export default function openai(rl) {
36
36
  },
37
37
  });
38
38
  rl.registerAction("image.create", {
39
+ access: "write",
39
40
  description: "Generate an image with OpenAI (GPT Image / DALL-E). Writes the PNG(s) to disk and returns their file `path`s (plus any revised prompt) — not base64. Deliver each image to the user with send_file using its `path`.",
40
41
  inputSchema: {
41
42
  prompt: {
@@ -59,6 +59,7 @@ export default function openWeatherMap(rl) {
59
59
  });
60
60
  const key = (ctx) => ctx.connection.config.apiKey;
61
61
  rl.registerAction("weather.current", {
62
+ access: "read",
62
63
  description: "Get current weather data for a location",
63
64
  inputSchema: locationSchema,
64
65
  async execute(input, ctx) {
@@ -71,6 +72,7 @@ export default function openWeatherMap(rl) {
71
72
  },
72
73
  });
73
74
  rl.registerAction("weather.forecast5day", {
75
+ access: "read",
74
76
  description: "Get 5-day / 3-hour weather forecast for a location",
75
77
  inputSchema: locationSchema,
76
78
  async execute(input, ctx) {
@@ -30,6 +30,7 @@ export default function oura(rl) {
30
30
  });
31
31
  const key = (ctx) => ctx.connection.config.accessToken;
32
32
  rl.registerAction("profile.get", {
33
+ access: "read",
33
34
  description: "Get the user's personal information",
34
35
  inputSchema: {},
35
36
  async execute(_input, ctx) {
@@ -55,6 +56,7 @@ export default function oura(rl) {
55
56
  ];
56
57
  for (const ep of summaryEndpoints) {
57
58
  rl.registerAction(ep.name, {
59
+ access: "read",
58
60
  description: ep.description,
59
61
  inputSchema: {
60
62
  startDate: {
@@ -62,6 +62,7 @@ export default function paddle(rl) {
62
62
  });
63
63
  // ── Coupon ──────────────────────────────────────────
64
64
  rl.registerAction("coupon.create", {
65
+ access: "write",
65
66
  description: "Create a coupon",
66
67
  inputSchema: {
67
68
  couponType: {
@@ -130,6 +131,7 @@ export default function paddle(rl) {
130
131
  },
131
132
  });
132
133
  rl.registerAction("coupon.list", {
134
+ access: "read",
133
135
  description: "List coupons for a product",
134
136
  inputSchema: {
135
137
  productId: { type: "string", required: true, description: "Product ID" },
@@ -144,6 +146,7 @@ export default function paddle(rl) {
144
146
  },
145
147
  });
146
148
  rl.registerAction("coupon.update", {
149
+ access: "write",
147
150
  description: "Update a coupon by code or group",
148
151
  inputSchema: {
149
152
  couponCode: {
@@ -193,6 +196,7 @@ export default function paddle(rl) {
193
196
  });
194
197
  // ── Payment ─────────────────────────────────────────
195
198
  rl.registerAction("payment.list", {
199
+ access: "read",
196
200
  description: "List subscription payments",
197
201
  inputSchema: {
198
202
  subscriptionId: { type: "number", required: false },
@@ -225,6 +229,7 @@ export default function paddle(rl) {
225
229
  },
226
230
  });
227
231
  rl.registerAction("payment.reschedule", {
232
+ access: "write",
228
233
  description: "Reschedule a payment",
229
234
  inputSchema: {
230
235
  paymentId: { type: "number", required: true },
@@ -244,6 +249,7 @@ export default function paddle(rl) {
244
249
  });
245
250
  // ── Plan ────────────────────────────────────────────
246
251
  rl.registerAction("plan.get", {
252
+ access: "read",
247
253
  description: "Get a subscription plan by ID",
248
254
  inputSchema: { planId: { type: "string", required: true } },
249
255
  async execute(input, ctx) {
@@ -254,6 +260,7 @@ export default function paddle(rl) {
254
260
  },
255
261
  });
256
262
  rl.registerAction("plan.list", {
263
+ access: "read",
257
264
  description: "List all subscription plans",
258
265
  inputSchema: { limit: { type: "number", required: false } },
259
266
  async execute(input, ctx) {
@@ -266,6 +273,7 @@ export default function paddle(rl) {
266
273
  });
267
274
  // ── Product ─────────────────────────────────────────
268
275
  rl.registerAction("product.list", {
276
+ access: "read",
269
277
  description: "List all products",
270
278
  inputSchema: { limit: { type: "number", required: false } },
271
279
  async execute(input, ctx) {
@@ -279,6 +287,7 @@ export default function paddle(rl) {
279
287
  });
280
288
  // ── User ────────────────────────────────────────────
281
289
  rl.registerAction("user.list", {
290
+ access: "read",
282
291
  description: "List subscription users",
283
292
  inputSchema: {
284
293
  state: {
@@ -52,6 +52,7 @@ export default function pagerduty(rl) {
52
52
  });
53
53
  // ── Incident ────────────────────────────────────────
54
54
  rl.registerAction("incident.create", {
55
+ access: "write",
55
56
  description: "Create a new incident",
56
57
  inputSchema: {
57
58
  title: { type: "string", required: true },
@@ -96,6 +97,7 @@ export default function pagerduty(rl) {
96
97
  },
97
98
  });
98
99
  rl.registerAction("incident.get", {
100
+ access: "read",
99
101
  description: "Get an incident by ID",
100
102
  inputSchema: { incidentId: { type: "string", required: true } },
101
103
  async execute(input, ctx) {
@@ -105,6 +107,7 @@ export default function pagerduty(rl) {
105
107
  },
106
108
  });
107
109
  rl.registerAction("incident.list", {
110
+ access: "read",
108
111
  description: "List incidents",
109
112
  inputSchema: {
110
113
  limit: { type: "number", required: false },
@@ -131,6 +134,7 @@ export default function pagerduty(rl) {
131
134
  },
132
135
  });
133
136
  rl.registerAction("incident.update", {
137
+ access: "write",
134
138
  description: "Update an incident",
135
139
  inputSchema: {
136
140
  incidentId: { type: "string", required: true },
@@ -177,6 +181,7 @@ export default function pagerduty(rl) {
177
181
  });
178
182
  // ── Incident Note ───────────────────────────────────
179
183
  rl.registerAction("incidentNote.create", {
184
+ access: "write",
180
185
  description: "Add a note to an incident",
181
186
  inputSchema: {
182
187
  incidentId: { type: "string", required: true },
@@ -193,6 +198,7 @@ export default function pagerduty(rl) {
193
198
  },
194
199
  });
195
200
  rl.registerAction("incidentNote.list", {
201
+ access: "read",
196
202
  description: "List notes for an incident",
197
203
  inputSchema: {
198
204
  incidentId: { type: "string", required: true },
@@ -209,6 +215,7 @@ export default function pagerduty(rl) {
209
215
  });
210
216
  // ── Log Entry ───────────────────────────────────────
211
217
  rl.registerAction("logEntry.get", {
218
+ access: "read",
212
219
  description: "Get a log entry by ID",
213
220
  inputSchema: { logEntryId: { type: "string", required: true } },
214
221
  async execute(input, ctx) {
@@ -218,6 +225,7 @@ export default function pagerduty(rl) {
218
225
  },
219
226
  });
220
227
  rl.registerAction("logEntry.list", {
228
+ access: "read",
221
229
  description: "List log entries",
222
230
  inputSchema: { limit: { type: "number", required: false } },
223
231
  async execute(input, ctx) {
@@ -231,6 +239,7 @@ export default function pagerduty(rl) {
231
239
  });
232
240
  // ── User ────────────────────────────────────────────
233
241
  rl.registerAction("user.get", {
242
+ access: "read",
234
243
  description: "Get a user by ID",
235
244
  inputSchema: { userId: { type: "string", required: true } },
236
245
  async execute(input, ctx) {
@@ -19,6 +19,7 @@ export default function parallel(rl) {
19
19
  },
20
20
  });
21
21
  rl.registerAction("search", {
22
+ access: "read",
22
23
  description: "Search the live web with Parallel.ai and get ranked results with extracted excerpts. Use this to ground answers in current web content (news, prices, regulations, company info) instead of stale knowledge. Provide an `objective` (natural-language goal) and/or explicit `search_queries`.",
23
24
  inputSchema: {
24
25
  objective: {
@@ -75,6 +75,7 @@ export default function paypal(rl) {
75
75
  },
76
76
  });
77
77
  rl.registerAction("payout.create", {
78
+ access: "write",
78
79
  description: "Create a batch payout",
79
80
  inputSchema: {
80
81
  senderBatchId: {
@@ -109,6 +110,7 @@ export default function paypal(rl) {
109
110
  },
110
111
  });
111
112
  rl.registerAction("payout.get", {
113
+ access: "read",
112
114
  description: "Get a batch payout by ID (returns items)",
113
115
  inputSchema: {
114
116
  payoutBatchId: { type: "string", required: true },
@@ -128,6 +130,7 @@ export default function paypal(rl) {
128
130
  },
129
131
  });
130
132
  rl.registerAction("payoutItem.get", {
133
+ access: "read",
131
134
  description: "Get a payout item by ID",
132
135
  inputSchema: { payoutItemId: { type: "string", required: true } },
133
136
  async execute(input, ctx) {
@@ -136,6 +139,7 @@ export default function paypal(rl) {
136
139
  },
137
140
  });
138
141
  rl.registerAction("payoutItem.cancel", {
142
+ access: "write",
139
143
  description: "Cancel an unclaimed payout item",
140
144
  inputSchema: { payoutItemId: { type: "string", required: true } },
141
145
  async execute(input, ctx) {
@@ -22,6 +22,7 @@ export default function peekalink(rl) {
22
22
  });
23
23
  const key = (ctx) => ctx.connection.config.apiKey;
24
24
  rl.registerAction("link.preview", {
25
+ access: "read",
25
26
  description: "Get a rich preview for a URL",
26
27
  inputSchema: {
27
28
  url: { type: "string", required: true, description: "URL to preview" },
@@ -32,6 +33,7 @@ export default function peekalink(rl) {
32
33
  },
33
34
  });
34
35
  rl.registerAction("link.isAvailable", {
36
+ access: "read",
35
37
  description: "Check whether a preview is available for a URL",
36
38
  inputSchema: {
37
39
  url: { type: "string", required: true, description: "URL to check" },
@@ -35,6 +35,7 @@ export default function phantombuster(rl) {
35
35
  });
36
36
  const key = (ctx) => ctx.connection.config.apiKey;
37
37
  rl.registerAction("agent.delete", {
38
+ access: "write",
38
39
  description: "Delete an agent",
39
40
  inputSchema: { agentId: { type: "string", required: true } },
40
41
  async execute(input, ctx) {
@@ -44,6 +45,7 @@ export default function phantombuster(rl) {
44
45
  },
45
46
  });
46
47
  rl.registerAction("agent.get", {
48
+ access: "read",
47
49
  description: "Get agent details",
48
50
  inputSchema: { agentId: { type: "string", required: true } },
49
51
  async execute(input, ctx) {
@@ -54,6 +56,7 @@ export default function phantombuster(rl) {
54
56
  },
55
57
  });
56
58
  rl.registerAction("agent.getOutput", {
59
+ access: "read",
57
60
  description: "Get the output of the last agent run",
58
61
  inputSchema: {
59
62
  agentId: { type: "string", required: true },
@@ -76,6 +79,7 @@ export default function phantombuster(rl) {
76
79
  },
77
80
  });
78
81
  rl.registerAction("agent.list", {
82
+ access: "read",
79
83
  description: "List all agents",
80
84
  inputSchema: { limit: { type: "number", required: false } },
81
85
  async execute(input, ctx) {
@@ -87,6 +91,7 @@ export default function phantombuster(rl) {
87
91
  },
88
92
  });
89
93
  rl.registerAction("agent.launch", {
94
+ access: "write",
90
95
  description: "Launch an agent",
91
96
  inputSchema: {
92
97
  agentId: { type: "string", required: true },
@@ -38,6 +38,7 @@ export default function philipsHue(rl) {
38
38
  };
39
39
  }
40
40
  rl.registerAction("light.get", {
41
+ access: "read",
41
42
  description: "Get a light by ID",
42
43
  inputSchema: { lightId: { type: "string", required: true } },
43
44
  async execute(input, ctx) {
@@ -47,6 +48,7 @@ export default function philipsHue(rl) {
47
48
  },
48
49
  });
49
50
  rl.registerAction("light.list", {
51
+ access: "read",
50
52
  description: "List all lights",
51
53
  inputSchema: { limit: { type: "number", required: false } },
52
54
  async execute(input, ctx) {
@@ -63,6 +65,7 @@ export default function philipsHue(rl) {
63
65
  },
64
66
  });
65
67
  rl.registerAction("light.update", {
68
+ access: "write",
66
69
  description: "Update a light's state (on/off, brightness, color, etc.)",
67
70
  inputSchema: {
68
71
  lightId: { type: "string", required: true },
@@ -138,6 +141,7 @@ export default function philipsHue(rl) {
138
141
  },
139
142
  });
140
143
  rl.registerAction("light.delete", {
144
+ access: "write",
141
145
  description: "Delete a light from the bridge",
142
146
  inputSchema: { lightId: { type: "string", required: true } },
143
147
  async execute(input, ctx) {