@vm0/cli 9.138.2 → 9.139.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.
@@ -74090,7 +74090,7 @@ if (DSN) {
74090
74090
  init2({
74091
74091
  dsn: DSN,
74092
74092
  environment: process.env.SENTRY_ENVIRONMENT ?? "production",
74093
- release: "9.138.2",
74093
+ release: "9.139.0",
74094
74094
  sendDefaultPii: false,
74095
74095
  tracesSampleRate: 0,
74096
74096
  shutdownTimeout: 500,
@@ -74109,7 +74109,7 @@ if (DSN) {
74109
74109
  }
74110
74110
  });
74111
74111
  setContext("cli", {
74112
- version: "9.138.2",
74112
+ version: "9.139.0",
74113
74113
  command: process.argv.slice(2).join(" ")
74114
74114
  });
74115
74115
  setContext("runtime", {
@@ -99966,6 +99966,56 @@ var groq = {
99966
99966
  }
99967
99967
  };
99968
99968
 
99969
+ // ../../packages/connectors/src/connectors/gumroad.ts
99970
+ init_esm_shims();
99971
+ var gumroad = {
99972
+ gumroad: {
99973
+ label: "Gumroad",
99974
+ category: "data-automation-infrastructure",
99975
+ tags: ["ecommerce", "store", "products", "sales", "creator"],
99976
+ environmentMapping: {
99977
+ GUMROAD_TOKEN: "$secrets.GUMROAD_ACCESS_TOKEN"
99978
+ },
99979
+ featureFlag: "gumroadConnector" /* GumroadConnector */,
99980
+ helpText: "Connect your Gumroad account to manage products, retrieve sales data, handle customers, and verify license keys",
99981
+ authMethods: {
99982
+ oauth: {
99983
+ label: "OAuth (Recommended)",
99984
+ helpText: "Sign in with Gumroad to grant access.",
99985
+ secrets: {
99986
+ GUMROAD_ACCESS_TOKEN: {
99987
+ label: "Access Token",
99988
+ required: true
99989
+ }
99990
+ }
99991
+ },
99992
+ "api-token": {
99993
+ label: "Access Token",
99994
+ helpText: "1. Log in to [Gumroad](https://app.gumroad.com/settings/advanced)\n2. Scroll to the **Applications** section\n3. Click **Generate access token**\n4. Copy the token and paste it here",
99995
+ secrets: {
99996
+ GUMROAD_TOKEN: {
99997
+ label: "Access Token",
99998
+ required: true,
99999
+ placeholder: "your-gumroad-access-token"
100000
+ }
100001
+ }
100002
+ }
100003
+ },
100004
+ defaultAuthMethod: "oauth",
100005
+ oauth: {
100006
+ authorizationUrl: "https://gumroad.com/oauth/authorize",
100007
+ tokenUrl: "https://gumroad.com/oauth/token",
100008
+ scopes: [
100009
+ "view_profile",
100010
+ "edit_products",
100011
+ "view_sales",
100012
+ "mark_sales_as_shipped",
100013
+ "edit_sales"
100014
+ ]
100015
+ }
100016
+ }
100017
+ };
100018
+
99969
100019
  // ../../packages/connectors/src/connectors/langfuse.ts
99970
100020
  init_esm_shims();
99971
100021
  var langfuse = {
@@ -100233,6 +100283,7 @@ var CONNECTOR_TYPES_DEF = {
100233
100283
  ...greenhouse,
100234
100284
  ...zoom,
100235
100285
  ...groq,
100286
+ ...gumroad,
100236
100287
  ...langfuse,
100237
100288
  ...n8n,
100238
100289
  ...wandb
@@ -101863,35 +101914,6 @@ var webhookStoragesCommitContract = c11.router({
101863
101914
  summary: "Commit uploaded storage from sandbox"
101864
101915
  }
101865
101916
  });
101866
- var webhookUsageContract = c11.router({
101867
- send: {
101868
- method: "POST",
101869
- path: "/api/webhooks/agent/usage",
101870
- headers: authHeadersSchema,
101871
- body: external_exports.object({
101872
- runId: external_exports.string().min(1, "runId is required"),
101873
- usage: external_exports.object({
101874
- model: external_exports.string().optional(),
101875
- message_id: external_exports.string().optional(),
101876
- input_tokens: external_exports.number().optional(),
101877
- output_tokens: external_exports.number().optional(),
101878
- cache_read_input_tokens: external_exports.number().optional(),
101879
- cache_creation_input_tokens: external_exports.number().optional(),
101880
- web_search_requests: external_exports.number().optional()
101881
- }).strict()
101882
- }),
101883
- responses: {
101884
- 200: external_exports.object({
101885
- success: external_exports.boolean()
101886
- }),
101887
- 400: apiErrorSchema,
101888
- 401: apiErrorSchema,
101889
- 404: apiErrorSchema,
101890
- 500: apiErrorSchema
101891
- },
101892
- summary: "Receive proxy-extracted usage data from sandbox"
101893
- }
101894
- });
101895
101917
  var webhookUsageEventItemSchema = external_exports.object({
101896
101918
  idempotencyKey: external_exports.uuid(),
101897
101919
  kind: external_exports.enum(["connector", "model", "image"]),
@@ -104920,6 +104942,7 @@ var MIME_BY_EXTENSION = {
104920
104942
  ".m4a": "audio/mp4",
104921
104943
  ".mp3": "audio/mpeg",
104922
104944
  ".mpga": "audio/mpga",
104945
+ ".oga": "audio/ogg",
104923
104946
  ".ogg": "audio/ogg",
104924
104947
  ".opus": "audio/opus",
104925
104948
  ".wav": "audio/wav",
@@ -105066,6 +105089,38 @@ async function uploadWebFile(localPath, options) {
105066
105089
  url: completed.url
105067
105090
  };
105068
105091
  }
105092
+ async function generateWebVoice(options) {
105093
+ const baseUrl = await getBaseUrl();
105094
+ const token = await getActiveToken();
105095
+ if (!token) {
105096
+ throw new ApiRequestError("Not authenticated", "UNAUTHORIZED", 401);
105097
+ }
105098
+ const headers = {
105099
+ Authorization: `Bearer ${token}`,
105100
+ "Content-Type": "application/json"
105101
+ };
105102
+ const bypassSecret = process.env.VERCEL_AUTOMATION_BYPASS_SECRET;
105103
+ if (bypassSecret) {
105104
+ headers["x-vercel-protection-bypass"] = bypassSecret;
105105
+ }
105106
+ const response = await fetch(new URL("/api/zero/voice-io/speech", baseUrl), {
105107
+ method: "POST",
105108
+ headers,
105109
+ body: JSON.stringify({
105110
+ text: options.text,
105111
+ ...options.voice ? { voice: options.voice } : {},
105112
+ ...options.instructions ? { instructions: options.instructions } : {}
105113
+ })
105114
+ });
105115
+ if (!response.ok) {
105116
+ const { message, code } = await parseErrorBody(
105117
+ response,
105118
+ "Failed to generate voice"
105119
+ );
105120
+ throw new ApiRequestError(message, code, response.status);
105121
+ }
105122
+ return await response.json();
105123
+ }
105069
105124
 
105070
105125
  // src/lib/utils/prompt-utils.ts
105071
105126
  init_esm_shims();
@@ -112056,6 +112111,27 @@ var groqFirewall = {
112056
112111
  ]
112057
112112
  };
112058
112113
 
112114
+ // ../../packages/connectors/src/firewalls/gumroad.generated.ts
112115
+ init_esm_shims();
112116
+ var gumroadFirewall = {
112117
+ name: "gumroad",
112118
+ description: "Gumroad",
112119
+ placeholders: {
112120
+ GUMROAD_TOKEN: "c0ffee5afe10ca1c0ffee5afe10ca1c0ffee5afe"
112121
+ },
112122
+ apis: [
112123
+ {
112124
+ base: "https://api.gumroad.com",
112125
+ auth: {
112126
+ headers: {
112127
+ Authorization: "Bearer ${{ secrets.GUMROAD_TOKEN }}"
112128
+ }
112129
+ },
112130
+ permissions: []
112131
+ }
112132
+ ]
112133
+ };
112134
+
112059
112135
  // ../../packages/connectors/src/firewalls/heygen.generated.ts
112060
112136
  init_esm_shims();
112061
112137
  var heygenFirewall = {
@@ -116889,6 +116965,7 @@ var CONNECTOR_FIREWALLS = {
116889
116965
  granola: granolaFirewall,
116890
116966
  greenhouse: greenhouseFirewall,
116891
116967
  groq: groqFirewall,
116968
+ gumroad: gumroadFirewall,
116892
116969
  heygen: heygenFirewall,
116893
116970
  helicone: heliconeFirewall,
116894
116971
  htmlcsstoimage: htmlcsstoimageFirewall,
@@ -117402,14 +117479,19 @@ var runnersPollContract = c30.router({
117402
117479
  }
117403
117480
  });
117404
117481
  var storageEntrySchema = external_exports.object({
117482
+ name: external_exports.string(),
117405
117483
  mountPath: external_exports.string(),
117406
- archiveUrl: external_exports.string().nullable()
117484
+ vasStorageName: external_exports.string(),
117485
+ vasVersionId: external_exports.string(),
117486
+ archiveUrl: external_exports.string()
117407
117487
  });
117408
117488
  var artifactEntrySchema = external_exports.object({
117409
117489
  mountPath: external_exports.string(),
117410
- archiveUrl: external_exports.string().nullable(),
117411
117490
  vasStorageName: external_exports.string(),
117412
- vasVersionId: external_exports.string()
117491
+ vasStorageId: external_exports.string(),
117492
+ vasVersionId: external_exports.string(),
117493
+ archiveUrl: external_exports.string(),
117494
+ manifestUrl: external_exports.string().optional()
117413
117495
  });
117414
117496
  var storageManifestSchema = external_exports.object({
117415
117497
  storages: external_exports.array(storageEntrySchema),
@@ -119721,6 +119803,11 @@ var FEATURE_SWITCHES = {
119721
119803
  maintainer: "ethan@vm0.ai",
119722
119804
  description: "Enable the Zapier connector. When disabled, Zapier is hidden from the connectors list and cannot be connected.",
119723
119805
  enabled: false
119806
+ },
119807
+ ["gumroadConnector" /* GumroadConnector */]: {
119808
+ maintainer: "ethan@vm0.ai",
119809
+ description: "Enable the Gumroad creator commerce connector (api-token + OAuth).",
119810
+ enabled: false
119724
119811
  }
119725
119812
  };
119726
119813
  function isFeatureEnabled(key, ctx) {
@@ -121050,6 +121137,7 @@ export {
121050
121137
  getComputerUseHost,
121051
121138
  downloadWebFile,
121052
121139
  uploadWebFile,
121140
+ generateWebVoice,
121053
121141
  getInstructionsStorageName,
121054
121142
  parseGitHubUrl,
121055
121143
  getInstructionsFilename,
@@ -121096,4 +121184,4 @@ undici/lib/web/fetch/body.js:
121096
121184
  undici/lib/web/websocket/frame.js:
121097
121185
  (*! ws. MIT License. Einar Otto Stangvik <einaros@gmail.com> *)
121098
121186
  */
121099
- //# sourceMappingURL=chunk-5GETKYXH.js.map
121187
+ //# sourceMappingURL=chunk-JAP6YHEP.js.map