@vm0/cli 9.80.0 → 9.82.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.
@@ -47,7 +47,7 @@ if (DSN) {
47
47
  Sentry.init({
48
48
  dsn: DSN,
49
49
  environment: process.env.SENTRY_ENVIRONMENT ?? "production",
50
- release: "9.80.0",
50
+ release: "9.82.0",
51
51
  sendDefaultPii: false,
52
52
  tracesSampleRate: 0,
53
53
  shutdownTimeout: 500,
@@ -66,7 +66,7 @@ if (DSN) {
66
66
  }
67
67
  });
68
68
  Sentry.setContext("cli", {
69
- version: "9.80.0",
69
+ version: "9.82.0",
70
70
  command: process.argv.slice(2).join(" ")
71
71
  });
72
72
  Sentry.setContext("runtime", {
@@ -187,7 +187,7 @@ async function getApiUrl() {
187
187
  }
188
188
  return config.apiUrl ?? "https://www.vm0.ai";
189
189
  }
190
- function decodeOrgIdFromZeroToken() {
190
+ function decodeZeroTokenPayload() {
191
191
  const token = process.env.ZERO_TOKEN;
192
192
  if (!token) return void 0;
193
193
  const prefix = "vm0_sandbox_";
@@ -199,16 +199,14 @@ function decodeOrgIdFromZeroToken() {
199
199
  const payload = JSON.parse(
200
200
  Buffer.from(parts[1], "base64url").toString()
201
201
  );
202
- if (payload.scope === "zero" && typeof payload.orgId === "string") {
203
- return payload.orgId;
204
- }
202
+ if (payload.scope === "zero") return payload;
205
203
  } catch {
206
204
  }
207
205
  return void 0;
208
206
  }
209
207
  async function getActiveOrg() {
210
- const zeroOrgId = decodeOrgIdFromZeroToken();
211
- if (zeroOrgId) return zeroOrgId;
208
+ const zeroPayload = decodeZeroTokenPayload();
209
+ if (zeroPayload) return zeroPayload.orgId;
212
210
  if (process.env.VM0_ACTIVE_ORG) {
213
211
  return process.env.VM0_ACTIVE_ORG;
214
212
  }
@@ -1194,6 +1192,34 @@ var confluenceFirewall = {
1194
1192
  ]
1195
1193
  };
1196
1194
 
1195
+ // ../../packages/core/src/firewalls/cronlytic.generated.ts
1196
+ var cronlyticFirewall = {
1197
+ name: "cronlytic",
1198
+ description: "Cronlytic API",
1199
+ placeholders: {
1200
+ CRONLYTIC_API_KEY: "vm0placeholderCronlyticApiKey000000000000000000000000a",
1201
+ CRONLYTIC_USER_ID: "vm0placeholderCronlyticUserId000000000000000000000000a"
1202
+ },
1203
+ apis: [
1204
+ {
1205
+ base: "https://api.cronlytic.com",
1206
+ auth: {
1207
+ headers: {
1208
+ "x-api-key": "${{ secrets.CRONLYTIC_API_KEY }}",
1209
+ "x-user-id": "${{ secrets.CRONLYTIC_USER_ID }}"
1210
+ }
1211
+ },
1212
+ permissions: [
1213
+ {
1214
+ name: "unrestricted",
1215
+ description: "Allow all Cronlytic API endpoints",
1216
+ rules: ["ANY /{path*}"]
1217
+ }
1218
+ ]
1219
+ }
1220
+ ]
1221
+ };
1222
+
1197
1223
  // ../../packages/core/src/firewalls/customer-io.generated.ts
1198
1224
  var customerIoFirewall = {
1199
1225
  name: "customer-io",
@@ -1391,6 +1417,32 @@ var elevenlabsFirewall = {
1391
1417
  ]
1392
1418
  };
1393
1419
 
1420
+ // ../../packages/core/src/firewalls/explorium.generated.ts
1421
+ var exploriumFirewall = {
1422
+ name: "explorium",
1423
+ description: "Explorium API",
1424
+ placeholders: {
1425
+ EXPLORIUM_TOKEN: "vm0placeholderExploriumToken0000000000000000000000000a"
1426
+ },
1427
+ apis: [
1428
+ {
1429
+ base: "https://api.explorium.ai",
1430
+ auth: {
1431
+ headers: {
1432
+ api_key: "${{ secrets.EXPLORIUM_TOKEN }}"
1433
+ }
1434
+ },
1435
+ permissions: [
1436
+ {
1437
+ name: "unrestricted",
1438
+ description: "Allow all Explorium API endpoints",
1439
+ rules: ["ANY /{path*}"]
1440
+ }
1441
+ ]
1442
+ }
1443
+ ]
1444
+ };
1445
+
1394
1446
  // ../../packages/core/src/firewalls/fal.generated.ts
1395
1447
  var falFirewall = {
1396
1448
  name: "fal",
@@ -5355,6 +5407,32 @@ var intercomFirewall = {
5355
5407
  ]
5356
5408
  };
5357
5409
 
5410
+ // ../../packages/core/src/firewalls/intervals-icu.generated.ts
5411
+ var intervalsIcuFirewall = {
5412
+ name: "intervals-icu",
5413
+ description: "Intervals.icu Training API",
5414
+ placeholders: {
5415
+ INTERVALS_ICU_TOKEN: "vm0placeholderIntervalsIcuToken0000000000000000000000a"
5416
+ },
5417
+ apis: [
5418
+ {
5419
+ base: "https://intervals.icu",
5420
+ auth: {
5421
+ headers: {
5422
+ Authorization: "Bearer ${{ secrets.INTERVALS_ICU_TOKEN }}"
5423
+ }
5424
+ },
5425
+ permissions: [
5426
+ {
5427
+ name: "unrestricted",
5428
+ description: "Allow all Intervals.icu API endpoints",
5429
+ rules: ["ANY /{path*}"]
5430
+ }
5431
+ ]
5432
+ }
5433
+ ]
5434
+ };
5435
+
5358
5436
  // ../../packages/core/src/firewalls/jira.generated.ts
5359
5437
  var jiraFirewall = {
5360
5438
  name: "jira",
@@ -6189,6 +6267,32 @@ var loopsFirewall = {
6189
6267
  ]
6190
6268
  };
6191
6269
 
6270
+ // ../../packages/core/src/firewalls/mailsac.generated.ts
6271
+ var mailsacFirewall = {
6272
+ name: "mailsac",
6273
+ description: "Mailsac Email API",
6274
+ placeholders: {
6275
+ MAILSAC_TOKEN: "vm0placeholderMailsacToken0000000000000000000000000000a"
6276
+ },
6277
+ apis: [
6278
+ {
6279
+ base: "https://mailsac.com",
6280
+ auth: {
6281
+ headers: {
6282
+ "Mailsac-Key": "${{ secrets.MAILSAC_TOKEN }}"
6283
+ }
6284
+ },
6285
+ permissions: [
6286
+ {
6287
+ name: "unrestricted",
6288
+ description: "Allow all Mailsac API endpoints",
6289
+ rules: ["ANY /{path*}"]
6290
+ }
6291
+ ]
6292
+ }
6293
+ ]
6294
+ };
6295
+
6192
6296
  // ../../packages/core/src/firewalls/mercury.generated.ts
6193
6297
  var mercuryFirewall = {
6194
6298
  name: "mercury",
@@ -6412,6 +6516,84 @@ var openaiFirewall = {
6412
6516
  ]
6413
6517
  };
6414
6518
 
6519
+ // ../../packages/core/src/firewalls/pdf4me.generated.ts
6520
+ var pdf4meFirewall = {
6521
+ name: "pdf4me",
6522
+ description: "PDF4me Document API",
6523
+ placeholders: {
6524
+ PDF4ME_TOKEN: "vm0placeholderPdf4meToken000000000000000000000000000a"
6525
+ },
6526
+ apis: [
6527
+ {
6528
+ base: "https://api.pdf4me.com",
6529
+ auth: {
6530
+ headers: {
6531
+ Authorization: "${{ secrets.PDF4ME_TOKEN }}"
6532
+ }
6533
+ },
6534
+ permissions: [
6535
+ {
6536
+ name: "unrestricted",
6537
+ description: "Allow all PDF4me API endpoints",
6538
+ rules: ["ANY /{path*}"]
6539
+ }
6540
+ ]
6541
+ }
6542
+ ]
6543
+ };
6544
+
6545
+ // ../../packages/core/src/firewalls/pdfco.generated.ts
6546
+ var pdfcoFirewall = {
6547
+ name: "pdfco",
6548
+ description: "PDF.co API",
6549
+ placeholders: {
6550
+ PDFCO_TOKEN: "vm0placeholderPdfcoToken0000000000000000000000000000a"
6551
+ },
6552
+ apis: [
6553
+ {
6554
+ base: "https://api.pdf.co/v1",
6555
+ auth: {
6556
+ headers: {
6557
+ "x-api-key": "${{ secrets.PDFCO_TOKEN }}"
6558
+ }
6559
+ },
6560
+ permissions: [
6561
+ {
6562
+ name: "unrestricted",
6563
+ description: "Allow all PDF.co API endpoints",
6564
+ rules: ["ANY /{path*}"]
6565
+ }
6566
+ ]
6567
+ }
6568
+ ]
6569
+ };
6570
+
6571
+ // ../../packages/core/src/firewalls/pdforge.generated.ts
6572
+ var pdforgeFirewall = {
6573
+ name: "pdforge",
6574
+ description: "PDForge PDF Generation API",
6575
+ placeholders: {
6576
+ PDFORGE_API_KEY: "vm0placeholderPdforgeApiKey00000000000000000000000000a"
6577
+ },
6578
+ apis: [
6579
+ {
6580
+ base: "https://api.pdforge.com",
6581
+ auth: {
6582
+ headers: {
6583
+ Authorization: "Bearer ${{ secrets.PDFORGE_API_KEY }}"
6584
+ }
6585
+ },
6586
+ permissions: [
6587
+ {
6588
+ name: "unrestricted",
6589
+ description: "Allow all PDForge API endpoints",
6590
+ rules: ["ANY /{path*}"]
6591
+ }
6592
+ ]
6593
+ }
6594
+ ]
6595
+ };
6596
+
6415
6597
  // ../../packages/core/src/firewalls/perplexity.generated.ts
6416
6598
  var perplexityFirewall = {
6417
6599
  name: "perplexity",
@@ -6464,6 +6646,32 @@ var plausibleFirewall = {
6464
6646
  ]
6465
6647
  };
6466
6648
 
6649
+ // ../../packages/core/src/firewalls/podchaser.generated.ts
6650
+ var podchaserFirewall = {
6651
+ name: "podchaser",
6652
+ description: "Podchaser Podcast API",
6653
+ placeholders: {
6654
+ PODCHASER_TOKEN: "vm0placeholderPodchaserToken00000000000000000000000000a"
6655
+ },
6656
+ apis: [
6657
+ {
6658
+ base: "https://api.podchaser.com",
6659
+ auth: {
6660
+ headers: {
6661
+ Authorization: "Bearer ${{ secrets.PODCHASER_TOKEN }}"
6662
+ }
6663
+ },
6664
+ permissions: [
6665
+ {
6666
+ name: "unrestricted",
6667
+ description: "Allow all Podchaser API endpoints",
6668
+ rules: ["ANY /{path*}"]
6669
+ }
6670
+ ]
6671
+ }
6672
+ ]
6673
+ };
6674
+
6467
6675
  // ../../packages/core/src/firewalls/posthog.generated.ts
6468
6676
  var posthogFirewall = {
6469
6677
  name: "posthog",
@@ -6505,6 +6713,58 @@ var posthogFirewall = {
6505
6713
  ]
6506
6714
  };
6507
6715
 
6716
+ // ../../packages/core/src/firewalls/productlane.generated.ts
6717
+ var productlaneFirewall = {
6718
+ name: "productlane",
6719
+ description: "Productlane API",
6720
+ placeholders: {
6721
+ PRODUCTLANE_TOKEN: "vm0placeholderProductlaneToken0000000000000000000000a"
6722
+ },
6723
+ apis: [
6724
+ {
6725
+ base: "https://productlane.com",
6726
+ auth: {
6727
+ headers: {
6728
+ Authorization: "Bearer ${{ secrets.PRODUCTLANE_TOKEN }}"
6729
+ }
6730
+ },
6731
+ permissions: [
6732
+ {
6733
+ name: "unrestricted",
6734
+ description: "Allow all Productlane API endpoints",
6735
+ rules: ["ANY /{path*}"]
6736
+ }
6737
+ ]
6738
+ }
6739
+ ]
6740
+ };
6741
+
6742
+ // ../../packages/core/src/firewalls/pushinator.generated.ts
6743
+ var pushinatorFirewall = {
6744
+ name: "pushinator",
6745
+ description: "Pushinator API",
6746
+ placeholders: {
6747
+ PUSHINATOR_TOKEN: "vm0placeholderPushinatorToken000000000000000000000000a"
6748
+ },
6749
+ apis: [
6750
+ {
6751
+ base: "https://api.pushinator.com",
6752
+ auth: {
6753
+ headers: {
6754
+ Authorization: "Bearer ${{ secrets.PUSHINATOR_TOKEN }}"
6755
+ }
6756
+ },
6757
+ permissions: [
6758
+ {
6759
+ name: "unrestricted",
6760
+ description: "Allow all Pushinator API endpoints",
6761
+ rules: ["ANY /{path*}"]
6762
+ }
6763
+ ]
6764
+ }
6765
+ ]
6766
+ };
6767
+
6508
6768
  // ../../packages/core/src/firewalls/qiita.generated.ts
6509
6769
  var qiitaFirewall = {
6510
6770
  name: "qiita",
@@ -6557,6 +6817,32 @@ var redditFirewall = {
6557
6817
  ]
6558
6818
  };
6559
6819
 
6820
+ // ../../packages/core/src/firewalls/reportei.generated.ts
6821
+ var reporteiFirewall = {
6822
+ name: "reportei",
6823
+ description: "Reportei API",
6824
+ placeholders: {
6825
+ REPORTEI_TOKEN: "vm0placeholderReporteiToken00000000000000000000000000a"
6826
+ },
6827
+ apis: [
6828
+ {
6829
+ base: "https://app.reportei.com",
6830
+ auth: {
6831
+ headers: {
6832
+ Authorization: "Bearer ${{ secrets.REPORTEI_TOKEN }}"
6833
+ }
6834
+ },
6835
+ permissions: [
6836
+ {
6837
+ name: "unrestricted",
6838
+ description: "Allow all Reportei API endpoints",
6839
+ rules: ["ANY /{path*}"]
6840
+ }
6841
+ ]
6842
+ }
6843
+ ]
6844
+ };
6845
+
6560
6846
  // ../../packages/core/src/firewalls/resend.generated.ts
6561
6847
  var resendFirewall = {
6562
6848
  name: "resend",
@@ -6583,6 +6869,32 @@ var resendFirewall = {
6583
6869
  ]
6584
6870
  };
6585
6871
 
6872
+ // ../../packages/core/src/firewalls/revenuecat.generated.ts
6873
+ var revenuecatFirewall = {
6874
+ name: "revenuecat",
6875
+ description: "RevenueCat API",
6876
+ placeholders: {
6877
+ REVENUECAT_TOKEN: "vm0placeholderRevenuecatToken000000000000000000000000a"
6878
+ },
6879
+ apis: [
6880
+ {
6881
+ base: "https://api.revenuecat.com",
6882
+ auth: {
6883
+ headers: {
6884
+ Authorization: "Bearer ${{ secrets.REVENUECAT_TOKEN }}"
6885
+ }
6886
+ },
6887
+ permissions: [
6888
+ {
6889
+ name: "unrestricted",
6890
+ description: "Allow all RevenueCat API endpoints",
6891
+ rules: ["ANY /{path*}"]
6892
+ }
6893
+ ]
6894
+ }
6895
+ ]
6896
+ };
6897
+
6586
6898
  // ../../packages/core/src/firewalls/runway.generated.ts
6587
6899
  var runwayFirewall = {
6588
6900
  name: "runway",
@@ -6609,6 +6921,32 @@ var runwayFirewall = {
6609
6921
  ]
6610
6922
  };
6611
6923
 
6924
+ // ../../packages/core/src/firewalls/scrapeninja.generated.ts
6925
+ var scrapeninjaFirewall = {
6926
+ name: "scrapeninja",
6927
+ description: "ScrapeNinja Web Scraping API",
6928
+ placeholders: {
6929
+ SCRAPENINJA_TOKEN: "vm0placeholderScrapeninjaToken0000000000000000000000a"
6930
+ },
6931
+ apis: [
6932
+ {
6933
+ base: "https://scrapeninja.p.rapidapi.com",
6934
+ auth: {
6935
+ headers: {
6936
+ "X-RapidAPI-Key": "${{ secrets.SCRAPENINJA_TOKEN }}"
6937
+ }
6938
+ },
6939
+ permissions: [
6940
+ {
6941
+ name: "unrestricted",
6942
+ description: "Allow all ScrapeNinja API endpoints",
6943
+ rules: ["ANY /{path*}"]
6944
+ }
6945
+ ]
6946
+ }
6947
+ ]
6948
+ };
6949
+
6612
6950
  // ../../packages/core/src/firewalls/sentry.generated.ts
6613
6951
  var sentryFirewall = {
6614
6952
  name: "sentry",
@@ -6687,6 +7025,32 @@ var shortioFirewall = {
6687
7025
  ]
6688
7026
  };
6689
7027
 
7028
+ // ../../packages/core/src/firewalls/similarweb.generated.ts
7029
+ var similarwebFirewall = {
7030
+ name: "similarweb",
7031
+ description: "SimilarWeb API",
7032
+ placeholders: {
7033
+ SIMILARWEB_TOKEN: "vm0placeholderSimilarwebToken00000000000000000000000a"
7034
+ },
7035
+ apis: [
7036
+ {
7037
+ base: "https://api.similarweb.com",
7038
+ auth: {
7039
+ headers: {
7040
+ "api-key": "${{ secrets.SIMILARWEB_TOKEN }}"
7041
+ }
7042
+ },
7043
+ permissions: [
7044
+ {
7045
+ name: "unrestricted",
7046
+ description: "Allow all SimilarWeb API endpoints",
7047
+ rules: ["ANY /{path*}"]
7048
+ }
7049
+ ]
7050
+ }
7051
+ ]
7052
+ };
7053
+
6690
7054
  // ../../packages/core/src/firewalls/slack.generated.ts
6691
7055
  var slackFirewall = {
6692
7056
  name: "slack",
@@ -7697,6 +8061,32 @@ var todoistFirewall = {
7697
8061
  ]
7698
8062
  };
7699
8063
 
8064
+ // ../../packages/core/src/firewalls/v0.generated.ts
8065
+ var v0Firewall = {
8066
+ name: "v0",
8067
+ description: "v0 API",
8068
+ placeholders: {
8069
+ V0_TOKEN: "vm0placeholderV0Token00000000000000000000000000000000a"
8070
+ },
8071
+ apis: [
8072
+ {
8073
+ base: "https://api.v0.dev",
8074
+ auth: {
8075
+ headers: {
8076
+ Authorization: "Bearer ${{ secrets.V0_TOKEN }}"
8077
+ }
8078
+ },
8079
+ permissions: [
8080
+ {
8081
+ name: "unrestricted",
8082
+ description: "Allow all v0 API endpoints",
8083
+ rules: ["ANY /{path*}"]
8084
+ }
8085
+ ]
8086
+ }
8087
+ ]
8088
+ };
8089
+
7700
8090
  // ../../packages/core/src/firewalls/vercel.generated.ts
7701
8091
  var vercelFirewall = {
7702
8092
  name: "vercel",
@@ -8517,6 +8907,7 @@ var builtinFirewalls = {
8517
8907
  close: closeFirewall,
8518
8908
  cloudflare: cloudflareFirewall,
8519
8909
  confluence: confluenceFirewall,
8910
+ cronlytic: cronlyticFirewall,
8520
8911
  "customer-io": customerIoFirewall,
8521
8912
  deepseek: deepseekFirewall,
8522
8913
  deel: deelFirewall,
@@ -8524,6 +8915,7 @@ var builtinFirewalls = {
8524
8915
  discord: discordFirewall,
8525
8916
  dropbox: dropboxFirewall,
8526
8917
  elevenlabs: elevenlabsFirewall,
8918
+ explorium: exploriumFirewall,
8527
8919
  fal: falFirewall,
8528
8920
  figma: figmaFirewall,
8529
8921
  firecrawl: firecrawlFirewall,
@@ -8543,28 +8935,40 @@ var builtinFirewalls = {
8543
8935
  imgur: imgurFirewall,
8544
8936
  instantly: instantlyFirewall,
8545
8937
  intercom: intercomFirewall,
8938
+ "intervals-icu": intervalsIcuFirewall,
8546
8939
  jira: jiraFirewall,
8547
8940
  jotform: jotformFirewall,
8548
8941
  lark: larkFirewall,
8549
8942
  line: lineFirewall,
8550
8943
  linear: linearFirewall,
8551
8944
  loops: loopsFirewall,
8945
+ mailsac: mailsacFirewall,
8552
8946
  mercury: mercuryFirewall,
8553
8947
  minimax: minimaxFirewall,
8554
8948
  monday: mondayFirewall,
8555
8949
  neon: neonFirewall,
8556
8950
  notion: notionFirewall,
8557
8951
  openai: openaiFirewall,
8952
+ pdf4me: pdf4meFirewall,
8953
+ pdfco: pdfcoFirewall,
8954
+ pdforge: pdforgeFirewall,
8558
8955
  perplexity: perplexityFirewall,
8559
8956
  plausible: plausibleFirewall,
8957
+ podchaser: podchaserFirewall,
8560
8958
  posthog: posthogFirewall,
8959
+ productlane: productlaneFirewall,
8960
+ pushinator: pushinatorFirewall,
8561
8961
  qiita: qiitaFirewall,
8562
8962
  reddit: redditFirewall,
8963
+ reportei: reporteiFirewall,
8563
8964
  resend: resendFirewall,
8965
+ revenuecat: revenuecatFirewall,
8564
8966
  runway: runwayFirewall,
8967
+ scrapeninja: scrapeninjaFirewall,
8565
8968
  sentry: sentryFirewall,
8566
8969
  serpapi: serpapiFirewall,
8567
8970
  shortio: shortioFirewall,
8971
+ similarweb: similarwebFirewall,
8568
8972
  slack: slackFirewall,
8569
8973
  strava: stravaFirewall,
8570
8974
  stripe: stripeFirewall,
@@ -8573,6 +8977,7 @@ var builtinFirewalls = {
8573
8977
  tavily: tavilyFirewall,
8574
8978
  tldv: tldvFirewall,
8575
8979
  todoist: todoistFirewall,
8980
+ v0: v0Firewall,
8576
8981
  vercel: vercelFirewall,
8577
8982
  webflow: webflowFirewall,
8578
8983
  wix: wixFirewall,
@@ -11351,8 +11756,6 @@ var storedExecutionContextSchema = z19.object({
11351
11756
  apiStartTime: z19.number().optional(),
11352
11757
  // User's timezone preference (IANA format, e.g., "Asia/Shanghai")
11353
11758
  userTimezone: z19.string().optional(),
11354
- // Org slug for agent — used for VM0_ACTIVE_ORG
11355
- agentOrgSlug: z19.string().optional(),
11356
11759
  // Memory storage name (for first-run when manifest.memory is null)
11357
11760
  memoryName: z19.string().optional(),
11358
11761
  // Experimental firewall for proxy-side token replacement
@@ -11391,8 +11794,6 @@ var executionContextSchema = z19.object({
11391
11794
  apiStartTime: z19.number().optional(),
11392
11795
  // User's timezone preference (IANA format, e.g., "Asia/Shanghai")
11393
11796
  userTimezone: z19.string().optional(),
11394
- // Org slug for agent — used for VM0_ACTIVE_ORG
11395
- agentOrgSlug: z19.string().optional(),
11396
11797
  // Memory storage name (for first-run when manifest.memory is null)
11397
11798
  memoryName: z19.string().optional(),
11398
11799
  // Experimental firewall for proxy-side token replacement
@@ -12732,7 +13133,53 @@ var CONNECTOR_TYPES_DEF = {
12732
13133
  oauth: {
12733
13134
  authorizationUrl: "https://twitter.com/i/oauth2/authorize",
12734
13135
  tokenUrl: "https://api.twitter.com/2/oauth2/token",
12735
- scopes: ["tweet.read", "users.read", "follows.read", "offline.access"],
13136
+ // https://docs.x.com/fundamentals/authentication/oauth-2-0/authorization-code
13137
+ scopes: [
13138
+ "tweet.read",
13139
+ // All the Tweets you can view, including Tweets from protected accounts.
13140
+ "tweet.write",
13141
+ // Tweet and Retweet for you.
13142
+ "tweet.moderate.write",
13143
+ // Hide and unhide replies to your Tweets.
13144
+ "users.email",
13145
+ // Email from an authenticated user.
13146
+ "users.read",
13147
+ // Any account you can view, including protected accounts.
13148
+ "follows.read",
13149
+ // People who follow you and people who you follow.
13150
+ "follows.write",
13151
+ // Follow and unfollow people for you.
13152
+ "offline.access",
13153
+ // Stay connected to your account until you revoke access.
13154
+ "space.read",
13155
+ // All the Spaces you can view.
13156
+ "mute.read",
13157
+ // Accounts you've muted.
13158
+ "mute.write",
13159
+ // Mute and unmute accounts for you.
13160
+ "like.read",
13161
+ // Tweets you've liked and likes you can view.
13162
+ "like.write",
13163
+ // Like and un-like Tweets for you.
13164
+ "list.read",
13165
+ // Lists, list members, and list followers of lists you've created or are a member of, including private lists.
13166
+ "list.write",
13167
+ // Create and manage Lists for you.
13168
+ "block.read",
13169
+ // Accounts you've blocked.
13170
+ "block.write",
13171
+ // Block and unblock accounts for you.
13172
+ "bookmark.read",
13173
+ // Get Bookmarked Tweets from an authenticated user.
13174
+ "bookmark.write",
13175
+ // Bookmark and remove Bookmarks from Tweets.
13176
+ "dm.read",
13177
+ // All the Direct Messages you can view, including Direct Messages from protected accounts.
13178
+ "dm.write",
13179
+ // Send and manage Direct Messages for you.
13180
+ "media.write"
13181
+ // Upload media.
13182
+ ],
12736
13183
  environmentMapping: {
12737
13184
  X_ACCESS_TOKEN: "$secrets.X_ACCESS_TOKEN"
12738
13185
  }
@@ -14725,19 +15172,15 @@ var c14 = initContract();
14725
15172
  var sendModeSchema = z22.enum(["enter", "cmd-enter"]);
14726
15173
  var userPreferencesResponseSchema = z22.object({
14727
15174
  timezone: z22.string().nullable(),
14728
- notifyEmail: z22.boolean(),
14729
- notifySlack: z22.boolean(),
14730
15175
  pinnedAgentIds: z22.array(z22.string()),
14731
15176
  sendMode: sendModeSchema
14732
15177
  });
14733
15178
  var updateUserPreferencesRequestSchema = z22.object({
14734
15179
  timezone: z22.string().min(1).optional(),
14735
- notifyEmail: z22.boolean().optional(),
14736
- notifySlack: z22.boolean().optional(),
14737
15180
  pinnedAgentIds: z22.array(z22.string()).optional(),
14738
15181
  sendMode: sendModeSchema.optional()
14739
15182
  }).refine(
14740
- (data) => data.timezone !== void 0 || data.notifyEmail !== void 0 || data.notifySlack !== void 0 || data.pinnedAgentIds !== void 0 || data.sendMode !== void 0,
15183
+ (data) => data.timezone !== void 0 || data.pinnedAgentIds !== void 0 || data.sendMode !== void 0,
14741
15184
  {
14742
15185
  message: "At least one preference must be provided"
14743
15186
  }
@@ -14882,6 +15325,7 @@ var zeroAgentsMainContract = c17.router({
14882
15325
  201: zeroAgentResponseSchema,
14883
15326
  400: apiErrorSchema,
14884
15327
  401: apiErrorSchema,
15328
+ 403: apiErrorSchema,
14885
15329
  422: apiErrorSchema
14886
15330
  },
14887
15331
  summary: "Create zero agent"
@@ -14892,7 +15336,8 @@ var zeroAgentsMainContract = c17.router({
14892
15336
  headers: authHeadersSchema,
14893
15337
  responses: {
14894
15338
  200: z26.array(zeroAgentResponseSchema),
14895
- 401: apiErrorSchema
15339
+ 401: apiErrorSchema,
15340
+ 403: apiErrorSchema
14896
15341
  },
14897
15342
  summary: "List zero agents"
14898
15343
  }
@@ -14902,10 +15347,11 @@ var zeroAgentsByIdContract = c17.router({
14902
15347
  method: "GET",
14903
15348
  path: "/api/zero/agents/:id",
14904
15349
  headers: authHeadersSchema,
14905
- pathParams: z26.object({ id: z26.string() }),
15350
+ pathParams: z26.object({ id: z26.string().uuid() }),
14906
15351
  responses: {
14907
15352
  200: zeroAgentResponseSchema,
14908
15353
  401: apiErrorSchema,
15354
+ 403: apiErrorSchema,
14909
15355
  404: apiErrorSchema
14910
15356
  },
14911
15357
  summary: "Get zero agent by id"
@@ -14914,12 +15360,13 @@ var zeroAgentsByIdContract = c17.router({
14914
15360
  method: "PUT",
14915
15361
  path: "/api/zero/agents/:id",
14916
15362
  headers: authHeadersSchema,
14917
- pathParams: z26.object({ id: z26.string() }),
15363
+ pathParams: z26.object({ id: z26.string().uuid() }),
14918
15364
  body: zeroAgentRequestSchema,
14919
15365
  responses: {
14920
15366
  200: zeroAgentResponseSchema,
14921
15367
  400: apiErrorSchema,
14922
15368
  401: apiErrorSchema,
15369
+ 403: apiErrorSchema,
14923
15370
  404: apiErrorSchema,
14924
15371
  422: apiErrorSchema
14925
15372
  },
@@ -14929,11 +15376,12 @@ var zeroAgentsByIdContract = c17.router({
14929
15376
  method: "PATCH",
14930
15377
  path: "/api/zero/agents/:id",
14931
15378
  headers: authHeadersSchema,
14932
- pathParams: z26.object({ id: z26.string() }),
15379
+ pathParams: z26.object({ id: z26.string().uuid() }),
14933
15380
  body: zeroAgentMetadataRequestSchema,
14934
15381
  responses: {
14935
15382
  200: zeroAgentResponseSchema,
14936
15383
  401: apiErrorSchema,
15384
+ 403: apiErrorSchema,
14937
15385
  404: apiErrorSchema
14938
15386
  },
14939
15387
  summary: "Update zero agent metadata"
@@ -14942,18 +15390,19 @@ var zeroAgentsByIdContract = c17.router({
14942
15390
  method: "DELETE",
14943
15391
  path: "/api/zero/agents/:id",
14944
15392
  headers: authHeadersSchema,
14945
- pathParams: z26.object({ id: z26.string() }),
15393
+ pathParams: z26.object({ id: z26.string().uuid() }),
14946
15394
  body: c17.noBody(),
14947
15395
  responses: {
14948
15396
  204: c17.noBody(),
14949
15397
  401: apiErrorSchema,
15398
+ 403: apiErrorSchema,
14950
15399
  404: apiErrorSchema
14951
15400
  },
14952
15401
  summary: "Delete zero agent by id"
14953
15402
  }
14954
15403
  });
14955
15404
  var zeroAgentFirewallPoliciesRequestSchema = z26.object({
14956
- agentId: z26.string(),
15405
+ agentId: z26.string().uuid(),
14957
15406
  policies: firewallPoliciesSchema
14958
15407
  });
14959
15408
  var zeroAgentFirewallPoliciesContract = c17.router({
@@ -14977,10 +15426,11 @@ var zeroAgentInstructionsContract = c17.router({
14977
15426
  method: "GET",
14978
15427
  path: "/api/zero/agents/:id/instructions",
14979
15428
  headers: authHeadersSchema,
14980
- pathParams: z26.object({ id: z26.string() }),
15429
+ pathParams: z26.object({ id: z26.string().uuid() }),
14981
15430
  responses: {
14982
15431
  200: zeroAgentInstructionsResponseSchema,
14983
15432
  401: apiErrorSchema,
15433
+ 403: apiErrorSchema,
14984
15434
  404: apiErrorSchema
14985
15435
  },
14986
15436
  summary: "Get zero agent instructions"
@@ -14989,11 +15439,12 @@ var zeroAgentInstructionsContract = c17.router({
14989
15439
  method: "PUT",
14990
15440
  path: "/api/zero/agents/:id/instructions",
14991
15441
  headers: authHeadersSchema,
14992
- pathParams: z26.object({ id: z26.string() }),
15442
+ pathParams: z26.object({ id: z26.string().uuid() }),
14993
15443
  body: zeroAgentInstructionsRequestSchema,
14994
15444
  responses: {
14995
15445
  200: zeroAgentResponseSchema,
14996
15446
  401: apiErrorSchema,
15447
+ 403: apiErrorSchema,
14997
15448
  404: apiErrorSchema,
14998
15449
  422: apiErrorSchema
14999
15450
  },
@@ -15845,23 +16296,25 @@ var zeroSessionsByIdContract = c27.router({
15845
16296
  // ../../packages/core/src/contracts/integrations.ts
15846
16297
  import { z as z35 } from "zod";
15847
16298
  var c28 = initContract();
16299
+ var sendSlackMessageBodySchema = z35.object({
16300
+ channel: z35.string().min(1, "Channel ID is required"),
16301
+ text: z35.string().optional(),
16302
+ threadTs: z35.string().optional(),
16303
+ blocks: z35.array(z35.object({ type: z35.string() }).passthrough()).optional()
16304
+ });
16305
+ var sendSlackMessageResponseSchema = z35.object({
16306
+ ok: z35.literal(true),
16307
+ ts: z35.string().optional(),
16308
+ channel: z35.string().optional()
16309
+ });
15848
16310
  var integrationsSlackMessageContract = c28.router({
15849
16311
  sendMessage: {
15850
16312
  method: "POST",
15851
16313
  path: "/api/zero/integrations/slack/message",
15852
16314
  headers: authHeadersSchema,
15853
- body: z35.object({
15854
- channel: z35.string().min(1, "Channel ID is required"),
15855
- text: z35.string().optional(),
15856
- threadTs: z35.string().optional(),
15857
- blocks: z35.array(z35.object({ type: z35.string() }).passthrough()).optional()
15858
- }),
16315
+ body: sendSlackMessageBodySchema,
15859
16316
  responses: {
15860
- 200: z35.object({
15861
- ok: z35.literal(true),
15862
- ts: z35.string().optional(),
15863
- channel: z35.string().optional()
15864
- }),
16317
+ 200: sendSlackMessageResponseSchema,
15865
16318
  400: apiErrorSchema,
15866
16319
  401: apiErrorSchema,
15867
16320
  403: apiErrorSchema,
@@ -16076,11 +16529,16 @@ var STAFF_USER_HASHES = [
16076
16529
  "67a65740246389d7fecf7702f8b7d6914ad38dc5",
16077
16530
  "55651a8b2c85b35ff0629fa3d4718b9476069d0f"
16078
16531
  ];
16532
+ var STAFF_ORG_ID_HASHES = [
16533
+ "65de87977d6d1712cd88d7768209f33f7ed12e0b"
16534
+ // org_3ANttyrbWYJk6JKRSTRLEsbsDLe
16535
+ ];
16079
16536
  var FEATURE_SWITCHES = {
16080
16537
  ["pricing" /* Pricing */]: {
16081
16538
  maintainer: "ethan@vm0.ai",
16082
16539
  enabled: false,
16083
- enabledUserHashes: STAFF_USER_HASHES
16540
+ enabledUserHashes: STAFF_USER_HASHES,
16541
+ enabledOrgIdHashes: STAFF_ORG_ID_HASHES
16084
16542
  },
16085
16543
  ["dummy" /* Dummy */]: {
16086
16544
  maintainer: "ethan@vm0.ai",
@@ -16105,152 +16563,183 @@ var FEATURE_SWITCHES = {
16105
16563
  ["ahrefsConnector" /* AhrefsConnector */]: {
16106
16564
  maintainer: "ethan@vm0.ai",
16107
16565
  enabled: false,
16108
- enabledUserHashes: STAFF_USER_HASHES
16566
+ enabledUserHashes: STAFF_USER_HASHES,
16567
+ enabledOrgIdHashes: STAFF_ORG_ID_HASHES
16109
16568
  },
16110
16569
  ["canvaConnector" /* CanvaConnector */]: {
16111
16570
  maintainer: "ethan@vm0.ai",
16112
16571
  enabled: false,
16113
- enabledUserHashes: STAFF_USER_HASHES
16572
+ enabledUserHashes: STAFF_USER_HASHES,
16573
+ enabledOrgIdHashes: STAFF_ORG_ID_HASHES
16114
16574
  },
16115
16575
  ["computerConnector" /* ComputerConnector */]: {
16116
16576
  maintainer: "ethan@vm0.ai",
16117
16577
  enabled: false,
16118
- enabledUserHashes: STAFF_USER_HASHES
16578
+ enabledUserHashes: STAFF_USER_HASHES,
16579
+ enabledOrgIdHashes: STAFF_ORG_ID_HASHES
16119
16580
  },
16120
16581
  ["deelConnector" /* DeelConnector */]: {
16121
16582
  maintainer: "ethan@vm0.ai",
16122
16583
  enabled: false,
16123
- enabledUserHashes: STAFF_USER_HASHES
16584
+ enabledUserHashes: STAFF_USER_HASHES,
16585
+ enabledOrgIdHashes: STAFF_ORG_ID_HASHES
16124
16586
  },
16125
16587
  ["docusignConnector" /* DocuSignConnector */]: {
16126
16588
  maintainer: "ethan@vm0.ai",
16127
16589
  enabled: false,
16128
- enabledUserHashes: STAFF_USER_HASHES
16590
+ enabledUserHashes: STAFF_USER_HASHES,
16591
+ enabledOrgIdHashes: STAFF_ORG_ID_HASHES
16129
16592
  },
16130
16593
  ["dropboxConnector" /* DropboxConnector */]: {
16131
16594
  maintainer: "ethan@vm0.ai",
16132
16595
  enabled: false,
16133
- enabledUserHashes: STAFF_USER_HASHES
16596
+ enabledUserHashes: STAFF_USER_HASHES,
16597
+ enabledOrgIdHashes: STAFF_ORG_ID_HASHES
16134
16598
  },
16135
16599
  ["figmaConnector" /* FigmaConnector */]: {
16136
16600
  maintainer: "ethan@vm0.ai",
16137
16601
  enabled: false,
16138
- enabledUserHashes: STAFF_USER_HASHES
16602
+ enabledUserHashes: STAFF_USER_HASHES,
16603
+ enabledOrgIdHashes: STAFF_ORG_ID_HASHES
16139
16604
  },
16140
16605
  ["mercuryConnector" /* MercuryConnector */]: {
16141
16606
  maintainer: "ethan@vm0.ai",
16142
16607
  enabled: false,
16143
- enabledUserHashes: STAFF_USER_HASHES
16608
+ enabledUserHashes: STAFF_USER_HASHES,
16609
+ enabledOrgIdHashes: STAFF_ORG_ID_HASHES
16144
16610
  },
16145
16611
  ["neonConnector" /* NeonConnector */]: {
16146
16612
  maintainer: "ethan@vm0.ai",
16147
16613
  enabled: false,
16148
- enabledUserHashes: STAFF_USER_HASHES
16614
+ enabledUserHashes: STAFF_USER_HASHES,
16615
+ enabledOrgIdHashes: STAFF_ORG_ID_HASHES
16149
16616
  },
16150
16617
  ["garminConnectConnector" /* GarminConnectConnector */]: {
16151
16618
  maintainer: "ethan@vm0.ai",
16152
16619
  enabled: false,
16153
- enabledUserHashes: STAFF_USER_HASHES
16620
+ enabledUserHashes: STAFF_USER_HASHES,
16621
+ enabledOrgIdHashes: STAFF_ORG_ID_HASHES
16154
16622
  },
16155
16623
  ["redditConnector" /* RedditConnector */]: {
16156
16624
  maintainer: "ethan@vm0.ai",
16157
16625
  enabled: false,
16158
- enabledUserHashes: STAFF_USER_HASHES
16626
+ enabledUserHashes: STAFF_USER_HASHES,
16627
+ enabledOrgIdHashes: STAFF_ORG_ID_HASHES
16159
16628
  },
16160
16629
  ["intervalsIcuConnector" /* IntervalsIcuConnector */]: {
16161
16630
  maintainer: "ethan@vm0.ai",
16162
16631
  enabled: false,
16163
- enabledUserHashes: STAFF_USER_HASHES
16632
+ enabledUserHashes: STAFF_USER_HASHES,
16633
+ enabledOrgIdHashes: STAFF_ORG_ID_HASHES
16164
16634
  },
16165
16635
  ["supabaseConnector" /* SupabaseConnector */]: {
16166
16636
  maintainer: "ethan@vm0.ai",
16167
16637
  enabled: false,
16168
- enabledUserHashes: STAFF_USER_HASHES
16638
+ enabledUserHashes: STAFF_USER_HASHES,
16639
+ enabledOrgIdHashes: STAFF_ORG_ID_HASHES
16169
16640
  },
16170
16641
  ["closeConnector" /* CloseConnector */]: {
16171
16642
  maintainer: "ethan@vm0.ai",
16172
16643
  enabled: false,
16173
- enabledUserHashes: STAFF_USER_HASHES
16644
+ enabledUserHashes: STAFF_USER_HASHES,
16645
+ enabledOrgIdHashes: STAFF_ORG_ID_HASHES
16174
16646
  },
16175
16647
  ["webflowConnector" /* WebflowConnector */]: {
16176
16648
  maintainer: "ethan@vm0.ai",
16177
16649
  enabled: false,
16178
- enabledUserHashes: STAFF_USER_HASHES
16650
+ enabledUserHashes: STAFF_USER_HASHES,
16651
+ enabledOrgIdHashes: STAFF_ORG_ID_HASHES
16179
16652
  },
16180
16653
  ["outlookMailConnector" /* OutlookMailConnector */]: {
16181
16654
  maintainer: "ethan@vm0.ai",
16182
16655
  enabled: false,
16183
- enabledUserHashes: STAFF_USER_HASHES
16656
+ enabledUserHashes: STAFF_USER_HASHES,
16657
+ enabledOrgIdHashes: STAFF_ORG_ID_HASHES
16184
16658
  },
16185
16659
  ["outlookCalendarConnector" /* OutlookCalendarConnector */]: {
16186
16660
  maintainer: "ethan@vm0.ai",
16187
16661
  enabled: false,
16188
- enabledUserHashes: STAFF_USER_HASHES
16662
+ enabledUserHashes: STAFF_USER_HASHES,
16663
+ enabledOrgIdHashes: STAFF_ORG_ID_HASHES
16189
16664
  },
16190
16665
  ["metaAdsConnector" /* MetaAdsConnector */]: {
16191
16666
  maintainer: "ethan@vm0.ai",
16192
16667
  enabled: false,
16193
- enabledUserHashes: STAFF_USER_HASHES
16668
+ enabledUserHashes: STAFF_USER_HASHES,
16669
+ enabledOrgIdHashes: STAFF_ORG_ID_HASHES
16194
16670
  },
16195
16671
  ["stripeConnector" /* StripeConnector */]: {
16196
16672
  maintainer: "ethan@vm0.ai",
16197
16673
  enabled: false,
16198
- enabledUserHashes: STAFF_USER_HASHES
16674
+ enabledUserHashes: STAFF_USER_HASHES,
16675
+ enabledOrgIdHashes: STAFF_ORG_ID_HASHES
16199
16676
  },
16200
16677
  ["posthogConnector" /* PosthogConnector */]: {
16201
16678
  maintainer: "ethan@vm0.ai",
16202
16679
  enabled: false,
16203
- enabledUserHashes: STAFF_USER_HASHES
16680
+ enabledUserHashes: STAFF_USER_HASHES,
16681
+ enabledOrgIdHashes: STAFF_ORG_ID_HASHES
16204
16682
  },
16205
16683
  ["mailchimpConnector" /* MailchimpConnector */]: {
16206
16684
  maintainer: "ethan@vm0.ai",
16207
16685
  enabled: false,
16208
- enabledUserHashes: STAFF_USER_HASHES
16686
+ enabledUserHashes: STAFF_USER_HASHES,
16687
+ enabledOrgIdHashes: STAFF_ORG_ID_HASHES
16209
16688
  },
16210
16689
  ["resendConnector" /* ResendConnector */]: {
16211
16690
  maintainer: "ethan@vm0.ai",
16212
16691
  enabled: false,
16213
- enabledUserHashes: STAFF_USER_HASHES
16692
+ enabledUserHashes: STAFF_USER_HASHES,
16693
+ enabledOrgIdHashes: STAFF_ORG_ID_HASHES
16214
16694
  },
16215
16695
  ["githubIntegration" /* GitHubIntegration */]: {
16216
16696
  maintainer: "ethan@vm0.ai",
16217
16697
  enabled: false,
16218
- enabledUserHashes: STAFF_USER_HASHES
16698
+ enabledUserHashes: STAFF_USER_HASHES,
16699
+ enabledOrgIdHashes: STAFF_ORG_ID_HASHES
16219
16700
  },
16220
16701
  ["telegramIntegration" /* TelegramIntegration */]: {
16221
16702
  maintainer: "ethan@vm0.ai",
16222
16703
  enabled: false,
16223
- enabledUserHashes: STAFF_USER_HASHES
16704
+ enabledUserHashes: STAFF_USER_HASHES,
16705
+ enabledOrgIdHashes: STAFF_ORG_ID_HASHES
16224
16706
  },
16225
16707
  ["dataExport" /* DataExport */]: {
16226
16708
  maintainer: "ethan@vm0.ai",
16227
16709
  enabled: false,
16228
- enabledUserHashes: STAFF_USER_HASHES
16710
+ enabledUserHashes: STAFF_USER_HASHES,
16711
+ enabledOrgIdHashes: STAFF_ORG_ID_HASHES
16229
16712
  },
16230
16713
  ["showSystemPrompt" /* ShowSystemPrompt */]: {
16231
16714
  maintainer: "ethan@vm0.ai",
16232
16715
  enabled: false,
16233
- enabledUserHashes: STAFF_USER_HASHES
16716
+ enabledUserHashes: STAFF_USER_HASHES,
16717
+ enabledOrgIdHashes: STAFF_ORG_ID_HASHES
16234
16718
  },
16235
16719
  ["usage" /* Usage */]: {
16236
16720
  maintainer: "ethan@vm0.ai",
16237
16721
  enabled: false,
16238
- enabledUserHashes: STAFF_USER_HASHES
16722
+ enabledUserHashes: STAFF_USER_HASHES,
16723
+ enabledOrgIdHashes: STAFF_ORG_ID_HASHES
16239
16724
  }
16240
16725
  };
16241
- async function isFeatureEnabled(key, userId, email) {
16726
+ async function isFeatureEnabled(key, ctx) {
16242
16727
  const featureSwitch = FEATURE_SWITCHES[key];
16243
16728
  if (featureSwitch.enabled) {
16244
16729
  return true;
16245
16730
  }
16246
- if (userId && featureSwitch.enabledUserHashes?.length) {
16247
- const hash = await sha1(userId);
16731
+ if (ctx?.userId && featureSwitch.enabledUserHashes?.length) {
16732
+ const hash = await sha1(ctx.userId);
16248
16733
  if (featureSwitch.enabledUserHashes.includes(hash)) return true;
16249
16734
  }
16250
- if (email && featureSwitch.enabledEmailHashes?.length) {
16251
- const hash = await sha1(email.toLowerCase());
16735
+ if (ctx?.email && featureSwitch.enabledEmailHashes?.length) {
16736
+ const hash = await sha1(ctx.email.toLowerCase());
16252
16737
  if (featureSwitch.enabledEmailHashes.includes(hash)) return true;
16253
16738
  }
16739
+ if (ctx?.orgId && featureSwitch.enabledOrgIdHashes?.length) {
16740
+ const hash = await sha1(ctx.orgId);
16741
+ if (featureSwitch.enabledOrgIdHashes.includes(hash)) return true;
16742
+ }
16254
16743
  return false;
16255
16744
  }
16256
16745
 
@@ -17081,11 +17570,23 @@ async function updateZeroAgentInstructions(id, content) {
17081
17570
  handleError(result, `Failed to update instructions for zero agent "${id}"`);
17082
17571
  }
17083
17572
 
17084
- // src/lib/api/domains/zero-schedules.ts
17573
+ // src/lib/api/domains/integrations-slack.ts
17085
17574
  import { initClient as initClient14 } from "@ts-rest/core";
17575
+ async function sendSlackMessage(body) {
17576
+ const config = await getClientConfig();
17577
+ const client = initClient14(integrationsSlackMessageContract, config);
17578
+ const result = await client.sendMessage({ body, headers: {} });
17579
+ if (result.status === 200) {
17580
+ return result.body;
17581
+ }
17582
+ handleError(result, "Failed to send Slack message");
17583
+ }
17584
+
17585
+ // src/lib/api/domains/zero-schedules.ts
17586
+ import { initClient as initClient15 } from "@ts-rest/core";
17086
17587
  async function deployZeroSchedule(body) {
17087
17588
  const config = await getClientConfig();
17088
- const client = initClient14(zeroSchedulesMainContract, config);
17589
+ const client = initClient15(zeroSchedulesMainContract, config);
17089
17590
  const result = await client.deploy({ body });
17090
17591
  if (result.status === 200 || result.status === 201) {
17091
17592
  return result.body;
@@ -17094,7 +17595,7 @@ async function deployZeroSchedule(body) {
17094
17595
  }
17095
17596
  async function listZeroSchedules() {
17096
17597
  const config = await getClientConfig();
17097
- const client = initClient14(zeroSchedulesMainContract, config);
17598
+ const client = initClient15(zeroSchedulesMainContract, config);
17098
17599
  const result = await client.list({ headers: {} });
17099
17600
  if (result.status === 200) {
17100
17601
  return result.body;
@@ -17103,7 +17604,7 @@ async function listZeroSchedules() {
17103
17604
  }
17104
17605
  async function deleteZeroSchedule(params) {
17105
17606
  const config = await getClientConfig();
17106
- const client = initClient14(zeroSchedulesByNameContract, config);
17607
+ const client = initClient15(zeroSchedulesByNameContract, config);
17107
17608
  const result = await client.delete({
17108
17609
  params: { name: params.name },
17109
17610
  query: { agentId: params.agentId }
@@ -17115,7 +17616,7 @@ async function deleteZeroSchedule(params) {
17115
17616
  }
17116
17617
  async function enableZeroSchedule(params) {
17117
17618
  const config = await getClientConfig();
17118
- const client = initClient14(zeroSchedulesEnableContract, config);
17619
+ const client = initClient15(zeroSchedulesEnableContract, config);
17119
17620
  const result = await client.enable({
17120
17621
  params: { name: params.name },
17121
17622
  body: { agentId: params.agentId }
@@ -17127,7 +17628,7 @@ async function enableZeroSchedule(params) {
17127
17628
  }
17128
17629
  async function disableZeroSchedule(params) {
17129
17630
  const config = await getClientConfig();
17130
- const client = initClient14(zeroSchedulesEnableContract, config);
17631
+ const client = initClient15(zeroSchedulesEnableContract, config);
17131
17632
  const result = await client.disable({
17132
17633
  params: { name: params.name },
17133
17634
  body: { agentId: params.agentId }
@@ -17256,6 +17757,7 @@ export {
17256
17757
  getToken,
17257
17758
  getActiveToken,
17258
17759
  getApiUrl,
17760
+ decodeZeroTokenPayload,
17259
17761
  getActiveOrg,
17260
17762
  clearConfig,
17261
17763
  extractAndGroupVariables,
@@ -17367,6 +17869,7 @@ export {
17367
17869
  getZeroConnectorSession,
17368
17870
  createZeroComputerConnector,
17369
17871
  deleteZeroComputerConnector,
17872
+ sendSlackMessage,
17370
17873
  deployZeroSchedule,
17371
17874
  listZeroSchedules,
17372
17875
  deleteZeroSchedule,
@@ -17379,4 +17882,4 @@ export {
17379
17882
  promptSelect,
17380
17883
  promptPassword
17381
17884
  };
17382
- //# sourceMappingURL=chunk-QKXNL42S.js.map
17885
+ //# sourceMappingURL=chunk-RGS2GO4Q.js.map